@protontech/drive-sdk 0.1.0 → 0.1.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 (447) hide show
  1. package/dist/cache/memoryCache.js +0 -1
  2. package/dist/cache/memoryCache.js.map +1 -1
  3. package/dist/cache/memoryCache.test.js +2 -4
  4. package/dist/cache/memoryCache.test.js.map +1 -1
  5. package/dist/cache/nullCache.js +0 -1
  6. package/dist/cache/nullCache.js.map +1 -1
  7. package/dist/crypto/driveCrypto.d.ts +2 -5
  8. package/dist/crypto/driveCrypto.js +7 -12
  9. package/dist/crypto/driveCrypto.js.map +1 -1
  10. package/dist/crypto/driveCrypto.test.js +14 -14
  11. package/dist/crypto/openPGPCrypto.js +3 -3
  12. package/dist/crypto/openPGPCrypto.js.map +1 -1
  13. package/dist/diagnostic/eventsGenerator.js +1 -1
  14. package/dist/diagnostic/eventsGenerator.js.map +1 -1
  15. package/dist/diagnostic/httpClient.d.ts +1 -1
  16. package/dist/diagnostic/httpClient.js.map +1 -1
  17. package/dist/diagnostic/index.d.ts +3 -3
  18. package/dist/diagnostic/index.js.map +1 -1
  19. package/dist/diagnostic/integrityVerificationStream.js +1 -1
  20. package/dist/diagnostic/integrityVerificationStream.js.map +1 -1
  21. package/dist/diagnostic/interface.d.ts +2 -2
  22. package/dist/diagnostic/sdkDiagnostic.d.ts +3 -3
  23. package/dist/diagnostic/sdkDiagnostic.js +8 -2
  24. package/dist/diagnostic/sdkDiagnostic.js.map +1 -1
  25. package/dist/diagnostic/sdkDiagnosticFull.d.ts +4 -4
  26. package/dist/diagnostic/sdkDiagnosticFull.js.map +1 -1
  27. package/dist/diagnostic/telemetry.js.map +1 -1
  28. package/dist/diagnostic/zipGenerators.js +2 -2
  29. package/dist/diagnostic/zipGenerators.js.map +1 -1
  30. package/dist/diagnostic/zipGenerators.test.js +1 -1
  31. package/dist/diagnostic/zipGenerators.test.js.map +1 -1
  32. package/dist/interface/events.d.ts +2 -4
  33. package/dist/interface/events.js.map +1 -1
  34. package/dist/interface/index.d.ts +5 -5
  35. package/dist/interface/index.js +0 -1
  36. package/dist/interface/index.js.map +1 -1
  37. package/dist/interface/result.js.map +1 -1
  38. package/dist/interface/sharing.d.ts +1 -0
  39. package/dist/interface/sharing.js.map +1 -1
  40. package/dist/interface/telemetry.js +0 -8
  41. package/dist/interface/telemetry.js.map +1 -1
  42. package/dist/interface/thumbnail.js.map +1 -1
  43. package/dist/interface/upload.d.ts +1 -1
  44. package/dist/internal/apiService/apiService.d.ts +1 -1
  45. package/dist/internal/apiService/apiService.js +7 -11
  46. package/dist/internal/apiService/apiService.js.map +1 -1
  47. package/dist/internal/apiService/apiService.test.js +55 -48
  48. package/dist/internal/apiService/apiService.test.js.map +1 -1
  49. package/dist/internal/apiService/coreTypes.d.ts +2356 -2356
  50. package/dist/internal/apiService/driveTypes.d.ts +1680 -1680
  51. package/dist/internal/apiService/errors.js +14 -8
  52. package/dist/internal/apiService/errors.js.map +1 -1
  53. package/dist/internal/apiService/errors.test.js +17 -12
  54. package/dist/internal/apiService/errors.test.js.map +1 -1
  55. package/dist/internal/apiService/transformers.d.ts +1 -1
  56. package/dist/internal/apiService/transformers.js +1 -1
  57. package/dist/internal/asyncIteratorMap.test.js +2 -2
  58. package/dist/internal/asyncIteratorMap.test.js.map +1 -1
  59. package/dist/internal/asyncIteratorRace.d.ts +13 -0
  60. package/dist/internal/asyncIteratorRace.js +59 -0
  61. package/dist/internal/asyncIteratorRace.js.map +1 -0
  62. package/dist/internal/asyncIteratorRace.test.d.ts +1 -0
  63. package/dist/internal/asyncIteratorRace.test.js +119 -0
  64. package/dist/internal/asyncIteratorRace.test.js.map +1 -0
  65. package/dist/internal/batch.d.ts +1 -0
  66. package/dist/internal/batch.js +12 -0
  67. package/dist/internal/batch.js.map +1 -0
  68. package/dist/internal/batch.test.d.ts +1 -0
  69. package/dist/internal/batch.test.js +41 -0
  70. package/dist/internal/batch.test.js.map +1 -0
  71. package/dist/internal/batchLoading.js.map +1 -1
  72. package/dist/internal/batchLoading.test.js +13 -13
  73. package/dist/internal/batchLoading.test.js.map +1 -1
  74. package/dist/internal/devices/apiService.d.ts +3 -3
  75. package/dist/internal/devices/apiService.js +2 -2
  76. package/dist/internal/devices/apiService.js.map +1 -1
  77. package/dist/internal/devices/cryptoService.js +1 -2
  78. package/dist/internal/devices/cryptoService.js.map +1 -1
  79. package/dist/internal/devices/index.d.ts +5 -5
  80. package/dist/internal/devices/index.js.map +1 -1
  81. package/dist/internal/devices/interface.d.ts +3 -3
  82. package/dist/internal/devices/manager.js +2 -2
  83. package/dist/internal/devices/manager.js.map +1 -1
  84. package/dist/internal/devices/manager.test.js +38 -7
  85. package/dist/internal/devices/manager.test.js.map +1 -1
  86. package/dist/internal/download/apiService.d.ts +4 -4
  87. package/dist/internal/download/apiService.js +0 -1
  88. package/dist/internal/download/apiService.js.map +1 -1
  89. package/dist/internal/download/cryptoService.d.ts +4 -4
  90. package/dist/internal/download/cryptoService.js +6 -5
  91. package/dist/internal/download/cryptoService.js.map +1 -1
  92. package/dist/internal/download/fileDownloader.d.ts +4 -4
  93. package/dist/internal/download/fileDownloader.js +3 -2
  94. package/dist/internal/download/fileDownloader.js.map +1 -1
  95. package/dist/internal/download/fileDownloader.test.js +1 -1
  96. package/dist/internal/download/fileDownloader.test.js.map +1 -1
  97. package/dist/internal/download/index.d.ts +5 -5
  98. package/dist/internal/download/index.js +5 -5
  99. package/dist/internal/download/index.js.map +1 -1
  100. package/dist/internal/download/interface.d.ts +3 -4
  101. package/dist/internal/download/telemetry.d.ts +3 -3
  102. package/dist/internal/download/telemetry.js +4 -2
  103. package/dist/internal/download/telemetry.js.map +1 -1
  104. package/dist/internal/download/telemetry.test.js +8 -8
  105. package/dist/internal/download/telemetry.test.js.map +1 -1
  106. package/dist/internal/download/thumbnailDownloader.d.ts +4 -4
  107. package/dist/internal/download/thumbnailDownloader.js +6 -6
  108. package/dist/internal/download/thumbnailDownloader.js.map +1 -1
  109. package/dist/internal/download/thumbnailDownloader.test.js.map +1 -1
  110. package/dist/internal/errors.d.ts +1 -1
  111. package/dist/internal/errors.js +1 -3
  112. package/dist/internal/errors.js.map +1 -1
  113. package/dist/internal/events/apiService.d.ts +2 -2
  114. package/dist/internal/events/apiService.js +9 -5
  115. package/dist/internal/events/apiService.js.map +1 -1
  116. package/dist/internal/events/coreEventManager.d.ts +3 -3
  117. package/dist/internal/events/coreEventManager.js.map +1 -1
  118. package/dist/internal/events/coreEventManager.test.js +14 -14
  119. package/dist/internal/events/eventManager.d.ts +1 -1
  120. package/dist/internal/events/eventManager.js +0 -1
  121. package/dist/internal/events/eventManager.js.map +1 -1
  122. package/dist/internal/events/eventManager.test.js +34 -25
  123. package/dist/internal/events/eventManager.test.js.map +1 -1
  124. package/dist/internal/events/index.d.ts +6 -6
  125. package/dist/internal/events/index.js.map +1 -1
  126. package/dist/internal/events/interface.d.ts +1 -1
  127. package/dist/internal/events/interface.js +0 -1
  128. package/dist/internal/events/interface.js.map +1 -1
  129. package/dist/internal/events/volumeEventManager.d.ts +3 -3
  130. package/dist/internal/events/volumeEventManager.js.map +1 -1
  131. package/dist/internal/events/volumeEventManager.test.js +55 -55
  132. package/dist/internal/events/volumeEventManager.test.js.map +1 -1
  133. package/dist/internal/nodes/apiService.d.ts +4 -3
  134. package/dist/internal/nodes/apiService.js +36 -15
  135. package/dist/internal/nodes/apiService.js.map +1 -1
  136. package/dist/internal/nodes/apiService.test.js +60 -41
  137. package/dist/internal/nodes/apiService.test.js.map +1 -1
  138. package/dist/internal/nodes/cache.d.ts +5 -5
  139. package/dist/internal/nodes/cache.js +14 -7
  140. package/dist/internal/nodes/cache.js.map +1 -1
  141. package/dist/internal/nodes/cache.test.js +31 -9
  142. package/dist/internal/nodes/cache.test.js.map +1 -1
  143. package/dist/internal/nodes/cryptoCache.d.ts +2 -2
  144. package/dist/internal/nodes/cryptoCache.js.map +1 -1
  145. package/dist/internal/nodes/cryptoCache.test.js +24 -4
  146. package/dist/internal/nodes/cryptoCache.test.js.map +1 -1
  147. package/dist/internal/nodes/cryptoService.d.ts +3 -3
  148. package/dist/internal/nodes/cryptoService.js +11 -17
  149. package/dist/internal/nodes/cryptoService.js.map +1 -1
  150. package/dist/internal/nodes/cryptoService.test.js +320 -241
  151. package/dist/internal/nodes/cryptoService.test.js.map +1 -1
  152. package/dist/internal/nodes/events.d.ts +3 -3
  153. package/dist/internal/nodes/events.js.map +1 -1
  154. package/dist/internal/nodes/events.test.js +27 -21
  155. package/dist/internal/nodes/events.test.js.map +1 -1
  156. package/dist/internal/nodes/extendedAttributes.d.ts +1 -1
  157. package/dist/internal/nodes/extendedAttributes.js +3 -1
  158. package/dist/internal/nodes/extendedAttributes.js.map +1 -1
  159. package/dist/internal/nodes/extendedAttributes.test.js +7 -10
  160. package/dist/internal/nodes/extendedAttributes.test.js.map +1 -1
  161. package/dist/internal/nodes/index.d.ts +10 -10
  162. package/dist/internal/nodes/index.js.map +1 -1
  163. package/dist/internal/nodes/index.test.d.ts +1 -0
  164. package/dist/internal/nodes/index.test.js +106 -0
  165. package/dist/internal/nodes/index.test.js.map +1 -0
  166. package/dist/internal/nodes/interface.d.ts +2 -2
  167. package/dist/internal/nodes/nodesAccess.d.ts +7 -7
  168. package/dist/internal/nodes/nodesAccess.js +28 -16
  169. package/dist/internal/nodes/nodesAccess.js.map +1 -1
  170. package/dist/internal/nodes/nodesAccess.test.js +39 -13
  171. package/dist/internal/nodes/nodesAccess.test.js.map +1 -1
  172. package/dist/internal/nodes/nodesManagement.d.ts +6 -6
  173. package/dist/internal/nodes/nodesManagement.js +9 -7
  174. package/dist/internal/nodes/nodesManagement.js.map +1 -1
  175. package/dist/internal/nodes/nodesManagement.test.js +9 -9
  176. package/dist/internal/nodes/nodesManagement.test.js.map +1 -1
  177. package/dist/internal/nodes/nodesRevisions.d.ts +4 -4
  178. package/dist/internal/nodes/nodesRevisions.js.map +1 -1
  179. package/dist/internal/photos/albums.d.ts +3 -3
  180. package/dist/internal/photos/albums.js.map +1 -1
  181. package/dist/internal/photos/apiService.d.ts +1 -1
  182. package/dist/internal/photos/apiService.js +3 -6
  183. package/dist/internal/photos/apiService.js.map +1 -1
  184. package/dist/internal/photos/cache.d.ts +1 -1
  185. package/dist/internal/photos/index.d.ts +5 -5
  186. package/dist/internal/photos/index.js.map +1 -1
  187. package/dist/internal/photos/interface.d.ts +2 -2
  188. package/dist/internal/photos/photosTimeline.d.ts +3 -3
  189. package/dist/internal/photos/photosTimeline.js +1 -2
  190. package/dist/internal/photos/photosTimeline.js.map +1 -1
  191. package/dist/internal/sdkEvents.d.ts +1 -1
  192. package/dist/internal/sdkEvents.js +2 -7
  193. package/dist/internal/sdkEvents.js.map +1 -1
  194. package/dist/internal/sdkEvents.test.js +8 -8
  195. package/dist/internal/shares/apiService.d.ts +2 -2
  196. package/dist/internal/shares/apiService.js +5 -3
  197. package/dist/internal/shares/apiService.js.map +1 -1
  198. package/dist/internal/shares/cache.d.ts +2 -2
  199. package/dist/internal/shares/cache.js +12 -6
  200. package/dist/internal/shares/cache.js.map +1 -1
  201. package/dist/internal/shares/cache.test.js.map +1 -1
  202. package/dist/internal/shares/cryptoCache.d.ts +2 -2
  203. package/dist/internal/shares/cryptoCache.test.js +8 -2
  204. package/dist/internal/shares/cryptoCache.test.js.map +1 -1
  205. package/dist/internal/shares/cryptoService.d.ts +3 -3
  206. package/dist/internal/shares/cryptoService.js.map +1 -1
  207. package/dist/internal/shares/cryptoService.test.js +42 -42
  208. package/dist/internal/shares/cryptoService.test.js.map +1 -1
  209. package/dist/internal/shares/index.d.ts +4 -4
  210. package/dist/internal/shares/index.js.map +1 -1
  211. package/dist/internal/shares/interface.d.ts +2 -2
  212. package/dist/internal/shares/manager.d.ts +7 -7
  213. package/dist/internal/shares/manager.js.map +1 -1
  214. package/dist/internal/shares/manager.test.js +71 -63
  215. package/dist/internal/shares/manager.test.js.map +1 -1
  216. package/dist/internal/sharing/apiService.d.ts +4 -4
  217. package/dist/internal/sharing/apiService.js +4 -3
  218. package/dist/internal/sharing/apiService.js.map +1 -1
  219. package/dist/internal/sharing/cache.d.ts +1 -1
  220. package/dist/internal/sharing/cache.test.js +33 -33
  221. package/dist/internal/sharing/cryptoService.d.ts +3 -3
  222. package/dist/internal/sharing/cryptoService.js +3 -5
  223. package/dist/internal/sharing/cryptoService.js.map +1 -1
  224. package/dist/internal/sharing/cryptoService.test.js +39 -39
  225. package/dist/internal/sharing/cryptoService.test.js.map +1 -1
  226. package/dist/internal/sharing/events.d.ts +4 -4
  227. package/dist/internal/sharing/events.js +0 -1
  228. package/dist/internal/sharing/events.js.map +1 -1
  229. package/dist/internal/sharing/events.test.js +39 -40
  230. package/dist/internal/sharing/events.test.js.map +1 -1
  231. package/dist/internal/sharing/index.d.ts +6 -6
  232. package/dist/internal/sharing/index.js.map +1 -1
  233. package/dist/internal/sharing/interface.d.ts +5 -4
  234. package/dist/internal/sharing/sharingAccess.d.ts +6 -6
  235. package/dist/internal/sharing/sharingAccess.js +8 -4
  236. package/dist/internal/sharing/sharingAccess.js.map +1 -1
  237. package/dist/internal/sharing/sharingAccess.test.js +45 -39
  238. package/dist/internal/sharing/sharingAccess.test.js.map +1 -1
  239. package/dist/internal/sharing/sharingManagement.d.ts +4 -4
  240. package/dist/internal/sharing/sharingManagement.js +5 -7
  241. package/dist/internal/sharing/sharingManagement.js.map +1 -1
  242. package/dist/internal/sharing/sharingManagement.test.js +297 -248
  243. package/dist/internal/sharing/sharingManagement.test.js.map +1 -1
  244. package/dist/internal/uids.js.map +1 -1
  245. package/dist/internal/upload/apiService.d.ts +3 -3
  246. package/dist/internal/upload/apiService.js +1 -1
  247. package/dist/internal/upload/apiService.js.map +1 -1
  248. package/dist/internal/upload/blockVerifier.d.ts +3 -3
  249. package/dist/internal/upload/blockVerifier.js +1 -1
  250. package/dist/internal/upload/blockVerifier.js.map +1 -1
  251. package/dist/internal/upload/chunkStreamReader.test.js +6 -6
  252. package/dist/internal/upload/cryptoService.d.ts +4 -4
  253. package/dist/internal/upload/cryptoService.js +4 -4
  254. package/dist/internal/upload/cryptoService.js.map +1 -1
  255. package/dist/internal/upload/digests.js.map +1 -1
  256. package/dist/internal/upload/fileUploader.d.ts +6 -6
  257. package/dist/internal/upload/fileUploader.js.map +1 -1
  258. package/dist/internal/upload/fileUploader.test.js.map +1 -1
  259. package/dist/internal/upload/index.d.ts +5 -5
  260. package/dist/internal/upload/index.js.map +1 -1
  261. package/dist/internal/upload/interface.d.ts +3 -3
  262. package/dist/internal/upload/manager.d.ts +4 -4
  263. package/dist/internal/upload/manager.js +7 -5
  264. package/dist/internal/upload/manager.js.map +1 -1
  265. package/dist/internal/upload/manager.test.js +137 -123
  266. package/dist/internal/upload/manager.test.js.map +1 -1
  267. package/dist/internal/upload/streamUploader.d.ts +6 -6
  268. package/dist/internal/upload/streamUploader.js +8 -6
  269. package/dist/internal/upload/streamUploader.js.map +1 -1
  270. package/dist/internal/upload/streamUploader.test.js +16 -11
  271. package/dist/internal/upload/streamUploader.test.js.map +1 -1
  272. package/dist/internal/upload/telemetry.d.ts +3 -3
  273. package/dist/internal/upload/telemetry.js +5 -3
  274. package/dist/internal/upload/telemetry.js.map +1 -1
  275. package/dist/internal/upload/telemetry.test.js +8 -8
  276. package/dist/internal/upload/telemetry.test.js.map +1 -1
  277. package/dist/protonDriveClient.d.ts +8 -8
  278. package/dist/protonDriveClient.js +12 -9
  279. package/dist/protonDriveClient.js.map +1 -1
  280. package/dist/protonDrivePhotosClient.js.map +1 -1
  281. package/dist/telemetry.js +18 -15
  282. package/dist/telemetry.js.map +1 -1
  283. package/dist/tests/logger.js.map +1 -1
  284. package/dist/tests/telemetry.d.ts +1 -1
  285. package/dist/transformers.js +4 -2
  286. package/dist/transformers.js.map +1 -1
  287. package/package.json +1 -1
  288. package/src/cache/interface.ts +22 -22
  289. package/src/cache/memoryCache.test.ts +7 -7
  290. package/src/cache/memoryCache.ts +4 -4
  291. package/src/cache/nullCache.ts +1 -1
  292. package/src/config.ts +5 -5
  293. package/src/crypto/driveCrypto.test.ts +15 -15
  294. package/src/crypto/driveCrypto.ts +120 -156
  295. package/src/crypto/hmac.ts +1 -1
  296. package/src/crypto/interface.ts +63 -72
  297. package/src/crypto/openPGPCrypto.ts +74 -94
  298. package/src/crypto/utils.ts +1 -1
  299. package/src/diagnostic/eventsGenerator.ts +2 -2
  300. package/src/diagnostic/httpClient.ts +6 -2
  301. package/src/diagnostic/index.ts +12 -10
  302. package/src/diagnostic/integrityVerificationStream.ts +3 -4
  303. package/src/diagnostic/interface.ts +81 -81
  304. package/src/diagnostic/sdkDiagnostic.ts +35 -24
  305. package/src/diagnostic/sdkDiagnosticFull.ts +16 -19
  306. package/src/diagnostic/telemetry.ts +4 -1
  307. package/src/diagnostic/zipGenerators.test.ts +1 -1
  308. package/src/diagnostic/zipGenerators.ts +3 -3
  309. package/src/errors.ts +21 -21
  310. package/src/index.ts +3 -3
  311. package/src/interface/account.ts +10 -10
  312. package/src/interface/author.ts +6 -6
  313. package/src/interface/config.ts +4 -4
  314. package/src/interface/devices.ts +6 -6
  315. package/src/interface/download.ts +12 -9
  316. package/src/interface/events.ts +45 -39
  317. package/src/interface/httpClient.ts +11 -11
  318. package/src/interface/index.ts +76 -19
  319. package/src/interface/nodes.ts +47 -49
  320. package/src/interface/result.ts +1 -3
  321. package/src/interface/sharing.ts +60 -57
  322. package/src/interface/telemetry.ts +74 -74
  323. package/src/interface/thumbnail.ts +5 -6
  324. package/src/interface/upload.ts +20 -12
  325. package/src/internal/apiService/apiService.test.ts +109 -76
  326. package/src/internal/apiService/apiService.ts +40 -26
  327. package/src/internal/apiService/coreTypes.ts +2474 -2463
  328. package/src/internal/apiService/driveTypes.ts +1868 -1822
  329. package/src/internal/apiService/errorCodes.ts +4 -4
  330. package/src/internal/apiService/errors.test.ts +25 -23
  331. package/src/internal/apiService/errors.ts +15 -9
  332. package/src/internal/apiService/index.ts +1 -1
  333. package/src/internal/apiService/transformers.ts +2 -2
  334. package/src/internal/asyncIteratorMap.test.ts +4 -4
  335. package/src/internal/asyncIteratorMap.ts +1 -1
  336. package/src/internal/asyncIteratorRace.test.ts +149 -0
  337. package/src/internal/asyncIteratorRace.ts +79 -0
  338. package/src/internal/batch.test.ts +50 -0
  339. package/src/internal/batch.ts +9 -0
  340. package/src/internal/batchLoading.test.ts +13 -14
  341. package/src/internal/batchLoading.ts +8 -8
  342. package/src/internal/devices/apiService.ts +58 -51
  343. package/src/internal/devices/cryptoService.ts +22 -17
  344. package/src/internal/devices/index.ts +17 -10
  345. package/src/internal/devices/interface.ts +21 -12
  346. package/src/internal/devices/manager.test.ts +40 -9
  347. package/src/internal/devices/manager.ts +3 -3
  348. package/src/internal/download/apiService.ts +66 -49
  349. package/src/internal/download/cryptoService.ts +34 -18
  350. package/src/internal/download/fileDownloader.test.ts +25 -9
  351. package/src/internal/download/fileDownloader.ts +36 -18
  352. package/src/internal/download/index.ts +19 -19
  353. package/src/internal/download/interface.ts +19 -20
  354. package/src/internal/download/queue.ts +3 -3
  355. package/src/internal/download/telemetry.test.ts +11 -11
  356. package/src/internal/download/telemetry.ts +24 -14
  357. package/src/internal/download/thumbnailDownloader.test.ts +11 -6
  358. package/src/internal/download/thumbnailDownloader.ts +43 -32
  359. package/src/internal/errors.ts +7 -5
  360. package/src/internal/events/apiService.ts +30 -17
  361. package/src/internal/events/coreEventManager.test.ts +18 -18
  362. package/src/internal/events/coreEventManager.ts +9 -6
  363. package/src/internal/events/eventManager.test.ts +51 -46
  364. package/src/internal/events/eventManager.ts +6 -5
  365. package/src/internal/events/index.ts +24 -14
  366. package/src/internal/events/interface.ts +47 -39
  367. package/src/internal/events/volumeEventManager.test.ts +61 -65
  368. package/src/internal/events/volumeEventManager.ts +18 -9
  369. package/src/internal/nodes/apiService.test.ts +197 -147
  370. package/src/internal/nodes/apiService.ts +288 -174
  371. package/src/internal/nodes/cache.test.ts +48 -20
  372. package/src/internal/nodes/cache.ts +60 -44
  373. package/src/internal/nodes/cryptoCache.test.ts +34 -14
  374. package/src/internal/nodes/cryptoCache.ts +10 -5
  375. package/src/internal/nodes/cryptoService.test.ts +492 -351
  376. package/src/internal/nodes/cryptoService.ts +170 -88
  377. package/src/internal/nodes/events.test.ts +38 -28
  378. package/src/internal/nodes/events.ts +7 -5
  379. package/src/internal/nodes/extendedAttributes.test.ts +28 -24
  380. package/src/internal/nodes/extendedAttributes.ts +20 -15
  381. package/src/internal/nodes/index.test.ts +133 -0
  382. package/src/internal/nodes/index.ts +27 -15
  383. package/src/internal/nodes/interface.ts +42 -29
  384. package/src/internal/nodes/nodesAccess.test.ts +124 -58
  385. package/src/internal/nodes/nodesAccess.ts +73 -49
  386. package/src/internal/nodes/nodesManagement.test.ts +32 -31
  387. package/src/internal/nodes/nodesManagement.ts +39 -32
  388. package/src/internal/nodes/nodesRevisions.ts +7 -7
  389. package/src/internal/nodes/validations.ts +2 -2
  390. package/src/internal/photos/albums.ts +5 -5
  391. package/src/internal/photos/apiService.ts +4 -7
  392. package/src/internal/photos/cache.ts +1 -1
  393. package/src/internal/photos/index.ts +8 -8
  394. package/src/internal/photos/interface.ts +2 -2
  395. package/src/internal/photos/photosTimeline.ts +4 -5
  396. package/src/internal/sdkEvents.test.ts +10 -10
  397. package/src/internal/sdkEvents.ts +5 -13
  398. package/src/internal/shares/apiService.ts +44 -33
  399. package/src/internal/shares/cache.test.ts +6 -4
  400. package/src/internal/shares/cache.ts +21 -12
  401. package/src/internal/shares/cryptoCache.test.ts +17 -11
  402. package/src/internal/shares/cryptoCache.ts +4 -4
  403. package/src/internal/shares/cryptoService.test.ts +72 -74
  404. package/src/internal/shares/cryptoService.ts +48 -23
  405. package/src/internal/shares/index.ts +23 -11
  406. package/src/internal/shares/interface.ts +8 -8
  407. package/src/internal/shares/manager.test.ts +88 -80
  408. package/src/internal/shares/manager.ts +19 -19
  409. package/src/internal/sharing/apiService.ts +282 -175
  410. package/src/internal/sharing/cache.test.ts +35 -35
  411. package/src/internal/sharing/cache.ts +2 -2
  412. package/src/internal/sharing/cryptoService.test.ts +58 -46
  413. package/src/internal/sharing/cryptoService.ts +121 -84
  414. package/src/internal/sharing/events.test.ts +45 -49
  415. package/src/internal/sharing/events.ts +9 -6
  416. package/src/internal/sharing/index.ts +22 -11
  417. package/src/internal/sharing/interface.ts +40 -40
  418. package/src/internal/sharing/sharingAccess.test.ts +71 -65
  419. package/src/internal/sharing/sharingAccess.ts +39 -21
  420. package/src/internal/sharing/sharingManagement.test.ts +398 -298
  421. package/src/internal/sharing/sharingManagement.ts +138 -65
  422. package/src/internal/uids.ts +1 -1
  423. package/src/internal/upload/apiService.ts +167 -117
  424. package/src/internal/upload/blockVerifier.ts +8 -6
  425. package/src/internal/upload/chunkStreamReader.test.ts +7 -7
  426. package/src/internal/upload/cryptoService.ts +42 -36
  427. package/src/internal/upload/digests.ts +2 -2
  428. package/src/internal/upload/fileUploader.test.ts +15 -3
  429. package/src/internal/upload/fileUploader.ts +39 -17
  430. package/src/internal/upload/index.ts +13 -14
  431. package/src/internal/upload/interface.ts +78 -78
  432. package/src/internal/upload/manager.test.ts +170 -153
  433. package/src/internal/upload/manager.ts +59 -35
  434. package/src/internal/upload/queue.ts +3 -3
  435. package/src/internal/upload/streamUploader.test.ts +40 -26
  436. package/src/internal/upload/streamUploader.ts +87 -69
  437. package/src/internal/upload/telemetry.test.ts +11 -11
  438. package/src/internal/upload/telemetry.ts +25 -15
  439. package/src/internal/wait.test.ts +1 -1
  440. package/src/internal/wait.ts +3 -3
  441. package/src/protonDriveClient.ts +121 -39
  442. package/src/protonDrivePhotosClient.ts +16 -10
  443. package/src/telemetry.ts +60 -52
  444. package/src/tests/logger.ts +1 -1
  445. package/src/tests/telemetry.ts +2 -2
  446. package/src/transformers.ts +27 -21
  447. package/src/version.ts +0 -1
