geotiff 3.0.2 → 3.0.4-beta.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.
- package/dist-browser/geotiff.js +3 -3
- package/dist-browser/geotiff.js.map +1 -1
- package/dist-module/compression/basedecoder.d.ts +30 -4
- package/dist-module/compression/basedecoder.d.ts.map +1 -1
- package/dist-module/compression/basedecoder.js +22 -1
- package/dist-module/compression/basedecoder.js.map +1 -0
- package/dist-module/compression/deflate.d.ts +2 -1
- package/dist-module/compression/deflate.d.ts.map +1 -1
- package/dist-module/compression/deflate.js +2 -0
- package/dist-module/compression/deflate.js.map +1 -0
- package/dist-module/compression/index.d.ts +14 -22
- package/dist-module/compression/index.d.ts.map +1 -1
- package/dist-module/compression/index.js +36 -25
- package/dist-module/compression/index.js.map +1 -0
- package/dist-module/compression/jpeg.d.ts +55 -15
- package/dist-module/compression/jpeg.d.ts.map +1 -1
- package/dist-module/compression/jpeg.js +187 -16
- package/dist-module/compression/jpeg.js.map +1 -0
- package/dist-module/compression/lerc.d.ts +11 -1
- package/dist-module/compression/lerc.d.ts.map +1 -1
- package/dist-module/compression/lerc.js +16 -4
- package/dist-module/compression/lerc.js.map +1 -0
- package/dist-module/compression/lzw.d.ts +2 -1
- package/dist-module/compression/lzw.d.ts.map +1 -1
- package/dist-module/compression/lzw.js +29 -1
- package/dist-module/compression/lzw.js.map +1 -0
- package/dist-module/compression/packbits.d.ts +2 -1
- package/dist-module/compression/packbits.d.ts.map +1 -1
- package/dist-module/compression/packbits.js +2 -0
- package/dist-module/compression/packbits.js.map +1 -0
- package/dist-module/compression/raw.d.ts +2 -1
- package/dist-module/compression/raw.d.ts.map +1 -1
- package/dist-module/compression/raw.js +2 -0
- package/dist-module/compression/raw.js.map +1 -0
- package/dist-module/compression/webimage.d.ts +2 -1
- package/dist-module/compression/webimage.d.ts.map +1 -1
- package/dist-module/compression/webimage.js +5 -0
- package/dist-module/compression/webimage.js.map +1 -0
- package/dist-module/compression/zstd.d.ts +4 -2
- package/dist-module/compression/zstd.d.ts.map +1 -1
- package/dist-module/compression/zstd.js +3 -1
- package/dist-module/compression/zstd.js.map +1 -0
- package/dist-module/dataslice.d.ts +78 -22
- package/dist-module/dataslice.d.ts.map +1 -1
- package/dist-module/dataslice.js +57 -1
- package/dist-module/dataslice.js.map +1 -0
- package/dist-module/dataview64.d.ts +71 -14
- package/dist-module/dataview64.d.ts.map +1 -1
- package/dist-module/dataview64.js +58 -1
- package/dist-module/dataview64.js.map +1 -0
- package/dist-module/geotiff.d.ts +61 -12
- package/dist-module/geotiff.d.ts.map +1 -1
- package/dist-module/geotiff.js +73 -14
- package/dist-module/geotiff.js.map +1 -0
- package/dist-module/geotiffimage.d.ts +41 -15
- package/dist-module/geotiffimage.d.ts.map +1 -1
- package/dist-module/geotiffimage.js +132 -52
- package/dist-module/geotiffimage.js.map +1 -0
- package/dist-module/geotiffwriter.d.ts +28 -1
- package/dist-module/geotiffwriter.d.ts.map +1 -1
- package/dist-module/geotiffwriter.js +206 -84
- package/dist-module/geotiffwriter.js.map +1 -0
- package/dist-module/globals.d.ts +912 -92
- package/dist-module/globals.d.ts.map +1 -1
- package/dist-module/globals.js +201 -227
- package/dist-module/globals.js.map +1 -0
- package/dist-module/imagefiledirectory.d.ts +72 -19
- package/dist-module/imagefiledirectory.d.ts.map +1 -1
- package/dist-module/imagefiledirectory.js +51 -26
- package/dist-module/imagefiledirectory.js.map +1 -0
- package/dist-module/logging.d.ts +36 -10
- package/dist-module/logging.d.ts.map +1 -1
- package/dist-module/logging.js +16 -2
- package/dist-module/logging.js.map +1 -0
- package/dist-module/pool.d.ts +15 -8
- package/dist-module/pool.d.ts.map +1 -1
- package/dist-module/pool.js +11 -3
- package/dist-module/pool.js.map +1 -0
- package/dist-module/predictor.d.ts +10 -1
- package/dist-module/predictor.d.ts.map +1 -1
- package/dist-module/predictor.js +19 -0
- package/dist-module/predictor.js.map +1 -0
- package/dist-module/resample.d.ts.map +1 -1
- package/dist-module/resample.js +12 -0
- package/dist-module/resample.js.map +1 -0
- package/dist-module/rgb.js +1 -0
- package/dist-module/rgb.js.map +1 -0
- package/dist-module/source/arraybuffer.d.ts +7 -4
- package/dist-module/source/arraybuffer.d.ts.map +1 -1
- package/dist-module/source/arraybuffer.js +15 -1
- package/dist-module/source/arraybuffer.js.map +1 -0
- package/dist-module/source/basesource.d.ts +11 -6
- package/dist-module/source/basesource.d.ts.map +1 -1
- package/dist-module/source/basesource.js +7 -4
- package/dist-module/source/basesource.js.map +1 -0
- package/dist-module/source/blockedsource.d.ts +2 -2
- package/dist-module/source/blockedsource.d.ts.map +1 -1
- package/dist-module/source/blockedsource.js +8 -5
- package/dist-module/source/blockedsource.js.map +1 -0
- package/dist-module/source/client/base.d.ts +8 -7
- package/dist-module/source/client/base.d.ts.map +1 -1
- package/dist-module/source/client/base.js +7 -5
- package/dist-module/source/client/base.js.map +1 -0
- package/dist-module/source/client/fetch.d.ts +6 -2
- package/dist-module/source/client/fetch.d.ts.map +1 -1
- package/dist-module/source/client/fetch.js +7 -2
- package/dist-module/source/client/fetch.js.map +1 -0
- package/dist-module/source/client/http.d.ts +27 -5
- package/dist-module/source/client/http.d.ts.map +1 -1
- package/dist-module/source/client/http.js +16 -2
- package/dist-module/source/client/http.js.map +1 -0
- package/dist-module/source/client/xhr.d.ts +22 -3
- package/dist-module/source/client/xhr.d.ts.map +1 -1
- package/dist-module/source/client/xhr.js +12 -2
- package/dist-module/source/client/xhr.js.map +1 -0
- package/dist-module/source/file.d.ts +8 -5
- package/dist-module/source/file.d.ts.map +1 -1
- package/dist-module/source/file.js +40 -8
- package/dist-module/source/file.js.map +1 -0
- package/dist-module/source/filereader.d.ts +12 -4
- package/dist-module/source/filereader.d.ts.map +1 -1
- package/dist-module/source/filereader.js +15 -2
- package/dist-module/source/filereader.js.map +1 -0
- package/dist-module/source/httputils.d.ts +16 -9
- package/dist-module/source/httputils.d.ts.map +1 -1
- package/dist-module/source/httputils.js +19 -12
- package/dist-module/source/httputils.js.map +1 -0
- package/dist-module/source/remote.d.ts.map +1 -1
- package/dist-module/source/remote.js +19 -7
- package/dist-module/source/remote.js.map +1 -0
- package/dist-module/utils.d.ts +36 -41
- package/dist-module/utils.d.ts.map +1 -1
- package/dist-module/utils.js +17 -12
- package/dist-module/utils.js.map +1 -0
- package/dist-module/worker/create.js +1 -1
- package/dist-module/worker/create.js.map +1 -0
- package/dist-module/worker/decoder.d.ts +2 -0
- package/dist-module/worker/decoder.d.ts.map +1 -0
- package/dist-module/worker/decoder.js +21 -0
- package/dist-module/worker/decoder.js.map +1 -0
- package/dist-node/compression/basedecoder.d.ts +30 -4
- package/dist-node/compression/basedecoder.d.ts.map +1 -1
- package/dist-node/compression/basedecoder.js +22 -1
- package/dist-node/compression/basedecoder.js.map +1 -1
- package/dist-node/compression/deflate.d.ts +2 -1
- package/dist-node/compression/deflate.d.ts.map +1 -1
- package/dist-node/compression/deflate.js +2 -0
- package/dist-node/compression/deflate.js.map +1 -1
- package/dist-node/compression/index.d.ts +14 -22
- package/dist-node/compression/index.d.ts.map +1 -1
- package/dist-node/compression/index.js +36 -25
- package/dist-node/compression/index.js.map +1 -1
- package/dist-node/compression/jpeg.d.ts +55 -16
- package/dist-node/compression/jpeg.d.ts.map +1 -1
- package/dist-node/compression/jpeg.js +187 -16
- package/dist-node/compression/jpeg.js.map +1 -1
- package/dist-node/compression/lerc.d.ts +11 -1
- package/dist-node/compression/lerc.d.ts.map +1 -1
- package/dist-node/compression/lerc.js +16 -4
- package/dist-node/compression/lerc.js.map +1 -1
- package/dist-node/compression/lzw.d.ts +2 -1
- package/dist-node/compression/lzw.d.ts.map +1 -1
- package/dist-node/compression/lzw.js +29 -1
- package/dist-node/compression/lzw.js.map +1 -1
- package/dist-node/compression/packbits.d.ts +2 -1
- package/dist-node/compression/packbits.d.ts.map +1 -1
- package/dist-node/compression/packbits.js +2 -0
- package/dist-node/compression/packbits.js.map +1 -1
- package/dist-node/compression/raw.d.ts +2 -1
- package/dist-node/compression/raw.d.ts.map +1 -1
- package/dist-node/compression/raw.js +2 -0
- package/dist-node/compression/raw.js.map +1 -1
- package/dist-node/compression/webimage.d.ts +2 -2
- package/dist-node/compression/webimage.d.ts.map +1 -1
- package/dist-node/compression/webimage.js +5 -0
- package/dist-node/compression/webimage.js.map +1 -1
- package/dist-node/compression/zstd.d.ts +2 -1
- package/dist-node/compression/zstd.d.ts.map +1 -1
- package/dist-node/compression/zstd.js +3 -1
- package/dist-node/compression/zstd.js.map +1 -1
- package/dist-node/dataslice.d.ts +78 -22
- package/dist-node/dataslice.d.ts.map +1 -1
- package/dist-node/dataslice.js +57 -1
- package/dist-node/dataslice.js.map +1 -1
- package/dist-node/dataview64.d.ts +71 -14
- package/dist-node/dataview64.d.ts.map +1 -1
- package/dist-node/dataview64.js +58 -1
- package/dist-node/dataview64.js.map +1 -1
- package/dist-node/geotiff.d.ts +61 -12
- package/dist-node/geotiff.d.ts.map +1 -1
- package/dist-node/geotiff.js +75 -15
- package/dist-node/geotiff.js.map +1 -1
- package/dist-node/geotiffimage.d.ts +41 -15
- package/dist-node/geotiffimage.d.ts.map +1 -1
- package/dist-node/geotiffimage.js +132 -52
- package/dist-node/geotiffimage.js.map +1 -1
- package/dist-node/geotiffwriter.d.ts +28 -1
- package/dist-node/geotiffwriter.d.ts.map +1 -1
- package/dist-node/geotiffwriter.js +206 -84
- package/dist-node/geotiffwriter.js.map +1 -1
- package/dist-node/globals.d.ts +910 -90
- package/dist-node/globals.d.ts.map +1 -1
- package/dist-node/globals.js +202 -228
- package/dist-node/globals.js.map +1 -1
- package/dist-node/imagefiledirectory.d.ts +72 -19
- package/dist-node/imagefiledirectory.d.ts.map +1 -1
- package/dist-node/imagefiledirectory.js +51 -26
- package/dist-node/imagefiledirectory.js.map +1 -1
- package/dist-node/logging.d.ts +36 -10
- package/dist-node/logging.d.ts.map +1 -1
- package/dist-node/logging.js +16 -2
- package/dist-node/logging.js.map +1 -1
- package/dist-node/pool.d.ts +15 -8
- package/dist-node/pool.d.ts.map +1 -1
- package/dist-node/pool.js +11 -3
- package/dist-node/pool.js.map +1 -1
- package/dist-node/predictor.d.ts +10 -1
- package/dist-node/predictor.d.ts.map +1 -1
- package/dist-node/predictor.js +19 -0
- package/dist-node/predictor.js.map +1 -1
- package/dist-node/resample.d.ts.map +1 -1
- package/dist-node/resample.js +12 -0
- package/dist-node/resample.js.map +1 -1
- package/dist-node/rgb.js +1 -0
- package/dist-node/rgb.js.map +1 -1
- package/dist-node/source/arraybuffer.d.ts +7 -4
- package/dist-node/source/arraybuffer.d.ts.map +1 -1
- package/dist-node/source/arraybuffer.js +15 -1
- package/dist-node/source/arraybuffer.js.map +1 -1
- package/dist-node/source/basesource.d.ts +11 -6
- package/dist-node/source/basesource.d.ts.map +1 -1
- package/dist-node/source/basesource.js +7 -4
- package/dist-node/source/basesource.js.map +1 -1
- package/dist-node/source/blockedsource.d.ts +2 -2
- package/dist-node/source/blockedsource.d.ts.map +1 -1
- package/dist-node/source/blockedsource.js +8 -5
- package/dist-node/source/blockedsource.js.map +1 -1
- package/dist-node/source/client/base.d.ts +8 -7
- package/dist-node/source/client/base.d.ts.map +1 -1
- package/dist-node/source/client/base.js +7 -5
- package/dist-node/source/client/base.js.map +1 -1
- package/dist-node/source/client/fetch.d.ts +5 -2
- package/dist-node/source/client/fetch.d.ts.map +1 -1
- package/dist-node/source/client/fetch.js +7 -2
- package/dist-node/source/client/fetch.js.map +1 -1
- package/dist-node/source/client/http.d.ts +22 -4
- package/dist-node/source/client/http.d.ts.map +1 -1
- package/dist-node/source/client/http.js +16 -2
- package/dist-node/source/client/http.js.map +1 -1
- package/dist-node/source/client/xhr.d.ts +23 -3
- package/dist-node/source/client/xhr.d.ts.map +1 -1
- package/dist-node/source/client/xhr.js +12 -2
- package/dist-node/source/client/xhr.js.map +1 -1
- package/dist-node/source/file.d.ts +8 -5
- package/dist-node/source/file.d.ts.map +1 -1
- package/dist-node/source/file.js +40 -8
- package/dist-node/source/file.js.map +1 -1
- package/dist-node/source/filereader.d.ts +12 -4
- package/dist-node/source/filereader.d.ts.map +1 -1
- package/dist-node/source/filereader.js +15 -2
- package/dist-node/source/filereader.js.map +1 -1
- package/dist-node/source/httputils.d.ts +16 -9
- package/dist-node/source/httputils.d.ts.map +1 -1
- package/dist-node/source/httputils.js +19 -12
- package/dist-node/source/httputils.js.map +1 -1
- package/dist-node/source/remote.d.ts.map +1 -1
- package/dist-node/source/remote.js +19 -7
- package/dist-node/source/remote.js.map +1 -1
- package/dist-node/utils.d.ts +9 -8
- package/dist-node/utils.d.ts.map +1 -1
- package/dist-node/utils.js +17 -12
- package/dist-node/utils.js.map +1 -1
- package/dist-node/worker/create.js +1 -1
- package/dist-node/worker/create.js.map +1 -1
- package/dist-node/worker/decoder.d.ts +2 -0
- package/dist-node/worker/decoder.d.ts.map +1 -0
- package/dist-node/worker/decoder.js +24 -0
- package/dist-node/worker/decoder.js.map +1 -0
- package/package.json +5 -3
|
@@ -14,14 +14,23 @@ class XHRResponse extends BaseResponse {
|
|
|
14
14
|
get status() {
|
|
15
15
|
return this.xhr.status;
|
|
16
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* @param {string} name
|
|
19
|
+
* @returns {string|undefined}
|
|
20
|
+
*/
|
|
17
21
|
getHeader(name) {
|
|
18
|
-
return this.xhr.getResponseHeader(name);
|
|
22
|
+
return this.xhr.getResponseHeader(name) || undefined;
|
|
19
23
|
}
|
|
20
24
|
async getData() {
|
|
21
25
|
return this.data;
|
|
22
26
|
}
|
|
23
27
|
}
|
|
24
28
|
export class XHRClient extends BaseClient {
|
|
29
|
+
/**
|
|
30
|
+
* @param {Object<string, string>} headers
|
|
31
|
+
* @param {AbortSignal} [signal]
|
|
32
|
+
* @returns {Promise<XHRResponse>}
|
|
33
|
+
*/
|
|
25
34
|
constructRequest(headers, signal) {
|
|
26
35
|
return new Promise((resolve, reject) => {
|
|
27
36
|
const xhr = new XMLHttpRequest();
|
|
@@ -46,8 +55,9 @@ export class XHRClient extends BaseClient {
|
|
|
46
55
|
}
|
|
47
56
|
});
|
|
48
57
|
}
|
|
49
|
-
async request({ headers =
|
|
58
|
+
async request({ headers = {}, signal = undefined } = {}) {
|
|
50
59
|
const response = await this.constructRequest(headers, signal);
|
|
51
60
|
return response;
|
|
52
61
|
}
|
|
53
62
|
}
|
|
63
|
+
//# sourceMappingURL=xhr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xhr.js","sourceRoot":"","sources":["../../../src/source/client/xhr.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAY,SAAQ,YAAY;IACpC;;;;OAIG;IACH,YAAY,GAAG,EAAE,IAAI;QACnB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,IAAI;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,OAAO,SAAU,SAAQ,UAAU;IACvC;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM;QAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,GAAG,CAAC,YAAY,GAAG,aAAa,CAAC;YACjC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC;YAED,eAAe;YACf,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;gBAChB,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;gBAC1B,OAAO,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACtC,CAAC,CAAC;YACF,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC;YACrB,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC9D,GAAG,CAAC,IAAI,EAAE,CAAC;YAEX,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,CAAC;gBACD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YACtD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE;QACrD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9D,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
/** @param {string} path */
|
|
2
|
+
export function makeFileSource(path: string): FileSource;
|
|
2
3
|
declare class FileSource extends BaseSource {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
/**
|
|
5
|
+
* @param {string} path
|
|
6
|
+
*/
|
|
7
|
+
constructor(path: string);
|
|
8
|
+
path: string;
|
|
9
|
+
openRequest: Promise<number>;
|
|
7
10
|
}
|
|
8
11
|
import { BaseSource } from './basesource.js';
|
|
9
12
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/source/file.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/source/file.js"],"names":[],"mappings":"AA+FA,2BAA2B;AAC3B,qCADY,MAAM,cAGjB;AAzCD;IACE;;OAEG;IACH,kBAFW,MAAM,EAMhB;IAFC,aAAgB;IAChB,6BAAuC;CA6B1C;2BA5F0B,iBAAiB"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import { BaseSource } from './basesource.js';
|
|
3
|
+
/**
|
|
4
|
+
* @param {number} fd
|
|
5
|
+
* @returns {Promise<void>}
|
|
6
|
+
*/
|
|
3
7
|
function closeAsync(fd) {
|
|
4
|
-
return
|
|
8
|
+
return new Promise((resolve, reject) => {
|
|
5
9
|
fs.close(fd, (err) => {
|
|
6
10
|
if (err) {
|
|
7
11
|
reject(err);
|
|
@@ -10,8 +14,14 @@ function closeAsync(fd) {
|
|
|
10
14
|
resolve();
|
|
11
15
|
}
|
|
12
16
|
});
|
|
13
|
-
})
|
|
17
|
+
});
|
|
14
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* @param {string} path
|
|
21
|
+
* @param {string} flags
|
|
22
|
+
* @param {number|undefined} mode
|
|
23
|
+
* @returns {Promise<number>}
|
|
24
|
+
*/
|
|
15
25
|
function openAsync(path, flags, mode = undefined) {
|
|
16
26
|
return new Promise((resolve, reject) => {
|
|
17
27
|
fs.open(path, flags, mode, (err, fd) => {
|
|
@@ -24,35 +34,57 @@ function openAsync(path, flags, mode = undefined) {
|
|
|
24
34
|
});
|
|
25
35
|
});
|
|
26
36
|
}
|
|
27
|
-
|
|
37
|
+
/**
|
|
38
|
+
* @param {number} fd
|
|
39
|
+
* @param {Uint8Array} buffer
|
|
40
|
+
* @param {number} offset
|
|
41
|
+
* @param {number} length
|
|
42
|
+
* @param {number} position
|
|
43
|
+
* @returns {Promise<{bytesRead: number, buffer: Uint8Array}>}
|
|
44
|
+
*/
|
|
45
|
+
function readAsync(fd, buffer, offset, length, position) {
|
|
28
46
|
return new Promise((resolve, reject) => {
|
|
29
|
-
fs.read(
|
|
47
|
+
fs.read(fd, buffer, offset, length, position, (err, bytesRead, outBuffer) => {
|
|
30
48
|
if (err) {
|
|
31
49
|
reject(err);
|
|
32
50
|
}
|
|
33
51
|
else {
|
|
34
|
-
resolve({ bytesRead, buffer });
|
|
52
|
+
resolve({ bytesRead, buffer: outBuffer });
|
|
35
53
|
}
|
|
36
54
|
});
|
|
37
55
|
});
|
|
38
56
|
}
|
|
39
57
|
class FileSource extends BaseSource {
|
|
58
|
+
/**
|
|
59
|
+
* @param {string} path
|
|
60
|
+
*/
|
|
40
61
|
constructor(path) {
|
|
41
62
|
super();
|
|
42
63
|
this.path = path;
|
|
43
64
|
this.openRequest = openAsync(path, 'r');
|
|
44
65
|
}
|
|
45
|
-
|
|
66
|
+
/**
|
|
67
|
+
* @param {import('./basesource.js').Slice} slice
|
|
68
|
+
* @param {AbortSignal} [_signal] not implemented
|
|
69
|
+
* @returns {Promise<import('./basesource.js').SliceWithData>}
|
|
70
|
+
*/
|
|
71
|
+
async fetchSlice(slice, _signal) {
|
|
46
72
|
// TODO: use `signal`
|
|
47
73
|
const fd = await this.openRequest;
|
|
48
|
-
const { buffer } = await readAsync(fd,
|
|
49
|
-
return
|
|
74
|
+
const { buffer } = await readAsync(fd, new Uint8Array(slice.length), 0, slice.length, slice.offset);
|
|
75
|
+
return {
|
|
76
|
+
data: buffer.buffer,
|
|
77
|
+
offset: slice.offset,
|
|
78
|
+
length: slice.length,
|
|
79
|
+
};
|
|
50
80
|
}
|
|
51
81
|
async close() {
|
|
52
82
|
const fd = await this.openRequest;
|
|
53
83
|
await closeAsync(fd);
|
|
54
84
|
}
|
|
55
85
|
}
|
|
86
|
+
/** @param {string} path */
|
|
56
87
|
export function makeFileSource(path) {
|
|
57
88
|
return new FileSource(path);
|
|
58
89
|
}
|
|
90
|
+
//# sourceMappingURL=file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/source/file.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;GAGG;AACH,SAAS,UAAU,CAAC,EAAE;IACpB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YACnB,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,SAAS;IAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;YACrC,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,EAAE,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;IACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;YAC1E,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAW,SAAQ,UAAU;IACjC;;OAEG;IACH,YAAY,IAAI;QACd,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO;QAC7B,qBAAqB;QACrB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;QAClC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAChC,EAAE,EACF,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAC5B,CAAC,EACD,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,MAAM,CACb,CAAC;QACF,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,MAAM;YACnB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;QAClC,MAAM,UAAU,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;CACF;AAED,2BAA2B;AAC3B,MAAM,UAAU,cAAc,CAAC,IAAI;IACjC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -1,13 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Create a new source from a given file/blob.
|
|
3
3
|
* @param {Blob} file The file or blob to read from.
|
|
4
|
-
* @returns The constructed source
|
|
4
|
+
* @returns {FileReaderSource} The constructed source
|
|
5
5
|
*/
|
|
6
6
|
export function makeFileReaderSource(file: Blob): FileReaderSource;
|
|
7
7
|
declare class FileReaderSource extends BaseSource {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
/**
|
|
9
|
+
* @param {Blob} file
|
|
10
|
+
*/
|
|
11
|
+
constructor(file: Blob);
|
|
12
|
+
file: Blob;
|
|
13
|
+
/**
|
|
14
|
+
* @param {import('./basesource.js').Slice} slice
|
|
15
|
+
* @param {AbortSignal} signal
|
|
16
|
+
* @returns {Promise<import('./basesource.js').SliceWithData>}
|
|
17
|
+
*/
|
|
18
|
+
fetchSlice(slice: import("./basesource.js").Slice, signal: AbortSignal): Promise<import("./basesource.js").SliceWithData>;
|
|
11
19
|
}
|
|
12
20
|
import { BaseSource } from './basesource.js';
|
|
13
21
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filereader.d.ts","sourceRoot":"","sources":["../../src/source/filereader.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"filereader.d.ts","sourceRoot":"","sources":["../../src/source/filereader.js"],"names":[],"mappings":"AAoCA;;;;GAIG;AACH,2CAHW,IAAI,GACF,gBAAgB,CAI5B;AAzCD;IACE;;OAEG;IACH,kBAFW,IAAI,EAKd;IADC,WAAgB;IAGlB;;;;OAIG;IACH,kBAJW,OAAO,iBAAiB,EAAE,KAAK,UAC/B,WAAW,GACT,OAAO,CAAC,OAAO,iBAAiB,EAAE,aAAa,CAAC,CAmB5D;CACF;2BAlC0B,iBAAiB"}
|
|
@@ -1,14 +1,26 @@
|
|
|
1
1
|
import { BaseSource } from './basesource.js';
|
|
2
2
|
class FileReaderSource extends BaseSource {
|
|
3
|
+
/**
|
|
4
|
+
* @param {Blob} file
|
|
5
|
+
*/
|
|
3
6
|
constructor(file) {
|
|
4
7
|
super();
|
|
5
8
|
this.file = file;
|
|
6
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* @param {import('./basesource.js').Slice} slice
|
|
12
|
+
* @param {AbortSignal} signal
|
|
13
|
+
* @returns {Promise<import('./basesource.js').SliceWithData>}
|
|
14
|
+
*/
|
|
7
15
|
async fetchSlice(slice, signal) {
|
|
8
16
|
return new Promise((resolve, reject) => {
|
|
9
17
|
const blob = this.file.slice(slice.offset, slice.offset + slice.length);
|
|
10
18
|
const reader = new FileReader();
|
|
11
|
-
reader.onload = () => resolve(
|
|
19
|
+
reader.onload = () => resolve({
|
|
20
|
+
data: /** @type {ArrayBuffer} */ (reader.result),
|
|
21
|
+
offset: slice.offset,
|
|
22
|
+
length: slice.length,
|
|
23
|
+
});
|
|
12
24
|
reader.onerror = reject;
|
|
13
25
|
reader.onabort = reject;
|
|
14
26
|
reader.readAsArrayBuffer(blob);
|
|
@@ -21,8 +33,9 @@ class FileReaderSource extends BaseSource {
|
|
|
21
33
|
/**
|
|
22
34
|
* Create a new source from a given file/blob.
|
|
23
35
|
* @param {Blob} file The file or blob to read from.
|
|
24
|
-
* @returns The constructed source
|
|
36
|
+
* @returns {FileReaderSource} The constructed source
|
|
25
37
|
*/
|
|
26
38
|
export function makeFileReaderSource(file) {
|
|
27
39
|
return new FileReaderSource(file);
|
|
28
40
|
}
|
|
41
|
+
//# sourceMappingURL=filereader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filereader.js","sourceRoot":"","sources":["../../src/source/filereader.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,gBAAiB,SAAQ,UAAU;IACvC;;OAEG;IACH,YAAY,IAAI;QACd,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM;QAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;gBAC5B,IAAI,EAAE,0BAA0B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBAChD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;YACH,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;YACxB,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;YACxB,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAE/B,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAI;IACvC,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Parse a 'Content-Type' header value to the content-type and parameters
|
|
3
|
-
* @param {string|
|
|
4
|
-
* @returns {{type: string|null, params:
|
|
3
|
+
* @param {string|undefined} rawContentType the raw string to parse from
|
|
4
|
+
* @returns {{type: string|null, params: Record<string, string>}}
|
|
5
5
|
* the parsed content type with the fields: type and params
|
|
6
6
|
*/
|
|
7
|
-
export function parseContentType(rawContentType: string |
|
|
7
|
+
export function parseContentType(rawContentType: string | undefined): {
|
|
8
8
|
type: string | null;
|
|
9
|
-
params:
|
|
9
|
+
params: Record<string, string>;
|
|
10
10
|
};
|
|
11
11
|
/**
|
|
12
12
|
* Parse a 'Content-Range' header value to its start, end, and total parts
|
|
13
|
-
* @param {string|
|
|
13
|
+
* @param {string|undefined} rawContentRange the raw string to parse from
|
|
14
14
|
* @returns {{start: number, end: number, total: number}} the parsed parts
|
|
15
15
|
*/
|
|
16
|
-
export function parseContentRange(rawContentRange: string |
|
|
16
|
+
export function parseContentRange(rawContentRange: string | undefined): {
|
|
17
17
|
start: number;
|
|
18
18
|
end: number;
|
|
19
19
|
total: number;
|
|
@@ -26,8 +26,15 @@ export function parseContentRange(rawContentRange: string | null): {
|
|
|
26
26
|
* - offset: the offset of the byterange within its originating file
|
|
27
27
|
* - length: the length of the byterange
|
|
28
28
|
* @param {ArrayBuffer} responseArrayBuffer the response to be parsed and split
|
|
29
|
-
* @param {
|
|
30
|
-
* @returns {
|
|
29
|
+
* @param {string} boundary the boundary string used to split the sections
|
|
30
|
+
* @returns {Array<{headers: Record<string, string>, data: ArrayBuffer, offset: number, length: number, fileSize: number}>}
|
|
31
|
+
* the parsed byteranges
|
|
31
32
|
*/
|
|
32
|
-
export function parseByteRanges(responseArrayBuffer: ArrayBuffer, boundary: string):
|
|
33
|
+
export function parseByteRanges(responseArrayBuffer: ArrayBuffer, boundary: string): Array<{
|
|
34
|
+
headers: Record<string, string>;
|
|
35
|
+
data: ArrayBuffer;
|
|
36
|
+
offset: number;
|
|
37
|
+
length: number;
|
|
38
|
+
fileSize: number;
|
|
39
|
+
}>;
|
|
33
40
|
//# sourceMappingURL=httputils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httputils.d.ts","sourceRoot":"","sources":["../../src/source/httputils.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httputils.d.ts","sourceRoot":"","sources":["../../src/source/httputils.js"],"names":[],"mappings":"AAsCA;;;;;GAKG;AACH,iDAJW,MAAM,GAAC,SAAS,GACd;IAAC,IAAI,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAC,CAU/D;AAED;;;;GAIG;AACH,mDAHW,MAAM,GAAC,SAAS,GACd;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAYvD;AAED;;;;;;;;;;;GAWG;AACH,qDALW,WAAW,YACX,MAAM,GACJ,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,CAAC,CAwEzH"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
const CRLFCRLF = '\r\n\r\n';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
3
|
* Shim for 'Object.fromEntries'
|
|
4
|
+
* @template T
|
|
5
|
+
* @param {Array<[string, T]>} items
|
|
6
|
+
* @return {Record<string, T>}
|
|
4
7
|
*/
|
|
5
8
|
function itemsToObject(items) {
|
|
6
9
|
if (typeof Object.fromEntries !== 'undefined') {
|
|
7
10
|
return Object.fromEntries(items);
|
|
8
11
|
}
|
|
12
|
+
/** @type {Record<string, T>} */
|
|
9
13
|
const obj = {};
|
|
10
14
|
for (const [key, value] of items) {
|
|
11
15
|
obj[key.toLowerCase()] = value;
|
|
@@ -14,14 +18,15 @@ function itemsToObject(items) {
|
|
|
14
18
|
}
|
|
15
19
|
/**
|
|
16
20
|
* Parse HTTP headers from a given string.
|
|
17
|
-
* @param {
|
|
18
|
-
* @returns {
|
|
21
|
+
* @param {string} text the text to parse the headers from
|
|
22
|
+
* @returns {Record<string, string>} the parsed headers with lowercase keys
|
|
19
23
|
*/
|
|
20
24
|
function parseHeaders(text) {
|
|
25
|
+
/** @type {Array<[string, string]>} */
|
|
21
26
|
const items = text
|
|
22
27
|
.split('\r\n')
|
|
23
28
|
.map((line) => {
|
|
24
|
-
const kv = line.split(':').map((str) => str.trim());
|
|
29
|
+
const kv = /** @type {[string, string]} */ (line.split(':').map((str) => str.trim()));
|
|
25
30
|
kv[0] = kv[0].toLowerCase();
|
|
26
31
|
return kv;
|
|
27
32
|
});
|
|
@@ -29,8 +34,8 @@ function parseHeaders(text) {
|
|
|
29
34
|
}
|
|
30
35
|
/**
|
|
31
36
|
* Parse a 'Content-Type' header value to the content-type and parameters
|
|
32
|
-
* @param {string|
|
|
33
|
-
* @returns {{type: string|null, params:
|
|
37
|
+
* @param {string|undefined} rawContentType the raw string to parse from
|
|
38
|
+
* @returns {{type: string|null, params: Record<string, string>}}
|
|
34
39
|
* the parsed content type with the fields: type and params
|
|
35
40
|
*/
|
|
36
41
|
export function parseContentType(rawContentType) {
|
|
@@ -38,12 +43,12 @@ export function parseContentType(rawContentType) {
|
|
|
38
43
|
return { type: null, params: {} };
|
|
39
44
|
}
|
|
40
45
|
const [type, ...rawParams] = rawContentType.split(';').map((s) => s.trim());
|
|
41
|
-
const paramsItems = rawParams.map((param) => param.split('='));
|
|
46
|
+
const paramsItems = /** @type {Array<[string, string]>} */ (rawParams.map((param) => param.split('=')));
|
|
42
47
|
return { type, params: itemsToObject(paramsItems) };
|
|
43
48
|
}
|
|
44
49
|
/**
|
|
45
50
|
* Parse a 'Content-Range' header value to its start, end, and total parts
|
|
46
|
-
* @param {string|
|
|
51
|
+
* @param {string|undefined} rawContentRange the raw string to parse from
|
|
47
52
|
* @returns {{start: number, end: number, total: number}} the parsed parts
|
|
48
53
|
*/
|
|
49
54
|
export function parseContentRange(rawContentRange) {
|
|
@@ -63,11 +68,12 @@ export function parseContentRange(rawContentRange) {
|
|
|
63
68
|
* - offset: the offset of the byterange within its originating file
|
|
64
69
|
* - length: the length of the byterange
|
|
65
70
|
* @param {ArrayBuffer} responseArrayBuffer the response to be parsed and split
|
|
66
|
-
* @param {
|
|
67
|
-
* @returns {
|
|
71
|
+
* @param {string} boundary the boundary string used to split the sections
|
|
72
|
+
* @returns {Array<{headers: Record<string, string>, data: ArrayBuffer, offset: number, length: number, fileSize: number}>}
|
|
73
|
+
* the parsed byteranges
|
|
68
74
|
*/
|
|
69
75
|
export function parseByteRanges(responseArrayBuffer, boundary) {
|
|
70
|
-
let offset =
|
|
76
|
+
let offset = -1;
|
|
71
77
|
const decoder = new TextDecoder('ascii');
|
|
72
78
|
const out = [];
|
|
73
79
|
const startBoundary = `--${boundary}`;
|
|
@@ -80,7 +86,7 @@ export function parseByteRanges(responseArrayBuffer, boundary) {
|
|
|
80
86
|
offset = i;
|
|
81
87
|
}
|
|
82
88
|
}
|
|
83
|
-
if (offset ===
|
|
89
|
+
if (offset === -1) {
|
|
84
90
|
throw new Error('Could not find initial boundary');
|
|
85
91
|
}
|
|
86
92
|
while (offset < responseArrayBuffer.byteLength) {
|
|
@@ -117,3 +123,4 @@ export function parseByteRanges(responseArrayBuffer, boundary) {
|
|
|
117
123
|
}
|
|
118
124
|
return out;
|
|
119
125
|
}
|
|
126
|
+
//# sourceMappingURL=httputils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httputils.js","sourceRoot":"","sources":["../../src/source/httputils.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/source/remote.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/source/remote.js"],"names":[],"mappings":"AA+KA;;;;GAIG;AACH,qCAJW,MAAM,wEACN,mBAAmB,GAAG,oBAAoB,GAAG;IAAE,WAAW,CAAC,EAAE,kBAAkB,CAAA;CAAC,GAC9E,UAAU,CAMtB;AAED;;;;GAIG;AACH,mCAJW,MAAM,2DACN,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAMtB;AAED;;;;GAIG;AACH,oCAJW,MAAM,2DACN,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAMtB;AAED;;;;GAIG;AACH,yCAJW,OAAO,YAAY,EAAE,UAAU,2DAC/B,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAKtB;AAED;;;;GAIG;AACH,sCAHW,MAAM,mCACN,mBAAmB,cAU7B;yCA/N8D,eAAe;0CAAf,eAAe;2BAPnD,iBAAiB"}
|
|
@@ -21,13 +21,13 @@ class RemoteSource extends BaseSource {
|
|
|
21
21
|
/**
|
|
22
22
|
* @param {import('./basesource.js').Slice[]} slices
|
|
23
23
|
* @param {AbortSignal} [signal]
|
|
24
|
-
* @returns {Promise
|
|
24
|
+
* @returns {Promise<ArrayBufferLike[]>}
|
|
25
25
|
*/
|
|
26
26
|
async fetch(slices, signal) {
|
|
27
27
|
// if we allow multi-ranges, split the incoming request into that many sub-requests
|
|
28
28
|
// and join them afterwards
|
|
29
29
|
if (this.maxRanges >= slices.length) {
|
|
30
|
-
return this.fetchSlices(slices, signal);
|
|
30
|
+
return this.fetchSlices(slices, signal).then((results) => results.map((r) => r.data));
|
|
31
31
|
}
|
|
32
32
|
else if (this.maxRanges > 0 && slices.length > 1) {
|
|
33
33
|
// TODO: split into multiple multi-range requests
|
|
@@ -40,14 +40,19 @@ class RemoteSource extends BaseSource {
|
|
|
40
40
|
// return (await Promise.all(subSlicesRequests)).flat();
|
|
41
41
|
}
|
|
42
42
|
// otherwise make a single request for each slice
|
|
43
|
-
return Promise.all(slices.map((slice) => this.fetchSlice(slice, signal)));
|
|
43
|
+
return Promise.all(slices.map(async (slice) => (await this.fetchSlice(slice, signal)).data));
|
|
44
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* @param {Array<import('./basesource.js').Slice>} slices
|
|
47
|
+
* @param {AbortSignal} [signal]
|
|
48
|
+
* @returns {Promise<Array<import('./basesource.js').SliceWithData>>}
|
|
49
|
+
*/
|
|
45
50
|
async fetchSlices(slices, signal) {
|
|
46
51
|
const response = await this.client.request({
|
|
47
52
|
headers: {
|
|
48
53
|
...this.headers,
|
|
49
54
|
Range: `bytes=${slices
|
|
50
|
-
.map(({ offset, length }) => `${offset}-${offset + length}`)
|
|
55
|
+
.map(({ offset, length }) => `${offset}-${offset + length - 1}`)
|
|
51
56
|
.join(',')}`,
|
|
52
57
|
},
|
|
53
58
|
signal,
|
|
@@ -65,10 +70,11 @@ class RemoteSource extends BaseSource {
|
|
|
65
70
|
const data = await response.getData();
|
|
66
71
|
const { start, end, total } = parseContentRange(response.getHeader('content-range'));
|
|
67
72
|
this._fileSize = total || null;
|
|
73
|
+
/** @type {import('./basesource.js').SliceWithData[]} */
|
|
68
74
|
const first = [{
|
|
69
75
|
data,
|
|
70
76
|
offset: start,
|
|
71
|
-
length: end - start,
|
|
77
|
+
length: end + 1 - start,
|
|
72
78
|
}];
|
|
73
79
|
if (slices.length > 1) {
|
|
74
80
|
// we requested more than one slice, but got only the first
|
|
@@ -93,12 +99,17 @@ class RemoteSource extends BaseSource {
|
|
|
93
99
|
}];
|
|
94
100
|
}
|
|
95
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* @param {import('./basesource.js').Slice} slice
|
|
104
|
+
* @param {AbortSignal} [signal]
|
|
105
|
+
* @returns {Promise<import('./basesource.js').SliceWithData>}
|
|
106
|
+
*/
|
|
96
107
|
async fetchSlice(slice, signal) {
|
|
97
108
|
const { offset, length } = slice;
|
|
98
109
|
const response = await this.client.request({
|
|
99
110
|
headers: {
|
|
100
111
|
...this.headers,
|
|
101
|
-
Range: `bytes=${offset}-${offset + length}`,
|
|
112
|
+
Range: `bytes=${offset}-${offset + length - 1}`,
|
|
102
113
|
},
|
|
103
114
|
signal,
|
|
104
115
|
});
|
|
@@ -139,7 +150,7 @@ class RemoteSource extends BaseSource {
|
|
|
139
150
|
* @returns {BaseSource}
|
|
140
151
|
*/
|
|
141
152
|
function maybeWrapInBlockedSource(source, { blockSize, cacheSize }) {
|
|
142
|
-
if (blockSize ===
|
|
153
|
+
if (blockSize === undefined) {
|
|
143
154
|
return source;
|
|
144
155
|
}
|
|
145
156
|
return new BlockedSource(source, { blockSize, cacheSize });
|
|
@@ -197,3 +208,4 @@ export function makeRemoteSource(url, { forceXHR = false, ...clientOptions } = {
|
|
|
197
208
|
}
|
|
198
209
|
return makeHttpSource(url, clientOptions);
|
|
199
210
|
}
|
|
211
|
+
//# sourceMappingURL=remote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/source/remote.js"],"names":[],"mappings":"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"}
|
package/dist-module/utils.d.ts
CHANGED
|
@@ -1,48 +1,43 @@
|
|
|
1
|
-
export function assign(target:
|
|
2
|
-
export function chunk(iterable:
|
|
3
|
-
export function endsWith(string:
|
|
4
|
-
export function forEach(iterable:
|
|
5
|
-
export function invert(oldObj:
|
|
6
|
-
export function range(n:
|
|
7
|
-
export function times(numTimes:
|
|
8
|
-
export function toArray(iterable:
|
|
9
|
-
export function toArrayRecursively(input:
|
|
10
|
-
|
|
1
|
+
export declare function assign<T extends Record<string, unknown>, S extends Record<string, unknown>>(target: T, source: S): T & S;
|
|
2
|
+
export declare function chunk<T>(iterable: ArrayLike<T>, length: number): T[][];
|
|
3
|
+
export declare function endsWith(string: string, expectedEnding: string): boolean;
|
|
4
|
+
export declare function forEach<T>(iterable: ArrayLike<T>, func: (item: T, index: number) => void): void;
|
|
5
|
+
export declare function invert<K extends string | number, V extends string | number>(oldObj: Record<K, V>): Record<V, K>;
|
|
6
|
+
export declare function range(n: number): number[];
|
|
7
|
+
export declare function times<T>(numTimes: number, func: (index: number) => T): T[];
|
|
8
|
+
export declare function toArray<T>(iterable: ArrayLike<T>): T[];
|
|
9
|
+
export declare function toArrayRecursively(input: unknown): unknown;
|
|
10
|
+
/** Copied from https://github.com/academia-de-codigo/parse-content-range-header/blob/master/index.js */
|
|
11
|
+
export declare function parseContentRange(headerValue: string): null | {
|
|
11
12
|
unit: string | null;
|
|
12
|
-
first: number;
|
|
13
|
-
last: number;
|
|
13
|
+
first: number | null;
|
|
14
|
+
last: number | null;
|
|
14
15
|
length: number | null;
|
|
15
|
-
}
|
|
16
|
-
unit: string | null;
|
|
17
|
-
first: null;
|
|
18
|
-
last: null;
|
|
19
|
-
length: number | null;
|
|
20
|
-
} | null;
|
|
21
|
-
export function wait(milliseconds: any): Promise<any>;
|
|
16
|
+
};
|
|
22
17
|
/**
|
|
23
|
-
*
|
|
24
|
-
* @param {
|
|
25
|
-
* @
|
|
26
|
-
* @returns {Array<[T, U]>}
|
|
18
|
+
* Promisified wrapper around 'setTimeout' to allow 'await'
|
|
19
|
+
* @param {number} [milliseconds]
|
|
20
|
+
* @returns {Promise<void>}
|
|
27
21
|
*/
|
|
28
|
-
export function
|
|
29
|
-
export function
|
|
30
|
-
export
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
constructor(params: any);
|
|
34
|
-
}
|
|
35
|
-
export class CustomAggregateError extends Error {
|
|
36
|
-
constructor(errors: any, message: any);
|
|
37
|
-
errors: any;
|
|
38
|
-
message: any;
|
|
22
|
+
export declare function wait(milliseconds?: number): Promise<void>;
|
|
23
|
+
export declare function zip<T, U>(a: Iterable<T>, b: Iterable<U>): [T, U][];
|
|
24
|
+
export declare class AbortError extends Error {
|
|
25
|
+
signal?: AbortSignal;
|
|
26
|
+
constructor(...args: any[]);
|
|
39
27
|
}
|
|
40
|
-
export
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
let Float32Array: Float32ArrayConstructor;
|
|
44
|
-
let Uint32Array: Uint32ArrayConstructor;
|
|
45
|
-
let Uint16Array: Uint16ArrayConstructor;
|
|
46
|
-
let Uint8Array: Uint8ArrayConstructor;
|
|
28
|
+
export declare class CustomAggregateError extends Error {
|
|
29
|
+
errors: Error[];
|
|
30
|
+
constructor(errors: Error[], message: string);
|
|
47
31
|
}
|
|
32
|
+
export declare const AggregateError: typeof CustomAggregateError;
|
|
33
|
+
export declare function isTypedFloatArray(input: unknown): input is Float32Array | Float64Array;
|
|
34
|
+
export declare function isTypedIntArray(input: unknown): input is Int8Array | Int16Array | Int32Array;
|
|
35
|
+
export declare function isTypedUintArray(input: unknown): input is Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray;
|
|
36
|
+
export declare const typeMap: {
|
|
37
|
+
Float64Array: Float64ArrayConstructor;
|
|
38
|
+
Float32Array: Float32ArrayConstructor;
|
|
39
|
+
Uint32Array: Uint32ArrayConstructor;
|
|
40
|
+
Uint16Array: Uint16ArrayConstructor;
|
|
41
|
+
Uint8Array: Uint8ArrayConstructor;
|
|
42
|
+
};
|
|
48
43
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,MAAM,CACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAO7B;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,CAWtE;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAMxE;AAED,wBAAgB,OAAO,CAAC,CAAC,EACvB,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,EACtB,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GACrC,IAAI,CAKN;AAED,wBAAgB,MAAM,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EACzE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GACnB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CASd;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAMzC;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,CAM1E;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAOtD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAK1D;AASD,wGAAwG;AACxG,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG;IAC7D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAuCA;AAED;;;;GAIG;AACH,wBAAsB,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/D;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAIlE;AAGD,qBAAa,UAAW,SAAQ,KAAK;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC;gBACT,GAAG,IAAI,EAAE,GAAG,EAAE;CAY3B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,MAAM,EAAE,KAAK,EAAE,CAAC;gBAEJ,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM;CAM7C;AAED,eAAO,MAAM,cAAc,6BAAuB,CAAC;AAEnD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,YAAY,GAAG,YAAY,CAQtC;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,SAAS,GAAG,UAAU,GAAG,UAAU,CAQ9C;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,iBAAiB,CAarE;AAED,eAAO,MAAM,OAAO;;;;;;CAMnB,CAAC"}
|