@juzi/file-box 1.7.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 (210) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +613 -0
  3. package/dist/cjs/package.json +3 -0
  4. package/dist/cjs/src/config.d.ts +4 -0
  5. package/dist/cjs/src/config.d.ts.map +1 -0
  6. package/dist/cjs/src/config.js +9 -0
  7. package/dist/cjs/src/config.js.map +1 -0
  8. package/dist/cjs/src/file-box.d.ts +209 -0
  9. package/dist/cjs/src/file-box.d.ts.map +1 -0
  10. package/dist/cjs/src/file-box.js +804 -0
  11. package/dist/cjs/src/file-box.js.map +1 -0
  12. package/dist/cjs/src/file-box.spec.d.ts +14 -0
  13. package/dist/cjs/src/file-box.spec.d.ts.map +1 -0
  14. package/dist/cjs/src/file-box.spec.js +393 -0
  15. package/dist/cjs/src/file-box.spec.js.map +1 -0
  16. package/dist/cjs/src/file-box.type.d.ts +103 -0
  17. package/dist/cjs/src/file-box.type.d.ts.map +1 -0
  18. package/dist/cjs/src/file-box.type.js +34 -0
  19. package/dist/cjs/src/file-box.type.js.map +1 -0
  20. package/dist/cjs/src/interface.d.ts +25 -0
  21. package/dist/cjs/src/interface.d.ts.map +1 -0
  22. package/dist/cjs/src/interface.js +3 -0
  23. package/dist/cjs/src/interface.js.map +1 -0
  24. package/dist/cjs/src/interface.spec.d.ts +3 -0
  25. package/dist/cjs/src/interface.spec.d.ts.map +1 -0
  26. package/dist/cjs/src/interface.spec.js +11 -0
  27. package/dist/cjs/src/interface.spec.js.map +1 -0
  28. package/dist/cjs/src/misc.d.ts +17 -0
  29. package/dist/cjs/src/misc.d.ts.map +1 -0
  30. package/dist/cjs/src/misc.js +137 -0
  31. package/dist/cjs/src/misc.js.map +1 -0
  32. package/dist/cjs/src/misc.spec.d.ts +3 -0
  33. package/dist/cjs/src/misc.spec.d.ts.map +1 -0
  34. package/dist/cjs/src/misc.spec.js +51 -0
  35. package/dist/cjs/src/misc.spec.js.map +1 -0
  36. package/dist/cjs/src/mod.d.ts +9 -0
  37. package/dist/cjs/src/mod.d.ts.map +1 -0
  38. package/dist/cjs/src/mod.js +12 -0
  39. package/dist/cjs/src/mod.js.map +1 -0
  40. package/dist/cjs/src/pure-functions/sized-chunk-transformer.d.ts +13 -0
  41. package/dist/cjs/src/pure-functions/sized-chunk-transformer.d.ts.map +1 -0
  42. package/dist/cjs/src/pure-functions/sized-chunk-transformer.js +45 -0
  43. package/dist/cjs/src/pure-functions/sized-chunk-transformer.js.map +1 -0
  44. package/dist/cjs/src/pure-functions/sized-chunk-transformer.spec.d.ts +3 -0
  45. package/dist/cjs/src/pure-functions/sized-chunk-transformer.spec.d.ts.map +1 -0
  46. package/dist/cjs/src/pure-functions/sized-chunk-transformer.spec.js +39 -0
  47. package/dist/cjs/src/pure-functions/sized-chunk-transformer.spec.js.map +1 -0
  48. package/dist/cjs/src/qrcode.d.ts +6 -0
  49. package/dist/cjs/src/qrcode.d.ts.map +1 -0
  50. package/dist/cjs/src/qrcode.js +35 -0
  51. package/dist/cjs/src/qrcode.js.map +1 -0
  52. package/dist/cjs/src/qrcode.spec.d.ts +3 -0
  53. package/dist/cjs/src/qrcode.spec.d.ts.map +1 -0
  54. package/dist/cjs/src/qrcode.spec.js +47 -0
  55. package/dist/cjs/src/qrcode.spec.js.map +1 -0
  56. package/dist/cjs/src/urn-registry/mod.d.ts +3 -0
  57. package/dist/cjs/src/urn-registry/mod.d.ts.map +1 -0
  58. package/dist/cjs/src/urn-registry/mod.js +6 -0
  59. package/dist/cjs/src/urn-registry/mod.js.map +1 -0
  60. package/dist/cjs/src/urn-registry/random-uuid.d.ts +4 -0
  61. package/dist/cjs/src/urn-registry/random-uuid.d.ts.map +1 -0
  62. package/dist/cjs/src/urn-registry/random-uuid.js +30 -0
  63. package/dist/cjs/src/urn-registry/random-uuid.js.map +1 -0
  64. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.d.ts +76 -0
  65. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.d.ts.map +1 -0
  66. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.js +259 -0
  67. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.js.map +1 -0
  68. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.spec.d.ts +3 -0
  69. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.spec.d.ts.map +1 -0
  70. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.spec.js +81 -0
  71. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.spec.js.map +1 -0
  72. package/dist/cjs/src/urn-registry/uuid-to-big-int.d.ts +8 -0
  73. package/dist/cjs/src/urn-registry/uuid-to-big-int.d.ts.map +1 -0
  74. package/dist/cjs/src/urn-registry/uuid-to-big-int.js +16 -0
  75. package/dist/cjs/src/urn-registry/uuid-to-big-int.js.map +1 -0
  76. package/dist/cjs/src/urn-registry/uuid-to-big-int.spec.d.ts +3 -0
  77. package/dist/cjs/src/urn-registry/uuid-to-big-int.spec.d.ts.map +1 -0
  78. package/dist/cjs/src/urn-registry/uuid-to-big-int.spec.js +17 -0
  79. package/dist/cjs/src/urn-registry/uuid-to-big-int.spec.js.map +1 -0
  80. package/dist/cjs/src/version.d.ts +5 -0
  81. package/dist/cjs/src/version.d.ts.map +1 -0
  82. package/dist/cjs/src/version.js +8 -0
  83. package/dist/cjs/src/version.js.map +1 -0
  84. package/dist/cjs/src/version.spec.d.ts +3 -0
  85. package/dist/cjs/src/version.spec.d.ts.map +1 -0
  86. package/dist/cjs/src/version.spec.js +9 -0
  87. package/dist/cjs/src/version.spec.js.map +1 -0
  88. package/dist/cjs/tests/integration.spec.d.ts +3 -0
  89. package/dist/cjs/tests/integration.spec.d.ts.map +1 -0
  90. package/dist/cjs/tests/integration.spec.js +8 -0
  91. package/dist/cjs/tests/integration.spec.js.map +1 -0
  92. package/dist/cjs/tests/network-timeout.spec.d.ts +3 -0
  93. package/dist/cjs/tests/network-timeout.spec.d.ts.map +1 -0
  94. package/dist/cjs/tests/network-timeout.spec.js +121 -0
  95. package/dist/cjs/tests/network-timeout.spec.js.map +1 -0
  96. package/dist/esm/src/config.d.ts +4 -0
  97. package/dist/esm/src/config.d.ts.map +1 -0
  98. package/dist/esm/src/config.js +5 -0
  99. package/dist/esm/src/config.js.map +1 -0
  100. package/dist/esm/src/file-box.d.ts +209 -0
  101. package/dist/esm/src/file-box.d.ts.map +1 -0
  102. package/dist/esm/src/file-box.js +775 -0
  103. package/dist/esm/src/file-box.js.map +1 -0
  104. package/dist/esm/src/file-box.spec.d.ts +14 -0
  105. package/dist/esm/src/file-box.spec.d.ts.map +1 -0
  106. package/dist/esm/src/file-box.spec.js +386 -0
  107. package/dist/esm/src/file-box.spec.js.map +1 -0
  108. package/dist/esm/src/file-box.type.d.ts +103 -0
  109. package/dist/esm/src/file-box.type.d.ts.map +1 -0
  110. package/dist/esm/src/file-box.type.js +31 -0
  111. package/dist/esm/src/file-box.type.js.map +1 -0
  112. package/dist/esm/src/interface.d.ts +25 -0
  113. package/dist/esm/src/interface.d.ts.map +1 -0
  114. package/dist/esm/src/interface.js +2 -0
  115. package/dist/esm/src/interface.js.map +1 -0
  116. package/dist/esm/src/interface.spec.d.ts +3 -0
  117. package/dist/esm/src/interface.spec.d.ts.map +1 -0
  118. package/dist/esm/src/interface.spec.js +9 -0
  119. package/dist/esm/src/interface.spec.js.map +1 -0
  120. package/dist/esm/src/misc.d.ts +17 -0
  121. package/dist/esm/src/misc.d.ts.map +1 -0
  122. package/dist/esm/src/misc.js +126 -0
  123. package/dist/esm/src/misc.js.map +1 -0
  124. package/dist/esm/src/misc.spec.d.ts +3 -0
  125. package/dist/esm/src/misc.spec.d.ts.map +1 -0
  126. package/dist/esm/src/misc.spec.js +49 -0
  127. package/dist/esm/src/misc.spec.js.map +1 -0
  128. package/dist/esm/src/mod.d.ts +9 -0
  129. package/dist/esm/src/mod.d.ts.map +1 -0
  130. package/dist/esm/src/mod.js +6 -0
  131. package/dist/esm/src/mod.js.map +1 -0
  132. package/dist/esm/src/pure-functions/sized-chunk-transformer.d.ts +13 -0
  133. package/dist/esm/src/pure-functions/sized-chunk-transformer.d.ts.map +1 -0
  134. package/dist/esm/src/pure-functions/sized-chunk-transformer.js +39 -0
  135. package/dist/esm/src/pure-functions/sized-chunk-transformer.js.map +1 -0
  136. package/dist/esm/src/pure-functions/sized-chunk-transformer.spec.d.ts +3 -0
  137. package/dist/esm/src/pure-functions/sized-chunk-transformer.spec.d.ts.map +1 -0
  138. package/dist/esm/src/pure-functions/sized-chunk-transformer.spec.js +37 -0
  139. package/dist/esm/src/pure-functions/sized-chunk-transformer.spec.js.map +1 -0
  140. package/dist/esm/src/qrcode.d.ts +6 -0
  141. package/dist/esm/src/qrcode.d.ts.map +1 -0
  142. package/dist/esm/src/qrcode.js +27 -0
  143. package/dist/esm/src/qrcode.js.map +1 -0
  144. package/dist/esm/src/qrcode.spec.d.ts +3 -0
  145. package/dist/esm/src/qrcode.spec.d.ts.map +1 -0
  146. package/dist/esm/src/qrcode.spec.js +45 -0
  147. package/dist/esm/src/qrcode.spec.js.map +1 -0
  148. package/dist/esm/src/urn-registry/mod.d.ts +3 -0
  149. package/dist/esm/src/urn-registry/mod.d.ts.map +1 -0
  150. package/dist/esm/src/urn-registry/mod.js +3 -0
  151. package/dist/esm/src/urn-registry/mod.js.map +1 -0
  152. package/dist/esm/src/urn-registry/random-uuid.d.ts +4 -0
  153. package/dist/esm/src/urn-registry/random-uuid.d.ts.map +1 -0
  154. package/dist/esm/src/urn-registry/random-uuid.js +4 -0
  155. package/dist/esm/src/urn-registry/random-uuid.js.map +1 -0
  156. package/dist/esm/src/urn-registry/uniform-resource-name-registry.d.ts +76 -0
  157. package/dist/esm/src/urn-registry/uniform-resource-name-registry.d.ts.map +1 -0
  158. package/dist/esm/src/urn-registry/uniform-resource-name-registry.js +253 -0
  159. package/dist/esm/src/urn-registry/uniform-resource-name-registry.js.map +1 -0
  160. package/dist/esm/src/urn-registry/uniform-resource-name-registry.spec.d.ts +3 -0
  161. package/dist/esm/src/urn-registry/uniform-resource-name-registry.spec.d.ts.map +1 -0
  162. package/dist/esm/src/urn-registry/uniform-resource-name-registry.spec.js +79 -0
  163. package/dist/esm/src/urn-registry/uniform-resource-name-registry.spec.js.map +1 -0
  164. package/dist/esm/src/urn-registry/uuid-to-big-int.d.ts +8 -0
  165. package/dist/esm/src/urn-registry/uuid-to-big-int.d.ts.map +1 -0
  166. package/dist/esm/src/urn-registry/uuid-to-big-int.js +13 -0
  167. package/dist/esm/src/urn-registry/uuid-to-big-int.js.map +1 -0
  168. package/dist/esm/src/urn-registry/uuid-to-big-int.spec.d.ts +3 -0
  169. package/dist/esm/src/urn-registry/uuid-to-big-int.spec.d.ts.map +1 -0
  170. package/dist/esm/src/urn-registry/uuid-to-big-int.spec.js +15 -0
  171. package/dist/esm/src/urn-registry/uuid-to-big-int.spec.js.map +1 -0
  172. package/dist/esm/src/version.d.ts +5 -0
  173. package/dist/esm/src/version.d.ts.map +1 -0
  174. package/dist/esm/src/version.js +5 -0
  175. package/dist/esm/src/version.js.map +1 -0
  176. package/dist/esm/src/version.spec.d.ts +3 -0
  177. package/dist/esm/src/version.spec.d.ts.map +1 -0
  178. package/dist/esm/src/version.spec.js +7 -0
  179. package/dist/esm/src/version.spec.js.map +1 -0
  180. package/dist/esm/tests/integration.spec.d.ts +3 -0
  181. package/dist/esm/tests/integration.spec.d.ts.map +1 -0
  182. package/dist/esm/tests/integration.spec.js +6 -0
  183. package/dist/esm/tests/integration.spec.js.map +1 -0
  184. package/dist/esm/tests/network-timeout.spec.d.ts +3 -0
  185. package/dist/esm/tests/network-timeout.spec.d.ts.map +1 -0
  186. package/dist/esm/tests/network-timeout.spec.js +119 -0
  187. package/dist/esm/tests/network-timeout.spec.js.map +1 -0
  188. package/package.json +85 -0
  189. package/src/config.ts +5 -0
  190. package/src/file-box.spec.ts +480 -0
  191. package/src/file-box.ts +1042 -0
  192. package/src/file-box.type.ts +145 -0
  193. package/src/interface.spec.ts +17 -0
  194. package/src/interface.ts +47 -0
  195. package/src/misc.spec.ts +70 -0
  196. package/src/misc.ts +157 -0
  197. package/src/mod.ts +33 -0
  198. package/src/pure-functions/sized-chunk-transformer.spec.ts +52 -0
  199. package/src/pure-functions/sized-chunk-transformer.ts +49 -0
  200. package/src/qrcode.spec.ts +55 -0
  201. package/src/qrcode.ts +38 -0
  202. package/src/typings.d.ts +1 -0
  203. package/src/urn-registry/mod.ts +7 -0
  204. package/src/urn-registry/random-uuid.ts +7 -0
  205. package/src/urn-registry/uniform-resource-name-registry.spec.ts +109 -0
  206. package/src/urn-registry/uniform-resource-name-registry.ts +342 -0
  207. package/src/urn-registry/uuid-to-big-int.spec.ts +19 -0
  208. package/src/urn-registry/uuid-to-big-int.ts +16 -0
  209. package/src/version.spec.ts +9 -0
  210. package/src/version.ts +4 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACZ,MAA4B,aAAa,CAAA;AAC1C,OAAO,KAAK,EACV,OAAO,EACR,MAA4B,eAAe,CAAA;AAE5C,UAAU,gBAAgB;IACxB,IAAI,EAAQ,OAAO,CAAC,MAAM,CAAC,CAAA;IAE3B,IAAI,EAAQ,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3B,IAAI,EAAQ,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3B,GAAG,EAAS,OAAO,CAAC,KAAK,CAAC,CAAA;IAC1B,SAAS,EAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAChC,QAAQ,EAAI,OAAO,CAAC,UAAU,CAAC,CAAA;IAY/B,QAAQ,EAAI,OAAO,CAAC,UAAU,CAAC,CAAA;IAC/B,QAAQ,EAAI,OAAO,CAAC,UAAU,CAAC,CAAA;IAC/B,SAAS,EAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAChC,MAAM,EAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC7B,MAAM,EAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC7B,QAAQ,EAAI,OAAO,CAAC,UAAU,CAAC,CAAA;IAC/B,QAAQ,EAAI,OAAO,CAAC,UAAU,CAAC,CAAA;IAC/B,MAAM,EAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;IAE7B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;CACtB;AAED;;GAEG;AACH,KAAK,kBAAkB,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAA;AAEvD,YAAY,EACV,gBAAgB,EAChB,kBAAkB,GACnB,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ export {};
