@bedelightful/upload-sdk 0.0.7

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 (239) hide show
  1. package/LICENSE +8 -0
  2. package/README.md +132 -0
  3. package/dist/es/Exception/BaseException.js +14 -0
  4. package/dist/es/Exception/BaseException.js.map +1 -0
  5. package/dist/es/Exception/DownloadException.js +40 -0
  6. package/dist/es/Exception/DownloadException.js.map +1 -0
  7. package/dist/es/Exception/HttpException.js +50 -0
  8. package/dist/es/Exception/HttpException.js.map +1 -0
  9. package/dist/es/Exception/InitException.js +49 -0
  10. package/dist/es/Exception/InitException.js.map +1 -0
  11. package/dist/es/Exception/UploadException.js +50 -0
  12. package/dist/es/Exception/UploadException.js.map +1 -0
  13. package/dist/es/index.d.ts +867 -0
  14. package/dist/es/index.js +162 -0
  15. package/dist/es/index.js.map +1 -0
  16. package/dist/es/modules/Kodo/defaultUpload.js +38 -0
  17. package/dist/es/modules/Kodo/defaultUpload.js.map +1 -0
  18. package/dist/es/modules/Kodo/index.js +8 -0
  19. package/dist/es/modules/Kodo/index.js.map +1 -0
  20. package/dist/es/modules/Local/index.js +31 -0
  21. package/dist/es/modules/Local/index.js.map +1 -0
  22. package/dist/es/modules/MinIO/MultipartUpload.js +335 -0
  23. package/dist/es/modules/MinIO/MultipartUpload.js.map +1 -0
  24. package/dist/es/modules/MinIO/STSUpload.js +10 -0
  25. package/dist/es/modules/MinIO/STSUpload.js.map +1 -0
  26. package/dist/es/modules/MinIO/defaultUpload.js +124 -0
  27. package/dist/es/modules/MinIO/defaultUpload.js.map +1 -0
  28. package/dist/es/modules/MinIO/index.js +16 -0
  29. package/dist/es/modules/MinIO/index.js.map +1 -0
  30. package/dist/es/modules/OBS/MultipartUpload.js +269 -0
  31. package/dist/es/modules/OBS/MultipartUpload.js.map +1 -0
  32. package/dist/es/modules/OBS/STSUpload.js +71 -0
  33. package/dist/es/modules/OBS/STSUpload.js.map +1 -0
  34. package/dist/es/modules/OBS/defaultUpload.js +59 -0
  35. package/dist/es/modules/OBS/defaultUpload.js.map +1 -0
  36. package/dist/es/modules/OBS/index.js +16 -0
  37. package/dist/es/modules/OBS/index.js.map +1 -0
  38. package/dist/es/modules/OBS/utils/index.js +25 -0
  39. package/dist/es/modules/OBS/utils/index.js.map +1 -0
  40. package/dist/es/modules/OSS/MultipartUpload.js +232 -0
  41. package/dist/es/modules/OSS/MultipartUpload.js.map +1 -0
  42. package/dist/es/modules/OSS/STSUpload.js +48 -0
  43. package/dist/es/modules/OSS/STSUpload.js.map +1 -0
  44. package/dist/es/modules/OSS/defaultUpload.js +53 -0
  45. package/dist/es/modules/OSS/defaultUpload.js.map +1 -0
  46. package/dist/es/modules/OSS/index.js +16 -0
  47. package/dist/es/modules/OSS/index.js.map +1 -0
  48. package/dist/es/modules/OSS/utils/helper.js +137 -0
  49. package/dist/es/modules/OSS/utils/helper.js.map +1 -0
  50. package/dist/es/modules/OSS/utils/signature.js +96 -0
  51. package/dist/es/modules/OSS/utils/signature.js.map +1 -0
  52. package/dist/es/modules/TOS/MultipartUpload.js +288 -0
  53. package/dist/es/modules/TOS/MultipartUpload.js.map +1 -0
  54. package/dist/es/modules/TOS/STSUpload.js +92 -0
  55. package/dist/es/modules/TOS/STSUpload.js.map +1 -0
  56. package/dist/es/modules/TOS/defaultUpload.js +65 -0
  57. package/dist/es/modules/TOS/defaultUpload.js.map +1 -0
  58. package/dist/es/modules/TOS/index.js +16 -0
  59. package/dist/es/modules/TOS/index.js.map +1 -0
  60. package/dist/es/modules/TOS/utils/TosClientError.js +15 -0
  61. package/dist/es/modules/TOS/utils/TosClientError.js.map +1 -0
  62. package/dist/es/modules/TOS/utils/index.js +38 -0
  63. package/dist/es/modules/TOS/utils/index.js.map +1 -0
  64. package/dist/es/modules/TOS/utils/signatureV4.js +269 -0
  65. package/dist/es/modules/TOS/utils/signatureV4.js.map +1 -0
  66. package/dist/es/modules/TOS/utils/signatureV4Credentials.js +21 -0
  67. package/dist/es/modules/TOS/utils/signatureV4Credentials.js.map +1 -0
  68. package/dist/es/modules/TOS/utils/universal/crypto.browser.js +56 -0
  69. package/dist/es/modules/TOS/utils/universal/crypto.browser.js.map +1 -0
  70. package/dist/es/modules/TOS/utils/utils.js +18 -0
  71. package/dist/es/modules/TOS/utils/utils.js.map +1 -0
  72. package/dist/es/modules/index.js +20 -0
  73. package/dist/es/modules/index.js.map +1 -0
  74. package/dist/es/types/Kodo.js +1 -0
  75. package/dist/es/types/Kodo.js.map +1 -0
  76. package/dist/es/types/Local.js +1 -0
  77. package/dist/es/types/Local.js.map +1 -0
  78. package/dist/es/types/MinIO.js +1 -0
  79. package/dist/es/types/MinIO.js.map +1 -0
  80. package/dist/es/types/OBS.js +8 -0
  81. package/dist/es/types/OBS.js.map +1 -0
  82. package/dist/es/types/OSS.js +1 -0
  83. package/dist/es/types/OSS.js.map +1 -0
  84. package/dist/es/types/TOS.js +1 -0
  85. package/dist/es/types/TOS.js.map +1 -0
  86. package/dist/es/types/error.js +1 -0
  87. package/dist/es/types/error.js.map +1 -0
  88. package/dist/es/types/index.js +13 -0
  89. package/dist/es/types/index.js.map +1 -0
  90. package/dist/es/types/log.js +1 -0
  91. package/dist/es/types/log.js.map +1 -0
  92. package/dist/es/types/request.js +1 -0
  93. package/dist/es/types/request.js.map +1 -0
  94. package/dist/es/utils/EventEmitter.js +32 -0
  95. package/dist/es/utils/EventEmitter.js.map +1 -0
  96. package/dist/es/utils/UploadManger.js +276 -0
  97. package/dist/es/utils/UploadManger.js.map +1 -0
  98. package/dist/es/utils/UploadTask.js +13 -0
  99. package/dist/es/utils/UploadTask.js.map +1 -0
  100. package/dist/es/utils/checkDataFormat.js +41 -0
  101. package/dist/es/utils/checkDataFormat.js.map +1 -0
  102. package/dist/es/utils/global.js +83 -0
  103. package/dist/es/utils/global.js.map +1 -0
  104. package/dist/es/utils/index.js +20 -0
  105. package/dist/es/utils/index.js.map +1 -0
  106. package/dist/es/utils/logPubSub.js +59 -0
  107. package/dist/es/utils/logPubSub.js.map +1 -0
  108. package/dist/es/utils/multipart.js +159 -0
  109. package/dist/es/utils/multipart.js.map +1 -0
  110. package/dist/es/utils/nanoid.js +10 -0
  111. package/dist/es/utils/nanoid.js.map +1 -0
  112. package/dist/es/utils/regExpUtil.js +21 -0
  113. package/dist/es/utils/regExpUtil.js.map +1 -0
  114. package/dist/es/utils/request.js +234 -0
  115. package/dist/es/utils/request.js.map +1 -0
  116. package/dist/es/utils/response.js +20 -0
  117. package/dist/es/utils/response.js.map +1 -0
  118. package/dist/index.d.ts +867 -0
  119. package/dist/index.js +60913 -0
  120. package/dist/index.js.map +1 -0
  121. package/dist/index.min.js +130 -0
  122. package/dist/index.min.js.map +1 -0
  123. package/dist/lib/Exception/BaseException.js +37 -0
  124. package/dist/lib/Exception/BaseException.js.map +1 -0
  125. package/dist/lib/Exception/DownloadException.js +65 -0
  126. package/dist/lib/Exception/DownloadException.js.map +1 -0
  127. package/dist/lib/Exception/HttpException.js +75 -0
  128. package/dist/lib/Exception/HttpException.js.map +1 -0
  129. package/dist/lib/Exception/InitException.js +73 -0
  130. package/dist/lib/Exception/InitException.js.map +1 -0
  131. package/dist/lib/Exception/UploadException.js +75 -0
  132. package/dist/lib/Exception/UploadException.js.map +1 -0
  133. package/dist/lib/index.d.cts +867 -0
  134. package/dist/lib/index.js +203 -0
  135. package/dist/lib/index.js.map +1 -0
  136. package/dist/lib/modules/Kodo/defaultUpload.js +61 -0
  137. package/dist/lib/modules/Kodo/defaultUpload.js.map +1 -0
  138. package/dist/lib/modules/Kodo/index.js +28 -0
  139. package/dist/lib/modules/Kodo/index.js.map +1 -0
  140. package/dist/lib/modules/Local/index.js +50 -0
  141. package/dist/lib/modules/Local/index.js.map +1 -0
  142. package/dist/lib/modules/MinIO/MultipartUpload.js +357 -0
  143. package/dist/lib/modules/MinIO/MultipartUpload.js.map +1 -0
  144. package/dist/lib/modules/MinIO/STSUpload.js +33 -0
  145. package/dist/lib/modules/MinIO/STSUpload.js.map +1 -0
  146. package/dist/lib/modules/MinIO/defaultUpload.js +158 -0
  147. package/dist/lib/modules/MinIO/defaultUpload.js.map +1 -0
  148. package/dist/lib/modules/MinIO/index.js +35 -0
  149. package/dist/lib/modules/MinIO/index.js.map +1 -0
  150. package/dist/lib/modules/OBS/MultipartUpload.js +296 -0
  151. package/dist/lib/modules/OBS/MultipartUpload.js.map +1 -0
  152. package/dist/lib/modules/OBS/STSUpload.js +104 -0
  153. package/dist/lib/modules/OBS/STSUpload.js.map +1 -0
  154. package/dist/lib/modules/OBS/defaultUpload.js +88 -0
  155. package/dist/lib/modules/OBS/defaultUpload.js.map +1 -0
  156. package/dist/lib/modules/OBS/index.js +45 -0
  157. package/dist/lib/modules/OBS/index.js.map +1 -0
  158. package/dist/lib/modules/OBS/utils/index.js +49 -0
  159. package/dist/lib/modules/OBS/utils/index.js.map +1 -0
  160. package/dist/lib/modules/OSS/MultipartUpload.js +259 -0
  161. package/dist/lib/modules/OSS/MultipartUpload.js.map +1 -0
  162. package/dist/lib/modules/OSS/STSUpload.js +71 -0
  163. package/dist/lib/modules/OSS/STSUpload.js.map +1 -0
  164. package/dist/lib/modules/OSS/defaultUpload.js +76 -0
  165. package/dist/lib/modules/OSS/defaultUpload.js.map +1 -0
  166. package/dist/lib/modules/OSS/index.js +35 -0
  167. package/dist/lib/modules/OSS/index.js.map +1 -0
  168. package/dist/lib/modules/OSS/utils/helper.js +173 -0
  169. package/dist/lib/modules/OSS/utils/helper.js.map +1 -0
  170. package/dist/lib/modules/OSS/utils/signature.js +132 -0
  171. package/dist/lib/modules/OSS/utils/signature.js.map +1 -0
  172. package/dist/lib/modules/TOS/MultipartUpload.js +315 -0
  173. package/dist/lib/modules/TOS/MultipartUpload.js.map +1 -0
  174. package/dist/lib/modules/TOS/STSUpload.js +125 -0
  175. package/dist/lib/modules/TOS/STSUpload.js.map +1 -0
  176. package/dist/lib/modules/TOS/defaultUpload.js +94 -0
  177. package/dist/lib/modules/TOS/defaultUpload.js.map +1 -0
  178. package/dist/lib/modules/TOS/index.js +45 -0
  179. package/dist/lib/modules/TOS/index.js.map +1 -0
  180. package/dist/lib/modules/TOS/utils/TosClientError.js +34 -0
  181. package/dist/lib/modules/TOS/utils/TosClientError.js.map +1 -0
  182. package/dist/lib/modules/TOS/utils/index.js +64 -0
  183. package/dist/lib/modules/TOS/utils/index.js.map +1 -0
  184. package/dist/lib/modules/TOS/utils/signatureV4.js +294 -0
  185. package/dist/lib/modules/TOS/utils/signatureV4.js.map +1 -0
  186. package/dist/lib/modules/TOS/utils/signatureV4Credentials.js +44 -0
  187. package/dist/lib/modules/TOS/utils/signatureV4Credentials.js.map +1 -0
  188. package/dist/lib/modules/TOS/utils/universal/crypto.browser.js +93 -0
  189. package/dist/lib/modules/TOS/utils/universal/crypto.browser.js.map +1 -0
  190. package/dist/lib/modules/TOS/utils/utils.js +42 -0
  191. package/dist/lib/modules/TOS/utils/utils.js.map +1 -0
  192. package/dist/lib/modules/index.js +50 -0
  193. package/dist/lib/modules/index.js.map +1 -0
  194. package/dist/lib/types/Kodo.js +17 -0
  195. package/dist/lib/types/Kodo.js.map +1 -0
  196. package/dist/lib/types/Local.js +17 -0
  197. package/dist/lib/types/Local.js.map +1 -0
  198. package/dist/lib/types/MinIO.js +17 -0
  199. package/dist/lib/types/MinIO.js.map +1 -0
  200. package/dist/lib/types/OBS.js +32 -0
  201. package/dist/lib/types/OBS.js.map +1 -0
  202. package/dist/lib/types/OSS.js +17 -0
  203. package/dist/lib/types/OSS.js.map +1 -0
  204. package/dist/lib/types/TOS.js +17 -0
  205. package/dist/lib/types/TOS.js.map +1 -0
  206. package/dist/lib/types/error.js +17 -0
  207. package/dist/lib/types/error.js.map +1 -0
  208. package/dist/lib/types/index.js +37 -0
  209. package/dist/lib/types/index.js.map +1 -0
  210. package/dist/lib/types/log.js +17 -0
  211. package/dist/lib/types/log.js.map +1 -0
  212. package/dist/lib/types/request.js +17 -0
  213. package/dist/lib/types/request.js.map +1 -0
  214. package/dist/lib/utils/EventEmitter.js +51 -0
  215. package/dist/lib/utils/EventEmitter.js.map +1 -0
  216. package/dist/lib/utils/UploadManger.js +309 -0
  217. package/dist/lib/utils/UploadManger.js.map +1 -0
  218. package/dist/lib/utils/UploadTask.js +32 -0
  219. package/dist/lib/utils/UploadTask.js.map +1 -0
  220. package/dist/lib/utils/checkDataFormat.js +70 -0
  221. package/dist/lib/utils/checkDataFormat.js.map +1 -0
  222. package/dist/lib/utils/global.js +106 -0
  223. package/dist/lib/utils/global.js.map +1 -0
  224. package/dist/lib/utils/index.js +44 -0
  225. package/dist/lib/utils/index.js.map +1 -0
  226. package/dist/lib/utils/logPubSub.js +78 -0
  227. package/dist/lib/utils/logPubSub.js.map +1 -0
  228. package/dist/lib/utils/multipart.js +197 -0
  229. package/dist/lib/utils/multipart.js.map +1 -0
  230. package/dist/lib/utils/nanoid.js +33 -0
  231. package/dist/lib/utils/nanoid.js.map +1 -0
  232. package/dist/lib/utils/regExpUtil.js +44 -0
  233. package/dist/lib/utils/regExpUtil.js.map +1 -0
  234. package/dist/lib/utils/request.js +264 -0
  235. package/dist/lib/utils/request.js.map +1 -0
  236. package/dist/lib/utils/response.js +43 -0
  237. package/dist/lib/utils/response.js.map +1 -0
  238. package/dist/package.json +120 -0
  239. package/package.json +120 -0
