@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.
Files changed (163) hide show
  1. package/README.md +7 -0
  2. package/application/application.d.ts +9 -7
  3. package/application/application.js +1 -0
  4. package/application/application.js.map +1 -0
  5. package/application/function/function.d.ts +1 -1
  6. package/application/function/function.js +1 -1
  7. package/application/function/function.js.map +1 -0
  8. package/application/impl/common.d.ts +1 -1
  9. package/application/impl/common.js +14 -12
  10. package/application/impl/common.js.map +1 -0
  11. package/application/impl/impl.d.ts +8 -6
  12. package/application/impl/impl.js +7 -4
  13. package/application/impl/impl.js.map +1 -0
  14. package/constants/constants.js +5 -4
  15. package/constants/constants.js.map +1 -0
  16. package/context/context.d.ts +8 -38
  17. package/context/context.js +3 -2
  18. package/context/context.js.map +1 -0
  19. package/context/db/db.d.ts +11 -19
  20. package/context/db/db.js +1 -0
  21. package/context/db/db.js.map +1 -0
  22. package/context/db/impl/IObject.d.ts +37 -37
  23. package/context/db/impl/IObject.js +1 -0
  24. package/context/db/impl/IObject.js.map +1 -0
  25. package/context/db/impl/db.d.ts +9 -9
  26. package/context/db/impl/db.js +7 -6
  27. package/context/db/impl/db.js.map +1 -0
  28. package/context/db/impl/object.js +48 -47
  29. package/context/db/impl/object.js.map +1 -0
  30. package/context/db/impl/oql/ioql.js +1 -0
  31. package/context/db/impl/oql/ioql.js.map +1 -0
  32. package/context/db/impl/oql/oql.d.ts +1 -1
  33. package/context/db/impl/oql/oql.js +1 -0
  34. package/context/db/impl/oql/oql.js.map +1 -0
  35. package/context/db/impl/order.js +2 -1
  36. package/context/db/impl/order.js.map +1 -0
  37. package/context/db/impl/propertiesStore.js +2 -1
  38. package/context/db/impl/propertiesStore.js.map +1 -0
  39. package/context/db/impl/queryBuilder.js +1 -0
  40. package/context/db/impl/queryBuilder.js.map +1 -0
  41. package/context/db/impl/transaction/index.d.ts +1 -1
  42. package/context/db/impl/transaction/index.js +47 -45
  43. package/context/db/impl/transaction/index.js.map +1 -0
  44. package/context/db/impl/transaction/operation.js +1 -0
  45. package/context/db/impl/transaction/operation.js.map +1 -0
  46. package/context/db/impl/transaction.d.ts +0 -5
  47. package/context/db/impl/transaction.js +1 -0
  48. package/context/db/impl/transaction.js.map +1 -0
  49. package/context/globalConfig/globalConfig.js +1 -0
  50. package/context/globalConfig/globalConfig.js.map +1 -0
  51. package/context/integration/IIntegration.d.ts +30 -0
  52. package/context/integration/IIntegration.js +5 -0
  53. package/context/integration/IIntegration.js.map +1 -0
  54. package/context/integration/impl/integration.d.ts +16 -0
  55. package/context/integration/impl/integration.js +63 -0
  56. package/context/integration/impl/integration.js.map +1 -0
  57. package/context/metadata/components/common.js +4 -3
  58. package/context/metadata/components/common.js.map +1 -0
  59. package/context/metadata/components/components.d.ts +4 -4
  60. package/context/metadata/components/components.js +1 -0
  61. package/context/metadata/components/components.js.map +1 -0
  62. package/context/metadata/components/desktop/list.d.ts +3 -3
  63. package/context/metadata/components/desktop/list.js +24 -23
  64. package/context/metadata/components/desktop/list.js.map +1 -0
  65. package/context/metadata/components/desktop/recordDetail.d.ts +2 -2
  66. package/context/metadata/components/desktop/recordDetail.js +1 -0
  67. package/context/metadata/components/desktop/recordDetail.js.map +1 -0
  68. package/context/metadata/components/mobile/list.d.ts +4 -4
  69. package/context/metadata/components/mobile/list.js +2 -1
  70. package/context/metadata/components/mobile/list.js.map +1 -0
  71. package/context/metadata/metadata.d.ts +5 -6
  72. package/context/metadata/metadata.js +6 -6
  73. package/context/metadata/metadata.js.map +1 -0
  74. package/context/metadata/objects/fields.d.ts +6 -6
  75. package/context/metadata/objects/fields.js +58 -57
  76. package/context/metadata/objects/fields.js.map +1 -0
  77. package/context/metadata/objects/fields.util.d.ts +3 -3
  78. package/context/metadata/objects/fields.util.js +22 -21
  79. package/context/metadata/objects/fields.util.js.map +1 -0
  80. package/context/metadata/objects/objects.d.ts +1 -1
  81. package/context/metadata/objects/objects.js +2 -1
  82. package/context/metadata/objects/objects.js.map +1 -0
  83. package/context/metadata/types/common.js +1 -0
  84. package/context/metadata/types/common.js.map +1 -0
  85. package/context/metadata/types/components.d.ts +5 -5
  86. package/context/metadata/types/components.js +1 -0
  87. package/context/metadata/types/components.js.map +1 -0
  88. package/context/metadata/types/objects.d.ts +88 -88
  89. package/context/metadata/types/objects.js +1 -0
  90. package/context/metadata/types/objects.js.map +1 -0
  91. package/context/msg/msg.d.ts +2 -2
  92. package/context/msg/msg.js +1 -0
  93. package/context/msg/msg.js.map +1 -0
  94. package/context/resources/IResources.d.ts +2 -2
  95. package/context/resources/IResources.js +1 -0
  96. package/context/resources/IResources.js.map +1 -0
  97. package/context/resources/impl/resources.d.ts +4 -4
  98. package/context/resources/impl/resources.js +4 -3
  99. package/context/resources/impl/resources.js.map +1 -0
  100. package/context/tasks/tasks.d.ts +3 -3
  101. package/context/tasks/tasks.js +6 -5
  102. package/context/tasks/tasks.js.map +1 -0
  103. package/data/index.d.ts +2 -2
  104. package/data/index.js +1 -0
  105. package/data/index.js.map +1 -0
  106. package/global/application/flow/flow.d.ts +85 -0
  107. package/global/application/flow/flow.js +3 -0
  108. package/global/application/flow/flow.js.map +1 -0
  109. package/global/global.d.ts +88 -0
  110. package/global/global.js +4 -0
  111. package/global/global.js.map +1 -0
  112. package/hooks/api.d.ts +12 -7
  113. package/hooks/api.js +29 -23
  114. package/hooks/api.js.map +1 -0
  115. package/hooks/hooks.js +42 -0
  116. package/hooks/hooks.js.map +1 -0
  117. package/kunlun/kunlun.d.ts +5 -5
  118. package/kunlun/kunlun.js +1 -0
  119. package/kunlun/kunlun.js.map +1 -0
  120. package/kunlun/operator/IOperator.d.ts +16 -16
  121. package/kunlun/operator/IOperator.js +1 -0
  122. package/kunlun/operator/IOperator.js.map +1 -0
  123. package/kunlun/operator/impl/expression.d.ts +2 -2
  124. package/kunlun/operator/impl/expression.js +6 -5
  125. package/kunlun/operator/impl/expression.js.map +1 -0
  126. package/kunlun/operator/impl/logic.js +49 -31
  127. package/kunlun/operator/impl/logic.js.map +1 -0
  128. package/kunlun/operator/impl/logicV2.d.ts +2 -2
  129. package/kunlun/operator/impl/logicV2.js +13 -13
  130. package/kunlun/operator/impl/logicV2.js.map +1 -0
  131. package/kunlun/operator/impl/operator.d.ts +17 -17
  132. package/kunlun/operator/impl/operator.js +39 -38
  133. package/kunlun/operator/impl/operator.js.map +1 -0
  134. package/kunlun/operator/impl/operatorV2.d.ts +17 -17
  135. package/kunlun/operator/impl/operatorV2.js +39 -38
  136. package/kunlun/operator/impl/operatorV2.js.map +1 -0
  137. package/lib/core.d.ts +3 -3
  138. package/lib/core.js +1 -0
  139. package/lib/core.js.map +1 -0
  140. package/log/app.access.log +0 -0
  141. package/log/app.call.log +0 -0
  142. package/log/app.log +0 -0
  143. package/package.json +2 -2
  144. package/request/common.d.ts +1 -1
  145. package/request/common.js +5 -3
  146. package/request/common.js.map +1 -0
  147. package/request/constants.d.ts +1 -1
  148. package/request/constants.js +7 -6
  149. package/request/constants.js.map +1 -0
  150. package/request/faasinfra.d.ts +1 -1
  151. package/request/faasinfra.js +42 -251
  152. package/request/faasinfra.js.map +1 -0
  153. package/request/innerapi.d.ts +12 -8
  154. package/request/innerapi.js +173 -57
  155. package/request/innerapi.js.map +1 -0
  156. package/request/interface.d.ts +68 -54
  157. package/request/interface.js +9 -9
  158. package/request/interface.js.map +1 -0
  159. package/request/openapi.d.ts +12 -8
  160. package/request/openapi.js +215 -149
  161. package/request/openapi.js.map +1 -0
  162. package/types/types.js +1 -0
  163. package/types/types.js.map +1 -0