@@ -48,24 +48,24 @@ export interface SessionKey {
48
48
  export enum VERIFICATION_STATUS {
49
49
  NOT_SIGNED = 0,
50
50
  SIGNED_AND_VALID = 1,
51
- SIGNED_AND_INVALID = 2
51
+ SIGNED_AND_INVALID = 2,
52
52
  }
53
53
 
54
54
  export interface SRPModule {
55
- getSrpVerifier: (password: string) => Promise<SRPVerifier>,
56
- computeKeyPassword: (password: string, salt: string) => Promise<string>,
55
+ getSrpVerifier: (password: string) => Promise<SRPVerifier>;
56
+ computeKeyPassword: (password: string, salt: string) => Promise<string>;
57
57
  }
58
58
 
59
59
  export type SRPVerifier = {
60
- modulusId: string,
61
- version: number,
62
- salt: string,
63
- verifier: string,
64
- }
60
+ modulusId: string;
61
+ version: number;
62
+ salt: string;
63
+ verifier: string;
64
+ };
65
65
 
66
66
  /**
67
67
  * OpenPGP crypto layer to provide necessary PGP operations for Drive crypto.
68
- *
68
+ *
69
69
  * This layer focuses on providing general openPGP functions. Every operation
70
70
  * should prefer binary input and output. Ideally, armoring should be done
71
71
  * later in serialisation step, but for now, it is part of the interface to
@@ -77,38 +77,44 @@ export type SRPVerifier = {
77
77
  export interface OpenPGPCrypto {
78
78
  /**
79
79
  * Generate a random passphrase.
80
- *
80
+ *
81
81
  * 32 random bytes are generated and encoded into a base64 string.
82
82
  */