3
+ //# sourceMappingURL=interface.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.spec.d.ts","sourceRoot":"","sources":["../../../src/interface.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ // tslint:disable:no-shadowed-variable
5
+ const tstest_1 = require("tstest");
6
+ const file_box_js_1 = require("./file-box.js");
7
+ (0, tstest_1.test)('FileBoxInterface', async (t) => {
8
+ const fileBox = file_box_js_1.FileBox.fromQRCode('test');
9
+ t.ok(fileBox, 'should be ok with interface');
10
+ });
11
+ //# sourceMappingURL=interface.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.spec.js","sourceRoot":"","sources":["../../../src/interface.spec.ts"],"names":[],"mappings":";;;AAEA,sCAAsC;AACtC,mCAA8B;AAM9B,+CAEgC;AAEhC,IAAA,aAAI,EAAC,kBAAkB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IACjC,MAAM,OAAO,GAAqB,qBAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAC5D,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAA;AAC9C,CAAC,CAAC,CAAA"}
@@ -0,0 +1,17 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ import http from 'http';
5
+ import type stream from 'stream';
6
+ export declare function dataUrlToBase64(dataUrl: string): string;
7
+ /**
8
+ * Get http headers for specific `url`
9
+ * follow 302 redirection for max `REDIRECT_TTL` times.
10
+ *
11
+ * @credit https://stackoverflow.com/a/43632171/1123955
12
+ */
13
+ export declare function httpHeadHeader(url: string): Promise<http.IncomingHttpHeaders>;
14
+ export declare function httpHeaderToFileName(headers: http.IncomingHttpHeaders): null | string;
15
+ export declare function httpStream(url: string, headers?: http.OutgoingHttpHeaders): Promise<http.IncomingMessage>;
16
+ export declare function streamToBuffer(stream: stream.Readable): Promise<Buffer>;
17
+ //# sourceMappingURL=misc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../src/misc.ts"],"names":[],"mappings":";;;AAAA,OAAO,IAAI,MAAS,MAAM,CAAA;AAG1B,OAAO,KAAK,MAAM,MAAQ,QAAQ,CAAA;AAIlC,wBAAgB,eAAe,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAwDpF;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,IAAI,CAAC,mBAAmB,GAChC,IAAI,GAAG,MAAM,CAef;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAO,MAAM,EAChB,OAAO,GAAG,IAAI,CAAC,mBAAwB,GACtC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CA4C/B;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,CAAC,QAAQ,GACtB,OAAO,CAAC,MAAM,CAAC,CAUjB"}
@@ -0,0 +1,137 @@
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.streamToBuffer = exports.httpStream = exports.httpHeaderToFileName = exports.httpHeadHeader = exports.dataUrlToBase64 = void 0;
7
+ const http_1 = __importDefault(require("http"));
8
+ const https_1 = __importDefault(require("https"));
9
+ const url_1 = require("url");
10
+ const config_js_1 = require("./config.js");
11
+ function dataUrlToBase64(dataUrl) {
12
+ const dataList = dataUrl.split(',');
13
+ return dataList[dataList.length - 1];
14
+ }
15
+ exports.dataUrlToBase64 = dataUrlToBase64;
16
+ /**
17
+ * Get http headers for specific `url`
18
+ * follow 302 redirection for max `REDIRECT_TTL` times.
19
+ *
20
+ * @credit https://stackoverflow.com/a/43632171/1123955
21
+ */
22
+ async function httpHeadHeader(url) {
23
+ let REDIRECT_TTL = 7;
24
+ while (true) {
25
+ if (REDIRECT_TTL-- <= 0) {
26
+ throw new Error(`ttl expired! too many(>${REDIRECT_TTL}) 302 redirection.`);
27
+ }
28
+ const res = await _headHeader(url);
29
+ if (!/^3/.test(String(res.statusCode))) {
30
+ return res.headers;
31
+ }
32
+ // console.log('302 found for ' + url)
33
+ if (!res.headers.location) {
34
+ throw new Error('302 found but no location!');
35
+ }
36
+ url = res.headers.location;
37
+ }
38
+ async function _headHeader(destUrl) {
39
+ const parsedUrl = new url_1.URL(destUrl);
40
+ const options = {
41
+ method: 'HEAD',
42
+ // method : 'GET',
43
+ };
44
+ let request;
45
+ if (parsedUrl.protocol === 'https:') {
46
+ request = https_1.default.request;
47
+ }
48
+ else if (parsedUrl.protocol === 'http:') {
49
+ request = http_1.default.request;
50
+ }
51
+ else {
52
+ throw new Error('unknown protocol: ' + parsedUrl.protocol);
53
+ }
54
+ return new Promise((resolve, reject) => {
55
+ let res;
56
+ const req = request(parsedUrl, options, (response) => {
57
+ res = response;
58
+ resolve(res);
59
+ })
60
+ .on('error', reject)
61
+ .setTimeout(config_js_1.HTTP_TIMEOUT, () => {
62
+ const e = new Error(`FileBox: Http request timeout (${config_js_1.HTTP_TIMEOUT})!`);
63
+ req.emit('error', e);
64
+ req.destroy();
65
+ })
66
+ .end();
67
+ });
68
+ }
69
+ }
70
+ exports.httpHeadHeader = httpHeadHeader;
71
+ function httpHeaderToFileName(headers) {
72
+ const contentDisposition = headers['content-disposition'];
73
+ if (!contentDisposition) {
74
+ return null;
75
+ }
76
+ // 'content-disposition': 'attachment; filename=db-0.0.19.zip'
77
+ const matches = contentDisposition.match(/attachment; filename="?(.+[^"])"?$/i);
78
+ if (matches && matches[1]) {
79
+ return matches[1];
80
+ }
81
+ return null;
82
+ }
83
+ exports.httpHeaderToFileName = httpHeaderToFileName;
84
+ async function httpStream(url, headers = {}) {
85
+ const parsedUrl = new url_1.URL(url);
86
+ const protocol = parsedUrl.protocol;
87
+ const options = {};
88
+ let get;
89
+ if (!protocol) {
90
+ throw new Error('protocol is empty');
91
+ }
92
+ if (protocol.match(/^https:/i)) {
93
+ get = https_1.default.get;
94
+ options.agent = https_1.default.globalAgent;
95
+ }
96
+ else if (protocol.match(/^http:/i)) {
97
+ get = http_1.default.get;
98
+ options.agent = http_1.default.globalAgent;
99
+ }
100
+ else {
101
+ throw new Error('protocol unknown: ' + protocol);
102
+ }
103
+ options.headers = {
104
+ ...headers,
105
+ };
106
+ return new Promise((resolve, reject) => {
107
+ let res = null;
108
+ const req = get(parsedUrl, options, (response) => {
109
+ res = response;
110
+ resolve(res);
111
+ })
112
+ .on('error', reject)
113
+ .setTimeout(config_js_1.HTTP_TIMEOUT, () => {
114
+ const e = new Error(`FileBox: Http request timeout (${config_js_1.HTTP_TIMEOUT})!`);
115
+ if (res) {
116
+ res.emit('error', e);
117
+ }
118
+ req.emit('error', e);
119
+ req.destroy();
120
+ })
121
+ .end();
122
+ });
123
+ }
124
+ exports.httpStream = httpStream;
125
+ async function streamToBuffer(stream) {
126
+ return new Promise((resolve, reject) => {
127
+ const bufferList = [];
128
+ stream.once('error', reject);
129
+ stream.once('end', () => {
130
+ const fullBuffer = Buffer.concat(bufferList);
131
+ resolve(fullBuffer);
132
+ });
133
+ stream.on('data', buffer => bufferList.push(buffer));
134
+ });
135
+ }
136
+ exports.streamToBuffer = streamToBuffer;
137
+ //# sourceMappingURL=misc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../src/misc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ export {};
3
+ //# sourceMappingURL=misc.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.spec.d.ts","sourceRoot":"","sources":["../../../src/misc.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,51 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ // tslint:disable:no-shadowed-variable
5
+ const tstest_1 = require("tstest");
6
+ const misc_js_1 = require("./misc.js");
7
+ (0, tstest_1.test)('dataUrl to base64', async (t) => {
8
+ const base64 = [
9
+ 'R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl',
10
+ '3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',
11
+ 'ACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGA',
12
+ 'iqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7',
13
+ ].join('');
14
+ const dataUrl = [
15
+ 'data:image/png;base64,',
16
+ base64,
17
+ ].join('');
18
+ t.equal(base64, (0, misc_js_1.dataUrlToBase64)(dataUrl), 'should get base64 from dataUrl');
19
+ });
20
+ (0, tstest_1.test)('httpHeadHeader', async (t) => {
21
+ const URL = 'https://github.com/huan/file-box/archive/v0.6.tar.gz';
22
+ const EXPECTED_HEADERS_KEY = 'content-disposition';
23
+ const EXPECTED_HEADERS_VALUE = 'attachment; filename=file-box-0.6.tar.gz';
24
+ const headers = await (0, misc_js_1.httpHeadHeader)(URL);
25
+ t.equal(headers[EXPECTED_HEADERS_KEY], EXPECTED_HEADERS_VALUE, 'should get the headers right');
26
+ });
27
+ (0, tstest_1.test)('httpHeaderToFileName', async (t) => {
28
+ const HEADERS_QUOTATION_MARK = {
29
+ 'content-disposition': 'attachment; filename="db-0.0.19.zip"',
30
+ };
31
+ const HEADERS_NO_QUOTATION_MARK = {
32
+ 'content-disposition': 'attachment; filename=db-0.0.19.zip',
33
+ };
34
+ const EXPECTED_FILE_NAME = 'db-0.0.19.zip';
35
+ let filename = (0, misc_js_1.httpHeaderToFileName)(HEADERS_QUOTATION_MARK);
36
+ t.equal(filename, EXPECTED_FILE_NAME, 'should get filename with quotation mark');
37
+ filename = (0, misc_js_1.httpHeaderToFileName)(HEADERS_NO_QUOTATION_MARK);
38
+ t.equal(filename, EXPECTED_FILE_NAME, 'should get filename with no quotation mark');
39
+ });
40
+ (0, tstest_1.test)('httpStream', async (t) => {
41
+ const URL = 'https://httpbin.org/headers';
42
+ const MOL_KEY = 'Mol';
43
+ const MOL_VAL = '42';
44
+ const headers = {};
45
+ headers[MOL_KEY] = MOL_VAL;
46
+ const res = await (0, misc_js_1.httpStream)(URL, headers);
47
+ const buffer = await (0, misc_js_1.streamToBuffer)(res);
48
+ const obj = JSON.parse(buffer.toString());
49
+ t.equal(obj.headers[MOL_KEY], MOL_VAL, 'should send the header right');
50
+ });
51
+ //# sourceMappingURL=misc.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.spec.js","sourceRoot":"","sources":["../../../src/misc.spec.ts"],"names":[],"mappings":";;;AAEA,sCAAsC;AACtC,mCAA8B;AAE9B,uCAM0C;AAE1C,IAAA,aAAI,EAAC,mBAAmB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IAClC,MAAM,MAAM,GAAG;QACb,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;KAC3E,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACV,MAAM,OAAO,GAAG;QACd,wBAAwB;QACxB,MAAM;KACP,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEV,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,IAAA,yBAAe,EAAC,OAAO,CAAC,EAAE,gCAAgC,CAAC,CAAA;AAC7E,CAAC,CAAC,CAAA;AAEF,IAAA,aAAI,EAAC,gBAAgB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IAC/B,MAAM,GAAG,GAAG,sDAAsD,CAAA;IAElE,MAAM,oBAAoB,GAAK,qBAAqB,CAAA;IACpD,MAAM,sBAAsB,GAAG,0CAA0C,CAAA;IAEzE,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IAEzC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,sBAAsB,EAAE,8BAA8B,CAAC,CAAA;AAChG,CAAC,CAAC,CAAA;AAEF,IAAA,aAAI,EAAC,sBAAsB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IACrC,MAAM,sBAAsB,GAAQ;QAClC,qBAAqB,EAAE,sCAAsC;KAC9D,CAAA;IACD,MAAM,yBAAyB,GAAQ;QACrC,qBAAqB,EAAE,oCAAoC;KAC5D,CAAA;IACD,MAAM,kBAAkB,GAAG,eAAe,CAAA;IAE1C,IAAI,QAAQ,GAAG,IAAA,8BAAoB,EAAC,sBAAsB,CAAC,CAAA;IAC3D,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,kBAAkB,EAAE,yCAAyC,CAAC,CAAA;IAEhF,QAAQ,GAAG,IAAA,8BAAoB,EAAC,yBAAyB,CAAC,CAAA;IAC1D,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,kBAAkB,EAAE,4CAA4C,CAAC,CAAA;AACrF,CAAC,CAAC,CAAA;AAEF,IAAA,aAAI,EAAC,YAAY,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IAC3B,MAAM,GAAG,GAAG,6BAA6B,CAAA;IAEzC,MAAM,OAAO,GAAG,KAAK,CAAA;IACrB,MAAM,OAAO,GAAG,IAAI,CAAA;IAEpB,MAAM,OAAO,GAAG,EAA+B,CAAA;IAC/C,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;IAE1B,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAU,EAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAE1C,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;IACzC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,8BAA8B,CAAC,CAAA;AACxE,CAAC,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { FileBoxType } from './file-box.type.js';
2
+ import { VERSION } from './config.js';
3
+ import { FileBox } from './file-box.js';
4
+ import type { FileBoxInterface, FileBoxConstructor } from './interface.js';
5
+ import type { UuidSaver, UuidLoader } from './file-box.type.js';
6
+ import { UniformResourceNameRegistry } from './urn-registry/uniform-resource-name-registry.js';
7
+ export type { UuidSaver, UuidLoader, FileBoxInterface, FileBoxConstructor, };
8
+ export { FileBox, FileBoxType, UniformResourceNameRegistry, VERSION, };
9
+ //# sourceMappingURL=mod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACZ,MAA4B,oBAAoB,CAAA;AACjD,OAAO,EACL,OAAO,EACR,MAA4B,aAAa,CAAA;AAC1C,OAAO,EACL,OAAO,EACR,MAA4B,eAAe,CAAA;AAC5C,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EACnB,MAA4B,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACX,MAA4B,oBAAoB,CAAA;AACjD,OAAO,EACL,2BAA2B,EAC5B,MAAkC,kDAAkD,CAAA;AAErF,YAAY,EACV,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,kBAAkB,GACnB,CAAA;AACD,OAAO,EACL,OAAO,EACP,WAAW,EACX,2BAA2B,EAC3B,OAAO,GACR,CAAA"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VERSION = exports.UniformResourceNameRegistry = exports.FileBoxType = exports.FileBox = void 0;
4
+ const file_box_type_js_1 = require("./file-box.type.js");
5
+ Object.defineProperty(exports, "FileBoxType", { enumerable: true, get: function () { return file_box_type_js_1.FileBoxType; } });
6
+ const config_js_1 = require("./config.js");
7
+ Object.defineProperty(exports, "VERSION", { enumerable: true, get: function () { return config_js_1.VERSION; } });
8
+ const file_box_js_1 = require("./file-box.js");
9
+ Object.defineProperty(exports, "FileBox", { enumerable: true, get: function () { return file_box_js_1.FileBox; } });
10
+ const uniform_resource_name_registry_js_1 = require("./urn-registry/uniform-resource-name-registry.js");
11
+ Object.defineProperty(exports, "UniformResourceNameRegistry", { enumerable: true, get: function () { return uniform_resource_name_registry_js_1.UniformResourceNameRegistry; } });
12
+ //# sourceMappingURL=mod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/mod.ts"],"names":[],"mappings":";;;AAAA,yDAEiD;AA2B/C,4FA5BA,8BAAW,OA4BA;AA1Bb,2CAE0C;AA0BxC,wFA3BA,mBAAO,OA2BA;AAzBT,+CAE4C;AAoB1C,wFArBA,qBAAO,OAqBA;AAXT,wGAEqF;AAWnF,4GAZA,+DAA2B,OAYA"}
@@ -0,0 +1,13 @@
1
+ /// <reference types="node" />
2
+ /**
3
+ * ChunkerTransformStream, a transform stream to take arbitrary chunk sizes and make them consistent
4
+ * https://codereview.stackexchange.com/q/57492/185709
5
+ */
6
+ import stream from 'stream';
7
+ /**
8
+ * @param chunkByte The size of the chunks to be created
9
+ * @returns
10
+ */
11
+ declare function sizedChunkTransformer(chunkByte?: number): stream.Transform;
12
+ export { sizedChunkTransformer, };
13
+ //# sourceMappingURL=sized-chunk-transformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sized-chunk-transformer.d.ts","sourceRoot":"","sources":["../../../../src/pure-functions/sized-chunk-transformer.ts"],"names":[],"mappings":";AAAA;;;GAGG;AACH,OAAO,MAAM,MAAM,QAAQ,CAAA;AAQ3B;;;GAGG;AACH,iBAAS,qBAAqB,CAAE,SAAS,SAAqB,oBA4B7D;AAED,OAAO,EACL,qBAAqB,GACtB,CAAA"}
@@ -0,0 +1,45 @@
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.sizedChunkTransformer = void 0;
7
+ /**
8
+ * ChunkerTransformStream, a transform stream to take arbitrary chunk sizes and make them consistent
9
+ * https://codereview.stackexchange.com/q/57492/185709
10
+ */
11
+ const stream_1 = __importDefault(require("stream"));
12
+ /**
13
+ * TCP streaming workload tuning
14
+ * https://www.ibm.com/docs/en/aix/7.2?topic=tuning-tcp-streaming-workload
15
+ */
16
+ const DEFAULT_CHUNK_BYTE = 256 * 1024; // 256 KB
17
+ /**
18
+ * @param chunkByte The size of the chunks to be created
19
+ * @returns
20
+ */
21
+ function sizedChunkTransformer(chunkByte = DEFAULT_CHUNK_BYTE) {
22
+ let buffer = Buffer.from([]);
23
+ const transform = function (chunk, _, done) {
24
+ buffer = Buffer.concat([buffer, chunk]);
25
+ while (buffer.length >= chunkByte) {
26
+ this.push(buffer.slice(0, chunkByte));
27
+ buffer = buffer.slice(chunkByte);
28
+ }
29
+ done();
30
+ };
31
+ const flush = function (done) {
32
+ if (buffer.length) {
33
+ this.push(buffer);
34
+ }
35
+ done();
36
+ };
37
+ const chunker = new stream_1.default.Transform({
38
+ flush,
39
+ objectMode: true,
40
+ transform,
41
+ });
42
+ return chunker;
43
+ }
44
+ exports.sizedChunkTransformer = sizedChunkTransformer;
45
+ //# sourceMappingURL=sized-chunk-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sized-chunk-transformer.js","sourceRoot":"","sources":["../../../../src/pure-functions/sized-chunk-transformer.ts"],"names":[],"mappings":";;;;;;AAAA;;;GAGG;AACH,oDAA2B;AAE3B;;;GAGG;AACH,MAAM,kBAAkB,GAAG,GAAG,GAAG,IAAI,CAAA,CAAC,SAAS;AAE/C;;;GAGG;AACH,SAAS,qBAAqB,CAAE,SAAS,GAAG,kBAAkB;IAC5D,IAAI,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAE5B,MAAM,SAAS,GAAyC,UAAU,KAAK,EAAE,CAAC,EAAE,IAAI;QAC9E,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAE,MAAM,EAAE,KAAK,CAAE,CAAC,CAAA;QAEzC,OAAO,MAAM,CAAC,MAAM,IAAI,SAAS,EAAE;YACjC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAA;YACrC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;SACjC;QAED,IAAI,EAAE,CAAA;IACR,CAAC,CAAA;IAED,MAAM,KAAK,GAAqC,UAAU,IAAI;QAC5D,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SAClB;QACD,IAAI,EAAE,CAAA;IACR,CAAC,CAAA;IAED,MAAM,OAAO,GAAG,IAAI,gBAAM,CAAC,SAAS,CAAC;QACnC,KAAK;QACL,UAAU,EAAE,IAAI;QAChB,SAAS;KACV,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC;AAGC,sDAAqB"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ export {};
3
+ //# sourceMappingURL=sized-chunk-transformer.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sized-chunk-transformer.spec.d.ts","sourceRoot":"","sources":["../../../../src/pure-functions/sized-chunk-transformer.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ "use strict";
3
+ /* eslint @typescript-eslint/no-unused-vars:off */
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ const tstest_1 = require("tstest");
6
+ const stream_1 = require("stream");
7
+ const sized_chunk_transformer_js_1 = require("./sized-chunk-transformer.js");
8
+ (0, tstest_1.test)('chunkerTransformStream()', async (t) => {
9
+ const DATA_LIST = [
10
+ 'a',
11
+ 'b',
12
+ ];
13
+ const DATA = DATA_LIST.join('');
14
+ const createStream = () => {
15
+ const stream = new stream_1.PassThrough();
16
+ stream.end(DATA);
17
+ return stream;
18
+ };
19
+ const getDataList = (stream) => {
20
+ return new Promise(resolve => {
21
+ const list = [];
22
+ stream.on('end', () => resolve(list));
23
+ stream.on('data', chunk => list.push(chunk));
24
+ });
25
+ };
26
+ const newStream0 = createStream();
27
+ const dataList0 = await getDataList(newStream0);
28
+ t.equal(dataList0.length, 1, 'should get 1 chunks');
29
+ t.equal(dataList0[0].toString(), DATA, 'should get data');
30
+ const newStream1 = createStream().pipe((0, sized_chunk_transformer_js_1.sizedChunkTransformer)(2));
31
+ const dataList1 = await getDataList(newStream1);
32
+ t.equal(dataList1.length, 1, 'should get 1 chunks');
33
+ t.equal(dataList1[0].toString(), DATA, 'should get data');
34
+ const newStream2 = createStream().pipe((0, sized_chunk_transformer_js_1.sizedChunkTransformer)(1));
35
+ const dataList2 = await getDataList(newStream2);
36
+ t.equal(dataList2.length, 2, 'should get 2 chunks');
37
+ t.equal(dataList2.join(''), DATA, 'should get data');
38
+ });
39
+ //# sourceMappingURL=sized-chunk-transformer.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sized-chunk-transformer.spec.js","sourceRoot":"","sources":["../../../../src/pure-functions/sized-chunk-transformer.spec.ts"],"names":[],"mappings":";;AAEA,kDAAkD;;AAElD,mCAA6B;AAE7B,mCAGmC;AAEnC,6EAAoE;AAEpE,IAAA,aAAI,EAAC,0BAA0B,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IACzC,MAAM,SAAS,GAAG;QAChB,GAAG;QACH,GAAG;KACJ,CAAA;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAE/B,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,MAAM,MAAM,GAAG,IAAI,oBAAW,EAAE,CAAA;QAChC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAChB,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,MAAgB,EAAE,EAAE;QACvC,OAAO,IAAI,OAAO,CAAQ,OAAO,CAAC,EAAE;YAClC,MAAM,IAAI,GAAG,EAAW,CAAA;YACxB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;YACrC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,YAAY,EAAE,CAAA;IACjC,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAA;IAE/C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,qBAAqB,CAAC,CAAA;IACnD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEzD,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,IAAA,kDAAqB,EAAC,CAAC,CAAC,CAAC,CAAA;IAChE,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAA;IAE/C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,qBAAqB,CAAC,CAAA;IACnD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEzD,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,IAAA,kDAAqB,EAAC,CAAC,CAAC,CAAC,CAAA;IAChE,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAA;IAE/C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,qBAAqB,CAAC,CAAA;IACnD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAA;AACtD,CAAC,CAAC,CAAA"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { Readable } from 'stream';
4
+ export declare function bufferToQrValue(buf: Buffer): Promise<string>;
5
+ export declare function qrValueToStream(value: string): Promise<Readable>;
6
+ //# sourceMappingURL=qrcode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qrcode.d.ts","sourceRoot":"","sources":["../../../src/qrcode.ts"],"names":[],"mappings":";;AAAA,OAAO,EAEL,QAAQ,EACT,MAAoB,QAAQ,CAAA;AAa7B,wBAAsB,eAAe,CAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAenE;AAED,wBAAsB,eAAe,CAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAIvE"}
@@ -0,0 +1,35 @@
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.qrValueToStream = exports.bufferToQrValue = void 0;
7
+ const stream_1 = require("stream");
8
+ // The npm package of my best choice for QR code decoding on Angular SPA
9
+ // https://dev.to/j_sakamoto/the-npm-package-of-my-best-choice-for-qr-code-decoding-on-angular-spa-4747?returning-user=true
10
+ const jimp_1 = __importDefault(require("jimp"));
11
+ const jsqr_1 = __importDefault(require("jsqr"));
12
+ /**
13
+ * https://www.npmjs.com/package/qrcode
14
+ * Huan(202002): This module is encode only.
15
+ */
16
+ const qrcode_1 = require("qrcode");
17
+ async function bufferToQrValue(buf) {
18
+ const image = await jimp_1.default.read(buf);
19
+ const qrCodeImageArray = new Uint8ClampedArray(image.bitmap.data.buffer);
20
+ const qrCodeResult = (0, jsqr_1.default)(qrCodeImageArray, image.bitmap.width, image.bitmap.height);
21
+ if (qrCodeResult) {
22
+ return qrCodeResult.data;
23
+ }
24
+ else {
25
+ throw new Error('bufferToQrcode(buf) fail!');
26
+ }
27
+ }
28
+ exports.bufferToQrValue = bufferToQrValue;
29
+ async function qrValueToStream(value) {
30
+ const stream = new stream_1.PassThrough();
31
+ await (0, qrcode_1.toFileStream)(stream, value); // only support .png for now
32
+ return stream;
33
+ }
34
+ exports.qrValueToStream = qrValueToStream;
35
+ //# sourceMappingURL=qrcode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qrcode.js","sourceRoot":"","sources":["../../../src/qrcode.ts"],"names":[],"mappings":";;;;;;AAAA,mCAG6B;AAE7B,wEAAwE;AACxE,2HAA2H;AAC3H,gDAAmC;AACnC,gDAAmC;AAEnC;;;GAGG;AACH,mCAAqC;AAE9B,KAAK,UAAU,eAAe,CAAE,GAAW;IAChD,MAAM,KAAK,GAAG,MAAM,cAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClC,MAAM,gBAAgB,GAAG,IAAI,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAExE,MAAM,YAAY,GAAG,IAAA,cAAI,EACvB,gBAAgB,EAChB,KAAK,CAAC,MAAM,CAAC,KAAK,EAClB,KAAK,CAAC,MAAM,CAAC,MAAM,CACpB,CAAA;IAED,IAAI,YAAY,EAAE;QAChB,OAAO,YAAY,CAAC,IAAI,CAAA;KACzB;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;KAC7C;AACH,CAAC;AAfD,0CAeC;AAEM,KAAK,UAAU,eAAe,CAAE,KAAa;IAClD,MAAM,MAAM,GAAG,IAAI,oBAAW,EAAE,CAAA;IAChC,MAAM,IAAA,qBAAY,EAAC,MAAM,EAAE,KAAK,CAAC,CAAA,CAAC,4BAA4B;IAC9D,OAAO,MAAM,CAAA;AACf,CAAC;AAJD,0CAIC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ export {};
3
+ //# sourceMappingURL=qrcode.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qrcode.spec.d.ts","sourceRoot":"","sources":["../../../src/qrcode.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,47 @@
1
+ #!/usr/bin/env -S node --no-warnings --loader ts-node/esm
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const tstest_1 = require("tstest");
5
+ const qrcode_js_1 = require("./qrcode.js");
6
+ (0, tstest_1.test)('imageBase64ToQrCode()', async (t) => {
7
+ const QRCODE_IMAGE_BASE64 = [
8
+ 'iVBORw0KGgoAAAANSUhEUgAAAMgAAADIAQMAAACXljzdAAAABlBMVEX///8AAABVwtN+AAAA',
9
+ 'CXBIWXMAAA7EAAAOxAGVKw4bAAAA7klEQVRYw+2WsQ3EIAxFjShSMgKjZLRktIzCCJQpIv7Z',
10
+ 'hCiXO/qzT/wCWXo0X3wbEw0NWVaEKM187KHW2QLZ+AhpXovfQ+J6skEWHELqBa5NEeCwR7iS',
11
+ 'V7BDzuzAiZ9eqn5IWjfWXHf7VCO5tPAM6U9AjSRideyHFn4FiuvDqV5CM9rZXuF2pZmIAjZy',
12
+ 'x4S0MDdBxEmu3TrliPf7iglPvuLlRydfU3P70UweCSK+ZYK0mUg1O4AVcv0/8itGkC7SdiTH',
13
+ '0+Mz19oJZ4NkhhSPbIhQkQGI8u1HJzmzs7p7pzNAru2pJb6z8ykkQ0P/pheK6vjurjf7+wAA',
14
+ 'AABJRU5ErkJggg==',
15
+ ].join('');
16
+ const EXPECTED_QRCODE_TEXT = 'hello, world!';
17
+ const buf = Buffer.from(QRCODE_IMAGE_BASE64, 'base64');
18
+ const text = await (0, qrcode_js_1.bufferToQrValue)(buf);
19
+ t.equal(text, EXPECTED_QRCODE_TEXT, 'should decode qrcode image base64');
20
+ });
21
+ (0, tstest_1.test)('qrValueToStream()', async (t) => {
22
+ const QRCODE_VALUE = 'hello, world!';
23
+ const EXPECTED_QRCODE_IMAGE_BASE64 = [
24
+ 'iVBORw0KGgoAAAANSUhEUgAAAHQAAAB0CAYAAABUmhYnAAAAAklEQVR4AewaftIAAAKcSURBVO3BQY7',
25
+ 'cQAwEwSxC//9yeo88NSBIsx7TjIg/WGMUa5RijVKsUYo1SrFGKdYoxRqlWKMUa5RijVKsUYo1SrFGKd',
26
+ 'YoxRrl4qEk/CaVkyTcoXKShN+k8kSxRinWKMUa5eJlKm9Kwh0qn6TypiS8qVijFGuUYo1y8WFJuEPlj',
27
+ 'iR0Kl0SOpUuCZ3KHUm4Q+WTijVKsUYp1igXw6n8T4o1SrFGKdYoF8MloVOZrFijFGuUYo1y8WEq3yQJ',
28
+ 'ncoTKt+kWKMUa5RijXLxsiR8M5UuCZ3KSRK+WbFGKdYoxRrl4iGVf5nKicq/pFijFGuUYo0Sf/BAEjq',
29
+ 'VLglvUnkiCZ3KSRLepPJJxRqlWKMUa5SLlyXhROU3JaFT6ZJwonKShCeS0Kk8UaxRijVKsUaJP3hREj',
30
+ 'qVO5JwotIloVO5Iwl3qJwk4Q6VNxVrlGKNUqxRLv6yJJyodEl4Igl3qHRJ6FTuUPmkYo1SrFGKNcrFQ',
31
+ '0k4ScITSehUuiScJKFT6ZLQqXRJuEPljiR0Kk8Ua5RijVKsUS4eUvkmSbhDpUvCHUk4UflNxRqlWKMU',
32
+ 'a5SLh5Lwm1Q6lS4JdyThCZWTJJyovKlYoxRrlGKNcvEylTcl4SQJnUqXhCdUuiScJOFvKtYoxRqlWKN',
33
+ 'cfFgS7lB5k0qXhDuS0Kl0SehUTpLQJaFTeaJYoxRrlGKNcjFcEjqVJ5JwkoROpVP5pGKNUqxRijXKxX',
34
+ '8mCScqXRJOVE6S0Kl8UrFGKdYoxRrl4sNUPknlDpUuCV0SOpWTJHyTYo1SrFGKNcrFy5Lwm5LQqXQqX',
35
+ 'RI6lZMkdConKidJ6FTeVKxRijVKsUaJP1hjFGuUYo1SrFGKNUqxRinWKMUapVijFGuUYo1SrFGKNUqx',
36
+ 'RinWKMUa5Q8Ztu740xD9iQAAAABJRU5ErkJggg==',
37
+ ].join('');
38
+ const stream = await (0, qrcode_js_1.qrValueToStream)(QRCODE_VALUE);
39
+ const chunks = [];
40
+ for await (const chunk of stream) {
41
+ chunks.push(chunk);
42
+ }
43
+ const buf = Buffer.concat(chunks);
44
+ const base64Text = buf.toString('base64');
45
+ t.equal(base64Text, EXPECTED_QRCODE_IMAGE_BASE64, 'should encode QR Code value to expected image');
46
+ });
47
+ //# sourceMappingURL=qrcode.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qrcode.spec.js","sourceRoot":"","sources":["../../../src/qrcode.spec.ts"],"names":[],"mappings":";;;AAEA,mCAA6B;AAE7B,2CAGwC;AAExC,IAAA,aAAI,EAAC,uBAAuB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IACtC,MAAM,mBAAmB,GAAG;QAC1B,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,kBAAkB;KACnB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACV,MAAM,oBAAoB,GAAG,eAAe,CAAA;IAE5C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;IACtD,MAAM,IAAI,GAAG,MAAM,IAAA,2BAAe,EAAC,GAAG,CAAC,CAAA;IACvC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,oBAAoB,EAAE,mCAAmC,CAAC,CAAA;AAC1E,CAAC,CAAC,CAAA;AAEF,IAAA,aAAI,EAAC,mBAAmB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IAClC,MAAM,YAAY,GAAG,eAAe,CAAA;IACpC,MAAM,4BAA4B,GAAG;QACnC,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,0CAA0C;KAC3C,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEV,MAAM,MAAM,GAAG,MAAM,IAAA,2BAAe,EAAC,YAAY,CAAC,CAAA;IAElD,MAAM,MAAM,GAAG,EAAc,CAAA;IAC7B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE;QAChC,MAAM,CAAC,IAAI,CAAC,KAAe,CAAC,CAAA;KAC7B;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAEzC,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,4BAA4B,EAAE,+CAA+C,CAAC,CAAA;AACpG,CAAC,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { UniformResourceNameRegistry } from './uniform-resource-name-registry.js';
2
+ export { UniformResourceNameRegistry, };
3
+ //# sourceMappingURL=mod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/urn-registry/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC5B,MAAsC,qCAAqC,CAAA;AAE5E,OAAO,EACL,2BAA2B,GAC5B,CAAA"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UniformResourceNameRegistry = void 0;
4
+ const uniform_resource_name_registry_js_1 = require("./uniform-resource-name-registry.js");
5
+ Object.defineProperty(exports, "UniformResourceNameRegistry", { enumerable: true, get: function () { return uniform_resource_name_registry_js_1.UniformResourceNameRegistry; } });
6
+ //# sourceMappingURL=mod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../../src/urn-registry/mod.ts"],"names":[],"mappings":";;;AAAA,2FAE4E;AAG1E,4GAJA,+DAA2B,OAIA"}
@@ -0,0 +1,4 @@
1
+ import * as uuid from 'uuid';
2
+ declare const randomUuid: (<T extends ArrayLike<number>>(options: uuid.V4Options | null | undefined, buffer: T, offset?: number | undefined) => T) & ((options?: uuid.V4Options | undefined) => string);
3
+ export { randomUuid, };
4
+ //# sourceMappingURL=random-uuid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random-uuid.d.ts","sourceRoot":"","sources":["../../../../src/urn-registry/random-uuid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAE5B,QAAA,MAAM,UAAU,+KAAU,CAAA;AAE1B,OAAO,EACL,UAAU,GACX,CAAA"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.randomUuid = void 0;
27
+ const uuid = __importStar(require("uuid"));
28
+ const randomUuid = uuid.v4;
29
+ exports.randomUuid = randomUuid;
30
+ //# sourceMappingURL=random-uuid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random-uuid.js","sourceRoot":"","sources":["../../../../src/urn-registry/random-uuid.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4B;AAE5B,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAA;AAGxB,gCAAU"}