@@ -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("is_system_error") === "true") {
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("objectApiName is empty");
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("objectApiName is empty");
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("objectApiName is empty");
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("objectApiName is empty");
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("objectApiName is empty");
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("objectApiName is empty");
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("objectApiName is empty");
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
- let errMap = {};
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("objectApiName is empty");
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
- let errMap = {};
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("objectApiName is empty");
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
- let errMap = {};
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("objectApiName is empty");
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 = "file";
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) != 'string') {
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
- let modelKeySearchData = new Map().set("icon_type", msg.icon);
511
- let receiverIds = msg["target_users"] || [];
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
- let percent = msg["percent"];
518
+ const percent = msg.percent;
519
519
  if (percent !== undefined && percent !== null) {
520
- if (typeof (percent) != 'number') {
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("percent", JSON.stringify(percent));
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({ "value": value });
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
- let modelKeySearchData = new Map().set("icon_type", msg.icon);
587
- let percent = msg["percent"];
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) != 'number') {
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("percent", JSON.stringify(percent));
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({ "value": value }));
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) !== "number") {
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 = "GlobalVariables";
756
- param.UsedBy = "UsedBySystem";
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
- "query": oql,
787
- "args": args,
788
- "namedArgs": namedArgs,
789
- "compat": true
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) !== "string") {
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) !== "string") {
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) !== "number") {
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) !== "string") {
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) !== "number") {
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) !== "string") {
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) !== "string") {
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) !== "string") {
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 !== "0") {
1240
- throw new exceptions.InvalidParamError(`result is invalid for code: ${result ? result.code : ""} msg: ${result ? result.msg : ""}`);
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 === "0") {
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 = ""; // required
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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"}