83
- generatePassphrase: () => string,
83
+ generatePassphrase: () => string;
84
84
 
85
- generateSessionKey: (encryptionKeys: PrivateKey[]) => Promise<SessionKey>,
85
+ generateSessionKey: (encryptionKeys: PrivateKey[]) => Promise<SessionKey>;
86
86
 
87
- encryptSessionKey: (sessionKey: SessionKey, encryptionKeys: PublicKey | PublicKey[]) => Promise<{
88
- keyPacket: Uint8Array,
89
- }>,
87
+ encryptSessionKey: (
88
+ sessionKey: SessionKey,
89
+ encryptionKeys: PublicKey | PublicKey[],
90
+ ) => Promise<{
91
+ keyPacket: Uint8Array;
92
+ }>;
90
93
 
91
- encryptSessionKeyWithPassword: (sessionKey: SessionKey, password: string) => Promise<{
92
- keyPacket: Uint8Array,
93
- }>,
94
+ encryptSessionKeyWithPassword: (
95
+ sessionKey: SessionKey,
96
+ password: string,
97
+ ) => Promise<{
98
+ keyPacket: Uint8Array;
99
+ }>;
94
100
 
95
101
  /**
96
102
  * Generate a new key pair locked by a passphrase.
97
- *
103
+ *
98
104
  * The key pair is generated using the Curve25519 algorithm.
99
105
  */
