@zgfe/modules-interval 1.0.0-interval.1

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 (121) hide show
  1. package/README.md +33 -0
  2. package/dist/esm/assets/business/demo.css +539 -0
  3. package/dist/esm/assets/business/demo_index.html +3178 -0
  4. package/dist/esm/assets/business/iconfont.css +535 -0
  5. package/dist/esm/assets/business/iconfont.js +43 -0
  6. package/dist/esm/assets/business/iconfont.json +919 -0
  7. package/dist/esm/assets/business/iconfont.ttf +0 -0
  8. package/dist/esm/assets/business/iconfont.woff +0 -0
  9. package/dist/esm/assets/business/iconfont.woff2 +0 -0
  10. package/dist/esm/assets/icons/demo.css +539 -0
  11. package/dist/esm/assets/icons/demo_index.html +9618 -0
  12. package/dist/esm/assets/icons/iconfont.css +1655 -0
  13. package/dist/esm/assets/icons/iconfont.js +43 -0
  14. package/dist/esm/assets/icons/iconfont.json +2879 -0
  15. package/dist/esm/assets/icons/iconfont.ttf +0 -0
  16. package/dist/esm/assets/icons/iconfont.woff +0 -0
  17. package/dist/esm/assets/icons/iconfont.woff2 +0 -0
  18. package/dist/esm/assets/images/empty@2x.png +0 -0
  19. package/dist/esm/assets/images/empty_state.png +0 -0
  20. package/dist/esm/assets/images/table_nodata.png +0 -0
  21. package/dist/esm/components/common/index.d.ts +6 -0
  22. package/dist/esm/components/common/index.js +21 -0
  23. package/dist/esm/components/common/styles/index.less +27 -0
  24. package/dist/esm/components/eventFilter/index.d.ts +5 -0
  25. package/dist/esm/components/eventFilter/index.js +187 -0
  26. package/dist/esm/components/eventFilter/styles/index.less +42 -0
  27. package/dist/esm/components/eventFilter/types.d.ts +50 -0
  28. package/dist/esm/components/eventFilter/types.js +1 -0
  29. package/dist/esm/components/index.d.ts +5 -0
  30. package/dist/esm/components/index.js +5 -0
  31. package/dist/esm/components/renderContent/index.d.ts +5 -0
  32. package/dist/esm/components/renderContent/index.js +58 -0
  33. package/dist/esm/components/renderContent/styles/index.less +23 -0
  34. package/dist/esm/components/renderContent/types.d.ts +31 -0
  35. package/dist/esm/components/renderContent/types.js +1 -0
  36. package/dist/esm/components/searchPanel/index.d.ts +5 -0
  37. package/dist/esm/components/searchPanel/index.js +122 -0
  38. package/dist/esm/components/searchPanel/styles/index.less +59 -0
  39. package/dist/esm/components/searchPanel/types.d.ts +49 -0
  40. package/dist/esm/components/searchPanel/types.js +1 -0
  41. package/dist/esm/components/table/index.d.ts +6 -0
  42. package/dist/esm/components/table/index.js +199 -0
  43. package/dist/esm/components/table/styles/index.less +123 -0
  44. package/dist/esm/components/table/types.d.ts +26 -0
  45. package/dist/esm/components/table/types.js +1 -0
  46. package/dist/esm/components/topBar/index.d.ts +5 -0
  47. package/dist/esm/components/topBar/index.js +121 -0
  48. package/dist/esm/components/topBar/styles/index.less +49 -0
  49. package/dist/esm/components/topBar/types.d.ts +8 -0
  50. package/dist/esm/components/topBar/types.js +1 -0
  51. package/dist/esm/constants/apis.d.ts +6 -0
  52. package/dist/esm/constants/apis.js +7 -0
  53. package/dist/esm/constants/chart.d.ts +2 -0
  54. package/dist/esm/constants/chart.js +31 -0
  55. package/dist/esm/constants/color.d.ts +2 -0
  56. package/dist/esm/constants/color.js +9 -0
  57. package/dist/esm/constants/fields.d.ts +226 -0
  58. package/dist/esm/constants/fields.js +219 -0
  59. package/dist/esm/constants/index.d.ts +6 -0
  60. package/dist/esm/constants/index.js +6 -0
  61. package/dist/esm/constants/initData.d.ts +2 -0
  62. package/dist/esm/constants/initData.js +11 -0
  63. package/dist/esm/index.d.ts +4 -0
  64. package/dist/esm/index.js +4 -0
  65. package/dist/esm/modules/chart/customTooltip.d.ts +7 -0
  66. package/dist/esm/modules/chart/customTooltip.js +37 -0
  67. package/dist/esm/modules/chart/demo/data.d.ts +79 -0
  68. package/dist/esm/modules/chart/demo/data.js +495 -0
  69. package/dist/esm/modules/chart/demo/index.d.ts +3 -0
  70. package/dist/esm/modules/chart/demo/index.js +51 -0
  71. package/dist/esm/modules/chart/demo/panel.d.ts +3 -0
  72. package/dist/esm/modules/chart/demo/panel.js +30 -0
  73. package/dist/esm/modules/chart/index.d.ts +4 -0
  74. package/dist/esm/modules/chart/index.js +100 -0
  75. package/dist/esm/modules/chart/index.less +48 -0
  76. package/dist/esm/modules/chart/intervalChart.d.ts +4 -0
  77. package/dist/esm/modules/chart/intervalChart.js +136 -0
  78. package/dist/esm/modules/chart/types.d.ts +37 -0
  79. package/dist/esm/modules/chart/types.js +2 -0
  80. package/dist/esm/modules/content/index.d.ts +5 -0
  81. package/dist/esm/modules/content/index.js +272 -0
  82. package/dist/esm/modules/content/styles/index.less +7 -0
  83. package/dist/esm/modules/content/types.d.ts +29 -0
  84. package/dist/esm/modules/content/types.js +2 -0
  85. package/dist/esm/modules/content/utils.d.ts +21 -0
  86. package/dist/esm/modules/content/utils.js +51 -0
  87. package/dist/esm/modules/home/demo/create.d.ts +3 -0
  88. package/dist/esm/modules/home/demo/create.js +51 -0
  89. package/dist/esm/modules/home/demo/edit.d.ts +3 -0
  90. package/dist/esm/modules/home/demo/edit.js +90 -0
  91. package/dist/esm/modules/home/demo/index.d.ts +4 -0
  92. package/dist/esm/modules/home/demo/index.js +51 -0
  93. package/dist/esm/modules/home/demo/scene.d.ts +3 -0
  94. package/dist/esm/modules/home/demo/scene.js +87 -0
  95. package/dist/esm/modules/home/demo/styles/index.less +33 -0
  96. package/dist/esm/modules/home/index.d.ts +5 -0
  97. package/dist/esm/modules/home/index.js +141 -0
  98. package/dist/esm/modules/home/styles/index.less +53 -0
  99. package/dist/esm/modules/home/types.d.ts +69 -0
  100. package/dist/esm/modules/home/types.js +2 -0
  101. package/dist/esm/modules/topPanel/index.d.ts +5 -0
  102. package/dist/esm/modules/topPanel/index.js +250 -0
  103. package/dist/esm/modules/topPanel/styles/index.less +67 -0
  104. package/dist/esm/modules/topPanel/types.d.ts +54 -0
  105. package/dist/esm/modules/topPanel/types.js +1 -0
  106. package/dist/esm/style/image/noData.png +0 -0
  107. package/dist/esm/style/image/ring.svg +9 -0
  108. package/dist/esm/style/index.less +46 -0
  109. package/dist/esm/style/theme.d.ts +15 -0
  110. package/dist/esm/style/theme.js +16 -0
  111. package/dist/esm/types.d.ts +169 -0
  112. package/dist/esm/types.js +19 -0
  113. package/dist/esm/utils/ajaxConfig.d.ts +8 -0
  114. package/dist/esm/utils/ajaxConfig.js +47 -0
  115. package/dist/esm/utils/base64.d.ts +29 -0
  116. package/dist/esm/utils/base64.js +132 -0
  117. package/dist/esm/utils/formData.d.ts +76 -0
  118. package/dist/esm/utils/formData.js +258 -0
  119. package/dist/esm/utils/util.d.ts +66 -0
  120. package/dist/esm/utils/util.js +177 -0
  121. package/package.json +61 -0