package/LICENSE ADDED
@@ -0,0 +1,8 @@
1
+ Copyright 2026 BE DELIGHTFUL
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8
+
package/README.md ADDED
@@ -0,0 +1,132 @@
1
+ # Upload SDK
2
+
3
+ Unified upload toolkit supporting Aliyun OSS, Volcengine TOS, and Huawei OBS, with planned support for Tencent COS, Qiniu Kodo, Baidu BOS, NetEase NOS, and more.
4
+
5
+ ## Quick Start
6
+
7
+ 1) Install @bedelightful/upload-sdk
8
+
9
+ ```bash
10
+ npm install @bedelightful/upload-sdk
11
+ ```
12
+
13
+ 2) Upload a file with upload-sdk (basic example):
14
+
15
+ ```ts
16
+ const uploadTask = uploadSDK.upload({
17
+ url: "your back-end interface",
18
+ method: "GET",
19
+ file: yourFile, // File
20
+ fileName: yourFileName, // File name
21
+ headers: {
22
+ "request-id": Date.now(),
23
+ },
24
+ });
25
+
26
+ if (uploadTask.success) {
27
+ uploadTask.success((res: result) =>
28
+ console.log(`Upload complete: ${JSON.stringify(res)}`),
29
+ );
30
+ }
31
+
32
+ if (uploadTask.progress) {
33
+ uploadTask.progress((percent, loaded, total) =>
34
+ console.log(`File upload progress: ${percent}%`, loaded, total),
35
+ );
36
+ }
37
+
38
+ if (uploadTask.fail) {
39
+ uploadTask.fail((response) => console.log("- fail response -", response));
40
+ }
41
+
42
+ // ---------- Single upload task ----------
43
+ // Cancel upload
44
+ uploadTask.cancel();
45
+ // Pause upload
46
+ uploadTask.pause();
47
+ // Resume upload
48
+ uploadTask.resume();
49
+ ```
50
+
51
+ ## Upload Flow
52
+
53
+ ```mermaid
54
+ ---
55
+ title: Upload SDK Flow
56
+ ---
57
+
58
+ sequenceDiagram
59
+ Frontend-->>UploadSdk: Provide credential config
60
+ UploadSdk->>AppBackend: Send request for temporary upload credential
61
+ AppBackend->>BaseService: Add required params (platform, bucket, etc.) and request temporary credential
62
+ BaseService->>AppBackend: Return temporary credential
63
+ AppBackend-->>UploadSdk: Return temporary credential
64
+ UploadSdk-->>CloudPlatform: Upload file
65
+ CloudPlatform-->>BaseService: Trigger upload callback (Aliyun)
66
+ CloudPlatform-->>UploadSdk: Upload succeeded
67
+ UploadSdk-->>Frontend: Return platform/path parameters
68
+ Frontend-->>AppBackend: Persist path and related info
69
+ ```
70
+
71
+ Note: Volcengine does not currently support upload callbacks, but the flow remains unchanged.
72
+
73
+ ## Performance Features
74
+
75
+ ### Code splitting and on-demand loading
76
+
77
+ Starting from version x.x.x, upload-sdk supports code splitting and on-demand loading of platform modules. Adapters are loaded only when needed, reducing initial bundle size and improving startup performance.
78
+
79
+ #### Usage
80
+
81
+ Asynchronous import (recommended):
82
+
83
+ ```typescript
84
+ import { Upload, loadPlatformModule, PlatformType } from "@delightful/upload-sdk";
85
+
86
+ // Preload specific platform modules (optional)
87
+ async function preloadModules() {
88
+ // Load only required platform modules
89
+ await loadPlatformModule(PlatformType.ALiYun);
90
+ console.log("Aliyun module loaded");
91
+ }
92
+
93
+ // Or auto-load during upload
94
+ const upload = new Upload();
95
+ upload.upload({
96
+ url: "your-api-url",
97
+ method: "POST",
98
+ file: yourFile,
99
+ fileName: "example.jpg",
100
+ // ... other options
101
+ });
102
+ ```
103
+
104
+ Compatibility mode (backward-compatible):
105
+
106
+ ```typescript
107
+ import { Upload } from "@delightful/upload-sdk";
108
+
109
+ // Continue using the original approach; SDK will lazy-load internally
110
+ const upload = new Upload();
111
+ // ... other code unchanged
112
+ ```
113
+
114
+ ## Supported Platforms
115
+
116
+ | Platform | Status | Notes |
117
+ | ------------ | ---------------- | ------------------------------------------------ |
118
+ | Aliyun OSS | ✅ Supported | Multipart upload, checkpoint resume supported |
119
+ | Volcengine TOS | ✅ Supported | Multipart upload, checkpoint resume supported |
120
+ | Huawei OBS | ✅ Supported | Multipart upload, checkpoint resume supported |
121
+ | Qiniu Kodo | ✅ Supported | Basic upload supported |
122
+ | Tencent COS | 🔄 Planned | In development |
123
+ | Baidu BOS | 🔄 Planned | In development |
124
+ | NetEase NOS | 🔄 Planned | In development |
125
+ | MinIO/S3 | ✅ Supported | Multipart upload, checkpoint resume supported |
126
+ | Azure Blob | 🔄 Planned | In development |
127
+
128
+ > For platforms not yet supported, please open an issue or PR to help us prioritize.
129
+
130
+
131
+
132
+
@@ -0,0 +1,14 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const _BaseException = class _BaseException extends Error {
4
+ constructor(message) {
5
+ super();
6
+ this.message = `[Uploader] ${message}`;
7
+ }
8
+ };
9
+ __name(_BaseException, "BaseException");
10
+ let BaseException = _BaseException;
11
+ export {
12
+ BaseException
13
+ };
14
+ //# sourceMappingURL=BaseException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Exception/BaseException.ts"],"sourcesContent":["export class BaseException extends Error {\n\tconstructor(message: string) {\n\t\tsuper()\n\t\tthis.message = `[Uploader] ${message}`\n\t}\n}\n\n\n\n\n"],"mappings":";;AAAQ,MAAM,iBAAN,MAAM,uBAAsB,MAAM;AAAA,EACzC,YAAY,SAAiB;AAC5B,UAAM;AACN,SAAK,UAAU,cAAc,OAAO;AAAA,EACrC;AACD;AAL0C;AAAlC,IAAM,gBAAN;","names":[]}
@@ -0,0 +1,40 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { BaseException } from "./BaseException";
4
+ var DownloadExceptionCode = /* @__PURE__ */ ((DownloadExceptionCode2) => {
5
+ DownloadExceptionCode2["DOWNLOAD_UNKNOWN_ERROR"] = "DOWNLOAD_UNKNOWN_ERROR";
6
+ DownloadExceptionCode2["CODE_IS_NOT_1000"] = "CODE_IS_NOT_1000";
7
+ DownloadExceptionCode2["DOWNLOAD_REQUEST_ERROR"] = "DOWNLOAD_REQUEST_ERROR";
8
+ return DownloadExceptionCode2;
9
+ })(DownloadExceptionCode || {});
10
+ const DownloadExceptionMapping = {
11
+ DOWNLOAD_UNKNOWN_ERROR: () => ({
12
+ status: 3e3,
13
+ message: "An unknown error occurred on the download"
14
+ }),
15
+ CODE_IS_NOT_1000: (message) => ({
16
+ status: 3001,
17
+ message: `The content code returned is not 1000, message: ${message}`
18
+ }),
19
+ DOWNLOAD_REQUEST_ERROR: (status) => ({
20
+ status: 3002,
21
+ message: `Download request error, status: ${status}`
22
+ })
23
+ };
24
+ const _DownloadException = class _DownloadException extends BaseException {
25
+ constructor(errType, ...args) {
26
+ const e = DownloadExceptionMapping[errType] || DownloadExceptionMapping.DOWNLOAD_UNKNOWN_ERROR;
27
+ const { status, message } = e.apply(null, [...args]);
28
+ super(message);
29
+ this.name = "DownloadException";
30
+ this.status = status;
31
+ }
32
+ };
33
+ __name(_DownloadException, "DownloadException");
34
+ let DownloadException = _DownloadException;
35
+ export {
36
+ DownloadException,
37
+ DownloadExceptionCode,
38
+ DownloadExceptionMapping
39
+ };
40
+ //# sourceMappingURL=DownloadException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Exception/DownloadException.ts"],"sourcesContent":["import type { ErrorType } from \"../types/error\"\nimport { BaseException } from \"./BaseException\"\n\nexport const enum DownloadExceptionCode {\n\tDOWNLOAD_UNKNOWN_ERROR = \"DOWNLOAD_UNKNOWN_ERROR\",\n\tCODE_IS_NOT_1000 = \"CODE_IS_NOT_1000\",\n\tDOWNLOAD_REQUEST_ERROR = \"DOWNLOAD_REQUEST_ERROR\",\n}\n\n/** Download API exception classification */\nexport const DownloadExceptionMapping: Record<\n\tstring,\n\t(...args: any[]) => ErrorType.BaseExceptionWithStatus\n> = {\n\tDOWNLOAD_UNKNOWN_ERROR: () => ({\n\t\tstatus: 3000,\n\t\tmessage: \"An unknown error occurred on the download\",\n\t}),\n\tCODE_IS_NOT_1000: (message: string) => ({\n\t\tstatus: 3001,\n\t\tmessage: `The content code returned is not 1000, message: ${message}`,\n\t}),\n\tDOWNLOAD_REQUEST_ERROR: (status: number) => ({\n\t\tstatus: 3002,\n\t\tmessage: `Download request error, status: ${status}`,\n\t}),\n}\n\n/**\n * Download API exceptions\n * Exceptions Handler.\n */\nexport class DownloadException extends BaseException {\n\tpublic readonly status: number\n\n\tpublic readonly name = \"DownloadException\"\n\n\tconstructor(errType: keyof typeof DownloadExceptionMapping, ...args: any[]) {\n\t\tconst e =\n\t\t\tDownloadExceptionMapping[errType] || DownloadExceptionMapping.DOWNLOAD_UNKNOWN_ERROR\n\t\tconst { status, message } = e.apply(null, [...args])\n\t\tsuper(message)\n\t\tthis.status = status\n\t}\n}\n\n\n\n\n"],"mappings":";;AACA,SAAS,qBAAqB;AAEvB,IAAW,wBAAX,kBAAWA,2BAAX;AACN,EAAAA,uBAAA,4BAAyB;AACzB,EAAAA,uBAAA,sBAAmB;AACnB,EAAAA,uBAAA,4BAAyB;AAHR,SAAAA;AAAA,GAAA;AAOX,MAAM,2BAGT;AAAA,EACH,wBAAwB,OAAO;AAAA,IAC9B,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,kBAAkB,CAAC,aAAqB;AAAA,IACvC,QAAQ;AAAA,IACR,SAAS,mDAAmD,OAAO;AAAA,EACpE;AAAA,EACA,wBAAwB,CAAC,YAAoB;AAAA,IAC5C,QAAQ;AAAA,IACR,SAAS,mCAAmC,MAAM;AAAA,EACnD;AACD;AAMO,MAAM,qBAAN,MAAM,2BAA0B,cAAc;AAAA,EAKpD,YAAY,YAAmD,MAAa;AAC3E,UAAM,IACL,yBAAyB,OAAO,KAAK,yBAAyB;AAC/D,UAAM,EAAE,QAAQ,QAAQ,IAAI,EAAE,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;AACnD,UAAM,OAAO;AANd,SAAgB,OAAO;AAOtB,SAAK,SAAS;AAAA,EACf;AACD;AAZqD;AAA9C,IAAM,oBAAN;","names":["DownloadExceptionCode"]}
@@ -0,0 +1,50 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { BaseException } from "./BaseException";
4
+ var HttpExceptionCode = /* @__PURE__ */ ((HttpExceptionCode2) => {
5
+ HttpExceptionCode2["HTTP_UNKNOWN_ERROR"] = "HTTP_UNKNOWN_ERROR";
6
+ HttpExceptionCode2["REQUEST_FAILED_WITH_STATUS_CODE"] = "REQUEST_FAILED_WITH_STATUS_CODE";
7
+ HttpExceptionCode2["REQUEST_IS_CANCEL"] = "REQUEST_IS_CANCEL";
8
+ HttpExceptionCode2["REQUEST_IS_PAUSE"] = "REQUEST_IS_PAUSE";
9
+ HttpExceptionCode2["REQUEST_NO_XHR_OBJ_AVAILABLE"] = "REQUEST_NO_XHR_OBJ_AVAILABLE";
10
+ return HttpExceptionCode2;
11
+ })(HttpExceptionCode || {});
12
+ const HttpExceptionMapping = {
13
+ REQUEST_UNKNOWN_ERROR: () => ({
14
+ status: 0,
15
+ message: "An unknown error occurred on the request"
16
+ }),
17
+ REQUEST_NO_XHR_OBJ_AVAILABLE: () => ({
18
+ status: 0,
19
+ message: "No XHR object available"
20
+ }),
21
+ REQUEST_FAILED_WITH_STATUS_CODE: (status) => ({
22
+ status,
23
+ message: `{status: ${status}, message: Request failed}`
24
+ }),
25
+ REQUEST_IS_CANCEL: () => ({
26
+ status: 5001,
27
+ message: "The request was canceled"
28
+ }),
29
+ REQUEST_IS_PAUSE: () => ({
30
+ status: 5002,
31
+ message: "The request was paused"
32
+ })
33
+ };
34
+ const _HttpException = class _HttpException extends BaseException {
35
+ constructor(errType, ...args) {
36
+ const e = HttpExceptionMapping[errType] || HttpExceptionMapping.REQUEST_UNKNOWN_ERROR;
37
+ const { status, message } = e.apply(null, [...args]);
38
+ super(message);
39
+ this.name = "HttpException";
40
+ this.status = status;
41
+ }
42
+ };
43
+ __name(_HttpException, "HttpException");
44
+ let HttpException = _HttpException;
45
+ export {
46
+ HttpException,
47
+ HttpExceptionCode,
48
+ HttpExceptionMapping
49
+ };
50
+ //# sourceMappingURL=HttpException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Exception/HttpException.ts"],"sourcesContent":["import type { ErrorType } from \"../types/error\"\nimport { BaseException } from \"./BaseException\"\n\nexport const enum HttpExceptionCode {\n\tHTTP_UNKNOWN_ERROR = \"HTTP_UNKNOWN_ERROR\",\n\tREQUEST_FAILED_WITH_STATUS_CODE = \"REQUEST_FAILED_WITH_STATUS_CODE\",\n\tREQUEST_IS_CANCEL = \"REQUEST_IS_CANCEL\",\n\tREQUEST_IS_PAUSE = \"REQUEST_IS_PAUSE\",\n\tREQUEST_NO_XHR_OBJ_AVAILABLE = \"REQUEST_NO_XHR_OBJ_AVAILABLE\",\n}\n\n/** HTTP exception classification */\nexport const HttpExceptionMapping: Record<\n\tstring,\n\t(...args: any[]) => ErrorType.BaseExceptionWithStatus\n> = {\n\tREQUEST_UNKNOWN_ERROR: () => ({\n\t\tstatus: 0,\n\t\tmessage: \"An unknown error occurred on the request\",\n\t}),\n\tREQUEST_NO_XHR_OBJ_AVAILABLE: () => ({\n\t\tstatus: 0,\n\t\tmessage: \"No XHR object available\",\n\t}),\n\tREQUEST_FAILED_WITH_STATUS_CODE: (status: number) => ({\n\t\tstatus,\n\t\tmessage: `{status: ${status}, message: Request failed}`,\n\t}),\n\tREQUEST_IS_CANCEL: () => ({\n\t\tstatus: 5001,\n\t\tmessage: \"The request was canceled\",\n\t}),\n\tREQUEST_IS_PAUSE: () => ({\n\t\tstatus: 5002,\n\t\tmessage: \"The request was paused\",\n\t}),\n}\n\n/**\n * HTTP general request exceptions handler.\n */\nexport class HttpException extends BaseException {\n\tpublic readonly status: number\n\n\tpublic readonly name = \"HttpException\"\n\n\tconstructor(errType: keyof typeof HttpExceptionMapping, ...args: any[]) {\n\t\tconst e = HttpExceptionMapping[errType] || HttpExceptionMapping.REQUEST_UNKNOWN_ERROR\n\t\tconst { status, message } = e.apply(null, [...args])\n\t\tsuper(message)\n\t\tthis.status = status\n\t}\n}\n\n\n\n\n"],"mappings":";;AACA,SAAS,qBAAqB;AAEvB,IAAW,oBAAX,kBAAWA,uBAAX;AACN,EAAAA,mBAAA,wBAAqB;AACrB,EAAAA,mBAAA,qCAAkC;AAClC,EAAAA,mBAAA,uBAAoB;AACpB,EAAAA,mBAAA,sBAAmB;AACnB,EAAAA,mBAAA,kCAA+B;AALd,SAAAA;AAAA,GAAA;AASX,MAAM,uBAGT;AAAA,EACH,uBAAuB,OAAO;AAAA,IAC7B,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,8BAA8B,OAAO;AAAA,IACpC,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,iCAAiC,CAAC,YAAoB;AAAA,IACrD;AAAA,IACA,SAAS,YAAY,MAAM;AAAA,EAC5B;AAAA,EACA,mBAAmB,OAAO;AAAA,IACzB,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,kBAAkB,OAAO;AAAA,IACxB,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AACD;AAKO,MAAM,iBAAN,MAAM,uBAAsB,cAAc;AAAA,EAKhD,YAAY,YAA+C,MAAa;AACvE,UAAM,IAAI,qBAAqB,OAAO,KAAK,qBAAqB;AAChE,UAAM,EAAE,QAAQ,QAAQ,IAAI,EAAE,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;AACnD,UAAM,OAAO;AALd,SAAgB,OAAO;AAMtB,SAAK,SAAS;AAAA,EACf;AACD;AAXiD;AAA1C,IAAM,gBAAN;","names":["HttpExceptionCode"]}
@@ -0,0 +1,49 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { BaseException } from "./BaseException";
4
+ var InitExceptionCode = /* @__PURE__ */ ((InitExceptionCode2) => {
5
+ InitExceptionCode2["INIT_UNKNOWN_ERROR"] = "INIT_UNKNOWN_ERROR";
6
+ InitExceptionCode2["MISSING_PARAMS_FOR_UPLOAD"] = "MISSING_PARAMS_FOR_UPLOAD";
7
+ InitExceptionCode2["UPLOAD_API_OPTION_PARTSIZE_MUST_INT"] = "UPLOAD_API_OPTION_PARTSIZE_MUST_INT";
8
+ InitExceptionCode2["UPLOAD_API_OPTION_PARTSIZE_IS_SMALL"] = "UPLOAD_API_OPTION_PARTSIZE_IS_SMALL";
9
+ InitExceptionCode2["UPLOAD_IS_NO_SUPPORT_THIS_PLATFORM"] = "UPLOAD_IS_NO_SUPPORT_THIS_PLATFORM";
10
+ InitExceptionCode2["UPLOAD_FILE_TO_BIG"] = "UPLOAD_FILE_TO_BIG";
11
+ InitExceptionCode2["UPLOAD_IS_NO_SUPPORT_THIS_FILE_FORMAT"] = "UPLOAD_IS_NO_SUPPORT_THIS_FILE_FORMAT";
12
+ InitExceptionCode2["REUPLOAD_IS_FAILED"] = "REUPLOAD_IS_FAILED";
13
+ InitExceptionCode2["UPLOAD_HEAD_NO_EXPOSE_ETAG"] = "UPLOAD_HEAD_NO_EXPOSE_ETAG";
14
+ InitExceptionCode2["UPLOAD_REQUEST_CREDENTIALS_ERROR"] = "UPLOAD_REQUEST_CREDENTIALS_ERROR";
15
+ InitExceptionCode2["MISSING_CREDENTIALS_PARAMS_FOR_UPLOAD"] = "MISSING_CREDENTIALS_PARAMS_FOR_UPLOAD";
16
+ InitExceptionCode2["UPLOAD_FILENAME_EXIST_SPECIAL_CHAR"] = "UPLOAD_FILENAME_EXIST_SPECIAL_CHAR";
17
+ return InitExceptionCode2;
18
+ })(InitExceptionCode || {});
19
+ const InitExceptionMapping = {
20
+ INIT_UNKNOWN_ERROR: () => `An unknown error occurred in the initialization api`,
21
+ MISSING_PARAMS_FOR_UPLOAD: (...args) => `${args.join(", ")} must be provided for upload`,
22
+ UPLOAD_API_OPTION_PARTSIZE_MUST_INT: () => "partSize must be int number",
23
+ UPLOAD_API_OPTION_PARTSIZE_IS_SMALL: (minPartSize) => `partSize must not be smaller than ${minPartSize}`,
24
+ UPLOAD_IS_NO_SUPPORT_THIS_PLATFORM: (platform) => `${platform} is not supported`,
25
+ UPLOAD_FILE_TO_BIG: (fileName) => `${fileName} failed to upload. The file size cannot exceed 5 GB`,
26
+ UPLOAD_IS_NO_SUPPORT_THIS_FILE_FORMAT: () => "Must provide Blob/File for upload.",
27
+ REUPLOAD_IS_FAILED: () => "Please re-check the request upload credentials configuration. The credentials information has expired",
28
+ UPLOAD_HEAD_NO_EXPOSE_ETAG: () => "Please set the etag of expose-headers in OSS \n https://help.aliyun.com/document_detail/64041.html",
29
+ UPLOAD_REQUEST_CREDENTIALS_ERROR: (message) => `An error occurred requesting file service temporary credentials, message\uFF1A ${message}`,
30
+ MISSING_CREDENTIALS_PARAMS_FOR_UPLOAD: (platform, ...args) => `${platform.toUpperCase()} - The credential field must have the following fields, ${args.join(
31
+ ", "
32
+ )}`,
33
+ UPLOAD_FILENAME_EXIST_SPECIAL_CHAR: (fileName) => `The filename cannot contain special characters, fileName: ${fileName}`
34
+ };
35
+ const _InitException = class _InitException extends BaseException {
36
+ constructor(errType, ...args) {
37
+ const e = InitExceptionMapping[errType] || InitExceptionMapping.INIT_UNKNOWN_ERROR;
38
+ const message = e?.apply(null, [...args]) || "";
39
+ super(message);
40
+ this.name = "InitException";
41
+ }
42
+ };
43
+ __name(_InitException, "InitException");
44
+ let InitException = _InitException;
45
+ export {
46
+ InitException,
47
+ InitExceptionCode
48
+ };
49
+ //# sourceMappingURL=InitException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Exception/InitException.ts"],"sourcesContent":["import { BaseException } from \"./BaseException\"\n\nexport const enum InitExceptionCode {\n\tINIT_UNKNOWN_ERROR = \"INIT_UNKNOWN_ERROR\",\n\tMISSING_PARAMS_FOR_UPLOAD = \"MISSING_PARAMS_FOR_UPLOAD\",\n\tUPLOAD_API_OPTION_PARTSIZE_MUST_INT = \"UPLOAD_API_OPTION_PARTSIZE_MUST_INT\",\n\tUPLOAD_API_OPTION_PARTSIZE_IS_SMALL = \"UPLOAD_API_OPTION_PARTSIZE_IS_SMALL\",\n\tUPLOAD_IS_NO_SUPPORT_THIS_PLATFORM = \"UPLOAD_IS_NO_SUPPORT_THIS_PLATFORM\",\n\tUPLOAD_FILE_TO_BIG = \"UPLOAD_FILE_TO_BIG\",\n\tUPLOAD_IS_NO_SUPPORT_THIS_FILE_FORMAT = \"UPLOAD_IS_NO_SUPPORT_THIS_FILE_FORMAT\",\n\tREUPLOAD_IS_FAILED = \"REUPLOAD_IS_FAILED\",\n\tUPLOAD_HEAD_NO_EXPOSE_ETAG = \"UPLOAD_HEAD_NO_EXPOSE_ETAG\",\n\tUPLOAD_REQUEST_CREDENTIALS_ERROR = \"UPLOAD_REQUEST_CREDENTIALS_ERROR\",\n\tMISSING_CREDENTIALS_PARAMS_FOR_UPLOAD = \"MISSING_CREDENTIALS_PARAMS_FOR_UPLOAD\",\n\tUPLOAD_FILENAME_EXIST_SPECIAL_CHAR = \"UPLOAD_FILENAME_EXIST_SPECIAL_CHAR\",\n}\n\n/** Initialization API exception classification */\nconst InitExceptionMapping: Record<string, (...args: any[]) => string> = {\n\tINIT_UNKNOWN_ERROR: () => `An unknown error occurred in the initialization api`,\n\tMISSING_PARAMS_FOR_UPLOAD: (...args: string[]) =>\n\t\t`${args.join(\", \")} must be provided for upload`,\n\tUPLOAD_API_OPTION_PARTSIZE_MUST_INT: () => \"partSize must be int number\",\n\tUPLOAD_API_OPTION_PARTSIZE_IS_SMALL: (minPartSize: number) =>\n\t\t`partSize must not be smaller than ${minPartSize}`,\n\tUPLOAD_IS_NO_SUPPORT_THIS_PLATFORM: (platform: string) => `${platform} is not supported`,\n\tUPLOAD_FILE_TO_BIG: (fileName: string) =>\n\t\t`${fileName} failed to upload. The file size cannot exceed 5 GB`,\n\tUPLOAD_IS_NO_SUPPORT_THIS_FILE_FORMAT: () => \"Must provide Blob/File for upload.\",\n\tREUPLOAD_IS_FAILED: () =>\n\t\t\"Please re-check the request upload credentials configuration. The credentials information has expired\",\n\tUPLOAD_HEAD_NO_EXPOSE_ETAG: () =>\n\t\t\"Please set the etag of expose-headers in OSS \\n https://help.aliyun.com/document_detail/64041.html\",\n\tUPLOAD_REQUEST_CREDENTIALS_ERROR: (message: string) =>\n\t\t`An error occurred requesting file service temporary credentials, message: ${message}`,\n\tMISSING_CREDENTIALS_PARAMS_FOR_UPLOAD: (platform: string, ...args: string[]) =>\n\t\t`${platform.toUpperCase()} - The credential field must have the following fields, ${args.join(\n\t\t\t\", \",\n\t\t)}`,\n\tUPLOAD_FILENAME_EXIST_SPECIAL_CHAR: (fileName: string) =>\n\t\t`The filename cannot contain special characters, fileName: ${fileName}`,\n}\n\n/**\n * API exceptions during initialization\n * Exceptions Handler.\n */\nexport class InitException extends BaseException {\n\tpublic override readonly name = \"InitException\"\n\n\tconstructor(errType: keyof typeof InitExceptionMapping, ...args: any[]) {\n\t\tconst e = InitExceptionMapping[errType] || InitExceptionMapping.INIT_UNKNOWN_ERROR\n\t\tconst message = e?.apply(null, [...args]) || \"\"\n\t\tsuper(message)\n\t}\n}\n\n\n\n\n"],"mappings":";;AAAC,SAAS,qBAAqB;AAExB,IAAW,oBAAX,kBAAWA,uBAAX;AACN,EAAAA,mBAAA,wBAAqB;AACrB,EAAAA,mBAAA,+BAA4B;AAC5B,EAAAA,mBAAA,yCAAsC;AACtC,EAAAA,mBAAA,yCAAsC;AACtC,EAAAA,mBAAA,wCAAqC;AACrC,EAAAA,mBAAA,wBAAqB;AACrB,EAAAA,mBAAA,2CAAwC;AACxC,EAAAA,mBAAA,wBAAqB;AACrB,EAAAA,mBAAA,gCAA6B;AAC7B,EAAAA,mBAAA,sCAAmC;AACnC,EAAAA,mBAAA,2CAAwC;AACxC,EAAAA,mBAAA,wCAAqC;AAZpB,SAAAA;AAAA,GAAA;AAgBlB,MAAM,uBAAmE;AAAA,EACxE,oBAAoB,MAAM;AAAA,EAC1B,2BAA2B,IAAI,SAC9B,GAAG,KAAK,KAAK,IAAI,CAAC;AAAA,EACnB,qCAAqC,MAAM;AAAA,EAC3C,qCAAqC,CAAC,gBACrC,qCAAqC,WAAW;AAAA,EACjD,oCAAoC,CAAC,aAAqB,GAAG,QAAQ;AAAA,EACrE,oBAAoB,CAAC,aACpB,GAAG,QAAQ;AAAA,EACZ,uCAAuC,MAAM;AAAA,EAC7C,oBAAoB,MACnB;AAAA,EACD,4BAA4B,MAC3B;AAAA,EACD,kCAAkC,CAAC,YAClC,kFAA6E,OAAO;AAAA,EACrF,uCAAuC,CAAC,aAAqB,SAC5D,GAAG,SAAS,YAAY,CAAC,2DAA2D,KAAK;AAAA,IACxF;AAAA,EACD,CAAC;AAAA,EACF,oCAAoC,CAAC,aACpC,6DAA6D,QAAQ;AACvE;AAMO,MAAM,iBAAN,MAAM,uBAAsB,cAAc;AAAA,EAGhD,YAAY,YAA+C,MAAa;AACvE,UAAM,IAAI,qBAAqB,OAAO,KAAK,qBAAqB;AAChE,UAAM,UAAU,GAAG,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK;AAC7C,UAAM,OAAO;AALd,SAAyB,OAAO;AAAA,EAMhC;AACD;AARiD;AAA1C,IAAM,gBAAN;","names":["InitExceptionCode"]}
@@ -0,0 +1,50 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { BaseException } from "./BaseException";
4
+ var UploadExceptionCode = /* @__PURE__ */ ((UploadExceptionCode2) => {
5
+ UploadExceptionCode2["UPLOAD_UNKNOWN_ERROR"] = "UPLOAD_UNKNOWN_ERROR";
6
+ UploadExceptionCode2["UPLOAD_CANCEL"] = "UPLOAD_CANCEL";
7
+ UploadExceptionCode2["UPLOAD_PAUSE"] = "UPLOAD_PAUSE";
8
+ UploadExceptionCode2["UPLOAD_CREDENTIALS_IS_EXPIRED"] = "UPLOAD_CREDENTIALS_IS_EXPIRED";
9
+ UploadExceptionCode2["UPLOAD_MULTIPART_ERROR"] = "UPLOAD_MULTIPART_ERROR";
10
+ return UploadExceptionCode2;
11
+ })(UploadExceptionCode || {});
12
+ const UploadExceptionMapping = {
13
+ UPLOAD_UNKNOWN_ERROR: () => ({
14
+ status: 1e3,
15
+ message: "An unknown error occurred on the upload"
16
+ }),
17
+ UPLOAD_CANCEL: () => ({
18
+ status: 1001,
19
+ message: "{status: 1001, message: isCancel}"
20
+ }),
21
+ UPLOAD_PAUSE: () => ({
22
+ status: 1002,
23
+ message: "{status: 1002, message: isPause}"
24
+ }),
25
+ UPLOAD_CREDENTIALS_IS_EXPIRED: () => ({
26
+ status: 1003,
27
+ message: "{status: 1003, message: credentials is expired}"
28
+ }),
29
+ UPLOAD_MULTIPART_ERROR: (message, partNum) => ({
30
+ status: 1004,
31
+ message: `{status: 1004, message: Failed to upload some parts with error: ${message} part_num: ${partNum}`
32
+ })
33
+ };
34
+ const _UploadException = class _UploadException extends BaseException {
35
+ constructor(errType, ...args) {
36
+ const e = UploadExceptionMapping[errType] || UploadExceptionMapping.UPLOAD_UNKNOWN_ERROR;
37
+ const { status, message } = e.apply(null, [...args]);
38
+ super(message);
39
+ this.name = "UploadException";
40
+ this.status = status;
41
+ }
42
+ };
43
+ __name(_UploadException, "UploadException");
44
+ let UploadException = _UploadException;
45
+ export {
46
+ UploadException,
47
+ UploadExceptionCode,
48
+ UploadExceptionMapping
49
+ };
50
+ //# sourceMappingURL=UploadException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Exception/UploadException.ts"],"sourcesContent":["import type { ErrorType } from \"../types/error\"\nimport { BaseException } from \"./BaseException\"\n\nexport const enum UploadExceptionCode {\n\tUPLOAD_UNKNOWN_ERROR = \"UPLOAD_UNKNOWN_ERROR\",\n\tUPLOAD_CANCEL = \"UPLOAD_CANCEL\",\n\tUPLOAD_PAUSE = \"UPLOAD_PAUSE\",\n\tUPLOAD_CREDENTIALS_IS_EXPIRED = \"UPLOAD_CREDENTIALS_IS_EXPIRED\",\n\tUPLOAD_MULTIPART_ERROR = \"UPLOAD_MULTIPART_ERROR\",\n}\n\n/** Upload API exception classification */\nexport const UploadExceptionMapping: Record<\n\tstring,\n\t(...args: any[]) => ErrorType.BaseExceptionWithStatus\n> = {\n\tUPLOAD_UNKNOWN_ERROR: () => ({\n\t\tstatus: 1000,\n\t\tmessage: \"An unknown error occurred on the upload\",\n\t}),\n\tUPLOAD_CANCEL: () => ({\n\t\tstatus: 1001,\n\t\tmessage: \"{status: 1001, message: isCancel}\",\n\t}),\n\tUPLOAD_PAUSE: () => ({\n\t\tstatus: 1002,\n\t\tmessage: \"{status: 1002, message: isPause}\",\n\t}),\n\tUPLOAD_CREDENTIALS_IS_EXPIRED: () => ({\n\t\tstatus: 1003,\n\t\tmessage: \"{status: 1003, message: credentials is expired}\",\n\t}),\n\tUPLOAD_MULTIPART_ERROR: (message: string, partNum: number) => ({\n\t\tstatus: 1004,\n\t\tmessage: `{status: 1004, message: Failed to upload some parts with error: ${message} part_num: ${partNum}`,\n\t}),\n}\n\n/**\n * Upload API exceptions\n * Exceptions Handler.\n */\nexport class UploadException extends BaseException {\n\tpublic readonly status: number\n\n\tpublic readonly name = \"UploadException\"\n\n\tconstructor(errType: keyof typeof UploadExceptionMapping, ...args: any[]) {\n\t\tconst e = UploadExceptionMapping[errType] || UploadExceptionMapping.UPLOAD_UNKNOWN_ERROR\n\t\tconst { status, message } = e.apply(null, [...args])\n\t\tsuper(message)\n\t\tthis.status = status\n\t}\n}\n\n\n\n\n"],"mappings":";;AACA,SAAS,qBAAqB;AAEvB,IAAW,sBAAX,kBAAWA,yBAAX;AACN,EAAAA,qBAAA,0BAAuB;AACvB,EAAAA,qBAAA,mBAAgB;AAChB,EAAAA,qBAAA,kBAAe;AACf,EAAAA,qBAAA,mCAAgC;AAChC,EAAAA,qBAAA,4BAAyB;AALR,SAAAA;AAAA,GAAA;AASX,MAAM,yBAGT;AAAA,EACH,sBAAsB,OAAO;AAAA,IAC5B,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,eAAe,OAAO;AAAA,IACrB,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,cAAc,OAAO;AAAA,IACpB,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,+BAA+B,OAAO;AAAA,IACrC,QAAQ;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACA,wBAAwB,CAAC,SAAiB,aAAqB;AAAA,IAC9D,QAAQ;AAAA,IACR,SAAS,mEAAmE,OAAO,cAAc,OAAO;AAAA,EACzG;AACD;AAMO,MAAM,mBAAN,MAAM,yBAAwB,cAAc;AAAA,EAKlD,YAAY,YAAiD,MAAa;AACzE,UAAM,IAAI,uBAAuB,OAAO,KAAK,uBAAuB;AACpE,UAAM,EAAE,QAAQ,QAAQ,IAAI,EAAE,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;AACnD,UAAM,OAAO;AALd,SAAgB,OAAO;AAMtB,SAAK,SAAS;AAAA,EACf;AACD;AAXmD;AAA5C,IAAM,kBAAN;","names":["UploadExceptionCode"]}