100
106
  generateKey: (passphrase: string) => Promise<{
101
- privateKey: PrivateKey,
102
- armoredKey: string,
103
- }>,
107
+ privateKey: PrivateKey;
108
+ armoredKey: string;
109
+ }>;
104
110
 
105
111
  encryptArmored: (
106
112
  data: Uint8Array,
107
113
  encryptionKeys: PrivateKey[],
108
114
  sessionKey?: SessionKey,
109
115
  ) => Promise<{
110
- armoredData: string,
111
- }>,
116
+ armoredData: string;
117
+ }>;
112
118
 
113
119
  encryptAndSign: (
114
120
  data: Uint8Array,
@@ -116,8 +122,8 @@ export interface OpenPGPCrypto {
116
122
  encryptionKeys: PrivateKey[],
117
123
  signingKey: PrivateKey,
118
124
  ) => Promise<{
119
- encryptedData: Uint8Array,
120
- }>,
125
+ encryptedData: Uint8Array;
126
+ }>;
121
127
 
122
128
  encryptAndSignArmored: (
123
129
  data: Uint8Array,
@@ -125,8 +131,8 @@ export interface OpenPGPCrypto {
125
131
  encryptionKeys: PrivateKey[],
126
132
  signingKey: PrivateKey,
127
133
  ) => Promise<{
128
- armoredData: string,
129
- }>,
134
+ armoredData: string;
135
+ }>;
130
136
 
