@byted-apaas/server-sdk-node 0.0.2-beta.2 → 0.0.2-beta.3

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/LICENSE +7 -0
  2. package/NOTICE +3 -0
  3. package/application/application.js +0 -1
  4. package/application/function/function.js +0 -1
  5. package/application/impl/common.js +0 -1
  6. package/application/impl/impl.js +2 -2
  7. package/constants/constants.js +2 -1
  8. package/context/context.js +2 -1
  9. package/context/db/db.js +2 -1
  10. package/context/db/impl/IObject.js +2 -1
  11. package/context/db/impl/db.js +0 -1
  12. package/context/db/impl/object.js +2 -1
  13. package/context/db/impl/oql/ioql.js +2 -1
  14. package/context/db/impl/oql/oql.js +2 -1
  15. package/context/db/impl/order.js +2 -1
  16. package/context/db/impl/propertiesStore.js +2 -1
  17. package/context/db/impl/queryBuilder.js +2 -1
  18. package/context/db/impl/transaction/index.js +2 -1
  19. package/context/db/impl/transaction/operation.js +0 -1
  20. package/context/db/impl/transaction.js +2 -1
  21. package/context/globalConfig/globalConfig.js +2 -1
  22. package/context/metadata/components/common.js +2 -1
  23. package/context/metadata/components/components.js +2 -1
  24. package/context/metadata/components/desktop/list.js +0 -1
  25. package/context/metadata/components/desktop/recordDetail.js +2 -1
  26. package/context/metadata/components/mobile/list.js +2 -1
  27. package/context/metadata/metadata.js +2 -1
  28. package/context/metadata/objects/fields.js +2 -1
  29. package/context/metadata/objects/fields.util.js +0 -1
  30. package/context/metadata/objects/objects.js +2 -1
  31. package/context/metadata/types/common.js +2 -1
  32. package/context/metadata/types/components.js +2 -1
  33. package/context/metadata/types/objects.js +2 -1
  34. package/context/msg/msg.js +2 -1
  35. package/context/resources/IResources.js +0 -1
  36. package/context/resources/impl/resources.js +2 -1
  37. package/context/tasks/tasks.js +0 -1
  38. package/data/index.js +0 -1
  39. package/hooks/api.js +0 -1
  40. package/hooks/hooks.js +0 -1
  41. package/kunlun/kunlun.js +2 -1
  42. package/kunlun/operator/IOperator.js +2 -1
  43. package/kunlun/operator/impl/expression.js +2 -1
  44. package/kunlun/operator/impl/logic.js +2 -1
  45. package/kunlun/operator/impl/logicV2.js +0 -1
  46. package/kunlun/operator/impl/operator.js +2 -1
  47. package/kunlun/operator/impl/operatorV2.js +0 -1
  48. package/lib/core.js +2 -1
  49. package/package.json +3 -14
  50. package/request/common.js +0 -1
  51. package/request/constants.js +0 -1
  52. package/request/faasinfra.js +0 -1
  53. package/request/innerapi.js +2 -1
  54. package/request/interface.js +2 -1
  55. package/request/openapi.js +2 -1
  56. package/types/types.js +2 -1
  57. package/LICENSE.md +0 -0
  58. package/application/application.js.map +0 -1
  59. package/application/application.ts +0 -40
  60. package/application/function/function.js.map +0 -1
  61. package/application/function/function.ts +0 -37
  62. package/application/impl/common.js.map +0 -1
  63. package/application/impl/common.ts +0 -50
  64. package/application/impl/impl.js.map +0 -1
  65. package/application/impl/impl.ts +0 -48
  66. package/constants/constants.js.map +0 -1
  67. package/constants/constants.ts +0 -12
  68. package/context/context.js.map +0 -1
  69. package/context/context.ts +0 -127
  70. package/context/db/db.js.map +0 -1
  71. package/context/db/db.ts +0 -77
  72. package/context/db/impl/IObject.js.map +0 -1
  73. package/context/db/impl/IObject.ts +0 -244
  74. package/context/db/impl/db.js.map +0 -1
  75. package/context/db/impl/db.ts +0 -95
  76. package/context/db/impl/object.js.map +0 -1
  77. package/context/db/impl/object.ts +0 -628
  78. package/context/db/impl/oql/ioql.js.map +0 -1
  79. package/context/db/impl/oql/ioql.ts +0 -6
  80. package/context/db/impl/oql/oql.js.map +0 -1
  81. package/context/db/impl/oql/oql.ts +0 -22
  82. package/context/db/impl/order.js.map +0 -1
  83. package/context/db/impl/order.ts +0 -16
  84. package/context/db/impl/propertiesStore.js.map +0 -1
  85. package/context/db/impl/propertiesStore.ts +0 -28
  86. package/context/db/impl/queryBuilder.js.map +0 -1
  87. package/context/db/impl/queryBuilder.ts +0 -103
  88. package/context/db/impl/transaction/index.js.map +0 -1
  89. package/context/db/impl/transaction/index.ts +0 -337
  90. package/context/db/impl/transaction/operation.js.map +0 -1
  91. package/context/db/impl/transaction/operation.ts +0 -72
  92. package/context/db/impl/transaction.js.map +0 -1
  93. package/context/db/impl/transaction.ts +0 -76
  94. package/context/globalConfig/globalConfig.js.map +0 -1
  95. package/context/globalConfig/globalConfig.ts +0 -11
  96. package/context/metadata/components/common.js.map +0 -1
  97. package/context/metadata/components/common.ts +0 -19
  98. package/context/metadata/components/components.js.map +0 -1
  99. package/context/metadata/components/components.ts +0 -19
  100. package/context/metadata/components/desktop/list.js.map +0 -1
  101. package/context/metadata/components/desktop/list.ts +0 -457
  102. package/context/metadata/components/desktop/recordDetail.js.map +0 -1
  103. package/context/metadata/components/desktop/recordDetail.ts +0 -64
  104. package/context/metadata/components/mobile/list.js.map +0 -1
  105. package/context/metadata/components/mobile/list.ts +0 -176
  106. package/context/metadata/metadata.js.map +0 -1
  107. package/context/metadata/metadata.ts +0 -175
  108. package/context/metadata/objects/fields.js.map +0 -1
  109. package/context/metadata/objects/fields.ts +0 -454
  110. package/context/metadata/objects/fields.util.js.map +0 -1
  111. package/context/metadata/objects/fields.util.ts +0 -360
  112. package/context/metadata/objects/objects.js.map +0 -1
  113. package/context/metadata/objects/objects.ts +0 -27
  114. package/context/metadata/types/common.js.map +0 -1
  115. package/context/metadata/types/common.ts +0 -10
  116. package/context/metadata/types/components.js.map +0 -1
  117. package/context/metadata/types/components.ts +0 -105
  118. package/context/metadata/types/objects.js.map +0 -1
  119. package/context/metadata/types/objects.ts +0 -251
  120. package/context/msg/msg.js.map +0 -1
  121. package/context/msg/msg.ts +0 -49
  122. package/context/resources/IResources.js.map +0 -1
  123. package/context/resources/IResources.ts +0 -73
  124. package/context/resources/impl/resources.js.map +0 -1
  125. package/context/resources/impl/resources.ts +0 -170
  126. package/context/tasks/tasks.js.map +0 -1
  127. package/context/tasks/tasks.ts +0 -159
  128. package/data/index.js.map +0 -1
  129. package/data/index.ts +0 -30
  130. package/hooks/api.js.map +0 -1
  131. package/hooks/api.ts +0 -341
  132. package/hooks/hooks.js.map +0 -1
  133. package/hooks/hooks.ts +0 -100
  134. package/kunlun/kunlun.js.map +0 -1
  135. package/kunlun/kunlun.ts +0 -69
  136. package/kunlun/operator/IOperator.js.map +0 -1
  137. package/kunlun/operator/IOperator.ts +0 -163
  138. package/kunlun/operator/impl/expression.js.map +0 -1
  139. package/kunlun/operator/impl/expression.ts +0 -71
  140. package/kunlun/operator/impl/logic.js.map +0 -1
  141. package/kunlun/operator/impl/logic.ts +0 -595
  142. package/kunlun/operator/impl/logicV2.js.map +0 -1
  143. package/kunlun/operator/impl/logicV2.ts +0 -254
  144. package/kunlun/operator/impl/operator.js.map +0 -1
  145. package/kunlun/operator/impl/operator.ts +0 -255
  146. package/kunlun/operator/impl/operatorV2.js.map +0 -1
  147. package/kunlun/operator/impl/operatorV2.ts +0 -249
  148. package/lib/core.js.map +0 -1
  149. package/lib/core.ts +0 -4
  150. package/request/common.js.map +0 -1
  151. package/request/common.ts +0 -91
  152. package/request/constants.js.map +0 -1
  153. package/request/constants.ts +0 -25
  154. package/request/faasinfra.js.map +0 -1
  155. package/request/faasinfra.ts +0 -393
  156. package/request/innerapi.js.map +0 -1
  157. package/request/innerapi.ts +0 -1645
  158. package/request/interface.js.map +0 -1
  159. package/request/interface.ts +0 -166
  160. package/request/openapi.js.map +0 -1
  161. package/request/openapi.ts +0 -1220
  162. package/types/types.js.map +0 -1
  163. package/types/types.ts +0 -105
