@towns-protocol/encryption 0.0.381 → 0.0.382

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.
package/dist/base.d.ts CHANGED
@@ -1,10 +1,8 @@
1
- import { GroupEncryptionAlgorithmId, GroupEncryptionSession, UserDeviceCollection } from './olmLib';
1
+ import { GroupEncryptionAlgorithmId, GroupEncryptionSession } from './olmLib';
2
2
  import { EncryptionDevice } from './encryptionDevice';
3
3
  import { EncryptedData } from '@towns-protocol/proto';
4
4
  export interface IGroupEncryptionClient {
5
- downloadUserDeviceInfo(userIds: string[], forceDownload: boolean): Promise<UserDeviceCollection>;
6
- encryptAndShareGroupSessions(streamId: string, sessions: GroupEncryptionSession[], devicesInRoom: UserDeviceCollection, algorithm: GroupEncryptionAlgorithmId): Promise<void>;
7
- getDevicesInStream(streamId: string): Promise<UserDeviceCollection>;
5
+ encryptAndShareGroupSessionsToStream(streamId: string, sessions: GroupEncryptionSession[], algorithm: GroupEncryptionAlgorithmId, priorityUserIds: string[]): Promise<void>;
8
6
  getMiniblockInfo(streamId: string): Promise<{
9
7
  miniblockNum: bigint;
10
8
  miniblockHash: Uint8Array;
@@ -19,6 +17,14 @@ export interface IEncryptionParams {
19
17
  /** olm.js wrapper */
20
18
  device: EncryptionDevice;
21
19
  }
20
+ export interface EnsureOutboundSessionOpts {
21
+ shareShareSessionTimeoutMs?: number;
22
+ priorityUserIds?: string[];
23
+ miniblockInfo?: {
24
+ miniblockNum: bigint;
25
+ miniblockHash: Uint8Array;
26
+ };
27
+ }
22
28
  /**
23
29
  * base type for encryption implementations
24
30
  */
@@ -29,9 +35,7 @@ export declare abstract class EncryptionAlgorithm implements IEncryptionParams {
29
35
  * @param params - parameters
30
36
  */
31
37
  constructor(params: IEncryptionParams);
32
- abstract ensureOutboundSession(streamId: string, opts?: {
33
- awaitInitialShareSession: boolean;
34
- }): Promise<void>;
38
+ abstract ensureOutboundSession(streamId: string, opts?: EnsureOutboundSessionOpts): Promise<void>;
35
39
  abstract hasOutboundSession(streamId: string): Promise<boolean>;
36
40
  abstract encrypt_deprecated_v0(streamId: string, payload: string): Promise<EncryptedData>;
37
41
  abstract encrypt(streamId: string, payload: Uint8Array): Promise<EncryptedData>;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,MAAM,WAAW,sBAAsB;IACnC,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAChG,4BAA4B,CACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,sBAAsB,EAAE,EAClC,aAAa,EAAE,oBAAoB,EACnC,SAAS,EAAE,0BAA0B,GACtC,OAAO,CAAC,IAAI,CAAC,CAAA;IAChB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACnE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,UAAU,CAAA;KAAE,CAAC,CAAA;CACnG;AAED,MAAM,WAAW,iBAAiB;IAC9B,qBAAqB;IACrB,MAAM,EAAE,gBAAgB,CAAA;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,sBAAsB,CAAA;IAC9B,qBAAqB;IACrB,MAAM,EAAE,gBAAgB,CAAA;CAC3B;AAED;;GAEG;AACH,8BAAsB,mBAAoB,YAAW,iBAAiB;IAClE,SAAgB,MAAM,EAAE,gBAAgB,CAAA;IACxC,SAAgB,MAAM,EAAE,sBAAsB,CAAA;IAE9C;;OAEG;gBACgB,MAAM,EAAE,iBAAiB;IAK5C,QAAQ,CAAC,qBAAqB,CAC1B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,wBAAwB,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,IAAI,CAAC;IAEhB,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAE/D,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IACzF,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;CAClF;AAED;;GAEG;AACH,8BAAsB,mBAAoB,YAAW,iBAAiB;IAClE,SAAgB,MAAM,EAAE,gBAAgB,CAAA;gBAErB,MAAM,EAAE,iBAAiB;IAI5C,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC;IAExF,QAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1F,QAAQ,CAAC,kBAAkB,CACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;IAE9C,QAAQ,CAAC,mBAAmB,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IACjE,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IACnE,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAChF;AAED;;;;;;;GAOG;AACH,qBAAa,eAAgB,SAAQ,KAAK;aAElB,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM,EAC5B,GAAG,EAAE,MAAM;CAMlB;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,eAAe,CAEhE"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"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"}
package/dist/base.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AA4BA;;GAEG;AACH,MAAM,OAAgB,mBAAmB;IACrB,MAAM,CAAkB;IACxB,MAAM,CAAwB;IAE9C;;OAEG;IACH,YAAmB,MAAyB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC/B,CAAC;CAWJ;AAED;;GAEG;AACH,MAAM,OAAgB,mBAAmB;IACrB,MAAM,CAAkB;IAExC,YAAmB,MAAyB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC/B,CAAC;CAcJ;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAElB;IADpB,YACoB,IAAY,EAC5B,GAAW;QAEX,KAAK,CAAC,GAAG,CAAC,CAAA;QAHM,SAAI,GAAJ,IAAI,CAAQ;QAI5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IACjC,CAAC;CACJ;AAED,MAAM,UAAU,iBAAiB,CAAC,CAAQ;IACtC,OAAO,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAA;AACvC,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAgCA;;GAEG;AACH,MAAM,OAAgB,mBAAmB;IACrB,MAAM,CAAkB;IACxB,MAAM,CAAwB;IAE9C;;OAEG;IACH,YAAmB,MAAyB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC/B,CAAC;CAWJ;AAED;;GAEG;AACH,MAAM,OAAgB,mBAAmB;IACrB,MAAM,CAAkB;IAExC,YAAmB,MAAyB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC/B,CAAC;CAcJ;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAElB;IADpB,YACoB,IAAY,EAC5B,GAAW;QAEX,KAAK,CAAC,GAAG,CAAC,CAAA;QAHM,SAAI,GAAJ,IAAI,CAAQ;QAI5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IACjC,CAAC;CACJ;AAED,MAAM,UAAU,iBAAiB,CAAC,CAAQ;IACtC,OAAO,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAA;AACvC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { EncryptedData } from '@towns-protocol/proto';
2
- import { EncryptionAlgorithm, IEncryptionParams } from './base';
2
+ import { EncryptionAlgorithm, EnsureOutboundSessionOpts, IEncryptionParams } from './base';
3
3
  import { GroupEncryptionAlgorithmId } from './olmLib';
4
4
  /** Note Jterzis 07/26/23: Several features are intentionally left out of this module,
5
5
  * that we may want to implement in the future:
@@ -18,9 +18,7 @@ import { GroupEncryptionAlgorithmId } from './olmLib';
18
18
  export declare class GroupEncryption extends EncryptionAlgorithm {
19
19
  readonly algorithm = GroupEncryptionAlgorithmId.GroupEncryption;
20
20
  constructor(params: IEncryptionParams);
21
- ensureOutboundSession(streamId: string, opts?: {
22
- awaitInitialShareSession: boolean;
23
- }): Promise<void>;
21
+ ensureOutboundSession(streamId: string, opts?: EnsureOutboundSessionOpts): Promise<void>;
24
22
  hasOutboundSession(streamId: string): Promise<boolean>;
25
23
  private shareSession;
26
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"groupEncryption.d.ts","sourceRoot":"","sources":["../src/groupEncryption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6C,MAAM,uBAAuB,CAAA;AAChG,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AAMrD;;;;;;;;GAQG;AAEH;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,mBAAmB;IACpD,SAAgB,SAAS,8CAA6C;gBACnD,MAAM,EAAE,iBAAiB;IAI/B,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,wBAAwB,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,IAAI,CAAC;IA0BH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YASrD,YAAY;IAgB1B;;OAEG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAY7F;;;;OAIG;IACU,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;CAYtF"}
1
+ {"version":3,"file":"groupEncryption.d.ts","sourceRoot":"","sources":["../src/groupEncryption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6C,MAAM,uBAAuB,CAAA;AAChG,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAC1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AAMrD;;;;;;;;GAQG;AAEH;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,mBAAmB;IACpD,SAAgB,SAAS,8CAA6C;gBACnD,MAAM,EAAE,iBAAiB;IAI/B,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC;IA0BH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YASrD,YAAY;IAiB1B;;OAEG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAY7F;;;;OAIG;IACU,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;CAYtF"}
@@ -33,13 +33,13 @@ export class GroupEncryption extends EncryptionAlgorithm {
33
33
  const sessionId = await this.device.createOutboundGroupSession(streamId);
34
34
  log(`Started new megolm session ${sessionId}`);
35
35
  // don't wait for the session to be shared
36
- const promise = this.shareSession(streamId, sessionId);
37
- if (opts?.awaitInitialShareSession === true) {
36
+ const promise = this.shareSession(streamId, sessionId, opts?.priorityUserIds ?? []);
37
+ if (opts?.shareShareSessionTimeoutMs === 0) {
38
38
  await promise;
39
39
  }
40
40
  else {
41
41
  // await the promise but timeout after N seconds
42
- const waitTimeBeforeMovingOn = 30000;
42
+ const waitTimeBeforeMovingOn = opts?.shareShareSessionTimeoutMs ?? 30000;
43
43
  await Promise.race([
44
44
  promise,
45
45
  new Promise((resolve, _) => setTimeout(() => resolve(), waitTimeBeforeMovingOn)),
@@ -56,13 +56,12 @@ export class GroupEncryption extends EncryptionAlgorithm {
56
56
  return false;
57
57
  }
58
58
  }
59
- async shareSession(streamId, sessionId) {
60
- const devicesInRoom = await this.client.getDevicesInStream(streamId);
59
+ async shareSession(streamId, sessionId, priorityUserIds) {
61
60
  const session = await this.device.exportInboundGroupSession(streamId, sessionId);
62
61
  if (!session) {
63
62
  throw new Error('Session key not found for session ' + sessionId);
64
63
  }
65
- await this.client.encryptAndShareGroupSessions(streamId, [session], devicesInRoom, this.algorithm);
64
+ await this.client.encryptAndShareGroupSessionsToStream(streamId, [session], this.algorithm, priorityUserIds);
66
65
  }
67
66
  /**
68
67
  * @deprecated
@@ -1 +1 @@
1
- {"version":3,"file":"groupEncryption.js","sourceRoot":"","sources":["../src/groupEncryption.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"groupEncryption.js","sourceRoot":"","sources":["../src/groupEncryption.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { EncryptedData, ExportedDevice } from '@towns-protocol/proto';
2
2
  import { GroupEncryptionAlgorithmId, GroupEncryptionSession, UserDevice } from './olmLib';
3
- import { DecryptionAlgorithm, EncryptionAlgorithm, IGroupEncryptionClient } from './base';
3
+ import { DecryptionAlgorithm, EncryptionAlgorithm, EnsureOutboundSessionOpts, IGroupEncryptionClient } from './base';
4
4
  import { type EncryptionDeviceInitOpts } from './encryptionDevice';
5
5
  import type { CryptoStore } from './cryptoStore';
6
6
  export interface ImportRoomKeysOpts {
@@ -55,9 +55,7 @@ export declare class GroupEncryptionCrypto {
55
55
  * @returns Promise which resolves when the event has been
56
56
  * created, use options to await the initial share
57
57
  */
58
- ensureOutboundSession(streamId: string, algorithm: GroupEncryptionAlgorithmId, opts?: {
59
- awaitInitialShareSession: boolean;
60
- }): Promise<void>;
58
+ ensureOutboundSession(streamId: string, algorithm: GroupEncryptionAlgorithmId, opts?: EnsureOutboundSessionOpts): Promise<void>;
61
59
  /**
62
60
  *
63
61
  * @param streamId - the id of the stream to check
@@ -1 +1 @@
1
- {"version":3,"file":"groupEncryptionCrypto.d.ts","sourceRoot":"","sources":["../src/groupEncryptionCrypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EACH,0BAA0B,EAC1B,sBAAsB,EAEtB,UAAU,EACb,MAAM,UAAU,CAAA;AAEjB,OAAO,EACH,mBAAmB,EAEnB,mBAAmB,EACnB,sBAAsB,EACzB,MAAM,QAAQ,CAAA;AAGf,OAAO,EAAoB,KAAK,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAKpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAIhD,MAAM,WAAW,kBAAkB;IAC/B,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAA;CAChE;AAED;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACtC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,QAAQ,CAAgC;IAEhD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IACnD,SAAgB,eAAe,EAAE,MAAM,CAAC,0BAA0B,EAAE,mBAAmB,CAAC,CAAA;IACxF,SAAgB,eAAe,EAAE,MAAM,CAAC,0BAA0B,EAAE,mBAAmB,CAAC,CAAA;IACxF,SAAgB,WAAW,EAAE,WAAW,CAAA;IACjC,gCAAgC,UAAQ;IACxC,2BAA2B,UAAO;gBAEtB,MAAM,EAAE,sBAAsB,EAAE,WAAW,EAAE,WAAW;IA+B3E;;OAEG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAajE;;;;;;;;OAQG;IACU,qBAAqB,CAC9B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,EAAE,GACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAgBlC;;;;;OAKG;IACU,oBAAoB,CAC7B,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,GACxB,OAAO,CAAC,MAAM,CAAC;IAIlB;;;;;OAKG;IACU,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,0BAA0B,EACrC,IAAI,CAAC,EAAE;QAAE,wBAAwB,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;OAKG;IACU,kBAAkB,CAC3B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,0BAA0B,GACtC,OAAO,CAAC,OAAO,CAAC;IAGnB;;;;;OAKG;IACU,iBAAiB,CAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,0BAA0B,GACtC,OAAO,CAAC,aAAa,CAAC;IAGzB;;;;;OAKG;IACU,+BAA+B,CACxC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,0BAA0B,GACtC,OAAO,CAAC,aAAa,CAAC;IAGzB;;;;;OAKG;IACU,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;IAS1D,kBAAkB,CAC3B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;IAa9C,MAAM;IACO,cAAc,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAShE,MAAM;IACO,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IASpE,MAAM;IACO,aAAa,CACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,0BAA0B,GACtC,OAAO,CAAC,OAAO,CAAC;IAInB,MAAM;IACC,aAAa,IAAI,UAAU;IAOlC,MAAM;IACO,YAAY,IAAI,OAAO,CAAC,cAAc,CAAC;IAIpD;;;;;;OAMG;IACU,iBAAiB,CAC1B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,sBAAsB,EAAE,GAC/B,OAAO,CAAC,IAAI,CAAC;IAmBhB;;;;;OAKG;IACI,cAAc,CACjB,IAAI,EAAE,sBAAsB,EAAE,EAC9B,IAAI,GAAE,kBAAuB,GAC9B,OAAO,CAAC,IAAI,CAAC;IA+ChB;;;;;;;;OAQG;IACU,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAGpE"}
1
+ {"version":3,"file":"groupEncryptionCrypto.d.ts","sourceRoot":"","sources":["../src/groupEncryptionCrypto.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"groupEncryptionCrypto.js","sourceRoot":"","sources":["../src/groupEncryptionCrypto.ts"],"names":[],"mappings":"AACA,OAAO,EACH,0BAA0B,EAE1B,+BAA+B,GAElC,MAAM,UAAU,CAAA;AAEjB,OAAO,EAEH,eAAe,GAGlB,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAiC,MAAM,oBAAoB,CAAA;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAG/D,MAAM,GAAG,GAAG,IAAI,CAAC,sCAAsC,CAAC,CAAA;AAoBxD,MAAM,OAAO,qBAAqB;IACtB,QAAQ,CAAgC;IAE/B,gBAAgB,CAAkB;IACnC,eAAe,CAAyD;IACxE,eAAe,CAAyD;IACxE,WAAW,CAAa;IACjC,gCAAgC,GAAG,KAAK,CAAA;IACxC,2BAA2B,GAAG,IAAI,CAAA;IAEzC,YAAmB,MAA8B,EAAE,WAAwB;QACvE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,yBAAyB;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAA;QACxC,yEAAyE;QACzE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAA;YAChC,MAAM,CAAC,CAAA;QACX,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QAExE,IAAI,CAAC,eAAe,GAAG;YACnB,CAAC,0BAA0B,CAAC,eAAe,CAAC,EAAE,IAAI,eAAe,CAAC;gBAC9D,MAAM,EAAE,IAAI,CAAC,gBAAgB;gBAC7B,MAAM;aACT,CAAC;YACF,CAAC,0BAA0B,CAAC,qBAAqB,CAAC,EAAE,IAAI,qBAAqB,CAAC;gBAC1E,MAAM,EAAE,IAAI,CAAC,gBAAgB;gBAC7B,MAAM;aACT,CAAC;SACL,CAAA;QACD,IAAI,CAAC,eAAe,GAAG;YACnB,CAAC,0BAA0B,CAAC,eAAe,CAAC,EAAE,IAAI,eAAe,CAAC;gBAC9D,MAAM,EAAE,IAAI,CAAC,gBAAgB;aAChC,CAAC;YACF,CAAC,0BAA0B,CAAC,qBAAqB,CAAC,EAAE,IAAI,qBAAqB,CAAC;gBAC1E,MAAM,EAAE,IAAI,CAAC,gBAAgB;aAChC,CAAC;SACL,CAAA;IACL,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,IAAI,CAAC,IAA+B;QAC7C,uCAAuC;QACvC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEtC,8BAA8B;QAC9B,IACI,CAAC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB;YAC1C,CAAC,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAC1C,CAAC;YACC,GAAG,CAAC,mDAAmD,CAAC,CAAA;QAC5D,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,qBAAqB,CAC9B,OAAe,EACf,UAAwB;QAExB,MAAM,gBAAgB,GAA2B,EAAE,CAAA;QACnD,MAAM,OAAO,CAAC,GAAG,CACb,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CACjE,SAAS,CAAC,SAAS,EACnB,SAAS,CAAC,WAAW,EACrB,OAAO,CACV,CAAA;YACD,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,6CAA6C,CAAC,CAAA;YAC1E,gBAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,IAAI,CAAA;QAC1D,CAAC,CAAC,CACL,CAAA;QACD,OAAO,gBAAgB,CAAA;IAC3B,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,oBAAoB,CAC7B,UAAkB,EAClB,eAAuB;QAEvB,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,UAAU,EAAE,eAAe,CAAC,CAAA;IAClF,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,qBAAqB,CAC9B,QAAgB,EAChB,SAAqC,EACrC,IAA4C;QAE5C,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAChF,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,kBAAkB,CAC3B,QAAgB,EAChB,SAAqC;QAErC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IACvE,CAAC;IACD;;;;;OAKG;IACI,KAAK,CAAC,iBAAiB,CAC1B,QAAgB,EAChB,OAAmB,EACnB,SAAqC;QAErC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC;IACD;;;;;OAKG;IACI,KAAK,CAAC,+BAA+B,CACxC,QAAgB,EAChB,OAAe,EACf,SAAqC;QAErC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACnF,CAAC;IACD;;;;;OAKG;IACI,KAAK,CAAC,iBAAiB,CAAC,QAAgB,EAAE,OAAsB;QACnE,wEAAwE;QACxE,MAAM,SAAS,GAAG,+BAA+B,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACpE,IAAI,SAAS,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACpC,MAAM,IAAI,eAAe,CAAC,oCAAoC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QACtF,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC3E,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC3B,QAAgB,EAChB,SAAiB;QAEjB,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAChE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,kBAAkB,CACpE,QAAQ,EACR,SAAS,CACZ,CAAA;YACD,IAAI,OAAO,EAAE,CAAC;gBACV,OAAO,OAAO,CAAA;YAClB,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAA;IACpB,CAAC;IAED,MAAM;IACC,KAAK,CAAC,cAAc;QACvB,MAAM,MAAM,GAA6B,EAAE,CAAA;QAC3C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAChE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,mBAAmB,EAAE,CAAA;YAC5E,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,MAAM;IACC,KAAK,CAAC,kBAAkB,CAAC,QAAgB;QAC5C,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAChE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;YACtF,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,MAAM;IACC,KAAK,CAAC,aAAa,CACtB,QAAgB,EAChB,SAAiB,EACjB,SAAqC;QAErC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAC7E,CAAC;IAED,MAAM;IACC,aAAa;QAChB,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,mBAAoB;YACrD,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG;SACrD,CAAA;IACL,CAAC;IAED,MAAM;IACC,KAAK,CAAC,YAAY;QACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAA;IAC/C,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,iBAAiB,CAC1B,QAAgB,EAChB,IAA8B;QAE9B,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE,CAChD,OAAO,CAAC,GAAG,CACP,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACnB,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;YAC/B,IAAI,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBACxE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,GAAG,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAA;gBACtC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,GAAG,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAA;YACzC,CAAC;QACL,CAAC,CAAC,CACL,CACJ,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACI,cAAc,CACjB,IAA8B,EAC9B,OAA2B,EAAE;QAE7B,IAAI,SAAS,GAAG,CAAC,CAAA;QACjB,IAAI,QAAQ,GAAG,CAAC,CAAA;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;QAEzB,SAAS,cAAc;YACnB,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACpB,KAAK,EAAE,WAAW;gBAClB,SAAS;gBACT,QAAQ;gBACR,KAAK;aACR,CAAC,CAAA;QACN,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,CACd,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACnB,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBAClC,GAAG,CAAC,6CAA6C,EAAE,GAAG,CAAC,CAAA;gBACvD,QAAQ,EAAE,CAAA;gBACV,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACxB,cAAc,EAAE,CAAA;gBACpB,CAAC;gBACD,OAAM;YACV,CAAC;YAED,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;YAC/B,IAAI,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;oBACxE,SAAS,EAAE,CAAA;oBACX,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACxB,cAAc,EAAE,CAAA;oBACpB,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,GAAG,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAA;oBAClC,QAAQ,EAAE,CAAA;oBACV,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACxB,cAAc,EAAE,CAAA;oBACpB,CAAC;gBACL,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,GAAG,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAA;YACzC,CAAC;QACL,CAAC,CAAC,CACL,CAAC,IAAI,EAAE,CAAA;IACZ,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,oBAAoB,CAAC,IAAY;QAC1C,iEAAiE;QACjE,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IACtD,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QAC1C,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,0BAA0B,CAAC,qBAAqB,CAAC,CAAA;IAC9F,CAAC;CACJ"}
1
+ {"version":3,"file":"groupEncryptionCrypto.js","sourceRoot":"","sources":["../src/groupEncryptionCrypto.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { EncryptedData, HybridGroupSessionKey } from '@towns-protocol/proto';
2
- import { EncryptionAlgorithm, IEncryptionParams } from './base';
2
+ import { EncryptionAlgorithm, EnsureOutboundSessionOpts, IEncryptionParams } from './base';
3
3
  import { GroupEncryptionAlgorithmId } from './olmLib';
4
4
  /**
5
5
  * Hybrid Group encryption implementation
@@ -9,12 +9,8 @@ import { GroupEncryptionAlgorithmId } from './olmLib';
9
9
  export declare class HybridGroupEncryption extends EncryptionAlgorithm {
10
10
  readonly algorithm = GroupEncryptionAlgorithmId.HybridGroupEncryption;
11
11
  constructor(params: IEncryptionParams);
12
- ensureOutboundSession(streamId: string, opts?: {
13
- awaitInitialShareSession: boolean;
14
- }): Promise<void>;
15
- _ensureOutboundSession(streamId: string, opts?: {
16
- awaitInitialShareSession: boolean;
17
- }): Promise<HybridGroupSessionKey>;
12
+ ensureOutboundSession(streamId: string, opts?: EnsureOutboundSessionOpts): Promise<void>;
13
+ _ensureOutboundSession(streamId: string, opts?: EnsureOutboundSessionOpts): Promise<HybridGroupSessionKey>;
18
14
  hasOutboundSession(streamId: string): Promise<boolean>;
19
15
  private shareSession;
20
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"hybridGroupEncryption.d.ts","sourceRoot":"","sources":["../src/hybridGroupEncryption.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EAGb,qBAAqB,EACxB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AAOrD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,mBAAmB;IAC1D,SAAgB,SAAS,oDAAmD;gBACzD,MAAM,EAAE,iBAAiB;IAI/B,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,wBAAwB,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,IAAI,CAAC;IAIH,sBAAsB,CAC/B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,wBAAwB,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,qBAAqB,CAAC;IAgCpB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YASrD,YAAY;IAgB1B;;OAEG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAe7F;;;;OAIG;IACU,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;CActF"}
1
+ {"version":3,"file":"hybridGroupEncryption.d.ts","sourceRoot":"","sources":["../src/hybridGroupEncryption.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,aAAa,EAGb,qBAAqB,EACxB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAC1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AAOrD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,mBAAmB;IAC1D,SAAgB,SAAS,oDAAmD;gBACzD,MAAM,EAAE,iBAAiB;IAI/B,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC;IAIH,sBAAsB,CAC/B,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,yBAAyB,GACjC,OAAO,CAAC,qBAAqB,CAAC;IAiCpB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YASrD,YAAY;IAiB1B;;OAEG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAe7F;;;;OAIG;IACU,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;CActF"}
@@ -24,18 +24,18 @@ export class HybridGroupEncryption extends EncryptionAlgorithm {
24
24
  return sessionKey;
25
25
  }
26
26
  catch (error) {
27
- const { miniblockNum, miniblockHash } = await this.client.getMiniblockInfo(streamId);
27
+ const { miniblockNum, miniblockHash } = opts?.miniblockInfo ?? (await this.client.getMiniblockInfo(streamId));
28
28
  // if we don't have a cached session at this point, create a new one
29
29
  const { sessionId, sessionKey } = await this.device.createHybridGroupSession(streamId, miniblockNum, miniblockHash);
30
30
  log(`Started new hybrid group session ${sessionId}`);
31
31
  // don't wait for the session to be shared
32
- const promise = this.shareSession(streamId, sessionId);
33
- if (opts?.awaitInitialShareSession === true) {
32
+ const promise = this.shareSession(streamId, sessionId, opts?.priorityUserIds ?? []);
33
+ if (opts?.shareShareSessionTimeoutMs === 0) {
34
34
  await promise;
35
35
  }
36
36
  else {
37
37
  // await the promise but timeout after N seconds
38
- const waitTimeBeforeMovingOn = 30000;
38
+ const waitTimeBeforeMovingOn = opts?.shareShareSessionTimeoutMs ?? 30000;
39
39
  await Promise.race([
40
40
  promise,
41
41
  new Promise((resolve, _) => setTimeout(() => resolve(), waitTimeBeforeMovingOn)),
@@ -53,13 +53,12 @@ export class HybridGroupEncryption extends EncryptionAlgorithm {
53
53
  return false;
54
54
  }
55
55
  }
56
- async shareSession(streamId, sessionId) {
57
- const devicesInRoom = await this.client.getDevicesInStream(streamId);
56
+ async shareSession(streamId, sessionId, priorityUserIds) {
58
57
  const session = await this.device.exportHybridGroupSession(streamId, sessionId);
59
58
  if (!session) {
60
59
  throw new Error('Session key not found for session ' + sessionId);
61
60
  }
62
- await this.client.encryptAndShareGroupSessions(streamId, [session], devicesInRoom, this.algorithm);
61
+ await this.client.encryptAndShareGroupSessionsToStream(streamId, [session], this.algorithm, priorityUserIds);
63
62
  }
64
63
  /**
65
64
  * @deprecated
@@ -1 +1 @@
1
- {"version":3,"file":"hybridGroupEncryption.js","sourceRoot":"","sources":["../src/hybridGroupEncryption.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hybridGroupEncryption.js","sourceRoot":"","sources":["../src/hybridGroupEncryption.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@towns-protocol/encryption",
3
- "version": "0.0.381",
3
+ "version": "0.0.382",
4
4
  "packageManager": "yarn@3.8.0",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -20,9 +20,9 @@
20
20
  "dependencies": {
21
21
  "@bufbuild/protobuf": "^2.9.0",
22
22
  "@towns-protocol/olm": "3.2.28",
23
- "@towns-protocol/proto": "^0.0.381",
24
- "@towns-protocol/utils": "^0.0.381",
25
- "@towns-protocol/web3": "^0.0.381",
23
+ "@towns-protocol/proto": "^0.0.382",
24
+ "@towns-protocol/utils": "^0.0.382",
25
+ "@towns-protocol/web3": "^0.0.382",
26
26
  "debug": "^4.3.4",
27
27
  "dexie": "^4.2.1",
28
28
  "ethers": "^5.8.0",
@@ -49,5 +49,5 @@
49
49
  "publishConfig": {
50
50
  "access": "public"
51
51
  },
52
- "gitHead": "4147f75f66ee0391b0abdfca1fcfa0ebab759cd6"
52
+ "gitHead": "ae612e5f1485e9ba169db247ad0fa413b23ca2bc"
53
53
  }