131
137
  encryptAndSignDetached: (
132
138
  data: Uint8Array,
@@ -134,9 +140,9 @@ export interface OpenPGPCrypto {
134
140
  encryptionKeys: PrivateKey[],
135
141
  signingKey: PrivateKey,
136
142
  ) => Promise<{
137
- encryptedData: Uint8Array,
138
- signature: Uint8Array,
139
- }>,
143
+ encryptedData: Uint8Array;
144
+ signature: Uint8Array;
145
+ }>;
140
146
 
141
147
  encryptAndSignDetachedArmored: (
142
148
  data: Uint8Array,
@@ -144,56 +150,47 @@ export interface OpenPGPCrypto {
144
150
  encryptionKeys: PrivateKey[],
145
151
  signingKey: PrivateKey,
146
152
  ) => Promise<{
147
- armoredData: string,
148
- armoredSignature: string,
149
- }>,
153
+ armoredData: string;
154
+ armoredSignature: string;
155
+ }>;
150
156
 
151
157
  sign: (
152
158
  data: Uint8Array,
153
159
  signingKey: PrivateKey,
154
160
  signatureContext: string,
155
161
  ) => Promise<{
156
- signature: Uint8Array,
157
- }>,
162
+ signature: Uint8Array;
163
+ }>;
158
164
 
159
165
  signArmored: (
160
166
  data: Uint8Array,
161
167
  signingKey: PrivateKey | PrivateKey[],
162
168
  ) => Promise<{
163
- signature: string,
164
- }>,
169
+ signature: string;
170
+ }>;
165
171
 
166
172
  verify: (
167
173
  data: Uint8Array,
168
174
  armoredSignature: string,
169
175
  verificationKeys: PublicKey | PublicKey[],
170
176
  ) => Promise<{
171
- verified: VERIFICATION_STATUS,
172
- }>,
177
+ verified: VERIFICATION_STATUS;
178
+ }>;
173
179
 