@@ -1 +0,0 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["interface.ts"],"names":[],"mappings":";;;AAEA,uCAAwC;AACxC,yCAAwC;AACxC,0DAA0D;AAC1D,2CAA+C;AAU/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;AAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;AAEnC,MAAM,kBAAkB,GAAqC;IACzD,aAAa,EAAE,IAAI;IACnB,YAAY,EAAE,IAAI;CACrB,CAAA;AAED,SAAS,eAAe;IACpB,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE;QACpC,kBAAkB,CAAC,aAAa,CAAC,GAAG,IAAI,qBAAW,EAAE,CAAC;KACzD;IACD,OAAO,kBAAkB,CAAC,aAAa,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,cAAc;IACnB,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE;QACnC,kBAAkB,CAAC,YAAY,CAAC,GAAG,IAAI,qBAAU,EAAE,CAAC;KACvD;IACD,OAAO,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAC5C,CAAC;AAED,SAAgB,WAAW;IACvB,yBAAyB;IACzB,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,cAAc,CAAC,8BAA8B;QAChF,KAAK,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,cAAc,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE;QACvG,OAAO,cAAc,EAAE,CAAC;KAC3B;IACD,OAAO,eAAe,EAAE,CAAC;AAC7B,CAAC;AAPD,kCAOC;AAED,SAAgB,oBAAoB;IAChC,OAAO,IAAI,4BAAgB,EAAE,CAAC;AAClC,CAAC;AAFD,oDAEC;AA+B0F,CAAC"}
@@ -1,166 +0,0 @@
1
- import { Criterion } from "../kunlun/operator/impl/logic";
2
- import { Stream } from "stream";
3
- import { RequestHttp } from "./openapi";
4
- import { RequestRpc } from "./innerapi";
5
- import * as common from "@byted-apaas/server-common-node";
6
- import { FaaSInfraRequest } from "./faasinfra";
7
- import {
8
- ExecutionInfo,
9
- ExecutionResult,
10
- FlowTaskInfo,
11
- RevokeExecutionOptions
12
- } from "@byted-apaas/server-common-node/context/workflow/workflow";
13
- import { AppCtx } from "../application/application";
14
- import { Order } from "../context/db/impl/order";
15
-
16
- const utils = common.utils;
17
- const constants = common.constants;
18
-
19
- const requestInstanceMap: Record<string, IInnerAPIRequest> = {
20
- "httpRequest": null,
21
- "rpcRequest": null,
22
- }
23
-
24
- function GetHttpInstance(): IInnerAPIRequest {
25
- if (!requestInstanceMap["httpRequest"]) {
26
- requestInstanceMap["httpRequest"] = new RequestHttp();
27
- }
28
- return requestInstanceMap["httpRequest"];
29
- }
30
-
31
- function GetRpcInstance(): IInnerAPIRequest {
32
- if (!requestInstanceMap["rpcRequest"]) {
33
- requestInstanceMap["rpcRequest"] = new RequestRpc();
34
- }
35
- return requestInstanceMap["rpcRequest"];
36
- }
37
-
38
- export function GetInstance(): IInnerAPIRequest {
39
- // 内网版 && 非本地开发 使用 RPC 请求
40
- if ((utils.getFaasType() === constants.faaSAccessType.InspirecloudIntranetAccessType ||
41
- utils.getFaasType() === constants.faaSAccessType.ByteFaaSIntranetAccessType) && !utils.isLocalDebug()) {
42
- return GetRpcInstance();
43
- }
44
- return GetHttpInstance();
45
- }
46
-
47
- export function GetFaaSInfraInstance(): IFaaSInfraRequest {
48
- return new FaaSInfraRequest();
49
- }
50
-
51
- export type UploadFileResp = {
52
- // ID, 文件的唯一标识
53
- id: string
54
- // Token, 文件的访问 token
55
- token: string
56
- // Size, 文件的大小
57
- size: bigint
58
- // MIME Type, 文件的 MIME 类型
59
- mimeType: string
60
- // Name, 文件的名称
61
- name: string
62
- }
63
-
64
- export type OrderV2 = {
65
- field: string;
66
- direction: string;
67
- type: string;
68
- }
69
-
70
- export type OpenSDKGetRecordsReq = {
71
- limit: number;
72
- offset: number;
73
- fields: string[];
74
- quickSearch?: string;
75
- filter: any[];
76
- sort: OrderV2[];
77
- count: boolean;
78
- }
79
-
80
- export interface IInnerAPIRequest extends IInnerAPIBaseRequest, IInnerAPIOpenSDKRequest { };
81
- export interface IInnerAPIBaseRequest {
82
- createRecordBySync(objectApiName: string, record: object): any;
83
-
84
- updateRecordBySync(objectApiName: string, recordID: number, record: object): any;
85
-
86
- deleteRecordBySync(objectApiName: string, recordID: number): any;
87
-
88
- createRecordsByAsync(objectApiName: string, records: object[]): any;
89
-
90
- updateRecordsByAsync(objectApiName: string, recordMap: Record<number, object>): any;
91
-
92
- deleteRecordsByAsync(objectApiName: string, recordIDs: number[]): any;
93
-
94
- createRecordsBySync(objectApiName: string, records: object[]): any;
95
-
96
- updateRecordsBySync(objectApiName: string, recordMap: Record<number, object>): any;
97
-
98
- deleteRecordsBySync(objectApiName: string, recordIDs: number[]): any;
99
-
100
- getRecordsOrCountByCriterion(objectApiName: string, criterion: string | Criterion, order: Order[], ignoreBackLookupField: boolean, fieldApiNames: string[], offset: number, limit: number, needCount: boolean): any;
101
-
102
- updateWorkflowVariables(ctx: any, instanceId: number, variables: object, variableTypes: object): Promise<void>;
103
-
104
- uploadFile(data: Stream, expire: number): Promise<UploadFileResp>;
105
-
106
- downloadFileByID(fileID: string, filePath?: string): Promise<Buffer | void>;
107
-
108
- downloadFileByToken(fileToken: string, filePath?: string): Promise<Buffer | void>;
109
-
110
- createMessage(msg: any): Promise<number>
111
-
112
- updateMessage(msgId: number, msg: any): Promise<void>
113
-
114
- getFields(objectApiName: string): Promise<any>;
115
-
116
- getField(objectApiName: string, fieldApiName: string): Promise<any>;
117
-
118
- terminateWorkflowInstance(workflowInstanceId: number, operator: number, reason: string): Promise<void>;
119
-
120
- modifyRecordsWithTransaction(placeholders: Record<string, number>, operations: object[]): Promise<Map<string, number>>;
121
-
122
- getGlobalConfigByKey<valueT>(key: string): Promise<valueT>;
123
-
124
- oql(oql: string, args: any[], namedArgs: Record<string, any>): Promise<string | any[]>;
125
-
126
- invokeFuncSync(idOrName: { APIId?: string; APIName?: string, isInvokeByAPIName: boolean }, params: any): Promise<any>;
127
-
128
- createAsyncTaskV1(idOrName: { APIId?: string; APIName?: string; isInvokeByAPIName: boolean }, params: any): Promise<any>;
129
-
130
- createAsyncTaskV2(name: string, params: any): Promise<any>;
131
-
132
- getExecutionUserTaskInfo(executionId: bigint): Promise<any>;
133
-
134
- executeFlow(APIName: string, options: any): Promise<ExecutionResult>;
135
-
136
- revokeExecution(executionId: number, revokeOptions: RevokeExecutionOptions): Promise<void>;
137
-
138
- getExecutionInfo(executionId: number): Promise<ExecutionInfo>;
139
-
140
- getTenantInfo(appCtx: AppCtx): Promise<any>;
141
- }
142
-
143
- export interface IInnerAPIOpenSDKRequest {
144
- openSDKCreateRecordBySync(objectApiName: string, record: object): any;
145
- openSDKUpdateRecordBySync(objectApiName: string, recordID: number, record: object): any;
146
- openSDKDeleteRecordBySync(objectApiName: string, recordID: number): any;
147
- openSDKCreateRecordsBySync(objectApiName: string, records: object[]): any;
148
- openSDKUpdateRecordsBySync(objectApiName: string, recordMap: Record<number, object>): any;
149
- openSDKDeleteRecordsBySync(objectApiName: string, recordIDs: number[]): any;
150
- openSDKGetRecords(objectApiName: string, param: OpenSDKGetRecordsReq): any;
151
-
152
- openSDKUploadFile(fileName: string, data: Buffer): any;
153
- openSDKUploadAvatar(fileName: string, data: Buffer): any;
154
- openSDKDownloadAvatar(imageID: string): any;
155
- invokeFuncWithAuth(idOrName: { APIId?: string; APIName?: string; isInvokeByAPIName: boolean }, params: any): Promise<any>;
156
- }
157
-
158
- export interface IFaaSInfraRequest {
159
- createDistributeTaskV1(dataset: any, handlerFunc: string, progressCallbackFunc: string, completedCallbackFunc: string, options: any): Promise<any>;
160
-
161
- createDistributeTaskV2(dataset: any, handlerFunc: string, progressCallbackFunc: string, completedCallbackFunc: string, options: any): Promise<any>;
162
-
163
- invokeMicroserviceSync(apiName: string, path: string, method: string, body: any): Promise<any>;
164
-
165
- invokeMicroserviceAsync(apiName: string, path: string, method: string, body: any): Promise<any>;
166
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"openapi.js","sourceRoot":"","sources":["openapi.ts"],"names":[],"mappings":"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"}