@juzi/file-box 1.7.6 → 1.7.8

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 (59) hide show
  1. package/dist/cjs/src/config.d.ts +7 -1
  2. package/dist/cjs/src/config.d.ts.map +1 -1
  3. package/dist/cjs/src/config.js +9 -2
  4. package/dist/cjs/src/config.js.map +1 -1
  5. package/dist/cjs/src/file-box.d.ts +3 -2
  6. package/dist/cjs/src/file-box.d.ts.map +1 -1
  7. package/dist/cjs/src/file-box.js +1 -0
  8. package/dist/cjs/src/file-box.js.map +1 -1
  9. package/dist/cjs/src/misc.d.ts.map +1 -1
  10. package/dist/cjs/src/misc.js +37 -8
  11. package/dist/cjs/src/misc.js.map +1 -1
  12. package/dist/cjs/src/misc.spec.js.map +1 -1
  13. package/dist/cjs/src/mod.d.ts +1 -0
  14. package/dist/cjs/src/mod.d.ts.map +1 -1
  15. package/dist/cjs/src/mod.js +15 -0
  16. package/dist/cjs/src/mod.js.map +1 -1
  17. package/dist/cjs/src/pure-functions/sized-chunk-transformer.js.map +1 -1
  18. package/dist/cjs/src/qrcode.js.map +1 -1
  19. package/dist/cjs/src/qrcode.spec.js.map +1 -1
  20. package/dist/cjs/src/urn-registry/uniform-resource-name-registry.js.map +1 -1
  21. package/dist/cjs/src/version.d.ts +2 -3
  22. package/dist/cjs/src/version.d.ts.map +1 -1
  23. package/dist/cjs/src/version.js +4 -5
  24. package/dist/cjs/src/version.js.map +1 -1
  25. package/dist/cjs/tests/network-timeout.spec.js +14 -14
  26. package/dist/cjs/tests/network-timeout.spec.js.map +1 -1
  27. package/dist/esm/src/config.d.ts +7 -1
  28. package/dist/esm/src/config.d.ts.map +1 -1
  29. package/dist/esm/src/config.js +8 -1
  30. package/dist/esm/src/config.js.map +1 -1
  31. package/dist/esm/src/file-box.d.ts +3 -2
  32. package/dist/esm/src/file-box.d.ts.map +1 -1
  33. package/dist/esm/src/file-box.js +1 -0
  34. package/dist/esm/src/file-box.js.map +1 -1
  35. package/dist/esm/src/misc.d.ts.map +1 -1
  36. package/dist/esm/src/misc.js +38 -9
  37. package/dist/esm/src/misc.js.map +1 -1
  38. package/dist/esm/src/misc.spec.js.map +1 -1
  39. package/dist/esm/src/mod.d.ts +1 -0
  40. package/dist/esm/src/mod.d.ts.map +1 -1
  41. package/dist/esm/src/mod.js +1 -0
  42. package/dist/esm/src/mod.js.map +1 -1
  43. package/dist/esm/src/pure-functions/sized-chunk-transformer.js.map +1 -1
  44. package/dist/esm/src/qrcode.js.map +1 -1
  45. package/dist/esm/src/qrcode.spec.js.map +1 -1
  46. package/dist/esm/src/urn-registry/uniform-resource-name-registry.js.map +1 -1
  47. package/dist/esm/src/version.d.ts +2 -3
  48. package/dist/esm/src/version.d.ts.map +1 -1
  49. package/dist/esm/src/version.js +2 -3
  50. package/dist/esm/src/version.js.map +1 -1
  51. package/dist/esm/tests/network-timeout.spec.js +14 -14
  52. package/dist/esm/tests/network-timeout.spec.js.map +1 -1
  53. package/package.json +4 -2
  54. package/src/config.ts +6 -0
  55. package/src/file-box.ts +1 -0
  56. package/src/misc.spec.ts +2 -2
  57. package/src/misc.ts +34 -2
  58. package/src/mod.ts +2 -0
  59. package/src/version.ts +2 -4
package/src/misc.ts CHANGED
@@ -3,14 +3,25 @@ import { randomUUID } from 'crypto'
3
3
  import { once } from 'events'
4
4
  import { createReadStream, createWriteStream } from 'fs'
5
5
  import { rm } from 'fs/promises'
6
- import http from 'http'
6
+ import http, { RequestOptions } from 'http'
7
7
  import https from 'https'
8
+ import { HttpsProxyAgent } from 'https-proxy-agent'
8
9
  import { tmpdir } from 'os'
9
10
  import { join } from 'path'
10
11
  import type { Readable } from 'stream'
11
12
  import { URL } from 'url'
12
13
 
13
- import { HTTP_CHUNK_SIZE, HTTP_REQUEST_TIMEOUT, HTTP_RESPONSE_TIMEOUT, NO_SLICE_DOWN } from './config.js'
14
+ import {
15
+ HTTP_CHUNK_SIZE,
16
+ HTTP_REQUEST_TIMEOUT,
17
+ HTTP_RESPONSE_TIMEOUT,
18
+ NO_SLICE_DOWN,
19
+ PROXY_HOST,
20
+ PROXY_PASSWORD,
21
+ PROXY_PORT,
22
+ PROXY_TYPE,
23
+ PROXY_USERNAME,
24
+ } from './config.js'
14
25
 
15
26
  const protocolMap: {
16
27
  [key: string]: { agent: http.Agent; request: typeof http.request }
@@ -112,6 +123,7 @@ async function fetch (url: string, options: http.RequestOptions): Promise<http.I
112
123
  agent,
113
124
  ...options,
114
125
  }
126
+ setProxy(opts)
115
127
  const req = request(url, opts).end()
116
128
  req
117
129
  .on('error', () => {
@@ -197,3 +209,23 @@ export async function streamToBuffer (stream: Readable): Promise<Buffer> {
197
209
  }
198
210
  return Buffer.concat(chunks)
199
211
  }
212
+
213
+ function getProxyUrl () {
214
+ const proxyType = PROXY_TYPE
215
+ const proxyHost = PROXY_HOST
216
+ const proxyPort = PROXY_PORT
217
+ const proxyUsername = PROXY_USERNAME
218
+ const proxyPassword = PROXY_PASSWORD
219
+ if (proxyType === 'http') {
220
+ return `http://${proxyUsername}:${proxyPassword}@${proxyHost}:${proxyPort}`
221
+ }
222
+ return ''
223
+ }
224
+
225
+ function setProxy (options: RequestOptions): void {
226
+ const url = getProxyUrl()
227
+ if (url) {
228
+ const agent = new HttpsProxyAgent(url)
229
+ options.agent = agent
230
+ }
231
+ }
package/src/mod.ts CHANGED
@@ -31,3 +31,5 @@ export {
31
31
  UniformResourceNameRegistry,
32
32
  VERSION,
33
33
  }
34
+
35
+ export * from './misc.js'
package/src/version.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  /**
2
- * This file will be overwrite when we publish NPM module
3
- * by scripts/generate_version.ts
2
+ * This file was auto generated from scripts/generate-version.sh
4
3
  */
5
-
6
- export const VERSION = '0.0.0'
4
+ export const VERSION: string = '1.7.8'