@cloudbase/analytics 2.0.2-alpha.0 → 2.5.0-beta.0
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.
- package/.eslintrc.js +15 -0
- package/dist/cjs/index.js +19 -17
- package/dist/esm/index.js +19 -17
- package/package.json +17 -5
- package/src/index.ts +40 -38
- package/tsconfig.json +1 -0
- package/.eslintrc +0 -29
package/.eslintrc.js
ADDED
package/dist/cjs/index.js
CHANGED
|
@@ -55,17 +55,17 @@ function validateAnalyticsData(data) {
|
|
|
55
55
|
if (Object.prototype.toString.call(data).slice(8, -1) !== 'Object') {
|
|
56
56
|
return false;
|
|
57
57
|
}
|
|
58
|
-
var
|
|
59
|
-
if (reportTypes.includes(
|
|
58
|
+
var reportData = data.report_data, reportType = data.report_type;
|
|
59
|
+
if (reportTypes.includes(reportType) === false) {
|
|
60
60
|
return false;
|
|
61
61
|
}
|
|
62
|
-
if (Object.prototype.toString.call(
|
|
62
|
+
if (Object.prototype.toString.call(reportData).slice(8, -1) !== 'Object') {
|
|
63
63
|
return false;
|
|
64
64
|
}
|
|
65
|
-
if (
|
|
65
|
+
if (reportData.action_time !== undefined && !Number.isInteger(reportData.action_time)) {
|
|
66
66
|
return false;
|
|
67
67
|
}
|
|
68
|
-
if (typeof
|
|
68
|
+
if (typeof reportData.action_type !== 'string') {
|
|
69
69
|
return false;
|
|
70
70
|
}
|
|
71
71
|
return true;
|
|
@@ -75,24 +75,26 @@ var CloudbaseAnalytics = (function () {
|
|
|
75
75
|
}
|
|
76
76
|
CloudbaseAnalytics.prototype.analytics = function (requestData) {
|
|
77
77
|
return __awaiter(this, void 0, void 0, function () {
|
|
78
|
-
var action,
|
|
78
|
+
var action, actionTime, transformData, params, request;
|
|
79
79
|
return __generator(this, function (_a) {
|
|
80
80
|
if (!validateAnalyticsData(requestData)) {
|
|
81
81
|
throw new Error(JSON.stringify({
|
|
82
82
|
code: ERRORS.INVALID_PARAMS,
|
|
83
|
-
msg: "[".concat(COMPONENT_NAME, ".analytics] invalid report data")
|
|
83
|
+
msg: "[".concat(COMPONENT_NAME, ".analytics] invalid report data"),
|
|
84
84
|
}));
|
|
85
85
|
}
|
|
86
86
|
action = 'analytics.report';
|
|
87
|
-
|
|
87
|
+
actionTime = requestData.report_data.action_time === undefined
|
|
88
|
+
? Math.floor(Date.now() / 1000)
|
|
89
|
+
: requestData.report_data.action_time;
|
|
88
90
|
transformData = {
|
|
89
91
|
analytics_scene: requestData.report_type,
|
|
90
92
|
analytics_data: Object.assign({}, requestData.report_data, {
|
|
91
|
-
action_time:
|
|
92
|
-
})
|
|
93
|
+
action_time: actionTime,
|
|
94
|
+
}),
|
|
93
95
|
};
|
|
94
96
|
params = {
|
|
95
|
-
requestData: transformData
|
|
97
|
+
requestData: transformData,
|
|
96
98
|
};
|
|
97
99
|
request = this.request;
|
|
98
100
|
request.send(action, params);
|
|
@@ -104,14 +106,14 @@ var CloudbaseAnalytics = (function () {
|
|
|
104
106
|
catchErrorsDecorator({
|
|
105
107
|
customInfo: {
|
|
106
108
|
className: 'Cloudbase',
|
|
107
|
-
methodName: 'analytics'
|
|
109
|
+
methodName: 'analytics',
|
|
108
110
|
},
|
|
109
111
|
title: '上报调用失败',
|
|
110
112
|
messages: [
|
|
111
113
|
'请确认以下各项:',
|
|
112
114
|
' 1 - 调用 analytics() 的语法或参数是否正确',
|
|
113
|
-
"\u5982\u679C\u95EE\u9898\u4F9D\u7136\u5B58\u5728\uFF0C\u5EFA\u8BAE\u5230\u5B98\u65B9\u95EE\u7B54\u793E\u533A\u63D0\u95EE\u6216\u5BFB\u627E\u5E2E\u52A9\uFF1A".concat(COMMUNITY_SITE_URL)
|
|
114
|
-
]
|
|
115
|
+
"\u5982\u679C\u95EE\u9898\u4F9D\u7136\u5B58\u5728\uFF0C\u5EFA\u8BAE\u5230\u5B98\u65B9\u95EE\u7B54\u793E\u533A\u63D0\u95EE\u6216\u5BFB\u627E\u5E2E\u52A9\uFF1A".concat(COMMUNITY_SITE_URL),
|
|
116
|
+
],
|
|
115
117
|
}),
|
|
116
118
|
__metadata("design:type", Function),
|
|
117
119
|
__metadata("design:paramtypes", [Object]),
|
|
@@ -123,8 +125,8 @@ var cloudbaseAnalytics = new CloudbaseAnalytics();
|
|
|
123
125
|
var component = {
|
|
124
126
|
name: COMPONENT_NAME,
|
|
125
127
|
entity: {
|
|
126
|
-
analytics: cloudbaseAnalytics.analytics
|
|
127
|
-
}
|
|
128
|
+
analytics: cloudbaseAnalytics.analytics,
|
|
129
|
+
},
|
|
128
130
|
};
|
|
129
131
|
try {
|
|
130
132
|
cloudbase.registerComponent(component);
|
|
@@ -139,4 +141,4 @@ function registerAnalytics(app) {
|
|
|
139
141
|
}
|
|
140
142
|
}
|
|
141
143
|
exports.registerAnalytics = registerAnalytics;
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0Esa0RBQXlEO0FBSWpELElBQUEsTUFBTSxHQUF5QixxQkFBUyxPQUFsQyxFQUFFLGtCQUFrQixHQUFLLHFCQUFTLG1CQUFkLENBQWM7QUFDeEMsSUFBQSxvQkFBb0IsR0FBSyxtQkFBTyxxQkFBWixDQUFZO0FBRXhDLElBQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQTtBQUVsQyxJQUFNLFdBQVcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0FBRTVCLFNBQVMscUJBQXFCLENBQUMsSUFBaUI7SUFDOUMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsRUFBRTtRQUNsRSxPQUFPLEtBQUssQ0FBQTtLQUNiO0lBRU8sSUFBYSxVQUFVLEdBQThCLElBQUksWUFBbEMsRUFBZSxVQUFVLEdBQUssSUFBSSxZQUFULENBQVM7SUFFakUsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEtBQUssRUFBRTtRQUM5QyxPQUFPLEtBQUssQ0FBQTtLQUNiO0lBRUQsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsRUFBRTtRQUN4RSxPQUFPLEtBQUssQ0FBQTtLQUNiO0lBRUQsSUFBSSxVQUFVLENBQUMsV0FBVyxLQUFLLFNBQVMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQ3JGLE9BQU8sS0FBSyxDQUFBO0tBQ2I7SUFFRCxJQUFJLE9BQU8sVUFBVSxDQUFDLFdBQVcsS0FBSyxRQUFRLEVBQUU7UUFDOUMsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQztBQUVEO0lBQUE7SUF5Q0EsQ0FBQztJQTVCYyxzQ0FBUyxHQUF0QixVQUF1QixXQUF3Qjs7OztnQkFDN0MsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxFQUFFO29CQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7d0JBQzdCLElBQUksRUFBRSxNQUFNLENBQUMsY0FBYzt3QkFDM0IsR0FBRyxFQUFFLFdBQUksY0FBYyxvQ0FBaUM7cUJBQ3pELENBQUMsQ0FBQyxDQUFBO2lCQUNKO2dCQUVLLE1BQU0sR0FBRyxrQkFBa0IsQ0FBQTtnQkFFM0IsVUFBVSxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUMsV0FBVyxLQUFLLFNBQVM7b0JBQ2xFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7b0JBQy9CLENBQUMsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQTtnQkFDakMsYUFBYSxHQUF1QjtvQkFDeEMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxXQUFXO29CQUN4QyxjQUFjLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsV0FBVyxDQUFDLFdBQVcsRUFBRTt3QkFDekQsV0FBVyxFQUFFLFVBQVU7cUJBQ3hCLENBQUM7aUJBQ0gsQ0FBQTtnQkFFSyxNQUFNLEdBQUc7b0JBQ2IsV0FBVyxFQUFFLGFBQWE7aUJBQzNCLENBQUE7Z0JBRU8sT0FBTyxHQUFLLElBQUksUUFBVCxDQUFTO2dCQUV4QixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQTs7OztLQUM3QjtJQTNCRDtRQVpDLG9CQUFvQixDQUFDO1lBQ3BCLFVBQVUsRUFBRTtnQkFDVixTQUFTLEVBQUUsV0FBVztnQkFDdEIsVUFBVSxFQUFFLFdBQVc7YUFDeEI7WUFDRCxLQUFLLEVBQUUsUUFBUTtZQUNmLFFBQVEsRUFBRTtnQkFDUixVQUFVO2dCQUNWLGlDQUFpQztnQkFDakMsc0tBQTZCLGtCQUFrQixDQUFFO2FBQ2xEO1NBQ0YsQ0FBQzs7Ozt1REE0QkQ7SUFDSCx5QkFBQztDQUFBLEFBekNELElBeUNDO0FBRUQsSUFBTSxrQkFBa0IsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUE7QUFFbkQsSUFBTSxTQUFTLEdBQXdCO0lBQ3JDLElBQUksRUFBRSxjQUFjO0lBQ3BCLE1BQU0sRUFBRTtRQUNOLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxTQUFTO0tBQ3hDO0NBQ0YsQ0FBQTtBQUNELElBQUk7SUFDRixTQUFTLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUE7Q0FDdkM7QUFBQyxPQUFPLENBQUMsRUFBRSxHQUFHO0FBRWYsU0FBZ0IsaUJBQWlCLENBQUMsR0FBMEM7SUFDMUUsSUFBSTtRQUNGLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQTtLQUNqQztJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtLQUNoQjtBQUNILENBQUM7QUFORCw4Q0FNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDbG91ZGJhc2UgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHsgSUNsb3VkYmFzZUNvbXBvbmVudCB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY29tcG9uZW50J1xuaW1wb3J0IHsgSVJlcG9ydERhdGEsIElBbmFseXRpY3NEYXRhSXRlbSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvYW5hbHl0aWNzJ1xuaW1wb3J0IHsgY29uc3RhbnRzLCBoZWxwZXJzIH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnXG5cbmRlY2xhcmUgY29uc3QgY2xvdWRiYXNlOiBJQ2xvdWRiYXNlXG5cbmNvbnN0IHsgRVJST1JTLCBDT01NVU5JVFlfU0lURV9VUkwgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBjYXRjaEVycm9yc0RlY29yYXRvciB9ID0gaGVscGVyc1xuXG5jb25zdCBDT01QT05FTlRfTkFNRSA9ICdhbmFseXRpY3MnXG5cbmNvbnN0IHJlcG9ydFR5cGVzID0gWydtYWxsJ11cblxuZnVuY3Rpb24gdmFsaWRhdGVBbmFseXRpY3NEYXRhKGRhdGE6IElSZXBvcnREYXRhKTogYm9vbGVhbiB7XG4gIGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZGF0YSkuc2xpY2UoOCwgLTEpICE9PSAnT2JqZWN0Jykge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgY29uc3QgeyByZXBvcnRfZGF0YTogcmVwb3J0RGF0YSwgcmVwb3J0X3R5cGU6IHJlcG9ydFR5cGUgfSA9IGRhdGFcblxuICBpZiAocmVwb3J0VHlwZXMuaW5jbHVkZXMocmVwb3J0VHlwZSkgPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBpZiAoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHJlcG9ydERhdGEpLnNsaWNlKDgsIC0xKSAhPT0gJ09iamVjdCcpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmIChyZXBvcnREYXRhLmFjdGlvbl90aW1lICE9PSB1bmRlZmluZWQgJiYgIU51bWJlci5pc0ludGVnZXIocmVwb3J0RGF0YS5hY3Rpb25fdGltZSkpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmICh0eXBlb2YgcmVwb3J0RGF0YS5hY3Rpb25fdHlwZSAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuICByZXR1cm4gdHJ1ZVxufVxuXG5jbGFzcyBDbG91ZGJhc2VBbmFseXRpY3Mge1xuICBAY2F0Y2hFcnJvcnNEZWNvcmF0b3Ioe1xuICAgIGN1c3RvbUluZm86IHtcbiAgICAgIGNsYXNzTmFtZTogJ0Nsb3VkYmFzZScsXG4gICAgICBtZXRob2ROYW1lOiAnYW5hbHl0aWNzJyxcbiAgICB9LFxuICAgIHRpdGxlOiAn5LiK5oql6LCD55So5aSx6LSlJyxcbiAgICBtZXNzYWdlczogW1xuICAgICAgJ+ivt+ehruiupOS7peS4i+WQhOmhue+8micsXG4gICAgICAnICAxIC0g6LCD55SoIGFuYWx5dGljcygpIOeahOivreazleaIluWPguaVsOaYr+WQpuato+ehricsXG4gICAgICBg5aaC5p6c6Zeu6aKY5L6d54S25a2Y5Zyo77yM5bu66K6u5Yiw5a6Y5pa56Zeu562U56S+5Yy65o+Q6Zeu5oiW5a+75om+5biu5Yqp77yaJHtDT01NVU5JVFlfU0lURV9VUkx9YCxcbiAgICBdLFxuICB9KVxuICBwdWJsaWMgYXN5bmMgYW5hbHl0aWNzKHJlcXVlc3REYXRhOiBJUmVwb3J0RGF0YSkge1xuICAgIGlmICghdmFsaWRhdGVBbmFseXRpY3NEYXRhKHJlcXVlc3REYXRhKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6IGBbJHtDT01QT05FTlRfTkFNRX0uYW5hbHl0aWNzXSBpbnZhbGlkIHJlcG9ydCBkYXRhYCxcbiAgICAgIH0pKVxuICAgIH1cblxuICAgIGNvbnN0IGFjdGlvbiA9ICdhbmFseXRpY3MucmVwb3J0J1xuXG4gICAgY29uc3QgYWN0aW9uVGltZSA9IHJlcXVlc3REYXRhLnJlcG9ydF9kYXRhLmFjdGlvbl90aW1lID09PSB1bmRlZmluZWRcbiAgICAgID8gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMClcbiAgICAgIDogcmVxdWVzdERhdGEucmVwb3J0X2RhdGEuYWN0aW9uX3RpbWVcbiAgICBjb25zdCB0cmFuc2Zvcm1EYXRhOiBJQW5hbHl0aWNzRGF0YUl0ZW0gPSB7XG4gICAgICBhbmFseXRpY3Nfc2NlbmU6IHJlcXVlc3REYXRhLnJlcG9ydF90eXBlLFxuICAgICAgYW5hbHl0aWNzX2RhdGE6IE9iamVjdC5hc3NpZ24oe30sIHJlcXVlc3REYXRhLnJlcG9ydF9kYXRhLCB7XG4gICAgICAgIGFjdGlvbl90aW1lOiBhY3Rpb25UaW1lLFxuICAgICAgfSksXG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgcmVxdWVzdERhdGE6IHRyYW5zZm9ybURhdGEsXG4gICAgfVxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBjb25zdCB7IHJlcXVlc3QgfSA9IHRoaXNcblxuICAgIHJlcXVlc3Quc2VuZChhY3Rpb24sIHBhcmFtcylcbiAgfVxufVxuXG5jb25zdCBjbG91ZGJhc2VBbmFseXRpY3MgPSBuZXcgQ2xvdWRiYXNlQW5hbHl0aWNzKClcblxuY29uc3QgY29tcG9uZW50OiBJQ2xvdWRiYXNlQ29tcG9uZW50ID0ge1xuICBuYW1lOiBDT01QT05FTlRfTkFNRSxcbiAgZW50aXR5OiB7XG4gICAgYW5hbHl0aWNzOiBjbG91ZGJhc2VBbmFseXRpY3MuYW5hbHl0aWNzLFxuICB9LFxufVxudHJ5IHtcbiAgY2xvdWRiYXNlLnJlZ2lzdGVyQ29tcG9uZW50KGNvbXBvbmVudClcbn0gY2F0Y2ggKGUpIHsgfVxuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJBbmFseXRpY3MoYXBwOiBQaWNrPElDbG91ZGJhc2UsICdyZWdpc3RlckNvbXBvbmVudCc+KSB7XG4gIHRyeSB7XG4gICAgYXBwLnJlZ2lzdGVyQ29tcG9uZW50KGNvbXBvbmVudClcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUud2FybihlKVxuICB9XG59XG4iXX0=
|
package/dist/esm/index.js
CHANGED
|
@@ -52,17 +52,17 @@ function validateAnalyticsData(data) {
|
|
|
52
52
|
if (Object.prototype.toString.call(data).slice(8, -1) !== 'Object') {
|
|
53
53
|
return false;
|
|
54
54
|
}
|
|
55
|
-
var
|
|
56
|
-
if (reportTypes.includes(
|
|
55
|
+
var reportData = data.report_data, reportType = data.report_type;
|
|
56
|
+
if (reportTypes.includes(reportType) === false) {
|
|
57
57
|
return false;
|
|
58
58
|
}
|
|
59
|
-
if (Object.prototype.toString.call(
|
|
59
|
+
if (Object.prototype.toString.call(reportData).slice(8, -1) !== 'Object') {
|
|
60
60
|
return false;
|
|
61
61
|
}
|
|
62
|
-
if (
|
|
62
|
+
if (reportData.action_time !== undefined && !Number.isInteger(reportData.action_time)) {
|
|
63
63
|
return false;
|
|
64
64
|
}
|
|
65
|
-
if (typeof
|
|
65
|
+
if (typeof reportData.action_type !== 'string') {
|
|
66
66
|
return false;
|
|
67
67
|
}
|
|
68
68
|
return true;
|
|
@@ -72,24 +72,26 @@ var CloudbaseAnalytics = (function () {
|
|
|
72
72
|
}
|
|
73
73
|
CloudbaseAnalytics.prototype.analytics = function (requestData) {
|
|
74
74
|
return __awaiter(this, void 0, void 0, function () {
|
|
75
|
-
var action,
|
|
75
|
+
var action, actionTime, transformData, params, request;
|
|
76
76
|
return __generator(this, function (_a) {
|
|
77
77
|
if (!validateAnalyticsData(requestData)) {
|
|
78
78
|
throw new Error(JSON.stringify({
|
|
79
79
|
code: ERRORS.INVALID_PARAMS,
|
|
80
|
-
msg: "[".concat(COMPONENT_NAME, ".analytics] invalid report data")
|
|
80
|
+
msg: "[".concat(COMPONENT_NAME, ".analytics] invalid report data"),
|
|
81
81
|
}));
|
|
82
82
|
}
|
|
83
83
|
action = 'analytics.report';
|
|
84
|
-
|
|
84
|
+
actionTime = requestData.report_data.action_time === undefined
|
|
85
|
+
? Math.floor(Date.now() / 1000)
|
|
86
|
+
: requestData.report_data.action_time;
|
|
85
87
|
transformData = {
|
|
86
88
|
analytics_scene: requestData.report_type,
|
|
87
89
|
analytics_data: Object.assign({}, requestData.report_data, {
|
|
88
|
-
action_time:
|
|
89
|
-
})
|
|
90
|
+
action_time: actionTime,
|
|
91
|
+
}),
|
|
90
92
|
};
|
|
91
93
|
params = {
|
|
92
|
-
requestData: transformData
|
|
94
|
+
requestData: transformData,
|
|
93
95
|
};
|
|
94
96
|
request = this.request;
|
|
95
97
|
request.send(action, params);
|
|
@@ -101,14 +103,14 @@ var CloudbaseAnalytics = (function () {
|
|
|
101
103
|
catchErrorsDecorator({
|
|
102
104
|
customInfo: {
|
|
103
105
|
className: 'Cloudbase',
|
|
104
|
-
methodName: 'analytics'
|
|
106
|
+
methodName: 'analytics',
|
|
105
107
|
},
|
|
106
108
|
title: '上报调用失败',
|
|
107
109
|
messages: [
|
|
108
110
|
'请确认以下各项:',
|
|
109
111
|
' 1 - 调用 analytics() 的语法或参数是否正确',
|
|
110
|
-
"\u5982\u679C\u95EE\u9898\u4F9D\u7136\u5B58\u5728\uFF0C\u5EFA\u8BAE\u5230\u5B98\u65B9\u95EE\u7B54\u793E\u533A\u63D0\u95EE\u6216\u5BFB\u627E\u5E2E\u52A9\uFF1A".concat(COMMUNITY_SITE_URL)
|
|
111
|
-
]
|
|
112
|
+
"\u5982\u679C\u95EE\u9898\u4F9D\u7136\u5B58\u5728\uFF0C\u5EFA\u8BAE\u5230\u5B98\u65B9\u95EE\u7B54\u793E\u533A\u63D0\u95EE\u6216\u5BFB\u627E\u5E2E\u52A9\uFF1A".concat(COMMUNITY_SITE_URL),
|
|
113
|
+
],
|
|
112
114
|
}),
|
|
113
115
|
__metadata("design:type", Function),
|
|
114
116
|
__metadata("design:paramtypes", [Object]),
|
|
@@ -120,8 +122,8 @@ var cloudbaseAnalytics = new CloudbaseAnalytics();
|
|
|
120
122
|
var component = {
|
|
121
123
|
name: COMPONENT_NAME,
|
|
122
124
|
entity: {
|
|
123
|
-
analytics: cloudbaseAnalytics.analytics
|
|
124
|
-
}
|
|
125
|
+
analytics: cloudbaseAnalytics.analytics,
|
|
126
|
+
},
|
|
125
127
|
};
|
|
126
128
|
try {
|
|
127
129
|
cloudbase.registerComponent(component);
|
|
@@ -135,4 +137,4 @@ export function registerAnalytics(app) {
|
|
|
135
137
|
console.warn(e);
|
|
136
138
|
}
|
|
137
139
|
}
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUlqRCxJQUFBLE1BQU0sR0FBeUIsU0FBUyxPQUFsQyxFQUFFLGtCQUFrQixHQUFLLFNBQVMsbUJBQWQsQ0FBYztBQUN4QyxJQUFBLG9CQUFvQixHQUFLLE9BQU8scUJBQVosQ0FBWTtBQUV4QyxJQUFNLGNBQWMsR0FBRyxXQUFXLENBQUE7QUFFbEMsSUFBTSxXQUFXLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUU1QixTQUFTLHFCQUFxQixDQUFDLElBQWlCO0lBQzlDLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLEVBQUU7UUFDbEUsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUVPLElBQWEsVUFBVSxHQUE4QixJQUFJLFlBQWxDLEVBQWUsVUFBVSxHQUFLLElBQUksWUFBVCxDQUFTO0lBRWpFLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxLQUFLLEVBQUU7UUFDOUMsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUVELElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLEVBQUU7UUFDeEUsT0FBTyxLQUFLLENBQUE7S0FDYjtJQUVELElBQUksVUFBVSxDQUFDLFdBQVcsS0FBSyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUNyRixPQUFPLEtBQUssQ0FBQTtLQUNiO0lBRUQsSUFBSSxPQUFPLFVBQVUsQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFO1FBQzlDLE9BQU8sS0FBSyxDQUFBO0tBQ2I7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRDtJQUFBO0lBeUNBLENBQUM7SUE1QmMsc0NBQVMsR0FBdEIsVUFBdUIsV0FBd0I7Ozs7Z0JBQzdDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsRUFBRTtvQkFDdkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO3dCQUM3QixJQUFJLEVBQUUsTUFBTSxDQUFDLGNBQWM7d0JBQzNCLEdBQUcsRUFBRSxXQUFJLGNBQWMsb0NBQWlDO3FCQUN6RCxDQUFDLENBQUMsQ0FBQTtpQkFDSjtnQkFFSyxNQUFNLEdBQUcsa0JBQWtCLENBQUE7Z0JBRTNCLFVBQVUsR0FBRyxXQUFXLENBQUMsV0FBVyxDQUFDLFdBQVcsS0FBSyxTQUFTO29CQUNsRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDO29CQUMvQixDQUFDLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUE7Z0JBQ2pDLGFBQWEsR0FBdUI7b0JBQ3hDLGVBQWUsRUFBRSxXQUFXLENBQUMsV0FBVztvQkFDeEMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsQ0FBQyxXQUFXLEVBQUU7d0JBQ3pELFdBQVcsRUFBRSxVQUFVO3FCQUN4QixDQUFDO2lCQUNILENBQUE7Z0JBRUssTUFBTSxHQUFHO29CQUNiLFdBQVcsRUFBRSxhQUFhO2lCQUMzQixDQUFBO2dCQUVPLE9BQU8sR0FBSyxJQUFJLFFBQVQsQ0FBUztnQkFFeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7Ozs7S0FDN0I7SUEzQkQ7UUFaQyxvQkFBb0IsQ0FBQztZQUNwQixVQUFVLEVBQUU7Z0JBQ1YsU0FBUyxFQUFFLFdBQVc7Z0JBQ3RCLFVBQVUsRUFBRSxXQUFXO2FBQ3hCO1lBQ0QsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUU7Z0JBQ1IsVUFBVTtnQkFDVixpQ0FBaUM7Z0JBQ2pDLHNLQUE2QixrQkFBa0IsQ0FBRTthQUNsRDtTQUNGLENBQUM7Ozs7dURBNEJEO0lBQ0gseUJBQUM7Q0FBQSxBQXpDRCxJQXlDQztBQUVELElBQU0sa0JBQWtCLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFBO0FBRW5ELElBQU0sU0FBUyxHQUF3QjtJQUNyQyxJQUFJLEVBQUUsY0FBYztJQUNwQixNQUFNLEVBQUU7UUFDTixTQUFTLEVBQUUsa0JBQWtCLENBQUMsU0FBUztLQUN4QztDQUNGLENBQUE7QUFDRCxJQUFJO0lBQ0YsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFBO0NBQ3ZDO0FBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRztBQUVmLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxHQUEwQztJQUMxRSxJQUFJO1FBQ0YsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFBO0tBQ2pDO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0tBQ2hCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDbG91ZGJhc2UgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHsgSUNsb3VkYmFzZUNvbXBvbmVudCB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY29tcG9uZW50J1xuaW1wb3J0IHsgSVJlcG9ydERhdGEsIElBbmFseXRpY3NEYXRhSXRlbSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvYW5hbHl0aWNzJ1xuaW1wb3J0IHsgY29uc3RhbnRzLCBoZWxwZXJzIH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnXG5cbmRlY2xhcmUgY29uc3QgY2xvdWRiYXNlOiBJQ2xvdWRiYXNlXG5cbmNvbnN0IHsgRVJST1JTLCBDT01NVU5JVFlfU0lURV9VUkwgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBjYXRjaEVycm9yc0RlY29yYXRvciB9ID0gaGVscGVyc1xuXG5jb25zdCBDT01QT05FTlRfTkFNRSA9ICdhbmFseXRpY3MnXG5cbmNvbnN0IHJlcG9ydFR5cGVzID0gWydtYWxsJ11cblxuZnVuY3Rpb24gdmFsaWRhdGVBbmFseXRpY3NEYXRhKGRhdGE6IElSZXBvcnREYXRhKTogYm9vbGVhbiB7XG4gIGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZGF0YSkuc2xpY2UoOCwgLTEpICE9PSAnT2JqZWN0Jykge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgY29uc3QgeyByZXBvcnRfZGF0YTogcmVwb3J0RGF0YSwgcmVwb3J0X3R5cGU6IHJlcG9ydFR5cGUgfSA9IGRhdGFcblxuICBpZiAocmVwb3J0VHlwZXMuaW5jbHVkZXMocmVwb3J0VHlwZSkgPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBpZiAoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHJlcG9ydERhdGEpLnNsaWNlKDgsIC0xKSAhPT0gJ09iamVjdCcpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmIChyZXBvcnREYXRhLmFjdGlvbl90aW1lICE9PSB1bmRlZmluZWQgJiYgIU51bWJlci5pc0ludGVnZXIocmVwb3J0RGF0YS5hY3Rpb25fdGltZSkpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmICh0eXBlb2YgcmVwb3J0RGF0YS5hY3Rpb25fdHlwZSAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuICByZXR1cm4gdHJ1ZVxufVxuXG5jbGFzcyBDbG91ZGJhc2VBbmFseXRpY3Mge1xuICBAY2F0Y2hFcnJvcnNEZWNvcmF0b3Ioe1xuICAgIGN1c3RvbUluZm86IHtcbiAgICAgIGNsYXNzTmFtZTogJ0Nsb3VkYmFzZScsXG4gICAgICBtZXRob2ROYW1lOiAnYW5hbHl0aWNzJyxcbiAgICB9LFxuICAgIHRpdGxlOiAn5LiK5oql6LCD55So5aSx6LSlJyxcbiAgICBtZXNzYWdlczogW1xuICAgICAgJ+ivt+ehruiupOS7peS4i+WQhOmhue+8micsXG4gICAgICAnICAxIC0g6LCD55SoIGFuYWx5dGljcygpIOeahOivreazleaIluWPguaVsOaYr+WQpuato+ehricsXG4gICAgICBg5aaC5p6c6Zeu6aKY5L6d54S25a2Y5Zyo77yM5bu66K6u5Yiw5a6Y5pa56Zeu562U56S+5Yy65o+Q6Zeu5oiW5a+75om+5biu5Yqp77yaJHtDT01NVU5JVFlfU0lURV9VUkx9YCxcbiAgICBdLFxuICB9KVxuICBwdWJsaWMgYXN5bmMgYW5hbHl0aWNzKHJlcXVlc3REYXRhOiBJUmVwb3J0RGF0YSkge1xuICAgIGlmICghdmFsaWRhdGVBbmFseXRpY3NEYXRhKHJlcXVlc3REYXRhKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6IGBbJHtDT01QT05FTlRfTkFNRX0uYW5hbHl0aWNzXSBpbnZhbGlkIHJlcG9ydCBkYXRhYCxcbiAgICAgIH0pKVxuICAgIH1cblxuICAgIGNvbnN0IGFjdGlvbiA9ICdhbmFseXRpY3MucmVwb3J0J1xuXG4gICAgY29uc3QgYWN0aW9uVGltZSA9IHJlcXVlc3REYXRhLnJlcG9ydF9kYXRhLmFjdGlvbl90aW1lID09PSB1bmRlZmluZWRcbiAgICAgID8gTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMClcbiAgICAgIDogcmVxdWVzdERhdGEucmVwb3J0X2RhdGEuYWN0aW9uX3RpbWVcbiAgICBjb25zdCB0cmFuc2Zvcm1EYXRhOiBJQW5hbHl0aWNzRGF0YUl0ZW0gPSB7XG4gICAgICBhbmFseXRpY3Nfc2NlbmU6IHJlcXVlc3REYXRhLnJlcG9ydF90eXBlLFxuICAgICAgYW5hbHl0aWNzX2RhdGE6IE9iamVjdC5hc3NpZ24oe30sIHJlcXVlc3REYXRhLnJlcG9ydF9kYXRhLCB7XG4gICAgICAgIGFjdGlvbl90aW1lOiBhY3Rpb25UaW1lLFxuICAgICAgfSksXG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgcmVxdWVzdERhdGE6IHRyYW5zZm9ybURhdGEsXG4gICAgfVxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBjb25zdCB7IHJlcXVlc3QgfSA9IHRoaXNcblxuICAgIHJlcXVlc3Quc2VuZChhY3Rpb24sIHBhcmFtcylcbiAgfVxufVxuXG5jb25zdCBjbG91ZGJhc2VBbmFseXRpY3MgPSBuZXcgQ2xvdWRiYXNlQW5hbHl0aWNzKClcblxuY29uc3QgY29tcG9uZW50OiBJQ2xvdWRiYXNlQ29tcG9uZW50ID0ge1xuICBuYW1lOiBDT01QT05FTlRfTkFNRSxcbiAgZW50aXR5OiB7XG4gICAgYW5hbHl0aWNzOiBjbG91ZGJhc2VBbmFseXRpY3MuYW5hbHl0aWNzLFxuICB9LFxufVxudHJ5IHtcbiAgY2xvdWRiYXNlLnJlZ2lzdGVyQ29tcG9uZW50KGNvbXBvbmVudClcbn0gY2F0Y2ggKGUpIHsgfVxuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJBbmFseXRpY3MoYXBwOiBQaWNrPElDbG91ZGJhc2UsICdyZWdpc3RlckNvbXBvbmVudCc+KSB7XG4gIHRyeSB7XG4gICAgYXBwLnJlZ2lzdGVyQ29tcG9uZW50KGNvbXBvbmVudClcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUud2FybihlKVxuICB9XG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudbase/analytics",
|
|
3
|
-
"version": "2.0
|
|
3
|
+
"version": "2.5.0-beta.0",
|
|
4
4
|
"description": "cloudbase javascript sdk functions componets",
|
|
5
5
|
"author": "",
|
|
6
6
|
"homepage": "",
|
|
@@ -17,11 +17,23 @@
|
|
|
17
17
|
"scripts": {
|
|
18
18
|
"tsc": "rm -rf dist/ && tsc -p tsconfig.esm.json && tsc -p tsconfig.json",
|
|
19
19
|
"lint": "eslint --fix \"./src/**/*.ts\"",
|
|
20
|
-
"build": "npm run lint && npm run tsc"
|
|
20
|
+
"build": "npm run lint && npm run tsc",
|
|
21
|
+
"precommit": "lint-staged"
|
|
22
|
+
},
|
|
23
|
+
"lint-staged": {
|
|
24
|
+
"**/*.ts": [
|
|
25
|
+
"eslint --fix"
|
|
26
|
+
]
|
|
21
27
|
},
|
|
22
28
|
"dependencies": {
|
|
23
|
-
"@cloudbase/functions": "^2.0
|
|
24
|
-
"@cloudbase/types": "^2.0
|
|
29
|
+
"@cloudbase/functions": "^2.5.0-beta.0",
|
|
30
|
+
"@cloudbase/types": "^2.5.0-beta.0"
|
|
25
31
|
},
|
|
26
|
-
"gitHead": "
|
|
32
|
+
"gitHead": "916f06a86425cad63ea80dc398f6b55901c88dfb",
|
|
33
|
+
"devDependencies": {
|
|
34
|
+
"@tencent/eslint-config-tencent": "^1.0.4",
|
|
35
|
+
"@typescript-eslint/eslint-plugin": "^5.40.0",
|
|
36
|
+
"@typescript-eslint/parser": "^5.40.0",
|
|
37
|
+
"lint-staged": "^13.0.3"
|
|
38
|
+
}
|
|
27
39
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { ICloudbase } from '@cloudbase/types'
|
|
2
|
-
import { ICloudbaseComponent } from '@cloudbase/types/component'
|
|
3
|
-
import { IReportData,IAnalyticsDataItem } from '@cloudbase/types/analytics'
|
|
4
|
-
import { constants,helpers } from '@cloudbase/utilities'
|
|
1
|
+
import { ICloudbase } from '@cloudbase/types'
|
|
2
|
+
import { ICloudbaseComponent } from '@cloudbase/types/component'
|
|
3
|
+
import { IReportData, IAnalyticsDataItem } from '@cloudbase/types/analytics'
|
|
4
|
+
import { constants, helpers } from '@cloudbase/utilities'
|
|
5
5
|
|
|
6
|
-
declare const cloudbase: ICloudbase
|
|
6
|
+
declare const cloudbase: ICloudbase
|
|
7
7
|
|
|
8
|
-
const { ERRORS,COMMUNITY_SITE_URL } = constants
|
|
9
|
-
const { catchErrorsDecorator } = helpers
|
|
8
|
+
const { ERRORS, COMMUNITY_SITE_URL } = constants
|
|
9
|
+
const { catchErrorsDecorator } = helpers
|
|
10
10
|
|
|
11
|
-
const COMPONENT_NAME = 'analytics'
|
|
11
|
+
const COMPONENT_NAME = 'analytics'
|
|
12
12
|
|
|
13
13
|
const reportTypes = ['mall']
|
|
14
14
|
|
|
15
15
|
function validateAnalyticsData(data: IReportData): boolean {
|
|
16
|
-
if(Object.prototype.toString.call(data).slice(8
|
|
16
|
+
if (Object.prototype.toString.call(data).slice(8, -1) !== 'Object') {
|
|
17
17
|
return false
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
const { report_data,report_type } = data
|
|
20
|
+
const { report_data: reportData, report_type: reportType } = data
|
|
21
21
|
|
|
22
|
-
if(reportTypes.includes(
|
|
22
|
+
if (reportTypes.includes(reportType) === false) {
|
|
23
23
|
return false
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
if(Object.prototype.toString.call(
|
|
26
|
+
if (Object.prototype.toString.call(reportData).slice(8, -1) !== 'Object') {
|
|
27
27
|
return false
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
if(
|
|
30
|
+
if (reportData.action_time !== undefined && !Number.isInteger(reportData.action_time)) {
|
|
31
31
|
return false
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
if(typeof
|
|
34
|
+
if (typeof reportData.action_type !== 'string') {
|
|
35
35
|
return false
|
|
36
36
|
}
|
|
37
37
|
return true
|
|
@@ -41,59 +41,61 @@ class CloudbaseAnalytics {
|
|
|
41
41
|
@catchErrorsDecorator({
|
|
42
42
|
customInfo: {
|
|
43
43
|
className: 'Cloudbase',
|
|
44
|
-
methodName: 'analytics'
|
|
44
|
+
methodName: 'analytics',
|
|
45
45
|
},
|
|
46
46
|
title: '上报调用失败',
|
|
47
47
|
messages: [
|
|
48
48
|
'请确认以下各项:',
|
|
49
49
|
' 1 - 调用 analytics() 的语法或参数是否正确',
|
|
50
|
-
`如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}
|
|
51
|
-
]
|
|
50
|
+
`如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,
|
|
51
|
+
],
|
|
52
52
|
})
|
|
53
53
|
public async analytics(requestData: IReportData) {
|
|
54
|
-
if(!validateAnalyticsData(requestData)) {
|
|
54
|
+
if (!validateAnalyticsData(requestData)) {
|
|
55
55
|
throw new Error(JSON.stringify({
|
|
56
56
|
code: ERRORS.INVALID_PARAMS,
|
|
57
|
-
msg: `[${COMPONENT_NAME}.analytics] invalid report data
|
|
57
|
+
msg: `[${COMPONENT_NAME}.analytics] invalid report data`,
|
|
58
58
|
}))
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
const action = 'analytics.report'
|
|
61
|
+
const action = 'analytics.report'
|
|
62
62
|
|
|
63
|
-
const
|
|
63
|
+
const actionTime = requestData.report_data.action_time === undefined
|
|
64
|
+
? Math.floor(Date.now() / 1000)
|
|
65
|
+
: requestData.report_data.action_time
|
|
64
66
|
const transformData: IAnalyticsDataItem = {
|
|
65
67
|
analytics_scene: requestData.report_type,
|
|
66
|
-
analytics_data: Object.assign({},requestData.report_data,{
|
|
67
|
-
action_time
|
|
68
|
-
})
|
|
68
|
+
analytics_data: Object.assign({}, requestData.report_data, {
|
|
69
|
+
action_time: actionTime,
|
|
70
|
+
}),
|
|
69
71
|
}
|
|
70
72
|
|
|
71
73
|
const params = {
|
|
72
|
-
requestData: transformData
|
|
73
|
-
}
|
|
74
|
+
requestData: transformData,
|
|
75
|
+
}
|
|
74
76
|
// @ts-ignore
|
|
75
|
-
const request = this
|
|
77
|
+
const { request } = this
|
|
76
78
|
|
|
77
|
-
request.send(action,params)
|
|
79
|
+
request.send(action, params)
|
|
78
80
|
}
|
|
79
81
|
}
|
|
80
82
|
|
|
81
|
-
const cloudbaseAnalytics = new CloudbaseAnalytics()
|
|
83
|
+
const cloudbaseAnalytics = new CloudbaseAnalytics()
|
|
82
84
|
|
|
83
85
|
const component: ICloudbaseComponent = {
|
|
84
86
|
name: COMPONENT_NAME,
|
|
85
87
|
entity: {
|
|
86
|
-
analytics: cloudbaseAnalytics.analytics
|
|
87
|
-
}
|
|
88
|
+
analytics: cloudbaseAnalytics.analytics,
|
|
89
|
+
},
|
|
88
90
|
}
|
|
89
91
|
try {
|
|
90
|
-
cloudbase.registerComponent(component)
|
|
91
|
-
} catch(e) { }
|
|
92
|
+
cloudbase.registerComponent(component)
|
|
93
|
+
} catch (e) { }
|
|
92
94
|
|
|
93
|
-
export function registerAnalytics(app: Pick<ICloudbase,'registerComponent'>) {
|
|
95
|
+
export function registerAnalytics(app: Pick<ICloudbase, 'registerComponent'>) {
|
|
94
96
|
try {
|
|
95
|
-
app.registerComponent(component)
|
|
96
|
-
} catch(e) {
|
|
97
|
-
console.warn(e)
|
|
97
|
+
app.registerComponent(component)
|
|
98
|
+
} catch (e) {
|
|
99
|
+
console.warn(e)
|
|
98
100
|
}
|
|
99
|
-
}
|
|
101
|
+
}
|
package/tsconfig.json
CHANGED
package/.eslintrc
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": [
|
|
3
|
-
"eslint-config-alloy/typescript"
|
|
4
|
-
],
|
|
5
|
-
"rules": {
|
|
6
|
-
"indent": [
|
|
7
|
-
"error",
|
|
8
|
-
2,
|
|
9
|
-
{
|
|
10
|
-
"SwitchCase": 1,
|
|
11
|
-
"flatTernaryExpressions": true
|
|
12
|
-
}
|
|
13
|
-
],
|
|
14
|
-
"guard-for-in": 0,
|
|
15
|
-
"no-param-reassign": 0,
|
|
16
|
-
"no-undefined": 0,
|
|
17
|
-
"@typescript-eslint/explicit-member-accessibility": 0,
|
|
18
|
-
"@typescript-eslint/no-loss-of-precision": 0,
|
|
19
|
-
"@typescript-eslint/no-invalid-this": 0,
|
|
20
|
-
"@typescript-eslint/no-duplicate-imports": 0
|
|
21
|
-
},
|
|
22
|
-
"parserOptions": {
|
|
23
|
-
"ecmaVersion": 6,
|
|
24
|
-
"sourceType": "module",
|
|
25
|
-
"ecmaFeatures": {
|
|
26
|
-
"modules": true
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
}
|