174
- decryptSessionKey: (
175
- data: Uint8Array,
176
- decryptionKeys: PrivateKey | PrivateKey[],
177
- ) => Promise<SessionKey>,
180
+ decryptSessionKey: (data: Uint8Array, decryptionKeys: PrivateKey | PrivateKey[]) => Promise<SessionKey>;
178
181
 
179
- decryptArmoredSessionKey: (
180
- armoredData: string,
181
- decryptionKeys: PrivateKey | PrivateKey[],
182
- ) => Promise<SessionKey>,
182
+ decryptArmoredSessionKey: (armoredData: string, decryptionKeys: PrivateKey | PrivateKey[]) => Promise<SessionKey>;
183
183
 
184
- decryptKey: (
185
- armoredKey: string,
186
- passphrase: string,
187
- ) => Promise<PrivateKey>,
184
+ decryptKey: (armoredKey: string, passphrase: string) => Promise<PrivateKey>;
188
185
 
189
186
  decryptAndVerify(
190
187
  data: Uint8Array,
191
188
  sessionKey: SessionKey,
192
189
  verificationKeys: PublicKey | PublicKey[],
193
190
  ): Promise<{
194
- data: Uint8Array,
195
- verified: VERIFICATION_STATUS,
196
- }>,
191
+ data: Uint8Array;
192
+ verified: VERIFICATION_STATUS;
193
+ }>;
197
194
 
198
195
  decryptAndVerifyDetached(
199
196
  data: Uint8Array,
@@ -201,23 +198,20 @@ export interface OpenPGPCrypto {
201
198
  sessionKey: SessionKey,
202
199
  verificationKeys?: PublicKey | PublicKey[],
203
200
  ): Promise<{
204
- data: Uint8Array,
205
- verified: VERIFICATION_STATUS,
206
- }>,
201
+ data: Uint8Array;
202
+ verified: VERIFICATION_STATUS;
203
+ }>;
207
204
 
208
- decryptArmored(
209
- armoredData: string,
210
- decryptionKeys: PrivateKey | PrivateKey[],
211
- ): Promise<Uint8Array>,
205
+ decryptArmored(armoredData: string, decryptionKeys: PrivateKey | PrivateKey[]): Promise<Uint8Array>;
212
206
 
213
207
  decryptArmoredAndVerify: (
214
208
  armoredData: string,
215
209
  decryptionKeys: PrivateKey | PrivateKey[],
216
210
  verificationKeys: PublicKey | PublicKey[],
217
211
  ) => Promise<{
218
- data: Uint8Array,
219
- verified: VERIFICATION_STATUS,
220
- }>,
212
+ data: Uint8Array;
213
+ verified: VERIFICATION_STATUS;
214
+ }>;
221
215
 
222
216
  decryptArmoredAndVerifyDetached: (
223
217
  armoredData: string,
@@ -225,12 +219,9 @@ export interface OpenPGPCrypto {
225
219
  sessionKey: SessionKey,
226
220
  verificationKeys: PublicKey | PublicKey[],
227
221
  ) => Promise<{
228
- data: Uint8Array,
229
- verified: VERIFICATION_STATUS,
230
- }>,
222
+ data: Uint8Array;
223
+ verified: VERIFICATION_STATUS;
224
+ }>;
231
225
 
232
- decryptArmoredWithPassword(
233
- armoredData: string,
234
- password: string,
235
- ): Promise<Uint8Array>,
226
+ decryptArmoredWithPassword(armoredData: string, password: string): Promise<Uint8Array>;
236
227
  }
@@ -6,57 +6,63 @@ import { uint8ArrayToBase64String } from './utils';
6
6
  * clients/packages/crypto/lib/proxy/proxy.ts.
7
7
  */
8
8
  export interface OpenPGPCryptoProxy {
9
- generateKey: (options: { userIDs: { name: string }[], type: 'ecc', curve: 'ed25519Legacy' }) => Promise<PrivateKey>,
10
- exportPrivateKey: (options: { privateKey: PrivateKey, passphrase: string | null }) => Promise<string>,
11
- importPrivateKey: (options: { armoredKey: string, passphrase: string | null }) => Promise<PrivateKey>,
12
- generateSessionKey: (options: { recipientKeys: PrivateKey[] }) => Promise<SessionKey>,
13
- encryptSessionKey: (options: SessionKey & { format: 'binary', encryptionKeys?: PublicKey | PublicKey[], passwords?: string[] }) => Promise<Uint8Array>,
14
- decryptSessionKey: (options: { armoredMessage?: string, binaryMessage?: Uint8Array, decryptionKeys: PrivateKey | PrivateKey[] }) => Promise<SessionKey | undefined>,
9
+ generateKey: (options: { userIDs: { name: string }[]; type: 'ecc'; curve: 'ed25519Legacy' }) => Promise<PrivateKey>;
10
+ exportPrivateKey: (options: { privateKey: PrivateKey; passphrase: string | null }) => Promise<string>;
11
+ importPrivateKey: (options: { armoredKey: string; passphrase: string | null }) => Promise<PrivateKey>;
12
+ generateSessionKey: (options: { recipientKeys: PrivateKey[] }) => Promise<SessionKey>;
13
+ encryptSessionKey: (
14
+ options: SessionKey & { format: 'binary'; encryptionKeys?: PublicKey | PublicKey[]; passwords?: string[] },
15
+ ) => Promise<Uint8Array>;
16
+ decryptSessionKey: (options: {
17
+ armoredMessage?: string;
18
+ binaryMessage?: Uint8Array;
19
+ decryptionKeys: PrivateKey | PrivateKey[];
20
+ }) => Promise<SessionKey | undefined>;
15
21
  encryptMessage: (options: {
16
- format?: 'armored' | 'binary',
17
- binaryData: Uint8Array,
18
- sessionKey?: SessionKey,
19
- encryptionKeys: PrivateKey[],
20
- signingKeys?: PrivateKey,
21
- detached?: boolean,
22
+ format?: 'armored' | 'binary';
23
+ binaryData: Uint8Array;
24
+ sessionKey?: SessionKey;
25
+ encryptionKeys: PrivateKey[];
26
+ signingKeys?: PrivateKey;
27
+ detached?: boolean;
22
28
  }) => Promise<{
23
- message: string | Uint8Array,
24
- signature?: string | Uint8Array,
25
- }>,
29
+ message: string | Uint8Array;
30
+ signature?: string | Uint8Array;
31
+ }>;
26
32
  decryptMessage: (options: {
27
- format: 'utf8' | 'binary',
28
- armoredMessage?: string,
29
- binaryMessage?: Uint8Array,
30
- armoredSignature?: string,
31
- binarySignature?: Uint8Array,
32
- sessionKeys?: SessionKey,
33
- passwords?: string[],
34
- decryptionKeys?: PrivateKey | PrivateKey[],
35
- verificationKeys?: PublicKey | PublicKey[],
33
+ format: 'utf8' | 'binary';
34
+ armoredMessage?: string;
35
+ binaryMessage?: Uint8Array;
36
+ armoredSignature?: string;
37
+ binarySignature?: Uint8Array;
38
+ sessionKeys?: SessionKey;
39
+ passwords?: string[];
40
+ decryptionKeys?: PrivateKey | PrivateKey[];
41
+ verificationKeys?: PublicKey | PublicKey[];
36
42
  }) => Promise<{
37
- data: Uint8Array | string,
43
+ data: Uint8Array | string;
38
44
  // pmcrypto 8.3.0 changes `verified` to `verificationStatus`.
39
45
  // Web clients are using newer pmcrypto, but CLI is using older version due to build issues with Bun.
40
- verified?: VERIFICATION_STATUS,
41
- verificationStatus?: VERIFICATION_STATUS,
42
- }>,
46
+ verified?: VERIFICATION_STATUS;
47
+ verificationStatus?: VERIFICATION_STATUS;
48
+ }>;
43
49
  signMessage: (options: {
44
- format: 'binary' | 'armored',
45
- binaryData: Uint8Array,
46
- signingKeys: PrivateKey | PrivateKey[],
47
- detached: boolean,
48
- signatureContext?: { critical: boolean, value: string },
49
- }) => Promise<Uint8Array | string>,
50
+ format: 'binary' | 'armored';
51
+ binaryData: Uint8Array;
52
+ signingKeys: PrivateKey | PrivateKey[];
53
+ detached: boolean;
54
+ signatureContext?: { critical: boolean; value: string };
55
+ }) => Promise<Uint8Array | string>;
50
56
  verifyMessage: (options: {
51
- binaryData: Uint8Array,
52
- armoredSignature: string,
53
- verificationKeys: PublicKey | PublicKey[],
57
+ binaryData: Uint8Array;
58
+ armoredSignature: string;
59
+ verificationKeys: PublicKey | PublicKey[];
54
60
  }) => Promise<{
55
61
  // pmcrypto 8.3.0 changes `verified` to `verificationStatus`.
56
62
  // Web clients are using newer pmcrypto, but CLI is using older version due to build issues with Bun.
57
- verified?: VERIFICATION_STATUS,
58
- verificationStatus?: VERIFICATION_STATUS,
59
- }>,
63
+ verified?: VERIFICATION_STATUS;
64
+ verificationStatus?: VERIFICATION_STATUS;
65
+ }>;
60
66
  }
