@backblaze-labs/b2-sdk 0.1.0 → 0.3.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.
Files changed (885) hide show
  1. package/CHANGELOG.md +151 -5
  2. package/README.md +163 -34
  3. package/dist/_virtual/_b2-sdk-version-json.cjs +4 -0
  4. package/dist/_virtual/_b2-sdk-version-json.js +4 -0
  5. package/dist/auth/account-info.d.cts +32 -0
  6. package/dist/auth/account-info.d.cts.map +1 -1
  7. package/dist/auth/account-info.d.ts +32 -0
  8. package/dist/auth/account-info.d.ts.map +1 -1
  9. package/dist/auth/file.cjs +408 -207
  10. package/dist/auth/file.cjs.map +1 -1
  11. package/dist/auth/file.d.cts +77 -3
  12. package/dist/auth/file.d.cts.map +1 -1
  13. package/dist/auth/file.d.ts +77 -3
  14. package/dist/auth/file.d.ts.map +1 -1
  15. package/dist/auth/file.js +407 -207
  16. package/dist/auth/file.js.map +1 -1
  17. package/dist/auth/in-memory.cjs +212 -183
  18. package/dist/auth/in-memory.cjs.map +1 -1
  19. package/dist/auth/in-memory.d.cts +8 -0
  20. package/dist/auth/in-memory.d.cts.map +1 -1
  21. package/dist/auth/in-memory.d.ts +8 -0
  22. package/dist/auth/in-memory.d.ts.map +1 -1
  23. package/dist/auth/in-memory.js +211 -182
  24. package/dist/auth/in-memory.js.map +1 -1
  25. package/dist/auth/index.cjs +7 -9
  26. package/dist/auth/index.d.cts +3 -2
  27. package/dist/auth/index.d.cts.map +1 -1
  28. package/dist/auth/index.d.ts +3 -2
  29. package/dist/auth/index.d.ts.map +1 -1
  30. package/dist/auth/index.js +2 -8
  31. package/dist/auth/realms.cjs +80 -7
  32. package/dist/auth/realms.cjs.map +1 -1
  33. package/dist/auth/realms.d.cts +27 -4
  34. package/dist/auth/realms.d.cts.map +1 -1
  35. package/dist/auth/realms.d.ts +27 -4
  36. package/dist/auth/realms.d.ts.map +1 -1
  37. package/dist/auth/realms.js +80 -9
  38. package/dist/auth/realms.js.map +1 -1
  39. package/dist/auth/upload-url-pool.cjs +55 -51
  40. package/dist/auth/upload-url-pool.cjs.map +1 -1
  41. package/dist/auth/upload-url-pool.js +55 -51
  42. package/dist/auth/upload-url-pool.js.map +1 -1
  43. package/dist/backup/client.cjs +206 -0
  44. package/dist/backup/client.cjs.map +1 -0
  45. package/dist/backup/client.d.cts +238 -0
  46. package/dist/backup/client.d.cts.map +1 -0
  47. package/dist/backup/client.d.ts +238 -0
  48. package/dist/backup/client.d.ts.map +1 -0
  49. package/dist/backup/client.js +206 -0
  50. package/dist/backup/client.js.map +1 -0
  51. package/dist/backup/index.cjs +15 -0
  52. package/dist/backup/index.d.cts +22 -0
  53. package/dist/backup/index.d.cts.map +1 -0
  54. package/dist/backup/index.d.ts +22 -0
  55. package/dist/backup/index.d.ts.map +1 -0
  56. package/dist/backup/index.js +7 -0
  57. package/dist/backup/raw.cjs +146 -0
  58. package/dist/backup/raw.cjs.map +1 -0
  59. package/dist/backup/raw.d.cts +122 -0
  60. package/dist/backup/raw.d.cts.map +1 -0
  61. package/dist/backup/raw.d.ts +122 -0
  62. package/dist/backup/raw.d.ts.map +1 -0
  63. package/dist/backup/raw.js +146 -0
  64. package/dist/backup/raw.js.map +1 -0
  65. package/dist/bucket.cjs +786 -787
  66. package/dist/bucket.cjs.map +1 -1
  67. package/dist/bucket.d.cts +35 -47
  68. package/dist/bucket.d.cts.map +1 -1
  69. package/dist/bucket.d.ts +35 -47
  70. package/dist/bucket.d.ts.map +1 -1
  71. package/dist/bucket.js +781 -782
  72. package/dist/bucket.js.map +1 -1
  73. package/dist/client.cjs +246 -228
  74. package/dist/client.cjs.map +1 -1
  75. package/dist/client.d.cts +25 -17
  76. package/dist/client.d.cts.map +1 -1
  77. package/dist/client.d.ts +25 -17
  78. package/dist/client.d.ts.map +1 -1
  79. package/dist/client.js +243 -225
  80. package/dist/client.js.map +1 -1
  81. package/dist/copy/large.cjs +116 -71
  82. package/dist/copy/large.cjs.map +1 -1
  83. package/dist/copy/large.d.cts +6 -0
  84. package/dist/copy/large.d.cts.map +1 -1
  85. package/dist/copy/large.d.ts +6 -0
  86. package/dist/copy/large.d.ts.map +1 -1
  87. package/dist/copy/large.js +114 -69
  88. package/dist/copy/large.js.map +1 -1
  89. package/dist/download/checksum.cjs +93 -0
  90. package/dist/download/checksum.cjs.map +1 -0
  91. package/dist/download/checksum.d.cts +40 -0
  92. package/dist/download/checksum.d.cts.map +1 -0
  93. package/dist/download/checksum.d.ts +40 -0
  94. package/dist/download/checksum.d.ts.map +1 -0
  95. package/dist/download/checksum.js +91 -0
  96. package/dist/download/checksum.js.map +1 -0
  97. package/dist/download/parallel.cjs +251 -118
  98. package/dist/download/parallel.cjs.map +1 -1
  99. package/dist/download/parallel.d.cts +13 -2
  100. package/dist/download/parallel.d.cts.map +1 -1
  101. package/dist/download/parallel.d.ts +13 -2
  102. package/dist/download/parallel.d.ts.map +1 -1
  103. package/dist/download/parallel.js +249 -116
  104. package/dist/download/parallel.js.map +1 -1
  105. package/dist/download/single.cjs +323 -97
  106. package/dist/download/single.cjs.map +1 -1
  107. package/dist/download/single.d.cts +6 -1
  108. package/dist/download/single.d.cts.map +1 -1
  109. package/dist/download/single.d.ts +6 -1
  110. package/dist/download/single.d.ts.map +1 -1
  111. package/dist/download/single.js +322 -99
  112. package/dist/download/single.js.map +1 -1
  113. package/dist/errors/index.cjs +869 -243
  114. package/dist/errors/index.cjs.map +1 -1
  115. package/dist/errors/index.d.cts +404 -82
  116. package/dist/errors/index.d.cts.map +1 -1
  117. package/dist/errors/index.d.ts +404 -82
  118. package/dist/errors/index.d.ts.map +1 -1
  119. package/dist/errors/index.js +835 -261
  120. package/dist/errors/index.js.map +1 -1
  121. package/dist/http/retry.cjs +45 -28
  122. package/dist/http/retry.cjs.map +1 -1
  123. package/dist/http/retry.d.cts +15 -2
  124. package/dist/http/retry.d.cts.map +1 -1
  125. package/dist/http/retry.d.ts +15 -2
  126. package/dist/http/retry.d.ts.map +1 -1
  127. package/dist/http/retry.js +46 -31
  128. package/dist/http/retry.js.map +1 -1
  129. package/dist/http/transport.cjs +476 -140
  130. package/dist/http/transport.cjs.map +1 -1
  131. package/dist/http/transport.d.cts +46 -5
  132. package/dist/http/transport.d.cts.map +1 -1
  133. package/dist/http/transport.d.ts +46 -5
  134. package/dist/http/transport.d.ts.map +1 -1
  135. package/dist/http/transport.js +474 -140
  136. package/dist/http/transport.js.map +1 -1
  137. package/dist/http/url-guard.cjs +154 -89
  138. package/dist/http/url-guard.cjs.map +1 -1
  139. package/dist/http/url-guard.d.cts +25 -3
  140. package/dist/http/url-guard.d.cts.map +1 -1
  141. package/dist/http/url-guard.d.ts +25 -3
  142. package/dist/http/url-guard.d.ts.map +1 -1
  143. package/dist/http/url-guard.js +152 -90
  144. package/dist/http/url-guard.js.map +1 -1
  145. package/dist/http/user-agent.cjs +84 -44
  146. package/dist/http/user-agent.cjs.map +1 -1
  147. package/dist/http/user-agent.js +84 -46
  148. package/dist/http/user-agent.js.map +1 -1
  149. package/dist/index.cjs +124 -77
  150. package/dist/index.d.cts +29 -21
  151. package/dist/index.d.cts.map +1 -1
  152. package/dist/index.d.ts +29 -21
  153. package/dist/index.d.ts.map +1 -1
  154. package/dist/index.js +18 -72
  155. package/dist/internal/b2-naming.cjs +66 -0
  156. package/dist/internal/b2-naming.cjs.map +1 -0
  157. package/dist/internal/b2-naming.d.cts +43 -0
  158. package/dist/internal/b2-naming.d.cts.map +1 -0
  159. package/dist/internal/b2-naming.d.ts +43 -0
  160. package/dist/internal/b2-naming.d.ts.map +1 -0
  161. package/dist/internal/b2-naming.js +60 -0
  162. package/dist/internal/b2-naming.js.map +1 -0
  163. package/dist/internal/upload-retry-options.cjs +21 -0
  164. package/dist/internal/upload-retry-options.cjs.map +1 -0
  165. package/dist/internal/upload-retry-options.d.cts +12 -0
  166. package/dist/internal/upload-retry-options.d.cts.map +1 -0
  167. package/dist/internal/upload-retry-options.d.ts +12 -0
  168. package/dist/internal/upload-retry-options.d.ts.map +1 -0
  169. package/dist/internal/upload-retry-options.js +21 -0
  170. package/dist/internal/upload-retry-options.js.map +1 -0
  171. package/dist/internal/url-redaction.cjs +31 -0
  172. package/dist/internal/url-redaction.cjs.map +1 -0
  173. package/dist/internal/url-redaction.d.cts +17 -0
  174. package/dist/internal/url-redaction.d.cts.map +1 -0
  175. package/dist/internal/url-redaction.d.ts +17 -0
  176. package/dist/internal/url-redaction.d.ts.map +1 -0
  177. package/dist/internal/url-redaction.js +31 -0
  178. package/dist/internal/url-redaction.js.map +1 -0
  179. package/dist/notifications/index.cjs +4 -6
  180. package/dist/notifications/index.d.cts +1 -1
  181. package/dist/notifications/index.d.cts.map +1 -1
  182. package/dist/notifications/index.d.ts +1 -1
  183. package/dist/notifications/index.d.ts.map +1 -1
  184. package/dist/notifications/index.js +1 -6
  185. package/dist/notifications/webhook.cjs +195 -85
  186. package/dist/notifications/webhook.cjs.map +1 -1
  187. package/dist/notifications/webhook.d.cts.map +1 -1
  188. package/dist/notifications/webhook.d.ts.map +1 -1
  189. package/dist/notifications/webhook.js +195 -87
  190. package/dist/notifications/webhook.js.map +1 -1
  191. package/dist/object.cjs +253 -210
  192. package/dist/object.cjs.map +1 -1
  193. package/dist/object.d.cts +13 -57
  194. package/dist/object.d.cts.map +1 -1
  195. package/dist/object.d.ts +13 -57
  196. package/dist/object.d.ts.map +1 -1
  197. package/dist/object.js +249 -206
  198. package/dist/object.js.map +1 -1
  199. package/dist/partner/account-info.d.cts +43 -0
  200. package/dist/partner/account-info.d.cts.map +1 -0
  201. package/dist/partner/account-info.d.ts +43 -0
  202. package/dist/partner/account-info.d.ts.map +1 -0
  203. package/dist/partner/auth-clone.cjs +64 -0
  204. package/dist/partner/auth-clone.cjs.map +1 -0
  205. package/dist/partner/auth-clone.d.cts +27 -0
  206. package/dist/partner/auth-clone.d.cts.map +1 -0
  207. package/dist/partner/auth-clone.d.ts +27 -0
  208. package/dist/partner/auth-clone.d.ts.map +1 -0
  209. package/dist/partner/auth-clone.js +63 -0
  210. package/dist/partner/auth-clone.js.map +1 -0
  211. package/dist/partner/auth-core.cjs +175 -0
  212. package/dist/partner/auth-core.cjs.map +1 -0
  213. package/dist/partner/auth-core.d.cts +111 -0
  214. package/dist/partner/auth-core.d.cts.map +1 -0
  215. package/dist/partner/auth-core.d.ts +111 -0
  216. package/dist/partner/auth-core.d.ts.map +1 -0
  217. package/dist/partner/auth-core.js +175 -0
  218. package/dist/partner/auth-core.js.map +1 -0
  219. package/dist/partner/auth-shape.cjs +36 -0
  220. package/dist/partner/auth-shape.cjs.map +1 -0
  221. package/dist/partner/auth-shape.d.cts +12 -0
  222. package/dist/partner/auth-shape.d.cts.map +1 -0
  223. package/dist/partner/auth-shape.d.ts +12 -0
  224. package/dist/partner/auth-shape.d.ts.map +1 -0
  225. package/dist/partner/auth-shape.js +36 -0
  226. package/dist/partner/auth-shape.js.map +1 -0
  227. package/dist/partner/client.cjs +255 -0
  228. package/dist/partner/client.cjs.map +1 -0
  229. package/dist/partner/client.d.cts +335 -0
  230. package/dist/partner/client.d.cts.map +1 -0
  231. package/dist/partner/client.d.ts +335 -0
  232. package/dist/partner/client.d.ts.map +1 -0
  233. package/dist/partner/client.js +255 -0
  234. package/dist/partner/client.js.map +1 -0
  235. package/dist/partner/endpoint-url.cjs +108 -0
  236. package/dist/partner/endpoint-url.cjs.map +1 -0
  237. package/dist/partner/endpoint-url.d.cts +72 -0
  238. package/dist/partner/endpoint-url.d.cts.map +1 -0
  239. package/dist/partner/endpoint-url.d.ts +72 -0
  240. package/dist/partner/endpoint-url.d.ts.map +1 -0
  241. package/dist/partner/endpoint-url.js +105 -0
  242. package/dist/partner/endpoint-url.js.map +1 -0
  243. package/dist/partner/in-memory.cjs +135 -0
  244. package/dist/partner/in-memory.cjs.map +1 -0
  245. package/dist/partner/in-memory.d.cts +99 -0
  246. package/dist/partner/in-memory.d.cts.map +1 -0
  247. package/dist/partner/in-memory.d.ts +99 -0
  248. package/dist/partner/in-memory.d.ts.map +1 -0
  249. package/dist/partner/in-memory.js +135 -0
  250. package/dist/partner/in-memory.js.map +1 -0
  251. package/dist/partner/index.cjs +18 -0
  252. package/dist/partner/index.d.cts +23 -0
  253. package/dist/partner/index.d.cts.map +1 -0
  254. package/dist/partner/index.d.ts +23 -0
  255. package/dist/partner/index.d.ts.map +1 -0
  256. package/dist/partner/index.js +7 -0
  257. package/dist/partner/raw.cjs +392 -0
  258. package/dist/partner/raw.cjs.map +1 -0
  259. package/dist/partner/raw.d.cts +223 -0
  260. package/dist/partner/raw.d.cts.map +1 -0
  261. package/dist/partner/raw.d.ts +223 -0
  262. package/dist/partner/raw.d.ts.map +1 -0
  263. package/dist/partner/raw.js +390 -0
  264. package/dist/partner/raw.js.map +1 -0
  265. package/dist/partner/redaction-placeholders.cjs +10 -0
  266. package/dist/partner/redaction-placeholders.cjs.map +1 -0
  267. package/dist/partner/redaction-placeholders.d.cts +5 -0
  268. package/dist/partner/redaction-placeholders.d.cts.map +1 -0
  269. package/dist/partner/redaction-placeholders.d.ts +5 -0
  270. package/dist/partner/redaction-placeholders.d.ts.map +1 -0
  271. package/dist/partner/redaction-placeholders.js +9 -0
  272. package/dist/partner/redaction-placeholders.js.map +1 -0
  273. package/dist/partner/redaction.cjs +267 -0
  274. package/dist/partner/redaction.cjs.map +1 -0
  275. package/dist/partner/redaction.d.cts +124 -0
  276. package/dist/partner/redaction.d.cts.map +1 -0
  277. package/dist/partner/redaction.d.ts +124 -0
  278. package/dist/partner/redaction.d.ts.map +1 -0
  279. package/dist/partner/redaction.js +257 -0
  280. package/dist/partner/redaction.js.map +1 -0
  281. package/dist/raw/encoding.cjs +74 -35
  282. package/dist/raw/encoding.cjs.map +1 -1
  283. package/dist/raw/encoding.js +74 -38
  284. package/dist/raw/encoding.js.map +1 -1
  285. package/dist/raw/index.cjs +740 -587
  286. package/dist/raw/index.cjs.map +1 -1
  287. package/dist/raw/index.d.cts +126 -19
  288. package/dist/raw/index.d.cts.map +1 -1
  289. package/dist/raw/index.d.ts +126 -19
  290. package/dist/raw/index.d.ts.map +1 -1
  291. package/dist/raw/index.js +736 -589
  292. package/dist/raw/index.js.map +1 -1
  293. package/dist/raw/url.cjs +111 -0
  294. package/dist/raw/url.cjs.map +1 -0
  295. package/dist/raw/url.d.cts +41 -0
  296. package/dist/raw/url.d.cts.map +1 -0
  297. package/dist/raw/url.d.ts +41 -0
  298. package/dist/raw/url.d.ts.map +1 -0
  299. package/dist/raw/url.js +110 -0
  300. package/dist/raw/url.js.map +1 -0
  301. package/dist/s3/index.cjs +355 -18
  302. package/dist/s3/index.cjs.map +1 -1
  303. package/dist/s3/index.d.cts +233 -5
  304. package/dist/s3/index.d.cts.map +1 -1
  305. package/dist/s3/index.d.ts +233 -5
  306. package/dist/s3/index.d.ts.map +1 -1
  307. package/dist/s3/index.js +351 -22
  308. package/dist/s3/index.js.map +1 -1
  309. package/dist/s3/sigv4.cjs +154 -0
  310. package/dist/s3/sigv4.cjs.map +1 -0
  311. package/dist/s3/sigv4.d.cts +43 -0
  312. package/dist/s3/sigv4.d.cts.map +1 -0
  313. package/dist/s3/sigv4.d.ts +43 -0
  314. package/dist/s3/sigv4.d.ts.map +1 -0
  315. package/dist/s3/sigv4.js +153 -0
  316. package/dist/s3/sigv4.js.map +1 -0
  317. package/dist/s3/validation.cjs +69 -0
  318. package/dist/s3/validation.cjs.map +1 -0
  319. package/dist/s3/validation.d.cts +43 -0
  320. package/dist/s3/validation.d.cts.map +1 -0
  321. package/dist/s3/validation.d.ts +43 -0
  322. package/dist/s3/validation.d.ts.map +1 -0
  323. package/dist/s3/validation.js +66 -0
  324. package/dist/s3/validation.js.map +1 -0
  325. package/dist/simulator/capabilities.cjs +63 -48
  326. package/dist/simulator/capabilities.cjs.map +1 -1
  327. package/dist/simulator/capabilities.js +63 -49
  328. package/dist/simulator/capabilities.js.map +1 -1
  329. package/dist/simulator/index.cjs +3114 -1547
  330. package/dist/simulator/index.cjs.map +1 -1
  331. package/dist/simulator/index.d.cts +186 -20
  332. package/dist/simulator/index.d.cts.map +1 -1
  333. package/dist/simulator/index.d.ts +186 -20
  334. package/dist/simulator/index.d.ts.map +1 -1
  335. package/dist/simulator/index.js +3098 -1545
  336. package/dist/simulator/index.js.map +1 -1
  337. package/dist/simulator/partner.cjs +719 -0
  338. package/dist/simulator/partner.cjs.map +1 -0
  339. package/dist/simulator/partner.d.cts +183 -0
  340. package/dist/simulator/partner.d.cts.map +1 -0
  341. package/dist/simulator/partner.d.ts +183 -0
  342. package/dist/simulator/partner.d.ts.map +1 -0
  343. package/dist/simulator/partner.js +718 -0
  344. package/dist/simulator/partner.js.map +1 -0
  345. package/dist/simulator/validation.cjs +772 -157
  346. package/dist/simulator/validation.cjs.map +1 -1
  347. package/dist/simulator/validation.d.cts +120 -21
  348. package/dist/simulator/validation.d.cts.map +1 -1
  349. package/dist/simulator/validation.d.ts +120 -21
  350. package/dist/simulator/validation.d.ts.map +1 -1
  351. package/dist/simulator/validation.js +755 -167
  352. package/dist/simulator/validation.js.map +1 -1
  353. package/dist/streams/collect.cjs +74 -24
  354. package/dist/streams/collect.cjs.map +1 -1
  355. package/dist/streams/collect.d.cts +14 -1
  356. package/dist/streams/collect.d.cts.map +1 -1
  357. package/dist/streams/collect.d.ts +14 -1
  358. package/dist/streams/collect.d.ts.map +1 -1
  359. package/dist/streams/collect.js +74 -25
  360. package/dist/streams/collect.js.map +1 -1
  361. package/dist/streams/file-source.cjs +287 -0
  362. package/dist/streams/file-source.cjs.map +1 -0
  363. package/dist/streams/file-source.d.cts +96 -0
  364. package/dist/streams/file-source.d.cts.map +1 -0
  365. package/dist/streams/file-source.d.ts +96 -0
  366. package/dist/streams/file-source.d.ts.map +1 -0
  367. package/dist/streams/file-source.js +286 -0
  368. package/dist/streams/file-source.js.map +1 -0
  369. package/dist/streams/hash.cjs +207 -115
  370. package/dist/streams/hash.cjs.map +1 -1
  371. package/dist/streams/hash.d.cts +5 -4
  372. package/dist/streams/hash.d.cts.map +1 -1
  373. package/dist/streams/hash.d.ts +5 -4
  374. package/dist/streams/hash.d.ts.map +1 -1
  375. package/dist/streams/hash.js +208 -95
  376. package/dist/streams/hash.js.map +1 -1
  377. package/dist/streams/index.cjs +12 -12
  378. package/dist/streams/index.d.cts +3 -3
  379. package/dist/streams/index.d.cts.map +1 -1
  380. package/dist/streams/index.d.ts +3 -3
  381. package/dist/streams/index.d.ts.map +1 -1
  382. package/dist/streams/index.js +3 -11
  383. package/dist/streams/progress.cjs +60 -46
  384. package/dist/streams/progress.cjs.map +1 -1
  385. package/dist/streams/progress.js +60 -46
  386. package/dist/streams/progress.js.map +1 -1
  387. package/dist/streams/source.cjs +317 -146
  388. package/dist/streams/source.cjs.map +1 -1
  389. package/dist/streams/source.d.cts +56 -18
  390. package/dist/streams/source.d.cts.map +1 -1
  391. package/dist/streams/source.d.ts +56 -18
  392. package/dist/streams/source.d.ts.map +1 -1
  393. package/dist/streams/source.js +313 -149
  394. package/dist/streams/source.js.map +1 -1
  395. package/dist/sync/actions/index.cjs +236 -184
  396. package/dist/sync/actions/index.cjs.map +1 -1
  397. package/dist/sync/actions/index.d.cts +29 -21
  398. package/dist/sync/actions/index.d.cts.map +1 -1
  399. package/dist/sync/actions/index.d.ts +29 -21
  400. package/dist/sync/actions/index.d.ts.map +1 -1
  401. package/dist/sync/actions/index.js +236 -190
  402. package/dist/sync/actions/index.js.map +1 -1
  403. package/dist/sync/b2-sha1-reader.cjs +152 -0
  404. package/dist/sync/b2-sha1-reader.cjs.map +1 -0
  405. package/dist/sync/b2-sha1-reader.d.cts +58 -0
  406. package/dist/sync/b2-sha1-reader.d.cts.map +1 -0
  407. package/dist/sync/b2-sha1-reader.d.ts +58 -0
  408. package/dist/sync/b2-sha1-reader.d.ts.map +1 -0
  409. package/dist/sync/b2-sha1-reader.js +149 -0
  410. package/dist/sync/b2-sha1-reader.js.map +1 -0
  411. package/dist/sync/download-staging.cjs +266 -0
  412. package/dist/sync/download-staging.cjs.map +1 -0
  413. package/dist/sync/download-staging.d.cts +55 -0
  414. package/dist/sync/download-staging.d.cts.map +1 -0
  415. package/dist/sync/download-staging.d.ts +55 -0
  416. package/dist/sync/download-staging.d.ts.map +1 -0
  417. package/dist/sync/download-staging.js +260 -0
  418. package/dist/sync/download-staging.js.map +1 -0
  419. package/dist/sync/filesystem-errors.cjs +32 -0
  420. package/dist/sync/filesystem-errors.cjs.map +1 -0
  421. package/dist/sync/filesystem-errors.d.cts +8 -0
  422. package/dist/sync/filesystem-errors.d.cts.map +1 -0
  423. package/dist/sync/filesystem-errors.d.ts +8 -0
  424. package/dist/sync/filesystem-errors.d.ts.map +1 -0
  425. package/dist/sync/filesystem-errors.js +32 -0
  426. package/dist/sync/filesystem-errors.js.map +1 -0
  427. package/dist/sync/filters.cjs +217 -0
  428. package/dist/sync/filters.cjs.map +1 -0
  429. package/dist/sync/filters.d.cts +51 -0
  430. package/dist/sync/filters.d.cts.map +1 -0
  431. package/dist/sync/filters.d.ts +51 -0
  432. package/dist/sync/filters.d.ts.map +1 -0
  433. package/dist/sync/filters.js +213 -0
  434. package/dist/sync/filters.js.map +1 -0
  435. package/dist/sync/index.cjs +39 -22
  436. package/dist/sync/index.d.cts +14 -9
  437. package/dist/sync/index.d.cts.map +1 -1
  438. package/dist/sync/index.d.ts +14 -9
  439. package/dist/sync/index.d.ts.map +1 -1
  440. package/dist/sync/index.js +9 -20
  441. package/dist/sync/local-file-identity.cjs +61 -0
  442. package/dist/sync/local-file-identity.cjs.map +1 -0
  443. package/dist/sync/local-file-identity.d.cts +37 -0
  444. package/dist/sync/local-file-identity.d.cts.map +1 -0
  445. package/dist/sync/local-file-identity.d.ts +37 -0
  446. package/dist/sync/local-file-identity.d.ts.map +1 -0
  447. package/dist/sync/local-file-identity.js +60 -0
  448. package/dist/sync/local-file-identity.js.map +1 -0
  449. package/dist/sync/local-file-io.cjs +369 -0
  450. package/dist/sync/local-file-io.cjs.map +1 -0
  451. package/dist/sync/local-file-io.d.cts +76 -0
  452. package/dist/sync/local-file-io.d.cts.map +1 -0
  453. package/dist/sync/local-file-io.d.ts +76 -0
  454. package/dist/sync/local-file-io.d.ts.map +1 -0
  455. package/dist/sync/local-file-io.js +365 -0
  456. package/dist/sync/local-file-io.js.map +1 -0
  457. package/dist/sync/local-filesystem-root.cjs +27 -0
  458. package/dist/sync/local-filesystem-root.cjs.map +1 -0
  459. package/dist/sync/local-filesystem-root.d.cts +18 -0
  460. package/dist/sync/local-filesystem-root.d.cts.map +1 -0
  461. package/dist/sync/local-filesystem-root.d.ts +18 -0
  462. package/dist/sync/local-filesystem-root.d.ts.map +1 -0
  463. package/dist/sync/local-filesystem-root.js +26 -0
  464. package/dist/sync/local-filesystem-root.js.map +1 -0
  465. package/dist/sync/local-sha1.cjs +110 -0
  466. package/dist/sync/local-sha1.cjs.map +1 -0
  467. package/dist/sync/local-sha1.d.cts +31 -0
  468. package/dist/sync/local-sha1.d.cts.map +1 -0
  469. package/dist/sync/local-sha1.d.ts +31 -0
  470. package/dist/sync/local-sha1.d.ts.map +1 -0
  471. package/dist/sync/local-sha1.js +109 -0
  472. package/dist/sync/local-sha1.js.map +1 -0
  473. package/dist/sync/pairing.cjs +118 -29
  474. package/dist/sync/pairing.cjs.map +1 -1
  475. package/dist/sync/pairing.d.cts +7 -2
  476. package/dist/sync/pairing.d.cts.map +1 -1
  477. package/dist/sync/pairing.d.ts +7 -2
  478. package/dist/sync/pairing.d.ts.map +1 -1
  479. package/dist/sync/pairing.js +120 -31
  480. package/dist/sync/pairing.js.map +1 -1
  481. package/dist/sync/path-order.cjs +30 -0
  482. package/dist/sync/path-order.cjs.map +1 -0
  483. package/dist/sync/path-order.d.cts +28 -0
  484. package/dist/sync/path-order.d.cts.map +1 -0
  485. package/dist/sync/path-order.d.ts +28 -0
  486. package/dist/sync/path-order.d.ts.map +1 -0
  487. package/dist/sync/path-order.js +29 -0
  488. package/dist/sync/path-order.js.map +1 -0
  489. package/dist/sync/path-safety.cjs +111 -0
  490. package/dist/sync/path-safety.cjs.map +1 -0
  491. package/dist/sync/path-safety.d.cts +78 -0
  492. package/dist/sync/path-safety.d.cts.map +1 -0
  493. package/dist/sync/path-safety.d.ts +78 -0
  494. package/dist/sync/path-safety.d.ts.map +1 -0
  495. package/dist/sync/path-safety.js +105 -0
  496. package/dist/sync/path-safety.js.map +1 -0
  497. package/dist/sync/paths.d.cts +19 -0
  498. package/dist/sync/paths.d.cts.map +1 -0
  499. package/dist/sync/paths.d.ts +19 -0
  500. package/dist/sync/paths.d.ts.map +1 -0
  501. package/dist/sync/policies/compare.cjs +391 -11
  502. package/dist/sync/policies/compare.cjs.map +1 -1
  503. package/dist/sync/policies/compare.d.cts +100 -2
  504. package/dist/sync/policies/compare.d.cts.map +1 -1
  505. package/dist/sync/policies/compare.d.ts +100 -2
  506. package/dist/sync/policies/compare.d.ts.map +1 -1
  507. package/dist/sync/policies/compare.js +389 -13
  508. package/dist/sync/policies/compare.js.map +1 -1
  509. package/dist/sync/policies/index.cjs +70 -65
  510. package/dist/sync/policies/index.cjs.map +1 -1
  511. package/dist/sync/policies/index.d.cts +35 -6
  512. package/dist/sync/policies/index.d.cts.map +1 -1
  513. package/dist/sync/policies/index.d.ts +35 -6
  514. package/dist/sync/policies/index.d.ts.map +1 -1
  515. package/dist/sync/policies/index.js +70 -65
  516. package/dist/sync/policies/index.js.map +1 -1
  517. package/dist/sync/prefix.cjs +96 -0
  518. package/dist/sync/prefix.cjs.map +1 -0
  519. package/dist/sync/prefix.d.cts +55 -0
  520. package/dist/sync/prefix.d.cts.map +1 -0
  521. package/dist/sync/prefix.d.ts +55 -0
  522. package/dist/sync/prefix.d.ts.map +1 -0
  523. package/dist/sync/prefix.js +92 -0
  524. package/dist/sync/prefix.js.map +1 -0
  525. package/dist/sync/regexp-safety.cjs +192 -0
  526. package/dist/sync/regexp-safety.cjs.map +1 -0
  527. package/dist/sync/regexp-safety.d.cts +29 -0
  528. package/dist/sync/regexp-safety.d.cts.map +1 -0
  529. package/dist/sync/regexp-safety.d.ts +29 -0
  530. package/dist/sync/regexp-safety.d.ts.map +1 -0
  531. package/dist/sync/regexp-safety.js +190 -0
  532. package/dist/sync/regexp-safety.js.map +1 -0
  533. package/dist/sync/scan-events.cjs +33 -0
  534. package/dist/sync/scan-events.cjs.map +1 -0
  535. package/dist/sync/scan-events.d.cts +17 -0
  536. package/dist/sync/scan-events.d.cts.map +1 -0
  537. package/dist/sync/scan-events.d.ts +17 -0
  538. package/dist/sync/scan-events.d.ts.map +1 -0
  539. package/dist/sync/scan-events.js +32 -0
  540. package/dist/sync/scan-events.js.map +1 -0
  541. package/dist/sync/scan-limit.cjs +33 -0
  542. package/dist/sync/scan-limit.cjs.map +1 -0
  543. package/dist/sync/scan-limit.d.cts +21 -0
  544. package/dist/sync/scan-limit.d.cts.map +1 -0
  545. package/dist/sync/scan-limit.d.ts +21 -0
  546. package/dist/sync/scan-limit.d.ts.map +1 -0
  547. package/dist/sync/scan-limit.js +31 -0
  548. package/dist/sync/scan-limit.js.map +1 -0
  549. package/dist/sync/scanners/b2.cjs +239 -55
  550. package/dist/sync/scanners/b2.cjs.map +1 -1
  551. package/dist/sync/scanners/b2.d.cts +26 -7
  552. package/dist/sync/scanners/b2.d.cts.map +1 -1
  553. package/dist/sync/scanners/b2.d.ts +26 -7
  554. package/dist/sync/scanners/b2.d.ts.map +1 -1
  555. package/dist/sync/scanners/b2.js +239 -55
  556. package/dist/sync/scanners/b2.js.map +1 -1
  557. package/dist/sync/scanners/local.cjs +215 -56
  558. package/dist/sync/scanners/local.cjs.map +1 -1
  559. package/dist/sync/scanners/local.d.cts +22 -7
  560. package/dist/sync/scanners/local.d.cts.map +1 -1
  561. package/dist/sync/scanners/local.d.ts +22 -7
  562. package/dist/sync/scanners/local.d.ts.map +1 -1
  563. package/dist/sync/scanners/local.js +216 -57
  564. package/dist/sync/scanners/local.js.map +1 -1
  565. package/dist/sync/sha1-metadata.cjs +94 -0
  566. package/dist/sync/sha1-metadata.cjs.map +1 -0
  567. package/dist/sync/sha1-metadata.d.cts +82 -0
  568. package/dist/sync/sha1-metadata.d.cts.map +1 -0
  569. package/dist/sync/sha1-metadata.d.ts +82 -0
  570. package/dist/sync/sha1-metadata.d.ts.map +1 -0
  571. package/dist/sync/sha1-metadata.js +89 -0
  572. package/dist/sync/sha1-metadata.js.map +1 -0
  573. package/dist/sync/sha1-options.cjs +23 -0
  574. package/dist/sync/sha1-options.cjs.map +1 -0
  575. package/dist/sync/sha1-options.d.cts +14 -0
  576. package/dist/sync/sha1-options.d.cts.map +1 -0
  577. package/dist/sync/sha1-options.d.ts +14 -0
  578. package/dist/sync/sha1-options.d.ts.map +1 -0
  579. package/dist/sync/sha1-options.js +21 -0
  580. package/dist/sync/sha1-options.js.map +1 -0
  581. package/dist/sync/synchronizer.cjs +783 -197
  582. package/dist/sync/synchronizer.cjs.map +1 -1
  583. package/dist/sync/synchronizer.d.cts +47 -1
  584. package/dist/sync/synchronizer.d.cts.map +1 -1
  585. package/dist/sync/synchronizer.d.ts +47 -1
  586. package/dist/sync/synchronizer.d.ts.map +1 -1
  587. package/dist/sync/synchronizer.js +780 -173
  588. package/dist/sync/synchronizer.js.map +1 -1
  589. package/dist/sync/types.d.cts +208 -16
  590. package/dist/sync/types.d.cts.map +1 -1
  591. package/dist/sync/types.d.ts +208 -16
  592. package/dist/sync/types.d.ts.map +1 -1
  593. package/dist/types/auth.cjs +80 -56
  594. package/dist/types/auth.cjs.map +1 -1
  595. package/dist/types/auth.d.cts +71 -9
  596. package/dist/types/auth.d.cts.map +1 -1
  597. package/dist/types/auth.d.ts +71 -9
  598. package/dist/types/auth.d.ts.map +1 -1
  599. package/dist/types/auth.js +81 -57
  600. package/dist/types/auth.js.map +1 -1
  601. package/dist/types/backup.d.cts +80 -0
  602. package/dist/types/backup.d.cts.map +1 -0
  603. package/dist/types/backup.d.ts +80 -0
  604. package/dist/types/backup.d.ts.map +1 -0
  605. package/dist/types/bucket.cjs +74 -38
  606. package/dist/types/bucket.cjs.map +1 -1
  607. package/dist/types/bucket.d.cts +4 -2
  608. package/dist/types/bucket.d.cts.map +1 -1
  609. package/dist/types/bucket.d.ts +4 -2
  610. package/dist/types/bucket.d.ts.map +1 -1
  611. package/dist/types/bucket.js +75 -41
  612. package/dist/types/bucket.js.map +1 -1
  613. package/dist/types/download.cjs +62 -0
  614. package/dist/types/download.cjs.map +1 -0
  615. package/dist/types/download.d.cts +98 -0
  616. package/dist/types/download.d.cts.map +1 -1
  617. package/dist/types/download.d.ts +98 -0
  618. package/dist/types/download.d.ts.map +1 -1
  619. package/dist/types/download.js +61 -0
  620. package/dist/types/download.js.map +1 -0
  621. package/dist/types/encryption.cjs +194 -328
  622. package/dist/types/encryption.cjs.map +1 -1
  623. package/dist/types/encryption.d.cts +48 -0
  624. package/dist/types/encryption.d.cts.map +1 -1
  625. package/dist/types/encryption.d.ts +48 -0
  626. package/dist/types/encryption.d.ts.map +1 -1
  627. package/dist/types/encryption.js +192 -311
  628. package/dist/types/encryption.js.map +1 -1
  629. package/dist/types/errors.cjs +56 -0
  630. package/dist/types/errors.cjs.map +1 -0
  631. package/dist/types/errors.d.cts +13 -4
  632. package/dist/types/errors.d.cts.map +1 -1
  633. package/dist/types/errors.d.ts +13 -4
  634. package/dist/types/errors.d.ts.map +1 -1
  635. package/dist/types/errors.js +56 -0
  636. package/dist/types/errors.js.map +1 -0
  637. package/dist/types/file.cjs +36 -19
  638. package/dist/types/file.cjs.map +1 -1
  639. package/dist/types/file.d.cts +17 -4
  640. package/dist/types/file.d.cts.map +1 -1
  641. package/dist/types/file.d.ts +17 -4
  642. package/dist/types/file.d.ts.map +1 -1
  643. package/dist/types/file.js +37 -21
  644. package/dist/types/file.js.map +1 -1
  645. package/dist/types/ids.cjs +83 -9
  646. package/dist/types/ids.cjs.map +1 -1
  647. package/dist/types/ids.d.cts +32 -0
  648. package/dist/types/ids.d.cts.map +1 -1
  649. package/dist/types/ids.d.ts +32 -0
  650. package/dist/types/ids.d.ts.map +1 -1
  651. package/dist/types/ids.js +82 -16
  652. package/dist/types/ids.js.map +1 -1
  653. package/dist/types/index.d.cts +18 -13
  654. package/dist/types/index.d.cts.map +1 -1
  655. package/dist/types/index.d.ts +18 -13
  656. package/dist/types/index.d.ts.map +1 -1
  657. package/dist/types/key.d.cts +44 -8
  658. package/dist/types/key.d.cts.map +1 -1
  659. package/dist/types/key.d.ts +44 -8
  660. package/dist/types/key.d.ts.map +1 -1
  661. package/dist/types/lock.cjs +33 -13
  662. package/dist/types/lock.cjs.map +1 -1
  663. package/dist/types/lock.d.cts +14 -0
  664. package/dist/types/lock.d.cts.map +1 -1
  665. package/dist/types/lock.d.ts +14 -0
  666. package/dist/types/lock.d.ts.map +1 -1
  667. package/dist/types/lock.js +34 -15
  668. package/dist/types/lock.js.map +1 -1
  669. package/dist/types/notifications.cjs +44 -22
  670. package/dist/types/notifications.cjs.map +1 -1
  671. package/dist/types/notifications.d.cts +5 -3
  672. package/dist/types/notifications.d.cts.map +1 -1
  673. package/dist/types/notifications.d.ts +5 -3
  674. package/dist/types/notifications.d.ts.map +1 -1
  675. package/dist/types/notifications.js +45 -23
  676. package/dist/types/notifications.js.map +1 -1
  677. package/dist/types/partner.cjs +32 -0
  678. package/dist/types/partner.cjs.map +1 -0
  679. package/dist/types/partner.d.cts +394 -0
  680. package/dist/types/partner.d.cts.map +1 -0
  681. package/dist/types/partner.d.ts +394 -0
  682. package/dist/types/partner.d.ts.map +1 -0
  683. package/dist/types/partner.js +29 -0
  684. package/dist/types/partner.js.map +1 -0
  685. package/dist/types/upload.d.cts +53 -6
  686. package/dist/types/upload.d.cts.map +1 -1
  687. package/dist/types/upload.d.ts +53 -6
  688. package/dist/types/upload.d.ts.map +1 -1
  689. package/dist/upload/abort-scope.cjs +46 -0
  690. package/dist/upload/abort-scope.cjs.map +1 -0
  691. package/dist/upload/abort-scope.d.cts +26 -0
  692. package/dist/upload/abort-scope.d.cts.map +1 -0
  693. package/dist/upload/abort-scope.d.ts +26 -0
  694. package/dist/upload/abort-scope.d.ts.map +1 -0
  695. package/dist/upload/abort-scope.js +45 -0
  696. package/dist/upload/abort-scope.js.map +1 -0
  697. package/dist/upload/cancel.cjs +183 -8
  698. package/dist/upload/cancel.cjs.map +1 -1
  699. package/dist/upload/cancel.d.cts +110 -2
  700. package/dist/upload/cancel.d.cts.map +1 -1
  701. package/dist/upload/cancel.d.ts +110 -2
  702. package/dist/upload/cancel.d.ts.map +1 -1
  703. package/dist/upload/cancel.js +178 -9
  704. package/dist/upload/cancel.js.map +1 -1
  705. package/dist/upload/concurrency.cjs +79 -52
  706. package/dist/upload/concurrency.cjs.map +1 -1
  707. package/dist/upload/concurrency.js +79 -53
  708. package/dist/upload/concurrency.js.map +1 -1
  709. package/dist/upload/finish.cjs +54 -0
  710. package/dist/upload/finish.cjs.map +1 -0
  711. package/dist/upload/finish.d.cts +26 -0
  712. package/dist/upload/finish.d.cts.map +1 -0
  713. package/dist/upload/finish.d.ts +26 -0
  714. package/dist/upload/finish.d.ts.map +1 -0
  715. package/dist/upload/finish.js +54 -0
  716. package/dist/upload/finish.js.map +1 -0
  717. package/dist/upload/large.cjs +305 -218
  718. package/dist/upload/large.cjs.map +1 -1
  719. package/dist/upload/large.d.cts +90 -9
  720. package/dist/upload/large.d.cts.map +1 -1
  721. package/dist/upload/large.d.ts +90 -9
  722. package/dist/upload/large.d.ts.map +1 -1
  723. package/dist/upload/large.js +305 -218
  724. package/dist/upload/large.js.map +1 -1
  725. package/dist/upload/options.cjs +28 -0
  726. package/dist/upload/options.cjs.map +1 -0
  727. package/dist/upload/options.d.cts +116 -0
  728. package/dist/upload/options.d.cts.map +1 -0
  729. package/dist/upload/options.d.ts +116 -0
  730. package/dist/upload/options.d.ts.map +1 -0
  731. package/dist/upload/options.js +27 -0
  732. package/dist/upload/options.js.map +1 -0
  733. package/dist/upload/resume.cjs +334 -33
  734. package/dist/upload/resume.cjs.map +1 -1
  735. package/dist/upload/resume.d.cts +84 -12
  736. package/dist/upload/resume.d.cts.map +1 -1
  737. package/dist/upload/resume.d.ts +84 -12
  738. package/dist/upload/resume.d.ts.map +1 -1
  739. package/dist/upload/resume.js +331 -33
  740. package/dist/upload/resume.js.map +1 -1
  741. package/dist/upload/retry.cjs +191 -0
  742. package/dist/upload/retry.cjs.map +1 -0
  743. package/dist/upload/retry.d.cts +127 -0
  744. package/dist/upload/retry.d.cts.map +1 -0
  745. package/dist/upload/retry.d.ts +127 -0
  746. package/dist/upload/retry.d.ts.map +1 -0
  747. package/dist/upload/retry.js +187 -0
  748. package/dist/upload/retry.js.map +1 -0
  749. package/dist/upload/single.cjs +69 -44
  750. package/dist/upload/single.cjs.map +1 -1
  751. package/dist/upload/single.d.cts +8 -1
  752. package/dist/upload/single.d.cts.map +1 -1
  753. package/dist/upload/single.d.ts +8 -1
  754. package/dist/upload/single.d.ts.map +1 -1
  755. package/dist/upload/single.js +69 -44
  756. package/dist/upload/single.js.map +1 -1
  757. package/dist/upload/stream.cjs +319 -193
  758. package/dist/upload/stream.cjs.map +1 -1
  759. package/dist/upload/stream.d.cts +9 -1
  760. package/dist/upload/stream.d.cts.map +1 -1
  761. package/dist/upload/stream.d.ts +9 -1
  762. package/dist/upload/stream.d.ts.map +1 -1
  763. package/dist/upload/stream.js +318 -192
  764. package/dist/upload/stream.js.map +1 -1
  765. package/dist/util/abort.cjs +114 -0
  766. package/dist/util/abort.cjs.map +1 -0
  767. package/dist/util/abort.d.cts +65 -0
  768. package/dist/util/abort.d.cts.map +1 -0
  769. package/dist/util/abort.d.ts +65 -0
  770. package/dist/util/abort.d.ts.map +1 -0
  771. package/dist/util/abort.js +109 -0
  772. package/dist/util/abort.js.map +1 -0
  773. package/dist/util/best-effort.cjs +42 -8
  774. package/dist/util/best-effort.cjs.map +1 -1
  775. package/dist/util/best-effort.d.cts +2 -1
  776. package/dist/util/best-effort.d.cts.map +1 -1
  777. package/dist/util/best-effort.d.ts +2 -1
  778. package/dist/util/best-effort.d.ts.map +1 -1
  779. package/dist/util/best-effort.js +43 -9
  780. package/dist/util/best-effort.js.map +1 -1
  781. package/dist/util/bytes.cjs +23 -0
  782. package/dist/util/bytes.cjs.map +1 -0
  783. package/dist/util/bytes.d.cts +15 -0
  784. package/dist/util/bytes.d.cts.map +1 -0
  785. package/dist/util/bytes.d.ts +15 -0
  786. package/dist/util/bytes.d.ts.map +1 -0
  787. package/dist/util/bytes.js +23 -0
  788. package/dist/util/bytes.js.map +1 -0
  789. package/dist/util/crypto.cjs +68 -0
  790. package/dist/util/crypto.cjs.map +1 -0
  791. package/dist/util/crypto.d.cts +26 -0
  792. package/dist/util/crypto.d.cts.map +1 -0
  793. package/dist/util/crypto.d.ts +26 -0
  794. package/dist/util/crypto.d.ts.map +1 -0
  795. package/dist/util/crypto.js +66 -0
  796. package/dist/util/crypto.js.map +1 -0
  797. package/dist/util/defaults.cjs +28 -9
  798. package/dist/util/defaults.cjs.map +1 -1
  799. package/dist/util/defaults.d.cts +2 -0
  800. package/dist/util/defaults.d.cts.map +1 -1
  801. package/dist/util/defaults.d.ts +2 -0
  802. package/dist/util/defaults.d.ts.map +1 -1
  803. package/dist/util/defaults.js +28 -11
  804. package/dist/util/defaults.js.map +1 -1
  805. package/dist/util/error-reason.cjs +41 -0
  806. package/dist/util/error-reason.cjs.map +1 -0
  807. package/dist/util/error-reason.d.cts +9 -0
  808. package/dist/util/error-reason.d.cts.map +1 -0
  809. package/dist/util/error-reason.d.ts +9 -0
  810. package/dist/util/error-reason.d.ts.map +1 -0
  811. package/dist/util/error-reason.js +41 -0
  812. package/dist/util/error-reason.js.map +1 -0
  813. package/dist/util/http.cjs +23 -0
  814. package/dist/util/http.cjs.map +1 -0
  815. package/dist/util/http.d.cts +13 -0
  816. package/dist/util/http.d.cts.map +1 -0
  817. package/dist/util/http.d.ts +13 -0
  818. package/dist/util/http.d.ts.map +1 -0
  819. package/dist/util/http.js +23 -0
  820. package/dist/util/http.js.map +1 -0
  821. package/dist/util/md5.cjs +211 -0
  822. package/dist/util/md5.cjs.map +1 -0
  823. package/dist/util/md5.d.cts +43 -0
  824. package/dist/util/md5.d.cts.map +1 -0
  825. package/dist/util/md5.d.ts +43 -0
  826. package/dist/util/md5.d.ts.map +1 -0
  827. package/dist/util/md5.js +209 -0
  828. package/dist/util/md5.js.map +1 -0
  829. package/dist/util/normalize.cjs +66 -7
  830. package/dist/util/normalize.cjs.map +1 -1
  831. package/dist/util/normalize.d.cts +7 -7
  832. package/dist/util/normalize.d.cts.map +1 -1
  833. package/dist/util/normalize.d.ts +7 -7
  834. package/dist/util/normalize.d.ts.map +1 -1
  835. package/dist/util/normalize.js +67 -10
  836. package/dist/util/normalize.js.map +1 -1
  837. package/dist/util/paginator.cjs +69 -14
  838. package/dist/util/paginator.cjs.map +1 -1
  839. package/dist/util/paginator.d.cts +3 -1
  840. package/dist/util/paginator.d.cts.map +1 -1
  841. package/dist/util/paginator.d.ts +3 -1
  842. package/dist/util/paginator.d.ts.map +1 -1
  843. package/dist/util/paginator.js +70 -16
  844. package/dist/util/paginator.js.map +1 -1
  845. package/dist/util/plan-ranges.cjs +47 -22
  846. package/dist/util/plan-ranges.cjs.map +1 -1
  847. package/dist/util/plan-ranges.js +48 -24
  848. package/dist/util/plan-ranges.js.map +1 -1
  849. package/dist/util/sha1.cjs +27 -0
  850. package/dist/util/sha1.cjs.map +1 -0
  851. package/dist/util/sha1.d.cts +17 -0
  852. package/dist/util/sha1.d.cts.map +1 -0
  853. package/dist/util/sha1.d.ts +17 -0
  854. package/dist/util/sha1.d.ts.map +1 -0
  855. package/dist/util/sha1.js +26 -0
  856. package/dist/util/sha1.js.map +1 -0
  857. package/dist/util/text-codec.cjs +29 -5
  858. package/dist/util/text-codec.cjs.map +1 -1
  859. package/dist/util/text-codec.js +30 -7
  860. package/dist/util/text-codec.js.map +1 -1
  861. package/dist/util/to-error.cjs +18 -4
  862. package/dist/util/to-error.cjs.map +1 -1
  863. package/dist/util/to-error.js +19 -5
  864. package/dist/util/to-error.js.map +1 -1
  865. package/dist/version.cjs +17 -5
  866. package/dist/version.cjs.map +1 -1
  867. package/dist/version.d.cts +3 -3
  868. package/dist/version.d.ts +3 -3
  869. package/dist/version.js +19 -6
  870. package/dist/version.js.map +1 -1
  871. package/package.json +45 -20
  872. package/dist/auth/index.cjs.map +0 -1
  873. package/dist/auth/index.js.map +0 -1
  874. package/dist/index.cjs.map +0 -1
  875. package/dist/index.js.map +0 -1
  876. package/dist/notifications/index.cjs.map +0 -1
  877. package/dist/notifications/index.js.map +0 -1
  878. package/dist/package.json.cjs +0 -9
  879. package/dist/package.json.cjs.map +0 -1
  880. package/dist/package.json.js +0 -9
  881. package/dist/package.json.js.map +0 -1
  882. package/dist/streams/index.cjs.map +0 -1
  883. package/dist/streams/index.js.map +0 -1
  884. package/dist/sync/index.cjs.map +0 -1
  885. package/dist/sync/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency.cjs","sources":["../../src/upload/concurrency.ts"],"sourcesContent":["/**\n * Bounded concurrency primitive.\n *\n * Limits the number of concurrent operations to a fixed maximum. Callers\n * {@link acquire} a slot before starting work and {@link release} it when done.\n * If all slots are taken, `acquire` returns a promise that resolves when a slot\n * becomes available.\n */\nexport class Semaphore {\n private current = 0\n private readonly queue: (() => void)[] = []\n\n /**\n * @param limit - Maximum number of concurrent acquisitions. Must be a\n * positive integer; values `<= 0` would create a semaphore that\n * never lets anything through (all `acquire()` calls would queue\n * forever), so the constructor throws fast instead.\n *\n * @throws `RangeError` when `limit` is not a positive integer.\n */\n constructor(private readonly limit: number) {\n if (!Number.isInteger(limit) || limit <= 0) {\n throw new RangeError(\n `Semaphore limit must be a positive integer; received ${limit}. A non-positive limit produces a deadlocked semaphore — fail fast at construction instead.`,\n )\n }\n }\n\n /**\n * Acquires a slot, waiting if the limit has been reached.\n * @returns A promise that resolves when a slot is available.\n */\n async acquire(): Promise<void> {\n if (this.current < this.limit) {\n this.current++\n return\n }\n return new Promise<void>((resolve) => {\n this.queue.push(resolve)\n })\n }\n\n /** Releases a slot, unblocking the next queued caller if any. */\n release(): void {\n const next = this.queue.shift()\n if (next) {\n next()\n } else {\n this.current--\n }\n }\n\n /**\n * Number of slots currently available.\n *\n * @returns The count of free concurrency slots.\n */\n get available(): number {\n return this.limit - this.current\n }\n}\n\n/**\n * Maps over an array with bounded concurrency.\n *\n * @param items - Input items to process.\n * @param concurrency - Maximum number of items processed in parallel.\n * @param fn - Async function applied to each item.\n *\n * @returns Results in the same order as the input items.\n */\nexport async function mapConcurrent<T, R>(\n items: readonly T[],\n concurrency: number,\n fn: (item: T, index: number) => Promise<R>,\n): Promise<R[]> {\n const sem = new Semaphore(concurrency)\n const results: R[] = new Array(items.length)\n const tasks = items.map(async (item, i) => {\n await sem.acquire()\n try {\n results[i] = await fn(item, i)\n } finally {\n sem.release()\n }\n })\n await Promise.all(tasks)\n return results\n}\n"],"names":[],"mappings":";;AAQO,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYrB,YAA6B,OAAe;AAAf,SAAA,QAAA;AAC3B,QAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GAAG;AAC1C,YAAM,IAAI;AAAA,QACR,wDAAwD,KAAK;AAAA,MAAA;AAAA,IAEjE;AAAA,EACF;AAAA,EAjBQ,UAAU;AAAA,EACD,QAAwB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBzC,MAAM,UAAyB;AAC7B,QAAI,KAAK,UAAU,KAAK,OAAO;AAC7B,WAAK;AACL;AAAA,IACF;AACA,WAAO,IAAI,QAAc,CAAC,YAAY;AACpC,WAAK,MAAM,KAAK,OAAO;AAAA,IACzB,CAAC;AAAA,EACH;AAAA;AAAA,EAGA,UAAgB;AACd,UAAM,OAAO,KAAK,MAAM,MAAA;AACxB,QAAI,MAAM;AACR,WAAA;AAAA,IACF,OAAO;AACL,WAAK;AAAA,IACP;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,IAAI,YAAoB;AACtB,WAAO,KAAK,QAAQ,KAAK;AAAA,EAC3B;AACF;;"}
