@chunkd/source-http 10.1.1 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md DELETED
@@ -1,498 +0,0 @@
1
- # Changelog
2
-
3
- ### Dependencies
4
-
5
- * The following workspace dependencies were updated
6
- * dependencies
7
- * @chunkd/core bumped from ^10.1.0 to ^10.1.1
8
-
9
- ## [10.1.1](https://github.com/blacha/chunkd/compare/source-http-v10.1.0...source-http-v10.1.1) (2023-04-27)
10
-
11
-
12
- ### Bug Fixes
13
-
14
- * **source-http:** correct import as index.node.js no longer exists ([023c90e](https://github.com/blacha/chunkd/commit/023c90ed57499ea103a314e6760451ad153cc35b))
15
-
16
- ## [10.1.0](https://github.com/blacha/chunkd/compare/source-http-v10.0.2...source-http-v10.1.0) (2023-04-27)
17
-
18
-
19
- ### Features
20
-
21
- * **source-http:** support etag matching if etags are returned ([f08bb9c](https://github.com/blacha/chunkd/commit/f08bb9c2ae894026155074161161182f78efa30b))
22
- * **source-http:** use built in fetch with node>18 ([52529a3](https://github.com/blacha/chunkd/commit/52529a35fe72612915fac9c06893a871ffc4e392))
23
-
24
-
25
- ### Dependencies
26
-
27
- * The following workspace dependencies were updated
28
- * dependencies
29
- * @chunkd/core bumped from ^10.1.1 to ^10.2.0
30
-
31
- ## [10.0.0](https://github.com/blacha/chunkd/compare/source-http-v9.1.0...source-http-v10.0.0) (2022-09-21)
32
-
33
-
34
- ### ⚠ BREAKING CHANGES
35
-
36
- * add a .delete to remove files from locations
37
-
38
- ### Features
39
-
40
- * add a .delete to remove files from locations ([f93d09b](https://github.com/blacha/chunkd/commit/f93d09b9cee02bf1b97089ce756883643fdcf0e6))
41
- * force all version numbers to be the same ([4c1b7b6](https://github.com/blacha/chunkd/commit/4c1b7b6bb92b4586826b6b4c20eef5ee848eaf7b))
42
-
43
-
44
- ### Bug Fixes
45
-
46
- * foce all chunkd deps to 9.0.0 ([27b11be](https://github.com/blacha/chunkd/commit/27b11be8e730ef84a406798f2b6751d70f81041d))
47
-
48
-
49
- ### Dependencies
50
-
51
- * The following workspace dependencies were updated
52
- * dependencies
53
- * @chunkd/core bumped from ^9.1.0 to ^10.0.0
54
-
55
- ## [9.0.1](https://github.com/blacha/chunkd/compare/source-http-v9.0.0...source-http-v9.0.1) (2022-09-21)
56
-
57
-
58
- ### Bug Fixes
59
-
60
- * foce all chunkd deps to 9.0.0 ([27b11be](https://github.com/blacha/chunkd/commit/27b11be8e730ef84a406798f2b6751d70f81041d))
61
-
62
- ## [9.0.0](https://github.com/blacha/chunkd/compare/source-http-v8.4.0...source-http-v9.0.0) (2022-09-20)
63
-
64
-
65
- ### ⚠ BREAKING CHANGES
66
-
67
- * add a .delete to remove files from locations
68
-
69
- ### Features
70
-
71
- * add a .delete to remove files from locations ([f93d09b](https://github.com/blacha/chunkd/commit/f93d09b9cee02bf1b97089ce756883643fdcf0e6))
72
-
73
- ## [8.0.3](https://github.com/blacha/chunkd/compare/v8.0.2...v8.0.3) (2022-01-26)
74
-
75
- **Note:** Version bump only for package @chunkd/source-http
76
-
77
-
78
-
79
-
80
-
81
- ## [8.0.2](https://github.com/blacha/chunkd/compare/v8.0.1...v8.0.2) (2022-01-25)
82
-
83
- **Note:** Version bump only for package @chunkd/source-http
84
-
85
-
86
-
87
-
88
-
89
- ## [8.0.1](https://github.com/blacha/chunkd/compare/v8.0.0...v8.0.1) (2021-11-12)
90
-
91
- **Note:** Version bump only for package @chunkd/source-http
92
-
93
-
94
-
95
-
96
-
97
- # [8.0.0](https://github.com/blacha/chunkd/compare/v7.3.1...v8.0.0) (2021-11-12)
98
-
99
-
100
- * feat(source-aws): support aws-sdk-v3 with a S3LikeWrapper (#92) ([0d02a69](https://github.com/blacha/chunkd/commit/0d02a69499a513f7c552969d9857de92d7449bef)), closes [#92](https://github.com/blacha/chunkd/issues/92) [#88](https://github.com/blacha/chunkd/issues/88)
101
-
102
-
103
- ### BREAKING CHANGES
104
-
105
- * moves the credential helper into @chunkd/source-aws-v2
106
-
107
-
108
-
109
-
110
-
111
- ## [7.2.4](https://github.com/blacha/chunkd/compare/v7.2.3...v7.2.4) (2021-09-16)
112
-
113
- **Note:** Version bump only for package @chunkd/source-http
114
-
115
-
116
-
117
-
118
-
119
- ## [7.2.3](https://github.com/blacha/chunkd/compare/v7.2.2...v7.2.3) (2021-09-16)
120
-
121
- **Note:** Version bump only for package @chunkd/source-http
122
-
123
-
124
-
125
-
126
-
127
- ## [7.2.2](https://github.com/blacha/chunkd/compare/v7.2.1...v7.2.2) (2021-09-16)
128
-
129
- **Note:** Version bump only for package @chunkd/source-http
130
-
131
-
132
-
133
-
134
-
135
- # [7.2.0](https://github.com/blacha/chunkd/compare/v7.1.1...v7.2.0) (2021-09-15)
136
-
137
- **Note:** Version bump only for package @chunkd/source-http
138
-
139
-
140
-
141
-
142
-
143
- # [7.1.0](https://github.com/blacha/chunkd/compare/v7.0.1...v7.1.0) (2021-09-15)
144
-
145
- **Note:** Version bump only for package @chunkd/source-http
146
-
147
-
148
-
149
-
150
-
151
- ## [7.0.1](https://github.com/blacha/chunkd/compare/v7.0.0...v7.0.1) (2021-09-15)
152
-
153
-
154
- ### Bug Fixes
155
-
156
- * do not use node: imports as its not supported in node 14 ([7dea1cf](https://github.com/blacha/chunkd/commit/7dea1cffaf1ecae9db689b371f8cea3d74323a40))
157
-
158
-
159
-
160
-
161
-
162
- # [7.0.0](https://github.com/blacha/chunkd/compare/v6.0.0...v7.0.0) (2021-09-15)
163
-
164
-
165
- ### Features
166
-
167
- * add file system abstraction layer ([#34](https://github.com/blacha/chunkd/issues/34)) ([a143637](https://github.com/blacha/chunkd/commit/a143637dc876cdcd4df1e86e84de8ce18caa37d4))
168
- * add source-http to `@chunkd/fs` ([8a42472](https://github.com/blacha/chunkd/commit/8a424728ab575e9c59289a668afa83e7369bcd2a))
169
-
170
-
171
- ### BREAKING CHANGES
172
-
173
- * this renames `@chunkd/source-url` to `@chunkd/source-http`
174
-
175
-
176
-
177
-
178
-
179
- # [6.0.0](https://github.com/blacha/chunkd/compare/v5.0.0...v6.0.0) (2021-09-11)
180
-
181
- **Note:** Version bump only for package @chunkd/source-url
182
-
183
-
184
-
185
-
186
-
187
- # [5.0.0](https://github.com/blacha/chunkd/compare/v4.5.1...v5.0.0) (2021-09-11)
188
-
189
- **Note:** Version bump only for package @chunkd/source-url
190
-
191
-
192
-
193
-
194
-
195
- ## [4.5.1](https://github.com/blacha/chunkd/compare/v4.5.0...v4.5.1) (2021-07-22)
196
-
197
- **Note:** Version bump only for package @chunkd/source-url
198
-
199
-
200
-
201
-
202
-
203
- # [4.5.0](https://github.com/blacha/chunkd/compare/v4.4.0...v4.5.0) (2021-07-21)
204
-
205
- **Note:** Version bump only for package @chunkd/source-url
206
-
207
-
208
-
209
-
210
-
211
- # 4.4.0 (2021-07-21)
212
-
213
-
214
- ### Features
215
-
216
- * split from https://github.com/blacha/cogeotiff ([95c0372](https://github.com/blacha/chunkd/commit/95c03720b8eadfff4cd493695466a5b029b2727b))
217
- * support bigint when reading uint64 ([5a43991](https://github.com/blacha/chunkd/commit/5a43991ee382918e9244b786084bc693ecc10145))
218
-
219
-
220
-
221
-
222
-
223
- # [4.3.0](https://github.com/blacha/cogeotiff/compare/v4.2.0...v4.3.0) (2021-06-22)
224
-
225
- **Note:** Version bump only for package @cogeotiff/source-url
226
-
227
-
228
-
229
-
230
-
231
- # [4.2.0](https://github.com/blacha/cogeotiff/compare/v4.1.2...v4.2.0) (2021-03-25)
232
-
233
-
234
- ### Features
235
-
236
- * **chunk:** add ability to read entire file using .read() ([#664](https://github.com/blacha/cogeotiff/issues/664)) ([4db04ad](https://github.com/blacha/cogeotiff/commit/4db04adc43ab4c358526e469c712f7958381d738))
237
-
238
-
239
-
240
-
241
-
242
- ## [4.1.2](https://github.com/blacha/cogeotiff/compare/v4.1.1...v4.1.2) (2021-03-18)
243
-
244
- **Note:** Version bump only for package @cogeotiff/source-url
245
-
246
-
247
-
248
-
249
-
250
- # [4.1.0](https://github.com/blacha/cogeotiff/compare/v4.0.0...v4.1.0) (2021-02-23)
251
-
252
-
253
- ### Features
254
-
255
- * **web:** support rendering in leaflet maps ([#482](https://github.com/blacha/cogeotiff/issues/482)) ([dfb40fa](https://github.com/blacha/cogeotiff/commit/dfb40fad836d4e762bd2485a435ac402fcf1c3d6))
256
-
257
-
258
-
259
-
260
-
261
- # [4.0.0](https://github.com/blacha/cogeotiff/compare/v3.1.0...v4.0.0) (2021-02-02)
262
-
263
- **Note:** Version bump only for package @cogeotiff/source-url
264
-
265
-
266
-
267
-
268
-
269
- # [3.1.0](https://github.com/blacha/cogeotiff/compare/v3.0.0...v3.1.0) (2021-01-18)
270
-
271
- **Note:** Version bump only for package @cogeotiff/source-url
272
-
273
-
274
-
275
-
276
-
277
- # [3.0.0](https://github.com/blacha/cogeotiff/compare/v2.2.0...v3.0.0) (2020-10-30)
278
-
279
- **Note:** Version bump only for package @cogeotiff/source-url
280
-
281
-
282
-
283
-
284
-
285
- # [2.2.0](https://github.com/blacha/cogeotiff/compare/v2.1.1...v2.2.0) (2020-07-01)
286
-
287
-
288
- ### Features
289
-
290
- * adding uri for a full reference for any source ([#469](https://github.com/blacha/cogeotiff/issues/469)) ([137d9c9](https://github.com/blacha/cogeotiff/commit/137d9c9))
291
-
292
-
293
-
294
-
295
-
296
- ## [2.1.1](https://github.com/blacha/cogeotiff/compare/v2.1.0...v2.1.1) (2020-06-25)
297
-
298
- **Note:** Version bump only for package @cogeotiff/source-url
299
-
300
-
301
-
302
-
303
-
304
- # [2.1.0](https://github.com/blacha/cogeotiff/compare/v2.0.0...v2.1.0) (2020-06-14)
305
-
306
- **Note:** Version bump only for package @cogeotiff/source-url
307
-
308
-
309
-
310
-
311
-
312
- # [2.0.0](https://github.com/blacha/cogeotiff/compare/v1.1.0...v2.0.0) (2020-05-18)
313
-
314
- **Note:** Version bump only for package @cogeotiff/source-url
315
-
316
-
317
-
318
-
319
-
320
- ## [1.0.8](https://github.com/blacha/cogeotiff/compare/v1.0.7...v1.0.8) (2020-05-11)
321
-
322
- **Note:** Version bump only for package @cogeotiff/source-url
323
-
324
-
325
-
326
-
327
-
328
- ## [1.0.7](https://github.com/blacha/cogeotiff/compare/v1.0.6...v1.0.7) (2020-05-10)
329
-
330
- **Note:** Version bump only for package @cogeotiff/source-url
331
-
332
-
333
-
334
-
335
-
336
- ## [1.0.6](https://github.com/blacha/cogeotiff/compare/v1.0.5...v1.0.6) (2020-05-07)
337
-
338
- **Note:** Version bump only for package @cogeotiff/source-url
339
-
340
-
341
-
342
-
343
-
344
- ## [1.0.5](https://github.com/blacha/cogeotiff/compare/v1.0.4...v1.0.5) (2020-05-07)
345
-
346
- **Note:** Version bump only for package @cogeotiff/source-url
347
-
348
-
349
-
350
-
351
-
352
- ## [1.0.4](https://github.com/blacha/cogeotiff/compare/v1.0.3...v1.0.4) (2020-04-29)
353
-
354
- **Note:** Version bump only for package @cogeotiff/source-url
355
-
356
-
357
-
358
-
359
-
360
- ## [1.0.3](https://github.com/blacha/cogeotiff/compare/v1.0.2...v1.0.3) (2020-03-12)
361
-
362
- **Note:** Version bump only for package @cogeotiff/source-url
363
-
364
-
365
-
366
-
367
-
368
- ## [1.0.2](https://github.com/blacha/cogeotiff/compare/v1.0.1...v1.0.2) (2020-03-12)
369
-
370
- **Note:** Version bump only for package @cogeotiff/source-url
371
-
372
-
373
-
374
-
375
-
376
- ## [1.0.1](https://github.com/blacha/cogeotiff/compare/v1.0.0...v1.0.1) (2020-03-10)
377
-
378
- **Note:** Version bump only for package @cogeotiff/source-url
379
-
380
-
381
-
382
-
383
-
384
- # [1.0.0](https://github.com/blacha/cogeotiff/compare/v0.9.1...v1.0.0) (2020-03-09)
385
-
386
- **Note:** Version bump only for package @cogeotiff/source-url
387
-
388
-
389
-
390
-
391
-
392
- # [0.9.0](https://github.com/blacha/cogeotiff/compare/v0.8.0...v0.9.0) (2020-01-16)
393
-
394
- **Note:** Version bump only for package @cogeotiff/source-url
395
-
396
-
397
-
398
-
399
-
400
- # [0.8.0](https://github.com/blacha/cogeotiff/compare/v0.7.0...v0.8.0) (2020-01-16)
401
-
402
- **Note:** Version bump only for package @cogeotiff/source-url
403
-
404
-
405
-
406
-
407
-
408
- # [0.7.0](https://github.com/blacha/cogeotiff/compare/v0.6.0...v0.7.0) (2019-12-08)
409
-
410
- **Note:** Version bump only for package @cogeotiff/source-url
411
-
412
-
413
-
414
-
415
-
416
- # [0.6.0](https://github.com/blacha/cogeotiff/compare/v0.5.0...v0.6.0) (2019-11-22)
417
-
418
- **Note:** Version bump only for package @cogeotiff/source-url
419
-
420
-
421
-
422
-
423
-
424
- # [0.5.0](https://github.com/blacha/cogeotiff/compare/v0.4.1...v0.5.0) (2019-11-21)
425
-
426
-
427
- ### Features
428
-
429
- * typescript 3.7 ([ada8c2b](https://github.com/blacha/cogeotiff/commit/ada8c2b))
430
-
431
-
432
-
433
-
434
-
435
- ## [0.4.1](https://github.com/blacha/cogeotiff/compare/v0.4.0...v0.4.1) (2019-10-08)
436
-
437
- **Note:** Version bump only for package @cogeotiff/source-url
438
-
439
-
440
-
441
-
442
-
443
- # [0.4.0](https://github.com/blacha/cogeotiff/compare/v0.3.1...v0.4.0) (2019-10-08)
444
-
445
-
446
- ### Features
447
-
448
- * lazy load more data to reduce initial read time for ifd ([74e1dc7](https://github.com/blacha/cogeotiff/commit/74e1dc7))
449
-
450
-
451
-
452
-
453
-
454
- ## [0.3.1](https://github.com/blacha/cogeotiff/compare/v0.3.0...v0.3.1) (2019-09-25)
455
-
456
- **Note:** Version bump only for package @cogeotiff/source-url
457
-
458
-
459
-
460
-
461
-
462
- # [0.3.0](https://github.com/blacha/cogeotiff/compare/v0.2.3...v0.3.0) (2019-09-24)
463
-
464
- **Note:** Version bump only for package @cogeotiff/source-url
465
-
466
-
467
-
468
-
469
-
470
- ## [0.2.2](https://github.com/blacha/cogeotiff/compare/v0.2.1...v0.2.2) (2019-09-12)
471
-
472
-
473
- ### Bug Fixes
474
-
475
- * ignore tsconfig.tsbuildinfo when publishing ([8a27600](https://github.com/blacha/cogeotiff/commit/8a27600))
476
-
477
-
478
-
479
-
480
-
481
- ## [0.2.1](https://github.com/blacha/cogeotiff/compare/v0.2.0...v0.2.1) (2019-09-12)
482
-
483
-
484
- ### Bug Fixes
485
-
486
- * cannot publish without access:public ([a408389](https://github.com/blacha/cogeotiff/commit/a408389))
487
-
488
-
489
-
490
-
491
-
492
- # [0.2.0](https://github.com/blacha/cogeotiff/compare/v0.0.12...v0.2.0) (2019-09-12)
493
-
494
-
495
- ### Features
496
-
497
- * rename to cogeotiff ([9a2c099](https://github.com/blacha/cogeotiff/commit/9a2c099))
498
- * switch to cogeotiff ([6ab420a](https://github.com/blacha/cogeotiff/commit/6ab420a))
@@ -1 +0,0 @@
1
- {"version":3,"file":"source.http.test.d.ts","sourceRoot":"","sources":["../../src/__test__/source.http.test.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -1,85 +0,0 @@
1
- import { isRecord } from '@chunkd/core';
2
- import o from 'ospec';
3
- import { SourceHttp } from '../http.source.js';
4
- function getCB(source, index) {
5
- const chunk = source.chunks.get(index);
6
- if (chunk != null)
7
- return chunk;
8
- throw Error(`Missing chunk ${index}`);
9
- }
10
- o.spec('SourceHttp', () => {
11
- let source;
12
- let ranges;
13
- // Fake fetch that returns the number of the byte that was requested
14
- SourceHttp.fetch = (input, obj) => {
15
- if (!isRecord(obj) || !isRecord(obj.headers))
16
- throw new Error('Invalid fetch');
17
- const [startByte, endByte] = obj.headers.Range.split('=')[1]
18
- .split('-')
19
- .map((i) => parseInt(i, 10));
20
- const bytes = [];
21
- ranges.push(obj.headers.Range);
22
- for (let i = startByte; i < endByte; i++) {
23
- bytes.push(i);
24
- }
25
- const buffer = new Uint8Array(bytes).buffer;
26
- const arrayBuffer = () => Promise.resolve(buffer);
27
- return Promise.resolve({ arrayBuffer, ok: true, headers: new Map() });
28
- };
29
- o.beforeEach(() => {
30
- source = new SourceHttp('https://foo');
31
- source.chunkSize = 1;
32
- ranges = [];
33
- });
34
- o('should group fetches together', async () => {
35
- await source.loadBytes(0, 2);
36
- o([...source.chunks.keys()]).deepEquals([0, 1]);
37
- o(source.getUint8(0)).equals(0);
38
- o(source.getUint8(1)).equals(1);
39
- });
40
- o('should group big fetches', async () => {
41
- var _a;
42
- await source.loadBytes(0, 2);
43
- await source.loadBytes(0, 5);
44
- o([...source.chunks.keys()]).deepEquals([0, 1, 2, 3, 4]);
45
- for (let i = 0; i < 5; i++) {
46
- o(source.getUint8(i)).equals(i);
47
- o((_a = source.chunks.get(i)) === null || _a === void 0 ? void 0 : _a.getUint8(0)).equals(i);
48
- }
49
- });
50
- o('should handle bigger buffers', async () => {
51
- const MAX_BYTE = 256;
52
- source.chunkSize = 32;
53
- await source.loadBytes(0, MAX_BYTE);
54
- o([...source.chunks.keys()]).deepEquals([0, 1, 2, 3, 4, 5, 6, 7]);
55
- for (let i = 0; i < MAX_BYTE; i++) {
56
- o(source.getUint8(i)).equals(i);
57
- }
58
- for (let i = 0; i < MAX_BYTE / source.chunkSize; i++) {
59
- const view = getCB(source, i);
60
- for (let x = 0; x < source.chunkSize; x++) {
61
- o(view.getUint8(x)).equals(i * source.chunkSize + x);
62
- }
63
- }
64
- });
65
- o('should handle part requests', async () => {
66
- source.chunkSize = 2;
67
- await source.loadBytes(2, 3);
68
- o(source.getUint8(2)).equals(2);
69
- o(source.getUint8(3)).equals(3);
70
- o(source.getUint8(4)).equals(4);
71
- o(getCB(source, 1).byteLength).equals(2);
72
- o(getCB(source, 2).byteLength).equals(2);
73
- });
74
- o('should handle out of order requests', async () => {
75
- source.chunkSize = 2;
76
- await Promise.all([source.loadBytes(8, 3), source.loadBytes(1, 3)]);
77
- o(source.getUint8(0)).equals(0);
78
- o(source.getUint8(1)).equals(1);
79
- o(source.getUint8(2)).equals(2);
80
- o(source.getUint8(8)).equals(8);
81
- o(source.getUint8(9)).equals(9);
82
- o(source.getUint8(10)).equals(10);
83
- });
84
- });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmh0dHAudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RfXy9zb3VyY2UuaHR0cC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxDQUFDLE1BQU0sT0FBTyxDQUFDO0FBQ3RCLE9BQU8sRUFBb0IsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFNakUsU0FBUyxLQUFLLENBQUMsTUFBa0IsRUFBRSxLQUFhO0lBQzlDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLElBQUksS0FBSyxJQUFJLElBQUk7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNoQyxNQUFNLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUN4QyxDQUFDO0FBRUQsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsR0FBRyxFQUFFO0lBQ3hCLElBQUksTUFBa0IsQ0FBQztJQUN2QixJQUFJLE1BQWdCLENBQUM7SUFFckIsb0VBQW9FO0lBQ3BFLFVBQVUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBc0IsRUFBTyxFQUFFO1FBQ3hELElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQVMsR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkYsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3pELEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxD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QUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFaEMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztJQUVILENBQUMsQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNsRCxNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNyQixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFcEUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUmVjb3JkIH0gZnJvbSAnQGNodW5rZC9jb3JlJztcbmltcG9ydCBvIGZyb20gJ29zcGVjJztcbmltcG9ydCB7IEZldGNoTGlrZU9wdGlvbnMsIFNvdXJjZUh0dHAgfSBmcm9tICcuLi9odHRwLnNvdXJjZS5qcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cEhlYWRlcnMge1xuICBSYW5nZTogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBnZXRDQihzb3VyY2U6IFNvdXJjZUh0dHAsIGluZGV4OiBudW1iZXIpOiBEYXRhVmlldyB7XG4gIGNvbnN0IGNodW5rID0gc291cmNlLmNodW5rcy5nZXQoaW5kZXgpO1xuICBpZiAoY2h1bmsgIT0gbnVsbCkgcmV0dXJuIGNodW5rO1xuICB0aHJvdyBFcnJvcihgTWlzc2luZyBjaHVuayAke2luZGV4fWApO1xufVxuXG5vLnNwZWMoJ1NvdXJjZUh0dHAnLCAoKSA9PiB7XG4gIGxldCBzb3VyY2U6IFNvdXJjZUh0dHA7XG4gIGxldCByYW5nZXM6IHN0cmluZ1tdO1xuXG4gIC8vIEZha2UgZmV0Y2ggdGhhdCByZXR1cm5zIHRoZSBudW1iZXIgb2YgdGhlIGJ5dGUgdGhhdCB3YXMgcmVxdWVzdGVkXG4gIFNvdXJjZUh0dHAuZmV0Y2ggPSAoaW5wdXQsIG9iaj86IEZldGNoTGlrZU9wdGlvbnMpOiBhbnkgPT4ge1xuICAgIGlmICghaXNSZWNvcmQob2JqKSB8fCAhaXNSZWNvcmQ8c3RyaW5nPihvYmouaGVhZGVycykpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBmZXRjaCcpO1xuICAgIGNvbnN0IFtzdGFydEJ5dGUsIGVuZEJ5dGVdID0gb2JqLmhlYWRlcnMuUmFuZ2Uuc3BsaXQoJz0nKVsxXVxuICAgICAgLnNwbGl0KCctJylcbiAgICAgIC5tYXAoKGkpID0+IHBhcnNlSW50KGksIDEwKSk7XG4gICAgY29uc3QgYnl0ZXMgPSBbXTtcbiAgICByYW5nZXMucHVzaChvYmouaGVhZGVycy5SYW5nZSk7XG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0Qnl0ZTsgaSA8IGVuZEJ5dGU7IGkrKykge1xuICAgICAgYnl0ZXMucHVzaChpKTtcbiAgICB9XG4gICAgY29uc3QgYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoYnl0ZXMpLmJ1ZmZlcjtcbiAgICBjb25zdCBhcnJheUJ1ZmZlciA9ICgpOiBhbnkgPT4gUHJvbWlzZS5yZXNvbHZlKGJ1ZmZlcik7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7IGFycmF5QnVmZmVyLCBvazogdHJ1ZSwgaGVhZGVyczogbmV3IE1hcCgpIH0pIGFzIGFueTtcbiAgfTtcblxuICBvLmJlZm9yZUVhY2goKCkgPT4ge1xuICAgIHNvdXJjZSA9IG5ldyBTb3VyY2VIdHRwKCdodHRwczovL2ZvbycpO1xuICAgIHNvdXJjZS5jaHVua1NpemUgPSAxO1xuICAgIHJhbmdlcyA9IFtdO1xuICB9KTtcblxuICBvKCdzaG91bGQgZ3JvdXAgZmV0Y2hlcyB0b2dldGhlcicsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBzb3VyY2UubG9hZEJ5dGVzKDAsIDIpO1xuXG4gICAgbyhbLi4uKHNvdXJjZS5jaHVua3MgYXMgTWFwPG51bWJlciwgRGF0YVZpZXc+KS5rZXlzKCldKS5kZWVwRXF1YWxzKFswLCAxXSk7XG4gICAgbyhzb3VyY2UuZ2V0VWludDgoMCkpLmVxdWFscygwKTtcbiAgICBvKHNvdXJjZS5nZXRVaW50OCgxKSkuZXF1YWxzKDEpO1xuICB9KTtcblxuICBvKCdzaG91bGQgZ3JvdXAgYmlnIGZldGNoZXMnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgc291cmNlLmxvYWRCeXRlcygwLCAyKTtcbiAgICBhd2FpdCBzb3VyY2UubG9hZEJ5dGVzKDAsIDUpO1xuXG4gICAgbyhbLi4uKHNvdXJjZS5jaHVua3MgYXMgTWFwPG51bWJlciwgRGF0YVZpZXc+KS5rZXlzKCldKS5kZWVwRXF1YWxzKFswLCAxLCAyLCAzLCA0XSk7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDU7IGkrKykge1xuICAgICAgbyhzb3VyY2UuZ2V0VWludDgoaSkpLmVxdWFscyhpKTtcbiAgICAgIG8oc291cmNlLmNodW5rcy5nZXQoaSk/LmdldFVpbnQ4KDApKS5lcXVhbHMoaSk7XG4gICAgfVxuICB9KTtcblxuICBvKCdzaG91bGQgaGFuZGxlIGJpZ2dlciBidWZmZXJzJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IE1BWF9CWVRFID0gMjU2O1xuICAgIHNvdXJjZS5jaHVua1NpemUgPSAzMjtcblxuICAgIGF3YWl0IHNvdXJjZS5sb2FkQnl0ZXMoMCwgTUFYX0JZVEUpO1xuXG4gICAgbyhbLi4uKHNvdXJjZS5jaHVua3MgYXMgTWFwPG51bWJlciwgRGF0YVZpZXc+KS5rZXlzKCldKS5kZWVwRXF1YWxzKFswLCAxLCAyLCAzLCA0LCA1LCA2LCA3XSk7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IE1BWF9CWVRFOyBpKyspIHtcbiAgICAgIG8oc291cmNlLmdldFVpbnQ4KGkpKS5lcXVhbHMoaSk7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBNQVhfQllURSAvIHNvdXJjZS5jaHVua1NpemU7IGkrKykge1xuICAgICAgY29uc3QgdmlldyA9IGdldENCKHNvdXJjZSwgaSk7XG4gICAgICBmb3IgKGxldCB4ID0gMDsgeCA8IHNvdXJjZS5jaHVua1NpemU7IHgrKykge1xuICAgICAgICBvKHZpZXcuZ2V0VWludDgoeCkpLmVxdWFscyhpICogc291cmNlLmNodW5rU2l6ZSArIHgpO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG5cbiAgbygnc2hvdWxkIGhhbmRsZSBwYXJ0IHJlcXVlc3RzJywgYXN5bmMgKCkgPT4ge1xuICAgIHNvdXJjZS5jaHVua1NpemUgPSAyO1xuICAgIGF3YWl0IHNvdXJjZS5sb2FkQnl0ZXMoMiwgMyk7XG5cbiAgICBvKHNvdXJjZS5nZXRVaW50OCgyKSkuZXF1YWxzKDIpO1xuICAgIG8oc291cmNlLmdldFVpbnQ4KDMpKS5lcXVhbHMoMyk7XG4gICAgbyhzb3VyY2UuZ2V0VWludDgoNCkpLmVxdWFscyg0KTtcblxuICAgIG8oZ2V0Q0Ioc291cmNlLCAxKS5ieXRlTGVuZ3RoKS5lcXVhbHMoMik7XG4gICAgbyhnZXRDQihzb3VyY2UsIDIpLmJ5dGVMZW5ndGgpLmVxdWFscygyKTtcbiAgfSk7XG5cbiAgbygnc2hvdWxkIGhhbmRsZSBvdXQgb2Ygb3JkZXIgcmVxdWVzdHMnLCBhc3luYyAoKSA9PiB7XG4gICAgc291cmNlLmNodW5rU2l6ZSA9IDI7XG4gICAgYXdhaXQgUHJvbWlzZS5hbGwoW3NvdXJjZS5sb2FkQnl0ZXMoOCwgMyksIHNvdXJjZS5sb2FkQnl0ZXMoMSwgMyldKTtcblxuICAgIG8oc291cmNlLmdldFVpbnQ4KDApKS5lcXVhbHMoMCk7XG4gICAgbyhzb3VyY2UuZ2V0VWludDgoMSkpLmVxdWFscygxKTtcbiAgICBvKHNvdXJjZS5nZXRVaW50OCgyKSkuZXF1YWxzKDIpO1xuICAgIG8oc291cmNlLmdldFVpbnQ4KDgpKS5lcXVhbHMoOCk7XG4gICAgbyhzb3VyY2UuZ2V0VWludDgoOSkpLmVxdWFscyg5KTtcbiAgICBvKHNvdXJjZS5nZXRVaW50OCgxMCkpLmVxdWFscygxMCk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -1,24 +0,0 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
- import { FileInfo, FileSystem } from '@chunkd/core';
4
- import type { Readable } from 'stream';
5
- import { SourceHttp } from './http.source.js';
6
- export type FsError = {
7
- code: string;
8
- } & Error;
9
- export declare class FsHttp implements FileSystem<SourceHttp> {
10
- static protocol: string;
11
- protocol: string;
12
- static is(fs: FileSystem): fs is FsHttp;
13
- source(filePath: string): SourceHttp;
14
- list(filePath: string): AsyncGenerator<string>;
15
- details(filePath: string): AsyncGenerator<FileInfo>;
16
- head(filePath: string): Promise<(FileInfo & {
17
- isDirectory: boolean;
18
- }) | null>;
19
- read(filePath: string): Promise<Buffer>;
20
- write(filePath: string): Promise<void>;
21
- delete(filePath: string): Promise<void>;
22
- stream(filePath: string): Readable;
23
- }
24
- //# sourceMappingURL=http.fs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"http.fs.d.ts","sourceRoot":"","sources":["../src/http.fs.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAkB,QAAQ,EAAE,UAAU,EAAY,MAAM,cAAc,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC;AAQ/C,qBAAa,MAAO,YAAW,UAAU,CAAC,UAAU,CAAC;IACnD,MAAM,CAAC,QAAQ,SAAU;IACzB,QAAQ,SAAmB;IAE3B,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,GAAG,EAAE,IAAI,MAAM;IAIvC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAI7B,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IAG9C,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC;IAIpD,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,QAAQ,GAAG;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAM7E,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMvC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;CAGnC"}