61
67
 
62
68
  /**
@@ -87,7 +93,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
87
93
  encryptionKeys,
88
94
  });
89
95
  return {
90
- keyPacket
96
+ keyPacket,
91
97
  };
92
98
  }
93
99
 
@@ -120,11 +126,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
120
126
  };
121
127
  }
122
128
 
123
- async encryptArmored(
124
- data: Uint8Array,
125
- encryptionKeys: PrivateKey[],
126
- sessionKey?: SessionKey,
127
- ) {
129
+ async encryptArmored(data: Uint8Array, encryptionKeys: PrivateKey[], sessionKey?: SessionKey) {
128
130
  const { message: armoredData } = await this.cryptoProxy.encryptMessage({
129
131
  binaryData: data,
130
132
  sessionKey,
@@ -132,7 +134,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
132
134
  });
133
135
  return {
134
136
  armoredData: armoredData as string,
135
- }
137
+ };
136
138
  }
137
139
 
138
140
  async encryptAndSign(
@@ -189,7 +191,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
189
191
  return {
190
192
  encryptedData: encryptedData as Uint8Array,
191
193
  signature: signature as Uint8Array,
192
- }
194
+ };
193
195
  }
194
196
 
195
197
  async encryptAndSignDetachedArmored(
@@ -208,14 +210,10 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
208
210
  return {
209
211
  armoredData: armoredData as string,
210
212
  armoredSignature: armoredSignature as string,
211
- }
213
+ };
212
214
  }
213
215
 
214
- async sign(
215
- data: Uint8Array,
216
- signingKeys: PrivateKey | PrivateKey[],
217
- signatureContext: string,
218
- ) {
216
+ async sign(data: Uint8Array, signingKeys: PrivateKey | PrivateKey[], signatureContext: string) {
219
217
  const signature = await this.cryptoProxy.signMessage({
220
218
  binaryData: data,
221
219
  signingKeys,
@@ -228,10 +226,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
228
226
  };
229
227
  }
230
228
 
231
- async signArmored(
232
- data: Uint8Array,
233
- signingKeys: PrivateKey | PrivateKey[],
234
- ) {
229
+ async signArmored(data: Uint8Array, signingKeys: PrivateKey | PrivateKey[]) {
235
230
  const signature = await this.cryptoProxy.signMessage({
236
231
  binaryData: data,
237
232
  signingKeys,
@@ -243,11 +238,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
243
238
  };
244
239
  }
245
240
 
246
- async verify(
247
- data: Uint8Array,
248
- armoredSignature: string,
249
- verificationKeys: PublicKey | PublicKey[],
250
- ) {
241
+ async verify(data: Uint8Array, armoredSignature: string, verificationKeys: PublicKey | PublicKey[]) {
251
242
  const { verified, verificationStatus } = await this.cryptoProxy.verifyMessage({
252
243
  binaryData: data,
253
244
  armoredSignature,
@@ -260,10 +251,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
260
251
  };
261
252
  }
262
253
 
263
- async decryptSessionKey(
264
- data: Uint8Array,
265
- decryptionKeys: PrivateKey | PrivateKey[],
266
- ) {
254
+ async decryptSessionKey(data: Uint8Array, decryptionKeys: PrivateKey | PrivateKey[]) {
267
255
  const sessionKey = await this.cryptoProxy.decryptSessionKey({
268
256
  binaryMessage: data,
269
257
  decryptionKeys,
@@ -276,10 +264,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
276
264
  return sessionKey;
277
265
  }
278
266
 
279
- async decryptArmoredSessionKey(
280
- armoredData: string,
281
- decryptionKeys: PrivateKey | PrivateKey[],
282
- ) {
267
+ async decryptArmoredSessionKey(armoredData: string, decryptionKeys: PrivateKey | PrivateKey[]) {
283
268
  const sessionKey = await this.cryptoProxy.decryptSessionKey({
284
269
  armoredMessage: armoredData,
285
270
  decryptionKeys,
@@ -292,10 +277,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
292
277
  return sessionKey;
293
278
  }
294
279
 
295
- async decryptKey(
296
- armoredKey: string,
297
- passphrase: string,
298
- ) {
280
+ async decryptKey(armoredKey: string, passphrase: string) {
299
281
  const key = await this.cryptoProxy.importPrivateKey({
300
282
  armoredKey,
301
283
  passphrase,
@@ -303,12 +285,12 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
303
285
  return key;
304
286
  }
305
287
 
306
- async decryptAndVerify(
307
- data: Uint8Array,
308
- sessionKey: SessionKey,
309
- verificationKeys: PublicKey[],
310
- ) {
311
- const { data: decryptedData, verified, verificationStatus } = await this.cryptoProxy.decryptMessage({
288
+ async decryptAndVerify(data: Uint8Array, sessionKey: SessionKey, verificationKeys: PublicKey[]) {
289
+ const {
290
+ data: decryptedData,
291
+ verified,
292
+ verificationStatus,
293
+ } = await this.cryptoProxy.decryptMessage({
312
294
  binaryMessage: data,
313
295
  sessionKeys: sessionKey,
314
296
  verificationKeys,
@@ -320,7 +302,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
320
302
  // pmcrypto 8.3.0 changes `verified` to `verificationStatus`.
321
303
  // Proper typing is too complex, it will be removed to support only newer pmcrypto.
322
304
  verified: verified || verificationStatus!,
323
- }
305
+ };
324
306
  }
325
307
 
326
308
  async decryptAndVerifyDetached(
@@ -329,7 +311,11 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
329
311
  sessionKey: SessionKey,
330
312
  verificationKeys?: PublicKey[],
331
313
  ) {
332
- const { data: decryptedData, verified, verificationStatus } = await this.cryptoProxy.decryptMessage({
314
+ const {
315
+ data: decryptedData,
316
+ verified,
317
+ verificationStatus,
318
+ } = await this.cryptoProxy.decryptMessage({
333
319
  binaryMessage: data,
334
320
  binarySignature: signature,
335
321
  sessionKeys: sessionKey,
@@ -342,13 +328,10 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
342
328
  // pmcrypto 8.3.0 changes `verified` to `verificationStatus`.
343
329
  // Proper typing is too complex, it will be removed to support only newer pmcrypto.
344
330
  verified: verified || verificationStatus!,
345
- }
331
+ };
346
332
  }
347
333
 
348
- async decryptArmored(
349
- armoredData: string,
350
- decryptionKeys: PrivateKey | PrivateKey[],
351
- ) {
334
+ async decryptArmored(armoredData: string, decryptionKeys: PrivateKey | PrivateKey[]) {
352
335
  const { data } = await this.cryptoProxy.decryptMessage({
353
336
  armoredMessage: armoredData,
354
337
  decryptionKeys,
@@ -374,7 +357,7 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
374
357
  // pmcrypto 8.3.0 changes `verified` to `verificationStatus`.
375
358
  // Proper typing is too complex, it will be removed to support only newer pmcrypto.
376
359
  verified: verified || verificationStatus!,
377
- }
360
+ };
378
361
  }
379
362
 
380
363
  async decryptArmoredAndVerifyDetached(
@@ -396,13 +379,10 @@ export class OpenPGPCryptoWithCryptoProxy implements OpenPGPCrypto {
396
379
  // pmcrypto 8.3.0 changes `verified` to `verificationStatus`.
397
380
  // Proper typing is too complex, it will be removed to support only newer pmcrypto.
398
381
  verified: verified || verificationStatus!,
399
- }
382
+ };
400
383
  }
401
384
 
402
- async decryptArmoredWithPassword(
403
- armoredData: string,
404
- password: string,
405
- ) {
385
+ async decryptArmoredWithPassword(armoredData: string, password: string) {
406
386
  const { data } = await this.cryptoProxy.decryptMessage({
407
387
  armoredMessage: armoredData,
408
388
  passwords: [password],
@@ -4,7 +4,7 @@ export function uint8ArrayToBase64String(array: Uint8Array) {
4
4
  return encodeBase64(arrayToBinaryString(array));
5
5
  }
6
6
 
7
- export function base64StringToUint8Array(string: string){
7
+ export function base64StringToUint8Array(string: string) {
8
8
  return binaryStringToArray(decodeBase64(string) || '');
9
9
  }
10
10
 
@@ -14,10 +14,10 @@ export class EventsGenerator {
14
14
  this.eventQueue.push(event);
15
15
  // Notify all waiting generators
16
16
  const resolvers = this.waitingResolvers.splice(0);
17
- resolvers.forEach(resolve => resolve());
17
+ resolvers.forEach((resolve) => resolve());
18
18
  }
19
19
 
20
- async* iterateEvents(): AsyncGenerator<DiagnosticResult> {
20
+ async *iterateEvents(): AsyncGenerator<DiagnosticResult> {
21
21
  try {
22
22
  while (true) {
23
23
  if (this.eventQueue.length === 0) {
@@ -1,4 +1,8 @@
1
- import { ProtonDriveHTTPClient, ProtonDriveHTTPClientBlobOptions, ProtonDriveHTTPClientJsonOptions } from "../interface";
1
+ import {
2
+ ProtonDriveHTTPClient,
3
+ ProtonDriveHTTPClientBlobOptions,
4
+ ProtonDriveHTTPClientJsonOptions,
5
+ } from '../interface';
2
6
  import { EventsGenerator } from './eventsGenerator';
3
7
 
4
8
  /**
@@ -77,4 +81,4 @@ export class DiagnosticHTTPClient extends EventsGenerator implements ProtonDrive
77
81
  fetchBlob(options: ProtonDriveHTTPClientBlobOptions): Promise<Response> {
78
82
  return this.httpClient.fetchBlob(options);
79
83
  }
80
- }
84
+ }
@@ -1,13 +1,13 @@
1
- import { MemoryCache, NullCache } from "../cache";
2
- import { ProtonDriveClientContructorParameters } from "../interface";
3
- import { ProtonDriveClient } from "../protonDriveClient";
4
- import { DiagnosticHTTPClient } from "./httpClient";
5
- import { Diagnostic } from "./interface";
6
- import { SDKDiagnostic } from "./sdkDiagnostic";
7
- import { FullSDKDiagnostic } from "./sdkDiagnosticFull";
8
- import { DiagnosticTelemetry } from "./telemetry";
1
+ import { MemoryCache, NullCache } from '../cache';
2
+ import { ProtonDriveClientContructorParameters } from '../interface';
3
+ import { ProtonDriveClient } from '../protonDriveClient';
4
+ import { DiagnosticHTTPClient } from './httpClient';
5
+ import { Diagnostic } from './interface';
6
+ import { SDKDiagnostic } from './sdkDiagnostic';
7
+ import { FullSDKDiagnostic } from './sdkDiagnosticFull';
8
+ import { DiagnosticTelemetry } from './telemetry';
9
9
 
10
- export type { Diagnostic, DiagnosticResult } from "./interface";
10
+ export type { Diagnostic, DiagnosticResult } from './interface';
11
11
 
12
12
  /**
13
13
  * Initializes the diagnostic tool. It creates the instance of
@@ -15,7 +15,9 @@ export type { Diagnostic, DiagnosticResult } from "./interface";
15
15
  * metrics and HTTP calls; and enforced null/empty cache to always
16
16
  * start from scratch.
17
17
  */
