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
@@ -1,4 +1,23 @@
1
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 __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
2
21
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
22
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
23
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -13,9 +32,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
32
  };
14
33
  Object.defineProperty(exports, "__esModule", { value: true });
15
34
  exports.OSSStorage = void 0;
35
+ const lodash_1 = __importDefault(require("lodash"));
16
36
  const ali_oss_1 = __importDefault(require("ali-oss"));
37
+ const util = __importStar(require("../utils"));
38
+ const utils_1 = require("../utils");
17
39
  const storage_1 = require("./storage");
18
- const streamUtility_1 = require("../common/streamUtility");
19
40
  class OSSStorage extends storage_1.AbstractStorage {
20
41
  buildClient() {
21
42
  var _a, _b;
@@ -30,6 +51,12 @@ class OSSStorage extends storage_1.AbstractStorage {
30
51
  });
31
52
  });
32
53
  }
54
+ append(objectName, content) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ const ossClient = yield this.getClient();
57
+ yield ossClient.append(objectName, Buffer.from(content));
58
+ });
59
+ }
33
60
  getObjectToBuffer(objectName) {
34
61
  return __awaiter(this, void 0, void 0, function* () {
35
62
  const ossClient = yield this.getClient();
@@ -47,17 +74,26 @@ class OSSStorage extends storage_1.AbstractStorage {
47
74
  getObjectToString(objectName) {
48
75
  return __awaiter(this, void 0, void 0, function* () {
49
76
  const stream = yield this.getObjectToStream(objectName);
50
- return yield streamUtility_1.convertStreamToString(stream);
77
+ return yield util.convertStreamToString(stream);
78
+ });
79
+ }
80
+ getObjectToJSON(objectName) {
81
+ return __awaiter(this, void 0, void 0, function* () {
82
+ const str = yield this.getObjectToString(objectName);
83
+ return utils_1.tryJSONParse(str, str);
51
84
  });
52
85
  }
53
86
  putObject(objectName, data) {
54
87
  return __awaiter(this, void 0, void 0, function* () {
55
88
  const ossClient = yield this.getClient();
56
- yield ossClient.put(objectName, data);
89
+ yield ossClient.put(objectName, lodash_1.default.isString(data) ? Buffer.from(data) : data);
57
90
  });
58
91
  }
59
92
  fPutObject(objectName, filePath) {
60
93
  return __awaiter(this, void 0, void 0, function* () {
94
+ if (util.fileExists(filePath)) {
95
+ throw new Error(`Local file path(${filePath}) is not exist.`);
96
+ }
61
97
  const ossClient = yield this.getClient();
62
98
  yield ossClient.put(objectName, filePath);
63
99
  });
@@ -100,6 +136,21 @@ class OSSStorage extends storage_1.AbstractStorage {
100
136
  })));
101
137
  });
102
138
  }
139
+ checkObjectNameExist(objectName) {
140
+ return __awaiter(this, void 0, void 0, function* () {
141
+ const ossClient = yield this.getClient();
142
+ try {
143
+ yield ossClient.head(objectName);
144
+ return true;
145
+ }
146
+ catch (e) {
147
+ if ((e === null || e === void 0 ? void 0 : e.name) === 'NoSuchKeyError') {
148
+ return false;
149
+ }
150
+ throw e;
151
+ }
152
+ });
153
+ }
103
154
  }
104
155
  exports.OSSStorage = OSSStorage;
105
156
  //# sourceMappingURL=oss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oss.js","sourceRoot":"","sources":["../../../src/core/storage/oss.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /// <reference types="node" />
