@visulima/storage 1.0.0-alpha.12 → 1.0.0-alpha.14

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 (29) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/LICENSE.md +155 -126
  3. package/dist/index.js +4 -4
  4. package/dist/packem_shared/{AwsLightStorage-C893xyaW.js → AwsLightStorage-CMuKw4bI.js} +1 -1
  5. package/dist/packem_shared/{AzureStorage-CpvzFT4y.js → AzureStorage-98-LRZ1e.js} +2 -2
  6. package/dist/packem_shared/{DiskStorage-BF10kayx.js → DiskStorage-COMe_G42.js} +3 -3
  7. package/dist/packem_shared/{DiskStorageWithChecksum-pu9u6IF7.js → DiskStorageWithChecksum-BVaaZiyS.js} +2 -2
  8. package/dist/packem_shared/{GCSMetaStorage-BH6j7TM2.js → GCSMetaStorage-BjdSXKri.js} +1 -1
  9. package/dist/packem_shared/{GCStorage-BBHFEg7F.js → GCStorage-D3JVWisH.js} +3 -3
  10. package/dist/packem_shared/{LocalMetaStorage-BnllcjV9.js → LocalMetaStorage-DvnZqf61.js} +1 -1
  11. package/dist/packem_shared/{NetlifyBlobMetaStorage-DIkZ2umW.js → NetlifyBlobMetaStorage-eJT6RFy9.js} +1 -1
  12. package/dist/packem_shared/{NetlifyBlobStorage-pZX0_VdO.js → NetlifyBlobStorage-nPv7iIAG.js} +2 -2
  13. package/dist/packem_shared/{S3Storage-2ZiheyWz.js → S3Storage-wi5XT-yu.js} +1 -1
  14. package/dist/packem_shared/{VercelBlobMetaStorage-c0M-TvAR.js → VercelBlobMetaStorage-DjFmi4vp.js} +1 -1
  15. package/dist/packem_shared/{VercelBlobStorage-CwgI91cP.js → VercelBlobStorage-CmMgiDgr.js} +2 -2
  16. package/dist/packem_shared/{defaultCloudStorageFileNameValidation-CGoYrGB2.js → defaultCloudStorageFileNameValidation-Brw40ZEP.js} +1 -1
  17. package/dist/packem_shared/{disk-storage-CC6-FUG9.js → disk-storage-D9RfoKjW.js} +12 -5
  18. package/dist/packem_shared/{gcs-meta-storage-MsUrkgP6.js → gcs-meta-storage-C8rMsqR_.js} +1 -1
  19. package/dist/packem_shared/{local-meta-storage-BlOk6m7F.js → local-meta-storage-D-pPc3FI.js} +12 -1
  20. package/dist/packem_shared/{s3-base-storage-DSMObtht.js → s3-base-storage-zUO8u8Cp.js} +2 -2
  21. package/dist/packem_shared/{storage-CpJpqLdn.js → storage-5XW1E7XU.js} +11 -7
  22. package/dist/storage/aws/index.js +1 -1
  23. package/dist/storage/aws-light/index.js +1 -1
  24. package/dist/storage/azure/index.js +1 -1
  25. package/dist/storage/gcs/index.js +2 -2
  26. package/dist/storage/local/index.js +3 -3
  27. package/dist/storage/netlify-blob/index.js +2 -2
  28. package/dist/storage/vercel-blob/index.js +2 -2
  29. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,25 @@
