@visulima/storage 2.0.0 → 2.0.1

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 (360) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/LICENSE.md +130 -1
  3. package/dist/adapter/nuxt/module.d.ts +5 -5
  4. package/dist/adapter/nuxt/module.js +1 -1
  5. package/dist/ai/ai-sdk/index.d.ts +7 -7
  6. package/dist/ai/ai-sdk/index.js +1 -1
  7. package/dist/ai/claude/index.d.ts +5 -5
  8. package/dist/ai/claude/index.js +1 -1
  9. package/dist/ai/openai/index.d.ts +13 -5
  10. package/dist/ai/openai/index.js +1 -1
  11. package/dist/ai/tanstack/index.d.ts +6 -6
  12. package/dist/ai/tanstack/index.js +1 -1
  13. package/dist/handler/http/fetch/index.d.ts +8 -8
  14. package/dist/handler/http/fetch/index.js +1 -1
  15. package/dist/handler/http/hono/index.d.ts +7 -7
  16. package/dist/handler/http/hono/index.js +1 -1
  17. package/dist/handler/http/nextjs/index.d.ts +7 -7
  18. package/dist/handler/http/nextjs/index.js +1 -1
  19. package/dist/handler/http/node/index.d.ts +7 -7
  20. package/dist/handler/http/node/index.js +1 -1
  21. package/dist/handler/http/solid-start/index.d.ts +7 -7
  22. package/dist/handler/http/solid-start/index.js +1 -1
  23. package/dist/index.d.ts +8 -8
  24. package/dist/index.js +1 -1
  25. package/dist/openapi/index.js +1 -1
  26. package/dist/packem_shared/AbstractBaseStorage-CcIPoAES.js +1 -0
  27. package/dist/packem_shared/AwsLightFile-CqeZ6M7o.js +1 -0
  28. package/dist/packem_shared/AwsLightMetaStorage-Cb4xIpax.js +1 -0
  29. package/dist/packem_shared/AwsLightStorage-Bhg6C3fo.js +1 -0
  30. package/dist/packem_shared/AzureFile-DoUVXQMI.js +1 -0
  31. package/dist/packem_shared/AzureSMetaStorage-ByKDwgWo.js +1 -0
  32. package/dist/packem_shared/AzureStorage-BzYWVRnX.js +1 -0
  33. package/dist/packem_shared/BaseTransformer-ByIAKnn8.js +1 -0
  34. package/dist/packem_shared/BoxFile-CKKRYACc.js +1 -0
  35. package/dist/packem_shared/BoxMetaStorage-BI-G6aeO.js +1 -0
  36. package/dist/packem_shared/BoxStorage-Bmzt-OTx.js +1 -0
  37. package/dist/packem_shared/BunS3File-B2rczbY_.js +1 -0
  38. package/dist/packem_shared/BunS3MetaStorage-BI-G6aeO.js +1 -0
  39. package/dist/packem_shared/{BunS3Storage-B_roVJ29.js → BunS3Storage-uJ-u5wpg.js} +1 -1
  40. package/dist/packem_shared/BunnyFile-CBJdpNcB.js +1 -0
  41. package/dist/packem_shared/BunnyMetaStorage-BI-G6aeO.js +1 -0
  42. package/dist/packem_shared/BunnyStorage-9fw8VeuO.js +1 -0
  43. package/dist/packem_shared/CloudinaryFile-Dl8cnbJo.js +1 -0
  44. package/dist/packem_shared/CloudinaryMetaStorage-CYWznm7F.js +1 -0
  45. package/dist/packem_shared/CloudinaryStorage-CRVFUrEK.js +1 -0
  46. package/dist/packem_shared/DiskStorage-Wm6PC8Rc.js +1 -0
  47. package/dist/packem_shared/DiskStorageWithChecksum-CyhRDK5M.js +1 -0
  48. package/dist/packem_shared/DropboxFile-BUSubTWW.js +1 -0
  49. package/dist/packem_shared/DropboxMetaStorage-BYbJBJXr.js +1 -0
  50. package/dist/packem_shared/DropboxStorage-ZfgP7IMo.js +1 -0
  51. package/dist/packem_shared/{ERRORS-BIBxE2oR.js → ERRORS-olUcTqo2.js} +1 -1
  52. package/dist/packem_shared/File-DLAa0hBv.js +1 -0
  53. package/dist/packem_shared/Files-NF7wRh5C.js +1 -0
  54. package/dist/packem_shared/FirebaseFile-Dl8cnbJo.js +1 -0
  55. package/dist/packem_shared/FirebaseMetaStorage-DX1-58UY.js +1 -0
  56. package/dist/packem_shared/FirebaseStorage-D8NgHiZh.js +2 -0
  57. package/dist/packem_shared/FtpFile-H8EmE3S_.js +1 -0
  58. package/dist/packem_shared/FtpMetaStorage-BI-G6aeO.js +1 -0
  59. package/dist/packem_shared/FtpStorage-BjBdLfTV.js +1 -0
  60. package/dist/packem_shared/GCSFile-mFuZfcTW.js +1 -0
  61. package/dist/packem_shared/GCSMetaStorage-Dm8m-iJT.js +1 -0
  62. package/dist/packem_shared/GCStorage-BWV6QQqd.js +1 -0
  63. package/dist/packem_shared/GoogleDriveFile-fDYE1aaN.js +1 -0
  64. package/dist/packem_shared/GoogleDriveMetaStorage-CEleJNZZ.js +1 -0
  65. package/dist/packem_shared/{GoogleDriveStorage-Du7uBhSm.js → GoogleDriveStorage-CS9nWKP5.js} +1 -1
  66. package/dist/packem_shared/LocalMetaStorage-EnWCLyKq.js +1 -0
  67. package/dist/packem_shared/MediaTransformer-GqBUkOvz.js +1 -0
  68. package/dist/packem_shared/MemoryMetaStorage-DdAIGIVO.js +1 -0
  69. package/dist/packem_shared/{MemoryStorage-ChKyI6OY.js → MemoryStorage-CJw7SAlG.js} +1 -1
  70. package/dist/packem_shared/Metadata-BeQVDFer.js +1 -0
  71. package/dist/packem_shared/{Multipart-V64Bg5dt.js → Multipart-C3ve9Z0D.js} +1 -1
  72. package/dist/packem_shared/Multipart-PlMON60C.js +1 -0
  73. package/dist/packem_shared/NetlifyBlobFile-Br5HPqlC.js +1 -0
  74. package/dist/packem_shared/NetlifyBlobMetaStorage-DD5mbms5.js +1 -0
  75. package/dist/packem_shared/NetlifyBlobStorage-DVpJgN3v.js +1 -0
  76. package/dist/packem_shared/NoOpMetrics-CWqe9gwp.js +1 -0
  77. package/dist/packem_shared/OneDriveFile-Ccv5bkno.js +1 -0
  78. package/dist/packem_shared/OneDriveMetaStorage-D0GzJ0FC.js +1 -0
  79. package/dist/packem_shared/OneDriveStorage-CTYdWnnf.js +1 -0
  80. package/dist/packem_shared/OpenTelemetryMetrics-opDTaCRp.js +1 -0
  81. package/dist/packem_shared/PocketBaseFile-Dl8cnbJo.js +1 -0
  82. package/dist/packem_shared/PocketBaseMetaStorage-DgKNhi2j.js +1 -0
  83. package/dist/packem_shared/PocketBaseStorage-CHQVk7lR.js +1 -0
  84. package/dist/packem_shared/Rest-DQRxx8yQ.js +1 -0
  85. package/dist/packem_shared/Rest-DYXzbF-Q.js +1 -0
  86. package/dist/packem_shared/S3File-CyL0Q6Nx.js +1 -0
  87. package/dist/packem_shared/S3MetaStorage-DszTVQMa.js +1 -0
  88. package/dist/packem_shared/S3Storage-Bdns7a3N.js +1 -0
  89. package/dist/packem_shared/SftpFile-H8EmE3S_.js +1 -0
  90. package/dist/packem_shared/SftpMetaStorage-BI-G6aeO.js +1 -0
  91. package/dist/packem_shared/SftpStorage-D08to8f6.js +1 -0
  92. package/dist/packem_shared/SharePointFile-BWfd3Rel.js +1 -0
  93. package/dist/packem_shared/SharePointMetaStorage-BI-G6aeO.js +1 -0
  94. package/dist/packem_shared/{SharePointStorage-Dtnt5-wk.js → SharePointStorage-PtgEmyCY.js} +1 -1
  95. package/dist/packem_shared/SupabaseFile-CI0eFAyo.js +1 -0
  96. package/dist/packem_shared/SupabaseMetaStorage-CRw0xTXk.js +1 -0
  97. package/dist/packem_shared/SupabaseStorage-DJe4YZJD.js +1 -0
  98. package/dist/packem_shared/TUS_RESUMABLE-Dsxqcx-u.js +1 -0
  99. package/dist/packem_shared/{Tus-CJBgnJrn.js → Tus-C800fRBi.js} +1 -1
  100. package/dist/packem_shared/Tus-Vttn79I2.js +1 -0
  101. package/dist/packem_shared/UploadThingFile-DP4kNmpS.js +1 -0
  102. package/dist/packem_shared/UploadThingMetaStorage-CYWznm7F.js +1 -0
  103. package/dist/packem_shared/UploadThingStorage-S3iYzJ8Z.js +1 -0
  104. package/dist/packem_shared/ValidationError-SzFFFHiN.js +1 -0
  105. package/dist/packem_shared/VercelBlobFile-Censq2sD.js +1 -0
  106. package/dist/packem_shared/VercelBlobMetaStorage-DgKNhi2j.js +1 -0
  107. package/dist/packem_shared/VercelBlobStorage-D1eytZwU.js +1 -0
  108. package/dist/packem_shared/_commonjsHelpers-CqkleIqs.js +1 -0
  109. package/dist/packem_shared/agentsCopyFile-BMTcfVHg.js +1 -0
  110. package/dist/packem_shared/akamai-BPAk4688.js +1 -0
  111. package/dist/packem_shared/alibaba-CPhhkaQs.js +1 -0
  112. package/dist/packem_shared/approval-DcuhtQKs.js +1 -0
  113. package/dist/packem_shared/aws-light-meta-storage-CgGLgB8g.js +4 -0
  114. package/dist/packem_shared/azure-meta-storage-DmBO5MmP.js +1 -0
  115. package/dist/packem_shared/backblaze-CjeWkpeg.js +1 -0
  116. package/dist/packem_shared/base-handler-core-BvNgdV-9.js +1 -0
  117. package/dist/packem_shared/base-handler-fetch-DDSPIzWT.js +1 -0
  118. package/dist/packem_shared/base-handler-node-C83nCFpv.js +1 -0
  119. package/dist/packem_shared/claudeCopyFile-CMKFZHFh.js +1 -0
  120. package/dist/packem_shared/cloudflare-CijqmNaq.js +1 -0
  121. package/dist/packem_shared/copyFile-B7PNh9O7.js +1 -0
  122. package/dist/packem_shared/copyFile-Q5eYZIU5.js +1 -0
  123. package/dist/packem_shared/createResponsesFileTools-SU-K9JG4.js +1 -0
  124. package/dist/packem_shared/createRetryWrapper-BM8PL0cI.js +1 -0
  125. package/dist/packem_shared/detect-file-type-go3r-MOD.js +1 -0
  126. package/dist/packem_shared/digitalOcean-BE_d_CcF.js +1 -0
  127. package/dist/packem_shared/disk-storage-DEOi12bM.js +1 -0
  128. package/dist/packem_shared/{executors-BDzMjc4y.js → executors-DgKT6b1T.js} +1 -1
  129. package/dist/packem_shared/{executors.d-B9dIy3NT.d.ts → executors.d-HWHR3Ids.d.ts} +1 -6
  130. package/dist/packem_shared/exoscale-BzXbsZ3A.js +1 -0
  131. package/dist/packem_shared/{filebase-CsFYJIwB.js → filebase-pfolz904.js} +1 -1
  132. package/dist/packem_shared/{files.d-CmSZi3M0.d.ts → files.d-DuIceNg2.d.ts} +1 -1
  133. package/dist/packem_shared/gcs-meta-storage-A5uvIda3.js +1 -0
  134. package/dist/packem_shared/{get-file-status-y3wTtDQs.js → get-file-status-B8WmWzcM.js} +1 -1
  135. package/dist/packem_shared/getFormatFromContentType-BAVdaQ0o.js +1 -0
  136. package/dist/packem_shared/has-content-96mmyLn2.js +1 -0
  137. package/dist/packem_shared/headers-erjZrwbT.js +26 -0
  138. package/dist/packem_shared/hetzner-CaLW6ANw.js +1 -0
  139. package/dist/packem_shared/{ibmCos-j-3TfJ5p.js → ibmCos-Dbcs7XEJ.js} +1 -1
  140. package/dist/packem_shared/idriveE2-BiiGl7tr.js +1 -0
  141. package/dist/packem_shared/index-DKzU1HON.js +5 -0
  142. package/dist/packem_shared/internal-Zb__DDsV.js +1 -0
  143. package/dist/packem_shared/is-expired-CZlgTFFz.js +1 -0
  144. package/dist/packem_shared/local-meta-storage-Ca6WrUmN.js +1 -0
  145. package/dist/packem_shared/{local-meta-storage.d-cRTXr1kb.d.ts → local-meta-storage.d-CYWYyCUo.d.ts} +1 -2
  146. package/dist/packem_shared/{media-transformer.d-C8tn4J2Z.d.ts → media-transformer.d-Co37isNg.d.ts} +2 -2
  147. package/dist/packem_shared/minio-CC_RGR-q.js +1 -0
  148. package/dist/packem_shared/multipart-base-0AXqLN-B.js +1 -0
  149. package/dist/packem_shared/oauth-refresh-Cf1z47zf.js +1 -0
  150. package/dist/packem_shared/{oracleCloud-DslqNpn6.js → oracleCloud-eAWm6voZ.js} +1 -1
  151. package/dist/packem_shared/{ovhCloud-CMHE6uLV.js → ovhCloud-D00DprwO.js} +1 -1
  152. package/dist/packem_shared/part-match-Cb6xL9eN.js +1 -0
  153. package/dist/packem_shared/path-CxEa27Rz-DSh0_A5o.js +1 -0
  154. package/dist/packem_shared/posix-dirname-CSjB98Q5.js +1 -0
  155. package/dist/packem_shared/response-builder-tJ84C7n4.js +1 -0
  156. package/dist/packem_shared/rest-base-CzhSrUnH.js +1 -0
  157. package/dist/packem_shared/{restOpenApiSpec-Csv513qf.js → restOpenApiSpec-BNBrZFuE.js} +1 -1
  158. package/dist/packem_shared/s3-base-storage-DuHVKzSw.js +1 -0
  159. package/dist/packem_shared/{s3-base-storage.d-ks99NSs-.d.ts → s3-base-storage.d-BmuspwCF.d.ts} +1 -1
  160. package/dist/packem_shared/scaleway-Dms2IqTd.js +1 -0
  161. package/dist/packem_shared/{sharedErrorSchemaObject-YN65aAKj.js → sharedErrorSchemaObject-GTCM7U0s.js} +1 -1
  162. package/dist/packem_shared/{storage-DR7qdwBN.js → storage-uypoNkqu.js} +1 -1
  163. package/dist/packem_shared/{storage.d-DwdJrArF.d.ts → storage.d-C9EdfTf1.d.ts} +1 -1
  164. package/dist/packem_shared/storj-DzEePQoh.js +1 -0
  165. package/dist/packem_shared/sync-ClnPrYjk.js +1 -0
  166. package/dist/packem_shared/tencent-7P8z8AwE.js +1 -0
  167. package/dist/packem_shared/tigris-DlNWhmsM.js +1 -0
  168. package/dist/packem_shared/{transformOpenApiSpec-CIEAgpBD.js → transformOpenApiSpec-Bcnw9LVy.js} +1 -1
  169. package/dist/packem_shared/{tus-base.d-BKBoJVy0.d.ts → tus-base.d-Dgnbivbj.d.ts} +3 -8
  170. package/dist/packem_shared/{tusOpenApiSpec-D96B03t5.js → tusOpenApiSpec-BU8nhLH2.js} +1 -1
  171. package/dist/packem_shared/{types.d-BEUv414z.d.ts → types.d-D1TIRqKW.d.ts} +1 -1
  172. package/dist/packem_shared/{types.d-D7Zlz5RE.d.ts → types.d-D6Jkz0Sp.d.ts} +2 -2
  173. package/dist/packem_shared/{types.d-B1_xZIhu.d.ts → types.d-ZrDWKyVi.d.ts} +1 -2
  174. package/dist/packem_shared/update-size-Dxc1hvbI.js +1 -0
  175. package/dist/packem_shared/vultr-Crvmg314.js +1 -0
  176. package/dist/packem_shared/waitForStorage-afkqWeuz.js +1 -0
  177. package/dist/packem_shared/wasabi-CyCMxoUT.js +1 -0
  178. package/dist/packem_shared/{xhrOpenApiSpec-DQR4h6M8.js → xhrOpenApiSpec-xDSkxm2d.js} +1 -1
  179. package/dist/packem_shared/yandex-D1HwCz7g.js +1 -0
  180. package/dist/storage/aws/clients/index.js +1 -1
  181. package/dist/storage/aws/index.d.ts +3 -3
  182. package/dist/storage/aws/index.js +1 -1
  183. package/dist/storage/aws-light/index.d.ts +2 -2
  184. package/dist/storage/aws-light/index.js +1 -1
  185. package/dist/storage/azure/index.d.ts +2 -2
  186. package/dist/storage/azure/index.js +1 -1
  187. package/dist/storage/box/index.d.ts +3 -3
  188. package/dist/storage/box/index.js +1 -1
  189. package/dist/storage/bun-s3/index.d.ts +2 -2
  190. package/dist/storage/bun-s3/index.js +1 -1
  191. package/dist/storage/bunny/index.d.ts +3 -3
  192. package/dist/storage/bunny/index.js +1 -1
  193. package/dist/storage/cloudinary/index.d.ts +3 -3
  194. package/dist/storage/cloudinary/index.js +1 -1
  195. package/dist/storage/dropbox/index.d.ts +3 -3
  196. package/dist/storage/dropbox/index.js +1 -1
  197. package/dist/storage/firebase/index.d.ts +2 -2
  198. package/dist/storage/firebase/index.js +1 -1
  199. package/dist/storage/ftp/index.d.ts +3 -3
  200. package/dist/storage/ftp/index.js +1 -1
  201. package/dist/storage/gcs/index.d.ts +2 -2
  202. package/dist/storage/gcs/index.js +1 -1
  203. package/dist/storage/google-drive/index.d.ts +3 -3
  204. package/dist/storage/google-drive/index.js +1 -1
  205. package/dist/storage/local/index.d.ts +148 -4
  206. package/dist/storage/local/index.js +1 -1
  207. package/dist/storage/memory/index.d.ts +93 -3
  208. package/dist/storage/memory/index.js +1 -1
  209. package/dist/storage/netlify-blob/index.d.ts +3 -3
  210. package/dist/storage/netlify-blob/index.js +1 -1
  211. package/dist/storage/onedrive/index.d.ts +4 -4
  212. package/dist/storage/onedrive/index.js +1 -1
  213. package/dist/storage/pocketbase/index.d.ts +2 -2
  214. package/dist/storage/pocketbase/index.js +1 -1
  215. package/dist/storage/sftp/index.d.ts +3 -3
  216. package/dist/storage/sftp/index.js +1 -1
  217. package/dist/storage/sharepoint/index.d.ts +3 -3
  218. package/dist/storage/sharepoint/index.js +1 -1
  219. package/dist/storage/supabase/index.d.ts +3 -3
  220. package/dist/storage/supabase/index.js +1 -1
  221. package/dist/storage/uploadthing/index.d.ts +2 -2
  222. package/dist/storage/uploadthing/index.js +1 -1
  223. package/dist/storage/vercel-blob/index.d.ts +3 -3
  224. package/dist/storage/vercel-blob/index.js +1 -1
  225. package/dist/transformer/audio-transformer.d.ts +2 -2
  226. package/dist/transformer/audio-transformer.js +1 -1
  227. package/dist/transformer/image-transformer.d.ts +2 -2
  228. package/dist/transformer/image-transformer.js +1 -1
  229. package/dist/transformer/index.d.ts +3 -3
  230. package/dist/transformer/index.js +1 -1
  231. package/dist/transformer/video-transformer.d.ts +2 -2
  232. package/dist/transformer/video-transformer.js +1 -1
  233. package/package.json +19 -18
  234. package/dist/packem_shared/AbstractBaseStorage-CLsYmMZg.js +0 -1
  235. package/dist/packem_shared/AwsLightFile-CpZrubaV.js +0 -1
  236. package/dist/packem_shared/AwsLightMetaStorage-DPqJ9LTr.js +0 -1
  237. package/dist/packem_shared/AwsLightStorage-DGSPFUqr.js +0 -1
  238. package/dist/packem_shared/AzureFile-DFSaVe25.js +0 -1
  239. package/dist/packem_shared/AzureSMetaStorage-ByzM6Aix.js +0 -1
  240. package/dist/packem_shared/AzureStorage-DvKk_hhz.js +0 -1
  241. package/dist/packem_shared/BaseTransformer-Buw5lX_3.js +0 -1
  242. package/dist/packem_shared/BoxFile-CseIoPW1.js +0 -1
  243. package/dist/packem_shared/BoxMetaStorage-CJsyeQ63.js +0 -1
  244. package/dist/packem_shared/BoxStorage-CmM95wi2.js +0 -1
  245. package/dist/packem_shared/BunS3File-BcYmsz1n.js +0 -1
  246. package/dist/packem_shared/BunS3MetaStorage-CJsyeQ63.js +0 -1
  247. package/dist/packem_shared/BunnyFile-BgEOlcYI.js +0 -1
  248. package/dist/packem_shared/BunnyMetaStorage-CJsyeQ63.js +0 -1
  249. package/dist/packem_shared/BunnyStorage-eZ1QDVaY.js +0 -1
  250. package/dist/packem_shared/CloudinaryFile-Bo5B-vM1.js +0 -1
  251. package/dist/packem_shared/CloudinaryMetaStorage-Bv_YCZ0Q.js +0 -1
  252. package/dist/packem_shared/CloudinaryStorage-CpH2f0Fv.js +0 -1
  253. package/dist/packem_shared/DiskStorage-DzjjqCzo.js +0 -1
  254. package/dist/packem_shared/DiskStorageWithChecksum-MZkDEyts.js +0 -1
  255. package/dist/packem_shared/DropboxFile-BFb7eOzy.js +0 -1
  256. package/dist/packem_shared/DropboxMetaStorage-CJsyeQ63.js +0 -1
  257. package/dist/packem_shared/DropboxStorage-BB9NoWK2.js +0 -1
  258. package/dist/packem_shared/File-W8aOo15X.js +0 -1
  259. package/dist/packem_shared/Files-DyMJ9FPN.js +0 -1
  260. package/dist/packem_shared/FirebaseFile-BLaBxa2A.js +0 -1
  261. package/dist/packem_shared/FirebaseMetaStorage-Bv_YCZ0Q.js +0 -1
  262. package/dist/packem_shared/FirebaseStorage-BgbxzYNC.js +0 -2
  263. package/dist/packem_shared/FtpFile-ClWDYnt2.js +0 -1
  264. package/dist/packem_shared/FtpMetaStorage-CJsyeQ63.js +0 -1
  265. package/dist/packem_shared/FtpStorage-CNqXDz7P.js +0 -1
  266. package/dist/packem_shared/GCSFile-Cero7qZN.js +0 -1
  267. package/dist/packem_shared/GCSMetaStorage-Cm_XzR0C.js +0 -1
  268. package/dist/packem_shared/GCStorage-DcvsI7eu.js +0 -1
  269. package/dist/packem_shared/GoogleDriveFile-DHpLhzg9.js +0 -1
  270. package/dist/packem_shared/GoogleDriveMetaStorage-B0gLF7Io.js +0 -1
  271. package/dist/packem_shared/LocalMetaStorage-CcGfFG39.js +0 -1
  272. package/dist/packem_shared/MediaTransformer-D2kUsklW.js +0 -1
  273. package/dist/packem_shared/MemoryMetaStorage-Ksgh9pe7.js +0 -1
  274. package/dist/packem_shared/Metadata-B7CcBueg.js +0 -1
  275. package/dist/packem_shared/Multipart-C35TR2qL.js +0 -1
  276. package/dist/packem_shared/NetlifyBlobFile-DoFhkzaH.js +0 -1
  277. package/dist/packem_shared/NetlifyBlobMetaStorage-Bv_YCZ0Q.js +0 -1
  278. package/dist/packem_shared/NetlifyBlobStorage-CZsr_0DF.js +0 -1
  279. package/dist/packem_shared/NoOpMetrics-BLo6u4NY.js +0 -1
  280. package/dist/packem_shared/OneDriveFile-CNNJYI43.js +0 -1
  281. package/dist/packem_shared/OneDriveMetaStorage-B0gLF7Io.js +0 -1
  282. package/dist/packem_shared/OneDriveStorage-B8qFgMq1.js +0 -1
  283. package/dist/packem_shared/OpenTelemetryMetrics-DJDQsNKp.js +0 -1
  284. package/dist/packem_shared/PocketBaseFile-DpJpxl3e.js +0 -1
  285. package/dist/packem_shared/PocketBaseMetaStorage-Cm3v8g1-.js +0 -1
  286. package/dist/packem_shared/PocketBaseStorage-D2vMN-oY.js +0 -1
  287. package/dist/packem_shared/Rest-BrEMYgxZ.js +0 -1
  288. package/dist/packem_shared/Rest-aPVP2ww1.js +0 -1
  289. package/dist/packem_shared/S3File-CpZrubaV.js +0 -1
  290. package/dist/packem_shared/S3MetaStorage-CMonflzp.js +0 -1
  291. package/dist/packem_shared/S3Storage-CTe_BMDl.js +0 -1
  292. package/dist/packem_shared/SftpFile-ClWDYnt2.js +0 -1
  293. package/dist/packem_shared/SftpMetaStorage-CJsyeQ63.js +0 -1
  294. package/dist/packem_shared/SftpStorage-BKeAzuej.js +0 -1
  295. package/dist/packem_shared/SharePointFile-Blz9FS4h.js +0 -1
  296. package/dist/packem_shared/SharePointMetaStorage-CJsyeQ63.js +0 -1
  297. package/dist/packem_shared/SupabaseFile-Bo5B-vM1.js +0 -1
  298. package/dist/packem_shared/SupabaseMetaStorage-B0gLF7Io.js +0 -1
  299. package/dist/packem_shared/SupabaseStorage-CmGQjqXf.js +0 -1
  300. package/dist/packem_shared/TUS_RESUMABLE-CyTSRvPU.js +0 -1
  301. package/dist/packem_shared/Tus-D9c7KDnl.js +0 -1
  302. package/dist/packem_shared/UploadThingFile-BTFMpcIA.js +0 -1
  303. package/dist/packem_shared/UploadThingMetaStorage-Bv_YCZ0Q.js +0 -1
  304. package/dist/packem_shared/UploadThingStorage-DZ4zNvDH.js +0 -1
  305. package/dist/packem_shared/ValidationError-3B06DFyE.js +0 -1
  306. package/dist/packem_shared/VercelBlobFile-CVQwKlZk.js +0 -1
  307. package/dist/packem_shared/VercelBlobMetaStorage-CJsyeQ63.js +0 -1
  308. package/dist/packem_shared/VercelBlobStorage-DDNEofR3.js +0 -1
  309. package/dist/packem_shared/_commonjsHelpers-CWAkuNXM.js +0 -1
  310. package/dist/packem_shared/agentsCopyFile-Dl5iffdH.js +0 -1
  311. package/dist/packem_shared/akamai-DthkaFul.js +0 -1
  312. package/dist/packem_shared/alibaba-BEi25O1g.js +0 -1
  313. package/dist/packem_shared/approval-fVHwBp7u.js +0 -1
  314. package/dist/packem_shared/aws-light-meta-storage-DGrn72VJ.js +0 -4
  315. package/dist/packem_shared/azure-meta-storage-ClbEsfI4.js +0 -1
  316. package/dist/packem_shared/backblaze-m1N5NZ9q.js +0 -1
  317. package/dist/packem_shared/base-handler-core-BJP9jHCE.js +0 -1
  318. package/dist/packem_shared/base-handler-fetch-yrYrukwL.js +0 -1
  319. package/dist/packem_shared/base-handler-node-C8P9rkaH.js +0 -1
  320. package/dist/packem_shared/claudeCopyFile-BX9O4ORk.js +0 -1
  321. package/dist/packem_shared/cloudflare-CdUTErlo.js +0 -1
  322. package/dist/packem_shared/copyFile-49FtxXcm.js +0 -1
  323. package/dist/packem_shared/copyFile-BUPezT_c.js +0 -1
  324. package/dist/packem_shared/createResponsesFileTools-6Tvt2PNr.js +0 -1
  325. package/dist/packem_shared/createRetryWrapper-DgmeHPNF.js +0 -1
  326. package/dist/packem_shared/detect-file-type-BA7UBLKA.js +0 -1
  327. package/dist/packem_shared/digitalOcean-B2uB6pgz.js +0 -1
  328. package/dist/packem_shared/disk-storage-DqnnFQAQ.js +0 -1
  329. package/dist/packem_shared/disk-storage-with-checksum.d-Dgwyza8a.d.ts +0 -146
  330. package/dist/packem_shared/exoscale-BDa1Gjth.js +0 -1
  331. package/dist/packem_shared/gcs-meta-storage-Bu2upyHK.js +0 -1
  332. package/dist/packem_shared/getFormatFromContentType-DCTTPQHm.js +0 -1
  333. package/dist/packem_shared/has-content-50BsqrWw.js +0 -1
  334. package/dist/packem_shared/headers-BAiAKekR.js +0 -26
  335. package/dist/packem_shared/hetzner-BGGFiRGD.js +0 -1
  336. package/dist/packem_shared/idriveE2-C6pQ5pQ0.js +0 -1
  337. package/dist/packem_shared/index-nZWCQrSe.js +0 -5
  338. package/dist/packem_shared/internal-D_cZIFwI.js +0 -1
  339. package/dist/packem_shared/is-expired-CBEk6XBi.js +0 -1
  340. package/dist/packem_shared/local-meta-storage-BELb1YwO.js +0 -11
  341. package/dist/packem_shared/memory-storage.d-BNZvDG1b.d.ts +0 -93
  342. package/dist/packem_shared/minio-NKquuBfS.js +0 -1
  343. package/dist/packem_shared/multipart-base-BOzY19lb.js +0 -1
  344. package/dist/packem_shared/oauth-refresh-EdGzlcOZ.js +0 -1
  345. package/dist/packem_shared/part-match-D-9dGX42.js +0 -1
  346. package/dist/packem_shared/path-C-OWflAo-_mqb5p5d.js +0 -1
  347. package/dist/packem_shared/posix-dirname-CfpH5wZi.js +0 -1
  348. package/dist/packem_shared/response-builder-CbSA8qPa.js +0 -1
  349. package/dist/packem_shared/rest-base-BQ_dhWyV.js +0 -1
  350. package/dist/packem_shared/s3-base-storage-CX94H-Za.js +0 -1
  351. package/dist/packem_shared/scaleway-U1In3v70.js +0 -1
  352. package/dist/packem_shared/storj-Cb59q9kF.js +0 -1
  353. package/dist/packem_shared/sync-DhR3536K.js +0 -1
  354. package/dist/packem_shared/tencent-Q1y2GENc.js +0 -1
  355. package/dist/packem_shared/tigris-BELKoyyp.js +0 -1
  356. package/dist/packem_shared/update-size-DuNuLyxj.js +0 -1
  357. package/dist/packem_shared/vultr-B491cQ4e.js +0 -1
  358. package/dist/packem_shared/waitForStorage-ByQmG4xF.js +0 -1
  359. package/dist/packem_shared/wasabi-DFrwIoab.js +0 -1
  360. package/dist/packem_shared/yandex-CwzHuEKP.js +0 -1