18
- export function initDiagnostic(options: Omit<ProtonDriveClientContructorParameters, 'entitiesCache' | 'cryptoCache' | 'telemetry'>): Diagnostic {
18
+ export function initDiagnostic(
19
+ options: Omit<ProtonDriveClientContructorParameters, 'entitiesCache' | 'cryptoCache' | 'telemetry'>,
20
+ ): Diagnostic {
19
21
  const httpClient = new DiagnosticHTTPClient(options.httpClient);
20
22
  const telemetry = new DiagnosticTelemetry();
21
23
 
@@ -1,4 +1,4 @@
1
- import { sha1 } from "@noble/hashes/legacy";
1
+ import { sha1 } from '@noble/hashes/legacy';
2
2
  import { bytesToHex } from '@noble/hashes/utils';
3
3
 
4
4
  /**
@@ -30,7 +30,7 @@ export class IntegrityVerificationStream extends WritableStream<Uint8Array> {
30
30
  abort: () => {
31
31
  this._isClosed = true;
32
32
  this._computedSha1 = undefined;
33
- }
33
+ },
34
34
  });
35
35
  }
36
36
 
@@ -52,5 +52,4 @@ export class IntegrityVerificationStream extends WritableStream<Uint8Array> {
52
52
  }
53
53
  return this._computedSizeInBytes;
54
54
  }
55
-
56
- }
55
+ }