@@ -0,0 +1,250 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ 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."); }
3
+ 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); }
4
+ 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; }
5
+ 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; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import React, { useState } from 'react';
8
+ import { Form, Button } from 'antd';
9
+ import { BizAttributeSelector, BizUserGroupHeader } from '@zgfe/business-lib';
10
+ import EventFilter from "../../components/eventFilter";
11
+ import "./styles/index.less";
12
+ var classPrefix = 'top-panel';
13
+ var TopPanel = function TopPanel(props) {
14
+ var defaultValue = props.defaultValue,
15
+ ajaxFlag = props.ajaxFlag,
16
+ finalSearchData = props.finalSearchData,
17
+ fetchRequest = props.fetchRequest;
18
+ var _Form$useForm = Form.useForm(),
19
+ _Form$useForm2 = _slicedToArray(_Form$useForm, 1),
20
+ form = _Form$useForm2[0];
21
+ var _useState = useState(-100),
22
+ _useState2 = _slicedToArray(_useState, 2),
23
+ startId = _useState2[0],
24
+ setStartId = _useState2[1];
25
+ var _useState3 = useState(-100),
26
+ _useState4 = _slicedToArray(_useState3, 2),
27
+ endId = _useState4[0],
28
+ setEndId = _useState4[1];
29
+ // 关联属性
30
+ var _useState5 = useState(false),
31
+ _useState6 = _slicedToArray(_useState5, 2),
32
+ relevancy = _useState6[0],
33
+ setRelevancy = _useState6[1];
34
+ // 筛选条件值
35
+ var _ref = defaultValue,
36
+ id = _ref.id,
37
+ name = _ref.name,
38
+ dimension = _ref.dimension,
39
+ filters = _ref.filters,
40
+ userGroup = _ref.userGroup;
41
+ // 细分属性初始值
42
+ var _useState7 = useState(),
43
+ _useState8 = _slicedToArray(_useState7, 2),
44
+ bizAttributeSelectorValue = _useState8[0],
45
+ setBizAttributeSelectorValue = _useState8[1];
46
+ // 用户组和事件变更
47
+ var onValuesChange = function onValuesChange(data, allData) {
48
+ var _data = {};
49
+ if (allData.start) {
50
+ if (allData.start.id !== -100) {
51
+ _data = allData.start;
52
+ setStartId(allData.start.id);
53
+ if (allData.start.relevancy !== undefined) {
54
+ // form.setFieldsValue({
55
+ // associatedPreAttr: undefined,
56
+ // associatedNextAttr: undefined,
57
+ // });
58
+ }
59
+ setRelevancy(allData.start.relevancy);
60
+ }
61
+ }
62
+ if (allData.end) {
63
+ if (allData.end.id !== -100) {
64
+ _data = allData.end;
65
+ setEndId(allData.end.id);
66
+ }
67
+ }
68
+ if (allData.userGroup) {
69
+ _data.userGroup = [];
70
+ allData.userGroup.map(function (item) {
71
+ _data.userGroup && _data.userGroup.push(item);
72
+ });
73
+ if (_data.userGroup.length <= 0) _data.userGroup = [0];
74
+ }
75
+ if (data.start) {
76
+ // 事件id不变,不自动请求
77
+ if (finalSearchData && finalSearchData.id && data.start.id === finalSearchData.id) {
78
+ ajaxFlag = false;
79
+ } else {
80
+ ajaxFlag = true;
81
+ }
82
+ }
83
+ if (data.end) {
84
+ // 事件id不变,不自动请求
85
+ if (finalSearchData && finalSearchData.id && data.end.id === finalSearchData.id) {
86
+ ajaxFlag = false;
87
+ } else {
88
+ ajaxFlag = true;
89
+ }
90
+ }
91
+ props.onChange(allData, ajaxFlag);
92
+ };
93
+
94
+ // 重置
95
+ var resetting = function resetting() {
96
+ form.resetFields();
97
+ form.setFieldsValue({
98
+ userGroup: [0],
99
+ start: {},
100
+ end: {},
101
+ dimension: undefined,
102
+ associatedPreAttr: undefined,
103
+ associatedNextAttr: undefined
104
+ });
105
+ props.onChange({
106
+ userGroup: [0],
107
+ id: undefined,
108
+ name: undefined,
109
+ filters: undefined,
110
+ dimension: undefined
111
+ }, true);
112
+ };
113
+ // 细分属性
114
+ var onChangeAttr = function onChangeAttr(attr) {
115
+ if (attr === undefined) {
116
+ // 删除细分属性
117
+ setBizAttributeSelectorValue(undefined);
118
+ } else {
119
+ var _value = attr.propCategory === 'eventProp' ? attr.id : attr.name;
120
+ setBizAttributeSelectorValue({
121
+ propCategory: attr.propCategory,
122
+ category: attr.category,
123
+ value: _value,
124
+ key: attr.propCategory === 'eventProp' ? attr.id : attr.propCategory + '-' + _value
125
+ });
126
+ }
127
+ };
128
+ return /*#__PURE__*/React.createElement(Form, {
129
+ form: form,
130
+ component: "div",
131
+ colon: false,
132
+ className: "panel-form",
133
+ layout: "vertical",
134
+ initialValues: {
135
+ userGroup: userGroup ? userGroup.map(function (item) {
136
+ return {
137
+ id: item
138
+ };
139
+ }) : [{
140
+ id: 0
141
+ }],
142
+ start: {
143
+ id: id,
144
+ name: name,
145
+ dimension: dimension,
146
+ filters: filters
147
+ },
148
+ end: {
149
+ id: id,
150
+ name: name,
151
+ dimension: dimension,
152
+ filters: filters
153
+ }
154
+ },
155
+ scrollToFirstError: true,
156
+ onValuesChange: onValuesChange
157
+ }, /*#__PURE__*/React.createElement(Form.Item, {
158
+ label: "",
159
+ name: "userGroup",
160
+ className: "space-item",
161
+ style: {
162
+ paddingLeft: 0
163
+ }
164
+ }, /*#__PURE__*/React.createElement(BizUserGroupHeader, {
165
+ max: 1
166
+ })), /*#__PURE__*/React.createElement(Form.Item, {
167
+ label: "\u5F00\u59CB\u4E8B\u4EF6",
168
+ name: "start"
169
+ }, /*#__PURE__*/React.createElement(EventFilter, {
170
+ relevancy: true
171
+ })), relevancy ? /*#__PURE__*/React.createElement(Form.Item, {
172
+ style: {
173
+ marginBottom: 0
174
+ },
175
+ className: "associated"
176
+ }, /*#__PURE__*/React.createElement("span", {
177
+ className: "associated-link"
178
+ }, /*#__PURE__*/React.createElement("i", {
179
+ style: {
180
+ color: '#9AA1A9'
181
+ },
182
+ className: "zhuge icon-lianjie1"
183
+ })), /*#__PURE__*/React.createElement("span", {
184
+ className: "associated-label"
185
+ }, "\u5C5E\u60271"), /*#__PURE__*/React.createElement(Form.Item, {
186
+ name: "associatedPreAttr",
187
+ style: {
188
+ display: 'inline-block',
189
+ marginRight: 28
190
+ }
191
+ }, /*#__PURE__*/React.createElement(BizAttributeSelector, {
192
+ enableEventProp: true,
193
+ enableUserProp: false,
194
+ enableEnvProp: false,
195
+ eventIdList: [startId],
196
+ value: bizAttributeSelectorValue,
197
+ enableDelete: true,
198
+ onChange: onChangeAttr,
199
+ onDelete: function onDelete() {
200
+ onChangeAttr(undefined);
201
+ }
202
+ })), /*#__PURE__*/React.createElement("span", {
203
+ className: "associated-label"
204
+ }, "\u5C5E\u60272"), /*#__PURE__*/React.createElement(Form.Item, {
205
+ name: "associatedNextAttr",
206
+ style: {
207
+ display: 'inline-block'
208
+ }
209
+ }, /*#__PURE__*/React.createElement(BizAttributeSelector, {
210
+ enableEventProp: true,
211
+ enableUserProp: false,
212
+ enableEnvProp: false,
213
+ eventIdList: [endId],
214
+ value: bizAttributeSelectorValue,
215
+ enableDelete: true,
216
+ onChange: onChangeAttr,
217
+ onDelete: function onDelete() {
218
+ onChangeAttr(undefined);
219
+ }
220
+ }))) : '', /*#__PURE__*/React.createElement(Form.Item, {
221
+ label: "\u7ED3\u675F\u4E8B\u4EF6",
222
+ name: "end"
223
+ }, /*#__PURE__*/React.createElement(EventFilter, null)), /*#__PURE__*/React.createElement(Form.Item, {
224
+ label: "\u6309\u5C5E\u6027\u7EC6\u5206",
225
+ name: "dimension"
226
+ }, /*#__PURE__*/React.createElement(BizAttributeSelector, {
227
+ enableEventProp: true,
228
+ enableUserProp: true,
229
+ enableEnvProp: true,
230
+ eventIdList: startId === endId ? [startId] : [startId, endId],
231
+ value: bizAttributeSelectorValue,
232
+ enableDelete: true,
233
+ onChange: onChangeAttr,
234
+ onDelete: function onDelete() {
235
+ onChangeAttr(undefined);
236
+ }
237
+ })), /*#__PURE__*/React.createElement("div", {
238
+ className: "".concat(classPrefix, "-form-botton-box")
239
+ }, /*#__PURE__*/React.createElement(Button, {
240
+ onClick: resetting
241
+ }, "\u91CD\u7F6E"), /*#__PURE__*/React.createElement(Button
242
+ // disabled={ajaxFlag}
243
+ , {
244
+ type: "primary",
245
+ onClick: function onClick() {
246
+ fetchRequest(true);
247
+ }
248
+ }, "\u67E5\u8BE2")));
249
+ };
250
+ export default TopPanel;
@@ -0,0 +1,67 @@
1
+ @import '../../../assets/icons/iconfont.css';
2
+ @import '../../../assets/business/iconfont.css';
3
+
4
+ .top-panel {
5
+ &-form-botton-box {
6
+ display: flex;
7
+ justify-content: flex-end;
8
+ margin-top: 24px;
9
+ margin-right: 24px;
10
+
11
+ > :nth-child(1) {
12
+ margin-right: 16px;
13
+ color: #fff;
14
+ background-color: #29bd52;
15
+ border-color: #29bd52;
16
+ }
17
+ }
18
+ }
19
+
20
+ .panel-form {
21
+ .biz-event-select {
22
+ width: 208px;
23
+ }
24
+
25
+ > .ant-form-item {
26
+ margin-bottom: 12px;
27
+ padding-left: 24px;
28
+ }
29
+
30
+ .associated {
31
+ .associated-link {
32
+ display: block;
33
+ line-height: 32px;
34
+ }
35
+
36
+ .ant-form-item-row {
37
+ flex-direction: inherit;
38
+ }
39
+
40
+ .ant-form-item-control-input-content {
41
+ display: flex;
42
+ gap: 12px;
43
+ }
44
+
45
+ .associated-label {
46
+ color: var(--3, #5f6085);
47
+ font-weight: 400;
48
+ font-size: 14px;
49
+ font-family: PingFang SC;
50
+ font-style: normal;
51
+ line-height: 32px;
52
+ text-align: right;
53
+ }
54
+ }
55
+ }
56
+
57
+ .space-item {
58
+ .ant-space-item {
59
+ .biz-user-group {
60
+ max-width: 208px;
61
+ }
62
+ }
63
+
64
+ .ant-space-horizontal .ant-space-item:nth-child(2) .tianjia {
65
+ display: none;
66
+ }
67
+ }
@@ -0,0 +1,54 @@
1
+ import { AttrConditionTypes } from '@zgfe/business-lib';
2
+ import { bizAttributeSelectorValueProp, SearchValue } from '../../types';
3
+ export interface start {
4
+ id?: number;
5
+ name?: string;
6
+ relevancy?: boolean;
7
+ filters?: AttrConditionTypes.GroupValue;
8
+ }
9
+ export interface FormDataProps {
10
+ /**
11
+ * 用户群
12
+ */
13
+ userGroup?: number[];
14
+ /**
15
+ * 事件、属性、属性细分
16
+ */
17
+ start?: start;
18
+ end?: start;
19
+ /**
20
+ * @description 关联属性开关
21
+ */
22
+ relevancy?: boolean;
23
+ dimension?: bizAttributeSelectorValueProp;
24
+ associatedPreAttr?: bizAttributeSelectorValueProp;
25
+ associatedNextAttr?: bizAttributeSelectorValueProp;
26
+ }
27
+ export interface FormHandelDataProps extends start {
28
+ /**
29
+ * 用户群
30
+ */
31
+ userGroup?: number[];
32
+ }
33
+ export interface TopPanelProps {
34
+ /**
35
+ * 默认值
36
+ */
37
+ defaultValue?: SearchValue;
38
+ /**
39
+ * 数据更新
40
+ */
41
+ onChange: (data: SearchValue, flag: boolean) => void;
42
+ /**
43
+ * 是否请求数据
44
+ */
45
+ ajaxFlag: boolean;
46
+ /**
47
+ * 请求后的最新查询数据
48
+ */
49
+ finalSearchData?: SearchValue;
50
+ /**
51
+ * 请求数据方法
52
+ */
53
+ fetchRequest: (flag?: boolean) => void;
54
+ }
@@ -0,0 +1 @@
1
+ export {};
Binary file
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="margin: auto; background: rgb(255, 255, 255); display: block; shape-rendering: auto;" width="80px" height="80px" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid">
3
+ <circle cx="50" cy="50" r="32" stroke-width="4" stroke="#165dff" stroke-dasharray="50.26548245743669 50.26548245743669" fill="none" stroke-linecap="round">
4
+ <animateTransform attributeName="transform" type="rotate" dur="1s" repeatCount="indefinite" keyTimes="0;1" values="0 50 50;360 50 50"></animateTransform>
5
+ </circle>
6
+ <circle cx="50" cy="50" r="27" stroke-width="4" stroke="#85adfc" stroke-dasharray="42.411500823462205 42.411500823462205" stroke-dashoffset="42.411500823462205" fill="none" stroke-linecap="round">
7
+ <animateTransform attributeName="transform" type="rotate" dur="1s" repeatCount="indefinite" keyTimes="0;1" values="0 50 50;-360 50 50"></animateTransform>
8
+ </circle>
9
+ <!-- [ldio] generated by https://loading.io/ --></svg>
@@ -0,0 +1,46 @@
1
+ .event-form-data {
2
+ &-table-td {
3
+ padding: 0 !important;
4
+
5
+ &-show {
6
+ display: flex;
7
+ align-items: center;
8
+ justify-content: center;
9
+ min-width: 60px;
10
+ height: 48px;
11
+ cursor: pointer;
12
+ span {
13
+ width: 10px;
14
+ height: 10px;
15
+ border-radius: 50%;
16
+ cursor: pointer;
17
+ }
18
+ }
19
+
20
+ &-name {
21
+ display: flex;
22
+ align-items: center;
23
+ .bsicon {
24
+ margin-right: 4px;
25
+ color: #fd9f41;
26
+ }
27
+
28
+ &-content {
29
+ display: inline-block;
30
+ max-width: 300px;
31
+ overflow: hidden;
32
+ white-space: nowrap;
33
+ text-overflow: ellipsis;
34
+ cursor: pointer;
35
+ }
36
+ }
37
+
38
+ &-link {
39
+ cursor: pointer;
40
+ &:hover {
41
+ color: #165dff;
42
+ text-decoration: underline;
43
+ }
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,15 @@
1
+ declare const _default: {
2
+ 'primary-color': string;
3
+ 'border-color-base': string;
4
+ 'background-color-base': string;
5
+ 'text-color': string;
6
+ 'text-color-secondary': string;
7
+ 'tooltip-bg': string;
8
+ 'error-color': string;
9
+ 'shadow-color': string;
10
+ 'box-shadow-base': string;
11
+ 'btn-text-hover-bg': string;
12
+ 'warning-color': string;
13
+ 'border-color-split': string;
14
+ };
15
+ export default _default;
@@ -0,0 +1,16 @@
1
+ export default {
2
+ 'primary-color': '#165dff',
3
+ 'border-color-base': '#ECEDF0',
4
+ 'background-color-base': '#fafafb',
5
+ 'text-color': '#021429',
6
+ // 正文
7
+ 'text-color-secondary': '#5f6085',
8
+ // 次要
9
+ 'tooltip-bg': '#242541',
10
+ 'error-color': '#fb5547',
11
+ 'shadow-color': 'rgba(0, 0, 0, 0.1)',
12
+ 'box-shadow-base': '0px 4px 10px rgba(0, 0, 0, 0.1)',
13
+ 'btn-text-hover-bg': '#cacdd4',
14
+ 'warning-color': '#FD9F41',
15
+ 'border-color-split': '#E8EFFF'
16
+ };
@@ -0,0 +1,169 @@
1
+ import { AttrConditionTypes } from '@zgfe/business-lib';
2
+ import { DatePickerTypes } from '@zgfe/business-lib/es/datePicker/types';
3
+ import { ReactNode } from 'react';
4
+ import { FormDataProps } from './modules/topPanel/types';
5
+ /**
6
+ * 属性选择器 默认值
7
+ */
8
+ export interface bizAttributeSelectorValueProp {
9
+ propCategory?: string;
10
+ category?: string;
11
+ value?: number | string;
12
+ key?: number | string;
13
+ }
14
+ export interface eventProps {
15
+ /**
16
+ * @description 事件id
17
+ */
18
+ id?: number;
19
+ /**
20
+ * @description 事件name
21
+ */
22
+ name?: string;
23
+ /**
24
+ * @description 事件属性筛选
25
+ */
26
+ filters?: AttrConditionTypes.GroupValue;
27
+ /**
28
+ * @description 事件属性细分
29
+ */
30
+ dimension?: bizAttributeSelectorValueProp;
31
+ /**
32
+ * @description 关联属性开关
33
+ */
34
+ relevancy?: boolean;
35
+ }
36
+ export interface SearchValue {
37
+ allData?: FormDataProps;
38
+ /**
39
+ * @description 事件id
40
+ */
41
+ id?: number;
42
+ /**
43
+ * @description 事件name
44
+ */
45
+ name?: string;
46
+ /**
47
+ * @description 平台
48
+ */
49
+ platform?: number;
50
+ /**
51
+ * @description 图表类型
52
+ * @default 'line'
53
+ */
54
+ chartType?: EventChartTypes;
55
+ /**
56
+ * @description 用户群id
57
+ */
58
+ userGroup?: number[];
59
+ /**
60
+ * 事件、属性、属性细分
61
+ */
62
+ /**
63
+ * @description 维度类型
64
+ */
65
+ analysisIndex?: string;
66
+ /**
67
+ * @description 维度名称
68
+ */
69
+ analysisAttr?: string;
70
+ /**
71
+ * @description 显示设置
72
+ */
73
+ displaySetup?: string[];
74
+ /**
75
+ * @description 日期
76
+ * @default 最近一天
77
+ */
78
+ time?: DatePickerTypes.Value;
79
+ /**
80
+ * @description 属性细分
81
+ */
82
+ dimension?: bizAttributeSelectorValueProp;
83
+ /**
84
+ * @description 事件属性筛选
85
+ */
86
+ filters?: AttrConditionTypes.GroupValue;
87
+ /**
88
+ * @description 关联属性-开始
89
+ *
90
+ */
91
+ associatedPreAttr?: bizAttributeSelectorValueProp;
92
+ /**
93
+ * @description 关联属性-结束
94
+ */
95
+ associatedNextAttr?: bizAttributeSelectorValueProp;
96
+ }
97
+ export interface UserDrillParamsProp {
98
+ /**
99
+ * @description 应用id
100
+ */
101
+ appId: number;
102
+ /**
103
+ * @description 平台
104
+ */
105
+ platform: number;
106
+ /**
107
+ * @description 用户数量
108
+ */
109
+ count: number;
110
+ /**
111
+ * @description 模型类型 整体|事件|漏斗|留存|获取|粘性|崩溃|微信生态-整体|微信生态-小程序
112
+ */
113
+ source: string;
114
+ /**
115
+ * @description 查询接口
116
+ */
117
+ url: string;
118
+ /**
119
+ * @description 查询对象
120
+ */
121
+ params?: Record<string, any>;
122
+ /**
123
+ * @description 间隔分析,数据格式与其他业务不一致,间隔分析单独提出来了,其他业务在data里面
124
+ */
125
+ module?: string;
126
+ }
127
+ export type EventChartTypes = 'line' | 'bar' | 'pie' | 'map';
128
+ /**
129
+ * 图表选择类型
130
+ */
131
+ export interface ChartItemProp {
132
+ label?: string;
133
+ value: EventChartTypes;
134
+ icon?: ReactNode;
135
+ disabled?: boolean;
136
+ }
137
+ export interface ChartData {
138
+ app_data: {
139
+ series?: {
140
+ names: string[];
141
+ values: number[][];
142
+ total: number[];
143
+ }[];
144
+ x_axis?: string[];
145
+ };
146
+ }
147
+ export interface ResponseDataProps {
148
+ app_data: any;
149
+ xAxis?: string[];
150
+ x_axis?: string[];
151
+ series: SeriesProps[];
152
+ tongbi?: number[];
153
+ huanbi?: number[];
154
+ total?: number[];
155
+ yesterDay?: string[];
156
+ }
157
+ /**
158
+ * series value
159
+ */
160
+ export interface SeriesProps {
161
+ names?: string[];
162
+ values?: number[][] | number[];
163
+ total?: number[];
164
+ }
165
+ export interface TableChildrenProps {
166
+ name: string;
167
+ values: number[];
168
+ }
169
+ export declare const EventContext: import("react").Context<any>;
@@ -0,0 +1,19 @@
1
+ import { createContext } from 'react';
2
+
3
+ /**
4
+ * 属性选择器 默认值
5
+ */
6
+
7
+ /**
8
+ * 图表选择类型
9
+ */
10
+
11
+ /**
12
+ * series value
13
+ */
14
+
15
+ var defaultContext = {
16
+ onUserDrill: null,
17
+ defaultSearch: {}
18
+ };
19
+ export var EventContext = /*#__PURE__*/createContext(defaultContext);
@@ -0,0 +1,8 @@
1
+ export declare const requestConfig: {
2
+ request: {
3
+ optionsWrapper(url: string, options?: any): {
4
+ url: string;
5
+ options: any;
6
+ };
7
+ };
8
+ };