1
+ ## @visulima/storage [1.0.0-alpha.14](https://github.com/visulima/visulima/compare/@visulima/storage@1.0.0-alpha.13...@visulima/storage@1.0.0-alpha.14) (2026-04-21)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * jsr.json update and lock file ([73fce38](https://github.com/visulima/visulima/commit/73fce38c7cb4603f3fffb88609b1b18e2feb4937))
6
+
7
+
8
+ ### Dependencies
9
+
10
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.11
11
+
12
+ ## @visulima/storage [1.0.0-alpha.13](https://github.com/visulima/visulima/compare/@visulima/storage@1.0.0-alpha.12...@visulima/storage@1.0.0-alpha.13) (2026-04-21)
13
+
14
+ ### Miscellaneous Chores
15
+
16
+ * update the jsr.json ([864ab7e](https://github.com/visulima/visulima/commit/864ab7e71c4b5ae82f64792d1ae8debfea2c539b))
17
+
18
+
19
+ ### Dependencies
20
+
21
+ * **@visulima/fs:** upgraded to 5.0.0-alpha.10
22
+
1
23
  ## @visulima/storage [1.0.0-alpha.12](https://github.com/visulima/visulima/compare/@visulima/storage@1.0.0-alpha.11...@visulima/storage@1.0.0-alpha.12) (2026-04-21)
2
24
 
3
25
  ### Bug Fixes
package/LICENSE.md CHANGED
@@ -87,7 +87,7 @@ Repository: git+https://github.com/visulima/visulima.git
87
87
  >
88
88
  > # Licenses of bundled dependencies
89
89
  > The published @visulima/fs artifact additionally contains code with the following licenses:
90
- > MIT
90
+ > ISC, MIT
91
91
  >
92
92
  > # Bundled dependencies:
93
93
  > ## @visulima/error
@@ -124,131 +124,6 @@ Repository: git+https://github.com/visulima/visulima.git
124
124
  > > MIT
125
125
  > >
126
126
  > > # Bundled dependencies:
127
- > > ## @visulima/path
128
- > > License: MIT
129
- > > By: Daniel Bannert
130
- > > Repository: git+https://github.com/visulima/visulima.git
131
- > >
132
- > > > MIT License
133
- > > >
134
- > > > Copyright (c) 2026 visulima
135
- > > >
136
- > > > Permission is hereby granted, free of charge, to any person obtaining a copy
137
- > > > of this software and associated documentation files (the "Software"), to deal
138
- > > > in the Software without restriction, including without limitation the rights
139
- > > > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
140
- > > > copies of the Software, and to permit persons to whom the Software is
141
- > > > furnished to do so, subject to the following conditions:
142
- > > >
143
- > > > The above copyright notice and this permission notice shall be included in all
144
- > > > copies or substantial portions of the Software.
145
- > > >
146
- > > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
147
- > > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
148
- > > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
149
- > > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
150
- > > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
151
- > > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
152
- > > > SOFTWARE.
153
- > > >
154
- > > > ---
155
- > > >
156
- > > > MIT License
157
- > > >
158
- > > > Copyright (c) Pooya Parsa <pooya@pi0.io> - Daniel Roe <daniel@roe.dev>
159
- > > >
160
- > > > Permission is hereby granted, free of charge, to any person obtaining a copy
161
- > > > of this software and associated documentation files (the "Software"), to deal
162
- > > > in the Software without restriction, including without limitation the rights
163
- > > > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
164
- > > > copies of the Software, and to permit persons to whom the Software is
165
- > > > furnished to do so, subject to the following conditions:
166
- > > >
167
- > > > The above copyright notice and this permission notice shall be included in all
168
- > > > copies or substantial portions of the Software.
169
- > > >
170
- > > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
171
- > > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
172
- > > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
173
- > > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
174
- > > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
175
- > > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
176
- > > > SOFTWARE.
177
- > > >
178
- > > > ---
179
- > > >
180
- > > > Copyright Joyent, Inc. and other Node contributors.
181
- > > >
182
- > > > Permission is hereby granted, free of charge, to any person obtaining a
183
- > > > copy of this software and associated documentation files (the
184
- > > > "Software"), to deal in the Software without restriction, including
185
- > > > without limitation the rights to use, copy, modify, merge, publish,
186
- > > > distribute, sublicense, and/or sell copies of the Software, and to permit
187
- > > > persons to whom the Software is furnished to do so, subject to the
188
- > > > following conditions:
189
- > > >
190
- > > > The above copyright notice and this permission notice shall be included
191
- > > > in all copies or substantial portions of the Software.
192
- > > >
193
- > > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
194
- > > > OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
195
- > > > MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
196
- > > > NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
197
- > > > DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
198
- > > > OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
199
- > > > USE OR OTHER DEALINGS IN THE SOFTWARE.
200
- > > >
201
- > > > ---
202
- > > >
203
- > > > Bundled zeptomatch (https://github.com/fabiospampinato/zeptomatch)
204
- > > >
205
- > > > The MIT License (MIT)
206
- > > >
207
- > > > Copyright (c) 2023-present Fabio Spampinato
208
- > > >
209
- > > > Permission is hereby granted, free of charge, to any person obtaining a
210
- > > > copy of this software and associated documentation files (the "Software"),
211
- > > > to deal in the Software without restriction, including without limitation
212
- > > > the rights to use, copy, modify, merge, publish, distribute, sublicense,
213
- > > > and/or sell copies of the Software, and to permit persons to whom the
214
- > > > Software is furnished to do so, subject to the following conditions:
215
- > > >
216
- > > > The above copyright notice and this permission notice shall be included in
217
- > > > all copies or substantial portions of the Software.
218
- > > >
219
- > > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
220
- > > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
221
- > > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
222
- > > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
223
- > > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
224
- > > > FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
225
- > > > DEALINGS IN THE SOFTWARE.
226
- > > >
227
- > > >
228
- > > >
229
- > > > # Licenses of bundled dependencies
230
- > > > The published @visulima/path artifact additionally contains code with the following licenses:
231
- > > > MIT
232
- > > >
233
- > > > # Bundled dependencies:
234
- > > > ## binary-extensions
235
- > > > License: MIT
236
- > > > By: Sindre Sorhus
237
- > > > Repository: sindresorhus/binary-extensions
238
- > > >
239
- > > > > MIT License
240
- > > > >
241
- > > > > Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
242
- > > > > Copyright (c) Paul Miller (https://paulmillr.com)
243
- > > > >
244
- > > > > Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
245
- > > > >
246
- > > > > The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
247
- > > > >
248
- > > > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
249
- > >
250
- > > ---------------------------------------
251
- > >
252
127
  > > ## is-plain-obj
253
128
  > > License: MIT
254
129
  > > By: Sindre Sorhus
@@ -283,6 +158,73 @@ Repository: git+https://github.com/visulima/visulima.git
283
158
  >
284
159
  > ---------------------------------------
285
160
  >
161
+ > ## fdir
162
+ > License: MIT
163
+ > By: thecodrr
164
+ > Repository: git+https://github.com/thecodrr/fdir.git
165
+ >
166
+ > > Copyright 2023 Abdullah Atta
167
+ > >
168
+ > > Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
169
+ > >
170
+ > > The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
171
+ > >
172
+ > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
173
+ >
174
+ > ---------------------------------------
175
+ >
176
+ > ## glob-parent
177
+ > License: ISC
178
+ > By: Gulp Team, Elan Shanker, Blaine Bublitz
179
+ > Repository: gulpjs/glob-parent
180
+ >
181
+ > > The ISC License
182
+ > >
183
+ > > Copyright (c) 2015, 2019 Elan Shanker, 2021 Blaine Bublitz <blaine.bublitz@gmail.com>, Eric Schoffstall <yo@contra.io> and other contributors
184
+ > >
185
+ > > Permission to use, copy, modify, and/or distribute this software for any
186
+ > > purpose with or without fee is hereby granted, provided that the above
187
+ > > copyright notice and this permission notice appear in all copies.
188
+ > >
189
+ > > THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
190
+ > > WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
191
+ > > MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
192
+ > > ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
193
+ > > WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
194
+ > > ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
195
+ > > IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
196
+ >
197
+ > ---------------------------------------
198
+ >
199
+ > ## is-extglob
200
+ > License: MIT
201
+ > By: Jon Schlinkert
202
+ > Repository: jonschlinkert/is-extglob
203
+ >
204
+ > > The MIT License (MIT)
205
+ > >
206
+ > > Copyright (c) 2014-2016, Jon Schlinkert
207
+ > >
208
+ > > Permission is hereby granted, free of charge, to any person obtaining a copy
209
+ > > of this software and associated documentation files (the "Software"), to deal
210
+ > > in the Software without restriction, including without limitation the rights
211
+ > > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
212
+ > > copies of the Software, and to permit persons to whom the Software is
213
+ > > furnished to do so, subject to the following conditions:
214
+ > >
215
+ > > The above copyright notice and this permission notice shall be included in
216
+ > > all copies or substantial portions of the Software.
217
+ > >
218
+ > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
219
+ > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
220
+ > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
221
+ > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
222
+ > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
223
+ > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
224
+ > > THE SOFTWARE.
225
+ >
226
+ > ---------------------------------------
227
+ >
286
228
  > ## is-fs-case-sensitive
287
229
  > License: MIT
288
230
  > By: Hiroki Osame
@@ -310,6 +252,93 @@ Repository: git+https://github.com/visulima/visulima.git
310
252
  > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
311
253
  > > SOFTWARE.
312
254
  >
255
+ > ---------------------------------------
256
+ >
257
+ > ## is-glob
258
+ > License: MIT
259
+ > By: Jon Schlinkert, Brian Woodward, Daniel Perez
260
+ > Repository: micromatch/is-glob
261
+ >
262
+ > > The MIT License (MIT)
263
+ > >
264
+ > > Copyright (c) 2014-2017, Jon Schlinkert.
265
+ > >
266
+ > > Permission is hereby granted, free of charge, to any person obtaining a copy
267
+ > > of this software and associated documentation files (the "Software"), to deal
268
+ > > in the Software without restriction, including without limitation the rights
269
+ > > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
270
+ > > copies of the Software, and to permit persons to whom the Software is
271
+ > > furnished to do so, subject to the following conditions:
272
+ > >
273
+ > > The above copyright notice and this permission notice shall be included in
274
+ > > all copies or substantial portions of the Software.
275
+ > >
276
+ > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
277
+ > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
278
+ > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
279
+ > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
280
+ > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
281
+ > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
282
+ > > THE SOFTWARE.
283
+ >
284
+ > ---------------------------------------
285
+ >
286
+ > ## picomatch
287
+ > License: MIT
288
+ > By: Jon Schlinkert
289
+ > Repository: micromatch/picomatch
290
+ >
291
+ > > The MIT License (MIT)
292
+ > >
293
+ > > Copyright (c) 2017-present, Jon Schlinkert.
294
+ > >
295
+ > > Permission is hereby granted, free of charge, to any person obtaining a copy
296
+ > > of this software and associated documentation files (the "Software"), to deal
297
+ > > in the Software without restriction, including without limitation the rights
298
+ > > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
299
+ > > copies of the Software, and to permit persons to whom the Software is
300
+ > > furnished to do so, subject to the following conditions:
301
+ > >
302
+ > > The above copyright notice and this permission notice shall be included in
303
+ > > all copies or substantial portions of the Software.
304
+ > >
305
+ > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
306
+ > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
307
+ > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
308
+ > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
309
+ > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
310
+ > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
311
+ > > THE SOFTWARE.
312
+ >
313
+ > ---------------------------------------
314
+ >
315
+ > ## tinyglobby
316
+ > License: MIT
317
+ > By: Superchupu
318
+ > Repository: git+https://github.com/SuperchupuDev/tinyglobby.git
319
+ >
320
+ > > MIT License
321
+ > >
322
+ > > Copyright (c) 2024 Madeline Gurriarán
323
+ > >
324
+ > > Permission is hereby granted, free of charge, to any person obtaining a copy
325
+ > > of this software and associated documentation files (the "Software"), to deal
326
+ > > in the Software without restriction, including without limitation the rights
327
+ > > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
328
+ > > copies of the Software, and to permit persons to whom the Software is
329
+ > > furnished to do so, subject to the following conditions:
330
+ > >
331
+ > > The above copyright notice and this permission notice shall be included in all
332
+ > > copies or substantial portions of the Software.
333
+ > >
334
+ > > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
335
+ > > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
336
+ > > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
337
+ > > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
338
+ > > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
339
+ > > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
340
+ > > SOFTWARE.
341
+ >
313
342
  >
314
343
  >
315
344
  >
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  export { waitForStorage } from './packem_shared/waitForStorage-Cscw85sx.js';
2
- export { D as DiskStorage } from './packem_shared/disk-storage-CC6-FUG9.js';
3
- export { default as DiskStorageWithChecksum } from './packem_shared/DiskStorageWithChecksum-pu9u6IF7.js';
4
- export { L as LocalMetaStorage } from './packem_shared/local-meta-storage-BlOk6m7F.js';
2
+ export { D as DiskStorage } from './packem_shared/disk-storage-D9RfoKjW.js';
3
+ export { default as DiskStorageWithChecksum } from './packem_shared/DiskStorageWithChecksum-BVaaZiyS.js';
4
+ export { L as LocalMetaStorage } from './packem_shared/local-meta-storage-D-pPc3FI.js';
5
5
  export { default as MetaStorage } from './packem_shared/MetaStorage-pECeFOad.js';
6
- export { B as AbstractBaseStorage, d as defaultCloudStorageFileNameValidation, a as defaultFilesystemFileNameValidation } from './packem_shared/storage-CpJpqLdn.js';
6
+ export { B as AbstractBaseStorage, d as defaultCloudStorageFileNameValidation, a as defaultFilesystemFileNameValidation } from './packem_shared/storage-5XW1E7XU.js';
7
7
  export { ERRORS, ErrorMap, UploadError, isUploadError, throwErrorCode } from './packem_shared/ERRORS-D0apMqnc.js';
8
8
  export { createRetryWrapper, isRetryableError, retry } from './packem_shared/isRetryableError-Dycp7127.js';
9
9
  export { fileTypeFromBlob, fileTypeFromBuffer, fileTypeFromTokenizer, supportedExtensions, supportedMimeTypes } from 'file-type';
@@ -1,5 +1,5 @@
1
1
  import { Readable } from 'node:stream';
2
- import { S as S3BaseStorage } from './s3-base-storage-DSMObtht.js';
2
+ import { S as S3BaseStorage } from './s3-base-storage-zUO8u8Cp.js';
3
3
  import { a as AwsLightApiAdapter, A as AwsLightMetaStorage } from './aws-light-meta-storage-BGZEiY3y.js';
4
4
  import AwsLightFile from './AwsLightFile-C-Nd5rtl.js';
5
5
 
@@ -1,9 +1,9 @@
1
1
  import { BlobServiceClient, StorageSharedKeyCredential } from '@azure/storage-blob';
2
2
  import { p as partMatch, d as detectFileTypeFromStream, g as getFileStatus } from './part-match-Dt738Ddb.js';
3
3
  import { throwErrorCode, ERRORS } from './ERRORS-D0apMqnc.js';
4
- import { B as BaseStorage, t as toMilliseconds } from './storage-CpJpqLdn.js';
4
+ import { B as BaseStorage, t as toMilliseconds } from './storage-5XW1E7XU.js';
5
5
  import { createRetryWrapper } from './isRetryableError-Dycp7127.js';
6
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
6
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
7
7
  import AzureFile from './AzureFile-C0kug4w4.js';
8
8
  import AzureMetaStorage from './AzureSMetaStorage-BEbXX9Uk.js';
9
9
  import { n as normalize } from './path-aV9lMdcn-DMU5H1-h.js';
@@ -1,11 +1,11 @@
1
1
  import 'node:fs';
2
2
  import 'node:fs/promises';
3
3
  import 'node:stream';
4
- export { D as default } from './disk-storage-CC6-FUG9.js';
4
+ export { D as default } from './disk-storage-D9RfoKjW.js';
5
5
  import './part-match-Dt738Ddb.js';
6
6
  import './ERRORS-D0apMqnc.js';
7
- import './storage-CpJpqLdn.js';
8
- import './local-meta-storage-BlOk6m7F.js';
7
+ import './storage-5XW1E7XU.js';
8
+ import './local-meta-storage-D-pPc3FI.js';
9
9
  import './File-CPUhj3DI.js';
10
10
  import './update-size-CCGm6i1J.js';
11
11
  import './has-content-CY66ehMK.js';
@@ -3,10 +3,10 @@ import { truncate } from 'node:fs/promises';
3
3
  import { Transform, pipeline } from 'node:stream';
4
4
  import { p as partMatch, d as detectFileTypeFromStream, g as getFileStatus } from './part-match-Dt738Ddb.js';
5
5
  import { throwErrorCode, ERRORS } from './ERRORS-D0apMqnc.js';
6
- import { D as DiskStorage, e as ensureFile, S as StreamLength, s as streamChecksum } from './disk-storage-CC6-FUG9.js';
6
+ import { D as DiskStorage, e as ensureFile, S as StreamLength, s as streamChecksum } from './disk-storage-D9RfoKjW.js';
7
7
  import { LRUCache } from 'lru-cache';
8
8
  import { createHash } from 'node:crypto';
9
- import { r as remove } from './local-meta-storage-BlOk6m7F.js';
9
+ import { r as remove } from './local-meta-storage-D-pPc3FI.js';
10
10
  import { u as updateSize } from './update-size-CCGm6i1J.js';
11
11
  import { h as hasContent } from './has-content-CY66ehMK.js';
12
12
 
@@ -1,7 +1,7 @@
1
1
  import 'node:crypto';
2
2
  import 'gaxios';
3
3
  import 'google-auth-library';
4
- export { G as default } from './gcs-meta-storage-MsUrkgP6.js';
4
+ export { G as default } from './gcs-meta-storage-C8rMsqR_.js';
5
5
  import './MetaStorage-pECeFOad.js';
6
6
  import './Metadata-DRLXeJ0F.js';
7
7
  import './GCSConfig-vPP22kN6.js';
@@ -1,11 +1,11 @@
1
1
  import { randomUUID } from 'node:crypto';
2
2
  import { request } from 'gaxios';
3
3
  import { GoogleAuth } from 'google-auth-library';
4
- import { r as retryOptions, G as GCSMetaStorage, g as getRangeEnd, p as package_, b as buildContentRange } from './gcs-meta-storage-MsUrkgP6.js';
4
+ import { r as retryOptions, G as GCSMetaStorage, g as getRangeEnd, p as package_, b as buildContentRange } from './gcs-meta-storage-C8rMsqR_.js';
5
5
  import { p as partMatch, d as detectFileTypeFromStream, g as getFileStatus } from './part-match-Dt738Ddb.js';
6
6
  import { throwErrorCode, ERRORS } from './ERRORS-D0apMqnc.js';
7
- import { B as BaseStorage, t as toMilliseconds } from './storage-CpJpqLdn.js';
8
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
7
+ import { B as BaseStorage, t as toMilliseconds } from './storage-5XW1E7XU.js';
8
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
9
9
  import GCSConfig from './GCSConfig-vPP22kN6.js';
10
10
  import GCSFile from './GCSFile-DaDiCKE2.js';
11
11
  import { h as hasContent } from './has-content-CY66ehMK.js';
@@ -4,4 +4,4 @@ import './ERRORS-D0apMqnc.js';
4
4
  import './MetaStorage-pECeFOad.js';
5
5
  import './Metadata-DRLXeJ0F.js';
6
6
  import './path-aV9lMdcn-DMU5H1-h.js';
7
- export { L as default } from './local-meta-storage-BlOk6m7F.js';
7
+ export { L as default } from './local-meta-storage-D-pPc3FI.js';
@@ -1,4 +1,4 @@
1
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
1
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
2
2
 
3
3
  class NetlifyBlobMetaStorage extends LocalMetaStorage {
4
4
  constructor(config) {
@@ -1,8 +1,8 @@
1
1
  import { getStore } from '@netlify/blobs';
2
2
  import { g as getFileStatus, p as partMatch, a as detectFileTypeFromBuffer } from './part-match-Dt738Ddb.js';
3
- import { B as BaseStorage, t as toMilliseconds, u as updateMetadata } from './storage-CpJpqLdn.js';
3
+ import { B as BaseStorage, t as toMilliseconds, u as updateMetadata } from './storage-5XW1E7XU.js';
4
4
  import { createRetryWrapper } from './isRetryableError-Dycp7127.js';
5
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
5
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
6
6
  import NetlifyBlobFile from './NetlifyBlobFile-CfyJtGWN.js';
7
7
  import { u as updateSize } from './update-size-CCGm6i1J.js';
8
8
  import { h as hasContent } from './has-content-CY66ehMK.js';
@@ -1,7 +1,7 @@
1
1
  import { Readable } from 'node:stream';
2
2
  import { CreateMultipartUploadCommand, UploadPartCommand, CompleteMultipartUploadCommand, AbortMultipartUploadCommand, ListPartsCommand, GetObjectCommand, HeadObjectCommand, DeleteObjectCommand, CopyObjectCommand, ListObjectsV2Command, waitUntilBucketExists, S3Client } from '@aws-sdk/client-s3';
3
3
  import { fromIni } from '@aws-sdk/credential-providers';
4
- import { S as S3BaseStorage } from './s3-base-storage-DSMObtht.js';
4
+ import { S as S3BaseStorage } from './s3-base-storage-zUO8u8Cp.js';
5
5
  import { ReadableStream } from 'node:stream/web';
6
6
  import { getSignedUrl } from '@aws-sdk/s3-request-presigner';
7
7
  import S3File from './S3File-BXCuJaQZ.js';
@@ -1,4 +1,4 @@
1
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
1
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
2
2
 
3
3
  class VercelBlobMetaStorage extends LocalMetaStorage {
4
4
  constructor(config) {
@@ -1,7 +1,7 @@
1
1
  import { put, del, copy, list } from '@vercel/blob';
2
2
  import { g as getFileStatus, p as partMatch, a as detectFileTypeFromBuffer } from './part-match-Dt738Ddb.js';
3
- import { B as BaseStorage, t as toMilliseconds } from './storage-CpJpqLdn.js';
4
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
3
+ import { B as BaseStorage, t as toMilliseconds } from './storage-5XW1E7XU.js';
4
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
5
5
  import VercelBlobFile from './VercelBlobFile-DkFIIb9Q.js';
6
6
  import { u as updateSize } from './update-size-CCGm6i1J.js';
7
7
  import { h as hasContent } from './has-content-CY66ehMK.js';
@@ -5,7 +5,7 @@ import 'type-is';
5
5
  import './NoOpMetrics-DhAk5rXc.js';
6
6
  import './cache-B88MXQ_2.js';
7
7
  import './ERRORS-D0apMqnc.js';
8
- export { B as BaseStorage, d as defaultCloudStorageFileNameValidation, a as defaultFilesystemFileNameValidation } from './storage-CpJpqLdn.js';
8
+ export { B as BaseStorage, d as defaultCloudStorageFileNameValidation, a as defaultFilesystemFileNameValidation } from './storage-5XW1E7XU.js';
9
9
  import './validator-DuO17wFF.js';
10
10
  import './path-aV9lMdcn-DMU5H1-h.js';
11
11
  import './is-expired-CTThU1q5.js';
@@ -7,8 +7,8 @@ import require$$1 from 'fs';
7
7
  import { g as getFileStatus, p as partMatch, d as detectFileTypeFromStream } from './part-match-Dt738Ddb.js';
8
8
  import { throwErrorCode, isUploadError, ERRORS } from './ERRORS-D0apMqnc.js';
9
9
  import { createHash } from 'node:crypto';
10
- import { B as BaseStorage, a as defaultFilesystemFileNameValidation, t as toMilliseconds } from './storage-CpJpqLdn.js';
11
- import { a as assertValidFileOrDirectoryPath, g as getFileInfoType, e as ensureDir, t as toPath, i as isAccessible, L as LocalMetaStorage, b as readFile, r as remove } from './local-meta-storage-BlOk6m7F.js';
10
+ import { B as BaseStorage, a as defaultFilesystemFileNameValidation, t as toMilliseconds } from './storage-5XW1E7XU.js';
11
+ import { a as assertValidFileOrDirectoryPath, g as getFileInfoType, e as ensureDir, t as toPath, i as isAccessible, L as LocalMetaStorage, b as readFile, r as remove } from './local-meta-storage-D-pPc3FI.js';
12
12
  import File from './File-CPUhj3DI.js';
13
13
  import { createRequire } from 'node:module';
14
14
  import { d as dirname, r as resolve, j as join, n as normalize, b as basename, i as isAbsolute } from './path-aV9lMdcn-DMU5H1-h.js';
@@ -126,9 +126,16 @@ async function* walk(directory, {
126
126
  if (maxDepth < 0) {
127
127
  return;
128
128
  }
129
- const mappedMatch = match ? match.map((pattern) => typeof pattern === "string" ? globToRegExp(pattern) : pattern) : void 0;
130
- const mappedSkip = skip ? skip.map((pattern) => typeof pattern === "string" ? globToRegExp(pattern) : pattern) : void 0;
131
- directory = resolve(toPath(directory));
129
+ const mappedMatch = match ? match.map(
130
+ // eslint-disable-next-line no-confusing-arrow
131
+ (pattern) => typeof pattern === "string" ? globToRegExp(pattern) : pattern
132
+ ) : void 0;
133
+ const mappedSkip = skip ? skip.map(
134
+ // eslint-disable-next-line no-confusing-arrow
135
+ (pattern) => typeof pattern === "string" ? globToRegExp(pattern) : pattern
136
+ ) : void 0;
137
+ const resolvedDirectory = resolve(toPath(directory));
138
+ directory = resolvedDirectory;
132
139
  if (includeDirectories && walkInclude(directory, extensions, mappedMatch, mappedSkip)) {
133
140
  yield await _createWalkEntry(directory);
134
141
  }
@@ -7,7 +7,7 @@ import GCSConfig from './GCSConfig-vPP22kN6.js';
7
7
  import { h as hasContent } from './has-content-CY66ehMK.js';
8
8
 
9
9
  var name = "@visulima/storage";
10
- var version = "1.0.0-alpha.11";
10
+ var version = "1.0.0-alpha.13";
11
11
  const package_ = {
12
12
  name: name,
13
13
  version: version};
@@ -463,6 +463,17 @@ const readFile = async (path, options) => {
463
463
  });
464
464
  };
465
465
 
466
+ const buildRmOptions = (options) => {
467
+ const rmOptions = { force: true, recursive: true };
468
+ if (options?.maxRetries !== void 0) {
469
+ rmOptions.maxRetries = options.maxRetries;
470
+ }
471
+ if (options?.retryDelay !== void 0) {
472
+ rmOptions.retryDelay = options.retryDelay;
473
+ }
474
+ return rmOptions;
475
+ };
476
+
466
477
  const __cjs_require$1 = createRequire(import.meta.url);
467
478
  const __cjs_getProcess$1 = typeof globalThis !== "undefined" && typeof globalThis.process !== "undefined" ? globalThis.process : process;
468
479
  const __cjs_getBuiltinModule$1 = (module) => {
@@ -485,7 +496,7 @@ const remove = async (path, options = {}) => {
485
496
  } catch {
486
497
  }
487
498
  try {
488
- await rm(path, { force: true, maxRetries: options.maxRetries, recursive: true, retryDelay: options.retryDelay });
499
+ await rm(path, buildRmOptions(options));
489
500
  } catch {
490
501
  }
491
502
  };
@@ -1,9 +1,9 @@
1
1
  import { Readable } from 'node:stream';
2
2
  import { p as partMatch, d as detectFileTypeFromStream, g as getFileStatus } from './part-match-Dt738Ddb.js';
3
3
  import { throwErrorCode, ERRORS } from './ERRORS-D0apMqnc.js';
4
- import { p as parseDuration, B as BaseStorage, b as parseBytes, t as toMilliseconds } from './storage-CpJpqLdn.js';
4
+ import { p as parseDuration, B as BaseStorage, b as parseBytes, t as toMilliseconds } from './storage-5XW1E7XU.js';
5
5
  import { createRetryWrapper } from './isRetryableError-Dycp7127.js';
6
- import { L as LocalMetaStorage } from './local-meta-storage-BlOk6m7F.js';
6
+ import { L as LocalMetaStorage } from './local-meta-storage-D-pPc3FI.js';
7
7
  import { u as updateSize } from './update-size-CCGm6i1J.js';
8
8
  import { h as hasContent } from './has-content-CY66ehMK.js';
9
9
  import { i as isExpired } from './is-expired-CTThU1q5.js';
@@ -10,7 +10,7 @@ import { a as Validator } from './validator-DuO17wFF.js';
10
10
  import { n as normalize, i as isAbsolute } from './path-aV9lMdcn-DMU5H1-h.js';
11
11
  import { i as isExpired } from './is-expired-CTThU1q5.js';
12
12
 
13
- const PARSE_BYTES_REGEX = /^(?<value>-?(?:\d+(([.,])\d+)*)?[.,]?\d+) *(?<type>bytes?|b|kb|kib|mb|mib|gb|gib|tb|tib|pb|pib|eb|eib|zb|zib|yb|yib|(kilo|kibi|mega|mebi|giga|gibi|tera|tebi|peta|pebi|exa|exbi|zetta|zebi|yotta|yobi)?bytes)?$/i;
13
+ const PARSE_BYTES_REGEX = /^(?<value>-?\d+(?:[.,]\d+)*) *(?<type>[a-z]+)?$/i;
14
14
  const KIBI_REGEX = /^KIBI/;
15
15
  const MIBI_REGEX = /^MIBI/;
16
16
  const GIBI_REGEX = /^GIBI/;
@@ -180,13 +180,17 @@ const parseLocalizedNumber = (stringNumber, locale) => {
180
180
  return Number.parseFloat(stringNumber.replaceAll(new RegExp(`\\${thousandSeparator}`, "g"), "").replace(new RegExp(`\\${decimalSeparator}`), "."));
181
181
  };
182
182
  const fromBase = (base) => {
183
- if (base === 2) {
184
- return 1024;
185
- }
186
- if (base === 10) {
187
- return 1e3;
183
+ switch (base) {
184
+ case 2: {
185
+ return 1024;
186
+ }
187
+ case 10: {
188
+ return 1e3;
189
+ }
190
+ default: {
191
+ throw new Error("Unsupported base.");
192
+ }
188
193
  }
189
- throw new Error("Unsupported base.");
190
194
  };
191
195
  const parseBytes = (value, options) => {
192
196
  const config = {
@@ -1,3 +1,3 @@
1
1
  export { default as S3File } from '../../packem_shared/S3File-BXCuJaQZ.js';
2
2
  export { default as S3MetaStorage } from '../../packem_shared/S3MetaStorage-yT4CznlV.js';
3
- export { default as S3Storage } from '../../packem_shared/S3Storage-2ZiheyWz.js';
3
+ export { default as S3Storage } from '../../packem_shared/S3Storage-wi5XT-yu.js';
@@ -1,3 +1,3 @@
1
1
  export { default as AwsLightFile } from '../../packem_shared/AwsLightFile-C-Nd5rtl.js';
2
2
  export { A as AwsLightMetaStorage } from '../../packem_shared/aws-light-meta-storage-BGZEiY3y.js';
3
- export { default as AwsLightStorage } from '../../packem_shared/AwsLightStorage-C893xyaW.js';
3
+ export { default as AwsLightStorage } from '../../packem_shared/AwsLightStorage-CMuKw4bI.js';
@@ -1,3 +1,3 @@
1
1
  export { default as AzureFile } from '../../packem_shared/AzureFile-C0kug4w4.js';
2
2
  export { default as AzureSMetaStorage } from '../../packem_shared/AzureSMetaStorage-BEbXX9Uk.js';
3
- export { default as AzureStorage } from '../../packem_shared/AzureStorage-CpvzFT4y.js';
3
+ export { default as AzureStorage } from '../../packem_shared/AzureStorage-98-LRZ1e.js';
@@ -1,4 +1,4 @@
1
1
  export { default as GCSConfig } from '../../packem_shared/GCSConfig-vPP22kN6.js';
2
2
  export { default as GCSFile } from '../../packem_shared/GCSFile-DaDiCKE2.js';
3
- export { G as GCSMetaStorage } from '../../packem_shared/gcs-meta-storage-MsUrkgP6.js';
4
- export { default as GCStorage } from '../../packem_shared/GCStorage-BBHFEg7F.js';
3
+ export { G as GCSMetaStorage } from '../../packem_shared/gcs-meta-storage-C8rMsqR_.js';
4
+ export { default as GCStorage } from '../../packem_shared/GCStorage-D3JVWisH.js';
@@ -1,3 +1,3 @@
1
- export { D as DiskStorage } from '../../packem_shared/disk-storage-CC6-FUG9.js';
2
- export { default as DiskStorageWithChecksum } from '../../packem_shared/DiskStorageWithChecksum-pu9u6IF7.js';
3
- export { L as LocalMetaStorage } from '../../packem_shared/local-meta-storage-BlOk6m7F.js';
1
+ export { D as DiskStorage } from '../../packem_shared/disk-storage-D9RfoKjW.js';
2
+ export { default as DiskStorageWithChecksum } from '../../packem_shared/DiskStorageWithChecksum-BVaaZiyS.js';
3
+ export { L as LocalMetaStorage } from '../../packem_shared/local-meta-storage-D-pPc3FI.js';
@@ -1,3 +1,3 @@
1
1
  export { default as NetlifyBlobFile } from '../../packem_shared/NetlifyBlobFile-CfyJtGWN.js';
2
- export { default as NetlifyBlobMetaStorage } from '../../packem_shared/NetlifyBlobMetaStorage-DIkZ2umW.js';
3
- export { default as NetlifyBlobStorage } from '../../packem_shared/NetlifyBlobStorage-pZX0_VdO.js';
2
+ export { default as NetlifyBlobMetaStorage } from '../../packem_shared/NetlifyBlobMetaStorage-eJT6RFy9.js';
3
+ export { default as NetlifyBlobStorage } from '../../packem_shared/NetlifyBlobStorage-nPv7iIAG.js';
@@ -1,3 +1,3 @@
1
1
  export { default as VercelBlobFile } from '../../packem_shared/VercelBlobFile-DkFIIb9Q.js';
2
- export { default as VercelBlobMetaStorage } from '../../packem_shared/VercelBlobMetaStorage-c0M-TvAR.js';
3
- export { default as VercelBlobStorage } from '../../packem_shared/VercelBlobStorage-CwgI91cP.js';
2
+ export { default as VercelBlobMetaStorage } from '../../packem_shared/VercelBlobMetaStorage-DjFmi4vp.js';
3
+ export { default as VercelBlobStorage } from '../../packem_shared/VercelBlobStorage-CmMgiDgr.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/storage",
3
- "version": "1.0.0-alpha.12",
3
+ "version": "1.0.0-alpha.14",
4
4
  "description": "Visulima upload - Store files in a web-accessible location via a simplified API. Can automatically scale and rotate images. Includes S3, Azure, GCS and local filesystem-based backends with the most convenient features of each.",
5
5
  "keywords": [
6
6
  "anolilab",