@@ -1 +0,0 @@
1
- import{n as d}from"./headers-BAiAKekR.js";import{hasBody as _}from"type-is";import{b as h}from"./base-handler-core-BJP9jHCE.js";import{ERRORS as E}from"./ERRORS-BIBxE2oR.js";import{b as g,a as C,c as S,d as X}from"./response-builder-CbSA8qPa.js";const M=(a,t={})=>{const e=h(a,"x-file-metadata",!0);if(!e)return t;try{return{...t,...JSON.parse(e)}}catch{return t}},v=a=>{if(!a)return;const t=2e3,e=a.length>t?a.slice(0,Math.max(0,t)):a,r=e.toLowerCase().indexOf("filename");if(r===-1)return;let s=r+8;for(;s<e.length&&(e[s]==="*"||e[s]===" "||e[s]===" ");)s++;if(s>=e.length||e[s]!=="=")return;for(s++;s<e.length&&(e[s]===" "||e[s]===" ");)s++;if(s>=e.length)return;let n=s,i;const o=e[s];return o==='"'||o==="'"?(n=s+1,i=e.indexOf(o,n),i===-1&&(i=e.indexOf(";",n),i===-1&&(i=e.length))):(i=e.indexOf(";",n),i===-1&&(i=e.length)),n>=i?void 0:e.substring(n,i).trim()||void 0},A=a=>{const t=h(a,"content-disposition",!0);return v(t)},L=a=>{const t=h(a,"x-chunked-upload",!0)==="true",e=h(a,"x-chunk-offset",!0),r=h(a,"x-total-size",!0),s={isChunkedUpload:t};if(e){const n=Number.parseInt(e,10);!Number.isNaN(n)&&n>=0&&(s.chunkOffset=n)}if(r){const n=Number.parseInt(r,10);!Number.isNaN(n)&&n>0&&(s.totalSize=n)}return s},P=(a,t=!1)=>{const e=h(a,"x-chunked-upload",!0)==="true";if(!(t&&e)){if(!_(a))throw d(400,"Request body is required");if(Number.parseInt(h(a,"content-length")||"0",10)===0&&!e)throw d(400,"Content-Length is required and must be greater than 0")}},B=(a,t=!1,e)=>{const r=h(a,"x-chunked-upload",!0)==="true",s=Number.parseInt(h(a,"content-length")||"0",10);if(!t&&!r&&s===0)throw d(400,"Content-Length is required and must be greater than 0");if(e!==void 0&&s>e)throw d(413,`File size exceeds maximum allowed size of ${e} bytes`);return s},W=(a,t,e="application/octet-stream")=>{const r=A(a),s=M(a),{isChunkedUpload:n,totalSize:i}=L(a),o=n&&i?i:t;return n&&i&&(s._chunkedUpload=!0,s._chunks=[],s._totalSize=i),{contentType:e,metadata:s,originalName:r,size:o}},x=(a,t)=>{if(a.length===0)return!1;const e=[...a].toSorted((n,i)=>n.offset-i.offset),r=e[0];if(r?.offset!==0)return!1;let s=r.length;for(let n=1;n<e.length;n+=1){const i=e[n];if(i){if(i.offset>s)return!1;s=Math.max(s,i.offset+i.length)}}return s>=t},T=(a,t,e,r)=>{if(Number.isNaN(a)||a<0)throw new Error("Chunk offset must be a valid non-negative number");if(t<=0)throw new Error("Chunk length must be greater than 0");if(t>r)throw new Error(`Chunk size exceeds maximum allowed size of ${r} bytes`);if(a+t>e)throw new Error(`Chunk exceeds file size. Offset: ${a}, Size: ${t}, Total: ${e}`)},D=(a,t)=>{const e=a.find(r=>r.offset===t.offset&&r.length===t.length);return e?t.checksum&&e.checksum!==t.checksum?a.map(r=>r.offset===t.offset?{...r,checksum:t.checksum}:r):a:[...a,t]},U=a=>(a.metadata||{})._chunkedUpload===!0,y=a=>{const t=a.metadata||{};if(t._chunkedUpload===!0&&typeof t._totalSize=="number")return t._totalSize};class j{async deleteSingle(t){const e=await this.storage.delete({id:t});if(e.status===void 0)throw d(404,"File not found");return{...e,headers:{},statusCode:204}}async handlePost(t,e,r,s,n){if(e&&t.size!==void 0){const l=typeof t.size=="number"?t.size:Number.parseInt(String(t.size),10);if(l>0&&l>this.storage.maxUploadSize)throw d(413,`File size exceeds maximum allowed size of ${this.storage.maxUploadSize} bytes`)}const i=await this.storage.create(t);if(e){const l=this.buildFileUrl(r,i);return g(i,{...C(i,l),"X-Chunked-Upload":"true","X-Upload-ID":i.id},201)}const o=await this.storage.write({body:s,contentLength:n,id:i.id,start:0}),c=this.buildFileUrl(r,o);return g(o,C(o,c),201)}async handlePut(t,e,r,s,n,i){let o,c=!1;try{await this.storage.getMeta(t),c=!0,i&&await this.storage.update({id:t},{metadata:i}),o=await this.storage.write({body:s,contentLength:n,id:t,start:0})}catch(f){const k=f;if(k.UploadErrorCode===E.FILE_NOT_FOUND||k.code==="ENOENT")try{const p=await this.storage.create(e);o=await this.storage.write({body:s,contentLength:n,id:p.id,start:0})}catch(p){throw p}else throw f}const l=this.buildFileUrl(r,o);return g(o,C(o,l),c?200:201)}async handlePatch(t,e,r,s,n,i){let o=await this.storage.getMeta(t);const c=o.metadata||{},l=U(o);if(l){const u=y(o);u&&o.size!==u&&(o={...o,size:u})}const f=typeof c._totalSize=="number"?c._totalSize:o.size||0;if(!l)throw d(400,"File is not a chunked upload. Use POST or PUT for full file uploads.");const k=100*1024*1024;try{T(e,r,f,k)}catch(u){throw u instanceof Error&&u.message.includes("exceeds maximum")?d(413,u.message):d(400,u instanceof Error?u.message:String(u))}if(o.status==="completed"){const u=this.buildFileUrl(n,o);return g(o,{...C(o,u),"X-Upload-Complete":"true"},200)}const p=await this.storage.withLock(`chunks:${t}`,async()=>{const u=(await this.storage.getMeta(t)).metadata??{},O=Array.isArray(u._chunks)?u._chunks:[],z=D(O,{checksum:s,length:r,offset:e});return await this.storage.update({id:t},{metadata:{...u,_chunks:z}}),z});let m=await this.storage.write({body:i,contentLength:r,id:t,start:e}),w=m.bytesWritten>=f;l&&(w=x(p,f),m.status==="completed"&&!w&&(await this.storage.update({id:t},{status:"part"}),m={...m,status:"part"}));const b=w&&m.bytesWritten!==f?{...m,bytesWritten:f}:m,N=this.buildFileUrl(n,b),F={...C(b,N),...S(b,w),"x-upload-offset":String(b.bytesWritten||0)};return g(b,F,w?200:202)}async handleHead(t){let e=await this.storage.getMeta(t);const r=U(e);if(r){const n=y(e);n&&e.size!==n&&(e={...e,size:n})}const s={...X(e)};if(r){const n=e.metadata||{},i=y(e)||e.size||0,o=Array.isArray(n._chunks)?n._chunks:[],c=x(o,i);Object.assign(s,S(e,c))}return g(e,s,200)}handleOptions(t,e){return{headers:{"Access-Control-Allow-Headers":"Authorization, Content-Type, Content-Length, Content-Disposition, X-File-Metadata, X-Chunked-Upload, X-Total-Size, X-Chunk-Offset, X-Chunk-Checksum","Access-Control-Allow-Methods":t.map(r=>r.toUpperCase()).join(", "),"Access-Control-Max-Age":86400,"X-Max-Upload-Size":String(e)},statusCode:204}}async deleteBatch(t){const e=await this.storage.deleteBatch(t);if(e.successfulCount===0&&e.failedCount>0){const r=e.failed.map(s=>s.id).join(", ");throw d(404,`Failed to delete files: ${r}`)}return{data:e.successful,headers:e.failedCount>0?{"X-Delete-Errors":JSON.stringify(e.failed),"X-Delete-Failed":String(e.failedCount),"X-Delete-Successful":String(e.successfulCount)}:{"X-Delete-Successful":String(e.successfulCount)},statusCode:e.successfulCount===t.length?204:207}}get storage(){throw new Error("storage must be implemented")}buildFileUrl(t,e){throw new Error("buildFileUrl must be implemented")}}export{j as X,B as a,A as b,L as c,W as e,v as p,P as v};
@@ -1 +0,0 @@
1
- import{Readable as w}from"node:stream";import{J as M,B as U,O as C,c as O}from"./storage-DR7qdwBN.js";import{d as T}from"./detect-file-type-BA7UBLKA.js";import{throwErrorCode as m,ERRORS as y}from"./ERRORS-BIBxE2oR.js";import{createRetryWrapper as A}from"./createRetryWrapper-DgmeHPNF.js";import{y as k}from"./local-meta-storage-BELb1YwO.js";import{t as x}from"./update-size-DuNuLyxj.js";import{i as I}from"./part-match-D-9dGX42.js";import{e as R}from"./has-content-50BsqrWw.js";import{t as S}from"./get-file-status-y3wTtDQs.js";const z=(u,t)=>{const i={};return Object.keys(u).forEach(e=>{i[e]=t(u[e])}),i},v=u=>u===Number(u)?u:(M(u)??0)/1e3,B=5*1024*1024,L=16*1024*1024,N=u=>{if(u)return`bytes=${Math.max(0,u.start)}-${u.end===void 0?"":u.end}`};class b extends U{checksumTypes=["md5","crc32","crc32c","sha1","sha256"];supportsRange=!0;supportsDelimiter=!0;bucket;meta;MAX_PARTS=1e4;partSize;retry;resolvedRetryConfig;constructor(t){if(super(t),this.bucket=t.bucket,this.partSize=typeof t.partSize=="string"?C(t.partSize):t.partSize||L,this.partSize<B)throw new Error("Minimum allowed partSize value is 5MB");const i={backoffMultiplier:2,initialDelay:1e3,maxDelay:3e4,maxRetries:3,retryableStatusCodes:[408,429,500,502,503,504],shouldRetry:a=>{const s=a;return s.statusCode&&[408,429,500,502,503,504].includes(s.statusCode)||s.retryable===!0?!0:void 0},...t.retryConfig};this.retry=A(i),this.resolvedRetryConfig=i;const{metaStorage:e,metaStorageConfig:r}=t;if(e)this.meta=e;else{const a={...t,...r,logger:this.logger};"directory"in a?(this.logger?.debug("Using local meta storage"),this.meta=new k(a)):this.meta=new k(a)}this.isReady=!1,this.accessCheck().then(()=>{this.isReady=!0}).catch(a=>{this.logger?.error("Storage access check failed: %O",a)})}getRetryConfig(){return this.resolvedRetryConfig}async create(t,i){return this.instrumentOperation("create",async()=>{const e={...t};if(t.ttl){const n=typeof t.ttl=="string"?O(t.ttl):t.ttl;n!==void 0&&(e.expiredAt=Date.now()+n)}const r=new(this.getFileClass())(e);r.name=this.namingFunction(r),await this.validate(r);try{const n=await this.getMeta(r.id);if(n.bytesWritten>=0)return n}catch{}const a=this.getS3Api();let s;try{s=await this.runOperation(i,n=>a.createMultipartUpload({ACL:this.getAcl(),Bucket:this.bucket,ContentType:r.contentType,Key:r.name,Metadata:z({originalName:r.originalName,...r.metadata},o=>encodeURI(String(o)))},{signal:n}))}catch{return m(y.FILE_ERROR,"s3 create upload error")}const{UploadId:c}=s||{};return c?(r.UploadId=c,r.bytesWritten=0,this.config.clientDirectUpload&&(r.partSize??=this.partSize),await this.saveMeta(r),r.status="created",await this.onCreate(r),this.config.clientDirectUpload?this.buildPresigned(r):r):m(y.FILE_ERROR,"s3 create upload error")})}async write(t,i){return this.instrumentOperation("write",async()=>{let e;if("contentType"in t&&"metadata"in t&&!("body"in t)&&!("start"in t)?e=t:(e=await this.getMeta(t.id),await this.checkIfExpired(e)),e.status==="completed")return e;if(typeof t.size=="number"&&t.size>0&&x(e,t.size),!I(t,e))return m(y.FILE_CONFLICT);if(this.config.clientDirectUpload)return this.buildPresigned(e);e.Parts??=await this.getParts(e),e.bytesWritten=e.Parts.map(a=>a.Size||0).reduce((a,s)=>a+s,0);const r=await this.lock(t.id);try{if(R(t)){if(this.isUnsupportedChecksum(t.checksumAlgorithm))return m(y.UNSUPPORTED_CHECKSUM_ALGORITHM);if(e.Parts.length===0&&(!e.contentType||e.contentType==="application/octet-stream"))try{const d=t.body instanceof w?t.body:w.fromWeb(t.body),{fileType:g,stream:f}=await T(d);g?.mime&&(e.contentType=g.mime),t.body=f}catch{}if(e.Parts.length>this.MAX_PARTS)throw new Error(`Exceeded ${this.MAX_PARTS} as part of the upload to ${this.bucket}.`);const a=e.Parts.length+1,s=this.getS3Api(),c=e.UploadId;if(!c)throw new Error("UploadId is required");const n=t.body,o=n instanceof Uint8Array,{ETag:l}=await this.runOperation(i,d=>s.uploadPart({Body:n,Bucket:this.bucket,ContentLength:t.contentLength||0,Key:e.name,PartNumber:a,UploadId:c,...t.checksumAlgorithm==="md5"?{ContentMD5:t.checksum}:{}},{signal:d}),{replayable:o}),p={ETag:l,PartNumber:a,Size:t.contentLength};e.Parts=[...e.Parts,p],e.bytesWritten+=t.contentLength||0}if(this.cache.set(e.id,e),e.status=S(e),e.status==="completed"){const[a]=await this.internalOnComplete(e);delete e.Parts,e.uri=a.Location,e.ETag=a.ETag}}finally{await this.unlock(t.id,r)}return e})}async delete({id:t},i){return this.instrumentOperation("delete",async()=>{const e=await this.getMeta(t);e.status="deleted",await this.abortMultipartUpload(e,i),await this.deleteMeta(e.id);const r={...e};return await this.onDelete(r),r})}async copy(t,i,e){return this.instrumentOperation("copy",async()=>{b.assertSafeId(t),b.assertSafeId(i);const r=await this.getMeta(t),a=`${this.bucket}/${t}`,s=this.bucket,c=i,n=this.getS3Api();return await this.runOperation(e,o=>n.copyObject({Bucket:s,CopySource:a,Key:c,...e?.storageClass&&{StorageClass:e.storageClass}},{signal:o})),{...r,id:c,name:c}})}async move(t,i,e){return this.instrumentOperation("move",async()=>{await this.copy(t,i,e);const r=this.getS3Api();return await this.runOperation(e,a=>r.deleteObject({Bucket:this.bucket,Key:t},{signal:a})),await this.getMeta(i)})}async list(t=1e3,i){return this.instrumentOperation("list",async()=>{const e=this.getS3Api(),r=Math.min(t,1e3);let a={Bucket:this.bucket,MaxKeys:r};const s=[];let c=!0;for(;c&&s.length<t;)try{const n=await this.runOperation(i,o=>e.listObjectsV2(a,{signal:o}));for(const{Key:o,LastModified:l}of n?.Contents||[]){if(s.length>=t)break;o!==void 0&&s.push({id:o,...l&&{createdAt:l}})}c=n.IsTruncated||!1,c&&n.NextContinuationToken&&s.length<t&&(a={...a,ContinuationToken:n.NextContinuationToken,MaxKeys:Math.min(r,t-s.length)})}catch(n){const o=this.normalizeError(n instanceof Error?n:new Error(String(n)));throw await this.onError(o),n}return s},{limit:t})}async listDirectory(t){return this.instrumentOperation("listDirectory",async()=>{const i=this.getS3Api(),e=t?.limit??1e3,r=Math.min(e,1e3);let a={Bucket:this.bucket,Delimiter:t?.delimiter,MaxKeys:r,...t?.prefix!==void 0&&{Prefix:t.prefix}};const s=[],c=new Set;let n=!0;for(;n&&s.length<e;)try{const o=await this.runOperation(t,l=>i.listObjectsV2(a,{signal:l}));for(const{Prefix:l}of o?.CommonPrefixes||[])l!==void 0&&c.add(l);for(const{Key:l,LastModified:p}of o?.Contents||[]){if(s.length>=e)break;l!==void 0&&s.push({id:l,...p&&{createdAt:p}})}n=o.IsTruncated||!1,n&&o.NextContinuationToken&&s.length<e&&(a={...a,ContinuationToken:o.NextContinuationToken,MaxKeys:Math.min(r,e-s.length)})}catch(o){const l=this.normalizeError(o instanceof Error?o:new Error(String(o)));throw await this.onError(l),o}return{files:s,prefixes:[...c]}},{limit:t?.limit??1e3})}async exists({id:t},i){return this.instrumentOperation("exists",async()=>{try{await this.getMeta(t);const e=this.getS3Api();return await this.runOperation(i,r=>e.headObject({Bucket:this.bucket,Key:t},{signal:r})),!0}catch{return!1}})}async get({id:t},i){return this.instrumentOperation("get",async()=>{const e=this.getS3Api(),r=N(i?.range),{Body:a,ContentLength:s,ContentType:c,ETag:n,Expires:o,LastModified:l,Metadata:p}=await this.runOperation(i,h=>e.getObject({Bucket:this.bucket,Key:t,...r!==void 0&&{Range:r}},{signal:h}));await this.checkIfExpired({expiredAt:o});const d=[];if(a)if(a instanceof w)for await(const h of a)d.push(h instanceof Uint8Array?h:new Uint8Array(h));else{const h=a.getReader();try{for(;;){const{done:P,value:E}=await h.read();if(P)break;d.push(E)}}finally{h.releaseLock()}}const{originalName:g,...f}=p||{};return{content:Buffer.concat(d),contentType:c,ETag:n,expiredAt:o,id:t,metadata:f,modifiedAt:l,name:t,originalName:g||t,size:Number(s)}})}async buildPresigned(t){const i=t;if(i.Parts?.length||(i.Parts=await this.getParts(t)),i.bytesWritten=i.Parts.map(e=>e.Size||0).reduce((e,r)=>e+r,0),t.status=S(i),i.partsUrls?.length||(i.partsUrls=await this.getPartsPresignedUrls(t)),t.status==="completed"){const[e]=await this.internalOnComplete(t);return delete i.Parts,i.uri=e.Location,t}return t}async getPartsPresignedUrls(t){t.partSize??=this.partSize;const i=t.UploadId;if(!i)throw new Error("UploadId is required for getting presigned URLs");const e=Math.trunc(t.size/this.partSize)+1,r=[],a=Math.trunc(v(this.config.expiration?.maxAge||"6hrs")),s=this.getS3Api();for(let c=0;c<e;c++)r.push(s.getPresignedUrl({Bucket:this.bucket,expiresIn:a,Key:t.name,PartNumber:c+1,UploadId:i}));return Promise.all(r)}async getParts(t){const i=this.getS3Api(),e=t.UploadId;if(!e)throw new Error("UploadId is required");const{Parts:r=[]}=await this.runOperation(void 0,a=>i.listParts({Bucket:this.bucket,Key:t.name,UploadId:e},{signal:a}));return r}completeMultipartUpload(t){const i=this.getS3Api(),e=t.UploadId;if(!e)throw new Error("UploadId is required");const r=t.Parts?.map(({ETag:a,PartNumber:s})=>{if(!a||!s)throw new Error("ETag and PartNumber are required");return{ETag:a,PartNumber:s}})||[];return this.runOperation(void 0,a=>i.completeMultipartUpload({Bucket:this.bucket,Key:t.name,Parts:r,UploadId:e},{signal:a}))}async abortMultipartUpload(t,i){if(t.status!=="completed")try{const e=this.getS3Api(),r=t.UploadId;if(!r)return;await this.runOperation(i,a=>e.abortMultipartUpload({Bucket:this.bucket,Key:t.name,UploadId:r},{signal:a}))}catch(e){this.logger?.error("abortMultipartUploadError: ",e);const r=this.normalizeError(e instanceof Error?e:new Error(String(e)));await this.onError(r)}}internalOnComplete=async t=>{const[i]=await Promise.all([this.completeMultipartUpload(t),this.deleteMeta(t.id)]);return[i,t]}}export{b as S,N as b};
@@ -1 +0,0 @@
1
- const n=new Set(["fr-par","nl-ams","pl-waw"]),E=s=>{const r=s?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.SCALEWAY_ACCESS_KEY_ID??process.env.SCALEWAY_ACCESS_KEY,o=s?.endpoint??process.env.SCALEWAY_ENDPOINT,e=s?.region??process.env.SCALEWAY_REGION,c=s?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.SCALEWAY_SECRET_ACCESS_KEY??process.env.SCALEWAY_SECRET_KEY;if(!e||!r||!c)throw new Error("Missing required parameters for Scaleway Object Storage client.");if(!n.has(e))throw new Error(`Invalid Scaleway region "${e}". Expected one of: ${[...n].join(", ")}.`);return{credentials:{accessKeyId:r,secretAccessKey:c},endpoint:o??`https://s3.${e}.scw.cloud`,forcePathStyle:!1,region:e}};export{E as default};
@@ -1 +0,0 @@
1
- const o=e=>{const s=e?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.STORJ_ACCESS_KEY_ID??process.env.STORJ_ACCESS_KEY,c=e?.endpoint??process.env.STORJ_ENDPOINT,r=e?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.STORJ_SECRET_ACCESS_KEY??process.env.STORJ_SECRET_KEY;if(!s||!r)throw new Error("Missing required parameters for Storj client.");return{credentials:{accessKeyId:s,secretAccessKey:r},endpoint:c??"https://gateway.storjshare.io",forcePathStyle:!1,region:"global"}};export{o as default};
@@ -1 +0,0 @@
1
- import{r as B,D as U,t as R,o as D}from"./internal-D_cZIFwI.js";const N=async(x,h,K={})=>{const{concurrency:M=U,limit:T,onProgress:g,overwrite:C=!1,prefix:k,signal:f,stopOnError:o=!1,transformKey:A}=K,y=[],c=[],u=[];let p=!1,i=0;const w=e=>{if(g)try{g(e)}catch{}},m=x.listAll({...k!==void 0&&{prefix:k},...T!==void 0&&{limit:T}}),v=async e=>{if(p||f?.aborted)return;const F=A?A(e):e;try{if(!C&&await h.exists(F,{signal:f})){c.push(e),i+=1,w({done:i,key:e,status:"skipped"});return}const d=await x.download(e,{signal:f});await h.upload(F,d.body,{...d.contentType&&{contentType:d.contentType},...d.metadata&&{metadata:d.metadata},signal:f}),y.push(e),i+=1,w({done:i,key:e,status:"transferred"})}catch(d){const E=R(e,d);if(u.push(E),i+=1,w({done:i,error:E.error,key:e,status:"errored"}),o)throw p=!0,E.error}};if(o){try{for await(const e of m){if(p||f?.aborted)break;try{await v(e.key)}catch{break}}}finally{await m.return?.()}return u.length>0?{errors:u,skipped:c,transferred:y}:{skipped:c,transferred:y}}const s=Math.max(1,M),b=async()=>{for(;!p&&!f?.aborted;){const e=await m.next();if(e.done)return;await v(e.value.key)}};try{await Promise.all(Array.from({length:s},()=>b()))}finally{await m.return?.()}return u.length>0?{errors:u,skipped:c,transferred:y}:{skipped:c,transferred:y}},_=async(x,h,K={})=>{const{concurrency:M=U,dryRun:T=!1,limit:g,onProgress:C,prefix:k,prune:f=!1,signal:o,stopOnError:A=!1,transformKey:y}=K,c=[],u=[],p=[],i=[],w=[],m=new Set;let v=!1,s=0;const b=a=>{if(C)try{C(a)}catch{}},e=x.listAll({...k!==void 0&&{prefix:k},...g!==void 0&&{limit:g}}),F=async a=>{if(v||o?.aborted)return;const r=a.key,O=y?y(r):r;m.add(O);try{let t;try{t=await h.head(O,{signal:o})}catch{t=void 0}if(t){let n=a;if(a.size===void 0&&a.etag===void 0)try{n=await x.head(r,{signal:o})}catch{}if(D(n,t)){p.push(r),s+=1,b({done:s,key:r,status:"unchanged"});return}}const l=t!==void 0;if(!T){const n=await x.download(r,{signal:o});await h.upload(O,n.body,{...n.contentType&&{contentType:n.contentType},...n.metadata&&{metadata:n.metadata},signal:o})}l?u.push(r):c.push(r),s+=1,b({done:s,key:r,status:l?"updated":"uploaded"})}catch(t){const l=R(r,t);if(w.push(l),s+=1,b({done:s,error:l.error,key:r,status:"errored"}),A)throw v=!0,l.error}},d=Math.max(1,M),E=async()=>{for(;!v&&!o?.aborted;){const a=await e.next();if(a.done)return;await F(a.value)}};try{await Promise.all(Array.from({length:d},()=>E()))}finally{await e.return?.()}if(f&&!v&&!o?.aborted){const a=[],r=h.listAll({...k!==void 0&&{prefix:k},...g!==void 0&&{limit:g}});try{for await(const t of r)m.has(t.key)||a.push(t.key)}finally{await r.return?.()}const O=await B(a,async t=>(T||await h.delete(t,{signal:o}),t),{concurrency:d,signal:o,stopOnError:A});for(const[t,l]of O.entries()){const n=a[t];if(l)if(l.status==="fulfilled")i.push(n),s+=1,b({done:s,key:n,status:"deleted"});else{const S=R(n,l.reason);w.push(S),s+=1,b({done:s,error:S.error,key:n,status:"errored"})}}}return w.length>0?{deleted:i,errors:w,unchanged:p,updated:u,uploaded:c}:{deleted:i,unchanged:p,updated:u,uploaded:c}};export{_ as sync,N as transfer};
@@ -1 +0,0 @@
1
- const o=e=>{const c=e?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.TENCENT_SECRET_ID,n=e?.endpoint??process.env.TENCENT_ENDPOINT,s=e?.region??process.env.TENCENT_REGION,r=e?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.TENCENT_SECRET_KEY;if(!s||!c||!r)throw new Error("Missing required parameters for Tencent Cloud COS client.");return{credentials:{accessKeyId:c,secretAccessKey:r},endpoint:n??`https://cos.${s}.myqcloud.com`,forcePathStyle:!1,region:s}};export{o as default};
@@ -1 +0,0 @@
1
- const t=e=>{const s=e?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.TIGRIS_ACCESS_KEY_ID??process.env.TIGRIS_ACCESS_KEY,c=e?.endpoint??process.env.TIGRIS_ENDPOINT,r=e?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.TIGRIS_SECRET_ACCESS_KEY??process.env.TIGRIS_SECRET_KEY;if(!s||!r)throw new Error("Missing required parameters for Tigris client.");return{credentials:{accessKeyId:s,secretAccessKey:r},endpoint:c??"https://t3.storage.dev",forcePathStyle:!1,region:"auto"}};export{t as default};
@@ -1 +0,0 @@
1
- const i=(s,t)=>(t<s.size&&(s.size=t),s);export{i as t};
@@ -1 +0,0 @@
1
- const t=e=>{const r=e?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.VULTR_ACCESS_KEY_ID??process.env.VULTR_ACCESS_KEY,s=e?.location??process.env.VULTR_LOCATION,c=e?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.VULTR_SECRET_ACCESS_KEY??process.env.VULTR_SECRET_KEY;if(!s||!r||!c)throw new Error("Missing required parameters for Vultr Object Storage client.");return{credentials:{accessKeyId:r,secretAccessKey:c},endpoint:`https://${s}.vultrobjects.com`,forcePathStyle:!1,region:s}};export{t as default};
@@ -1 +0,0 @@
1
- const i=async(t,e=5e3)=>{if(t.isReady)return;const o=Date.now();for(;!t.isReady&&Date.now()-o<e;)await new Promise(a=>{setTimeout(()=>{a()},100)});if(!t.isReady)throw new Error("Storage initialization timeout")};export{i as waitForStorage};
@@ -1 +0,0 @@
1
- const n=e=>{const r=e?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.WASABI_ACCESS_KEY_ID??process.env.WASABI_ACCESS_KEY,s=e?.region??process.env.AWS_REGION??process.env.WASABI_REGION,c=e?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.WASABI_SECRET_ACCESS_KEY??process.env.WASABI_SECRET_KEY;if(!s||!r||!c)throw new Error("Missing required parameters for Wasabi client.");return{apiVersion:"2006-03-01",credentials:{accessKeyId:r,secretAccessKey:c},endpoint:`https://s3.${s}.wasabisys.com`,region:s}};export{n as default};
@@ -1 +0,0 @@
1
- const t=e=>{const s=e?.accessKeyId??process.env.AWS_ACCESS_KEY_ID??process.env.YANDEX_ACCESS_KEY_ID,c=e?.endpoint??process.env.YANDEX_ENDPOINT,n=e?.region??process.env.AWS_REGION??process.env.YANDEX_REGION??"ru-central1",r=e?.secretAccessKey??process.env.AWS_SECRET_ACCESS_KEY??process.env.YANDEX_SECRET_ACCESS_KEY;if(!s||!r)throw new Error("Missing required parameters for Yandex Object Storage client.");return{credentials:{accessKeyId:s,secretAccessKey:r},endpoint:c??"https://storage.yandexcloud.net",forcePathStyle:!1,region:n}};export{t as default};