@byted-apaas/server-sdk-node 1.0.17 → 1.1.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.
- package/README.md +7 -0
- package/application/application.d.ts +9 -7
- package/application/application.js +1 -0
- package/application/application.js.map +1 -0
- package/application/function/function.d.ts +1 -1
- package/application/function/function.js +1 -1
- package/application/function/function.js.map +1 -0
- package/application/impl/common.d.ts +1 -1
- package/application/impl/common.js +14 -12
- package/application/impl/common.js.map +1 -0
- package/application/impl/impl.d.ts +8 -6
- package/application/impl/impl.js +7 -4
- package/application/impl/impl.js.map +1 -0
- package/constants/constants.js +5 -4
- package/constants/constants.js.map +1 -0
- package/context/context.d.ts +8 -38
- package/context/context.js +3 -2
- package/context/context.js.map +1 -0
- package/context/db/db.d.ts +11 -19
- package/context/db/db.js +1 -0
- package/context/db/db.js.map +1 -0
- package/context/db/impl/IObject.d.ts +37 -37
- package/context/db/impl/IObject.js +1 -0
- package/context/db/impl/IObject.js.map +1 -0
- package/context/db/impl/db.d.ts +9 -9
- package/context/db/impl/db.js +7 -6
- package/context/db/impl/db.js.map +1 -0
- package/context/db/impl/object.js +48 -47
- package/context/db/impl/object.js.map +1 -0
- package/context/db/impl/oql/ioql.js +1 -0
- package/context/db/impl/oql/ioql.js.map +1 -0
- package/context/db/impl/oql/oql.d.ts +1 -1
- package/context/db/impl/oql/oql.js +1 -0
- package/context/db/impl/oql/oql.js.map +1 -0
- package/context/db/impl/order.js +2 -1
- package/context/db/impl/order.js.map +1 -0
- package/context/db/impl/propertiesStore.js +2 -1
- package/context/db/impl/propertiesStore.js.map +1 -0
- package/context/db/impl/queryBuilder.js +1 -0
- package/context/db/impl/queryBuilder.js.map +1 -0
- package/context/db/impl/transaction/index.d.ts +1 -1
- package/context/db/impl/transaction/index.js +47 -45
- package/context/db/impl/transaction/index.js.map +1 -0
- package/context/db/impl/transaction/operation.js +1 -0
- package/context/db/impl/transaction/operation.js.map +1 -0
- package/context/db/impl/transaction.d.ts +0 -5
- package/context/db/impl/transaction.js +1 -0
- package/context/db/impl/transaction.js.map +1 -0
- package/context/globalConfig/globalConfig.js +1 -0
- package/context/globalConfig/globalConfig.js.map +1 -0
- package/context/integration/IIntegration.d.ts +30 -0
- package/context/integration/IIntegration.js +5 -0
- package/context/integration/IIntegration.js.map +1 -0
- package/context/integration/impl/integration.d.ts +16 -0
- package/context/integration/impl/integration.js +63 -0
- package/context/integration/impl/integration.js.map +1 -0
- package/context/metadata/components/common.js +4 -3
- package/context/metadata/components/common.js.map +1 -0
- package/context/metadata/components/components.d.ts +4 -4
- package/context/metadata/components/components.js +1 -0
- package/context/metadata/components/components.js.map +1 -0
- package/context/metadata/components/desktop/list.d.ts +3 -3
- package/context/metadata/components/desktop/list.js +24 -23
- package/context/metadata/components/desktop/list.js.map +1 -0
- package/context/metadata/components/desktop/recordDetail.d.ts +2 -2
- package/context/metadata/components/desktop/recordDetail.js +1 -0
- package/context/metadata/components/desktop/recordDetail.js.map +1 -0
- package/context/metadata/components/mobile/list.d.ts +4 -4
- package/context/metadata/components/mobile/list.js +2 -1
- package/context/metadata/components/mobile/list.js.map +1 -0
- package/context/metadata/metadata.d.ts +5 -6
- package/context/metadata/metadata.js +6 -6
- package/context/metadata/metadata.js.map +1 -0
- package/context/metadata/objects/fields.d.ts +6 -6
- package/context/metadata/objects/fields.js +58 -57
- package/context/metadata/objects/fields.js.map +1 -0
- package/context/metadata/objects/fields.util.d.ts +3 -3
- package/context/metadata/objects/fields.util.js +22 -21
- package/context/metadata/objects/fields.util.js.map +1 -0
- package/context/metadata/objects/objects.d.ts +1 -1
- package/context/metadata/objects/objects.js +2 -1
- package/context/metadata/objects/objects.js.map +1 -0
- package/context/metadata/types/common.js +1 -0
- package/context/metadata/types/common.js.map +1 -0
- package/context/metadata/types/components.d.ts +5 -5
- package/context/metadata/types/components.js +1 -0
- package/context/metadata/types/components.js.map +1 -0
- package/context/metadata/types/objects.d.ts +88 -88
- package/context/metadata/types/objects.js +1 -0
- package/context/metadata/types/objects.js.map +1 -0
- package/context/msg/msg.d.ts +2 -2
- package/context/msg/msg.js +1 -0
- package/context/msg/msg.js.map +1 -0
- package/context/resources/IResources.d.ts +2 -2
- package/context/resources/IResources.js +1 -0
- package/context/resources/IResources.js.map +1 -0
- package/context/resources/impl/resources.d.ts +4 -4
- package/context/resources/impl/resources.js +4 -3
- package/context/resources/impl/resources.js.map +1 -0
- package/context/tasks/tasks.d.ts +3 -3
- package/context/tasks/tasks.js +6 -5
- package/context/tasks/tasks.js.map +1 -0
- package/data/index.d.ts +2 -2
- package/data/index.js +1 -0
- package/data/index.js.map +1 -0
- package/global/application/flow/flow.d.ts +85 -0
- package/global/application/flow/flow.js +3 -0
- package/global/application/flow/flow.js.map +1 -0
- package/global/global.d.ts +88 -0
- package/global/global.js +4 -0
- package/global/global.js.map +1 -0
- package/hooks/api.d.ts +12 -7
- package/hooks/api.js +29 -23
- package/hooks/api.js.map +1 -0
- package/hooks/hooks.js +42 -0
- package/hooks/hooks.js.map +1 -0
- package/kunlun/kunlun.d.ts +5 -5
- package/kunlun/kunlun.js +1 -0
- package/kunlun/kunlun.js.map +1 -0
- package/kunlun/operator/IOperator.d.ts +16 -16
- package/kunlun/operator/IOperator.js +1 -0
- package/kunlun/operator/IOperator.js.map +1 -0
- package/kunlun/operator/impl/expression.d.ts +2 -2
- package/kunlun/operator/impl/expression.js +6 -5
- package/kunlun/operator/impl/expression.js.map +1 -0
- package/kunlun/operator/impl/logic.js +49 -31
- package/kunlun/operator/impl/logic.js.map +1 -0
- package/kunlun/operator/impl/logicV2.d.ts +2 -2
- package/kunlun/operator/impl/logicV2.js +13 -13
- package/kunlun/operator/impl/logicV2.js.map +1 -0
- package/kunlun/operator/impl/operator.d.ts +17 -17
- package/kunlun/operator/impl/operator.js +39 -38
- package/kunlun/operator/impl/operator.js.map +1 -0
- package/kunlun/operator/impl/operatorV2.d.ts +17 -17
- package/kunlun/operator/impl/operatorV2.js +39 -38
- package/kunlun/operator/impl/operatorV2.js.map +1 -0
- package/lib/core.d.ts +3 -3
- package/lib/core.js +1 -0
- package/lib/core.js.map +1 -0
- package/log/app.access.log +0 -0
- package/log/app.call.log +0 -0
- package/log/app.log +0 -0
- package/package.json +2 -2
- package/request/common.d.ts +1 -1
- package/request/common.js +5 -3
- package/request/common.js.map +1 -0
- package/request/constants.d.ts +1 -1
- package/request/constants.js +7 -6
- package/request/constants.js.map +1 -0
- package/request/faasinfra.d.ts +1 -1
- package/request/faasinfra.js +42 -251
- package/request/faasinfra.js.map +1 -0
- package/request/innerapi.d.ts +12 -8
- package/request/innerapi.js +173 -57
- package/request/innerapi.js.map +1 -0
- package/request/interface.d.ts +68 -54
- package/request/interface.js +9 -9
- package/request/interface.js.map +1 -0
- package/request/openapi.d.ts +12 -8
- package/request/openapi.js +215 -149
- package/request/openapi.js.map +1 -0
- package/types/types.js +1 -0
- package/types/types.js.map +1 -0
package/request/innerapi.js
CHANGED
|
@@ -8,12 +8,12 @@ const stream_to_buffer_1 = require("@jorgeferrero/stream-to-buffer");
|
|
|
8
8
|
const constants_1 = require("../constants/constants");
|
|
9
9
|
const common_1 = require("./common");
|
|
10
10
|
const exceptions_1 = require("@byted-apaas/server-common-node/utils/exceptions");
|
|
11
|
+
const fs = require("fs");
|
|
12
|
+
const path = require("path");
|
|
11
13
|
const rpc = common.rpc;
|
|
12
14
|
const exceptions = common.exceptions;
|
|
13
15
|
const utils = common.utils;
|
|
14
|
-
const fs = require("fs");
|
|
15
16
|
const checkUtils = common.checkUtils;
|
|
16
|
-
const path = require('path');
|
|
17
17
|
async function pre(isTransUser, authType) {
|
|
18
18
|
let ctx;
|
|
19
19
|
try {
|
|
@@ -28,12 +28,12 @@ function post(baseResp) {
|
|
|
28
28
|
if (!baseResp) {
|
|
29
29
|
throw new exceptions.InternalError(`Call InnerAPI resp is empty`);
|
|
30
30
|
}
|
|
31
|
-
if (baseResp.KStatusCode !==
|
|
31
|
+
if (baseResp.KStatusCode !== '') {
|
|
32
32
|
let msg = baseResp.KStatusMessage;
|
|
33
|
-
if (baseResp.StatusMessage !==
|
|
33
|
+
if (baseResp.StatusMessage !== '') {
|
|
34
34
|
msg = baseResp.StatusMessage;
|
|
35
35
|
}
|
|
36
|
-
if (baseResp.extra.get(
|
|
36
|
+
if (baseResp.extra.get('is_system_error') === 'true') {
|
|
37
37
|
throw new exceptions.InternalError(`${msg} [${baseResp.KStatusCode}]`);
|
|
38
38
|
}
|
|
39
39
|
throw new exceptions.InvalidParamError(`${msg} [${baseResp.KStatusCode}]`);
|
|
@@ -42,7 +42,7 @@ function post(baseResp) {
|
|
|
42
42
|
async function createRecordBySync(objectApiName, record, authType) {
|
|
43
43
|
// 1.check
|
|
44
44
|
if (!objectApiName) {
|
|
45
|
-
throw new exceptions.InvalidParamError(
|
|
45
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
46
46
|
}
|
|
47
47
|
// 2.前置处理
|
|
48
48
|
let ctx = await pre(true, authType);
|
|
@@ -71,7 +71,7 @@ async function createRecordBySync(objectApiName, record, authType) {
|
|
|
71
71
|
async function updateRecordBySync(objectApiName, recordID, record, authType) {
|
|
72
72
|
// 1.check
|
|
73
73
|
if (!objectApiName) {
|
|
74
|
-
throw new exceptions.InvalidParamError(
|
|
74
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
75
75
|
}
|
|
76
76
|
// 2.前置处理
|
|
77
77
|
let ctx = await pre(true, authType);
|
|
@@ -101,7 +101,7 @@ async function updateRecordBySync(objectApiName, recordID, record, authType) {
|
|
|
101
101
|
async function deleteRecordBySync(objectApiName, recordID, authType) {
|
|
102
102
|
// 1.check
|
|
103
103
|
if (!objectApiName) {
|
|
104
|
-
throw new exceptions.InvalidParamError(
|
|
104
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
105
105
|
}
|
|
106
106
|
// 2.前置处理
|
|
107
107
|
let ctx = await pre(true, authType);
|
|
@@ -130,7 +130,7 @@ async function deleteRecordBySync(objectApiName, recordID, authType) {
|
|
|
130
130
|
async function createRecordsByAsync(objectApiName, records, authType) {
|
|
131
131
|
// 1.check
|
|
132
132
|
if (!objectApiName) {
|
|
133
|
-
throw new exceptions.InvalidParamError(
|
|
133
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
134
134
|
}
|
|
135
135
|
// 2.前置处理
|
|
136
136
|
let ctx = await pre(true, authType);
|
|
@@ -159,7 +159,7 @@ async function createRecordsByAsync(objectApiName, records, authType) {
|
|
|
159
159
|
async function updateRecordsByAsync(objectApiName, recordMap, authType) {
|
|
160
160
|
// 1.check
|
|
161
161
|
if (!objectApiName) {
|
|
162
|
-
throw new exceptions.InvalidParamError(
|
|
162
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
163
163
|
}
|
|
164
164
|
// 2.前置处理
|
|
165
165
|
let ctx = await pre(true, authType);
|
|
@@ -188,7 +188,7 @@ async function updateRecordsByAsync(objectApiName, recordMap, authType) {
|
|
|
188
188
|
async function deleteRecordsByAsync(objectApiName, recordIDs, authType) {
|
|
189
189
|
// 1.check
|
|
190
190
|
if (!objectApiName) {
|
|
191
|
-
throw new exceptions.InvalidParamError(
|
|
191
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
192
192
|
}
|
|
193
193
|
// 2.前置处理
|
|
194
194
|
let ctx = await pre(true, authType);
|
|
@@ -221,7 +221,7 @@ async function deleteRecordsByAsync(objectApiName, recordIDs, authType) {
|
|
|
221
221
|
async function createRecordsBySync(objectApiName, records, authType) {
|
|
222
222
|
// 1.check
|
|
223
223
|
if (!objectApiName) {
|
|
224
|
-
throw new exceptions.InvalidParamError(
|
|
224
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
225
225
|
}
|
|
226
226
|
// 2.前置处理
|
|
227
227
|
let ctx = await pre(true, authType);
|
|
@@ -247,7 +247,7 @@ async function createRecordsBySync(objectApiName, records, authType) {
|
|
|
247
247
|
// 5.后置处理
|
|
248
248
|
post(resp.BaseResp);
|
|
249
249
|
let recordIDList = new Array();
|
|
250
|
-
|
|
250
|
+
const errMap = {};
|
|
251
251
|
resp.RecordIDs.forEach((v, idx) => {
|
|
252
252
|
recordIDList.push(Number(v));
|
|
253
253
|
});
|
|
@@ -262,7 +262,7 @@ async function createRecordsBySync(objectApiName, records, authType) {
|
|
|
262
262
|
async function updateRecordsBySync(objectApiName, recordMap, authType) {
|
|
263
263
|
// 1.check
|
|
264
264
|
if (!objectApiName) {
|
|
265
|
-
throw new exceptions.InvalidParamError(
|
|
265
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
266
266
|
}
|
|
267
267
|
// 2.前置处理
|
|
268
268
|
let ctx = await pre(true, authType);
|
|
@@ -287,7 +287,7 @@ async function updateRecordsBySync(objectApiName, recordMap, authType) {
|
|
|
287
287
|
}
|
|
288
288
|
// 5.后置处理
|
|
289
289
|
post(resp.BaseResp);
|
|
290
|
-
|
|
290
|
+
const errMap = {};
|
|
291
291
|
resp.ErrMap.forEach((v, k) => {
|
|
292
292
|
errMap[Number(k)] = v;
|
|
293
293
|
});
|
|
@@ -296,7 +296,7 @@ async function updateRecordsBySync(objectApiName, recordMap, authType) {
|
|
|
296
296
|
async function deleteRecordsBySync(objectApiName, recordIDs, authType) {
|
|
297
297
|
// 1.check
|
|
298
298
|
if (!objectApiName) {
|
|
299
|
-
throw new exceptions.InvalidParamError(
|
|
299
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
300
300
|
}
|
|
301
301
|
// 2.前置处理
|
|
302
302
|
let ctx = await pre(true, authType);
|
|
@@ -325,7 +325,7 @@ async function deleteRecordsBySync(objectApiName, recordIDs, authType) {
|
|
|
325
325
|
}
|
|
326
326
|
// 5.后置处理
|
|
327
327
|
post(resp.BaseResp);
|
|
328
|
-
|
|
328
|
+
const errMap = {};
|
|
329
329
|
resp.ErrMap.forEach((v, k) => {
|
|
330
330
|
errMap[Number(k)] = v;
|
|
331
331
|
});
|
|
@@ -334,7 +334,7 @@ async function deleteRecordsBySync(objectApiName, recordIDs, authType) {
|
|
|
334
334
|
async function getRecordsOrCountByCriterion(objectApiName, criterion, fuzzySearch, order, ignoreBackLookupField, fieldApiNames, offset, limit, needCount, authType) {
|
|
335
335
|
// 1.check
|
|
336
336
|
if (!objectApiName) {
|
|
337
|
-
throw new exceptions.InvalidParamError(
|
|
337
|
+
throw new exceptions.InvalidParamError('objectApiName is empty');
|
|
338
338
|
}
|
|
339
339
|
// 2.前置处理
|
|
340
340
|
let ctx = await pre(true, authType);
|
|
@@ -402,11 +402,11 @@ async function uploadFile(data, expire) {
|
|
|
402
402
|
// 2.构造 params
|
|
403
403
|
let param = {};
|
|
404
404
|
param.Data = await (0, stream_to_buffer_1.streamToBuffer)(data);
|
|
405
|
-
param.Name =
|
|
405
|
+
param.Name = 'file';
|
|
406
406
|
param.EncryptType = 1;
|
|
407
407
|
param.PermissionConf = {
|
|
408
|
-
PermissionType:
|
|
409
|
-
PermissionInfo:
|
|
408
|
+
PermissionType: '',
|
|
409
|
+
PermissionInfo: '',
|
|
410
410
|
IgnoreUserID: true
|
|
411
411
|
};
|
|
412
412
|
if (expire) {
|
|
@@ -450,7 +450,7 @@ async function downloadFileByID(fileID, filePath) {
|
|
|
450
450
|
checkUtils.checkFile(filePath);
|
|
451
451
|
utils.mkdirs(path.dirname(filePath));
|
|
452
452
|
fs.writeFileSync(filePath, resp.Data);
|
|
453
|
-
return;
|
|
453
|
+
return undefined;
|
|
454
454
|
}
|
|
455
455
|
else {
|
|
456
456
|
return resp.Data;
|
|
@@ -476,7 +476,7 @@ async function downloadFileByToken(fileToken, filePath) {
|
|
|
476
476
|
checkUtils.checkFile(filePath);
|
|
477
477
|
utils.mkdirs(path.dirname(filePath));
|
|
478
478
|
fs.writeFileSync(filePath, resp.Data);
|
|
479
|
-
return;
|
|
479
|
+
return undefined;
|
|
480
480
|
}
|
|
481
481
|
else {
|
|
482
482
|
return resp.Data;
|
|
@@ -503,28 +503,28 @@ async function createMessage(msg) {
|
|
|
503
503
|
if (!msg.icon) {
|
|
504
504
|
throw new exceptions.InvalidParamError(`parameter icon is required!`);
|
|
505
505
|
}
|
|
506
|
-
if (typeof (msg.icon)
|
|
506
|
+
if (typeof (msg.icon) !== 'string') {
|
|
507
507
|
throw new exceptions.InvalidParamError(`Invalid format of parameter icon, icon should be string.`);
|
|
508
508
|
}
|
|
509
509
|
let params = {};
|
|
510
|
-
|
|
511
|
-
|
|
510
|
+
const modelKeySearchData = new Map().set('icon_type', msg.icon);
|
|
511
|
+
const receiverIds = msg.target_users || [];
|
|
512
512
|
if (!(receiverIds instanceof Array)) {
|
|
513
513
|
throw new exceptions.InvalidParamError(`Invalid format of parameter target_users, target_users should be array.`);
|
|
514
514
|
}
|
|
515
515
|
if (receiverIds.length === 0) {
|
|
516
516
|
throw new exceptions.InvalidParamError(`parameter target_users is required!`);
|
|
517
517
|
}
|
|
518
|
-
|
|
518
|
+
const percent = msg.percent;
|
|
519
519
|
if (percent !== undefined && percent !== null) {
|
|
520
|
-
if (typeof (percent)
|
|
520
|
+
if (typeof (percent) !== 'number') {
|
|
521
521
|
throw new exceptions.InvalidParamError(`Invalid format of parameter percent, percent should be number.`);
|
|
522
522
|
}
|
|
523
523
|
if (percent < 0 || percent > 100) {
|
|
524
524
|
throw new exceptions.InvalidParamError(`Invalid value of parameter percent, the value should be in range [0, 100].`);
|
|
525
525
|
}
|
|
526
526
|
else {
|
|
527
|
-
modelKeySearchData.set(
|
|
527
|
+
modelKeySearchData.set('percent', JSON.stringify(percent));
|
|
528
528
|
}
|
|
529
529
|
}
|
|
530
530
|
// kunlun类型
|
|
@@ -535,7 +535,7 @@ async function createMessage(msg) {
|
|
|
535
535
|
// if (msg[key] instanceof fieldType.Multilingual) {
|
|
536
536
|
if (common.fieldType.isKFieldTypeMultilingual((msg[key]))) {
|
|
537
537
|
let value = JSON.stringify(msg[key].toJSON());
|
|
538
|
-
params[key] = JSON.stringify({
|
|
538
|
+
params[key] = JSON.stringify({ value });
|
|
539
539
|
}
|
|
540
540
|
else {
|
|
541
541
|
params[key] = JSON.stringify(msg[key].toJSON());
|
|
@@ -583,17 +583,17 @@ async function updateMessage(msgId, msg) {
|
|
|
583
583
|
throw new exceptions.InvalidParamError(`Invalid format of parameter icon, icon should be string.`);
|
|
584
584
|
}
|
|
585
585
|
let params = new Map();
|
|
586
|
-
|
|
587
|
-
|
|
586
|
+
const modelKeySearchData = new Map().set('icon_type', msg.icon);
|
|
587
|
+
const percent = msg.percent;
|
|
588
588
|
if (percent !== undefined && percent !== null) {
|
|
589
|
-
if (typeof (percent)
|
|
589
|
+
if (typeof (percent) !== 'number') {
|
|
590
590
|
throw new exceptions.InvalidParamError(`Invalid format of parameter percent, percent should be number.`);
|
|
591
591
|
}
|
|
592
592
|
if (percent < 0 || percent > 100) {
|
|
593
593
|
throw new exceptions.InvalidParamError(`Invalid value of parameter percent in message ${msgId}, the value should be in range [0, 100].`);
|
|
594
594
|
}
|
|
595
595
|
else {
|
|
596
|
-
modelKeySearchData.set(
|
|
596
|
+
modelKeySearchData.set('percent', JSON.stringify(percent));
|
|
597
597
|
}
|
|
598
598
|
}
|
|
599
599
|
// kunlun类型
|
|
@@ -604,7 +604,7 @@ async function updateMessage(msgId, msg) {
|
|
|
604
604
|
// if (msg[key] instanceof fieldType.Multilingual) {
|
|
605
605
|
if (common.fieldType.isKFieldTypeMultilingual(msg[key])) {
|
|
606
606
|
let value = JSON.stringify(msg[key].toJSON());
|
|
607
|
-
params.set(key, JSON.stringify({
|
|
607
|
+
params.set(key, JSON.stringify({ value }));
|
|
608
608
|
}
|
|
609
609
|
else {
|
|
610
610
|
params.set(key, JSON.stringify(msg[key].toJSON()));
|
|
@@ -690,7 +690,7 @@ async function getField(objectApiName, fieldApiName) {
|
|
|
690
690
|
}
|
|
691
691
|
async function terminateWorkflowInstance(workflowInstanceId, operator, reason) {
|
|
692
692
|
// 1. prepare args
|
|
693
|
-
if (typeof (workflowInstanceId) !==
|
|
693
|
+
if (typeof (workflowInstanceId) !== 'number') {
|
|
694
694
|
throw new exceptions.InvalidParamError(`The type of workflowInstanceId should be number, but ${typeof (workflowInstanceId)}.`);
|
|
695
695
|
}
|
|
696
696
|
// 2. prepare request
|
|
@@ -752,8 +752,8 @@ async function getGlobalConfigByKey(key) {
|
|
|
752
752
|
for (let i = 0;; i++) {
|
|
753
753
|
let param = {};
|
|
754
754
|
param.NameSpace = await (0, common_1.getNamespaceForOpenAndFaaSSDK)();
|
|
755
|
-
param.BizType =
|
|
756
|
-
param.UsedBy =
|
|
755
|
+
param.BizType = 'GlobalVariables';
|
|
756
|
+
param.UsedBy = 'UsedBySystem';
|
|
757
757
|
param.Filter = {
|
|
758
758
|
Offset: BigInt(offset * i),
|
|
759
759
|
Limit: BigInt(pageSize),
|
|
@@ -783,10 +783,10 @@ async function getGlobalConfigByKey(key) {
|
|
|
783
783
|
async function oql(oql, args, namedArgs, authType) {
|
|
784
784
|
// 1. build parameters
|
|
785
785
|
const queryData = JSON.stringify({
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
786
|
+
'query': oql,
|
|
787
|
+
args,
|
|
788
|
+
namedArgs,
|
|
789
|
+
'compat': true,
|
|
790
790
|
});
|
|
791
791
|
// 2. prepare args
|
|
792
792
|
let param = {};
|
|
@@ -805,7 +805,7 @@ async function oql(oql, args, namedArgs, authType) {
|
|
|
805
805
|
// 5. deal with response
|
|
806
806
|
post(resp.BaseResp);
|
|
807
807
|
try {
|
|
808
|
-
return JSON.parse(resp.Rows ? resp.Rows :
|
|
808
|
+
return JSON.parse(resp.Rows ? resp.Rows : '[]');
|
|
809
809
|
}
|
|
810
810
|
catch (e) {
|
|
811
811
|
throw new exceptions.InternalError(`oql result parse failed: ${e.message}`);
|
|
@@ -813,7 +813,7 @@ async function oql(oql, args, namedArgs, authType) {
|
|
|
813
813
|
}
|
|
814
814
|
async function openSDKCreateRecordBySync(objectApiName, record) {
|
|
815
815
|
// 1. prepare args
|
|
816
|
-
if (typeof (objectApiName) !==
|
|
816
|
+
if (typeof (objectApiName) !== 'string') {
|
|
817
817
|
throw new exceptions.InvalidParamError(`The type of objectApiName should be string, but ${typeof (objectApiName)}.`);
|
|
818
818
|
}
|
|
819
819
|
// 2. prepare request
|
|
@@ -836,10 +836,10 @@ async function openSDKCreateRecordBySync(objectApiName, record) {
|
|
|
836
836
|
}
|
|
837
837
|
async function openSDKUpdateRecordBySync(objectApiName, recordID, record) {
|
|
838
838
|
// 1. prepare args
|
|
839
|
-
if (typeof (objectApiName) !==
|
|
839
|
+
if (typeof (objectApiName) !== 'string') {
|
|
840
840
|
throw new exceptions.InvalidParamError(`The type of objectApiName should be string, but ${typeof (objectApiName)}.`);
|
|
841
841
|
}
|
|
842
|
-
if (typeof (recordID) !==
|
|
842
|
+
if (typeof (recordID) !== 'number') {
|
|
843
843
|
throw new exceptions.InvalidParamError(`The type of recordID should be number, but ${typeof (recordID)}.`);
|
|
844
844
|
}
|
|
845
845
|
// 2. prepare request
|
|
@@ -863,10 +863,10 @@ async function openSDKUpdateRecordBySync(objectApiName, recordID, record) {
|
|
|
863
863
|
}
|
|
864
864
|
async function openSDKDeleteRecordBySync(objectApiName, recordID) {
|
|
865
865
|
// 1. prepare args
|
|
866
|
-
if (typeof (objectApiName) !==
|
|
866
|
+
if (typeof (objectApiName) !== 'string') {
|
|
867
867
|
throw new exceptions.InvalidParamError(`The type of objectApiName should be string, but ${typeof (objectApiName)}.`);
|
|
868
868
|
}
|
|
869
|
-
if (typeof (recordID) !==
|
|
869
|
+
if (typeof (recordID) !== 'number') {
|
|
870
870
|
throw new exceptions.InvalidParamError(`The type of recordID should be number, but ${typeof (recordID)}.`);
|
|
871
871
|
}
|
|
872
872
|
// 2. prepare request
|
|
@@ -889,7 +889,7 @@ async function openSDKDeleteRecordBySync(objectApiName, recordID) {
|
|
|
889
889
|
}
|
|
890
890
|
async function openSDKCreateRecordsBySync(objectApiName, records) {
|
|
891
891
|
// 1. prepare args
|
|
892
|
-
if (typeof (objectApiName) !==
|
|
892
|
+
if (typeof (objectApiName) !== 'string') {
|
|
893
893
|
throw new exceptions.InvalidParamError(`The type of objectApiName should be string, but ${typeof (objectApiName)}.`);
|
|
894
894
|
}
|
|
895
895
|
// 2. prepare request
|
|
@@ -912,7 +912,7 @@ async function openSDKCreateRecordsBySync(objectApiName, records) {
|
|
|
912
912
|
}
|
|
913
913
|
async function openSDKUpdateRecordsBySync(objectApiName, recordMap) {
|
|
914
914
|
// 1. prepare args
|
|
915
|
-
if (typeof (objectApiName) !==
|
|
915
|
+
if (typeof (objectApiName) !== 'string') {
|
|
916
916
|
throw new exceptions.InvalidParamError(`The type of objectApiName should be string, but ${typeof (objectApiName)}.`);
|
|
917
917
|
}
|
|
918
918
|
// 2. prepare request
|
|
@@ -935,7 +935,7 @@ async function openSDKUpdateRecordsBySync(objectApiName, recordMap) {
|
|
|
935
935
|
}
|
|
936
936
|
async function openSDKDeleteRecordsBySync(objectApiName, recordIDs) {
|
|
937
937
|
// 1. prepare args
|
|
938
|
-
if (typeof (objectApiName) !==
|
|
938
|
+
if (typeof (objectApiName) !== 'string') {
|
|
939
939
|
throw new exceptions.InvalidParamError(`The type of objectApiName should be string, but ${typeof (objectApiName)}.`);
|
|
940
940
|
}
|
|
941
941
|
// 2. prepare request
|
|
@@ -1082,6 +1082,10 @@ class RequestRpc {
|
|
|
1082
1082
|
this.modifyRecordsWithTransaction = modifyRecordsWithTransaction;
|
|
1083
1083
|
this.getGlobalConfigByKey = getGlobalConfigByKey;
|
|
1084
1084
|
this.oql = oql;
|
|
1085
|
+
this.getIntegrationAppAccessToken = getIntegrationAppAccessToken;
|
|
1086
|
+
this.getIntegrationTenantAccessToken = getIntegrationTenantAccessToken;
|
|
1087
|
+
this.getDefaultIntegrationAppAccessToken = getDefaultIntegrationAppAccessToken;
|
|
1088
|
+
this.getDefaultIntegrationTenantAccessToken = getDefaultIntegrationTenantAccessToken;
|
|
1085
1089
|
// open sdk api
|
|
1086
1090
|
this.openSDKCreateRecordBySync = openSDKCreateRecordBySync;
|
|
1087
1091
|
this.openSDKUpdateRecordBySync = openSDKUpdateRecordBySync;
|
|
@@ -1119,9 +1123,11 @@ class RequestRpc {
|
|
|
1119
1123
|
async uploadFile(data, expire) {
|
|
1120
1124
|
return null;
|
|
1121
1125
|
}
|
|
1126
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1122
1127
|
async downloadFileByID(fileID, filePath) {
|
|
1123
1128
|
return null;
|
|
1124
1129
|
}
|
|
1130
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1125
1131
|
async downloadFileByToken(fileToken, filePath) {
|
|
1126
1132
|
return null;
|
|
1127
1133
|
}
|
|
@@ -1173,9 +1179,22 @@ class RequestRpc {
|
|
|
1173
1179
|
async getTenantInfo(appCtx) {
|
|
1174
1180
|
return await appCtx.credential.getTenantInfo();
|
|
1175
1181
|
}
|
|
1182
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1176
1183
|
async mGetFileToken(ids) {
|
|
1177
1184
|
return null;
|
|
1178
1185
|
}
|
|
1186
|
+
async getIntegrationAppAccessToken(apiName) {
|
|
1187
|
+
return null;
|
|
1188
|
+
}
|
|
1189
|
+
async getIntegrationTenantAccessToken(apiName) {
|
|
1190
|
+
return null;
|
|
1191
|
+
}
|
|
1192
|
+
async getDefaultIntegrationAppAccessToken() {
|
|
1193
|
+
return null;
|
|
1194
|
+
}
|
|
1195
|
+
async getDefaultIntegrationTenantAccessToken() {
|
|
1196
|
+
return null;
|
|
1197
|
+
}
|
|
1179
1198
|
// open sdk empty implement
|
|
1180
1199
|
openSDKCreateRecordBySync(objectApiName, record) {
|
|
1181
1200
|
}
|
|
@@ -1236,8 +1255,8 @@ async function invokeFuncWithAuth(idOrName, params) {
|
|
|
1236
1255
|
catch (e) {
|
|
1237
1256
|
throw new exceptions.InternalError(`JSON parse failed for ${resp.result}`);
|
|
1238
1257
|
}
|
|
1239
|
-
if (!result || result.code !==
|
|
1240
|
-
throw new exceptions.InvalidParamError(`result is invalid for code: ${result ? result.code :
|
|
1258
|
+
if (!result || result.code !== '0') {
|
|
1259
|
+
throw new exceptions.InvalidParamError(`result is invalid for code: ${result ? result.code : ''} msg: ${result ? result.msg : ''}`);
|
|
1241
1260
|
}
|
|
1242
1261
|
return result.data;
|
|
1243
1262
|
}
|
|
@@ -1362,12 +1381,12 @@ async function invokeFuncSync(idOrName, params) {
|
|
|
1362
1381
|
let param = {};
|
|
1363
1382
|
param.Namespace = await (0, common_1.getNamespaceForOpenAndFaaSSDK)();
|
|
1364
1383
|
if (idOrName.isInvokeByAPIName) {
|
|
1365
|
-
param.FunctionName =
|
|
1384
|
+
param.FunctionName = '';
|
|
1366
1385
|
param.APIAlias = idOrName.APIName;
|
|
1367
1386
|
}
|
|
1368
1387
|
else {
|
|
1369
1388
|
param.FunctionName = idOrName.APIId;
|
|
1370
|
-
param.APIAlias =
|
|
1389
|
+
param.APIAlias = '';
|
|
1371
1390
|
}
|
|
1372
1391
|
param.Params = JSON.stringify(params);
|
|
1373
1392
|
param.Context = JSON.stringify((0, common_1.getTriggerCtx)());
|
|
@@ -1388,7 +1407,7 @@ async function invokeFuncSync(idOrName, params) {
|
|
|
1388
1407
|
catch (e) {
|
|
1389
1408
|
throw new exceptions.InternalError(`Parse Result failed: ${e.message}`);
|
|
1390
1409
|
}
|
|
1391
|
-
if (result && result.code ===
|
|
1410
|
+
if (result && result.code === '0') {
|
|
1392
1411
|
return result.data;
|
|
1393
1412
|
}
|
|
1394
1413
|
throw new exceptions.InternalError(`[${result.code}] ${result.msg}`);
|
|
@@ -1399,7 +1418,7 @@ async function createAsyncTaskV1(idOrName, params) {
|
|
|
1399
1418
|
param.Namespace = await (0, common_1.getNamespaceForOpenAndFaaSSDK)();
|
|
1400
1419
|
if (idOrName.isInvokeByAPIName) {
|
|
1401
1420
|
param.Alias = idOrName.APIName;
|
|
1402
|
-
param.Name =
|
|
1421
|
+
param.Name = ''; // required
|
|
1403
1422
|
}
|
|
1404
1423
|
else {
|
|
1405
1424
|
param.Name = idOrName.APIId;
|
|
@@ -1438,3 +1457,100 @@ async function createAsyncTaskV2(APIName, params) {
|
|
|
1438
1457
|
post(resp.BaseResp);
|
|
1439
1458
|
return Number(resp.TaskID);
|
|
1440
1459
|
}
|
|
1460
|
+
async function getIntegrationAppAccessToken(apiName) {
|
|
1461
|
+
// 1.check
|
|
1462
|
+
if (!apiName) {
|
|
1463
|
+
throw new exceptions.InvalidParamError('apiName is empty');
|
|
1464
|
+
}
|
|
1465
|
+
// 2.前置处理
|
|
1466
|
+
let ctx = await pre(true);
|
|
1467
|
+
// 3.构造 params
|
|
1468
|
+
let param = {};
|
|
1469
|
+
param.ApiName = apiName;
|
|
1470
|
+
// 4.发起请求
|
|
1471
|
+
let resp;
|
|
1472
|
+
try {
|
|
1473
|
+
resp = await rpc.getInnerAPICli().GetIntegrationAppAccessToken(ctx, param);
|
|
1474
|
+
}
|
|
1475
|
+
catch (err) {
|
|
1476
|
+
throw new exceptions.InternalError(`Call InnerAPI failed: ${err.message}`);
|
|
1477
|
+
}
|
|
1478
|
+
// 5.后置处理
|
|
1479
|
+
post(resp.BaseResp);
|
|
1480
|
+
return {
|
|
1481
|
+
expire: resp.Expire ? resp.Expire : undefined,
|
|
1482
|
+
appAccessToken: resp.AppAccessToken ? resp.AppAccessToken : undefined,
|
|
1483
|
+
appId: resp.AppID ? resp.AppID : undefined,
|
|
1484
|
+
};
|
|
1485
|
+
}
|
|
1486
|
+
async function getIntegrationTenantAccessToken(apiName) {
|
|
1487
|
+
// 1.check
|
|
1488
|
+
if (!apiName) {
|
|
1489
|
+
throw new exceptions.InvalidParamError('apiName is empty');
|
|
1490
|
+
}
|
|
1491
|
+
// 2.前置处理
|
|
1492
|
+
let ctx = await pre(true);
|
|
1493
|
+
// 3.构造 params
|
|
1494
|
+
let param = {};
|
|
1495
|
+
param.ApiName = apiName;
|
|
1496
|
+
// 4.发起请求
|
|
1497
|
+
let resp;
|
|
1498
|
+
try {
|
|
1499
|
+
resp = await rpc.getInnerAPICli().GetIntegrationTenantAccessToken(ctx, param);
|
|
1500
|
+
}
|
|
1501
|
+
catch (err) {
|
|
1502
|
+
throw new exceptions.InternalError(`Call InnerAPI failed: ${err.message}`);
|
|
1503
|
+
}
|
|
1504
|
+
// 5.后置处理
|
|
1505
|
+
post(resp.BaseResp);
|
|
1506
|
+
return {
|
|
1507
|
+
expire: resp.Expire ? resp.Expire : undefined,
|
|
1508
|
+
tenantAccessToken: resp.TenantAccessToken ? resp.TenantAccessToken : undefined,
|
|
1509
|
+
appId: resp.AppID ? resp.AppID : undefined,
|
|
1510
|
+
};
|
|
1511
|
+
}
|
|
1512
|
+
async function getDefaultIntegrationAppAccessToken() {
|
|
1513
|
+
// 1.check
|
|
1514
|
+
// 2.前置处理
|
|
1515
|
+
let ctx = await pre(true);
|
|
1516
|
+
// 3.构造 params
|
|
1517
|
+
let param = {};
|
|
1518
|
+
// 4.发起请求
|
|
1519
|
+
let resp;
|
|
1520
|
+
try {
|
|
1521
|
+
resp = await rpc.getInnerAPICli().GetDefaultIntegrationAppAccessToken(ctx, param);
|
|
1522
|
+
}
|
|
1523
|
+
catch (err) {
|
|
1524
|
+
throw new exceptions.InternalError(`Call InnerAPI failed: ${err.message}`);
|
|
1525
|
+
}
|
|
1526
|
+
// 5.后置处理
|
|
1527
|
+
post(resp.BaseResp);
|
|
1528
|
+
return {
|
|
1529
|
+
expire: resp.Expire ? resp.Expire : undefined,
|
|
1530
|
+
appAccessToken: resp.AppAccessToken ? resp.AppAccessToken : undefined,
|
|
1531
|
+
appId: resp.AppID ? resp.AppID : undefined,
|
|
1532
|
+
};
|
|
1533
|
+
}
|
|
1534
|
+
async function getDefaultIntegrationTenantAccessToken() {
|
|
1535
|
+
// 1.check
|
|
1536
|
+
// 2.前置处理
|
|
1537
|
+
let ctx = await pre(true);
|
|
1538
|
+
// 3.构造 params
|
|
1539
|
+
let param = {};
|
|
1540
|
+
// 4.发起请求
|
|
1541
|
+
let resp;
|
|
1542
|
+
try {
|
|
1543
|
+
resp = await rpc.getInnerAPICli().GetDefaultIntegrationTenantAccessToken(ctx, param);
|
|
1544
|
+
}
|
|
1545
|
+
catch (err) {
|
|
1546
|
+
throw new exceptions.InternalError(`Call InnerAPI failed: ${err.message}`);
|
|
1547
|
+
}
|
|
1548
|
+
// 5.后置处理
|
|
1549
|
+
post(resp.BaseResp);
|
|
1550
|
+
return {
|
|
1551
|
+
expire: resp.Expire ? resp.Expire : undefined,
|
|
1552
|
+
tenantAccessToken: resp.TenantAccessToken ? resp.TenantAccessToken : undefined,
|
|
1553
|
+
appId: resp.AppID ? resp.AppID : undefined,
|
|
1554
|
+
};
|
|
1555
|
+
}
|
|
1556
|
+
//# sourceMappingURL=innerapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"innerapi.js","sourceRoot":"","sources":["innerapi.ts"],"names":[],"mappings":"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"}
|