@protontech/drive-sdk 0.0.13 → 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 (496) hide show
  1. package/dist/cache/index.d.ts +1 -0
  2. package/dist/cache/index.js +3 -1
  3. package/dist/cache/index.js.map +1 -1
  4. package/dist/cache/memoryCache.d.ts +1 -1
  5. package/dist/cache/memoryCache.js +0 -1
  6. package/dist/cache/memoryCache.js.map +1 -1
  7. package/dist/cache/memoryCache.test.js +2 -4
  8. package/dist/cache/memoryCache.test.js.map +1 -1
  9. package/dist/cache/nullCache.d.ts +14 -0
  10. package/dist/cache/nullCache.js +36 -0
  11. package/dist/cache/nullCache.js.map +1 -0
  12. package/dist/config.d.ts +16 -1
  13. package/dist/config.js +1 -1
  14. package/dist/config.js.map +1 -1
  15. package/dist/crypto/driveCrypto.d.ts +2 -5
  16. package/dist/crypto/driveCrypto.js +7 -12
  17. package/dist/crypto/driveCrypto.js.map +1 -1
  18. package/dist/crypto/driveCrypto.test.js +14 -14
  19. package/dist/crypto/openPGPCrypto.js +5 -3
  20. package/dist/crypto/openPGPCrypto.js.map +1 -1
  21. package/dist/diagnostic/eventsGenerator.d.ts +14 -0
  22. package/dist/diagnostic/eventsGenerator.js +49 -0
  23. package/dist/diagnostic/eventsGenerator.js.map +1 -0
  24. package/dist/diagnostic/httpClient.d.ts +16 -0
  25. package/dist/diagnostic/httpClient.js +81 -0
  26. package/dist/diagnostic/httpClient.js.map +1 -0
  27. package/dist/diagnostic/index.d.ts +10 -0
  28. package/dist/diagnostic/index.js +35 -0
  29. package/dist/diagnostic/index.js.map +1 -0
  30. package/dist/diagnostic/integrityVerificationStream.d.ts +21 -0
  31. package/dist/diagnostic/integrityVerificationStream.js +56 -0
  32. package/dist/diagnostic/integrityVerificationStream.js.map +1 -0
  33. package/dist/diagnostic/interface.d.ts +102 -0
  34. package/dist/diagnostic/interface.js +3 -0
  35. package/dist/diagnostic/interface.js.map +1 -0
  36. package/dist/diagnostic/sdkDiagnostic.d.ts +22 -0
  37. package/dist/diagnostic/sdkDiagnostic.js +222 -0
  38. package/dist/diagnostic/sdkDiagnostic.js.map +1 -0
  39. package/dist/diagnostic/sdkDiagnosticFull.d.ts +18 -0
  40. package/dist/diagnostic/sdkDiagnosticFull.js +35 -0
  41. package/dist/diagnostic/sdkDiagnosticFull.js.map +1 -0
  42. package/dist/diagnostic/telemetry.d.ts +25 -0
  43. package/dist/diagnostic/telemetry.js +70 -0
  44. package/dist/diagnostic/telemetry.js.map +1 -0
  45. package/dist/diagnostic/zipGenerators.d.ts +9 -0
  46. package/dist/diagnostic/zipGenerators.js +64 -0
  47. package/dist/diagnostic/zipGenerators.js.map +1 -0
  48. package/dist/diagnostic/zipGenerators.test.js +144 -0
  49. package/dist/diagnostic/zipGenerators.test.js.map +1 -0
  50. package/dist/errors.d.ts +2 -1
  51. package/dist/errors.js +3 -1
  52. package/dist/errors.js.map +1 -1
  53. package/dist/interface/config.d.ts +26 -0
  54. package/dist/interface/config.js +3 -0
  55. package/dist/interface/config.js.map +1 -0
  56. package/dist/interface/download.d.ts +2 -2
  57. package/dist/interface/events.d.ts +58 -20
  58. package/dist/interface/events.js +11 -1
  59. package/dist/interface/events.js.map +1 -1
  60. package/dist/interface/httpClient.d.ts +0 -14
  61. package/dist/interface/index.d.ts +11 -7
  62. package/dist/interface/index.js +2 -2
  63. package/dist/interface/index.js.map +1 -1
  64. package/dist/interface/nodes.d.ts +9 -0
  65. package/dist/interface/nodes.js.map +1 -1
  66. package/dist/interface/result.js.map +1 -1
  67. package/dist/interface/sharing.d.ts +2 -0
  68. package/dist/interface/sharing.js.map +1 -1
  69. package/dist/interface/telemetry.js +0 -8
  70. package/dist/interface/telemetry.js.map +1 -1
  71. package/dist/interface/thumbnail.js.map +1 -1
  72. package/dist/interface/upload.d.ts +7 -1
  73. package/dist/internal/apiService/apiService.d.ts +1 -1
  74. package/dist/internal/apiService/apiService.js +7 -11
  75. package/dist/internal/apiService/apiService.js.map +1 -1
  76. package/dist/internal/apiService/apiService.test.js +55 -48
  77. package/dist/internal/apiService/apiService.test.js.map +1 -1
  78. package/dist/internal/apiService/coreTypes.d.ts +2356 -2356
  79. package/dist/internal/apiService/driveTypes.d.ts +1680 -1680
  80. package/dist/internal/apiService/errors.js +14 -8
  81. package/dist/internal/apiService/errors.js.map +1 -1
  82. package/dist/internal/apiService/errors.test.js +17 -12
  83. package/dist/internal/apiService/errors.test.js.map +1 -1
  84. package/dist/internal/apiService/transformers.d.ts +1 -1
  85. package/dist/internal/apiService/transformers.js +1 -1
  86. package/dist/internal/asyncIteratorMap.test.js +2 -2
  87. package/dist/internal/asyncIteratorMap.test.js.map +1 -1
  88. package/dist/internal/asyncIteratorRace.d.ts +13 -0
  89. package/dist/internal/asyncIteratorRace.js +59 -0
  90. package/dist/internal/asyncIteratorRace.js.map +1 -0
  91. package/dist/internal/asyncIteratorRace.test.d.ts +1 -0
  92. package/dist/internal/asyncIteratorRace.test.js +119 -0
  93. package/dist/internal/asyncIteratorRace.test.js.map +1 -0
  94. package/dist/internal/batch.d.ts +1 -0
  95. package/dist/internal/batch.js +12 -0
  96. package/dist/internal/batch.js.map +1 -0
  97. package/dist/internal/batch.test.d.ts +1 -0
  98. package/dist/internal/batch.test.js +41 -0
  99. package/dist/internal/batch.test.js.map +1 -0
  100. package/dist/internal/batchLoading.js.map +1 -1
  101. package/dist/internal/batchLoading.test.js +13 -13
  102. package/dist/internal/batchLoading.test.js.map +1 -1
  103. package/dist/internal/devices/apiService.d.ts +3 -3
  104. package/dist/internal/devices/apiService.js +2 -2
  105. package/dist/internal/devices/apiService.js.map +1 -1
  106. package/dist/internal/devices/cryptoService.js +1 -2
  107. package/dist/internal/devices/cryptoService.js.map +1 -1
  108. package/dist/internal/devices/index.d.ts +5 -5
  109. package/dist/internal/devices/index.js.map +1 -1
  110. package/dist/internal/devices/interface.d.ts +3 -3
  111. package/dist/internal/devices/manager.js +2 -2
  112. package/dist/internal/devices/manager.js.map +1 -1
  113. package/dist/internal/devices/manager.test.js +38 -7
  114. package/dist/internal/devices/manager.test.js.map +1 -1
  115. package/dist/internal/download/apiService.d.ts +4 -4
  116. package/dist/internal/download/apiService.js +32 -32
  117. package/dist/internal/download/apiService.js.map +1 -1
  118. package/dist/internal/download/cryptoService.d.ts +4 -4
  119. package/dist/internal/download/cryptoService.js +6 -5
  120. package/dist/internal/download/cryptoService.js.map +1 -1
  121. package/dist/internal/download/fileDownloader.d.ts +6 -6
  122. package/dist/internal/download/fileDownloader.js +3 -2
  123. package/dist/internal/download/fileDownloader.js.map +1 -1
  124. package/dist/internal/download/fileDownloader.test.js +1 -1
  125. package/dist/internal/download/fileDownloader.test.js.map +1 -1
  126. package/dist/internal/download/index.d.ts +5 -5
  127. package/dist/internal/download/index.js +5 -5
  128. package/dist/internal/download/index.js.map +1 -1
  129. package/dist/internal/download/interface.d.ts +3 -4
  130. package/dist/internal/download/telemetry.d.ts +3 -3
  131. package/dist/internal/download/telemetry.js +4 -2
  132. package/dist/internal/download/telemetry.js.map +1 -1
  133. package/dist/internal/download/telemetry.test.js +8 -8
  134. package/dist/internal/download/telemetry.test.js.map +1 -1
  135. package/dist/internal/download/thumbnailDownloader.d.ts +4 -4
  136. package/dist/internal/download/thumbnailDownloader.js +6 -6
  137. package/dist/internal/download/thumbnailDownloader.js.map +1 -1
  138. package/dist/internal/download/thumbnailDownloader.test.js.map +1 -1
  139. package/dist/internal/errors.d.ts +1 -1
  140. package/dist/internal/errors.js +1 -3
  141. package/dist/internal/errors.js.map +1 -1
  142. package/dist/internal/events/apiService.d.ts +5 -7
  143. package/dist/internal/events/apiService.js +19 -22
  144. package/dist/internal/events/apiService.js.map +1 -1
  145. package/dist/internal/events/coreEventManager.d.ts +9 -12
  146. package/dist/internal/events/coreEventManager.js +19 -36
  147. package/dist/internal/events/coreEventManager.js.map +1 -1
  148. package/dist/internal/events/coreEventManager.test.d.ts +1 -0
  149. package/dist/internal/events/coreEventManager.test.js +87 -0
  150. package/dist/internal/events/coreEventManager.test.js.map +1 -0
  151. package/dist/internal/events/eventManager.d.ts +11 -36
  152. package/dist/internal/events/eventManager.js +59 -106
  153. package/dist/internal/events/eventManager.js.map +1 -1
  154. package/dist/internal/events/eventManager.test.js +177 -83
  155. package/dist/internal/events/eventManager.test.js.map +1 -1
  156. package/dist/internal/events/index.d.ts +16 -36
  157. package/dist/internal/events/index.js +56 -72
  158. package/dist/internal/events/index.js.map +1 -1
  159. package/dist/internal/events/interface.d.ts +59 -14
  160. package/dist/internal/events/interface.js +12 -3
  161. package/dist/internal/events/interface.js.map +1 -1
  162. package/dist/internal/events/volumeEventManager.d.ts +9 -19
  163. package/dist/internal/events/volumeEventManager.js +58 -45
  164. package/dist/internal/events/volumeEventManager.js.map +1 -1
  165. package/dist/internal/events/volumeEventManager.test.d.ts +1 -0
  166. package/dist/internal/events/volumeEventManager.test.js +203 -0
  167. package/dist/internal/events/volumeEventManager.test.js.map +1 -0
  168. package/dist/internal/nodes/apiService.d.ts +4 -3
  169. package/dist/internal/nodes/apiService.js +36 -15
  170. package/dist/internal/nodes/apiService.js.map +1 -1
  171. package/dist/internal/nodes/apiService.test.js +60 -41
  172. package/dist/internal/nodes/apiService.test.js.map +1 -1
  173. package/dist/internal/nodes/cache.d.ts +14 -5
  174. package/dist/internal/nodes/cache.js +31 -7
  175. package/dist/internal/nodes/cache.js.map +1 -1
  176. package/dist/internal/nodes/cache.test.js +31 -9
  177. package/dist/internal/nodes/cache.test.js.map +1 -1
  178. package/dist/internal/nodes/cryptoCache.d.ts +2 -2
  179. package/dist/internal/nodes/cryptoCache.js.map +1 -1
  180. package/dist/internal/nodes/cryptoCache.test.js +24 -4
  181. package/dist/internal/nodes/cryptoCache.test.js.map +1 -1
  182. package/dist/internal/nodes/cryptoService.d.ts +4 -4
  183. package/dist/internal/nodes/cryptoService.js +11 -17
  184. package/dist/internal/nodes/cryptoService.js.map +1 -1
  185. package/dist/internal/nodes/cryptoService.test.js +320 -241
  186. package/dist/internal/nodes/cryptoService.test.js.map +1 -1
  187. package/dist/internal/nodes/events.d.ts +8 -84
  188. package/dist/internal/nodes/events.js +43 -217
  189. package/dist/internal/nodes/events.js.map +1 -1
  190. package/dist/internal/nodes/events.test.js +35 -279
  191. package/dist/internal/nodes/events.test.js.map +1 -1
  192. package/dist/internal/nodes/extendedAttributes.d.ts +1 -1
  193. package/dist/internal/nodes/extendedAttributes.js +3 -1
  194. package/dist/internal/nodes/extendedAttributes.js.map +1 -1
  195. package/dist/internal/nodes/extendedAttributes.test.js +7 -10
  196. package/dist/internal/nodes/extendedAttributes.test.js.map +1 -1
  197. package/dist/internal/nodes/index.d.ts +12 -13
  198. package/dist/internal/nodes/index.js +5 -5
  199. package/dist/internal/nodes/index.js.map +1 -1
  200. package/dist/internal/nodes/index.test.js +24 -32
  201. package/dist/internal/nodes/index.test.js.map +1 -1
  202. package/dist/internal/nodes/interface.d.ts +2 -2
  203. package/dist/internal/nodes/nodesAccess.d.ts +22 -7
  204. package/dist/internal/nodes/nodesAccess.js +65 -16
  205. package/dist/internal/nodes/nodesAccess.js.map +1 -1
  206. package/dist/internal/nodes/nodesAccess.test.js +165 -101
  207. package/dist/internal/nodes/nodesAccess.test.js.map +1 -1
  208. package/dist/internal/nodes/nodesManagement.d.ts +7 -9
  209. package/dist/internal/nodes/nodesManagement.js +21 -33
  210. package/dist/internal/nodes/nodesManagement.js.map +1 -1
  211. package/dist/internal/nodes/nodesManagement.test.js +42 -21
  212. package/dist/internal/nodes/nodesManagement.test.js.map +1 -1
  213. package/dist/internal/nodes/nodesRevisions.d.ts +4 -4
  214. package/dist/internal/nodes/nodesRevisions.js.map +1 -1
  215. package/dist/internal/photos/albums.d.ts +3 -3
  216. package/dist/internal/photos/albums.js.map +1 -1
  217. package/dist/internal/photos/apiService.d.ts +1 -1
  218. package/dist/internal/photos/apiService.js +3 -6
  219. package/dist/internal/photos/apiService.js.map +1 -1
  220. package/dist/internal/photos/cache.d.ts +1 -1
  221. package/dist/internal/photos/index.d.ts +5 -5
  222. package/dist/internal/photos/index.js.map +1 -1
  223. package/dist/internal/photos/interface.d.ts +2 -2
  224. package/dist/internal/photos/photosTimeline.d.ts +3 -3
  225. package/dist/internal/photos/photosTimeline.js +1 -2
  226. package/dist/internal/photos/photosTimeline.js.map +1 -1
  227. package/dist/internal/sdkEvents.d.ts +1 -1
  228. package/dist/internal/sdkEvents.js +2 -7
  229. package/dist/internal/sdkEvents.js.map +1 -1
  230. package/dist/internal/sdkEvents.test.js +8 -8
  231. package/dist/internal/shares/apiService.d.ts +2 -2
  232. package/dist/internal/shares/apiService.js +5 -3
  233. package/dist/internal/shares/apiService.js.map +1 -1
  234. package/dist/internal/shares/cache.d.ts +4 -2
  235. package/dist/internal/shares/cache.js +14 -6
  236. package/dist/internal/shares/cache.js.map +1 -1
  237. package/dist/internal/shares/cache.test.js.map +1 -1
  238. package/dist/internal/shares/cryptoCache.d.ts +2 -2
  239. package/dist/internal/shares/cryptoCache.test.js +8 -2
  240. package/dist/internal/shares/cryptoCache.test.js.map +1 -1
  241. package/dist/internal/shares/cryptoService.d.ts +3 -3
  242. package/dist/internal/shares/cryptoService.js.map +1 -1
  243. package/dist/internal/shares/cryptoService.test.js +42 -42
  244. package/dist/internal/shares/cryptoService.test.js.map +1 -1
  245. package/dist/internal/shares/index.d.ts +4 -4
  246. package/dist/internal/shares/index.js.map +1 -1
  247. package/dist/internal/shares/interface.d.ts +2 -2
  248. package/dist/internal/shares/manager.d.ts +8 -7
  249. package/dist/internal/shares/manager.js +3 -0
  250. package/dist/internal/shares/manager.js.map +1 -1
  251. package/dist/internal/shares/manager.test.js +71 -63
  252. package/dist/internal/shares/manager.test.js.map +1 -1
  253. package/dist/internal/sharing/apiService.d.ts +4 -4
  254. package/dist/internal/sharing/apiService.js +5 -3
  255. package/dist/internal/sharing/apiService.js.map +1 -1
  256. package/dist/internal/sharing/cache.d.ts +1 -1
  257. package/dist/internal/sharing/cache.test.js +33 -33
  258. package/dist/internal/sharing/cryptoService.d.ts +3 -3
  259. package/dist/internal/sharing/cryptoService.js +3 -4
  260. package/dist/internal/sharing/cryptoService.js.map +1 -1
  261. package/dist/internal/sharing/cryptoService.test.js +39 -39
  262. package/dist/internal/sharing/cryptoService.test.js.map +1 -1
  263. package/dist/internal/sharing/events.d.ts +24 -56
  264. package/dist/internal/sharing/events.js +45 -138
  265. package/dist/internal/sharing/events.js.map +1 -1
  266. package/dist/internal/sharing/events.test.js +85 -189
  267. package/dist/internal/sharing/events.test.js.map +1 -1
  268. package/dist/internal/sharing/index.d.ts +8 -9
  269. package/dist/internal/sharing/index.js +5 -5
  270. package/dist/internal/sharing/index.js.map +1 -1
  271. package/dist/internal/sharing/interface.d.ts +8 -4
  272. package/dist/internal/sharing/sharingAccess.d.ts +6 -6
  273. package/dist/internal/sharing/sharingAccess.js +8 -4
  274. package/dist/internal/sharing/sharingAccess.js.map +1 -1
  275. package/dist/internal/sharing/sharingAccess.test.js +45 -39
  276. package/dist/internal/sharing/sharingAccess.test.js.map +1 -1
  277. package/dist/internal/sharing/sharingManagement.d.ts +5 -6
  278. package/dist/internal/sharing/sharingManagement.js +12 -16
  279. package/dist/internal/sharing/sharingManagement.js.map +1 -1
  280. package/dist/internal/sharing/sharingManagement.test.js +305 -286
  281. package/dist/internal/sharing/sharingManagement.test.js.map +1 -1
  282. package/dist/internal/uids.js.map +1 -1
  283. package/dist/internal/upload/apiService.d.ts +5 -6
  284. package/dist/internal/upload/apiService.js +8 -5
  285. package/dist/internal/upload/apiService.js.map +1 -1
  286. package/dist/internal/upload/blockVerifier.d.ts +3 -3
  287. package/dist/internal/upload/blockVerifier.js +1 -1
  288. package/dist/internal/upload/blockVerifier.js.map +1 -1
  289. package/dist/internal/upload/chunkStreamReader.test.js +6 -6
  290. package/dist/internal/upload/cryptoService.d.ts +4 -4
  291. package/dist/internal/upload/cryptoService.js +4 -4
  292. package/dist/internal/upload/cryptoService.js.map +1 -1
  293. package/dist/internal/upload/digests.js.map +1 -1
  294. package/dist/internal/upload/fileUploader.d.ts +6 -6
  295. package/dist/internal/upload/fileUploader.js.map +1 -1
  296. package/dist/internal/upload/fileUploader.test.js.map +1 -1
  297. package/dist/internal/upload/index.d.ts +6 -6
  298. package/dist/internal/upload/index.js +3 -3
  299. package/dist/internal/upload/index.js.map +1 -1
  300. package/dist/internal/upload/interface.d.ts +5 -3
  301. package/dist/internal/upload/manager.d.ts +8 -8
  302. package/dist/internal/upload/manager.js +23 -52
  303. package/dist/internal/upload/manager.js.map +1 -1
  304. package/dist/internal/upload/manager.test.js +185 -147
  305. package/dist/internal/upload/manager.test.js.map +1 -1
  306. package/dist/internal/upload/streamUploader.d.ts +6 -6
  307. package/dist/internal/upload/streamUploader.js +9 -8
  308. package/dist/internal/upload/streamUploader.js.map +1 -1
  309. package/dist/internal/upload/streamUploader.test.js +17 -12
  310. package/dist/internal/upload/streamUploader.test.js.map +1 -1
  311. package/dist/internal/upload/telemetry.d.ts +3 -3
  312. package/dist/internal/upload/telemetry.js +5 -3
  313. package/dist/internal/upload/telemetry.js.map +1 -1
  314. package/dist/internal/upload/telemetry.test.js +8 -8
  315. package/dist/internal/upload/telemetry.test.js.map +1 -1
  316. package/dist/protonDriveClient.d.ts +27 -170
  317. package/dist/protonDriveClient.js +37 -198
  318. package/dist/protonDriveClient.js.map +1 -1
  319. package/dist/protonDrivePhotosClient.js +3 -2
  320. package/dist/protonDrivePhotosClient.js.map +1 -1
  321. package/dist/telemetry.js +18 -15
  322. package/dist/telemetry.js.map +1 -1
  323. package/dist/tests/logger.js.map +1 -1
  324. package/dist/tests/telemetry.d.ts +1 -1
  325. package/dist/transformers.js +4 -2
  326. package/dist/transformers.js.map +1 -1
  327. package/package.json +3 -3
  328. package/src/cache/index.ts +1 -0
  329. package/src/cache/interface.ts +22 -22
  330. package/src/cache/memoryCache.test.ts +7 -7
  331. package/src/cache/memoryCache.ts +5 -5
  332. package/src/cache/nullCache.ts +38 -0
  333. package/src/config.ts +17 -2
  334. package/src/crypto/driveCrypto.test.ts +15 -15
  335. package/src/crypto/driveCrypto.ts +120 -156
  336. package/src/crypto/hmac.ts +1 -1
  337. package/src/crypto/interface.ts +63 -72
  338. package/src/crypto/openPGPCrypto.ts +76 -94
  339. package/src/crypto/utils.ts +1 -1
  340. package/src/diagnostic/eventsGenerator.ts +48 -0
  341. package/src/diagnostic/httpClient.ts +84 -0
  342. package/src/diagnostic/index.ts +40 -0
  343. package/src/diagnostic/integrityVerificationStream.ts +55 -0
  344. package/src/diagnostic/interface.ts +158 -0
  345. package/src/diagnostic/sdkDiagnostic.ts +249 -0
  346. package/src/diagnostic/sdkDiagnosticFull.ts +37 -0
  347. package/src/diagnostic/telemetry.ts +74 -0
  348. package/src/diagnostic/zipGenerators.test.ts +177 -0
  349. package/src/diagnostic/zipGenerators.ts +70 -0
  350. package/src/errors.ts +25 -22
  351. package/src/index.ts +3 -3
  352. package/src/interface/account.ts +10 -10
  353. package/src/interface/author.ts +6 -6
  354. package/src/interface/config.ts +28 -0
  355. package/src/interface/devices.ts +6 -6
  356. package/src/interface/download.ts +12 -9
  357. package/src/interface/events.ts +76 -25
  358. package/src/interface/httpClient.ts +11 -27
  359. package/src/interface/index.ts +81 -20
  360. package/src/interface/nodes.ts +67 -60
  361. package/src/interface/result.ts +1 -3
  362. package/src/interface/sharing.ts +60 -56
  363. package/src/interface/telemetry.ts +74 -74
  364. package/src/interface/thumbnail.ts +5 -6
  365. package/src/interface/upload.ts +25 -11
  366. package/src/internal/apiService/apiService.test.ts +109 -76
  367. package/src/internal/apiService/apiService.ts +40 -26
  368. package/src/internal/apiService/coreTypes.ts +2474 -2463
  369. package/src/internal/apiService/driveTypes.ts +1868 -1822
  370. package/src/internal/apiService/errorCodes.ts +4 -4
  371. package/src/internal/apiService/errors.test.ts +25 -23
  372. package/src/internal/apiService/errors.ts +15 -9
  373. package/src/internal/apiService/index.ts +1 -1
  374. package/src/internal/apiService/transformers.ts +2 -2
  375. package/src/internal/asyncIteratorMap.test.ts +4 -4
  376. package/src/internal/asyncIteratorMap.ts +1 -1
  377. package/src/internal/asyncIteratorRace.test.ts +149 -0
  378. package/src/internal/asyncIteratorRace.ts +79 -0
  379. package/src/internal/batch.test.ts +50 -0
  380. package/src/internal/batch.ts +9 -0
  381. package/src/internal/batchLoading.test.ts +13 -14
  382. package/src/internal/batchLoading.ts +8 -8
  383. package/src/internal/devices/apiService.ts +58 -51
  384. package/src/internal/devices/cryptoService.ts +22 -17
  385. package/src/internal/devices/index.ts +17 -10
  386. package/src/internal/devices/interface.ts +21 -12
  387. package/src/internal/devices/manager.test.ts +40 -9
  388. package/src/internal/devices/manager.ts +3 -3
  389. package/src/internal/download/apiService.ts +72 -52
  390. package/src/internal/download/cryptoService.ts +34 -18
  391. package/src/internal/download/fileDownloader.test.ts +25 -9
  392. package/src/internal/download/fileDownloader.ts +38 -20
  393. package/src/internal/download/index.ts +19 -19
  394. package/src/internal/download/interface.ts +19 -20
  395. package/src/internal/download/queue.ts +3 -3
  396. package/src/internal/download/telemetry.test.ts +11 -11
  397. package/src/internal/download/telemetry.ts +24 -14
  398. package/src/internal/download/thumbnailDownloader.test.ts +11 -6
  399. package/src/internal/download/thumbnailDownloader.ts +43 -32
  400. package/src/internal/errors.ts +7 -5
  401. package/src/internal/events/apiService.ts +46 -36
  402. package/src/internal/events/coreEventManager.test.ts +101 -0
  403. package/src/internal/events/coreEventManager.ts +26 -48
  404. package/src/internal/events/eventManager.test.ts +211 -93
  405. package/src/internal/events/eventManager.ts +72 -117
  406. package/src/internal/events/index.ts +71 -91
  407. package/src/internal/events/interface.ts +92 -29
  408. package/src/internal/events/volumeEventManager.test.ts +239 -0
  409. package/src/internal/events/volumeEventManager.ts +68 -57
  410. package/src/internal/nodes/apiService.test.ts +197 -147
  411. package/src/internal/nodes/apiService.ts +288 -174
  412. package/src/internal/nodes/cache.test.ts +48 -20
  413. package/src/internal/nodes/cache.ts +79 -45
  414. package/src/internal/nodes/cryptoCache.test.ts +34 -14
  415. package/src/internal/nodes/cryptoCache.ts +10 -5
  416. package/src/internal/nodes/cryptoService.test.ts +492 -351
  417. package/src/internal/nodes/cryptoService.ts +171 -89
  418. package/src/internal/nodes/events.test.ts +48 -344
  419. package/src/internal/nodes/events.ts +48 -254
  420. package/src/internal/nodes/extendedAttributes.test.ts +28 -24
  421. package/src/internal/nodes/extendedAttributes.ts +20 -15
  422. package/src/internal/nodes/index.test.ts +51 -55
  423. package/src/internal/nodes/index.ts +32 -22
  424. package/src/internal/nodes/interface.ts +44 -31
  425. package/src/internal/nodes/nodesAccess.test.ts +237 -130
  426. package/src/internal/nodes/nodesAccess.ts +113 -50
  427. package/src/internal/nodes/nodesManagement.test.ts +64 -39
  428. package/src/internal/nodes/nodesManagement.ts +51 -62
  429. package/src/internal/nodes/nodesRevisions.ts +7 -7
  430. package/src/internal/nodes/validations.ts +2 -2
  431. package/src/internal/photos/albums.ts +5 -5
  432. package/src/internal/photos/apiService.ts +4 -7
  433. package/src/internal/photos/cache.ts +1 -1
  434. package/src/internal/photos/index.ts +8 -8
  435. package/src/internal/photos/interface.ts +2 -2
  436. package/src/internal/photos/photosTimeline.ts +4 -5
  437. package/src/internal/sdkEvents.test.ts +10 -10
  438. package/src/internal/sdkEvents.ts +5 -13
  439. package/src/internal/shares/apiService.ts +44 -33
  440. package/src/internal/shares/cache.test.ts +6 -4
  441. package/src/internal/shares/cache.ts +25 -14
  442. package/src/internal/shares/cryptoCache.test.ts +17 -11
  443. package/src/internal/shares/cryptoCache.ts +4 -4
  444. package/src/internal/shares/cryptoService.test.ts +72 -74
  445. package/src/internal/shares/cryptoService.ts +48 -23
  446. package/src/internal/shares/index.ts +23 -11
  447. package/src/internal/shares/interface.ts +8 -8
  448. package/src/internal/shares/manager.test.ts +88 -80
  449. package/src/internal/shares/manager.ts +27 -23
  450. package/src/internal/sharing/apiService.ts +283 -175
  451. package/src/internal/sharing/cache.test.ts +35 -35
  452. package/src/internal/sharing/cache.ts +3 -3
  453. package/src/internal/sharing/cryptoService.test.ts +58 -46
  454. package/src/internal/sharing/cryptoService.ts +121 -83
  455. package/src/internal/sharing/events.test.ts +97 -207
  456. package/src/internal/sharing/events.ts +46 -157
  457. package/src/internal/sharing/index.ts +24 -16
  458. package/src/internal/sharing/interface.ts +46 -42
  459. package/src/internal/sharing/sharingAccess.test.ts +71 -65
  460. package/src/internal/sharing/sharingAccess.ts +39 -21
  461. package/src/internal/sharing/sharingManagement.test.ts +405 -335
  462. package/src/internal/sharing/sharingManagement.ts +144 -75
  463. package/src/internal/uids.ts +1 -1
  464. package/src/internal/upload/apiService.ts +168 -119
  465. package/src/internal/upload/blockVerifier.ts +8 -6
  466. package/src/internal/upload/chunkStreamReader.test.ts +7 -7
  467. package/src/internal/upload/cryptoService.ts +42 -36
  468. package/src/internal/upload/digests.ts +2 -2
  469. package/src/internal/upload/fileUploader.test.ts +15 -3
  470. package/src/internal/upload/fileUploader.ts +39 -17
  471. package/src/internal/upload/index.ts +17 -18
  472. package/src/internal/upload/interface.ts +79 -77
  473. package/src/internal/upload/manager.test.ts +222 -175
  474. package/src/internal/upload/manager.ts +74 -80
  475. package/src/internal/upload/queue.ts +3 -3
  476. package/src/internal/upload/streamUploader.test.ts +40 -27
  477. package/src/internal/upload/streamUploader.ts +87 -71
  478. package/src/internal/upload/telemetry.test.ts +11 -11
  479. package/src/internal/upload/telemetry.ts +25 -15
  480. package/src/internal/wait.test.ts +1 -1
  481. package/src/internal/wait.ts +3 -3
  482. package/src/protonDriveClient.ts +189 -276
  483. package/src/protonDrivePhotosClient.ts +20 -13
  484. package/src/telemetry.ts +60 -52
  485. package/src/tests/logger.ts +1 -1
  486. package/src/tests/telemetry.ts +2 -2
  487. package/src/transformers.ts +27 -21
  488. package/src/version.ts +0 -1
  489. package/dist/internal/events/cache.d.ts +0 -28
  490. package/dist/internal/events/cache.js +0 -67
  491. package/dist/internal/events/cache.js.map +0 -1
  492. package/dist/internal/events/cache.test.js +0 -43
  493. package/dist/internal/events/cache.test.js.map +0 -1
  494. package/src/internal/events/cache.test.ts +0 -47
  495. package/src/internal/events/cache.ts +0 -80
  496. /package/dist/{internal/events/cache.test.d.ts → diagnostic/zipGenerators.test.d.ts} +0 -0
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const interface_1 = require("../../interface");
4
4
  const telemetry_1 = require("../../tests/telemetry");
