suanpan_node_sdk 2.0.0-beta.6 → 2.0.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.
Files changed (224) hide show
  1. package/README.md +69 -45
  2. package/dist/api/index.d.ts +12 -0
  3. package/dist/api/index.js +55 -0
  4. package/dist/api/index.js.map +1 -0
  5. package/dist/core/common/constant.d.ts +6 -0
  6. package/dist/{constant.js → core/common/constant.js} +7 -2
  7. package/dist/core/common/constant.js.map +1 -0
  8. package/dist/{common → core/common}/exec.d.ts +0 -0
  9. package/dist/{common → core/common}/exec.js +0 -0
  10. package/dist/core/common/exec.js.map +1 -0
  11. package/dist/core/common/log.d.ts +3 -0
  12. package/dist/core/common/log.js +16 -0
  13. package/dist/core/common/log.js.map +1 -0
  14. package/dist/core/event/index.d.ts +6 -0
  15. package/dist/core/event/index.js +11 -0
  16. package/dist/core/event/index.js.map +1 -0
  17. package/dist/core/logkit/index.d.ts +33 -0
  18. package/dist/core/logkit/index.js +126 -0
  19. package/dist/core/logkit/index.js.map +1 -0
  20. package/dist/core/message/channel.d.ts +10 -0
  21. package/dist/core/message/channel.js +3 -0
  22. package/dist/core/message/channel.js.map +1 -0
  23. package/dist/core/message/channelFactory.d.ts +4 -0
  24. package/dist/core/message/channelFactory.js +12 -0
  25. package/dist/core/message/channelFactory.js.map +1 -0
  26. package/dist/core/message/index.d.ts +6 -0
  27. package/dist/core/message/index.js +19 -0
  28. package/dist/core/message/index.js.map +1 -0
  29. package/dist/core/message/message.d.ts +19 -0
  30. package/dist/core/message/message.js +62 -0
  31. package/dist/core/message/message.js.map +1 -0
  32. package/dist/core/message/messageBuilder.d.ts +13 -0
  33. package/dist/core/message/messageBuilder.js +55 -0
  34. package/dist/core/message/messageBuilder.js.map +1 -0
  35. package/dist/core/message/messageChain.d.ts +9 -0
  36. package/dist/core/message/messageChain.js +30 -0
  37. package/dist/core/message/messageChain.js.map +1 -0
  38. package/dist/core/message/messageListener.d.ts +4 -0
  39. package/dist/core/message/messageListener.js +13 -0
  40. package/dist/core/message/messageListener.js.map +1 -0
  41. package/dist/core/message/mq/index.d.ts +9 -0
  42. package/dist/core/message/mq/index.js +47 -0
  43. package/dist/core/message/mq/index.js.map +1 -0
  44. package/dist/core/message/mq/redis.d.ts +10 -0
  45. package/dist/core/message/mq/redis.js +92 -0
  46. package/dist/core/message/mq/redis.js.map +1 -0
  47. package/dist/core/parameter/commandArgs.d.ts +2 -0
  48. package/dist/core/parameter/commandArgs.js +23 -0
  49. package/dist/core/parameter/commandArgs.js.map +1 -0
  50. package/dist/core/parameter/environment.d.ts +84 -0
  51. package/dist/core/parameter/environment.js +102 -0
  52. package/dist/core/parameter/environment.js.map +1 -0
  53. package/dist/core/parameter/index.d.ts +8 -0
  54. package/dist/core/parameter/index.js +32 -0
  55. package/dist/core/parameter/index.js.map +1 -0
  56. package/dist/{script → core/script}/script-babel/babel.d.ts +0 -0
  57. package/dist/{script → core/script}/script-babel/babel.js +0 -0
  58. package/dist/core/script/script-babel/babel.js.map +1 -0
  59. package/dist/{script → core/script}/script-babel/plugin.d.ts +0 -0
  60. package/dist/{script → core/script}/script-babel/plugin.js +0 -0
  61. package/dist/core/script/script-babel/plugin.js.map +1 -0
  62. package/dist/{script → core/script}/script-constant.d.ts +0 -0
  63. package/dist/{script → core/script}/script-constant.js +0 -0
  64. package/dist/core/script/script-constant.js.map +1 -0
  65. package/dist/{script → core/script}/script-context.d.ts +1 -1
  66. package/dist/{script → core/script}/script-context.js +1 -1
  67. package/dist/core/script/script-context.js.map +1 -0
  68. package/dist/{script → core/script}/script-front.d.ts +0 -0
  69. package/dist/{script → core/script}/script-front.js +0 -0
  70. package/dist/core/script/script-front.js.map +1 -0
  71. package/dist/{script → core/script}/script-insert.d.ts +0 -0
  72. package/dist/{script → core/script}/script-insert.js +1 -1
  73. package/dist/core/script/script-insert.js.map +1 -0
  74. package/dist/{script → core/script}/script-manager.d.ts +0 -0
  75. package/dist/{script → core/script}/script-manager.js +2 -2
  76. package/dist/core/script/script-manager.js.map +1 -0
  77. package/dist/{script → core/script}/script-storage.d.ts +1 -1
  78. package/dist/{script → core/script}/script-storage.js +2 -2
  79. package/dist/core/script/script-storage.js.map +1 -0
  80. package/dist/{script → core/script}/script-support.d.ts +0 -0
  81. package/dist/{script → core/script}/script-support.js +1 -1
  82. package/dist/core/script/script-support.js.map +1 -0
  83. package/dist/{script → core/script}/script-template.d.ts +0 -0
  84. package/dist/{script → core/script}/script-template.js +0 -0
  85. package/dist/core/script/script-template.js.map +1 -0
  86. package/dist/{port.d.ts → core/service/port.d.ts} +1 -0
  87. package/dist/{port.js → core/service/port.js} +23 -8
  88. package/dist/core/service/port.js.map +1 -0
  89. package/dist/{latestStorage → core/storage}/minio.d.ts +7 -3
  90. package/dist/{latestStorage → core/storage}/minio.js +54 -14
  91. package/dist/core/storage/minio.js.map +1 -0
  92. package/dist/{latestStorage → core/storage}/oss.d.ts +5 -1
  93. package/dist/{latestStorage → core/storage}/oss.js +54 -3
  94. package/dist/core/storage/oss.js.map +1 -0
  95. package/dist/core/storage/storage.d.ts +37 -0
  96. package/dist/{latestStorage → core/storage}/storage.js +3 -15
  97. package/dist/core/storage/storage.js.map +1 -0
  98. package/dist/core/storage/storageFlusher.d.ts +12 -0
  99. package/dist/core/storage/storageFlusher.js +53 -0
  100. package/dist/core/storage/storageFlusher.js.map +1 -0
  101. package/dist/core/storage/storageLogger.d.ts +14 -0
  102. package/dist/core/storage/storageLogger.js +100 -0
  103. package/dist/core/storage/storageLogger.js.map +1 -0
  104. package/dist/core/storage/storagePath.d.ts +16 -0
  105. package/dist/core/storage/storagePath.js +50 -0
  106. package/dist/core/storage/storagePath.js.map +1 -0
  107. package/dist/core/storage/wrapperStorage.d.ts +6 -0
  108. package/dist/{latestStorage → core/storage}/wrapperStorage.js +5 -5
  109. package/dist/core/storage/wrapperStorage.js.map +1 -0
  110. package/dist/core/utils/flusher.d.ts +18 -0
  111. package/dist/core/utils/flusher.js +63 -0
  112. package/dist/core/utils/flusher.js.map +1 -0
  113. package/dist/core/utils/index.d.ts +55 -0
  114. package/dist/core/utils/index.js +238 -0
  115. package/dist/core/utils/index.js.map +1 -0
  116. package/dist/core/utils/number.d.ts +2 -0
  117. package/dist/core/utils/number.js +20 -0
  118. package/dist/core/utils/number.js.map +1 -0
  119. package/dist/{common → core/utils}/retry.d.ts +0 -0
  120. package/dist/{common → core/utils}/retry.js +0 -0
  121. package/dist/core/utils/retry.js.map +1 -0
  122. package/dist/core/utils/support.d.ts +3 -0
  123. package/dist/core/utils/support.js +28 -0
  124. package/dist/core/utils/support.js.map +1 -0
  125. package/dist/{web → core/web}/app.d.ts +0 -0
  126. package/dist/{web → core/web}/app.js +2 -2
  127. package/dist/core/web/app.js.map +1 -0
  128. package/dist/{web → core/web}/server.d.ts +0 -0
  129. package/dist/{web → core/web}/server.js +10 -10
  130. package/dist/core/web/server.js.map +1 -0
  131. package/dist/main.d.ts +5 -60
  132. package/dist/main.js +9 -37
  133. package/dist/main.js.map +1 -1
  134. package/dist/types/conmonTypes.d.ts +21 -0
  135. package/dist/types/conmonTypes.js +17 -0
  136. package/dist/types/conmonTypes.js.map +1 -0
  137. package/dist/types/index.d.ts +3 -0
  138. package/dist/types/index.js +16 -0
  139. package/dist/types/index.js.map +1 -0
  140. package/dist/types/{storage-types.d.ts → storageTypes.d.ts} +23 -9
  141. package/dist/types/{storage-types.js → storageTypes.js} +1 -1
  142. package/dist/types/storageTypes.js.map +1 -0
  143. package/dist/types/streamTypes.d.ts +24 -0
  144. package/dist/types/streamTypes.js +3 -0
  145. package/dist/types/streamTypes.js.map +1 -0
  146. package/package.json +5 -2
  147. package/dist/arguments.d.ts +0 -72
  148. package/dist/arguments.js +0 -69
  149. package/dist/arguments.js.map +0 -1
  150. package/dist/commandArgs.d.ts +0 -10
  151. package/dist/commandArgs.js +0 -18
  152. package/dist/commandArgs.js.map +0 -1
  153. package/dist/common/exec.js.map +0 -1
  154. package/dist/common/file.d.ts +0 -1
  155. package/dist/common/file.js +0 -18
  156. package/dist/common/file.js.map +0 -1
  157. package/dist/common/log.d.ts +0 -3
  158. package/dist/common/log.js +0 -11
  159. package/dist/common/log.js.map +0 -1
  160. package/dist/common/retry.js.map +0 -1
  161. package/dist/common/streamUtility.d.ts +0 -7
  162. package/dist/common/streamUtility.js +0 -42
  163. package/dist/common/streamUtility.js.map +0 -1
  164. package/dist/common/util.d.ts +0 -45
  165. package/dist/common/util.js +0 -175
  166. package/dist/common/util.js.map +0 -1
  167. package/dist/constant.d.ts +0 -1
  168. package/dist/constant.js.map +0 -1
  169. package/dist/dyParameter.d.ts +0 -5
  170. package/dist/dyParameter.js +0 -34
  171. package/dist/dyParameter.js.map +0 -1
  172. package/dist/eventLogger.d.ts +0 -29
  173. package/dist/eventLogger.js +0 -123
  174. package/dist/eventLogger.js.map +0 -1
  175. package/dist/global.d.ts +0 -9
  176. package/dist/global.js +0 -39
  177. package/dist/global.js.map +0 -1
  178. package/dist/latestStorage/minio.js.map +0 -1
  179. package/dist/latestStorage/oss.js.map +0 -1
  180. package/dist/latestStorage/path.d.ts +0 -9
  181. package/dist/latestStorage/path.js +0 -30
  182. package/dist/latestStorage/path.js.map +0 -1
  183. package/dist/latestStorage/storage.d.ts +0 -27
  184. package/dist/latestStorage/storage.js.map +0 -1
  185. package/dist/latestStorage/wrapperStorage.d.ts +0 -7
  186. package/dist/latestStorage/wrapperStorage.js.map +0 -1
  187. package/dist/mq.d.ts +0 -52
  188. package/dist/mq.js +0 -155
  189. package/dist/mq.js.map +0 -1
  190. package/dist/parameter.d.ts +0 -14
  191. package/dist/parameter.js +0 -94
  192. package/dist/parameter.js.map +0 -1
  193. package/dist/port.js.map +0 -1
  194. package/dist/previousStorage/local.d.ts +0 -12
  195. package/dist/previousStorage/local.js +0 -90
  196. package/dist/previousStorage/local.js.map +0 -1
  197. package/dist/previousStorage/minio.d.ts +0 -10
  198. package/dist/previousStorage/minio.js +0 -201
  199. package/dist/previousStorage/minio.js.map +0 -1
  200. package/dist/previousStorage/oss.d.ts +0 -27
  201. package/dist/previousStorage/oss.js +0 -153
  202. package/dist/previousStorage/oss.js.map +0 -1
  203. package/dist/previousStorage/storage.d.ts +0 -21
  204. package/dist/previousStorage/storage.js +0 -21
  205. package/dist/previousStorage/storage.js.map +0 -1
  206. package/dist/script/script-babel/babel.js.map +0 -1
  207. package/dist/script/script-babel/plugin.js.map +0 -1
  208. package/dist/script/script-constant.js.map +0 -1
  209. package/dist/script/script-context.js.map +0 -1
  210. package/dist/script/script-front.js.map +0 -1
  211. package/dist/script/script-insert.js.map +0 -1
  212. package/dist/script/script-manager.js.map +0 -1
  213. package/dist/script/script-storage.js.map +0 -1
  214. package/dist/script/script-support.js.map +0 -1
  215. package/dist/script/script-template.js.map +0 -1
  216. package/dist/socketSever.d.ts +0 -1
  217. package/dist/socketSever.js +0 -47
  218. package/dist/socketSever.js.map +0 -1
  219. package/dist/staticServer.d.ts +0 -5
  220. package/dist/staticServer.js +0 -30
  221. package/dist/staticServer.js.map +0 -1
  222. package/dist/types/storage-types.js.map +0 -1
  223. package/dist/web/app.js.map +0 -1
  224. package/dist/web/server.js.map +0 -1