2
+ import type { Stream } from 'stream';
3
+ import type { StsToken, ObjectItem } from '../../types';
4
+ export interface ObjectStorage {
5
+ append(objectName: string, content: String): Promise<any>;
6
+ getObjectToBuffer(objectName: string): Promise<Buffer>;
7
+ getObjectToStream(objectName: string): Promise<Stream | null>;
8
+ getObjectToString(objectName: string): Promise<string>;
9
+ getObjectToJSON(objectName: string): Promise<unknown>;
10
+ fGetObject(objectName: string, filePath: string): Promise<any>;
11
+ fPutObject(objectName: string, filePath: string): Promise<void>;
12
+ putObject(objectName: string, data: any): Promise<void>;
13
+ listObjects(prefix: string, recursive?: boolean, maxKeys?: number): Promise<ObjectItem[]>;
14
+ deleteObject(objectName: string): Promise<void>;
15
+ deleteMultiObjects(objectNames: string[]): Promise<void>;
16
+ checkObjectNameExist(objectName: string): Promise<boolean>;
17
+ }
18
+ export declare abstract class AbstractStorage implements ObjectStorage {
19
+ private client;
20
+ private lastToken;
21
+ protected isTokenExpiration(tokenExpiration: string): boolean;
22
+ protected getClient(): Promise<unknown>;
23
+ protected getStsToken(): Promise<StsToken>;
24
+ protected abstract buildClient(): Promise<any>;
25
+ abstract append(objectName: string, content: String): Promise<any>;
26
+ abstract getObjectToBuffer(objectName: string): Promise<Buffer>;
27
+ abstract getObjectToStream(objectName: string): Promise<Stream | null>;
28
+ abstract getObjectToString(objectName: string): Promise<string>;
29
+ abstract getObjectToJSON(objectName: string): Promise<unknown>;
30
+ abstract fGetObject(objectName: string, filePath: string): Promise<void>;
31
+ abstract fPutObject(objectName: string, filePath: string): Promise<void>;
32
+ abstract putObject(objectName: string, data: any): Promise<void>;
33
+ abstract listObjects(prefix: string, recursive?: boolean, maxKeys?: number): Promise<ObjectItem[]>;
34
+ abstract deleteObject(objectName: string): Promise<void>;
35
+ abstract deleteMultiObjects(objectNames: string[]): Promise<void>;
36
+ abstract checkObjectNameExist(objectName: string): Promise<boolean>;
37
+ }
@@ -15,20 +15,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AbstractStorage = void 0;
16
16
  const got_1 = __importDefault(require("got"));
17
17
  const moment_1 = __importDefault(require("moment"));
