@enbox/dwn-sdk-js 0.0.5 → 0.0.7

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 (363) hide show
  1. package/dist/browser.mjs +8 -8
  2. package/dist/browser.mjs.map +4 -4
  3. package/dist/esm/generated/precompiled-validators.js +1 -2
  4. package/dist/esm/generated/precompiled-validators.js.map +1 -1
  5. package/dist/esm/src/core/abstract-message.js +4 -0
  6. package/dist/esm/src/core/abstract-message.js.map +1 -1
  7. package/dist/esm/src/core/auth.js +22 -33
  8. package/dist/esm/src/core/auth.js.map +1 -1
  9. package/dist/esm/src/core/dwn-constant.js +7 -7
  10. package/dist/esm/src/core/dwn-constant.js.map +1 -1
  11. package/dist/esm/src/core/dwn-error.js +1 -0
  12. package/dist/esm/src/core/dwn-error.js.map +1 -1
  13. package/dist/esm/src/core/grant-authorization.js +37 -52
  14. package/dist/esm/src/core/grant-authorization.js.map +1 -1
  15. package/dist/esm/src/core/message.js +85 -116
  16. package/dist/esm/src/core/message.js.map +1 -1
  17. package/dist/esm/src/core/messages-grant-authorization.js +63 -78
  18. package/dist/esm/src/core/messages-grant-authorization.js.map +1 -1
  19. package/dist/esm/src/core/protocol-authorization-action.js +266 -0
  20. package/dist/esm/src/core/protocol-authorization-action.js.map +1 -0
  21. package/dist/esm/src/core/protocol-authorization-validation.js +254 -0
  22. package/dist/esm/src/core/protocol-authorization-validation.js.map +1 -0
  23. package/dist/esm/src/core/protocol-authorization.js +122 -740
  24. package/dist/esm/src/core/protocol-authorization.js.map +1 -1
  25. package/dist/esm/src/core/protocols-grant-authorization.js +24 -38
  26. package/dist/esm/src/core/protocols-grant-authorization.js.map +1 -1
  27. package/dist/esm/src/core/record-chain.js +64 -0
  28. package/dist/esm/src/core/record-chain.js.map +1 -0
  29. package/dist/esm/src/core/records-grant-authorization.js +55 -72
  30. package/dist/esm/src/core/records-grant-authorization.js.map +1 -1
  31. package/dist/esm/src/core/resumable-task-manager.js +50 -65
  32. package/dist/esm/src/core/resumable-task-manager.js.map +1 -1
  33. package/dist/esm/src/core/tenant-gate.js +2 -13
  34. package/dist/esm/src/core/tenant-gate.js.map +1 -1
  35. package/dist/esm/src/dwn.js +69 -86
  36. package/dist/esm/src/dwn.js.map +1 -1
  37. package/dist/esm/src/event-stream/event-emitter-stream.js +17 -31
  38. package/dist/esm/src/event-stream/event-emitter-stream.js.map +1 -1
  39. package/dist/esm/src/handlers/messages-read.js +67 -77
  40. package/dist/esm/src/handlers/messages-read.js.map +1 -1
  41. package/dist/esm/src/handlers/messages-subscribe.js +51 -61
  42. package/dist/esm/src/handlers/messages-subscribe.js.map +1 -1
  43. package/dist/esm/src/handlers/messages-sync.js +75 -85
  44. package/dist/esm/src/handlers/messages-sync.js.map +1 -1
  45. package/dist/esm/src/handlers/protocols-configure.js +135 -155
  46. package/dist/esm/src/handlers/protocols-configure.js.map +1 -1
  47. package/dist/esm/src/handlers/protocols-query.js +52 -51
  48. package/dist/esm/src/handlers/protocols-query.js.map +1 -1
  49. package/dist/esm/src/handlers/records-count.js +96 -82
  50. package/dist/esm/src/handlers/records-count.js.map +1 -1
  51. package/dist/esm/src/handlers/records-delete.js +78 -88
  52. package/dist/esm/src/handlers/records-delete.js.map +1 -1
  53. package/dist/esm/src/handlers/records-query.js +116 -101
  54. package/dist/esm/src/handlers/records-query.js.map +1 -1
  55. package/dist/esm/src/handlers/records-read.js +124 -131
  56. package/dist/esm/src/handlers/records-read.js.map +1 -1
  57. package/dist/esm/src/handlers/records-subscribe.js +150 -103
  58. package/dist/esm/src/handlers/records-subscribe.js.map +1 -1
  59. package/dist/esm/src/handlers/records-write.js +250 -259
  60. package/dist/esm/src/handlers/records-write.js.map +1 -1
  61. package/dist/esm/src/interfaces/messages-read.js +24 -32
  62. package/dist/esm/src/interfaces/messages-read.js.map +1 -1
  63. package/dist/esm/src/interfaces/messages-subscribe.js +27 -41
  64. package/dist/esm/src/interfaces/messages-subscribe.js.map +1 -1
  65. package/dist/esm/src/interfaces/messages-sync.js +26 -40
  66. package/dist/esm/src/interfaces/messages-sync.js.map +1 -1
  67. package/dist/esm/src/interfaces/protocols-configure.js +63 -63
  68. package/dist/esm/src/interfaces/protocols-configure.js.map +1 -1
  69. package/dist/esm/src/interfaces/protocols-query.js +55 -68
  70. package/dist/esm/src/interfaces/protocols-query.js.map +1 -1
  71. package/dist/esm/src/interfaces/records-count.js +50 -66
  72. package/dist/esm/src/interfaces/records-count.js.map +1 -1
  73. package/dist/esm/src/interfaces/records-delete.js +45 -55
  74. package/dist/esm/src/interfaces/records-delete.js.map +1 -1
  75. package/dist/esm/src/interfaces/records-query.js +60 -76
  76. package/dist/esm/src/interfaces/records-query.js.map +1 -1
  77. package/dist/esm/src/interfaces/records-read.js +51 -67
  78. package/dist/esm/src/interfaces/records-read.js.map +1 -1
  79. package/dist/esm/src/interfaces/records-subscribe.js +52 -68
  80. package/dist/esm/src/interfaces/records-subscribe.js.map +1 -1
  81. package/dist/esm/src/interfaces/records-write-query.js +102 -0
  82. package/dist/esm/src/interfaces/records-write-query.js.map +1 -0
  83. package/dist/esm/src/interfaces/records-write-signing.js +92 -0
  84. package/dist/esm/src/interfaces/records-write-signing.js.map +1 -0
  85. package/dist/esm/src/interfaces/records-write.js +407 -602
  86. package/dist/esm/src/interfaces/records-write.js.map +1 -1
  87. package/dist/esm/src/jose/algorithms/signing/ed25519.js +10 -19
  88. package/dist/esm/src/jose/algorithms/signing/ed25519.js.map +1 -1
  89. package/dist/esm/src/jose/jws/general/builder.js +23 -35
  90. package/dist/esm/src/jose/jws/general/builder.js.map +1 -1
  91. package/dist/esm/src/jose/jws/general/verifier.js +56 -69
  92. package/dist/esm/src/jose/jws/general/verifier.js.map +1 -1
  93. package/dist/esm/src/protocols/permission-grant.js +44 -15
  94. package/dist/esm/src/protocols/permission-grant.js.map +1 -1
  95. package/dist/esm/src/protocols/permission-request.js +29 -15
  96. package/dist/esm/src/protocols/permission-request.js.map +1 -1
  97. package/dist/esm/src/protocols/permissions.js +216 -226
  98. package/dist/esm/src/protocols/permissions.js.map +1 -1
  99. package/dist/esm/src/smt/smt-store-level.js +42 -64
  100. package/dist/esm/src/smt/smt-store-level.js.map +1 -1
  101. package/dist/esm/src/smt/smt-store-memory.js +19 -45
  102. package/dist/esm/src/smt/smt-store-memory.js.map +1 -1
  103. package/dist/esm/src/smt/smt-utils.js +28 -45
  104. package/dist/esm/src/smt/smt-utils.js.map +1 -1
  105. package/dist/esm/src/smt/sparse-merkle-tree.js +426 -471
  106. package/dist/esm/src/smt/sparse-merkle-tree.js.map +1 -1
  107. package/dist/esm/src/state-index/state-index-level.js +115 -150
  108. package/dist/esm/src/state-index/state-index-level.js.map +1 -1
  109. package/dist/esm/src/store/blockstore-level.js +54 -156
  110. package/dist/esm/src/store/blockstore-level.js.map +1 -1
  111. package/dist/esm/src/store/blockstore-mock.js +48 -153
  112. package/dist/esm/src/store/blockstore-mock.js.map +1 -1
  113. package/dist/esm/src/store/data-store-level.js +59 -99
  114. package/dist/esm/src/store/data-store-level.js.map +1 -1
  115. package/dist/esm/src/store/index-level-compound.js +246 -0
  116. package/dist/esm/src/store/index-level-compound.js.map +1 -0
  117. package/dist/esm/src/store/index-level.js +295 -713
  118. package/dist/esm/src/store/index-level.js.map +1 -1
  119. package/dist/esm/src/store/level-wrapper.js +143 -244
  120. package/dist/esm/src/store/level-wrapper.js.map +1 -1
  121. package/dist/esm/src/store/message-store-level.js +71 -94
  122. package/dist/esm/src/store/message-store-level.js.map +1 -1
  123. package/dist/esm/src/store/resumable-task-store-level.js +62 -101
  124. package/dist/esm/src/store/resumable-task-store-level.js.map +1 -1
  125. package/dist/esm/src/store/storage-controller.js +129 -144
  126. package/dist/esm/src/store/storage-controller.js.map +1 -1
  127. package/dist/esm/src/utils/abort.js +8 -19
  128. package/dist/esm/src/utils/abort.js.map +1 -1
  129. package/dist/esm/src/utils/array.js +15 -49
  130. package/dist/esm/src/utils/array.js.map +1 -1
  131. package/dist/esm/src/utils/cid.js +29 -77
  132. package/dist/esm/src/utils/cid.js.map +1 -1
  133. package/dist/esm/src/utils/data-stream.js +37 -65
  134. package/dist/esm/src/utils/data-stream.js.map +1 -1
  135. package/dist/esm/src/utils/encryption.js +136 -162
  136. package/dist/esm/src/utils/encryption.js.map +1 -1
  137. package/dist/esm/src/utils/filter.js +1 -12
  138. package/dist/esm/src/utils/filter.js.map +1 -1
  139. package/dist/esm/src/utils/hd-key.js +45 -63
  140. package/dist/esm/src/utils/hd-key.js.map +1 -1
  141. package/dist/esm/src/utils/jws.js +9 -20
  142. package/dist/esm/src/utils/jws.js.map +1 -1
  143. package/dist/esm/src/utils/memory-cache.js +12 -23
  144. package/dist/esm/src/utils/memory-cache.js.map +1 -1
  145. package/dist/esm/src/utils/messages.js +9 -3
  146. package/dist/esm/src/utils/messages.js.map +1 -1
  147. package/dist/esm/src/utils/private-key-signer.js +9 -17
  148. package/dist/esm/src/utils/private-key-signer.js.map +1 -1
  149. package/dist/esm/src/utils/protocols.js +62 -70
  150. package/dist/esm/src/utils/protocols.js.map +1 -1
  151. package/dist/esm/src/utils/records.js +108 -140
  152. package/dist/esm/src/utils/records.js.map +1 -1
  153. package/dist/esm/src/utils/secp256k1.js +60 -96
  154. package/dist/esm/src/utils/secp256k1.js.map +1 -1
  155. package/dist/esm/src/utils/secp256r1.js +54 -71
  156. package/dist/esm/src/utils/secp256r1.js.map +1 -1
  157. package/dist/esm/src/utils/time.js +5 -18
  158. package/dist/esm/src/utils/time.js.map +1 -1
  159. package/dist/esm/src/utils/url.js +3 -3
  160. package/dist/esm/src/utils/url.js.map +1 -1
  161. package/dist/esm/tests/core/auth.spec.js +3 -12
  162. package/dist/esm/tests/core/auth.spec.js.map +1 -1
  163. package/dist/esm/tests/core/message.spec.js +50 -59
  164. package/dist/esm/tests/core/message.spec.js.map +1 -1
  165. package/dist/esm/tests/core/protocol-authorization.spec.js +9 -18
  166. package/dist/esm/tests/core/protocol-authorization.spec.js.map +1 -1
  167. package/dist/esm/tests/dwn.spec.js +45 -58
  168. package/dist/esm/tests/dwn.spec.js.map +1 -1
  169. package/dist/esm/tests/event-stream/event-emitter-stream.spec.js +24 -33
  170. package/dist/esm/tests/event-stream/event-emitter-stream.spec.js.map +1 -1
  171. package/dist/esm/tests/event-stream/event-stream.spec.js +46 -55
  172. package/dist/esm/tests/event-stream/event-stream.spec.js.map +1 -1
  173. package/dist/esm/tests/features/author-delegated-grant.spec.js +326 -343
  174. package/dist/esm/tests/features/author-delegated-grant.spec.js.map +1 -1
  175. package/dist/esm/tests/features/owner-delegated-grant.spec.js +153 -169
  176. package/dist/esm/tests/features/owner-delegated-grant.spec.js.map +1 -1
  177. package/dist/esm/tests/features/owner-signature.spec.js +67 -78
  178. package/dist/esm/tests/features/owner-signature.spec.js.map +1 -1
  179. package/dist/esm/tests/features/permissions.spec.js +446 -181
  180. package/dist/esm/tests/features/permissions.spec.js.map +1 -1
  181. package/dist/esm/tests/features/protocol-composition.spec.js +346 -356
  182. package/dist/esm/tests/features/protocol-composition.spec.js.map +1 -1
  183. package/dist/esm/tests/features/protocol-create-action.spec.js +42 -51
  184. package/dist/esm/tests/features/protocol-create-action.spec.js.map +1 -1
  185. package/dist/esm/tests/features/protocol-delete-action.spec.js +94 -103
  186. package/dist/esm/tests/features/protocol-delete-action.spec.js.map +1 -1
  187. package/dist/esm/tests/features/protocol-update-action.spec.js +105 -114
  188. package/dist/esm/tests/features/protocol-update-action.spec.js.map +1 -1
  189. package/dist/esm/tests/features/records-prune.spec.js +175 -191
  190. package/dist/esm/tests/features/records-prune.spec.js.map +1 -1
  191. package/dist/esm/tests/features/records-tags.spec.js +441 -460
  192. package/dist/esm/tests/features/records-tags.spec.js.map +1 -1
  193. package/dist/esm/tests/features/resumable-tasks.spec.js +82 -91
  194. package/dist/esm/tests/features/resumable-tasks.spec.js.map +1 -1
  195. package/dist/esm/tests/handlers/messages-read.spec.js +206 -207
  196. package/dist/esm/tests/handlers/messages-read.spec.js.map +1 -1
  197. package/dist/esm/tests/handlers/messages-subscribe.spec.js +145 -154
  198. package/dist/esm/tests/handlers/messages-subscribe.spec.js.map +1 -1
  199. package/dist/esm/tests/handlers/messages-sync.spec.js +174 -183
  200. package/dist/esm/tests/handlers/messages-sync.spec.js.map +1 -1
  201. package/dist/esm/tests/handlers/protocols-configure.spec.js +244 -238
  202. package/dist/esm/tests/handlers/protocols-configure.spec.js.map +1 -1
  203. package/dist/esm/tests/handlers/protocols-query.spec.js +156 -169
  204. package/dist/esm/tests/handlers/protocols-query.spec.js.map +1 -1
  205. package/dist/esm/tests/handlers/records-count.spec.js +93 -102
  206. package/dist/esm/tests/handlers/records-count.spec.js.map +1 -1
  207. package/dist/esm/tests/handlers/records-delete.spec.js +252 -264
  208. package/dist/esm/tests/handlers/records-delete.spec.js.map +1 -1
  209. package/dist/esm/tests/handlers/records-query.spec.js +917 -988
  210. package/dist/esm/tests/handlers/records-query.spec.js.map +1 -1
  211. package/dist/esm/tests/handlers/records-read.spec.js +553 -568
  212. package/dist/esm/tests/handlers/records-read.spec.js.map +1 -1
  213. package/dist/esm/tests/handlers/records-subscribe.spec.js +269 -278
  214. package/dist/esm/tests/handlers/records-subscribe.spec.js.map +1 -1
  215. package/dist/esm/tests/handlers/records-write.spec.js +1057 -1082
  216. package/dist/esm/tests/handlers/records-write.spec.js.map +1 -1
  217. package/dist/esm/tests/interfaces/messages-get.spec.js +39 -48
  218. package/dist/esm/tests/interfaces/messages-get.spec.js.map +1 -1
  219. package/dist/esm/tests/interfaces/messages-subscribe.spec.js +4 -13
  220. package/dist/esm/tests/interfaces/messages-subscribe.spec.js.map +1 -1
  221. package/dist/esm/tests/interfaces/protocols-configure.spec.js +212 -88
  222. package/dist/esm/tests/interfaces/protocols-configure.spec.js.map +1 -1
  223. package/dist/esm/tests/interfaces/protocols-query.spec.js +8 -17
  224. package/dist/esm/tests/interfaces/protocols-query.spec.js.map +1 -1
  225. package/dist/esm/tests/interfaces/records-delete.spec.js +8 -17
  226. package/dist/esm/tests/interfaces/records-delete.spec.js.map +1 -1
  227. package/dist/esm/tests/interfaces/records-query.spec.js +20 -29
  228. package/dist/esm/tests/interfaces/records-query.spec.js.map +1 -1
  229. package/dist/esm/tests/interfaces/records-read.spec.js +42 -51
  230. package/dist/esm/tests/interfaces/records-read.spec.js.map +1 -1
  231. package/dist/esm/tests/interfaces/records-subscribe.spec.js +16 -25
  232. package/dist/esm/tests/interfaces/records-subscribe.spec.js.map +1 -1
  233. package/dist/esm/tests/interfaces/records-write.spec.js +152 -165
  234. package/dist/esm/tests/interfaces/records-write.spec.js.map +1 -1
  235. package/dist/esm/tests/jose/jws/general.spec.js +36 -45
  236. package/dist/esm/tests/jose/jws/general.spec.js.map +1 -1
  237. package/dist/esm/tests/protocols/permission-grant.spec.js +44 -50
  238. package/dist/esm/tests/protocols/permission-grant.spec.js.map +1 -1
  239. package/dist/esm/tests/protocols/permission-request.spec.js +23 -32
  240. package/dist/esm/tests/protocols/permission-request.spec.js.map +1 -1
  241. package/dist/esm/tests/protocols/permissions.spec.js +49 -55
  242. package/dist/esm/tests/protocols/permissions.spec.js.map +1 -1
  243. package/dist/esm/tests/scenarios/aggregator.spec.js +124 -135
  244. package/dist/esm/tests/scenarios/aggregator.spec.js.map +1 -1
  245. package/dist/esm/tests/scenarios/deleted-record.spec.js +23 -32
  246. package/dist/esm/tests/scenarios/deleted-record.spec.js.map +1 -1
  247. package/dist/esm/tests/scenarios/end-to-end-tests.spec.js +52 -61
  248. package/dist/esm/tests/scenarios/end-to-end-tests.spec.js.map +1 -1
  249. package/dist/esm/tests/scenarios/nested-roles.spec.js +63 -73
  250. package/dist/esm/tests/scenarios/nested-roles.spec.js.map +1 -1
  251. package/dist/esm/tests/scenarios/subscriptions.spec.js +377 -333
  252. package/dist/esm/tests/scenarios/subscriptions.spec.js.map +1 -1
  253. package/dist/esm/tests/smt/smt-store-level.spec.js +76 -87
  254. package/dist/esm/tests/smt/smt-store-level.spec.js.map +1 -1
  255. package/dist/esm/tests/smt/sparse-merkle-tree.spec.js +344 -353
  256. package/dist/esm/tests/smt/sparse-merkle-tree.spec.js.map +1 -1
  257. package/dist/esm/tests/state-index/state-index-level.spec.js +117 -126
  258. package/dist/esm/tests/state-index/state-index-level.spec.js.map +1 -1
  259. package/dist/esm/tests/store/blockstore-level.spec.js +44 -99
  260. package/dist/esm/tests/store/blockstore-level.spec.js.map +1 -1
  261. package/dist/esm/tests/store/blockstore-mock.spec.js +40 -120
  262. package/dist/esm/tests/store/blockstore-mock.spec.js.map +1 -1
  263. package/dist/esm/tests/store/data-store-level.spec.js +86 -95
  264. package/dist/esm/tests/store/data-store-level.spec.js.map +1 -1
  265. package/dist/esm/tests/store/index-level.spec.js +404 -414
  266. package/dist/esm/tests/store/index-level.spec.js.map +1 -1
  267. package/dist/esm/tests/store/message-store-level.spec.js +13 -22
  268. package/dist/esm/tests/store/message-store-level.spec.js.map +1 -1
  269. package/dist/esm/tests/store/message-store.spec.js +229 -238
  270. package/dist/esm/tests/store/message-store.spec.js.map +1 -1
  271. package/dist/esm/tests/test-event-stream.js +3 -3
  272. package/dist/esm/tests/test-event-stream.js.map +1 -1
  273. package/dist/esm/tests/test-stores.js +16 -13
  274. package/dist/esm/tests/test-stores.js.map +1 -1
  275. package/dist/esm/tests/test-suite.js +2 -11
  276. package/dist/esm/tests/test-suite.js.map +1 -1
  277. package/dist/esm/tests/utils/cid.spec.js +24 -33
  278. package/dist/esm/tests/utils/cid.spec.js.map +1 -1
  279. package/dist/esm/tests/utils/data-stream.spec.js +48 -57
  280. package/dist/esm/tests/utils/data-stream.spec.js.map +1 -1
  281. package/dist/esm/tests/utils/encryption-callbacks.spec.js +45 -54
  282. package/dist/esm/tests/utils/encryption-callbacks.spec.js.map +1 -1
  283. package/dist/esm/tests/utils/encryption.spec.js +291 -44
  284. package/dist/esm/tests/utils/encryption.spec.js.map +1 -1
  285. package/dist/esm/tests/utils/filters.spec.js +46 -55
  286. package/dist/esm/tests/utils/filters.spec.js.map +1 -1
  287. package/dist/esm/tests/utils/hd-key.spec.js +10 -19
  288. package/dist/esm/tests/utils/hd-key.spec.js.map +1 -1
  289. package/dist/esm/tests/utils/jws.spec.js +3 -12
  290. package/dist/esm/tests/utils/jws.spec.js.map +1 -1
  291. package/dist/esm/tests/utils/memory-cache.spec.js +9 -18
  292. package/dist/esm/tests/utils/memory-cache.spec.js.map +1 -1
  293. package/dist/esm/tests/utils/messages.spec.js +6 -15
  294. package/dist/esm/tests/utils/messages.spec.js.map +1 -1
  295. package/dist/esm/tests/utils/poller.js +22 -33
  296. package/dist/esm/tests/utils/poller.js.map +1 -1
  297. package/dist/esm/tests/utils/private-key-signer.spec.js +15 -24
  298. package/dist/esm/tests/utils/private-key-signer.spec.js.map +1 -1
  299. package/dist/esm/tests/utils/records.spec.js +10 -19
  300. package/dist/esm/tests/utils/records.spec.js.map +1 -1
  301. package/dist/esm/tests/utils/secp256k1.spec.js +16 -25
  302. package/dist/esm/tests/utils/secp256k1.spec.js.map +1 -1
  303. package/dist/esm/tests/utils/secp256r1.spec.js +18 -27
  304. package/dist/esm/tests/utils/secp256r1.spec.js.map +1 -1
  305. package/dist/esm/tests/utils/test-data-generator.js +414 -468
  306. package/dist/esm/tests/utils/test-data-generator.js.map +1 -1
  307. package/dist/esm/tests/validation/json-schemas/definitions.spec.js +2 -11
  308. package/dist/esm/tests/validation/json-schemas/definitions.spec.js.map +1 -1
  309. package/dist/esm/tests/validation/json-schemas/jwk/general-jwk.spec.js +4 -13
  310. package/dist/esm/tests/validation/json-schemas/jwk/general-jwk.spec.js.map +1 -1
  311. package/dist/esm/tests/validation/json-schemas/jwk/public-jwk.spec.js +8 -17
  312. package/dist/esm/tests/validation/json-schemas/jwk/public-jwk.spec.js.map +1 -1
  313. package/dist/esm/tests/validation/json-schemas/jwk-verification-method.spec.js +3 -12
  314. package/dist/esm/tests/validation/json-schemas/jwk-verification-method.spec.js.map +1 -1
  315. package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js +4 -13
  316. package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js.map +1 -1
  317. package/dist/esm/tests/validation/json-schemas/records/records-query.spec.js +2 -11
  318. package/dist/esm/tests/validation/json-schemas/records/records-query.spec.js.map +1 -1
  319. package/dist/esm/tests/validation/json-schemas/records/records-read.spec.js +2 -11
  320. package/dist/esm/tests/validation/json-schemas/records/records-read.spec.js.map +1 -1
  321. package/dist/esm/tests/validation/json-schemas/records/records-write.spec.js +7 -16
  322. package/dist/esm/tests/validation/json-schemas/records/records-write.spec.js.map +1 -1
  323. package/dist/types/src/core/protocol-authorization-action.d.ts +42 -0
  324. package/dist/types/src/core/protocol-authorization-action.d.ts.map +1 -0
  325. package/dist/types/src/core/protocol-authorization-validation.d.ts +60 -0
  326. package/dist/types/src/core/protocol-authorization-validation.d.ts.map +1 -0
  327. package/dist/types/src/core/protocol-authorization.d.ts +10 -100
  328. package/dist/types/src/core/protocol-authorization.d.ts.map +1 -1
  329. package/dist/types/src/core/record-chain.d.ts +24 -0
  330. package/dist/types/src/core/record-chain.d.ts.map +1 -0
  331. package/dist/types/src/handlers/records-write.d.ts +2 -1
  332. package/dist/types/src/handlers/records-write.d.ts.map +1 -1
  333. package/dist/types/src/interfaces/protocols-configure.d.ts.map +1 -1
  334. package/dist/types/src/interfaces/records-write-query.d.ts +33 -0
  335. package/dist/types/src/interfaces/records-write-query.d.ts.map +1 -0
  336. package/dist/types/src/interfaces/records-write-signing.d.ts +35 -0
  337. package/dist/types/src/interfaces/records-write-signing.d.ts.map +1 -0
  338. package/dist/types/src/interfaces/records-write.d.ts +10 -44
  339. package/dist/types/src/interfaces/records-write.d.ts.map +1 -1
  340. package/dist/types/src/store/index-level-compound.d.ts +70 -0
  341. package/dist/types/src/store/index-level-compound.d.ts.map +1 -0
  342. package/dist/types/src/store/index-level.d.ts +0 -58
  343. package/dist/types/src/store/index-level.d.ts.map +1 -1
  344. package/dist/types/src/utils/protocols.d.ts +5 -0
  345. package/dist/types/src/utils/protocols.d.ts.map +1 -1
  346. package/dist/types/src/utils/records.d.ts +3 -1
  347. package/dist/types/src/utils/records.d.ts.map +1 -1
  348. package/dist/types/tests/features/permissions.spec.d.ts.map +1 -1
  349. package/package.json +3 -3
  350. package/src/core/protocol-authorization-action.ts +377 -0
  351. package/src/core/protocol-authorization-validation.ts +391 -0
  352. package/src/core/protocol-authorization.ts +60 -849
  353. package/src/core/record-chain.ts +99 -0
  354. package/src/handlers/records-read.ts +1 -1
  355. package/src/handlers/records-write.ts +37 -21
  356. package/src/interfaces/protocols-configure.ts +33 -5
  357. package/src/interfaces/records-write-query.ts +139 -0
  358. package/src/interfaces/records-write-signing.ts +143 -0
  359. package/src/interfaces/records-write.ts +49 -221
  360. package/src/store/index-level-compound.ts +324 -0
  361. package/src/store/index-level.ts +24 -306
  362. package/src/utils/protocols.ts +8 -0
  363. package/src/utils/records.ts +9 -15
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import sinon from 'sinon';
11
2
  import { afterAll, beforeAll, beforeEach, describe, expect, it } from 'bun:test';
