@towns-protocol/sdk 0.0.196 → 0.0.198

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 (124) hide show
  1. package/dist/client.d.ts +1 -0
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +16 -4
  4. package/dist/client.js.map +1 -1
  5. package/dist/index.d.ts +2 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/makeStreamRpcClient.d.ts +3 -2
  10. package/dist/makeStreamRpcClient.d.ts.map +1 -1
  11. package/dist/makeStreamRpcClient.js +18 -4
  12. package/dist/makeStreamRpcClient.js.map +1 -1
  13. package/dist/memberMetadata_DisplayNames.d.ts +0 -1
  14. package/dist/memberMetadata_DisplayNames.d.ts.map +1 -1
  15. package/dist/memberMetadata_DisplayNames.js +1 -2
  16. package/dist/memberMetadata_DisplayNames.js.map +1 -1
  17. package/dist/memberMetadata_Usernames.d.ts +1 -1
  18. package/dist/memberMetadata_Usernames.d.ts.map +1 -1
  19. package/dist/memberMetadata_Usernames.js +8 -4
  20. package/dist/memberMetadata_Usernames.js.map +1 -1
  21. package/dist/observable/observable.d.ts +3 -3
  22. package/dist/observable/observable.d.ts.map +1 -1
  23. package/dist/observable/observable.js +15 -8
  24. package/dist/observable/observable.js.map +1 -1
  25. package/dist/persistenceStore.d.ts +11 -0
  26. package/dist/persistenceStore.d.ts.map +1 -1
  27. package/dist/persistenceStore.js +30 -2
  28. package/dist/persistenceStore.js.map +1 -1
  29. package/dist/sign.d.ts +10 -2
  30. package/dist/sign.d.ts.map +1 -1
  31. package/dist/sign.js +50 -4
  32. package/dist/sign.js.map +1 -1
  33. package/dist/streamStateView.d.ts +0 -8
  34. package/dist/streamStateView.d.ts.map +1 -1
  35. package/dist/streamStateView.js +0 -12
  36. package/dist/streamStateView.js.map +1 -1
  37. package/dist/streamStateView_AbstractContent.d.ts +0 -2
  38. package/dist/streamStateView_AbstractContent.d.ts.map +1 -1
  39. package/dist/streamStateView_AbstractContent.js +0 -3
  40. package/dist/streamStateView_AbstractContent.js.map +1 -1
  41. package/dist/streamStateView_Channel.d.ts +5 -1
  42. package/dist/streamStateView_Channel.d.ts.map +1 -1
  43. package/dist/streamStateView_Channel.js +10 -2
  44. package/dist/streamStateView_Channel.js.map +1 -1
  45. package/dist/streamStateView_Common_ChannelMessages.d.ts +15 -0
  46. package/dist/streamStateView_Common_ChannelMessages.d.ts.map +1 -0
  47. package/dist/streamStateView_Common_ChannelMessages.js +19 -0
  48. package/dist/streamStateView_Common_ChannelMessages.js.map +1 -0
  49. package/dist/streamStateView_DMChannel.d.ts +3 -1
  50. package/dist/streamStateView_DMChannel.d.ts.map +1 -1
  51. package/dist/streamStateView_DMChannel.js +7 -4
  52. package/dist/streamStateView_DMChannel.js.map +1 -1
  53. package/dist/streamStateView_GDMChannel.d.ts +2 -1
  54. package/dist/streamStateView_GDMChannel.d.ts.map +1 -1
  55. package/dist/streamStateView_GDMChannel.js +8 -5
  56. package/dist/streamStateView_GDMChannel.js.map +1 -1
  57. package/dist/streamStateView_Media.d.ts +2 -0
  58. package/dist/streamStateView_Media.d.ts.map +1 -1
  59. package/dist/streamStateView_Media.js +6 -0
  60. package/dist/streamStateView_Media.js.map +1 -1
  61. package/dist/streamStateView_Members.d.ts +17 -14
  62. package/dist/streamStateView_Members.d.ts.map +1 -1
  63. package/dist/streamStateView_Members.js +1 -0
  64. package/dist/streamStateView_Members.js.map +1 -1
  65. package/dist/streamStateView_User.d.ts +2 -1
  66. package/dist/streamStateView_User.d.ts.map +1 -1
  67. package/dist/streamStateView_User.js +12 -0
  68. package/dist/streamStateView_User.js.map +1 -1
  69. package/dist/streamStateView_UserMetadata.d.ts +3 -3
  70. package/dist/streamStateView_UserMetadata.d.ts.map +1 -1
  71. package/dist/streamStateView_UserMetadata.js.map +1 -1
  72. package/dist/sync-agent/dms/models/dm.d.ts.map +1 -1
  73. package/dist/sync-agent/dms/models/dm.js +1 -2
  74. package/dist/sync-agent/dms/models/dm.js.map +1 -1
  75. package/dist/sync-agent/timeline/models/timeline-types.d.ts +9 -1
  76. package/dist/sync-agent/timeline/models/timeline-types.d.ts.map +1 -1
  77. package/dist/sync-agent/timeline/models/timeline-types.js +4 -0
  78. package/dist/sync-agent/timeline/models/timeline-types.js.map +1 -1
  79. package/dist/sync-agent/timeline/models/timelineEvent.d.ts +1 -1
  80. package/dist/sync-agent/timeline/models/timelineEvent.d.ts.map +1 -1
  81. package/dist/sync-agent/timeline/models/timelineEvent.js +2 -2
  82. package/dist/sync-agent/timeline/models/timelineEvent.js.map +1 -1
  83. package/dist/sync-agent/timeline/timeline.js +8 -8
  84. package/dist/sync-agent/timeline/timeline.js.map +1 -1
  85. package/dist/syncedStream.d.ts.map +1 -1
  86. package/dist/syncedStream.js +2 -1
  87. package/dist/syncedStream.js.map +1 -1
  88. package/dist/syncedStreamsExtension.d.ts +1 -0
  89. package/dist/syncedStreamsExtension.d.ts.map +1 -1
  90. package/dist/syncedStreamsExtension.js +5 -2
  91. package/dist/syncedStreamsExtension.js.map +1 -1
  92. package/dist/syncedStreamsLoop.d.ts.map +1 -1
  93. package/dist/syncedStreamsLoop.js +2 -2
  94. package/dist/syncedStreamsLoop.js.map +1 -1
  95. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js +6 -0
  96. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js.map +1 -1
  97. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js +8 -0
  98. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js.map +1 -1
  99. package/dist/tests/multi/transactions_SpaceReview.test.js +1 -1
  100. package/dist/tests/multi/transactions_SpaceReview.test.js.map +1 -1
  101. package/dist/tests/multi_ne/client.test.js +22 -14
  102. package/dist/tests/multi_ne/client.test.js.map +1 -1
  103. package/dist/tests/multi_ne/gdms.test.js +1 -1
  104. package/dist/tests/multi_ne/gdms.test.js.map +1 -1
  105. package/dist/tests/multi_ne/restart.test.js +1 -1
  106. package/dist/tests/multi_ne/restart.test.js.map +1 -1
  107. package/dist/tests/multi_ne/space.test.js +51 -14
  108. package/dist/tests/multi_ne/space.test.js.map +1 -1
  109. package/dist/tests/multi_ne/syncedStreams.test.js +12 -6
  110. package/dist/tests/multi_ne/syncedStreams.test.js.map +1 -1
  111. package/dist/tests/multi_ne/trading.test.js +5 -5
  112. package/dist/tests/multi_ne/trading.test.js.map +1 -1
  113. package/dist/tests/testUtils.d.ts +2 -1
  114. package/dist/tests/testUtils.d.ts.map +1 -1
  115. package/dist/tests/testUtils.js +1 -11
  116. package/dist/tests/testUtils.js.map +1 -1
  117. package/dist/types.d.ts +7 -0
  118. package/dist/types.d.ts.map +1 -1
  119. package/dist/types.js.map +1 -1
  120. package/dist/unauthenticatedClient.d.ts +4 -6
  121. package/dist/unauthenticatedClient.d.ts.map +1 -1
  122. package/dist/unauthenticatedClient.js +14 -37
  123. package/dist/unauthenticatedClient.js.map +1 -1
  124. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"makeStreamRpcClient.js","sourceRoot":"","sources":["../src/makeStreamRpcClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeStreamRpcClient.js","sourceRoot":"","sources":["../src/makeStreamRpcClient.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ export declare class MemberMetadata_DisplayNames {
8
8
  readonly userIdToEventId: Map<string, string>;
9
9
  readonly plaintextDisplayNames: Map<string, string>;
10
10
  readonly displayNameEvents: Map<string, {
11
- encryptedData: EncryptedData;
12
11
  userId: string;
13
12
  pending: boolean;
14
13
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"memberMetadata_DisplayNames.d.ts","sourceRoot":"","sources":["../src/memberMetadata_DisplayNames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,YAAY,MAAM,eAAe,CAAA;AAExC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAQ1E,qBAAa,2BAA2B;IACpC,GAAG,yCAAmC;IACtC,OAAO,CAAC,uBAAuB,CAAI;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,eAAe,sBAA4B;IACpD,QAAQ,CAAC,qBAAqB,sBAA4B;IAC1D,QAAQ,CAAC,iBAAiB;uBAEL,aAAa;gBAAU,MAAM;iBAAW,OAAO;OACjE;gBAES,QAAQ,EAAE,MAAM;IAI5B,gBAAgB,CACZ,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAAO,EACvB,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAsB7D,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAczE,kBAAkB,CACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAY7C,OAAO,CAAC,sBAAsB;IAkB9B,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,iBAAiB;IAezB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG;QAClB,WAAW,EAAE,MAAM,CAAA;QACnB,oBAAoB,EAAE,OAAO,CAAA;KAChC;CAOJ"}
1
+ {"version":3,"file":"memberMetadata_DisplayNames.d.ts","sourceRoot":"","sources":["../src/memberMetadata_DisplayNames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,YAAY,MAAM,eAAe,CAAA;AAExC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAQ1E,qBAAa,2BAA2B;IACpC,GAAG,yCAAmC;IACtC,OAAO,CAAC,uBAAuB,CAAI;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,eAAe,sBAA4B;IACpD,QAAQ,CAAC,qBAAqB,sBAA4B;IAC1D,QAAQ,CAAC,iBAAiB;gBAA6B,MAAM;iBAAW,OAAO;OAAK;gBAExE,QAAQ,EAAE,MAAM;IAI5B,gBAAgB,CACZ,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAAO,EACvB,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAsB7D,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAczE,kBAAkB,CACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAY7C,OAAO,CAAC,sBAAsB;IAkB9B,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,iBAAiB;IAczB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG;QAClB,WAAW,EAAE,MAAM,CAAA;QACnB,oBAAoB,EAAE,OAAO,CAAA;KAChC;CAOJ"}
@@ -35,7 +35,7 @@ export class MemberMetadata_DisplayNames {
35
35
  if (!event) {
36
36
  return;
37
37
  }
38
- this.displayNameEvents.set(eventId, { ...event, pending: false });
38
+ this.displayNameEvents.set(eventId, { userId: event.userId, pending: false });
39
39
  // if we don't have the plaintext display name, no need to emit an event
40
40
  if (this.plaintextDisplayNames.has(event.userId)) {
41
41
  this.log(`'streamDisplayNameUpdated' for userId ${event.userId}`);
@@ -83,7 +83,6 @@ export class MemberMetadata_DisplayNames {
83
83
  this.userIdToEventId.set(userId, eventId);
84
84
  this.displayNameEvents.set(eventId, {
85
85
  userId,
86
- encryptedData: encryptedData,
87
86
  pending: pending,
88
87
  });
89
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memberMetadata_DisplayNames.js","sourceRoot":"","sources":["../src/memberMetadata_DisplayNames.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAG3C,sGAAsG;AACtG,uFAAuF;AACvF,MAAM,8BAA8B,GAAG,EAAE,CAAA;AAEzC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;AAErC,MAAM,OAAO,2BAA2B;IACpC,GAAG,GAAG,IAAI,CAAC,0BAA0B,CAAC,CAAA;IAC9B,uBAAuB,GAAG,CAAC,CAAA;IAC1B,QAAQ,CAAQ;IAChB,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC3C,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAA;IACjD,iBAAiB,GAAG,IAAI,GAAG,EAGjC,CAAA;IAEH,YAAY,QAAgB;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,gBAAgB,CACZ,OAAe,EACf,aAA4B,EAC5B,MAAc,EACd,UAAmB,IAAI,EACvB,SAA0C,EAC1C,iBAAmE,EACnE,YAAyD;QAEzD,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;QAE/D,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAC1B,MAAM,EACN,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5E,CAAA;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,uBAAuB,GAAG,8BAA8B,EAAE,CAAC;YACvE,IAAI,CAAC,uBAAuB,EAAE,CAAA;YAC9B,gEAAgE;YAChE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACzC,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE;gBACnE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,aAAa;aACzB,CAAC,CAAA;QACN,CAAC;QACD,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACtD,CAAC;IAED,cAAc,CAAC,OAAe,EAAE,OAAyC;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAM;QACV,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;QAEjE,wEAAwE;QACxE,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,GAAG,CAAC,yCAAyC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YACjE,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACjD,CAAC;IACL,CAAC;IAED,kBAAkB,CACd,OAAe,EACf,OAAe,EACf,OAAyC;QAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAM;QACV,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,wBAAwB,OAAO,aAAa,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QACpE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACrD,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;IAEO,sBAAsB,CAAC,OAAe,EAAE,OAAyC;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAM;QACV,CAAC;QACD,qEAAqE;QACrE,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAChD,OAAM;QACV,CAAC;QAED,0DAA0D;QAC1D,OAAO,EAAE,IAAI,CACT,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,0BAA0B,EAC9E,IAAI,CAAC,QAAQ,EACb,KAAK,CAAC,MAAM,CACf,CAAA;IACL,CAAC;IAEO,oBAAoB,CAAC,MAAc;QACvC,gDAAgD;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,0CAA0C,MAAM,EAAE,CAAC,CAAA;YAC5D,OAAM;QACV,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,CAAC,GAAG,CAAC,8BAA8B,MAAM,+BAA+B,CAAC,CAAA;YAC7E,OAAM;QACV,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACtC,IAAI,CAAC,GAAG,CAAC,8BAA8B,MAAM,EAAE,CAAC,CAAA;IACpD,CAAC;IAEO,iBAAiB,CACrB,MAAc,EACd,OAAe,EACf,aAA4B,EAC5B,OAAgB;QAEhB,6DAA6D;QAC7D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACzC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE;YAChC,MAAM;YACN,aAAa,EAAE,aAAa;YAC5B,OAAO,EAAE,OAAO;SACnB,CAAC,CAAA;IACN,CAAC;IAED,IAAI,CAAC,MAAc;QAIf,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QAChE,MAAM,oBAAoB,GACtB,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAE/E,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAA;IAChD,CAAC;CACJ"}
1
+ {"version":3,"file":"memberMetadata_DisplayNames.js","sourceRoot":"","sources":["../src/memberMetadata_DisplayNames.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export declare class MemberMetadata_Usernames {
8
8
  readonly userIdToEventId: Map<string, string>;
9
9
  readonly confirmedUserIds: Set<string>;
10
10
  readonly usernameEvents: Map<string, {
11
- encryptedData: EncryptedData;
11
+ checksum: string;
12
12
  userId: string;
13
13
  pending: boolean;
14
14
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"memberMetadata_Usernames.d.ts","sourceRoot":"","sources":["../src/memberMetadata_Usernames.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAGrD,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAI1E,qBAAa,wBAAwB;IACjC,GAAG,yCAAgC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,kBAAkB,sBAA4B;IACvD,QAAQ,CAAC,eAAe,sBAA4B;IACpD,QAAQ,CAAC,gBAAgB,cAAoB;IAC7C,QAAQ,CAAC,cAAc;uBAEF,aAAa;gBAAU,MAAM;iBAAW,OAAO;OACjE;IACH,QAAQ,CAAC,SAAS,cAAoB;gBAE1B,QAAQ,EAAE,MAAM;IAI5B,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAK5F,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAK5E,gBAAgB,CACZ,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAAO,EACvB,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAmC7D,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAezE,kBAAkB,CACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAwB7C,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAKrD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI5C,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,yBAAyB;IAyBjC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG;QAClB,QAAQ,EAAE,MAAM,CAAA;QAChB,iBAAiB,EAAE,OAAO,CAAA;QAC1B,iBAAiB,EAAE,OAAO,CAAA;KAC7B;CAiBJ"}
1
+ {"version":3,"file":"memberMetadata_Usernames.d.ts","sourceRoot":"","sources":["../src/memberMetadata_Usernames.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAGrD,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAI1E,qBAAa,wBAAwB;IACjC,GAAG,yCAAgC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,kBAAkB,sBAA4B;IACvD,QAAQ,CAAC,eAAe,sBAA4B;IACpD,QAAQ,CAAC,gBAAgB,cAAoB;IAC7C,QAAQ,CAAC,cAAc;kBAEP,MAAM;gBAAU,MAAM;iBAAW,OAAO;OACrD;IACH,QAAQ,CAAC,SAAS,cAAoB;gBAE1B,QAAQ,EAAE,MAAM;IAI5B,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAK5F,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAK5E,gBAAgB,CACZ,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAAO,EACvB,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAmC7D,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAmBzE,kBAAkB,CACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;IAwB7C,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAKrD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI5C,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,yBAAyB;IAyBjC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG;QAClB,QAAQ,EAAE,MAAM,CAAA;QAChB,iBAAiB,EAAE,OAAO,CAAA;QAC1B,iBAAiB,EAAE,OAAO,CAAA;KAC7B;CAiBJ"}
@@ -52,7 +52,11 @@ export class MemberMetadata_Usernames {
52
52
  if (!event) {
53
53
  return;
54
54
  }
55
- this.usernameEvents.set(eventId, { ...event, pending: false });
55
+ this.usernameEvents.set(eventId, {
56
+ checksum: event.checksum,
57
+ userId: event.userId,
58
+ pending: false,
59
+ });
56
60
  this.confirmedUserIds.add(event.userId);
57
61
  // if we don't have the plaintext username, no need to emit an event
58
62
  if (this.plaintextUsernames.has(event.userId)) {
@@ -65,7 +69,7 @@ export class MemberMetadata_Usernames {
65
69
  if (!event) {
66
70
  return;
67
71
  }
68
- const checksum = event.encryptedData.checksum;
72
+ const checksum = event.checksum;
69
73
  if (!checksum) {
70
74
  return;
71
75
  }
@@ -111,7 +115,7 @@ export class MemberMetadata_Usernames {
111
115
  this.log(`no existing username event for user ${userId} — this is a programmer error`);
112
116
  return;
113
117
  }
114
- this.checksums.delete(event.encryptedData.checksum ?? '');
118
+ this.checksums.delete(event.checksum ?? '');
115
119
  this.usernameEvents.delete(eventId);
116
120
  this.log(`deleted old username event for user ${userId}`);
117
121
  }
@@ -127,7 +131,7 @@ export class MemberMetadata_Usernames {
127
131
  this.checksums.add(encryptedData.checksum);
128
132
  this.usernameEvents.set(eventId, {
129
133
  userId,
130
- encryptedData: encryptedData,
134
+ checksum: encryptedData.checksum,
131
135
  pending: pending,
132
136
  });
133
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memberMetadata_Usernames.js","sourceRoot":"","sources":["../src/memberMetadata_Usernames.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memberMetadata_Usernames.js","sourceRoot":"","sources":["../src/memberMetadata_Usernames.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAG3C,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;AAErC,MAAM,OAAO,wBAAwB;IACjC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAA;IAC1B,QAAQ,CAAQ;IAChB,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC9C,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC3C,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,cAAc,GAAG,IAAI,GAAG,EAG9B,CAAA;IACM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IAEtC,YAAY,QAAgB;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,gBAAgB,CAAC,MAAc,EAAE,QAAgB,EAAE,OAAyC;QACxF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC7C,OAAO,EAAE,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IACxE,CAAC;IAED,kBAAkB,CAAC,MAAc,EAAE,OAAyC;QACxE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACtC,OAAO,EAAE,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IACxE,CAAC;IAED,gBAAgB,CACZ,OAAe,EACf,aAA4B,EAC5B,MAAc,EACd,UAAmB,IAAI,EACvB,SAA0C,EAC1C,iBAAmE,EACnE,YAAyD;QAEzD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAA;YACzC,OAAM;QACV,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,uCAAuC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAA;YACzE,OAAM;QACV,CAAC;QAED,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;QAEvE,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACvB,MAAM,EACN,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5E,CAAA;QACL,CAAC;aAAM,CAAC;YACJ,4DAA4D;YAC5D,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACtC,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE;gBACnE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,aAAa;aACzB,CAAC,CAAA;QACN,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC;QAED,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACnD,CAAC;IAED,cAAc,CAAC,OAAe,EAAE,OAAyC;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAM;QACV,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE;YAC7B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK;SACjB,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEvC,oEAAoE;QACpE,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,sCAAsC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9D,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC9C,CAAC;IACL,CAAC;IAED,kBAAkB,CACd,OAAe,EACf,OAAe,EACf,OAAyC;QAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAM;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;QAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAM;QACV,CAAC;QAED,sEAAsE;QACtE,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnE,IAAI,QAAQ,KAAK,kBAAkB,EAAE,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,MAAM,eAAe,OAAO,EAAE,CAAC,CAAA;YAC/E,OAAM;QACV,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,oBAAoB,OAAO,aAAa,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QAChE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAClD,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC9C,CAAC;IAED,0BAA0B,CAAC,QAAgB;QACvC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC1D,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAED,iBAAiB,CAAC,QAAgB;QAC9B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACxC,CAAC;IAEO,mBAAmB,CAAC,OAAe,EAAE,OAAyC;QAClF,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAM;QACV,CAAC;QACD,iEAAiE;QACjE,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,OAAM;QACV,CAAC;QAED,0DAA0D;QAC1D,OAAO,EAAE,IAAI,CACT,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,uBAAuB,EACxE,IAAI,CAAC,QAAQ,EACb,KAAK,CAAC,MAAM,CACf,CAAA;IACL,CAAC;IAEO,4BAA4B,CAAC,MAAc;QAC/C,gDAAgD;QAChD,gFAAgF;QAChF,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,uCAAuC,MAAM,EAAE,CAAC,CAAA;YACzD,OAAM;QACV,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,CAAC,GAAG,CAAC,uCAAuC,MAAM,+BAA+B,CAAC,CAAA;YACtF,OAAM;QACV,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACnC,IAAI,CAAC,GAAG,CAAC,uCAAuC,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC;IAEO,yBAAyB,CAC7B,MAAc,EACd,OAAe,EACf,aAA4B,EAC5B,OAAgB;QAEhB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAA;YACzC,OAAM;QACV,CAAC;QAED,6DAA6D;QAC7D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAEzC,4DAA4D;QAC5D,uEAAuE;QACvE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QAE1C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE;YAC7B,MAAM;YACN,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,OAAO,EAAE,OAAO;SACnB,CAAC,CAAA;IACN,CAAC;IAED,IAAI,CAAC,MAAc;QAKf,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO;gBACH,QAAQ,EAAE,IAAI;gBACd,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,KAAK;aAC3B,CAAA;QACL,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1F,OAAO;YACH,QAAQ,EAAE,IAAI;YACd,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC;YACpD,iBAAiB,EAAE,SAAS;SAC/B,CAAA;IACL,CAAC;CACJ"}
@@ -1,6 +1,6 @@
1
1
  interface Subscription<T> {
2
2
  id: number;
3
- fn: (value: T) => void;
3
+ fn: (value: T, prevValue: T) => void;
4
4
  condition: (value: T) => boolean;
5
5
  once: boolean;
6
6
  }
@@ -11,7 +11,7 @@ export declare class Observable<T> {
11
11
  constructor(value: T);
12
12
  get value(): T;
13
13
  setValue(newValue: T): void;
14
- subscribe(subscriber: (newValue: T) => void, opts?: {
14
+ subscribe(subscriber: (newValue: T, prevValue: T) => void, opts?: {
15
15
  fireImediately?: boolean;
16
16
  once?: boolean;
17
17
  condition?: (value: T) => boolean;
@@ -20,7 +20,7 @@ export declare class Observable<T> {
20
20
  timeoutMs: number;
21
21
  description?: string;
22
22
  }): Promise<T>;
23
- unsubscribe(subscriber: (value: T) => void): void;
23
+ unsubscribe(subscriber: (value: T, prevValue: T) => void): void;
24
24
  private notify;
25
25
  private _notify;
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../src/observable/observable.ts"],"names":[],"mappings":"AAAA,UAAU,YAAY,CAAC,CAAC;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IACtB,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAA;IAChC,IAAI,EAAE,OAAO,CAAA;CAChB;AAED,qBAAa,UAAU,CAAC,CAAC;IACrB,OAAO,CAAC,OAAO,CAAI;IACnB,SAAS,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAK;IAC7C,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;gBAEP,KAAK,EAAE,CAAC;IAIpB,IAAI,KAAK,IAAI,CAAC,CAEb;IAED,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAKpB,SAAS,CACL,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,EACjC,IAAI,GAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAA;KAAO,GAC3F,MAAM,IAAI;IAcb,IAAI,CACA,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,EAChC,IAAI,GAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAwB,GACxE,OAAO,CAAC,CAAC,CAAC;IAiBb,WAAW,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI;IAI1C,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,OAAO;CAQlB"}
1
+ {"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../src/observable/observable.ts"],"names":[],"mappings":"AAAA,UAAU,YAAY,CAAC,CAAC;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,IAAI,CAAA;IACpC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAA;IAChC,IAAI,EAAE,OAAO,CAAA;CAChB;AAED,qBAAa,UAAU,CAAC,CAAC;IACrB,OAAO,CAAC,OAAO,CAAI;IACnB,SAAS,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAK;IAC7C,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;gBAEP,KAAK,EAAE,CAAC;IAIpB,IAAI,KAAK,IAAI,CAAC,CAEb;IAED,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAMpB,SAAS,CACL,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,IAAI,EAC/C,IAAI,GAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAA;KAAO,GAC3F,MAAM,IAAI;IAeb,IAAI,CACA,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,EAChC,IAAI,GAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAwB,GACxE,OAAO,CAAC,CAAC,CAAC;IAiBb,WAAW,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,IAAI;IASxD,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,OAAO;CAQlB"}
@@ -9,19 +9,21 @@ export class Observable {
9
9
  return this._value;
10
10
  }
11
11
  setValue(newValue) {
12
+ const prevValue = this._value;
12
13
  this._value = newValue;
13
- this.notify();
14
+ this.notify(prevValue);
14
15
  }
15
16
  subscribe(subscriber, opts = {}) {
17
+ const nextId = this._nextId++;
16
18
  const sub = {
17
- id: this._nextId++,
19
+ id: nextId,
18
20
  fn: subscriber,
19
21
  once: opts?.once ?? false,
20
22
  condition: opts?.condition ?? (() => true),
21
23
  };
22
24
  this.subscribers.push(sub);
23
25
  if (opts.fireImediately) {
24
- this._notify(sub, this.value);
26
+ this._notify(sub, this.value, this.value);
25
27
  }
26
28
  return () => this.unsubscribe(subscriber);
27
29
  }
@@ -39,15 +41,20 @@ export class Observable {
39
41
  });
40
42
  }
41
43
  unsubscribe(subscriber) {
42
- this.subscribers = this.subscribers.filter((sub) => sub.fn !== subscriber);
44
+ this.subscribers = this.subscribers.filter((sub) => {
45
+ if (sub.fn === subscriber) {
46
+ return false;
47
+ }
48
+ return true;
49
+ });
43
50
  }
44
- notify() {
51
+ notify(prevValue) {
45
52
  const subscriptions = this.subscribers;
46
- subscriptions.forEach((sub) => this._notify(sub, this.value));
53
+ subscriptions.forEach((sub) => this._notify(sub, this.value, prevValue));
47
54
  }
48
- _notify(sub, value) {
55
+ _notify(sub, value, prevValue) {
49
56
  if (sub.condition(value)) {
50
- sub.fn(value);
57
+ sub.fn(value, prevValue);
51
58
  if (sub.once) {
52
59
  this.subscribers = this.subscribers.filter((s) => s !== sub);
53
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/observable/observable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/observable/observable.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ export interface IPersistenceStore {
22
22
  saveMiniblocks(streamId: string, miniblocks: ParsedMiniblock[], direction: 'forward' | 'backward'): Promise<void>;
23
23
  getMiniblock(streamId: string, miniblockNum: bigint): Promise<ParsedMiniblock | undefined>;
24
24
  getMiniblocks(streamId: string, rangeStart: bigint, randeEnd: bigint): Promise<ParsedMiniblock[]>;
25
+ saveSnapshot(streamId: string, miniblockNum: bigint, snapshot: Snapshot): Promise<void>;
25
26
  }
26
27
  export declare class PersistenceStore extends Dexie implements IPersistenceStore {
27
28
  cleartexts: Table<{
@@ -37,6 +38,13 @@ export declare class PersistenceStore extends Dexie implements IPersistenceStore
37
38
  miniblockNum: string;
38
39
  data: Uint8Array;
39
40
  }>;
41
+ snapshots: Table<{
42
+ streamId: string;
43
+ data: {
44
+ miniblockNum: bigint;
45
+ snapshot: Uint8Array;
46
+ };
47
+ }>;
40
48
  constructor(databaseName: string);
41
49
  saveCleartext(eventId: string, cleartext: Uint8Array | string): Promise<void>;
42
50
  getCleartext(eventId: string): Promise<string | Uint8Array<ArrayBufferLike> | undefined>;
@@ -50,6 +58,8 @@ export declare class PersistenceStore extends Dexie implements IPersistenceStore
50
58
  saveMiniblocks(streamId: string, miniblocks: ParsedMiniblock[], direction: 'forward' | 'backward'): Promise<void>;
51
59
  getMiniblock(streamId: string, miniblockNum: bigint): Promise<ParsedMiniblock | undefined>;
52
60
  getMiniblocks(streamId: string, rangeStart: bigint, rangeEnd: bigint): Promise<ParsedMiniblock[]>;
61
+ saveSnapshot(streamId: string, miniblockNum: bigint, snapshot: Snapshot): Promise<void>;
62
+ getSnapshot(streamId: string): Promise<Snapshot | undefined>;
53
63
  private requestPersistentStorage;
54
64
  private logPersistenceStats;
55
65
  private cachedScrollback;
@@ -67,5 +77,6 @@ export declare class StubPersistenceStore implements IPersistenceStore {
67
77
  saveMiniblocks(streamId: string, miniblocks: ParsedMiniblock[], direction: 'forward' | 'backward'): Promise<void>;
68
78
  getMiniblock(streamId: string, miniblockNum: bigint): Promise<ParsedMiniblock | undefined>;
69
79
  getMiniblocks(streamId: string, rangeStart: bigint, rangeEnd: bigint): Promise<ParsedMiniblock[]>;
80
+ saveSnapshot(streamId: string, miniblockNum: bigint, snapshot: Snapshot): Promise<void>;
70
81
  }
71
82
  //# sourceMappingURL=persistenceStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"persistenceStore.d.ts","sourceRoot":"","sources":["../src/persistenceStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistenceStore.d.ts","sourceRoot":"","sources":["../src/persistenceStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,qBAAqB,EAGrB,QAAQ,EACX,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,EAIH,2BAA2B,EAC9B,MAAM,eAAe,CAAA;AAatB,MAAM,WAAW,YAAY;IACzB,qBAAqB,EAAE,2BAA2B,CAAA;IAClD,UAAU,EAAE,eAAe,EAAE,CAAA;IAC7B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,EAAE,QAAQ,CAAA;IAClB,mBAAmB,EAAE,eAAe,EAAE,CAAA;IACtC,wBAAwB,EAAE,MAAM,CAAA;CACnC;AAmDD,MAAM,WAAW,iBAAiB;IAC9B,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7E,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC,CAAA;IACvE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC,CAAA;IAC3F,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAA;IACnF,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtF,UAAU,CACN,QAAQ,EAAE,MAAM,EAChB,uBAAuB,CAAC,EAAE,2BAA2B,GACtD,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAA;IACpC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC,CAAC,CAAA;IACnF,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E,cAAc,CACV,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAAE,EAC7B,SAAS,EAAE,SAAS,GAAG,UAAU,GAClC,OAAO,CAAC,IAAI,CAAC,CAAA;IAChB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAA;IAC1F,aAAa,CACT,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;IAC7B,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1F;AAED,qBAAa,gBAAiB,SAAQ,KAAM,YAAW,iBAAiB;IACpE,UAAU,EAAG,KAAK,CAAC;QAAE,SAAS,EAAE,UAAU,GAAG,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvE,aAAa,EAAG,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC,CAAA;IAC7D,UAAU,EAAG,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC,CAAA;IAChF,SAAS,EAAG,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,UAAU,CAAA;SAAE,CAAA;KAAE,CAAC,CAAA;gBAEjF,YAAY,EAAE,MAAM;IAkC1B,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,MAAM;IAI7D,YAAY,CAAC,OAAO,EAAE,MAAM;IAK5B,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE;IAchC,eAAe,CAAC,QAAQ,EAAE,MAAM;IAUhC,UAAU,CACZ,QAAQ,EAAE,MAAM,EAChB,uBAAuB,CAAC,EAAE,2BAA2B,GACtD,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAyD9B,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE;YAgBvB,gBAAgB;IAgBxB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB;IAQtE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe;IAU1D,cAAc,CAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAAE,EAC7B,SAAS,EAAE,SAAS,GAAG,UAAU;IAgB/B,YAAY,CACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACrB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IASjC,aAAa,CACf,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;IAmBvB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAevF,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAQlE,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,mBAAmB;YAgBb,gBAAgB;CAgCjC;AA4BD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,CAqBjE;AAID,qBAAa,oBAAqB,YAAW,iBAAiB;IACpD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU;IAIpD,YAAY,CAAC,OAAO,EAAE,MAAM;IAI5B,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE;IAIhC,eAAe,CAAC,QAAQ,EAAE,MAAM;IAIhC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,uBAAuB,CAAC,EAAE,2BAA2B;IAIlF,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE;IAI/B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB;IAItE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe;IAI1D,cAAc,CAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAAE,EAC7B,SAAS,EAAE,SAAS,GAAG,UAAU;IAK/B,YAAY,CACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACrB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAIjC,aAAa,CACf,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;IAIvB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhG"}
@@ -1,4 +1,4 @@
1
- import { PersistedMiniblockSchema, PersistedSyncedStreamSchema, } from '@towns-protocol/proto';
1
+ import { PersistedMiniblockSchema, PersistedSyncedStreamSchema, SnapshotSchema, } from '@towns-protocol/proto';
2
2
  import Dexie from 'dexie';
3
3
  import { persistedSyncedStreamToParsedSyncedStream, persistedMiniblockToParsedMiniblock, parsedMiniblockToPersistedMiniblock, } from './streamUtils';
4
4
  import { bin_toHexString, dlog, dlogError } from '@towns-protocol/dlog';
@@ -56,12 +56,14 @@ export class PersistenceStore extends Dexie {
56
56
  cleartexts;
57
57
  syncedStreams;
58
58
  miniblocks;
59
+ snapshots;
59
60
  constructor(databaseName) {
60
61
  super(databaseName);
61
62
  this.version(1).stores({
62
63
  cleartexts: 'eventId',
63
64
  syncedStreams: 'streamId',
64
65
  miniblocks: '[streamId+miniblockNum]',
66
+ snapshots: 'streamId',
65
67
  });
66
68
  // Version 2: added a signature to the saved event, drop all saved miniblocks
67
69
  this.version(2).upgrade((tx) => {
@@ -120,7 +122,9 @@ export class PersistenceStore extends Dexie {
120
122
  if (miniblocks.length === 0) {
121
123
  return undefined;
122
124
  }
123
- const snapshot = miniblocks[0].header.snapshot;
125
+ const snapshot = miniblocks[0].header.snapshot
126
+ ? miniblocks[0].header.snapshot
127
+ : await this.getSnapshot(streamId);
124
128
  if (!snapshot) {
125
129
  return undefined;
126
130
  }
@@ -224,6 +228,27 @@ export class PersistenceStore extends Dexie {
224
228
  .filter(isDefined);
225
229
  return miniblocks.length === ids.length ? miniblocks : [];
226
230
  }
231
+ async saveSnapshot(streamId, miniblockNum, snapshot) {
232
+ const record = await this.snapshots.get(streamId);
233
+ if (record && record.data.miniblockNum >= miniblockNum) {
234
+ return;
235
+ }
236
+ log('saving snapshot', streamId);
237
+ await this.snapshots.put({
238
+ streamId: streamId,
239
+ data: {
240
+ snapshot: toBinary(SnapshotSchema, snapshot),
241
+ miniblockNum: miniblockNum,
242
+ },
243
+ });
244
+ }
245
+ async getSnapshot(streamId) {
246
+ const record = await this.snapshots.get(streamId);
247
+ if (!record) {
248
+ return undefined;
249
+ }
250
+ return fromBinary(SnapshotSchema, record.data.snapshot);
251
+ }
227
252
  requestPersistentStorage() {
228
253
  if (typeof navigator !== 'undefined' && navigator.storage && navigator.storage.persist) {
229
254
  navigator.storage
@@ -362,5 +387,8 @@ export class StubPersistenceStore {
362
387
  async getMiniblocks(streamId, rangeStart, rangeEnd) {
363
388
  return Promise.resolve([]);
364
389
  }
390
+ async saveSnapshot(streamId, miniblockNum, snapshot) {
391
+ return Promise.resolve();
392
+ }
365
393
  }
366
394
  //# sourceMappingURL=persistenceStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"persistenceStore.js","sourceRoot":"","sources":["../src/persistenceStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistenceStore.js","sourceRoot":"","sources":["../src/persistenceStore.ts"],"names":[],"mappings":"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"}
package/dist/sign.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { Envelope, EventRef, StreamEvent, Miniblock, StreamAndCookie, Tags, PlainMessage } from '@towns-protocol/proto';
2
- import { ParsedEvent, ParsedMiniblock, ParsedStreamAndCookie, ParsedStreamResponse } from './types';
1
+ import { Envelope, EventRef, StreamEvent, Miniblock, StreamAndCookie, Tags, PlainMessage, Snapshot } from '@towns-protocol/proto';
2
+ import { ParsedEvent, ParsedMiniblock, ParsedSnapshot, ParsedStreamAndCookie, ParsedStreamResponse } from './types';
3
3
  import { SignerContext } from './signerContext';
4
4
  export interface UnpackEnvelopeOpts {
5
5
  disableHashValidation?: boolean;
@@ -13,6 +13,7 @@ export declare const unpackStreamEx: (miniblocks: Miniblock[], opts: UnpackEnvel
13
13
  export declare const unpackStreamAndCookie: (streamAndCookie: StreamAndCookie, opts: UnpackEnvelopeOpts | undefined) => Promise<ParsedStreamAndCookie>;
14
14
  export declare const unpackMiniblock: (miniblock: Miniblock, opts: UnpackEnvelopeOpts | undefined) => Promise<ParsedMiniblock>;
15
15
  export declare const unpackEnvelope: (envelope: Envelope, opts: UnpackEnvelopeOpts | undefined) => Promise<ParsedEvent>;
16
+ export declare const unpackSnapshot: (miniblock: ParsedMiniblock, snapshot: Envelope, opts: UnpackEnvelopeOpts | undefined) => Promise<ParsedSnapshot>;
16
17
  export declare function checkEventSignature(event: {
17
18
  creatorAddress: Uint8Array;
18
19
  delegateSig: Uint8Array;
@@ -25,10 +26,17 @@ export declare function makeParsedEvent(event: StreamEvent, hash: Uint8Array | u
25
26
  signature: Uint8Array<ArrayBufferLike> | undefined;
26
27
  creatorUserId: string;
27
28
  };
29
+ export declare function makeParsedSnapshot(snapshot: Snapshot, hash: Uint8Array | undefined, signature: Uint8Array | undefined): {
30
+ snapshot: Snapshot;
31
+ hash: Uint8Array<ArrayBufferLike>;
32
+ hashStr: string;
33
+ signature: Uint8Array<ArrayBufferLike> | undefined;
34
+ };
28
35
  export declare const unpackEnvelopes: (event: Envelope[], opts: UnpackEnvelopeOpts | undefined) => Promise<ParsedEvent[]>;
29
36
  export declare const unpackStreamEnvelopes: (stream: StreamAndCookie, opts: UnpackEnvelopeOpts | undefined) => Promise<ParsedEvent[]>;
30
37
  export declare const makeEventRef: (streamId: string | Uint8Array, event: Envelope) => EventRef;
31
38
  export declare function riverHash(data: Uint8Array): Uint8Array;
39
+ export declare function riverSnapshotHash(data: Uint8Array): Uint8Array;
32
40
  export declare function riverDelegateHashSrc(devicePublicKey: Uint8Array, expiryEpochMs: bigint): Uint8Array;
33
41
  export declare function notificationServiceHash(userId: Uint8Array, expiration: bigint, // unix seconds
34
42
  challenge: Uint8Array): Buffer<ArrayBufferLike>;
@@ -1 +1 @@
1
- {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../src/sign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../src/sign.ts"],"names":[],"mappings":"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"}
package/dist/sign.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { bigIntToBytes, bin_equal, bin_fromHexString, bin_toHexString, check, } from '@towns-protocol/dlog';
2
2
  import { isDefined, assert, hasElements } from './check';
3
- import { Err, StreamEventSchema, EnvelopeSchema, StreamAndCookieSchema, SyncCookieSchema, EventRefSchema, } from '@towns-protocol/proto';
3
+ import { Err, StreamEventSchema, EnvelopeSchema, StreamAndCookieSchema, SyncCookieSchema, EventRefSchema, SnapshotSchema, } from '@towns-protocol/proto';
4
4
  import { assertBytes } from 'ethereum-cryptography/utils';
5
5
  import { recoverPublicKey, signSync, verify } from 'ethereum-cryptography/secp256k1';
6
6
  import { genIdBlob, streamIdAsBytes, streamIdAsString, userIdFromAddress } from './id';
@@ -52,9 +52,12 @@ export const unpackStream = async (stream, opts) => {
52
52
  assert(stream !== undefined, 'bad stream');
53
53
  const streamAndCookie = await unpackStreamAndCookie(stream, opts);
54
54
  assert(stream.miniblocks.length > 0, `bad stream: no blocks ${streamIdAsString(streamAndCookie.nextSyncCookie.streamId)}`);
55
- const snapshot = streamAndCookie.miniblocks[0].header.snapshot;
56
- const prevSnapshotMiniblockNum = streamAndCookie.miniblocks[0].header.prevSnapshotMiniblockNum;
55
+ let snapshot = streamAndCookie.miniblocks[0].header.snapshot;
56
+ if (snapshot === undefined) {
57
+ snapshot = streamAndCookie.snapshot?.snapshot;
58
+ }
57
59
  assert(snapshot !== undefined, `bad block: snapshot is undefined ${streamIdAsString(streamAndCookie.nextSyncCookie.streamId)}`);
60
+ const prevSnapshotMiniblockNum = streamAndCookie.miniblocks[0].header.prevSnapshotMiniblockNum;
58
61
  const eventIds = [
59
62
  ...streamAndCookie.miniblocks.flatMap((mb) => mb.events.map((e) => e.hashStr), streamAndCookie.events.map((e) => e.hashStr)),
60
63
  ...eventIdsFromSnapshot(snapshot),
@@ -84,9 +87,12 @@ export const unpackStreamAndCookie = async (streamAndCookie, opts) => {
84
87
  events: await unpackEnvelopes(streamAndCookie.events, opts),
85
88
  nextSyncCookie: streamAndCookie.nextSyncCookie,
86
89
  miniblocks: miniblocks,
90
+ snapshot: streamAndCookie.snapshot
91
+ ? await unpackSnapshot(miniblocks[0], streamAndCookie.snapshot, opts)
92
+ : undefined,
87
93
  };
88
94
  };
89
- // returns all events + the header event and pointer to header content
95
+ // returns all events, the header event, snapshot, and pointer to header content
90
96
  export const unpackMiniblock = async (miniblock, opts) => {
91
97
  check(isDefined(miniblock.header), 'Miniblock header is not set');
92
98
  const header = await unpackEnvelope(miniblock.header, opts);
@@ -115,6 +121,25 @@ export const unpackEnvelope = async (envelope, opts) => {
115
121
  }
116
122
  return makeParsedEvent(event, envelope.hash, envelope.signature);
117
123
  };
124
+ export const unpackSnapshot = async (miniblock, snapshot, opts) => {
125
+ check(hasElements(snapshot.event), 'Snapshot base is not set', Err.BAD_EVENT);
126
+ check(hasElements(snapshot.hash), 'Snapshot hash is not set', Err.BAD_EVENT);
127
+ check(hasElements(snapshot.signature), 'Snapshot signature is not set', Err.BAD_EVENT);
128
+ // make sure the given snapshot corresponds to the miniblock
129
+ check(bin_equal(miniblock.header.snapshotHash, snapshot.hash), 'Snapshot hash does not match miniblock snapshot hash', Err.BAD_EVENT_ID);
130
+ // check snapshot hash
131
+ if (opts?.disableHashValidation !== true) {
132
+ const hash = riverSnapshotHash(snapshot.event);
133
+ check(bin_equal(hash, snapshot.hash), 'Snapshot hash is not valid', Err.BAD_EVENT_ID);
134
+ }
135
+ if (opts?.disableSignatureValidation !== true) {
136
+ // header event contains the creatorAddress of the snapshot.
137
+ const headerEvent = miniblock.events.at(-1);
138
+ check(headerEvent !== undefined, 'Miniblock header event not found', Err.BAD_EVENT);
139
+ checkEventSignature(headerEvent.event, snapshot.hash, snapshot.signature);
140
+ }
141
+ return makeParsedSnapshot(fromBinary(SnapshotSchema, snapshot.event), snapshot.hash, snapshot.signature);
142
+ };
118
143
  export function checkEventSignature(event, hash, signature) {
119
144
  const recoveredPubKey = riverRecoverPubKey(hash, signature);
120
145
  if (!hasElements(event.delegateSig)) {
@@ -140,6 +165,15 @@ export function makeParsedEvent(event, hash, signature) {
140
165
  creatorUserId: userIdFromAddress(event.creatorAddress),
141
166
  };
142
167
  }
168
+ export function makeParsedSnapshot(snapshot, hash, signature) {
169
+ hash = hash ?? riverSnapshotHash(toBinary(SnapshotSchema, snapshot));
170
+ return {
171
+ snapshot,
172
+ hash,
173
+ hashStr: bin_toHexString(hash),
174
+ signature,
175
+ };
176
+ }
143
177
  export const unpackEnvelopes = async (event, opts) => {
144
178
  const ret = [];
145
179
  //let prevEventHash: Uint8Array | undefined = undefined
@@ -176,6 +210,8 @@ const HASH_SEPARATOR = new Uint8Array([65, 66, 67, 68, 69, 70, 71, 62]);
176
210
  const HASH_FOOTER = new Uint8Array([60, 71, 70, 69, 68, 67, 66, 65]);
177
211
  // Header for delegate signature 'RIVERSIG'
178
212
  const RIVER_SIG_HEADER = new Uint8Array([82, 73, 86, 69, 82, 83, 73, 71]);
213
+ // Create hash header as Uint8Array from string 'SNAPSHOT'
214
+ const SNAPSHOT_HEADER = new Uint8Array([83, 78, 65, 80, 83, 72, 79, 84]);
179
215
  function numberToUint8Array64LE(num) {
180
216
  const result = new Uint8Array(8);
181
217
  for (let i = 0; num != 0; i++, num = num >>> 8) {
@@ -211,6 +247,16 @@ export function riverHash(data) {
211
247
  hasher.update(HASH_FOOTER);
212
248
  return hasher.digest();
213
249
  }
250
+ export function riverSnapshotHash(data) {
251
+ assertBytes(data);
252
+ const hasher = keccak256.create();
253
+ hasher.update(SNAPSHOT_HEADER);
254
+ hasher.update(numberToUint8Array64LE(data.length));
255
+ hasher.update(HASH_SEPARATOR);
256
+ hasher.update(data);
257
+ hasher.update(HASH_FOOTER);
258
+ return hasher.digest();
259
+ }
214
260
  export function riverDelegateHashSrc(devicePublicKey, expiryEpochMs) {
215
261
  assertBytes(devicePublicKey);
216
262
  check(expiryEpochMs >= 0, 'Expiry should be positive');