package/README.md CHANGED
@@ -1,96 +1,120 @@
1
+ <a name="tZMOF"></a>
1
2
  ## 简介
2
- 目前 Node Sdk
3
-
4
- - 支持消息收发
5
- - 读取组件的右面板参数
6
- - Event Log Sender
7
- - 支持 oss 类型的 storage 功能 [beta]
8
-
9
- [SDK 目录约定](https://xuelangyun.yuque.com/suanpan_doc/public/bokg7z)
10
-
3
+ 算盘组件之间通过 Redis 消息队列进行消息通信,SDK 对 Redis 提供的 Stream API 进行了封装,提供了发送消息/监听队列/oss/minio存储等方法。<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/502931/1630910242408-c966cd0d-34fe-4bf9-ac47-ac72d50cfe42.png#clientId=u685e5f8c-6bda-4&from=paste&height=341&id=ube246cc1&margin=%5Bobject%20Object%5D&name=image.png&originHeight=682&originWidth=1494&originalType=binary&ratio=1&size=122605&status=done&style=none&taskId=ubb851989-49e6-45e1-a536-f14880aa017&width=747)<br />[SDK 目录约定](https://xuelangyun.yuque.com/suanpan_doc/public/bokg7z)
4
+ <a name="Installation"></a>
11
5
  ## Installation
12
6
  ```powershell
13
7
  npm install suanpan_node_sdk -S
14
8
  // or beta
15
9
  npm install suanpan_node_sdk@beta -S
16
10
  ```
17
- ## Docker
18
- 可以使用基础镜像 node_sdk_base:latest
19
- latest可替换为指定的SDK版本号
20
- 例如:
21
- ```
22
- ARG ARCH="amd64"
23
- FROM registry.cn-shanghai.aliyuncs.com/shuzhi-$ARCH/node_sdk_base:latest
24
- ```
25
11
 
26
- 基础镜像中 suanpan_node_sdk 通过全局安装
27
- 本地开发可以通过`npm install -D suanpan_node_sdk`来提供代码提示
28
12
 
13
+ <a name="d089eb8a"></a>
29
14
  ## 功能列表
30
- ### 1. 获得右面板配置参数(parameter)
15
+
16
+
17
+ <a name="2eb2aa84"></a>
18
+ ### 1. 获得右面板配置参数
19
+
20
+
31
21
  ```javascript
32
- const sp = require('suanpan_node_sdk').sp
33
- const spParameter = sp.parameter
34
- console.log(spParameter)
22
+ const { sp } = require('suanpan_node_sdk');
23
+ const parameter = sp.parameter
24
+ console.log(parameter)
35
25
  ```
36
26
 
27
+
28
+ <a name="c4665ba5"></a>
37
29
  ### 2. 发送消息与接受消息
30
+ <a name="KRO7Z"></a>
38
31
  #### 构建发送包
32
+
33
+
39
34
  ```javascript
40
35
  let msgPackOut = {
41
36
  out1: "a", //将发送 "a" 到第一个消息出口
42
37
  out2: "b", //将发送 "b" 到第二个消息出口
43
38
  }
44
39
  ```
45
- `msgPackOut` 对象的 `key` 由 `out` 与数字拼接而成的 key,表示第 N 个消息出口
46
- `msgPackOut` 对象的 `value` 表示发送到对应出口的数据(value 必须是字符串)
47
40
 
48
- #### 监听 call 事件
49
- 每当有新消息到达组件,则会触发Call事件
41
+ <br />`msgPackOut` 对象的 `key` 由 `out` 与数字拼接而成的 key,表示第 N 个消息出口<br />`msgPackOut` 对象的 `value` 表示发送到对应出口的数据(value 必须是字符串)<br />
42
+
43
+ <a name="goFXb"></a>
44
+ #### 发送信息
45
+ ```javascript
46
+ sp.sendMessage(msgPackOut)
47
+ ```
48
+
49
+
50
+ <a name="Cm6Ll"></a>
51
+ #### 监听 onMessage
52
+ 每当有新消息到达组件,则会触发 Message 事件<br />
53
+
50
54
  ```javascript
51
- sp.onCall((req, res) => {
52
- let msgPackIn = req.msg
55
+ sp.onMessage(message => {
56
+ let msgPackIn = message.body
53
57
  console.log(msgPackIn)
54
58
  // msgPackIn结构如下
55
- //{in1:"a"}
56
- // key(inN) 表示第N个消息入口, value是字符串
59
+ // {in1:"a"} key(inN) 表示第N个消息入口, value是字符串
57
60
 
58
61
  // doSomething here
59
- res.send(msgPackOut) // 调用 res.send 发送数据包到下游节点
62
+ sp.sendMessage(msgPackOut) // 调用 res.sendMessage 发送数据包到下游节点
60
63
  })
61
64
  ```
65
+ <a name="ZkoKt"></a>
66
+ ####
67
+ <a name="lv17Y"></a>
68
+ ### 3. Storage Api
69
+ ```javascript
70
+ const { Storage } = require('suanpan_node_sdk');
62
71
 
63
- #### 主动发送信息
64
- ```powershell
65
- sp.sendMessage(msgPackOut)
72
+ (async () => {
73
+
74
+ await Storage.instance.getObjectToBuffer(objectName)
75
+ await Storage.instance.getObjectToStream(objectName)
76
+ await Storage.instance.getObjectToString(objectName)
77
+
78
+ await Storage.instance.fGetObject(objectName, filePath)
79
+ await Storage.instance.fPutObject(objectName, filePath)
80
+
81
+ await Storage.instance.putObject(objectName, data)
82
+ await Storage.instance.listObjects(prefix)
83
+
84
+ await Storage.instance.deleteObject(objectName)
85
+ await Storage.instance.deleteMultiObjects(objectNames)
86
+ })();
66
87
  ```
67
88
 
68
- ### 3. EventLogger Sender
69
- 提供 log 格式化的存储形式持久化在数据库中,app 释放后仍然保留,用于不同用户查看修改错误,用户重新部署后清除。logkit 能够直接运行在算盘 Server 中,也可以单独运行。架构图:
70
- ![image.png](https://cdn.nlark.com/yuque/0/2021/png/502931/1615780837866-0a9141e8-3da1-4fff-98aa-cc4ace5e7aed.png#align=left&display=inline&height=384&margin=%5Bobject%20Object%5D&name=image.png&originHeight=836&originWidth=1044&size=78619&status=done&style=none&width=480)
71
- Node Sdk 提供 event log(内部使用 socketio 作为接口的基础协议)接口单向传输到 logkit。
72
89
 
73
- 代码示例:
90
+ <a name="72a374df"></a>
91
+ ### 4. EventLogger Sender
92
+
93
+ <br />提供 log 格式化的存储形式持久化在数据库中,app 释放后仍然保留,用于不同用户查看修改错误,用户重新部署后清除。logkit 能够直接运行在算盘 Server 中,也可以单独运行。架构图:<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/502931/1615780837866-0a9141e8-3da1-4fff-98aa-cc4ace5e7aed.png#align=left&display=inline&height=384&margin=%5Bobject%20Object%5D&name=image.png&originHeight=836&originWidth=1044&size=78619&status=done&style=none&width=480#id=DIDWl&originHeight=836&originWidth=1044&originalType=binary&ratio=1&status=done&style=none)<br />Node Sdk 提供 event log(内部使用 socketio 作为接口的基础协议)接口单向传输到 logkit。<br />
94
+ <br />代码示例:<br />
95
+
74
96
  ```javascript
75
97
  let { sp, EventLogger } = require('suanpan_node_sdk');
76
98
 
77
99
  const eventLogger = EventLogger.Instance;
78
100
 
79
- sp.onCall((req, res) => {
101
+ sp.onMessage(message => {
80
102
 
81
- if (!req.msg) {
103
+ if (!message.body) {
82
104
  // 发送 event log
83
105
  eventLogger.warn('received message is empty.');
84
106
  }
85
107
 
86
- res.send({
108
+ sp.sendMessage({
87
109
  out1: 'hello world this send in call'
88
110
  });
89
111
  });
90
112
  ```
91
113
 
92
- 默认情况下,用户代码(onCall)中运行时 Error,将会自动触发 event log 的 error 事件,将结构化错误信息发送到 logkit。等于在 `after onCall` 中插入如下代码:
114
+ <br />默认情况下,用户代码(onCall)中运行时 Error,将会自动触发 event log 的 error 事件,将结构化错误信息发送到 logkit。等于在 `after onCall` 中插入如下代码:<br />
115
+
93
116
  ```javascript
94
117
  eventLogger.error(e.message)
95
118
  ```
96
- **注**:确保 sdk 版本在 `1.4.2` 以上
119
+
120
+ <br />**注**:确保 sdk 版本在 `1.4.2` 以上
@@ -0,0 +1,12 @@
1
+ export * from '../types';
2
+ export * from '../core/service/port';
3
+ export * from '../core/message';
4
+ export * from '../core/parameter';
5
+ export * from '../core/logkit';
6
+ export * from '../core/storage/storagePath';
7
+ export * from '../core/storage/storageLogger';
8
+ export * from '../core/storage/wrapperStorage';
9
+ import { ScriptManager } from '../core/script/script-manager';
10
+ export declare const ScriptManagement: {
11
+ ScriptManager: typeof ScriptManager;
12
+ };
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
+ };
17
+ var __importStar = (this && this.__importStar) || function (mod) {
18
+ if (mod && mod.__esModule) return mod;
19
+ var result = {};
20
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
21
+ __setModuleDefault(result, mod);
22
+ return result;
23
+ };
24
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
25
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
26
+ return new (P || (P = Promise))(function (resolve, reject) {
27
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
28
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
29
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
30
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
31
+ });
32
+ };
33
+ var __importDefault = (this && this.__importDefault) || function (mod) {
34
+ return (mod && mod.__esModule) ? mod : { "default": mod };
35
+ };
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.ScriptManagement = void 0;
38
+ __exportStar(require("../types"), exports);
39
+ __exportStar(require("../core/service/port"), exports);
40
+ __exportStar(require("../core/message"), exports);
41
+ __exportStar(require("../core/parameter"), exports);
42
+ __exportStar(require("../core/logkit"), exports);
43
+ __exportStar(require("../core/storage/storagePath"), exports);
44
+ __exportStar(require("../core/storage/storageLogger"), exports);
45
+ __exportStar(require("../core/storage/wrapperStorage"), exports);
46
+ const script_manager_1 = require("../core/script/script-manager");
47
+ exports.ScriptManagement = { ScriptManager: script_manager_1.ScriptManager };
48
+ const util = __importStar(require("../core/utils"));
49
+ const server_1 = __importDefault(require("../core/web/server"));
50
+ if (util.isDesktop()) {
51
+ (() => __awaiter(void 0, void 0, void 0, function* () {
52
+ yield server_1.default.setup();
53
+ }))();
54
+ }
55
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,uDAAqC;AACrC,kDAAgC;AAChC,oDAAkC;AAClC,iDAA+B;AAC/B,8DAA4C;AAC5C,gEAA8C;AAC9C,iEAA+C;AAE/C,kEAA8D;AACjD,QAAA,gBAAgB,GAAG,EAAE,aAAa,EAAb,8BAAa,EAAE,CAAC;AAElD,oDAAsC;AACtC,gEAAwC;AAExC,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;IACpB,CAAC,GAAS,EAAE;QACV,MAAM,gBAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC,CAAA,CAAC,EAAE,CAAC;CACN"}
@@ -0,0 +1,6 @@
1
+ export declare const SP_USER_SIGN_VERSION = "v1";
2
+ export declare const APP_NODE_TYPE_CONFIG = "app.nodeType";
3
+ export declare const APP_NODE_SDK_PORT_CONFIG = "app.predict.appNodeSDKPort";
4
+ export declare const DEFAULT_NODE_SDK_PORT = 80002;
5
+ export declare const USER_MASTER = "user-master";
6
+ export declare const COMMAND_FILTER_KEYS: string[];
@@ -1,6 +1,11 @@
1
- 'use strict';
1
+ "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.COMMAND_FILTER_KEYS = void 0;
3
+ exports.COMMAND_FILTER_KEYS = exports.USER_MASTER = exports.DEFAULT_NODE_SDK_PORT = exports.APP_NODE_SDK_PORT_CONFIG = exports.APP_NODE_TYPE_CONFIG = exports.SP_USER_SIGN_VERSION = void 0;
4
+ exports.SP_USER_SIGN_VERSION = 'v1';
5
+ exports.APP_NODE_TYPE_CONFIG = 'app.nodeType';
6
+ exports.APP_NODE_SDK_PORT_CONFIG = 'app.predict.appNodeSDKPort';
7
+ exports.DEFAULT_NODE_SDK_PORT = 80002;
8
+ exports.USER_MASTER = 'user-master';
4
9
  exports.COMMAND_FILTER_KEYS = [
5
10
  'stream-user-id',
6
11
  'stream-app-id',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constant.js","sourceRoot":"","sources":["../../../src/core/common/constant.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAC5B,QAAA,oBAAoB,GAAG,cAAc,CAAC;AACtC,QAAA,wBAAwB,GAAG,4BAA4B,CAAC;AACxD,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAC9B,QAAA,WAAW,GAAG,aAAa,CAAC;AAC5B,QAAA,mBAAmB,GAAG;IACjC,gBAAgB;IAChB,eAAe;IACf,gBAAgB;IAChB,aAAa;IACb,mBAAmB;IACnB,mBAAmB;IACnB,8BAA8B;IAC9B,oCAAoC;IACpC,SAAS;IACT,eAAe;IACf,eAAe;IACf,+BAA+B;IAC/B,qBAAqB;IACrB,cAAc;IACd,wBAAwB;IACxB,2BAA2B;IAC3B,yBAAyB;IACzB,0BAA0B;IAC1B,0BAA0B;IAC1B,SAAS;IACT,cAAc;IACd,cAAc;IACd,kBAAkB;IAClB,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,sBAAsB;IACtB,yBAAyB;IACzB,uBAAuB;IACvB,wBAAwB;IACxB,wBAAwB;IACxB,0BAA0B;IAC1B,0BAA0B;IAC1B,GAAG;IACH,IAAI;IACJ,OAAO;IACP,OAAO;IACP,SAAS;IACT,QAAQ;IACR,WAAW;CACZ,CAAC"}
File without changes
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../src/core/common/exec.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import log4js from 'log4js';
2
+ declare const logger: log4js.Logger;
3
+ export default logger;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const log4js_1 = __importDefault(require("log4js"));
7
+ const logger = log4js_1.default.getLogger();
8
+ const environment_1 = require("../parameter/environment");
9
+ if (environment_1.Environment.spConfig.debug) {
10
+ logger.level = 'debug';
11
+ }
12
+ else {
13
+ logger.level = 'info';
14
+ }
15
+ exports.default = logger;
16
+ //# sourceMappingURL=log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../../../src/core/common/log.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,MAAM,MAAM,GAAG,gBAAM,CAAC,SAAS,EAAE,CAAC;AAElC,0DAAuD;AAEvD,IAAI,yBAAW,CAAC,QAAQ,CAAC,KAAK,EAAE;IAC9B,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC;CACxB;KAAM;IACL,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC;CACvB;AAED,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Message } from '../message/message';
2
+ export declare class MessageReachedEvent {
3
+ message: Message;
4
+ static NAME: string;
5
+ constructor(message: Message);
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MessageReachedEvent = void 0;
4
+ class MessageReachedEvent {
5
+ constructor(message) {
6
+ this.message = message;
7
+ }
8
+ }
9
+ exports.MessageReachedEvent = MessageReachedEvent;
10
+ MessageReachedEvent.NAME = 'message:reached';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/event/index.ts"],"names":[],"mappings":";;;AACA,MAAa,mBAAmB;IAE9B,YAAmB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;;AAFzC,kDAGC;AAFe,wBAAI,GAAG,iBAAiB,CAAA"}
@@ -0,0 +1,33 @@
1
+ export declare class EventLogger {
2
+ private static TRACE;
3
+ private static DEBUG;
4
+ private static INFO;
5
+ private static WARN;
6
+ private static ERROR;
7
+ private static _instance;
8
+ static get Instance(): EventLogger;
9
+ private _socket;
10
+ private _minLevel;
11
+ private _levels;
12
+ private _levelToInt;
13
+ private _getRequestUrl;
14
+ private _generateConnectOpts;
15
+ private constructor();
16
+ emitToLogkit(event: string, ...args: any[]): Promise<unknown>;
17
+ buildEventLog(eventTitle: any, eventLevel: any): {
18
+ title: any;
19
+ level: any;
20
+ time: string;
21
+ data: {
22
+ node: any;
23
+ };
24
+ }[];
25
+ parseTitleIfNecessary(title: any): any;
26
+ trace(title: string): void;
27
+ debug(title: string): void;
28
+ info(title: string): void;
29
+ warn(title: string): void;
30
+ error(title: string): void;
31
+ log(title: string, level: string): void;
32
+ query(): Promise<unknown>;
33
+ }
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.EventLogger = void 0;
16
+ const lodash_1 = __importDefault(require("lodash"));
17
+ const socket_io_client_1 = __importDefault(require("socket.io-client"));
18
+ const log_1 = __importDefault(require("../common/log"));
19
+ const environment_1 = require("../parameter/environment");
20
+ const support_1 = require("../utils/support");
21
+ class EventLogger {
22
+ constructor() {
23
+ this._levels = {
24
+ 'trace': 1,
25
+ 'debug': 2,
26
+ 'info': 3,
27
+ 'warning': 4,
28
+ 'warn': 4,
29
+ 'error': 5
30
+ };
31
+ const uri = this._getRequestUrl(environment_1.Environment.logkit.uri, environment_1.Environment.logkit.namespace);
32
+ this._socket = socket_io_client_1.default(uri, this._generateConnectOpts());
33
+ this._socket.on('connect', () => log_1.default.info('connected to logkit'));
34
+ this._socket.on('error', (...args) => { log_1.default.error('error', args); });
35
+ this._socket.on('disconnect', (...args) => { log_1.default.warn('disconnect', args); });
36
+ this._socket.on('connect_error', (...args) => { log_1.default.error('connect_error', args); });
37
+ this._minLevel = this._levelToInt(environment_1.Environment.logkit.logLevel);
38
+ }
39
+ static get Instance() {
40
+ if (!this._instance) {
41
+ this._instance = new EventLogger();
42
+ }
43
+ return this._instance;
44
+ }
45
+ _levelToInt(minLevel) {
46
+ if (minLevel.toLowerCase() in this._levels) {
47
+ return this._levels[minLevel.toLowerCase()];
48
+ }
49
+ return 99;
50
+ }
51
+ _getRequestUrl(endpoint, routePath) {
52
+ const prefix = !lodash_1.default.endsWith(endpoint, '/') ? endpoint + '/' : endpoint;
53
+ const suffix = !lodash_1.default.startsWith(routePath, '/') ? routePath : routePath.substr(1);
54
+ return prefix + suffix;
55
+ }
56
+ _generateConnectOpts() {
57
+ return {
58
+ transports: ['websocket'],
59
+ query: support_1.buildUserIdHeaderField(),
60
+ path: process.env.SP_LOGKIT_PATH
61
+ };
62
+ }
63
+ emitToLogkit(event, ...args) {
64
+ return __awaiter(this, void 0, void 0, function* () {
65
+ return new Promise((resolve, reject) => {
66
+ this._socket.emit(event, ...args, result => {
67
+ if (result.success) {
68
+ resolve(result.data);
69
+ }
70
+ else {
71
+ reject(result.error);
72
+ }
73
+ });
74
+ });
75
+ });
76
+ }
77
+ buildEventLog(eventTitle, eventLevel) {
78
+ return [{
79
+ title: eventTitle,
80
+ level: eventLevel,
81
+ time: new Date().toISOString(),
82
+ data: {
83
+ node: environment_1.Environment.stream.nodeId
84
+ }
85
+ }];
86
+ }
87
+ parseTitleIfNecessary(title) {
88
+ if (lodash_1.default.isString(title)) {
89
+ return title;
90
+ }
91
+ if (lodash_1.default.isError(title)) {
92
+ // output error on the command line and oss
93
+ log_1.default.error(title);
94
+ return title.message;
95
+ }
96
+ return title;
97
+ }
98
+ trace(title) { this.log(title, EventLogger.TRACE); }
99
+ debug(title) { this.log(title, EventLogger.DEBUG); }
100
+ info(title) { this.log(title, EventLogger.INFO); }
101
+ warn(title) { this.log(title, EventLogger.WARN); }
102
+ error(title) { this.log(title, EventLogger.ERROR); }
103
+ log(title, level) {
104
+ if (!title) {
105
+ return;
106
+ }
107
+ if (this._levelToInt(level) < this._minLevel) {
108
+ return;
109
+ }
110
+ const eventTitle = this.parseTitleIfNecessary(title);
111
+ this.emitToLogkit(environment_1.Environment.logkit.eventName, environment_1.Environment.stream.appId, this.buildEventLog(eventTitle, level))
112
+ .catch(error => log_1.default.error(error));
113
+ }
114
+ query() {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ return yield this.emitToLogkit('query', { app: environment_1.Environment.stream.appId });
117
+ });
118
+ }
119
+ }
120
+ exports.EventLogger = EventLogger;
121
+ EventLogger.TRACE = 'TRACE';
122
+ EventLogger.DEBUG = 'DEBUG';
123
+ EventLogger.INFO = 'INFO';
124
+ EventLogger.WARN = 'WARN';
125
+ EventLogger.ERROR = 'ERROR';
126
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/logkit/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Message } from './message';
2
+ import type { MessageChain } from './messageChain';
3
+ export declare type MessageHandler = (message: Message, chain: MessageChain) => void | Promise<void>;
4
+ export interface MessageChannel {
5
+ sendMessage(message: Message): Promise<void>;
6
+ }
7
+ export interface SubscribableChannel extends MessageChannel {
8
+ subscribe(handler: MessageHandler): void;
9
+ unsubscribe(handler: MessageHandler): void;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=channel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../src/core/message/channel.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { MessageChannel } from './channel';
2
+ export declare class MessageChannelFactory {
3
+ static getMessageChannel(): MessageChannel;
4
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MessageChannelFactory = void 0;
4
+ const mq_1 = require("./mq");
5
+ class MessageChannelFactory {
6
+ static getMessageChannel() {
7
+ // TODO:
8
+ return new mq_1.RedisStreamChannel();
9
+ }
10
+ }
11
+ exports.MessageChannelFactory = MessageChannelFactory;
12
+ //# sourceMappingURL=channelFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channelFactory.js","sourceRoot":"","sources":["../../../src/core/message/channelFactory.ts"],"names":[],"mappings":";;;AACA,6BAA0C;AAE1C,MAAa,qBAAqB;IAChC,MAAM,CAAC,iBAAiB;QACtB,QAAQ;QACR,OAAO,IAAI,uBAAkB,EAAE,CAAC;IAClC,CAAC;CACF;AALD,sDAKC"}
@@ -0,0 +1,6 @@
1
+ export * from './channel';
2
+ export * from './channelFactory';
3
+ export * from './message';
4
+ export * from './messageChain';
5
+ export * from './messageBuilder';
6
+ export * from './messageListener';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./channel"), exports);
14
+ __exportStar(require("./channelFactory"), exports);
15
+ __exportStar(require("./message"), exports);
16
+ __exportStar(require("./messageChain"), exports);
17
+ __exportStar(require("./messageBuilder"), exports);
18
+ __exportStar(require("./messageListener"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/message/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0B;AAC1B,mDAAiC;AAEjC,4CAA0B;AAC1B,iDAA+B;AAC/B,mDAAiC;AACjC,oDAAkC"}
@@ -0,0 +1,19 @@
1
+ import type { JSONObject, RequestStream, ResponseStream } from '../../types';
2
+ export interface MessageHeaders {
3
+ requestId: string;
4
+ timestamp: number;
5
+ extra: string;
6
+ }
7
+ export declare class Message {
8
+ payload: JSONObject;
9
+ headers: MessageHeaders;
10
+ constructor(headers: MessageHeaders, payload: JSONObject);
11
+ static fromRequestStream(request: RequestStream): Message;
12
+ /**
13
+ * @param data JSON Object
14
+ * @returns JSON Object with the same key as param @param data
15
+ */
16
+ private serializeIfNecessary;
17
+ toResponseStream(): ResponseStream;
18
+ toErrorResponseStream(errorMessage: string): ResponseStream;
19
+ }