1
+ {"version":3,"file":"concurrency.cjs","names":[],"sources":["../../src/upload/concurrency.ts"],"sourcesContent":["/**\n * Bounded concurrency primitive.\n *\n * Limits the number of concurrent operations to a fixed maximum. Callers\n * {@link acquire} a slot before starting work and {@link release} it when done.\n * If all slots are taken, `acquire` returns a promise that resolves when a slot\n * becomes available.\n */\nexport class Semaphore {\n private current = 0\n private readonly queue: (() => void)[] = []\n\n /**\n * @param limit - Maximum number of concurrent acquisitions. Must be a\n * positive integer; values `<= 0` would create a semaphore that\n * never lets anything through (all `acquire()` calls would queue\n * forever), so the constructor throws fast instead.\n *\n * @throws `RangeError` when `limit` is not a positive integer.\n */\n constructor(private readonly limit: number) {\n if (!Number.isInteger(limit) || limit <= 0) {\n throw new RangeError(\n `Semaphore limit must be a positive integer; received ${limit}. A non-positive limit produces a deadlocked semaphore — fail fast at construction instead.`,\n )\n }\n }\n\n /**\n * Acquires a slot, waiting if the limit has been reached.\n * @returns A promise that resolves when a slot is available.\n */\n async acquire(): Promise<void> {\n if (this.current < this.limit) {\n this.current++\n return\n }\n return new Promise<void>((resolve) => {\n this.queue.push(resolve)\n })\n }\n\n /** Releases a slot, unblocking the next queued caller if any. */\n release(): void {\n const next = this.queue.shift()\n if (next) {\n next()\n } else {\n this.current--\n }\n }\n\n /**\n * Number of slots currently available.\n *\n * @returns The count of free concurrency slots.\n */\n get available(): number {\n return this.limit - this.current\n }\n}\n\n/**\n * Maps over an array with bounded concurrency.\n *\n * @param items - Input items to process.\n * @param concurrency - Maximum number of items processed in parallel.\n * @param fn - Async function applied to each item.\n *\n * @returns Results in the same order as the input items.\n */\nexport async function mapConcurrent<T, R>(\n items: readonly T[],\n concurrency: number,\n fn: (item: T, index: number) => Promise<R>,\n): Promise<R[]> {\n const sem = new Semaphore(concurrency)\n const results: R[] = new Array(items.length)\n const tasks = items.map(async (item, i) => {\n await sem.acquire()\n try {\n results[i] = await fn(item, i)\n } finally {\n sem.release()\n }\n })\n await Promise.all(tasks)\n return results\n}\n"],"mappings":";;;;;;;;;AAQA,IAAa,YAAb,MAAuB;CAYQ;CAX7B,UAAkB;CAClB,QAAyC,CAAC;;;;;;;;;CAU1C,YAAY,OAAgC;EAAf,KAAA,QAAA;EAC3B,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GACvC,MAAM,IAAI,WACR,wDAAwD,MAAM,4FAChE;CAEJ;;;;;CAMA,MAAM,UAAyB;EAC7B,IAAI,KAAK,UAAU,KAAK,OAAO;GAC7B,KAAK;GACL;EACF;EACA,OAAO,IAAI,SAAe,YAAY;GACpC,KAAK,MAAM,KAAK,OAAO;EACzB,CAAC;CACH;;CAGA,UAAgB;EACd,MAAM,OAAO,KAAK,MAAM,MAAM;EAC9B,IAAI,MACF,KAAK;OAEL,KAAK;CAET;;;;;;CAOA,IAAI,YAAoB;EACtB,OAAO,KAAK,QAAQ,KAAK;CAC3B;AACF;;;;;;;;;;AAWA,eAAsB,cACpB,OACA,aACA,IACc;CACd,MAAM,MAAM,IAAI,UAAU,WAAW;CACrC,MAAM,UAAe,IAAI,MAAM,MAAM,MAAM;CAC3C,MAAM,QAAQ,MAAM,IAAI,OAAO,MAAM,MAAM;EACzC,MAAM,IAAI,QAAQ;EAClB,IAAI;GACF,QAAQ,KAAK,MAAM,GAAG,MAAM,CAAC;EAC/B,UAAU;GACR,IAAI,QAAQ;EACd;CACF,CAAC;CACD,MAAM,QAAQ,IAAI,KAAK;CACvB,OAAO;AACT"}
@@ -1,54 +1,80 @@
1
- class Semaphore {
2
- /**
3
- * @param limit - Maximum number of concurrent acquisitions. Must be a
4
- * positive integer; values `<= 0` would create a semaphore that
5
- * never lets anything through (all `acquire()` calls would queue
6
- * forever), so the constructor throws fast instead.
7
- *
8
- * @throws `RangeError` when `limit` is not a positive integer.
9
- */
10
- constructor(limit) {
11
- this.limit = limit;
12
- if (!Number.isInteger(limit) || limit <= 0) {
13
- throw new RangeError(
14
- `Semaphore limit must be a positive integer; received ${limit}. A non-positive limit produces a deadlocked semaphore — fail fast at construction instead.`
15
- );
16
- }
17
- }
18
- current = 0;
19
- queue = [];
20
- /**
21
- * Acquires a slot, waiting if the limit has been reached.
22
- * @returns A promise that resolves when a slot is available.
23
- */
24
- async acquire() {
25
- if (this.current < this.limit) {
26
- this.current++;
27
- return;
28
- }
29
- return new Promise((resolve) => {
30
- this.queue.push(resolve);
31
- });
32
- }
33
- /** Releases a slot, unblocking the next queued caller if any. */
34
- release() {
35
- const next = this.queue.shift();
36
- if (next) {
37
- next();
38
- } else {
39
- this.current--;
40
- }
41
- }
42
- /**
43
- * Number of slots currently available.
44
- *
45
- * @returns The count of free concurrency slots.
46
- */
47
- get available() {
48
- return this.limit - this.current;
49
- }
50
- }
51
- export {
52
- Semaphore
1
+ //#region src/upload/concurrency.ts
2
+ /**
3
+ * Bounded concurrency primitive.
4
+ *
5
+ * Limits the number of concurrent operations to a fixed maximum. Callers
6
+ * {@link acquire} a slot before starting work and {@link release} it when done.
7
+ * If all slots are taken, `acquire` returns a promise that resolves when a slot
8
+ * becomes available.
9
+ */
10
+ var Semaphore = class {
11
+ limit;
12
+ current = 0;
13
+ queue = [];
14
+ /**
15
+ * @param limit - Maximum number of concurrent acquisitions. Must be a
16
+ * positive integer; values `<= 0` would create a semaphore that
17
+ * never lets anything through (all `acquire()` calls would queue
18
+ * forever), so the constructor throws fast instead.
19
+ *
20
+ * @throws `RangeError` when `limit` is not a positive integer.
21
+ */
22
+ constructor(limit) {
23
+ this.limit = limit;
24
+ if (!Number.isInteger(limit) || limit <= 0) throw new RangeError(`Semaphore limit must be a positive integer; received ${limit}. A non-positive limit produces a deadlocked semaphore — fail fast at construction instead.`);
25
+ }
26
+ /**
27
+ * Acquires a slot, waiting if the limit has been reached.
28
+ * @returns A promise that resolves when a slot is available.
29
+ */
30
+ async acquire() {
31
+ if (this.current < this.limit) {
32
+ this.current++;
33
+ return;
34
+ }
35
+ return new Promise((resolve) => {
36
+ this.queue.push(resolve);
37
+ });
38
+ }
39
+ /** Releases a slot, unblocking the next queued caller if any. */
40
+ release() {
41
+ const next = this.queue.shift();
42
+ if (next) next();
43
+ else this.current--;
44
+ }
45
+ /**
46
+ * Number of slots currently available.
47
+ *
48
+ * @returns The count of free concurrency slots.
49
+ */
50
+ get available() {
51
+ return this.limit - this.current;
52
+ }
53
53
  };
54
- //# sourceMappingURL=concurrency.js.map
54
+ /**
55
+ * Maps over an array with bounded concurrency.
56
+ *
57
+ * @param items - Input items to process.
58
+ * @param concurrency - Maximum number of items processed in parallel.
59
+ * @param fn - Async function applied to each item.
60
+ *
61
+ * @returns Results in the same order as the input items.
62
+ */
63
+ async function mapConcurrent(items, concurrency, fn) {
64
+ const sem = new Semaphore(concurrency);
65
+ const results = new Array(items.length);
66
+ const tasks = items.map(async (item, i) => {
67
+ await sem.acquire();
68
+ try {
69
+ results[i] = await fn(item, i);
70
+ } finally {
71
+ sem.release();
72
+ }
73
+ });
74
+ await Promise.all(tasks);
75
+ return results;
76
+ }
77
+ //#endregion
78
+ export { Semaphore, mapConcurrent };
79
+
80
+ //# sourceMappingURL=concurrency.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency.js","sources":["../../src/upload/concurrency.ts"],"sourcesContent":["/**\n * Bounded concurrency primitive.\n *\n * Limits the number of concurrent operations to a fixed maximum. Callers\n * {@link acquire} a slot before starting work and {@link release} it when done.\n * If all slots are taken, `acquire` returns a promise that resolves when a slot\n * becomes available.\n */\nexport class Semaphore {\n private current = 0\n private readonly queue: (() => void)[] = []\n\n /**\n * @param limit - Maximum number of concurrent acquisitions. Must be a\n * positive integer; values `<= 0` would create a semaphore that\n * never lets anything through (all `acquire()` calls would queue\n * forever), so the constructor throws fast instead.\n *\n * @throws `RangeError` when `limit` is not a positive integer.\n */\n constructor(private readonly limit: number) {\n if (!Number.isInteger(limit) || limit <= 0) {\n throw new RangeError(\n `Semaphore limit must be a positive integer; received ${limit}. A non-positive limit produces a deadlocked semaphore — fail fast at construction instead.`,\n )\n }\n }\n\n /**\n * Acquires a slot, waiting if the limit has been reached.\n * @returns A promise that resolves when a slot is available.\n */\n async acquire(): Promise<void> {\n if (this.current < this.limit) {\n this.current++\n return\n }\n return new Promise<void>((resolve) => {\n this.queue.push(resolve)\n })\n }\n\n /** Releases a slot, unblocking the next queued caller if any. */\n release(): void {\n const next = this.queue.shift()\n if (next) {\n next()\n } else {\n this.current--\n }\n }\n\n /**\n * Number of slots currently available.\n *\n * @returns The count of free concurrency slots.\n */\n get available(): number {\n return this.limit - this.current\n }\n}\n\n/**\n * Maps over an array with bounded concurrency.\n *\n * @param items - Input items to process.\n * @param concurrency - Maximum number of items processed in parallel.\n * @param fn - Async function applied to each item.\n *\n * @returns Results in the same order as the input items.\n */\nexport async function mapConcurrent<T, R>(\n items: readonly T[],\n concurrency: number,\n fn: (item: T, index: number) => Promise<R>,\n): Promise<R[]> {\n const sem = new Semaphore(concurrency)\n const results: R[] = new Array(items.length)\n const tasks = items.map(async (item, i) => {\n await sem.acquire()\n try {\n results[i] = await fn(item, i)\n } finally {\n sem.release()\n }\n })\n await Promise.all(tasks)\n return results\n}\n"],"names":[],"mappings":"AAQO,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYrB,YAA6B,OAAe;AAAf,SAAA,QAAA;AAC3B,QAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GAAG;AAC1C,YAAM,IAAI;AAAA,QACR,wDAAwD,KAAK;AAAA,MAAA;AAAA,IAEjE;AAAA,EACF;AAAA,EAjBQ,UAAU;AAAA,EACD,QAAwB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBzC,MAAM,UAAyB;AAC7B,QAAI,KAAK,UAAU,KAAK,OAAO;AAC7B,WAAK;AACL;AAAA,IACF;AACA,WAAO,IAAI,QAAc,CAAC,YAAY;AACpC,WAAK,MAAM,KAAK,OAAO;AAAA,IACzB,CAAC;AAAA,EACH;AAAA;AAAA,EAGA,UAAgB;AACd,UAAM,OAAO,KAAK,MAAM,MAAA;AACxB,QAAI,MAAM;AACR,WAAA;AAAA,IACF,OAAO;AACL,WAAK;AAAA,IACP;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,IAAI,YAAoB;AACtB,WAAO,KAAK,QAAQ,KAAK;AAAA,EAC3B;AACF;"}
1
+ {"version":3,"file":"concurrency.js","names":[],"sources":["../../src/upload/concurrency.ts"],"sourcesContent":["/**\n * Bounded concurrency primitive.\n *\n * Limits the number of concurrent operations to a fixed maximum. Callers\n * {@link acquire} a slot before starting work and {@link release} it when done.\n * If all slots are taken, `acquire` returns a promise that resolves when a slot\n * becomes available.\n */\nexport class Semaphore {\n private current = 0\n private readonly queue: (() => void)[] = []\n\n /**\n * @param limit - Maximum number of concurrent acquisitions. Must be a\n * positive integer; values `<= 0` would create a semaphore that\n * never lets anything through (all `acquire()` calls would queue\n * forever), so the constructor throws fast instead.\n *\n * @throws `RangeError` when `limit` is not a positive integer.\n */\n constructor(private readonly limit: number) {\n if (!Number.isInteger(limit) || limit <= 0) {\n throw new RangeError(\n `Semaphore limit must be a positive integer; received ${limit}. A non-positive limit produces a deadlocked semaphore — fail fast at construction instead.`,\n )\n }\n }\n\n /**\n * Acquires a slot, waiting if the limit has been reached.\n * @returns A promise that resolves when a slot is available.\n */\n async acquire(): Promise<void> {\n if (this.current < this.limit) {\n this.current++\n return\n }\n return new Promise<void>((resolve) => {\n this.queue.push(resolve)\n })\n }\n\n /** Releases a slot, unblocking the next queued caller if any. */\n release(): void {\n const next = this.queue.shift()\n if (next) {\n next()\n } else {\n this.current--\n }\n }\n\n /**\n * Number of slots currently available.\n *\n * @returns The count of free concurrency slots.\n */\n get available(): number {\n return this.limit - this.current\n }\n}\n\n/**\n * Maps over an array with bounded concurrency.\n *\n * @param items - Input items to process.\n * @param concurrency - Maximum number of items processed in parallel.\n * @param fn - Async function applied to each item.\n *\n * @returns Results in the same order as the input items.\n */\nexport async function mapConcurrent<T, R>(\n items: readonly T[],\n concurrency: number,\n fn: (item: T, index: number) => Promise<R>,\n): Promise<R[]> {\n const sem = new Semaphore(concurrency)\n const results: R[] = new Array(items.length)\n const tasks = items.map(async (item, i) => {\n await sem.acquire()\n try {\n results[i] = await fn(item, i)\n } finally {\n sem.release()\n }\n })\n await Promise.all(tasks)\n return results\n}\n"],"mappings":";;;;;;;;;AAQA,IAAa,YAAb,MAAuB;CAYQ;CAX7B,UAAkB;CAClB,QAAyC,CAAC;;;;;;;;;CAU1C,YAAY,OAAgC;EAAf,KAAA,QAAA;EAC3B,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GACvC,MAAM,IAAI,WACR,wDAAwD,MAAM,4FAChE;CAEJ;;;;;CAMA,MAAM,UAAyB;EAC7B,IAAI,KAAK,UAAU,KAAK,OAAO;GAC7B,KAAK;GACL;EACF;EACA,OAAO,IAAI,SAAe,YAAY;GACpC,KAAK,MAAM,KAAK,OAAO;EACzB,CAAC;CACH;;CAGA,UAAgB;EACd,MAAM,OAAO,KAAK,MAAM,MAAM;EAC9B,IAAI,MACF,KAAK;OAEL,KAAK;CAET;;;;;;CAOA,IAAI,YAAoB;EACtB,OAAO,KAAK,QAAQ,KAAK;CAC3B;AACF;;;;;;;;;;AAWA,eAAsB,cACpB,OACA,aACA,IACc;CACd,MAAM,MAAM,IAAI,UAAU,WAAW;CACrC,MAAM,UAAe,IAAI,MAAM,MAAM,MAAM;CAC3C,MAAM,QAAQ,MAAM,IAAI,OAAO,MAAM,MAAM;EACzC,MAAM,IAAI,QAAQ;EAClB,IAAI;GACF,QAAQ,KAAK,MAAM,GAAG,MAAM,CAAC;EAC/B,UAAU;GACR,IAAI,QAAQ;EACd;CACF,CAAC;CACD,MAAM,QAAQ,IAAI,KAAK;CACvB,OAAO;AACT"}
@@ -0,0 +1,54 @@
1
+ const require_errors_index = require("../errors/index.cjs");
2
+ const require_abort = require("../util/abort.cjs");
3
+ //#region src/upload/finish.ts
4
+ /**
5
+ * Calls `b2_finish_large_file` and classifies failures after dispatch that can
6
+ * hide an already-committed file as ambiguous finish failures.
7
+ *
8
+ * @param raw - Low-level B2 API client.
9
+ * @param accountInfo - Authorized account state.
10
+ * @param context - Finish request data and reconciliation metadata.
11
+ *
12
+ * @returns The completed file version metadata.
13
+ */
14
+ async function finishLargeFileWithAbortReconciliation(raw, accountInfo, context) {
15
+ context.signal?.throwIfAborted();
16
+ try {
17
+ return await raw.finishLargeFile(accountInfo.getApiUrl(), accountInfo.getAuthToken(), {
18
+ fileId: context.fileId,
19
+ partSha1Array: context.partSha1s
20
+ }, context.signal === void 0 && context.retry === void 0 ? void 0 : {
21
+ ...context.signal !== void 0 ? { signal: context.signal } : {},
22
+ ...context.retry !== void 0 ? { retry: context.retry } : {}
23
+ });
24
+ } catch (err) {
25
+ if (err instanceof require_errors_index.FinishLargeFileResponseBodyError) throw finishLargeFileResponseBodyErrorWithContext(err, context);
26
+ if (isAmbiguousFinishDispatchFailure(err, context.signal)) throw new require_errors_index.FinishLargeFileResponseBodyError("b2_finish_large_file failed after dispatch; final file state is ambiguous.", {
27
+ cause: err,
28
+ fileId: context.fileId,
29
+ bucketId: context.bucketId,
30
+ fileName: context.fileName
31
+ });
32
+ throw err;
33
+ }
34
+ }
35
+ function finishLargeFileResponseBodyErrorWithContext(err, context) {
36
+ if (err.fileId === context.fileId && err.bucketId === context.bucketId && err.fileName === context.fileName) return err;
37
+ return new require_errors_index.FinishLargeFileResponseBodyError(err.message, {
38
+ cause: err.cause ?? err,
39
+ fileId: context.fileId,
40
+ bucketId: context.bucketId,
41
+ fileName: context.fileName
42
+ });
43
+ }
44
+ function isAmbiguousFinishDispatchFailure(err, signal) {
45
+ if (err instanceof require_errors_index.NetworkError) return true;
46
+ if (require_abort.isTimeoutError(err)) return true;
47
+ if (signal?.aborted !== true) return false;
48
+ if (signal.reason !== void 0 && Object.is(err, signal.reason)) return true;
49
+ return require_abort.isAbortError(err);
50
+ }
51
+ //#endregion
52
+ exports.finishLargeFileWithAbortReconciliation = finishLargeFileWithAbortReconciliation;
53
+
54
+ //# sourceMappingURL=finish.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finish.cjs","names":[],"sources":["../../src/upload/finish.ts"],"sourcesContent":["import type { AccountInfo } from '../auth/account-info.ts'\nimport { FinishLargeFileResponseBodyError, NetworkError } from '../errors/index.ts'\nimport type { RetryOptions } from '../http/retry.ts'\nimport type { RawClient } from '../raw/index.ts'\nimport type { FileVersion } from '../types/file.ts'\nimport type { BucketId, LargeFileId } from '../types/ids.ts'\nimport { isAbortError, isTimeoutError } from '../util/abort.ts'\n\n/** Context for safely finalizing a large file. */\nexport interface FinishLargeFileContext {\n readonly fileId: LargeFileId\n readonly bucketId: BucketId\n readonly fileName: string\n readonly partSha1s: readonly string[]\n readonly signal?: AbortSignal\n readonly retry?: Partial<RetryOptions>\n}\n\n/**\n * Calls `b2_finish_large_file` and classifies failures after dispatch that can\n * hide an already-committed file as ambiguous finish failures.\n *\n * @param raw - Low-level B2 API client.\n * @param accountInfo - Authorized account state.\n * @param context - Finish request data and reconciliation metadata.\n *\n * @returns The completed file version metadata.\n */\nexport async function finishLargeFileWithAbortReconciliation(\n raw: RawClient,\n accountInfo: AccountInfo,\n context: FinishLargeFileContext,\n): Promise<FileVersion> {\n context.signal?.throwIfAborted()\n try {\n return await raw.finishLargeFile(\n accountInfo.getApiUrl(),\n accountInfo.getAuthToken(),\n {\n fileId: context.fileId,\n partSha1Array: context.partSha1s,\n },\n context.signal === undefined && context.retry === undefined\n ? undefined\n : {\n ...(context.signal !== undefined ? { signal: context.signal } : {}),\n ...(context.retry !== undefined ? { retry: context.retry } : {}),\n },\n )\n } catch (err) {\n if (err instanceof FinishLargeFileResponseBodyError) {\n throw finishLargeFileResponseBodyErrorWithContext(err, context)\n }\n if (isAmbiguousFinishDispatchFailure(err, context.signal)) {\n throw new FinishLargeFileResponseBodyError(\n 'b2_finish_large_file failed after dispatch; final file state is ambiguous.',\n {\n cause: err,\n fileId: context.fileId,\n bucketId: context.bucketId,\n fileName: context.fileName,\n },\n )\n }\n throw err\n }\n}\n\nfunction finishLargeFileResponseBodyErrorWithContext(\n err: FinishLargeFileResponseBodyError,\n context: FinishLargeFileContext,\n): FinishLargeFileResponseBodyError {\n if (\n err.fileId === context.fileId &&\n err.bucketId === context.bucketId &&\n err.fileName === context.fileName\n ) {\n return err\n }\n return new FinishLargeFileResponseBodyError(err.message, {\n cause: err.cause ?? err,\n fileId: context.fileId,\n bucketId: context.bucketId,\n fileName: context.fileName,\n })\n}\n\nfunction isAmbiguousFinishDispatchFailure(err: unknown, signal: AbortSignal | undefined): boolean {\n if (err instanceof NetworkError) return true\n if (isTimeoutError(err)) return true\n if (signal?.aborted !== true) return false\n if (signal.reason !== undefined && Object.is(err, signal.reason)) return true\n return isAbortError(err)\n}\n"],"mappings":";;;;;;;;;;;;;AA4BA,eAAsB,uCACpB,KACA,aACA,SACsB;CACtB,QAAQ,QAAQ,eAAe;CAC/B,IAAI;EACF,OAAO,MAAM,IAAI,gBACf,YAAY,UAAU,GACtB,YAAY,aAAa,GACzB;GACE,QAAQ,QAAQ;GAChB,eAAe,QAAQ;EACzB,GACA,QAAQ,WAAW,KAAA,KAAa,QAAQ,UAAU,KAAA,IAC9C,KAAA,IACA;GACE,GAAI,QAAQ,WAAW,KAAA,IAAY,EAAE,QAAQ,QAAQ,OAAO,IAAI,CAAC;GACjE,GAAI,QAAQ,UAAU,KAAA,IAAY,EAAE,OAAO,QAAQ,MAAM,IAAI,CAAC;EAChE,CACN;CACF,SAAS,KAAK;EACZ,IAAI,eAAe,qBAAA,kCACjB,MAAM,4CAA4C,KAAK,OAAO;EAEhE,IAAI,iCAAiC,KAAK,QAAQ,MAAM,GACtD,MAAM,IAAI,qBAAA,iCACR,8EACA;GACE,OAAO;GACP,QAAQ,QAAQ;GAChB,UAAU,QAAQ;GAClB,UAAU,QAAQ;EACpB,CACF;EAEF,MAAM;CACR;AACF;AAEA,SAAS,4CACP,KACA,SACkC;CAClC,IACE,IAAI,WAAW,QAAQ,UACvB,IAAI,aAAa,QAAQ,YACzB,IAAI,aAAa,QAAQ,UAEzB,OAAO;CAET,OAAO,IAAI,qBAAA,iCAAiC,IAAI,SAAS;EACvD,OAAO,IAAI,SAAS;EACpB,QAAQ,QAAQ;EAChB,UAAU,QAAQ;EAClB,UAAU,QAAQ;CACpB,CAAC;AACH;AAEA,SAAS,iCAAiC,KAAc,QAA0C;CAChG,IAAI,eAAe,qBAAA,cAAc,OAAO;CACxC,IAAI,cAAA,eAAe,GAAG,GAAG,OAAO;CAChC,IAAI,QAAQ,YAAY,MAAM,OAAO;CACrC,IAAI,OAAO,WAAW,KAAA,KAAa,OAAO,GAAG,KAAK,OAAO,MAAM,GAAG,OAAO;CACzE,OAAO,cAAA,aAAa,GAAG;AACzB"}
@@ -0,0 +1,26 @@
1
+ import { AccountInfo } from '../auth/account-info.js';
2
+ import { RetryOptions } from '../http/retry.js';
3
+ import { RawClient } from '../raw/index.js';
4
+ import { FileVersion } from '../types/file.js';
5
+ import { BucketId, LargeFileId } from '../types/ids.js';
6
+ /** Context for safely finalizing a large file. */
7
+ export interface FinishLargeFileContext {
8
+ readonly fileId: LargeFileId;
9
+ readonly bucketId: BucketId;
10
+ readonly fileName: string;
11
+ readonly partSha1s: readonly string[];
12
+ readonly signal?: AbortSignal;
13
+ readonly retry?: Partial<RetryOptions>;
14
+ }
15
+ /**
16
+ * Calls `b2_finish_large_file` and classifies failures after dispatch that can
17
+ * hide an already-committed file as ambiguous finish failures.
18
+ *
19
+ * @param raw - Low-level B2 API client.
20
+ * @param accountInfo - Authorized account state.
21
+ * @param context - Finish request data and reconciliation metadata.
22
+ *
23
+ * @returns The completed file version metadata.
24
+ */
25
+ export declare function finishLargeFileWithAbortReconciliation(raw: RawClient, accountInfo: AccountInfo, context: FinishLargeFileContext): Promise<FileVersion>;
26
+ //# sourceMappingURL=finish.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finish.d.ts","sourceRoot":"","sources":["../../src/upload/finish.js"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG5D,kDAAkD;AAClD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;CACvC;AAED;;;;;;;;;GASG;AACH,wBAAsB,sCAAsC,CAC1D,GAAG,EAAE,SAAS,EACd,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,WAAW,CAAC,CAkCtB"}
@@ -0,0 +1,26 @@
1
+ import { AccountInfo } from '../auth/account-info.js';
2
+ import { RetryOptions } from '../http/retry.js';
3
+ import { RawClient } from '../raw/index.js';
4
+ import { FileVersion } from '../types/file.js';
5
+ import { BucketId, LargeFileId } from '../types/ids.js';
6
+ /** Context for safely finalizing a large file. */
7
+ export interface FinishLargeFileContext {
8
+ readonly fileId: LargeFileId;
9
+ readonly bucketId: BucketId;
10
+ readonly fileName: string;
11
+ readonly partSha1s: readonly string[];
12
+ readonly signal?: AbortSignal;
13
+ readonly retry?: Partial<RetryOptions>;
14
+ }
15
+ /**
16
+ * Calls `b2_finish_large_file` and classifies failures after dispatch that can
17
+ * hide an already-committed file as ambiguous finish failures.
18
+ *
19
+ * @param raw - Low-level B2 API client.
20
+ * @param accountInfo - Authorized account state.
21
+ * @param context - Finish request data and reconciliation metadata.
22
+ *
23
+ * @returns The completed file version metadata.
24
+ */
25
+ export declare function finishLargeFileWithAbortReconciliation(raw: RawClient, accountInfo: AccountInfo, context: FinishLargeFileContext): Promise<FileVersion>;
26
+ //# sourceMappingURL=finish.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finish.d.ts","sourceRoot":"","sources":["../../src/upload/finish.js"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAG5D,kDAAkD;AAClD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;CACvC;AAED;;;;;;;;;GASG;AACH,wBAAsB,sCAAsC,CAC1D,GAAG,EAAE,SAAS,EACd,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,WAAW,CAAC,CAkCtB"}
@@ -0,0 +1,54 @@
1
+ import { FinishLargeFileResponseBodyError, NetworkError } from "../errors/index.js";
2
+ import { isAbortError, isTimeoutError } from "../util/abort.js";
3
+ //#region src/upload/finish.ts
4
+ /**
5
+ * Calls `b2_finish_large_file` and classifies failures after dispatch that can
6
+ * hide an already-committed file as ambiguous finish failures.
7
+ *
8
+ * @param raw - Low-level B2 API client.
9
+ * @param accountInfo - Authorized account state.
10
+ * @param context - Finish request data and reconciliation metadata.
11
+ *
12
+ * @returns The completed file version metadata.
13
+ */
14
+ async function finishLargeFileWithAbortReconciliation(raw, accountInfo, context) {
15
+ context.signal?.throwIfAborted();
16
+ try {
17
+ return await raw.finishLargeFile(accountInfo.getApiUrl(), accountInfo.getAuthToken(), {
18
+ fileId: context.fileId,
19
+ partSha1Array: context.partSha1s
20
+ }, context.signal === void 0 && context.retry === void 0 ? void 0 : {
21
+ ...context.signal !== void 0 ? { signal: context.signal } : {},
22
+ ...context.retry !== void 0 ? { retry: context.retry } : {}
23
+ });
24
+ } catch (err) {
25
+ if (err instanceof FinishLargeFileResponseBodyError) throw finishLargeFileResponseBodyErrorWithContext(err, context);
26
+ if (isAmbiguousFinishDispatchFailure(err, context.signal)) throw new FinishLargeFileResponseBodyError("b2_finish_large_file failed after dispatch; final file state is ambiguous.", {
27
+ cause: err,
28
+ fileId: context.fileId,
29
+ bucketId: context.bucketId,
30
+ fileName: context.fileName
31
+ });
32
+ throw err;
33
+ }
34
+ }
35
+ function finishLargeFileResponseBodyErrorWithContext(err, context) {
36
+ if (err.fileId === context.fileId && err.bucketId === context.bucketId && err.fileName === context.fileName) return err;
37
+ return new FinishLargeFileResponseBodyError(err.message, {
38
+ cause: err.cause ?? err,
39
+ fileId: context.fileId,
40
+ bucketId: context.bucketId,
41
+ fileName: context.fileName
42
+ });
43
+ }
44
+ function isAmbiguousFinishDispatchFailure(err, signal) {
45
+ if (err instanceof NetworkError) return true;
46
+ if (isTimeoutError(err)) return true;
47
+ if (signal?.aborted !== true) return false;
48
+ if (signal.reason !== void 0 && Object.is(err, signal.reason)) return true;
49
+ return isAbortError(err);
50
+ }
51
+ //#endregion
52
+ export { finishLargeFileWithAbortReconciliation };
53
+
54
+ //# sourceMappingURL=finish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finish.js","names":[],"sources":["../../src/upload/finish.ts"],"sourcesContent":["import type { AccountInfo } from '../auth/account-info.ts'\nimport { FinishLargeFileResponseBodyError, NetworkError } from '../errors/index.ts'\nimport type { RetryOptions } from '../http/retry.ts'\nimport type { RawClient } from '../raw/index.ts'\nimport type { FileVersion } from '../types/file.ts'\nimport type { BucketId, LargeFileId } from '../types/ids.ts'\nimport { isAbortError, isTimeoutError } from '../util/abort.ts'\n\n/** Context for safely finalizing a large file. */\nexport interface FinishLargeFileContext {\n readonly fileId: LargeFileId\n readonly bucketId: BucketId\n readonly fileName: string\n readonly partSha1s: readonly string[]\n readonly signal?: AbortSignal\n readonly retry?: Partial<RetryOptions>\n}\n\n/**\n * Calls `b2_finish_large_file` and classifies failures after dispatch that can\n * hide an already-committed file as ambiguous finish failures.\n *\n * @param raw - Low-level B2 API client.\n * @param accountInfo - Authorized account state.\n * @param context - Finish request data and reconciliation metadata.\n *\n * @returns The completed file version metadata.\n */\nexport async function finishLargeFileWithAbortReconciliation(\n raw: RawClient,\n accountInfo: AccountInfo,\n context: FinishLargeFileContext,\n): Promise<FileVersion> {\n context.signal?.throwIfAborted()\n try {\n return await raw.finishLargeFile(\n accountInfo.getApiUrl(),\n accountInfo.getAuthToken(),\n {\n fileId: context.fileId,\n partSha1Array: context.partSha1s,\n },\n context.signal === undefined && context.retry === undefined\n ? undefined\n : {\n ...(context.signal !== undefined ? { signal: context.signal } : {}),\n ...(context.retry !== undefined ? { retry: context.retry } : {}),\n },\n )\n } catch (err) {\n if (err instanceof FinishLargeFileResponseBodyError) {\n throw finishLargeFileResponseBodyErrorWithContext(err, context)\n }\n if (isAmbiguousFinishDispatchFailure(err, context.signal)) {\n throw new FinishLargeFileResponseBodyError(\n 'b2_finish_large_file failed after dispatch; final file state is ambiguous.',\n {\n cause: err,\n fileId: context.fileId,\n bucketId: context.bucketId,\n fileName: context.fileName,\n },\n )\n }\n throw err\n }\n}\n\nfunction finishLargeFileResponseBodyErrorWithContext(\n err: FinishLargeFileResponseBodyError,\n context: FinishLargeFileContext,\n): FinishLargeFileResponseBodyError {\n if (\n err.fileId === context.fileId &&\n err.bucketId === context.bucketId &&\n err.fileName === context.fileName\n ) {\n return err\n }\n return new FinishLargeFileResponseBodyError(err.message, {\n cause: err.cause ?? err,\n fileId: context.fileId,\n bucketId: context.bucketId,\n fileName: context.fileName,\n })\n}\n\nfunction isAmbiguousFinishDispatchFailure(err: unknown, signal: AbortSignal | undefined): boolean {\n if (err instanceof NetworkError) return true\n if (isTimeoutError(err)) return true\n if (signal?.aborted !== true) return false\n if (signal.reason !== undefined && Object.is(err, signal.reason)) return true\n return isAbortError(err)\n}\n"],"mappings":";;;;;;;;;;;;;AA4BA,eAAsB,uCACpB,KACA,aACA,SACsB;CACtB,QAAQ,QAAQ,eAAe;CAC/B,IAAI;EACF,OAAO,MAAM,IAAI,gBACf,YAAY,UAAU,GACtB,YAAY,aAAa,GACzB;GACE,QAAQ,QAAQ;GAChB,eAAe,QAAQ;EACzB,GACA,QAAQ,WAAW,KAAA,KAAa,QAAQ,UAAU,KAAA,IAC9C,KAAA,IACA;GACE,GAAI,QAAQ,WAAW,KAAA,IAAY,EAAE,QAAQ,QAAQ,OAAO,IAAI,CAAC;GACjE,GAAI,QAAQ,UAAU,KAAA,IAAY,EAAE,OAAO,QAAQ,MAAM,IAAI,CAAC;EAChE,CACN;CACF,SAAS,KAAK;EACZ,IAAI,eAAe,kCACjB,MAAM,4CAA4C,KAAK,OAAO;EAEhE,IAAI,iCAAiC,KAAK,QAAQ,MAAM,GACtD,MAAM,IAAI,iCACR,8EACA;GACE,OAAO;GACP,QAAQ,QAAQ;GAChB,UAAU,QAAQ;GAClB,UAAU,QAAQ;EACpB,CACF;EAEF,MAAM;CACR;AACF;AAEA,SAAS,4CACP,KACA,SACkC;CAClC,IACE,IAAI,WAAW,QAAQ,UACvB,IAAI,aAAa,QAAQ,YACzB,IAAI,aAAa,QAAQ,UAEzB,OAAO;CAET,OAAO,IAAI,iCAAiC,IAAI,SAAS;EACvD,OAAO,IAAI,SAAS;EACpB,QAAQ,QAAQ;EAChB,UAAU,QAAQ;EAClB,UAAU,QAAQ;CACpB,CAAC;AACH;AAEA,SAAS,iCAAiC,KAAc,QAA0C;CAChG,IAAI,eAAe,cAAc,OAAO;CACxC,IAAI,eAAe,GAAG,GAAG,OAAO;CAChC,IAAI,QAAQ,YAAY,MAAM,OAAO;CACrC,IAAI,OAAO,WAAW,KAAA,KAAa,OAAO,GAAG,KAAK,OAAO,MAAM,GAAG,OAAO;CACzE,OAAO,aAAa,GAAG;AACzB"}