18
- const path_1 = require("./path");
19
- const g = require("../global");
20
- const spWebHost = g.affinity;
21
- const requestHeader = g.header;
18
+ const support_1 = require("../utils/support");
22
19
  class AbstractStorage {
23
- constructor() {
24
- this.userPath = path_1.StoragePath.UserPath;
25
- this.appPath = path_1.StoragePath.AppPath;
26
- this.nodePath = path_1.StoragePath.NodePath;
27
- this.logPath = path_1.StoragePath.LogPath;
28
- this.appLogPath = path_1.StoragePath.AppLogPath;
29
- this.nodeLogPath = path_1.StoragePath.NodeLogPath;
30
- this.appTempDir = path_1.StoragePath.AppTempDir;
31
- }
32
20
  isTokenExpiration(tokenExpiration) {
33
21
  return moment_1.default(moment_1.default.now()).isAfter(moment_1.default(tokenExpiration));
34
22
  }
@@ -45,8 +33,8 @@ class AbstractStorage {
45
33
  getStsToken() {
46
34
  return __awaiter(this, void 0, void 0, function* () {
47
35
  const gotOptions = {
48
- prefixUrl: spWebHost,
49
- headers: requestHeader
36
+ prefixUrl: support_1.buildSpAffinityUrl(),
37
+ headers: support_1.buildUserIdHeaderField()
50
38
  };
51
39
  const response = yield got_1.default('oss/token', gotOptions);
52
40
  const stsToken = JSON.parse(response.body);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/core/storage/storage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8CAAsB;AACtB,oDAA4B;AAG5B,8CAA8E;AAqB9E,MAAsB,eAAe;IAKzB,iBAAiB,CAAE,eAAuB;QAClD,OAAO,gBAAM,CAAC,gBAAM,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/D,CAAC;IAEe,SAAS;;;YAEvB,MAAM,eAAe,GAAG,MAAA,MAAC,IAAI,CAAC,SAAsB,0CAAE,WAAW,0CAAE,UAAU,CAAC;YAE9E,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE;gBAC/E,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;aACxC;YACD,OAAO,IAAI,CAAC,MAAM,CAAC;;KACpB;IAEe,WAAW;;YACzB,MAAM,UAAU,GAAG;gBACjB,SAAS,EAAE,4BAAkB,EAAE;gBAC/B,OAAO,EAAE,gCAAsB,EAAE;aAClC,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,aAAG,CAAC,WAAW,EAAE,UAAiB,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC1B,OAAO,QAAoB,CAAC;QAC9B,CAAC;KAAA;CAqBF;AAjDD,0CAiDC"}
@@ -0,0 +1,12 @@
1
+ import { FlushOptions } from '../utils/flusher';
2
+ export declare type StorageFlushOptions = {
3
+ storageFilePath: string;
4
+ } & FlushOptions;
5
+ export declare class StorageLogFlusher {
6
+ private options;
7
+ private bFlusher;
8
+ constructor(options: StorageFlushOptions);
9
+ onFlush: (logItems: string[]) => Promise<void>;
10
+ add(content: string): void;
11
+ flush(): void;
12
+ }
@@ -0,0 +1,53 @@
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.StorageLogFlusher = void 0;
16
+ const lodash_1 = __importDefault(require("lodash"));
17
+ const log_1 = __importDefault(require("../common/log"));
18
+ const wrapperStorage_1 = require("./wrapperStorage");
19
+ const flusher_1 = require("../utils/flusher");
20
+ class StorageLogFlusher {
21
+ constructor(options) {
22
+ this.options = options;
23
+ this.onFlush = (logItems) => __awaiter(this, void 0, void 0, function* () {
24
+ if (lodash_1.default.isEmpty(logItems)) {
25
+ return;
26
+ }
27
+ log_1.default.info(`⬇ StorageLogFlusher ==> append ${logItems} to ${this.options.storageFilePath}`);
28
+ try {
29
+ const joinWithLineBreak = logItems.reduce((acc, cur) => {
30
+ acc += `${cur}\r\n`;
31
+ return acc;
32
+ }, '');
33
+ yield wrapperStorage_1.Storage.Instance.append(this.options.storageFilePath, joinWithLineBreak);
34
+ }
35
+ catch (e) {
36
+ log_1.default.warn(`write log to storage failed ${e}`);
37
+ }
38
+ });
39
+ this.bFlusher = new flusher_1.BufferFlusher({
40
+ maxItems: options.maxItems,
41
+ flushInterval: options.flushInterval
42
+ });
43
+ this.bFlusher.on('flush', this.onFlush);
44
+ }
45
+ add(content) {
46
+ this.bFlusher.add(content);
47
+ }
48
+ flush() {
49
+ this.bFlusher.flush();
50
+ }
51
+ }
52
+ exports.StorageLogFlusher = StorageLogFlusher;
53
+ //# sourceMappingURL=storageFlusher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storageFlusher.js","sourceRoot":"","sources":["../../../src/core/storage/storageFlusher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAAuB;AAEvB,wDAAmC;AACnC,qDAA2C;AAC3C,8CAA+D;AAK/D,MAAa,iBAAiB;IAI5B,YAAoB,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;QAQhD,YAAO,GAAG,CAAO,QAAkB,EAAE,EAAE;YACrC,IAAI,gBAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO;aAAE;YAEpC,aAAM,CAAC,IAAI,CAAC,kCAAkC,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;YAE7F,IAAI;gBACF,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACrD,GAAG,IAAI,GAAG,GAAG,MAAM,CAAC;oBACpB,OAAO,GAAG,CAAC;gBACb,CAAC,EAAE,EAAE,CAAC,CAAC;gBAEP,MAAM,wBAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;aAChF;YAAC,OAAO,CAAC,EAAE;gBACV,aAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;aACjD;QACH,CAAC,CAAA,CAAC;QAtBA,IAAI,CAAC,QAAQ,GAAG,IAAI,uBAAa,CAAC;YAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAmBD,GAAG,CAAC,OAAe;QACjB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF;AApCD,8CAoCC"}
@@ -0,0 +1,14 @@
1
+ import { StorageLoggerOptions } from '../../types';
2
+ export declare class ObjectStorageLogger {
3
+ private options;
4
+ private _logger;
5
+ private _minLevel;
6
+ private _flusher;
7
+ constructor(options: StorageLoggerOptions);
8
+ private _validate;
9
+ private log;
10
+ info: (message: string, flush?: boolean) => void;
11
+ debug: (message: string, flush?: boolean) => void;
12
+ warn: (message: string, flush?: boolean) => void;
13
+ error: (message: string, flush?: boolean) => void;
14
+ }
@@ -0,0 +1,100 @@
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
+ exports.ObjectStorageLogger = void 0;
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ const log4js_1 = __importDefault(require("log4js"));
9
+ const moment_1 = __importDefault(require("moment"));
10
+ const storageFlusher_1 = require("./storageFlusher");
11
+ const utils_1 = require("../utils");
12
+ const types_1 = require("../../types");
13
+ class ObjectStorageLogger {
14
+ constructor(options) {
15
+ this.options = options;
16
+ this.log = (level, message, flush = false) => {
17
+ if (level < this._minLevel) {
18
+ return;
19
+ }
20
+ if (this.options.console) {
21
+ switch (level) {
22
+ case types_1.LogLevel.DEBUG:
23
+ this._logger.debug(message);
24
+ break;
25
+ case types_1.LogLevel.INFO:
26
+ this._logger.info(message);
27
+ break;
28
+ case types_1.LogLevel.WARN:
29
+ this._logger.warn(message);
30
+ break;
31
+ case types_1.LogLevel.ERROR:
32
+ this._logger.error(message);
33
+ break;
34
+ default: {
35
+ throw new Error(`unsupported log level: ${level}`);
36
+ }
37
+ }
38
+ }
39
+ this._flusher.add(`${moment_1.default().format('YYYY-MM-DD HH:mm:ss')} ==> ${message}`);
40
+ if (flush) {
41
+ this._flusher.flush();
42
+ }
43
+ };
44
+ this.info = (message, flush = false) => {
45
+ this.log(types_1.LogLevel.INFO, message, flush);
46
+ };
47
+ this.debug = (message, flush = false) => {
48
+ this.log(types_1.LogLevel.DEBUG, message, flush);
49
+ };
50
+ this.warn = (message, flush = false) => {
51
+ this.log(types_1.LogLevel.WARN, message, flush);
52
+ };
53
+ this.error = (message, flush = false) => {
54
+ this.log(types_1.LogLevel.ERROR, message, flush);
55
+ };
56
+ this._validate(options);
57
+ this._logger = log4js_1.default.getLogger();
58
+ this._minLevel = this.options.level || types_1.LogLevel.DEBUG;
59
+ switch (this._minLevel) {
60
+ case types_1.LogLevel.DEBUG:
61
+ this._logger.level = 'debug';
62
+ break;
63
+ case types_1.LogLevel.INFO:
64
+ this._logger.level = 'info';
65
+ break;
66
+ case types_1.LogLevel.WARN:
67
+ this._logger.level = 'warn';
68
+ break;
69
+ case types_1.LogLevel.ERROR:
70
+ this._logger.level = 'error';
71
+ break;
72
+ default: {
73
+ throw new Error(`unsupported log level: ${this._minLevel}`);
74
+ }
75
+ }
76
+ this._flusher = new storageFlusher_1.StorageLogFlusher({
77
+ storageFilePath: options.storagePath,
78
+ maxItems: options.maxItems,
79
+ flushInterval: options.flushInterval
80
+ });
81
+ }
82
+ _validate(options) {
83
+ if (lodash_1.default.isEmpty(options)) {
84
+ throw new Error('storage options is empty.');
85
+ }
86
+ if (!options.storagePath) {
87
+ throw new Error('storage path must be provided.');
88
+ }
89
+ const flushInterval = options.flushInterval;
90
+ if (flushInterval !== undefined && !utils_1.isSafePositiveInteger(flushInterval)) {
91
+ throw new Error(`flushInterval: ${flushInterval} is not a positive integer.`);
92
+ }
93
+ const maxItems = options.maxItems;
94
+ if (maxItems !== undefined && !utils_1.isSafePositiveInteger(maxItems)) {
95
+ throw new Error(`maxItems: ${maxItems} is not a positive integer.`);
96
+ }
97
+ }
98
+ }
99
+ exports.ObjectStorageLogger = ObjectStorageLogger;
100
+ //# sourceMappingURL=storageLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storageLogger.js","sourceRoot":"","sources":["../../../src/core/storage/storageLogger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { StoragePathOptions } from '../../types';
2
+ export declare class StoragePath {
3
+ private ctx?;
4
+ constructor(ctx?: StoragePathOptions | undefined);
5
+ private _getUserId;
6
+ private _getAppId;
7
+ private _getNodeId;
8
+ private _getComponentId;
9
+ getUserPath(userId?: string): string;
10
+ getAppPath(appId?: string): string;
11
+ getComponentPath(componentId?: string): string;
12
+ getNodePath(nodeId?: string): string;
13
+ getAppLogPath(userId?: string, appId?: string): string;
14
+ getNodeLogPath(userId?: string, appId?: string, nodeId?: string): string;
15
+ getAppTempDir(userId?: string, appId?: string): string;
16
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StoragePath = void 0;
4
+ const environment_1 = require("../parameter/environment");
5
+ const { userId: streamUserId, appId: streamAppId, nodeId: streamNodeId, componentId: streamComponentId } = environment_1.Environment.stream;
6
+ class StoragePath {
7
+ constructor(ctx) {
8
+ this.ctx = ctx;
9
+ }
10
+ _getUserId(userId) {
11
+ var _a;
12
+ return userId || ((_a = this.ctx) === null || _a === void 0 ? void 0 : _a.userId) || streamUserId;
13
+ }
14
+ _getAppId(appId) {
15
+ var _a;
16
+ return appId || ((_a = this.ctx) === null || _a === void 0 ? void 0 : _a.appId) || streamAppId;
17
+ }
18
+ _getNodeId(nodeId) {
19
+ var _a;
20
+ return nodeId || ((_a = this.ctx) === null || _a === void 0 ? void 0 : _a.nodeId) || streamNodeId;
21
+ }
22
+ _getComponentId(componentId) {
23
+ var _a;
24
+ return componentId || ((_a = this.ctx) === null || _a === void 0 ? void 0 : _a.componentId) || streamComponentId;
25
+ }
26
+ getUserPath(userId) {
27
+ return `studio/${this._getUserId(userId)}`;
28
+ }
29
+ getAppPath(appId) {
30
+ return `${this.getUserPath()}/${this._getAppId(appId)}`;
31
+ }
32
+ getComponentPath(componentId) {
33
+ return `${this.getUserPath()}/component/${this._getComponentId(componentId)}`;
34
+ }
35
+ getNodePath(nodeId) {
36
+ return `${this.getAppPath()}/${this._getNodeId(nodeId)}`;
37
+ }
38
+ getAppLogPath(userId, appId) {
39
+ const userPath = this.getUserPath(userId);
40
+ return `${userPath}/logs/${this._getAppId(appId)}`;
41
+ }
42
+ getNodeLogPath(userId, appId, nodeId) {
43
+ return `${this.getAppLogPath(userId, appId)}/${this._getNodeId(nodeId)}`;
44
+ }
45
+ getAppTempDir(userId, appId) {
46
+ return `${this.getUserPath(userId)}/tmp/${this._getAppId(appId)}`;
47
+ }
48
+ }
49
+ exports.StoragePath = StoragePath;
50
+ //# sourceMappingURL=storagePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storagePath.js","sourceRoot":"","sources":["../../../src/core/storage/storagePath.ts"],"names":[],"mappings":";;;AAAA,0DAAuD;AACvD,MAAM,EACJ,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,iBAAiB,EAC/B,GAAG,yBAAW,CAAC,MAAM,CAAC;AAGvB,MAAa,WAAW;IAEtB,YAAoB,GAAwB;QAAxB,QAAG,GAAH,GAAG,CAAqB;IAAI,CAAC;IAEzC,UAAU,CAAC,MAAe;;QAChC,OAAO,MAAM,KAAI,MAAA,IAAI,CAAC,GAAG,0CAAE,MAAM,CAAA,IAAI,YAAsB,CAAC;IAC9D,CAAC;IAEO,SAAS,CAAC,KAAc;;QAC9B,OAAO,KAAK,KAAI,MAAA,IAAI,CAAC,GAAG,0CAAE,KAAK,CAAA,IAAI,WAAqB,CAAC;IAC3D,CAAC;IAEO,UAAU,CAAC,MAAe;;QAChC,OAAO,MAAM,KAAI,MAAA,IAAI,CAAC,GAAG,0CAAE,MAAM,CAAA,IAAI,YAAsB,CAAC;IAC9D,CAAC;IAEO,eAAe,CAAC,WAAoB;;QAC1C,OAAO,WAAW,KAAI,MAAA,IAAI,CAAC,GAAG,0CAAE,WAAW,CAAA,IAAI,iBAAiB,CAAC;IACnE,CAAC;IAED,WAAW,CAAC,MAAe;QACzB,OAAO,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IAC7C,CAAC;IAED,UAAU,CAAC,KAAc;QACvB,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IAC1D,CAAC;IAED,gBAAgB,CAAC,WAAoB;QACnC,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;IAChF,CAAC;IAED,WAAW,CAAC,MAAe;QACzB,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,aAAa,CAAC,MAAe,EAAE,KAAc;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,GAAG,QAAQ,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IACrD,CAAC;IAED,cAAc,CAAC,MAAe,EAAE,KAAc,EAAE,MAAe;QAC7D,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3E,CAAC;IAED,aAAa,CAAC,MAAe,EAAE,KAAc;QAC3C,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IACpE,CAAC;CACF;AAhDD,kCAgDC"}
@@ -0,0 +1,6 @@
1
+ import type { ObjectStorage } from './storage';
2
+ export declare class Storage {
3
+ private static _instance;
4
+ static get Instance(): ObjectStorage;
5
+ private constructor();
6
+ }
@@ -2,17 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Storage = void 0;
4
4
  const oss_1 = require("./oss");
5
+ const types_1 = require("../../types");
6
+ const environment_1 = require("../parameter/environment");
5
7
  const minio_1 = require("./minio");
6
- const storage_types_1 = require("../types/storage-types");
7
8
  class StorageFactory {
8
9
  getStorage(storageType) {
9
10
  if (!storageType) {
10
11
  throw new Error('missing storageType');
11
12
  }
12
- if (storageType === storage_types_1.StorageType.OSS || storageType === storage_types_1.StorageType.SUANPAN) {
13
+ if (storageType === types_1.StorageType.OSS || storageType === types_1.StorageType.SUANPAN) {
13
14
  return new oss_1.OSSStorage();
14
15
  }
15
- else if (storageType === storage_types_1.StorageType.MINIO) {
16
+ else if (storageType === types_1.StorageType.MINIO) {
16
17
  return new minio_1.MinioStorage();
17
18
  }
18
19
  throw new Error(`unknown storage type ${storageType}.`);
@@ -22,8 +23,7 @@ class Storage {
22
23
  constructor() { }
23
24
  static get Instance() {
24
25
  if (!this._instance) {
25
- const { spConfig } = require('../arguments');
26
- this._instance = new StorageFactory().getStorage(spConfig.storageType);
26
+ this._instance = new StorageFactory().getStorage(environment_1.Environment.spConfig.storageType);
27
27
  }
28
28
  return this._instance;
29
29
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapperStorage.js","sourceRoot":"","sources":["../../../src/core/storage/wrapperStorage.ts"],"names":[],"mappings":";;;AAAA,+BAAmC;AACnC,uCAA0C;AAC1C,0DAAuD;AACvD,mCAAuC;AAEvC,MAAM,cAAc;IAClB,UAAU,CAAC,WAAwB;QACjC,IAAI,CAAC,WAAW,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SAAE;QAC7D,IAAI,WAAW,KAAK,mBAAW,CAAC,GAAG,IAAI,WAAW,KAAK,mBAAW,CAAC,OAAO,EAAE;YAC1E,OAAO,IAAI,gBAAU,EAAE,CAAC;SACzB;aAAM,IAAI,WAAW,KAAK,mBAAW,CAAC,KAAK,EAAE;YAC5C,OAAO,IAAI,oBAAY,EAAE,CAAC;SAC3B;QACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,GAAG,CAAC,CAAC;IAC1D,CAAC;CACF;AACD,MAAa,OAAO;IASlB,gBAAwB,CAAC;IANlB,MAAM,KAAK,QAAQ;QACxB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,EAAE,CAAC,UAAU,CAAC,yBAAW,CAAC,QAAQ,CAAC,WAA0B,CAAC,CAAC;SACnG;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CAEF;AAVD,0BAUC"}
@@ -0,0 +1,18 @@
1
+ /// <reference types="node" />
2
+ import * as events from 'events';
3
+ export declare type FlushOptions = {
4
+ maxItems?: number;
5
+ flushInterval?: number;
6
+ };
7
+ export declare class BufferFlusher extends events.EventEmitter {
8
+ private _buffer;
9
+ private _maxItems;
10
+ private _flushInterval;
11
+ private _flushTimeoutId;
12
+ constructor(options?: FlushOptions);
13
+ get(): string[];
14
+ clear(): void;
15
+ stop(): void;
16
+ add(data: string): void;
17
+ flush(): void;
18
+ }
@@ -0,0 +1,63 @@
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 __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.BufferFlusher = void 0;
23
+ const events = __importStar(require("events"));
24
+ class BufferFlusher extends events.EventEmitter {
25
+ constructor(options = {}) {
26
+ super();
27
+ this._buffer = [];
28
+ this._maxItems = options.maxItems || 1;
29
+ this._flushInterval = options.flushInterval === undefined ? 0 : options.flushInterval;
30
+ this.flush();
31
+ }
32
+ get() { return this._buffer; }
33
+ clear() { this._buffer = []; }
34
+ stop() { clearTimeout(this._flushTimeoutId); }
35
+ add(data) {
36
+ if (data) {
37
+ this._buffer.push(data);
38
+ if (this._buffer.length >= this._maxItems) {
39
+ this.flush();
40
+ }
41
+ }
42
+ }
43
+ flush() {
44
+ this.stop();
45
+ // The timer is the only action that would hold the node-process open.
46
+ // By unref-ing it, the process will exit prior to the timeout callback execution
47
+ this._flushTimeoutId = setTimeout(() => this.flush(), this._flushInterval).unref();
48
+ if (!this._buffer.length) {
49
+ return;
50
+ }
51
+ try {
52
+ this.emit('flush', this._buffer);
53
+ }
54
+ catch (err) {
55
+ // 当事件被触发时,如果没有与该事件绑定的函数的话,该事件会被静默忽略掉
56
+ // 但是如果事件的名称是 error 的话,没有与此相关的事件处理的话,程序就会 crash 退出
57
+ this.emit('error', err);
58
+ }
59
+ this._buffer = [];
60
+ }
61
+ }
62
+ exports.BufferFlusher = BufferFlusher;
63
+ //# sourceMappingURL=flusher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flusher.js","sourceRoot":"","sources":["../../../src/core/utils/flusher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAMjC,MAAa,aAAc,SAAQ,MAAM,CAAC,YAAY;IAOpD,YAAY,UAAwB,EAAE;QACpC,KAAK,EAAE,CAAC;QANF,YAAO,GAAa,EAAE,CAAC;QAO7B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACtF,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,GAAG,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9B,KAAK,KAAK,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;IAC9B,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAE9C,GAAG,CAAC,IAAY;QACd,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE;gBACzC,IAAI,CAAC,KAAK,EAAE,CAAC;aACd;SACF;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,uEAAuE;QACvE,iFAAiF;QACjF,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC;QAEnF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAAE,OAAO;SAAE;QAErC,IAAI;YACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SAClC;QAAC,OAAO,GAAG,EAAE;YACZ,qCAAqC;YACrC,kDAAkD;YAClD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;SACzB;QAED,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;CACF;AA7CD,sCA6CC"}
@@ -0,0 +1,55 @@
1
+ /// <reference types="node" />
2
+ export * from './flusher';
3
+ export * from './number';
4
+ export * from './retry';
5
+ import { Readable as ReadableStream, Stream } from 'stream';
6
+ export declare function generateUUID(): string;
7
+ export declare function getConfig(setting: any): any;
8
+ export declare function tryJSONParse(text: string, fallback?: any): any;
9
+ export declare function isTrue(value: any): boolean;
10
+ export declare const isUseMaster: () => boolean;
11
+ export declare function stringifyIfNecessary(data: any): any;
12
+ export declare function pathEndWith(csvFilePath: any, fileSuffix: any): boolean;
13
+ export declare function readableToString(readable: ReadableStream): Promise<unknown>;
14
+ export declare function leftMerge(leftObj?: {}, rightObj?: {}): {};
15
+ /**
16
+ * insert a string at a specific index
17
+ *
18
+ * @param leftInsert and @param replace cannot be true at the same time
19
+ *
20
+ * by default, @param insertStr will be inserted between index and index + 1,
21
+ * you can set @param leftInsert: true to insert @param insertStr between index-1 and index
22
+ *
23
+ * @param {*} originString
24
+ * @param {*} index
25
+ * @param {*} insertStr
26
+ */
27
+ export declare function insertbyIndex(originString: string, { index, insertStr, leftInsert, replace }: {
28
+ index: any;
29
+ insertStr: any;
30
+ leftInsert?: boolean | undefined;
31
+ replace?: boolean | undefined;
32
+ }): string;
33
+ /**
34
+ * find the nth occurrence of the specified character
35
+ * @param {*} str
36
+ * @param {*} char
37
+ * @param {*} num
38
+ */
39
+ export declare function indexOfNthCharacters(str: string, char: any, num: any): number;
40
+ /**
41
+ * find the nth occurrence of the specified character
42
+ * @param {*} str
43
+ * @param {*} char
44
+ * @param {*} num
45
+ */
46
+ export declare function lastIndexOfNthCharacters(str: string, char: any, num: any): number;
47
+ export declare function signatureV1(secret?: string, data?: string): string;
48
+ export declare function isDesktop(): any;
49
+ export declare function fileExists(path: any): boolean;
50
+ export declare function writeBufToFile(dstPath: any, buf: any): Promise<unknown>;
51
+ export declare function sleep(ms: number): Promise<unknown>;
52
+ export declare function convertStreamToBuffer(stream: Stream): Promise<Buffer>;
53
+ declare type BufferEncoding = 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'latin1' | 'binary' | 'hex';
54
+ export declare function convertStreamToString(stream: Stream, encoding?: BufferEncoding): Promise<string>;
55
+ export declare function convertBufferToStream(buffer: Buffer): Stream;