5
5
  const cryptoService_1 = require("./cryptoService");
6
- describe("SharingCryptoService", () => {
6
+ describe('SharingCryptoService', () => {
7
7
  let telemetry;
8
8
  let driveCrypto;
9
9
  let account;
@@ -13,69 +13,69 @@ describe("SharingCryptoService", () => {
13
13
  telemetry = (0, telemetry_1.getMockTelemetry)();
14
14
  // @ts-expect-error No need to implement all methods for mocking
15
15
  driveCrypto = {
16
- decryptShareUrlPassword: jest.fn().mockResolvedValue("urlPassword"),
16
+ decryptShareUrlPassword: jest.fn().mockResolvedValue('urlPassword'),
17
17
  decryptKeyWithSrpPassword: jest.fn().mockResolvedValue({
18
- key: "decryptedKey",
18
+ key: 'decryptedKey',
19
19
  }),
20
20
  decryptNodeName: jest.fn().mockResolvedValue({
21
- name: "nodeName",
21
+ name: 'nodeName',
22
22
  }),
23
23
  };
24
24
  account = {
25
25
  // @ts-expect-error No need to implement full response for mocking
26
26
  getOwnAddress: jest.fn(async () => ({
27
- keys: [{ key: "addressKey" }],
27
+ keys: [{ key: 'addressKey' }],
28
28
  })),
29
29
  };
30
30
  // @ts-expect-error No need to implement all methods for mocking
31
31
  sharesService = {
32
32
  getMyFilesShareMemberEmailKey: jest.fn().mockResolvedValue({
33
- addressId: "addressId",
33
+ addressId: 'addressId',
34
34
  }),
35
35
  };
36
36
  cryptoService = new cryptoService_1.SharingCryptoService(telemetry, driveCrypto, account, sharesService);
37
37
  });
38
- describe("decryptBookmark", () => {
38
+ describe('decryptBookmark', () => {
39
39
  const encryptedBookmark = {
40
- tokenId: "tokenId",
40
+ tokenId: 'tokenId',
41
41
  creationTime: new Date(),
42
42
  url: {
43
- encryptedUrlPassword: "encryptedUrlPassword",
44
- base64SharePasswordSalt: "base64SharePasswordSalt",
43
+ encryptedUrlPassword: 'encryptedUrlPassword',
44
+ base64SharePasswordSalt: 'base64SharePasswordSalt',
45
45
  },
46
46
  share: {
47
- armoredKey: "armoredKey",
48
- armoredPassphrase: "armoredPassphrase",
47
+ armoredKey: 'armoredKey',
48
+ armoredPassphrase: 'armoredPassphrase',
49
49
  },
50
50
  node: {
51
51
  type: interface_1.NodeType.File,
52
- mediaType: "mediaType",
53
- encryptedName: "encryptedName",
54
- armoredKey: "armoredKey",
55
- armoredNodePassphrase: "armoredNodePassphrase",
52
+ mediaType: 'mediaType',
53
+ encryptedName: 'encryptedName',
54
+ armoredKey: 'armoredKey',
55
+ armoredNodePassphrase: 'armoredNodePassphrase',
56
56
  file: {
57
- base64ContentKeyPacket: "base64ContentKeyPacket",
57
+ base64ContentKeyPacket: 'base64ContentKeyPacket',
58
58
  },
59
59
  },
60
60
  };
61
- it("should decrypt bookmark", async () => {
61
+ it('should decrypt bookmark', async () => {
62
62
  const result = await cryptoService.decryptBookmark(encryptedBookmark);
63
63
  expect(result).toMatchObject({
64
- url: (0, interface_1.resultOk)("https://drive.proton.me/urls/tokenId#urlPassword"),
65
- nodeName: (0, interface_1.resultOk)("nodeName"),
64
+ url: (0, interface_1.resultOk)('https://drive.proton.me/urls/tokenId#urlPassword'),
65
+ nodeName: (0, interface_1.resultOk)('nodeName'),
66
66
  });
67
- expect(driveCrypto.decryptShareUrlPassword).toHaveBeenCalledWith("encryptedUrlPassword", ["addressKey"]);
68
- expect(driveCrypto.decryptKeyWithSrpPassword).toHaveBeenCalledWith("urlPassword", "base64SharePasswordSalt", "armoredKey", "armoredPassphrase");
69
- expect(driveCrypto.decryptNodeName).toHaveBeenCalledWith("encryptedName", "decryptedKey", []);
67
+ expect(driveCrypto.decryptShareUrlPassword).toHaveBeenCalledWith('encryptedUrlPassword', ['addressKey']);
68
+ expect(driveCrypto.decryptKeyWithSrpPassword).toHaveBeenCalledWith('urlPassword', 'base64SharePasswordSalt', 'armoredKey', 'armoredPassphrase');
69
+ expect(driveCrypto.decryptNodeName).toHaveBeenCalledWith('encryptedName', 'decryptedKey', []);
70
70
  expect(telemetry.logEvent).not.toHaveBeenCalled();
71
71
  });
72
- it("should handle undecryptable URL password", async () => {
73
- const error = new Error("Failed to decrypt URL password");
72
+ it('should handle undecryptable URL password', async () => {
73
+ const error = new Error('Failed to decrypt URL password');
74
74
  driveCrypto.decryptShareUrlPassword = jest.fn().mockRejectedValue(error);
75
75
  const result = await cryptoService.decryptBookmark(encryptedBookmark);
76
76
  expect(result).toMatchObject({
77
- url: (0, interface_1.resultError)(new Error("Failed to decrypt bookmark password: Failed to decrypt URL password")),
78
- nodeName: (0, interface_1.resultError)(new Error("Failed to decrypt bookmark password: Failed to decrypt URL password")),
77
+ url: (0, interface_1.resultError)(new Error('Failed to decrypt bookmark password: Failed to decrypt URL password')),
78
+ nodeName: (0, interface_1.resultError)(new Error('Failed to decrypt bookmark password: Failed to decrypt URL password')),
79
79
  });
80
80
  expect(telemetry.logEvent).toHaveBeenCalledWith({
81
81
  eventName: 'decryptionError',
@@ -84,13 +84,13 @@ describe("SharingCryptoService", () => {
84
84
  error,
85
85
  });
86
86
  });
87
- it("should handle undecryptable share key", async () => {
88
- const error = new Error("Failed to decrypt share key");
87
+ it('should handle undecryptable share key', async () => {
88
+ const error = new Error('Failed to decrypt share key');
89
89
  driveCrypto.decryptKeyWithSrpPassword = jest.fn().mockRejectedValue(error);
90
90
  const result = await cryptoService.decryptBookmark(encryptedBookmark);
91
91
  expect(result).toMatchObject({
92
- url: (0, interface_1.resultOk)("https://drive.proton.me/urls/tokenId#urlPassword"),
93
- nodeName: (0, interface_1.resultError)(new Error("Failed to decrypt bookmark key: Failed to decrypt share key")),
92
+ url: (0, interface_1.resultOk)('https://drive.proton.me/urls/tokenId#urlPassword'),
93
+ nodeName: (0, interface_1.resultError)(new Error('Failed to decrypt bookmark key: Failed to decrypt share key')),
94
94
  });
95
95
  expect(telemetry.logEvent).toHaveBeenCalledWith({
96
96
  eventName: 'decryptionError',
@@ -99,13 +99,13 @@ describe("SharingCryptoService", () => {
99
99
  error,
100
100
  });
101
101
  });
102
- it("should handle undecryptable node name", async () => {
103
- const error = new Error("Failed to decrypt node name");
102
+ it('should handle undecryptable node name', async () => {
103
+ const error = new Error('Failed to decrypt node name');
104
104
  driveCrypto.decryptNodeName = jest.fn().mockRejectedValue(error);
105
105
  const result = await cryptoService.decryptBookmark(encryptedBookmark);
106
106
  expect(result).toMatchObject({
107
- url: (0, interface_1.resultOk)("https://drive.proton.me/urls/tokenId#urlPassword"),
108
- nodeName: (0, interface_1.resultError)(new Error("Failed to decrypt bookmark name: Failed to decrypt node name")),
107
+ url: (0, interface_1.resultOk)('https://drive.proton.me/urls/tokenId#urlPassword'),
108
+ nodeName: (0, interface_1.resultError)(new Error('Failed to decrypt bookmark name: Failed to decrypt node name')),
109
109
  });
110
110
  expect(telemetry.logEvent).toHaveBeenCalledWith({
111
111
  eventName: 'decryptionError',
@@ -114,15 +114,15 @@ describe("SharingCryptoService", () => {
114
114
  error,
115
115
  });
116
116
  });
117
- it("should handle invalid node name", async () => {
117
+ it('should handle invalid node name', async () => {
118
118
  driveCrypto.decryptNodeName = jest.fn().mockResolvedValue({
119
- name: "invalid/name",
119
+ name: 'invalid/name',
120
120
  });
121
121
  const result = await cryptoService.decryptBookmark(encryptedBookmark);
122
122
  expect(result).toMatchObject({
123
- url: (0, interface_1.resultOk)("https://drive.proton.me/urls/tokenId#urlPassword"),
123
+ url: (0, interface_1.resultOk)('https://drive.proton.me/urls/tokenId#urlPassword'),
124
124
  nodeName: (0, interface_1.resultError)({
125
- name: "invalid/name",
125
+ name: 'invalid/name',
126
126
  error: "Name must not contain the character '/'",
127
127
  }),
128
128
  });
@@ -1 +1 @@
1
- {"version":3,"file":"cryptoService.test.js","sourceRoot":"","sources":["../../../src/internal/sharing/cryptoService.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cryptoService.test.js","sourceRoot":"","sources":["../../../src/internal/sharing/cryptoService.test.ts"],"names":[],"mappings":"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"}
@@ -1,57 +1,25 @@
1
- import { NodeEventCallback, Logger } from "../../interface";
2
- import { DriveEventsService, DriveEvent } from "../events";
3
- import { SharingCache } from "./cache";
4
- import { SharingType, NodesService } from "./interface";
5
- import { SharingAccess } from "./sharingAccess";
6
- type Listeners = {
7
- type: SharingType;
8
- callback: NodeEventCallback;
9
- }[];
10
- /**
11
- * Provides both event handling and subscription mechanism for user.
12
- *
13
- * The service is responsible for handling events regarding sharing listing
14
- * from the DriveEventsService, and for providing a subscription mechanism
15
- * for the user to listen to updates of specific group of nodes, such as
16
- * any update to list of shared with me nodes.
17
- */
18
- export declare class SharingEvents {
19
- private listeners;
20
- constructor(logger: Logger, events: DriveEventsService, cache: SharingCache, nodesService: NodesService, sharingAccess: SharingAccess);
21
- subscribeToSharedNodesByMe(callback: NodeEventCallback): () => void;
22
- subscribeToSharedNodesWithMe(callback: NodeEventCallback): () => void;
1
+ import { Logger } from '../../interface';
2
+ import { DriveEvent } from '../events';
3
+ import { SharingCache } from './cache';
4
+ import { SharesService } from './interface';
5
+ export declare class SharingEventHandler {
6
+ private logger;
7
+ private cache;
8
+ private shares;
9
+ constructor(logger: Logger, cache: SharingCache, shares: SharesService);
10
+ /**
11
+ * Update cache and notify listeners accordingly for any updates
12
+ * to nodes that are shared by me.
13
+ *
14
+ * Any node create or update that is being shared, is automatically
15
+ * added to the cache and the listeners are notified about the
16
+ * update of the node.
17
+ *
18
+ * Any node delete or update that is not being shared, and the cache
19
+ * includes the node, is removed from the cache and the listeners are
20
+ * notified about the removal of the node.
21
+ *
22
+ * @throws Only if the client's callback throws.
23
+ */
24
+ handleDriveEvent(event: DriveEvent): Promise<void>;
23
25
  }
24
- /**
25
- * Update cache and notify listeners accordingly for any updates
26
- * to nodes that are shared by me.
27
- *
28
- * Any node create or update that is being shared, is automatically
29
- * added to the cache and the listeners are notified about the
30
- * update of the node.
31
- *
32
- * Any node delete or update that is not being shared, and the cache
33
- * includes the node, is removed from the cache and the listeners are
34
- * notified about the removal of the node.
35
- *
36
- * @throws Only if the client's callback throws.
37
- */
38
- export declare function handleSharedByMeNodes(logger: Logger, event: DriveEvent, cache: SharingCache, listeners: Listeners, nodesService: NodesService): Promise<void>;
39
- /**
40
- * Update cache and notify listeners accordingly for any updates
41
- * to nodes that are shared with me.
42
- *
43
- * There is only one event type that is relevant for shared with me
44
- * nodes, which is the ShareWithMeUpdated event. The event is triggered
45
- * when the list of shared with me nodes is updated.
46
- *
47
- * The cache is cleared and re-populated fully when the client
48
- * requests the list of shared with me, or is actively listening.
49
- *
50
- * If the client listenes to shared with me updates, the client receives
51
- * update to the full list of shared with me nodes, including remove
52
- * updates for nodes that are no longer shared with me, but was before.
53
- *
54
- * @throws Only if the client's callback throws.
55
- */
56
- export declare function handleSharedWithMeNodes(event: DriveEvent, cache: SharingCache, listeners: Listeners, sharingAccess: SharingAccess): Promise<void>;
57
- export {};
@@ -1,153 +1,60 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SharingEvents = void 0;
4
- exports.handleSharedByMeNodes = handleSharedByMeNodes;
5
- exports.handleSharedWithMeNodes = handleSharedWithMeNodes;
6
- const transformers_1 = require("../../transformers");
3
+ exports.SharingEventHandler = void 0;
7
4
  const events_1 = require("../events");
8
- const interface_1 = require("./interface");
9
- /**
10
- * Provides both event handling and subscription mechanism for user.
11
- *
12
- * The service is responsible for handling events regarding sharing listing
13
- * from the DriveEventsService, and for providing a subscription mechanism
14
- * for the user to listen to updates of specific group of nodes, such as
15
- * any update to list of shared with me nodes.
16
- */
17
- class SharingEvents {
18
- listeners = [];
19
- constructor(logger, events, cache, nodesService, sharingAccess) {
20
- events.addListener(async (events, fullRefreshVolumeId) => {
21
- // Technically we need to refresh only the shared by me nodes for
22
- // own volume, and shared with me nodes only when the event comes
23
- // as core refresh event is converted to it.
24
- // We can optimise later, for now we refresh everything to make
25
- // it simpler. The cache is smart enough to not do unnecessary
26
- // requests to the API and refresh on web is rare without
27
- // persistant cache for now.
28
- if (fullRefreshVolumeId) {
29
- await cache.setSharedByMeNodeUids(undefined);
30
- await cache.setSharedWithMeNodeUids(undefined);
5
+ class SharingEventHandler {
6
+ logger;
7
+ cache;
8
+ shares;
9
+ constructor(logger, cache, shares) {
10
+ this.logger = logger;
11
+ this.cache = cache;
12
+ this.shares = shares;
13
+ }
14
+ /**
15
+ * Update cache and notify listeners accordingly for any updates
16
+ * to nodes that are shared by me.
17
+ *
18
+ * Any node create or update that is being shared, is automatically
19
+ * added to the cache and the listeners are notified about the
20
+ * update of the node.
21
+ *
22
+ * Any node delete or update that is not being shared, and the cache
23
+ * includes the node, is removed from the cache and the listeners are
24
+ * notified about the removal of the node.
25
+ *
26
+ * @throws Only if the client's callback throws.
27
+ */
28
+ async handleDriveEvent(event) {
29
+ try {
30
+ if (event.type === events_1.DriveEventType.SharedWithMeUpdated) {
31
+ await this.cache.setSharedWithMeNodeUids(undefined);
31
32
  return;
32
33
  }
33
- for (const event of events) {
34
- await handleSharedByMeNodes(logger, event, cache, this.listeners, nodesService);
35
- await handleSharedWithMeNodes(event, cache, this.listeners, sharingAccess);
36
- }
37
- });
38
- }
39
- subscribeToSharedNodesByMe(callback) {
40
- this.listeners.push({ type: interface_1.SharingType.SharedByMe, callback });
41
- return () => {
42
- this.listeners = this.listeners.filter(listener => listener.callback !== callback);
43
- };
44
- }
45
- subscribeToSharedNodesWithMe(callback) {
46
- this.listeners.push({ type: interface_1.SharingType.sharedWithMe, callback });
47
- return () => {
48
- this.listeners = this.listeners.filter(listener => listener.callback !== callback);
49
- };
50
- }
51
- }
52
- exports.SharingEvents = SharingEvents;
53
- /**
54
- * Update cache and notify listeners accordingly for any updates
55
- * to nodes that are shared by me.
56
- *
57
- * Any node create or update that is being shared, is automatically
58
- * added to the cache and the listeners are notified about the
59
- * update of the node.
60
- *
61
- * Any node delete or update that is not being shared, and the cache
62
- * includes the node, is removed from the cache and the listeners are
63
- * notified about the removal of the node.
64
- *
65
- * @throws Only if the client's callback throws.
66
- */
67
- async function handleSharedByMeNodes(logger, event, cache, listeners, nodesService) {
68
- if (event.type === events_1.DriveEventType.ShareWithMeUpdated || !event.isOwnVolume) {
69
- return;
70
- }
71
- const subscribedListeners = listeners.filter(({ type }) => type === interface_1.SharingType.SharedByMe);
72
- if ([events_1.DriveEventType.NodeCreated, events_1.DriveEventType.NodeUpdated, events_1.DriveEventType.NodeUpdatedMetadata].includes(event.type) && event.isShared) {
73
- try {
74
- await cache.addSharedByMeNodeUid(event.nodeUid);
75
- }
76
- catch (error) {
77
- logger.error(`Skipping shared by me node cache update`, error);
78
- }
79
- if (subscribedListeners.length) {
80
- let node;
81
- try {
82
- node = await nodesService.getNode(event.nodeUid);
34
+ if (!(await this.shares.isOwnVolume(event.treeEventScopeId))) {
35
+ return;
83
36
  }
84
- catch (error) {
85
- logger.error(`Skipping shared by me node update event to listener`, error);
37
+ if (event.type === events_1.DriveEventType.NodeCreated || event.type == events_1.DriveEventType.NodeUpdated) {
38
+ if (event.isShared && !event.isTrashed) {
39
+ await this.cache.addSharedByMeNodeUid(event.nodeUid);
40
+ }
41
+ else {
42
+ await this.cache.removeSharedByMeNodeUid(event.nodeUid);
43
+ }
86
44
  return;
87
45
  }
88
- subscribedListeners.forEach(({ callback }) => callback({ type: 'update', uid: node.uid, node: (0, transformers_1.convertInternalNode)(node) }));
89
- }
90
- }
91
- if (((event.type === events_1.DriveEventType.NodeUpdated || event.type === events_1.DriveEventType.NodeUpdatedMetadata) && !event.isShared)
92
- || event.type === events_1.DriveEventType.NodeDeleted) {
93
- let nodeWasShared = false;
94
- try {
95
- const cachedNodeUids = await cache.getSharedByMeNodeUids();
96
- nodeWasShared = cachedNodeUids.includes(event.nodeUid);
97
- }
98
- catch {
99
- // Cache can be empty.
100
- }
101
- if (nodeWasShared) {
102
- try {
103
- await cache.removeSharedByMeNodeUid(event.nodeUid);
46
+ if (event.type === events_1.DriveEventType.NodeDeleted) {
47
+ await this.cache.removeSharedByMeNodeUid(event.nodeUid);
48
+ return;
104
49
  }
105
- catch (error) {
106
- logger.error(`Skipping shared by me node cache remove`, error);
50
+ if (event.type === events_1.DriveEventType.TreeRefresh || event.type === events_1.DriveEventType.TreeRemove) {
51
+ await this.cache.setSharedWithMeNodeUids(undefined);
107
52
  }
108
- subscribedListeners.forEach(({ callback }) => callback({ type: 'remove', uid: event.nodeUid }));
109
- }
110
- }
111
- }
112
- /**
113
- * Update cache and notify listeners accordingly for any updates
114
- * to nodes that are shared with me.
115
- *
116
- * There is only one event type that is relevant for shared with me
117
- * nodes, which is the ShareWithMeUpdated event. The event is triggered
118
- * when the list of shared with me nodes is updated.
119
- *
120
- * The cache is cleared and re-populated fully when the client
121
- * requests the list of shared with me, or is actively listening.
122
- *
123
- * If the client listenes to shared with me updates, the client receives
124
- * update to the full list of shared with me nodes, including remove
125
- * updates for nodes that are no longer shared with me, but was before.
126
- *
127
- * @throws Only if the client's callback throws.
128
- */
129
- async function handleSharedWithMeNodes(event, cache, listeners, sharingAccess) {
130
- if (event.type !== events_1.DriveEventType.ShareWithMeUpdated) {
131
- return;
132
- }
133
- let cachedNodeUids = [];
134
- const subscribedListeners = listeners.filter(({ type }) => type === interface_1.SharingType.sharedWithMe);
135
- if (subscribedListeners.length) {
136
- cachedNodeUids = await cache.getSharedWithMeNodeUids();
137
- }
138
- // Clearing the cache must be first, sharingAccess is no-op if cache is set.
139
- await cache.setSharedWithMeNodeUids(undefined);
140
- if (subscribedListeners.length) {
141
- const nodeUids = [];
142
- for await (const node of sharingAccess.iterateSharedNodesWithMe()) {
143
- nodeUids.push(node.uid);
144
- subscribedListeners.forEach(({ callback }) => callback({ type: 'update', uid: node.uid, node: (0, transformers_1.convertInternalNode)(node) }));
145
53
  }
146
- for (const nodeUid of cachedNodeUids) {
147
- if (!nodeUids.includes(nodeUid)) {
148
- subscribedListeners.forEach(({ callback }) => callback({ type: 'remove', uid: nodeUid }));
149
- }
54
+ catch (error) {
55
+ this.logger.error(`Skipping shared by me node cache update`, error);
150
56
  }
151
57
  }
152
58
  }
59
+ exports.SharingEventHandler = SharingEventHandler;
153
60
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/internal/sharing/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/internal/sharing/events.ts"],"names":[],"mappings":";;;AACA,sCAAuD;AAIvD,MAAa,mBAAmB;IAEhB;IACA;IACA;IAHZ,YACY,MAAc,EACd,KAAmB,EACnB,MAAqB;QAFrB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAc;QACnB,WAAM,GAAN,MAAM,CAAe;IAC9B,CAAC;IAEJ;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAiB;QACpC,IAAI,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAc,CAAC,mBAAmB,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;gBACpD,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;gBAC3D,OAAO;YACX,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAc,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,IAAI,uBAAc,CAAC,WAAW,EAAE,CAAC;gBACxF,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBACrC,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACJ,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC5D,CAAC;gBACD,OAAO;YACX,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAc,CAAC,WAAW,EAAE,CAAC;gBAC5C,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACxD,OAAO;YACX,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAc,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAc,CAAC,UAAU,EAAE,CAAC;gBACxF,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACxD,CAAC;QACL,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;CACJ;AAjDD,kDAiDC"}