12
3
  import { DataStoreLevel, EventEmitterStream, MessageStoreLevel, ResumableTaskStoreLevel, StateIndexLevel } from '../src/index.js';
@@ -27,7 +18,7 @@ export function testDwnClass() {
27
18
  let dwn;
28
19
  // important to follow the `beforeAll` and `afterAll` pattern to initialize and clean the stores in tests
29
20
  // so that different test suites can reuse the same backend store for testing
30
- beforeAll(() => __awaiter(this, void 0, void 0, function* () {
21
+ beforeAll(async () => {
31
22
  didResolver = new UniversalResolver({ didResolvers: [DidKey] });
32
23
  const stores = TestStores.get();
33
24
  messageStore = stores.messageStore;
@@ -35,35 +26,35 @@ export function testDwnClass() {
35
26
  resumableTaskStore = stores.resumableTaskStore;
36
27
  stateIndex = stores.stateIndex;
37
28
  eventStream = TestEventStream.get();
38
- dwn = yield Dwn.create({ didResolver, messageStore, dataStore, stateIndex, eventStream, resumableTaskStore });
39
- }));
40
- beforeEach(() => __awaiter(this, void 0, void 0, function* () {
29
+ dwn = await Dwn.create({ didResolver, messageStore, dataStore, stateIndex, eventStream, resumableTaskStore });
30
+ });
31
+ beforeEach(async () => {
41
32
  sinon.restore(); // wipe all stubs/spies/mocks/fakes from previous test
42
- yield messageStore.clear(); // clean up before each test rather than after so that a test does not depend on other tests to do the clean up
43
- }));
44
- afterAll(() => __awaiter(this, void 0, void 0, function* () {
33
+ await messageStore.clear(); // clean up before each test rather than after so that a test does not depend on other tests to do the clean up
34
+ });
35
+ afterAll(async () => {
45
36
  sinon.restore();
46
- yield dwn.close();
47
- }));
37
+ await dwn.close();
38
+ });
48
39
  describe('processMessage()', () => {
49
- it('should process RecordsWrite message signed by a `did:key` DID', () => __awaiter(this, void 0, void 0, function* () {
40
+ it('should process RecordsWrite message signed by a `did:key` DID', async () => {
50
41
  // generate a `did:key` DID
51
- const alice = yield TestDataGenerator.generateDidKeyPersona();
52
- const { message, dataStream } = yield TestDataGenerator.generateRecordsWrite({
42
+ const alice = await TestDataGenerator.generateDidKeyPersona();
43
+ const { message, dataStream } = await TestDataGenerator.generateRecordsWrite({
53
44
  author: alice,
54
45
  });
55
- const reply = yield dwn.processMessage(alice.did, message, { dataStream });
46
+ const reply = await dwn.processMessage(alice.did, message, { dataStream });
56
47
  expect(reply.status.code).toBe(202);
57
- }));
58
- it('should process RecordsQuery message', () => __awaiter(this, void 0, void 0, function* () {
59
- const alice = yield TestDataGenerator.generateDidKeyPersona();
60
- const { author, message } = yield TestDataGenerator.generateRecordsQuery({ author: alice });
48
+ });
49
+ it('should process RecordsQuery message', async () => {
50
+ const alice = await TestDataGenerator.generateDidKeyPersona();
51
+ const { author, message } = await TestDataGenerator.generateRecordsQuery({ author: alice });
61
52
  const tenant = author.did;
62
- const reply = yield dwn.processMessage(tenant, message);
53
+ const reply = await dwn.processMessage(tenant, message);
63
54
  expect(reply.status.code).toBe(200);
64
55
  expect(reply.entries).toEqual([]);
65
- }));
66
- it('#191 - regression - should run JSON schema validation', () => __awaiter(this, void 0, void 0, function* () {
56
+ });
57
+ it('#191 - regression - should run JSON schema validation', async () => {
67
58
  const invalidMessage = {
68
59
  descriptor: {
69
60
  interface: 'Records',
@@ -73,31 +64,29 @@ export function testDwnClass() {
73
64
  authorization: {}
74
65
  };
75
66
  const validateJsonSchemaSpy = sinon.spy(Message, 'validateJsonSchema');
76
- const alice = yield TestDataGenerator.generateDidKeyPersona();
77
- const reply = yield dwn.processMessage(alice.did, invalidMessage);
67
+ const alice = await TestDataGenerator.generateDidKeyPersona();
68
+ const reply = await dwn.processMessage(alice.did, invalidMessage);
78
69
  sinon.assert.calledOnce(validateJsonSchemaSpy);
79
70
  expect(reply.status.code).toBe(400);
80
71
  expect(reply.status.detail).toContain(`must have required property 'filter'`);
81
- }));
82
- it('should throw 400 if given no interface or method found in message', () => __awaiter(this, void 0, void 0, function* () {
83
- const alice = yield TestDataGenerator.generateDidKeyPersona();
84
- const reply1 = yield dwn.processMessage(alice.did, undefined); // missing message entirely, thus missing both `interface` and `method`
72
+ });
73
+ it('should throw 400 if given no interface or method found in message', async () => {
74
+ const alice = await TestDataGenerator.generateDidKeyPersona();
75
+ const reply1 = await dwn.processMessage(alice.did, undefined); // missing message entirely, thus missing both `interface` and `method`
85
76
  expect(reply1.status.code).toBe(400);
86
77
  expect(reply1.status.detail).toContain('Both interface and method must be present');
87
- const reply2 = yield dwn.processMessage(alice.did, { descriptor: { method: 'anyValue' } }); // missing `interface`
78
+ const reply2 = await dwn.processMessage(alice.did, { descriptor: { method: 'anyValue' } }); // missing `interface`
88
79
  expect(reply2.status.code).toBe(400);
89
80
  expect(reply2.status.detail).toContain('Both interface and method must be present');
90
- const reply3 = yield dwn.processMessage(alice.did, { descriptor: { interface: 'anyValue' } }); // missing `method`
81
+ const reply3 = await dwn.processMessage(alice.did, { descriptor: { interface: 'anyValue' } }); // missing `method`
91
82
  expect(reply3.status.code).toBe(400);
92
83
  expect(reply3.status.detail).toContain('Both interface and method must be present');
93
- }));
94
- it('should throw 401 if message is targeted at a non active tenant', () => __awaiter(this, void 0, void 0, function* () {
84
+ });
85
+ it('should throw 401 if message is targeted at a non active tenant', async () => {
95
86
  // tenant gate that blocks everyone
96
87
  const blockAllTenantGate = {
97
- isActiveTenant() {
98
- return __awaiter(this, void 0, void 0, function* () {
99
- return { isActiveTenant: false };
100
- });
88
+ async isActiveTenant() {
89
+ return { isActiveTenant: false };
101
90
  }
102
91
  };
103
92
  const messageStoreStub = sinon.createStubInstance(MessageStoreLevel);
@@ -105,7 +94,7 @@ export function testDwnClass() {
105
94
  const resumableTaskStoreStub = sinon.createStubInstance(ResumableTaskStoreLevel);
106
95
  const stateIndexStub = sinon.createStubInstance(StateIndexLevel);
107
96
  const eventStreamStub = sinon.createStubInstance(EventEmitterStream);
108
- const dwnWithConfig = yield Dwn.create({
97
+ const dwnWithConfig = await Dwn.create({
109
98
  tenantGate: blockAllTenantGate,
110
99
  messageStore: messageStoreStub,
111
100
  dataStore: dataStoreStub,
@@ -113,21 +102,19 @@ export function testDwnClass() {
113
102
  stateIndex: stateIndexStub,
114
103
  eventStream: eventStreamStub
115
104
  });
116
- const alice = yield TestDataGenerator.generateDidKeyPersona();
117
- const { author, message } = yield TestDataGenerator.generateRecordsQuery({ author: alice });
105
+ const alice = await TestDataGenerator.generateDidKeyPersona();
106
+ const { author, message } = await TestDataGenerator.generateRecordsQuery({ author: alice });
118
107
  const tenant = author.did;
119
- const reply = yield dwnWithConfig.processMessage(tenant, message);
108
+ const reply = await dwnWithConfig.processMessage(tenant, message);
120
109
  expect(reply.status.code).toBe(401);
121
110
  expect(reply.status.detail).toContain('not an active tenant');
122
- }));
123
- it('should throw 401 with custom message from tenant gate if provided', () => __awaiter(this, void 0, void 0, function* () {
111
+ });
112
+ it('should throw 401 with custom message from tenant gate if provided', async () => {
124
113
  // tenant gate that blocks everyone with a custom message
125
114
  const customMessage = 'a custom not-an-active-tenant message';
126
115
  const blockAllTenantGate = {
127
- isActiveTenant() {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- return { isActiveTenant: false, detail: customMessage };
130
- });
116
+ async isActiveTenant() {
117
+ return { isActiveTenant: false, detail: customMessage };
131
118
  }
132
119
  };
133
120
  const messageStoreStub = sinon.createStubInstance(MessageStoreLevel);
@@ -135,7 +122,7 @@ export function testDwnClass() {
135
122
  const resumableTaskStoreStub = sinon.createStubInstance(ResumableTaskStoreLevel);
136
123
  const stateIndexStub = sinon.createStubInstance(StateIndexLevel);
137
124
  const eventStreamStub = sinon.createStubInstance(EventEmitterStream);
138
- const dwnWithConfig = yield Dwn.create({
125
+ const dwnWithConfig = await Dwn.create({
139
126
  tenantGate: blockAllTenantGate,
140
127
  messageStore: messageStoreStub,
141
128
  dataStore: dataStoreStub,
@@ -143,13 +130,13 @@ export function testDwnClass() {
143
130
  stateIndex: stateIndexStub,
144
131
  eventStream: eventStreamStub
145
132
  });
146
- const alice = yield TestDataGenerator.generateDidKeyPersona();
147
- const { author, message } = yield TestDataGenerator.generateRecordsQuery({ author: alice });
133
+ const alice = await TestDataGenerator.generateDidKeyPersona();
134
+ const { author, message } = await TestDataGenerator.generateRecordsQuery({ author: alice });
148
135
  const tenant = author.did;
149
- const reply = yield dwnWithConfig.processMessage(tenant, message);
136
+ const reply = await dwnWithConfig.processMessage(tenant, message);
150
137
  expect(reply.status.code).toBe(401);
151
138
  expect(reply.status.detail).toBe(customMessage);
152
- }));
139
+ });
153
140
  });
154
141
  });
155
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dwn.spec.js","sourceRoot":"","sources":["../../../tests/dwn.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dwn.spec.js","sourceRoot":"","sources":["../../../tests/dwn.spec.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { EventEmitterStream } from '../../src/event-stream/event-emitter-stream.js';
11
2
  import { TestDataGenerator } from '../../src/index.js';
12
3
  import { TestStores } from '../test-stores.js';
@@ -14,30 +5,30 @@ import sinon from 'sinon';
14
5
  import { afterAll, beforeAll, beforeEach, describe, expect, it } from 'bun:test';
15
6
  describe('EventEmitterStream', () => {
16
7
  let messageStore;
17
- beforeAll(() => __awaiter(void 0, void 0, void 0, function* () {
8
+ beforeAll(async () => {
18
9
  ({ messageStore } = TestStores.get());
19
- yield messageStore.open();
20
- }));
21
- beforeEach(() => __awaiter(void 0, void 0, void 0, function* () {
22
- yield messageStore.clear();
23
- }));
24
- afterAll(() => __awaiter(void 0, void 0, void 0, function* () {
10
+ await messageStore.open();
11
+ });
12
+ beforeEach(async () => {
13
+ await messageStore.clear();
14
+ });
15
+ afterAll(async () => {
25
16
  // Clean up after each test by closing and clearing the event stream
26
- yield messageStore.close();
17
+ await messageStore.close();
27
18
  sinon.restore();
28
- }));
29
- it('should remove listeners when `close` method is used', () => __awaiter(void 0, void 0, void 0, function* () {
19
+ });
20
+ it('should remove listeners when `close` method is used', async () => {
30
21
  const eventStream = new EventEmitterStream();
31
22
  const emitter = eventStream['eventEmitter'];
32
23
  // count the `events` listeners, which represents all listeners
33
24
  expect(emitter.listenerCount('did:alice_events')).toBe(0);
34
- const sub = yield eventStream.subscribe('did:alice', 'id', () => { });
25
+ const sub = await eventStream.subscribe('did:alice', 'id', () => { });
35
26
  expect(emitter.listenerCount('did:alice_events')).toBe(1);
36
27
  // close the subscription, which should remove the listener
37
- yield sub.close();
28
+ await sub.close();
38
29
  expect(emitter.listenerCount('did:alice_events')).toBe(0);
39
- }));
40
- it('logs message when the emitter experiences an error', () => __awaiter(void 0, void 0, void 0, function* () {
30
+ });
31
+ it('logs message when the emitter experiences an error', async () => {
41
32
  const testHandler = {
42
33
  errorHandler: (_) => { },
43
34
  };
@@ -46,20 +37,20 @@ describe('EventEmitterStream', () => {
46
37
  const emitter = eventStream['eventEmitter'];
47
38
  emitter.emit('error', new Error('random error'));
48
39
  expect(eventErrorSpy.callCount).toBe(1);
49
- }));
50
- it('does not emit messages if event stream is closed', () => __awaiter(void 0, void 0, void 0, function* () {
40
+ });
41
+ it('does not emit messages if event stream is closed', async () => {
51
42
  const testHandler = {
52
43
  errorHandler: (_) => { },
53
44
  };
54
45
  const eventErrorSpy = sinon.spy(testHandler, 'errorHandler');
55
46
  const eventStream = new EventEmitterStream({ errorHandler: testHandler.errorHandler });
56
- const handler = (_tenant, _event, _indexes) => __awaiter(void 0, void 0, void 0, function* () { });
57
- yield eventStream.subscribe('did:alice', 'sub-1', handler);
47
+ const handler = async (_tenant, _event, _indexes) => { };
48
+ await eventStream.subscribe('did:alice', 'sub-1', handler);
58
49
  // close eventStream
59
- yield eventStream.close();
60
- const message1 = yield TestDataGenerator.generateRecordsWrite({});
50
+ await eventStream.close();
51
+ const message1 = await TestDataGenerator.generateRecordsWrite({});
61
52
  eventStream.emit('did:alice', { message: message1.message }, {});
62
- const message2 = yield TestDataGenerator.generateRecordsWrite({});
53
+ const message2 = await TestDataGenerator.generateRecordsWrite({});
63
54
  eventStream.emit('did:alice', { message: message2.message }, {});
64
55
  expect(eventErrorSpy.callCount).toBe(2);
65
56
  // check that all listeners have been removed
@@ -67,11 +58,11 @@ describe('EventEmitterStream', () => {
67
58
  for (const event of eventEmitter.eventNames()) {
68
59
  expect(eventEmitter.listenerCount(event)).toBe(0);
69
60
  }
70
- }));
71
- it('sets max listeners to 0 which represents infinity', () => __awaiter(void 0, void 0, void 0, function* () {
61
+ });
62
+ it('sets max listeners to 0 which represents infinity', async () => {
72
63
  const eventStreamOne = new EventEmitterStream();
73
64
  const emitterOne = eventStreamOne['eventEmitter'];
74
65
  expect(emitterOne.getMaxListeners()).toBe(0);
75
- }));
66
+ });
76
67
  });
77
68
  //# sourceMappingURL=event-emitter-stream.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-emitter-stream.spec.js","sourceRoot":"","sources":["../../../../tests/event-stream/event-emitter-stream.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-emitter-stream.spec.js","sourceRoot":"","sources":["../../../../tests/event-stream/event-emitter-stream.spec.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { Poller } from '../utils/poller.js';
11
2
  import { TestEventStream } from '../test-event-stream.js';
12
3
  import { Message, TestDataGenerator } from '../../src/index.js';
@@ -24,100 +15,100 @@ export function testEventStream() {
24
15
  // saving the original `console.error` function to re-assign after tests complete
25
16
  const originalConsoleErrorFunction = console.error;
26
17
  let eventStream;
27
- beforeAll(() => __awaiter(this, void 0, void 0, function* () {
18
+ beforeAll(async () => {
28
19
  eventStream = TestEventStream.get();
29
- yield eventStream.open();
20
+ await eventStream.open();
30
21
  // do not print the console error statements from the emitter error
31
22
  console.error = (_) => { };
32
- }));
23
+ });
33
24
  beforeEach(() => {
34
25
  sinon.restore();
35
26
  });
36
- afterAll(() => __awaiter(this, void 0, void 0, function* () {
27
+ afterAll(async () => {
37
28
  sinon.restore();
38
29
  console.error = originalConsoleErrorFunction;
39
30
  // Clean up after each test by closing and clearing the event stream
40
- yield eventStream.close();
41
- }));
42
- it('emits all messages to each subscriptions', () => __awaiter(this, void 0, void 0, function* () {
31
+ await eventStream.close();
32
+ });
33
+ it('emits all messages to each subscriptions', async () => {
43
34
  // Scenario: We create 2 separate subscriptions that listen to all messages
44
35
  // and we emit 3 messages. We expect both subscriptions to receive all 3 messages.
45
36
  const messageCids1 = [];
46
- const handler1 = (_tenant, event, _indexes) => __awaiter(this, void 0, void 0, function* () {
37
+ const handler1 = async (_tenant, event, _indexes) => {
47
38
  const { message } = event;
48
- const messageCid = yield Message.getCid(message);
39
+ const messageCid = await Message.getCid(message);
49
40
  messageCids1.push(messageCid);
50
- });
41
+ };
51
42
  const messageCids2 = [];
52
- const handler2 = (_tenant, event, _indexes) => __awaiter(this, void 0, void 0, function* () {
43
+ const handler2 = async (_tenant, event, _indexes) => {
53
44
  const { message } = event;
54
- const messageCid = yield Message.getCid(message);
45
+ const messageCid = await Message.getCid(message);
55
46
  messageCids2.push(messageCid);
56
- });
57
- const subscription1 = yield eventStream.subscribe('did:alice', 'sub-1', handler1);
58
- const subscription2 = yield eventStream.subscribe('did:alice', 'sub-2', handler2);
59
- const message1 = yield TestDataGenerator.generateRecordsWrite({});
60
- const message1Cid = yield Message.getCid(message1.message);
47
+ };
48
+ const subscription1 = await eventStream.subscribe('did:alice', 'sub-1', handler1);
49
+ const subscription2 = await eventStream.subscribe('did:alice', 'sub-2', handler2);
50
+ const message1 = await TestDataGenerator.generateRecordsWrite({});
51
+ const message1Cid = await Message.getCid(message1.message);
61
52
  eventStream.emit('did:alice', { message: message1.message }, {});
62
- const message2 = yield TestDataGenerator.generateRecordsWrite({});
63
- const message2Cid = yield Message.getCid(message2.message);
53
+ const message2 = await TestDataGenerator.generateRecordsWrite({});
54
+ const message2Cid = await Message.getCid(message2.message);
64
55
  eventStream.emit('did:alice', { message: message2.message }, {});
65
- const message3 = yield TestDataGenerator.generateRecordsWrite({});
66
- const message3Cid = yield Message.getCid(message3.message);
56
+ const message3 = await TestDataGenerator.generateRecordsWrite({});
57
+ const message3Cid = await Message.getCid(message3.message);
67
58
  eventStream.emit('did:alice', { message: message3.message }, {});
68
59
  // Use the Poller to poll until the expected results are met
69
- yield Poller.pollUntilSuccessOrTimeout(() => __awaiter(this, void 0, void 0, function* () {
60
+ await Poller.pollUntilSuccessOrTimeout(async () => {
70
61
  expect(messageCids1).toEqual(expect.arrayContaining([message1Cid, message2Cid, message3Cid]));
71
62
  expect(messageCids2).toEqual(expect.arrayContaining([message1Cid, message2Cid, message3Cid]));
72
- }));
73
- yield subscription1.close();
74
- yield subscription2.close();
75
- }));
76
- it('does not receive messages if subscription is closed', () => __awaiter(this, void 0, void 0, function* () {
63
+ });
64
+ await subscription1.close();
65
+ await subscription2.close();
66
+ });
67
+ it('does not receive messages if subscription is closed', async () => {
77
68
  // Scenario: We create two subscriptions that listen to all messages.
78
69
  // The reason we create two is in order to allow for a negative test case.
79
70
  // We send a message, validate that both handlers processed the message
80
71
  // We then close one of the subscriptions, and send another message.
81
72
  // Now we validate that only the handler of the subscription that is still open received the message.
82
73
  const sub1MessageCids = [];
83
- const handler1 = (_tenant, event, _indexes) => __awaiter(this, void 0, void 0, function* () {
74
+ const handler1 = async (_tenant, event, _indexes) => {
84
75
  const { message } = event;
85
- const messageCid = yield Message.getCid(message);
76
+ const messageCid = await Message.getCid(message);
86
77
  sub1MessageCids.push(messageCid);
87
- });
78
+ };
88
79
  const sub2MessageCids = [];
89
- const handler2 = (_tenant, event, _indexes) => __awaiter(this, void 0, void 0, function* () {
80
+ const handler2 = async (_tenant, event, _indexes) => {
90
81
  const { message } = event;
91
- const messageCid = yield Message.getCid(message);
82
+ const messageCid = await Message.getCid(message);
92
83
  sub2MessageCids.push(messageCid);
93
- });
94
- const subscription1 = yield eventStream.subscribe('did:alice', 'sub-1', handler1);
95
- const subscription2 = yield eventStream.subscribe('did:alice', 'sub-2', handler2);
96
- const message1 = yield TestDataGenerator.generateRecordsWrite({});
97
- const message1Cid = yield Message.getCid(message1.message);
84
+ };
85
+ const subscription1 = await eventStream.subscribe('did:alice', 'sub-1', handler1);
86
+ const subscription2 = await eventStream.subscribe('did:alice', 'sub-2', handler2);
87
+ const message1 = await TestDataGenerator.generateRecordsWrite({});
88
+ const message1Cid = await Message.getCid(message1.message);
98
89
  eventStream.emit('did:alice', { message: message1.message }, {});
99
90
  // Use the Poller to poll until the expected results are met
100
- yield Poller.pollUntilSuccessOrTimeout(() => __awaiter(this, void 0, void 0, function* () {
91
+ await Poller.pollUntilSuccessOrTimeout(async () => {
101
92
  expect(sub1MessageCids).toHaveLength(1);
102
93
  expect(sub1MessageCids).toEqual(expect.arrayContaining([message1Cid]));
103
94
  expect(sub2MessageCids).toHaveLength(1);
104
95
  expect(sub2MessageCids).toEqual(expect.arrayContaining([message1Cid]));
105
- }));
106
- yield subscription1.close(); // close subscription 1
107
- const message2 = yield TestDataGenerator.generateRecordsWrite({});
108
- const message2Cid = yield Message.getCid(message2.message);
96
+ });
97
+ await subscription1.close(); // close subscription 1
98
+ const message2 = await TestDataGenerator.generateRecordsWrite({});
99
+ const message2Cid = await Message.getCid(message2.message);
109
100
  eventStream.emit('did:alice', { message: message2.message }, {});
110
101
  // Use the Poller to poll until the expected results are met
111
- yield Poller.pollUntilSuccessOrTimeout(() => __awaiter(this, void 0, void 0, function* () {
102
+ await Poller.pollUntilSuccessOrTimeout(async () => {
112
103
  // subscription 2 should have received the message
113
104
  expect(sub2MessageCids.length).toBe(2);
114
105
  expect(sub2MessageCids).toEqual(expect.arrayContaining([message1Cid, message2Cid]));
115
106
  // subscription 1 should not have received the message
116
107
  expect(sub1MessageCids).toHaveLength(1);
117
108
  expect(sub1MessageCids).toEqual(expect.arrayContaining([message1Cid]));
118
- }));
119
- yield subscription2.close();
120
- }));
109
+ });
110
+ await subscription2.close();
111
+ });
121
112
  });
122
113
  }
123
114
  //# sourceMappingURL=event-stream.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-stream.spec.js","sourceRoot":"","sources":["../../../../tests/event-stream/event-stream.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-stream.spec.js","sourceRoot":"","sources":["../../../../tests/event-stream/event-stream.spec.ts"],"names":[],"mappings":"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"}