@agatx/serenada-core 0.6.10

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 (156) hide show
  1. package/dist/ConsoleLogger.d.ts +6 -0
  2. package/dist/ConsoleLogger.d.ts.map +1 -0
  3. package/dist/ConsoleLogger.js +21 -0
  4. package/dist/ConsoleLogger.js.map +1 -0
  5. package/dist/RoomWatcher.d.ts +34 -0
  6. package/dist/RoomWatcher.d.ts.map +1 -0
  7. package/dist/RoomWatcher.js +103 -0
  8. package/dist/RoomWatcher.js.map +1 -0
  9. package/dist/SerenadaCore.d.ts +47 -0
  10. package/dist/SerenadaCore.d.ts.map +1 -0
  11. package/dist/SerenadaCore.js +141 -0
  12. package/dist/SerenadaCore.js.map +1 -0
  13. package/dist/SerenadaDiagnostics.d.ts +49 -0
  14. package/dist/SerenadaDiagnostics.d.ts.map +1 -0
  15. package/dist/SerenadaDiagnostics.js +421 -0
  16. package/dist/SerenadaDiagnostics.js.map +1 -0
  17. package/dist/SerenadaServerProvider.d.ts +48 -0
  18. package/dist/SerenadaServerProvider.d.ts.map +1 -0
  19. package/dist/SerenadaServerProvider.js +296 -0
  20. package/dist/SerenadaServerProvider.js.map +1 -0
  21. package/dist/SerenadaSession.d.ts +180 -0
  22. package/dist/SerenadaSession.d.ts.map +1 -0
  23. package/dist/SerenadaSession.js +1082 -0
  24. package/dist/SerenadaSession.js.map +1 -0
  25. package/dist/SignalingProvider.d.ts +132 -0
  26. package/dist/SignalingProvider.d.ts.map +1 -0
  27. package/dist/SignalingProvider.js +50 -0
  28. package/dist/SignalingProvider.js.map +1 -0
  29. package/dist/api/roomApi.d.ts +2 -0
  30. package/dist/api/roomApi.d.ts.map +1 -0
  31. package/dist/api/roomApi.js +14 -0
  32. package/dist/api/roomApi.js.map +1 -0
  33. package/dist/cameraModes.d.ts +13 -0
  34. package/dist/cameraModes.d.ts.map +1 -0
  35. package/dist/cameraModes.js +35 -0
  36. package/dist/cameraModes.js.map +1 -0
  37. package/dist/configValidation.d.ts +10 -0
  38. package/dist/configValidation.d.ts.map +1 -0
  39. package/dist/configValidation.js +24 -0
  40. package/dist/configValidation.js.map +1 -0
  41. package/dist/constants.d.ts +33 -0
  42. package/dist/constants.d.ts.map +1 -0
  43. package/dist/constants.js +65 -0
  44. package/dist/constants.js.map +1 -0
  45. package/dist/formatError.d.ts +3 -0
  46. package/dist/formatError.d.ts.map +1 -0
  47. package/dist/formatError.js +7 -0
  48. package/dist/formatError.js.map +1 -0
  49. package/dist/iceServers.d.ts +2 -0
  50. package/dist/iceServers.d.ts.map +1 -0
  51. package/dist/iceServers.js +21 -0
  52. package/dist/iceServers.js.map +1 -0
  53. package/dist/index.d.ts +55 -0
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +44 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/layout/computeLayout.d.ts +81 -0
  58. package/dist/layout/computeLayout.d.ts.map +1 -0
  59. package/dist/layout/computeLayout.js +380 -0
  60. package/dist/layout/computeLayout.js.map +1 -0
  61. package/dist/media/AudioLevelMonitor.d.ts +51 -0
  62. package/dist/media/AudioLevelMonitor.d.ts.map +1 -0
  63. package/dist/media/AudioLevelMonitor.js +179 -0
  64. package/dist/media/AudioLevelMonitor.js.map +1 -0
  65. package/dist/media/MediaEngine.d.ts +137 -0
  66. package/dist/media/MediaEngine.d.ts.map +1 -0
  67. package/dist/media/MediaEngine.js +1224 -0
  68. package/dist/media/MediaEngine.js.map +1 -0
  69. package/dist/media/callStats.d.ts +16 -0
  70. package/dist/media/callStats.d.ts.map +1 -0
  71. package/dist/media/callStats.js +214 -0
  72. package/dist/media/callStats.js.map +1 -0
  73. package/dist/media/localVideoRecovery.d.ts +16 -0
  74. package/dist/media/localVideoRecovery.d.ts.map +1 -0
  75. package/dist/media/localVideoRecovery.js +14 -0
  76. package/dist/media/localVideoRecovery.js.map +1 -0
  77. package/dist/recoveryStorage.d.ts +33 -0
  78. package/dist/recoveryStorage.d.ts.map +1 -0
  79. package/dist/recoveryStorage.js +88 -0
  80. package/dist/recoveryStorage.js.map +1 -0
  81. package/dist/serverUrls.d.ts +8 -0
  82. package/dist/serverUrls.d.ts.map +1 -0
  83. package/dist/serverUrls.js +65 -0
  84. package/dist/serverUrls.js.map +1 -0
  85. package/dist/signaling/SignalingEngine.d.ts +126 -0
  86. package/dist/signaling/SignalingEngine.d.ts.map +1 -0
  87. package/dist/signaling/SignalingEngine.js +720 -0
  88. package/dist/signaling/SignalingEngine.js.map +1 -0
  89. package/dist/signaling/payloads.d.ts +76 -0
  90. package/dist/signaling/payloads.d.ts.map +1 -0
  91. package/dist/signaling/payloads.js +160 -0
  92. package/dist/signaling/payloads.js.map +1 -0
  93. package/dist/signaling/roomStatuses.d.ts +9 -0
  94. package/dist/signaling/roomStatuses.d.ts.map +1 -0
  95. package/dist/signaling/roomStatuses.js +71 -0
  96. package/dist/signaling/roomStatuses.js.map +1 -0
  97. package/dist/signaling/transportConfig.d.ts +3 -0
  98. package/dist/signaling/transportConfig.d.ts.map +1 -0
  99. package/dist/signaling/transportConfig.js +27 -0
  100. package/dist/signaling/transportConfig.js.map +1 -0
  101. package/dist/signaling/transports/index.d.ts +13 -0
  102. package/dist/signaling/transports/index.d.ts.map +1 -0
  103. package/dist/signaling/transports/index.js +11 -0
  104. package/dist/signaling/transports/index.js.map +1 -0
  105. package/dist/signaling/transports/sse.d.ts +26 -0
  106. package/dist/signaling/transports/sse.d.ts.map +1 -0
  107. package/dist/signaling/transports/sse.js +131 -0
  108. package/dist/signaling/transports/sse.js.map +1 -0
  109. package/dist/signaling/transports/types.d.ts +17 -0
  110. package/dist/signaling/transports/types.d.ts.map +1 -0
  111. package/dist/signaling/transports/types.js +2 -0
  112. package/dist/signaling/transports/types.js.map +1 -0
  113. package/dist/signaling/transports/ws.d.ts +21 -0
  114. package/dist/signaling/transports/ws.d.ts.map +1 -0
  115. package/dist/signaling/transports/ws.js +93 -0
  116. package/dist/signaling/transports/ws.js.map +1 -0
  117. package/dist/signaling/types.d.ts +53 -0
  118. package/dist/signaling/types.d.ts.map +1 -0
  119. package/dist/signaling/types.js +2 -0
  120. package/dist/signaling/types.js.map +1 -0
  121. package/dist/types.d.ts +279 -0
  122. package/dist/types.d.ts.map +1 -0
  123. package/dist/types.js +3 -0
  124. package/dist/types.js.map +1 -0
  125. package/package.json +43 -0
  126. package/src/ConsoleLogger.ts +14 -0
  127. package/src/RoomWatcher.ts +127 -0
  128. package/src/SerenadaCore.ts +163 -0
  129. package/src/SerenadaDiagnostics.ts +485 -0
  130. package/src/SerenadaServerProvider.ts +362 -0
  131. package/src/SerenadaSession.ts +1258 -0
  132. package/src/SignalingProvider.ts +207 -0
  133. package/src/api/roomApi.ts +16 -0
  134. package/src/cameraModes.ts +34 -0
  135. package/src/configValidation.ts +35 -0
  136. package/src/constants.ts +77 -0
  137. package/src/formatError.ts +5 -0
  138. package/src/iceServers.ts +20 -0
  139. package/src/index.ts +155 -0
  140. package/src/layout/computeLayout.ts +639 -0
  141. package/src/media/AudioLevelMonitor.ts +190 -0
  142. package/src/media/MediaEngine.ts +1183 -0
  143. package/src/media/callStats.ts +260 -0
  144. package/src/media/localVideoRecovery.ts +39 -0
  145. package/src/recoveryStorage.ts +101 -0
  146. package/src/serverUrls.ts +69 -0
  147. package/src/signaling/SignalingEngine.ts +762 -0
  148. package/src/signaling/payloads.ts +215 -0
  149. package/src/signaling/roomStatuses.ts +89 -0
  150. package/src/signaling/transportConfig.ts +30 -0
  151. package/src/signaling/transports/index.ts +26 -0
  152. package/src/signaling/transports/sse.ts +146 -0
  153. package/src/signaling/transports/types.ts +19 -0
  154. package/src/signaling/transports/ws.ts +108 -0
  155. package/src/signaling/types.ts +68 -0
  156. package/src/types.ts +299 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SerenadaSession.js","sourceRoot":"","sources":["../src/SerenadaSession.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,132 @@
1
+ import type { ParticipantConnectionStatus } from './signaling/types.js';
2
+ export interface ProviderCapabilities {
3
+ handlesReconnection?: boolean;
4
+ }
5
+ export interface ConnectionInfo {
6
+ transport?: string;
7
+ }
8
+ export interface JoinOptions {
9
+ reconnectPeerId?: string;
10
+ maxParticipants?: number;
11
+ displayName?: string;
12
+ /**
13
+ * Host-supplied stable identity. Distinct from `peerId`/cid (which is per-call
14
+ * and server-issued) — lets host applications correlate a participant to
15
+ * their own user identity (avatar lookup, telemetry).
16
+ */
17
+ appPeerId?: string;
18
+ }
19
+ export interface SignalingProviderParticipant {
20
+ peerId: string;
21
+ joinedAt?: number;
22
+ displayName?: string;
23
+ /** Host-supplied stable identity — see {@link JoinOptions.appPeerId}. */
24
+ appPeerId?: string;
25
+ audioEnabled?: boolean;
26
+ videoEnabled?: boolean;
27
+ connectionStatus?: ParticipantConnectionStatus;
28
+ }
29
+ export interface JoinedEvent {
30
+ peerId: string;
31
+ participants: SignalingProviderParticipant[];
32
+ hostPeerId?: string;
33
+ maxParticipants?: number;
34
+ }
35
+ export interface RoomStateEvent {
36
+ participants: SignalingProviderParticipant[];
37
+ hostPeerId?: string;
38
+ maxParticipants?: number;
39
+ }
40
+ export interface PeerEvent {
41
+ peerId: string;
42
+ joinedAt?: number;
43
+ displayName?: string;
44
+ /** Host-supplied stable identity — see {@link JoinOptions.appPeerId}. */
45
+ appPeerId?: string;
46
+ }
47
+ export interface PeerMessage {
48
+ from: string;
49
+ type: string;
50
+ payload: unknown;
51
+ }
52
+ export interface RoomEndedEvent {
53
+ by?: string;
54
+ reason: string;
55
+ }
56
+ export interface SignalingErrorEvent {
57
+ code: string;
58
+ message: string;
59
+ }
60
+ /**
61
+ * Server tells an active peer that a previously-suspended peer has reattached
62
+ * AND there was pending negotiation traffic to it during the suspension. The
63
+ * SDK should perform glare-safe fresh negotiation / ICE restart for the named
64
+ * CID. The wire payload field `with` is mapped to the explicit `withCid` here
65
+ * to avoid the JavaScript reserved-word association and to match the Android
66
+ * / iOS event shapes.
67
+ */
68
+ export interface NegotiationDirtyEvent {
69
+ /** The CID that needs fresh renegotiation. */
70
+ withCid: string;
71
+ }
72
+ /** Server tells the sender it could not deliver a relay because the target had no transport. */
73
+ export interface RelayFailedEvent {
74
+ /** Server-assigned reason code, e.g. `"target_suspended"`. */
75
+ reason: string;
76
+ /** Target CIDs the relay could not reach. */
77
+ targets: string[];
78
+ /** Original signaling type that failed, e.g. `"offer" | "answer" | "ice"`. */
79
+ of?: string;
80
+ }
81
+ export interface SignalingProviderEventMap {
82
+ connected: ConnectionInfo | undefined;
83
+ disconnected: string | undefined;
84
+ joined: JoinedEvent;
85
+ roomStateUpdated: RoomStateEvent;
86
+ peerJoined: PeerEvent;
87
+ peerLeft: PeerEvent;
88
+ message: PeerMessage;
89
+ roomEnded: RoomEndedEvent;
90
+ error: SignalingErrorEvent;
91
+ iceServersChanged: RTCIceServer[];
92
+ negotiationDirty: NegotiationDirtyEvent;
93
+ relayFailed: RelayFailedEvent;
94
+ }
95
+ export type SignalingProviderEventName = keyof SignalingProviderEventMap;
96
+ export interface SignalingProvider {
97
+ readonly version: number;
98
+ readonly capabilities?: ProviderCapabilities;
99
+ connect(): void;
100
+ disconnect(): void;
101
+ joinRoom(roomId: string, options?: JoinOptions): void;
102
+ leaveRoom(): void;
103
+ endRoom(): void;
104
+ sendToPeer(peerId: string, type: string, payload: unknown): void;
105
+ broadcast(type: string, payload: unknown): void;
106
+ getIceServers(): Promise<RTCIceServer[]>;
107
+ /**
108
+ * Optional hook: install a gate that returns `false` to skip a scheduled
109
+ * TURN-credential refresh. Providers without periodic refresh (e.g.,
110
+ * loopback/test) may omit this.
111
+ */
112
+ setTurnRefreshGate?(gate: (() => Promise<boolean>) | null): void;
113
+ on<K extends SignalingProviderEventName>(event: K, cb: (data: SignalingProviderEventMap[K]) => void): void;
114
+ off<K extends SignalingProviderEventName>(event: K, cb: (data: SignalingProviderEventMap[K]) => void): void;
115
+ }
116
+ export declare class SignalingProviderEmitter implements SignalingProvider {
117
+ readonly version = 1;
118
+ readonly capabilities?: ProviderCapabilities;
119
+ private readonly listeners;
120
+ connect(): void;
121
+ disconnect(): void;
122
+ joinRoom(_roomId: string, _options?: JoinOptions): void;
123
+ leaveRoom(): void;
124
+ endRoom(): void;
125
+ sendToPeer(_peerId: string, _type: string, _payload: unknown): void;
126
+ broadcast(_type: string, _payload: unknown): void;
127
+ getIceServers(): Promise<RTCIceServer[]>;
128
+ on<K extends SignalingProviderEventName>(event: K, cb: (data: SignalingProviderEventMap[K]) => void): void;
129
+ off<K extends SignalingProviderEventName>(event: K, cb: (data: SignalingProviderEventMap[K]) => void): void;
130
+ protected emit<K extends SignalingProviderEventName>(event: K, data: SignalingProviderEventMap[K]): void;
131
+ }
132
+ //# sourceMappingURL=SignalingProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignalingProvider.d.ts","sourceRoot":"","sources":["../src/SignalingProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAExE,MAAM,WAAW,oBAAoB;IACjC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,4BAA4B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,gBAAgB,CAAC,EAAE,2BAA2B,CAAC;CAClD;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,4BAA4B,EAAE,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC3B,YAAY,EAAE,4BAA4B,EAAE,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAqB;IAClC,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,gGAAgG;AAChG,MAAM,WAAW,gBAAgB;IAC7B,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8EAA8E;IAC9E,EAAE,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,yBAAyB;IACtC,SAAS,EAAE,cAAc,GAAG,SAAS,CAAC;IACtC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,MAAM,EAAE,WAAW,CAAC;IACpB,gBAAgB,EAAE,cAAc,CAAC;IACjC,UAAU,EAAE,SAAS,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,cAAc,CAAC;IAC1B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,iBAAiB,EAAE,YAAY,EAAE,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,WAAW,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,MAAM,0BAA0B,GAAG,MAAM,yBAAyB,CAAC;AAEzE,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IAC7C,OAAO,IAAI,IAAI,CAAC;IAChB,UAAU,IAAI,IAAI,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACtD,SAAS,IAAI,IAAI,CAAC;IAClB,OAAO,IAAI,IAAI,CAAC;IAChB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACjE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAChD,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACzC;;;;OAIG;IACH,kBAAkB,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;IACjE,EAAE,CAAC,CAAC,SAAS,0BAA0B,EACnC,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,KAAK,IAAI,GACjD,IAAI,CAAC;IACR,GAAG,CAAC,CAAC,SAAS,0BAA0B,EACpC,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,KAAK,IAAI,GACjD,IAAI,CAAC;CACX;AAED,qBAAa,wBAAyB,YAAW,iBAAiB;IAC9D,QAAQ,CAAC,OAAO,KAAK;IACrB,QAAQ,CAAC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuE;IAEjG,OAAO,IAAI,IAAI;IAIf,UAAU,IAAI,IAAI;IAIlB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI;IAIvD,SAAS,IAAI,IAAI;IAIjB,OAAO,IAAI,IAAI;IAIf,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAInE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAI3C,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAI9C,EAAE,CAAC,CAAC,SAAS,0BAA0B,EACnC,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,KAAK,IAAI,GACjD,IAAI;IASP,GAAG,CAAC,CAAC,SAAS,0BAA0B,EACpC,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,KAAK,IAAI,GACjD,IAAI;IAIP,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,0BAA0B,EAC/C,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,GACnC,IAAI;CASV"}
@@ -0,0 +1,50 @@
1
+ export class SignalingProviderEmitter {
2
+ version = 1;
3
+ capabilities;
4
+ listeners = new Map();
5
+ connect() {
6
+ throw new Error('Not implemented');
7
+ }
8
+ disconnect() {
9
+ throw new Error('Not implemented');
10
+ }
11
+ joinRoom(_roomId, _options) {
12
+ throw new Error('Not implemented');
13
+ }
14
+ leaveRoom() {
15
+ throw new Error('Not implemented');
16
+ }
17
+ endRoom() {
18
+ throw new Error('Not implemented');
19
+ }
20
+ sendToPeer(_peerId, _type, _payload) {
21
+ throw new Error('Not implemented');
22
+ }
23
+ broadcast(_type, _payload) {
24
+ throw new Error('Not implemented');
25
+ }
26
+ async getIceServers() {
27
+ throw new Error('Not implemented');
28
+ }
29
+ on(event, cb) {
30
+ let listeners = this.listeners.get(event);
31
+ if (!listeners) {
32
+ listeners = new Set();
33
+ this.listeners.set(event, listeners);
34
+ }
35
+ listeners.add(cb);
36
+ }
37
+ off(event, cb) {
38
+ this.listeners.get(event)?.delete(cb);
39
+ }
40
+ emit(event, data) {
41
+ const listeners = this.listeners.get(event);
42
+ if (!listeners) {
43
+ return;
44
+ }
45
+ for (const listener of listeners) {
46
+ listener(data);
47
+ }
48
+ }
49
+ }
50
+ //# sourceMappingURL=SignalingProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignalingProvider.js","sourceRoot":"","sources":["../src/SignalingProvider.ts"],"names":[],"mappings":"AA0IA,MAAM,OAAO,wBAAwB;IACxB,OAAO,GAAG,CAAC,CAAC;IACZ,YAAY,CAAwB;IAC5B,SAAS,GAAG,IAAI,GAAG,EAA4D,CAAC;IAEjG,OAAO;QACH,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,UAAU;QACN,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,CAAC,OAAe,EAAE,QAAsB;QAC5C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,SAAS;QACL,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,OAAO;QACH,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,UAAU,CAAC,OAAe,EAAE,KAAa,EAAE,QAAiB;QACxD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,SAAS,CAAC,KAAa,EAAE,QAAiB;QACtC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,EAAE,CACE,KAAQ,EACR,EAAgD;QAEhD,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACzC,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,EAA6B,CAAC,CAAC;IACjD,CAAC;IAED,GAAG,CACC,KAAQ,EACR,EAAgD;QAEhD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,EAA6B,CAAC,CAAC;IACrE,CAAC;IAES,IAAI,CACV,KAAQ,EACR,IAAkC;QAElC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO;QACX,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,2 @@
1
+ export declare const createRoomId: (serverHost: string) => Promise<string>;
2
+ //# sourceMappingURL=roomApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roomApi.d.ts","sourceRoot":"","sources":["../../src/api/roomApi.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,MAAM,CAarE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { buildApiUrl } from '../serverUrls.js';
2
+ export const createRoomId = async (serverHost) => {
3
+ const apiUrl = buildApiUrl(serverHost, '/api/room-id');
4
+ const res = await fetch(apiUrl, { method: 'POST' });
5
+ if (!res.ok) {
6
+ throw new Error(`Room ID request failed: ${res.status}`);
7
+ }
8
+ const data = await res.json();
9
+ if (!data?.roomId) {
10
+ throw new Error('Room ID missing from response');
11
+ }
12
+ return data.roomId;
13
+ };
14
+ //# sourceMappingURL=roomApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roomApi.js","sourceRoot":"","sources":["../../src/api/roomApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,UAAkB,EAAmB,EAAE;IACtE,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAEvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACpD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC;AACvB,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { type ConfigurableCameraMode } from './types.js';
2
+ /**
3
+ * Resolve the configured {@link SerenadaConfig.cameraModes} list into the set
4
+ * of modes actually available on this platform, in the configured order.
5
+ * Web never supports `composite`, so it is silently dropped. `screenShare`
6
+ * is likewise rejected (screen sharing is controlled separately). Duplicates
7
+ * are dropped, preserving the first occurrence. Returning an empty array is
8
+ * valid and signals that video is disabled entirely.
9
+ */
10
+ export declare function resolveCameraModes(configured: readonly ConfigurableCameraMode[] | undefined): ConfigurableCameraMode[];
11
+ /** Next mode in the cycle, or `null` if cycling is not possible. */
12
+ export declare function nextCameraMode(modes: readonly ConfigurableCameraMode[], current: ConfigurableCameraMode): ConfigurableCameraMode | null;
13
+ //# sourceMappingURL=cameraModes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cameraModes.d.ts","sourceRoot":"","sources":["../src/cameraModes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,sBAAsB,EAAuB,MAAM,YAAY,CAAC;AAEpG;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,SAAS,sBAAsB,EAAE,GAAG,SAAS,GAAG,sBAAsB,EAAE,CAYtH;AAED,oEAAoE;AACpE,wBAAgB,cAAc,CAC1B,KAAK,EAAE,SAAS,sBAAsB,EAAE,EACxC,OAAO,EAAE,sBAAsB,GAChC,sBAAsB,GAAG,IAAI,CAK/B"}
@@ -0,0 +1,35 @@
1
+ import { DEFAULT_CAMERA_MODES } from './types.js';
2
+ /**
3
+ * Resolve the configured {@link SerenadaConfig.cameraModes} list into the set
4
+ * of modes actually available on this platform, in the configured order.
5
+ * Web never supports `composite`, so it is silently dropped. `screenShare`
6
+ * is likewise rejected (screen sharing is controlled separately). Duplicates
7
+ * are dropped, preserving the first occurrence. Returning an empty array is
8
+ * valid and signals that video is disabled entirely.
9
+ */
10
+ export function resolveCameraModes(configured) {
11
+ const source = configured ?? DEFAULT_CAMERA_MODES;
12
+ const seen = new Set();
13
+ const result = [];
14
+ for (const mode of source) {
15
+ if (mode === 'composite')
16
+ continue;
17
+ if (mode !== 'selfie' && mode !== 'world')
18
+ continue;
19
+ if (seen.has(mode))
20
+ continue;
21
+ seen.add(mode);
22
+ result.push(mode);
23
+ }
24
+ return result;
25
+ }
26
+ /** Next mode in the cycle, or `null` if cycling is not possible. */
27
+ export function nextCameraMode(modes, current) {
28
+ if (modes.length <= 1)
29
+ return null;
30
+ const index = modes.indexOf(current);
31
+ if (index === -1)
32
+ return modes[0];
33
+ return modes[(index + 1) % modes.length];
34
+ }
35
+ //# sourceMappingURL=cameraModes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cameraModes.js","sourceRoot":"","sources":["../src/cameraModes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAoD,MAAM,YAAY,CAAC;AAEpG;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAyD;IACxF,MAAM,MAAM,GAAG,UAAU,IAAI,oBAAoB,CAAC;IAClD,MAAM,IAAI,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC/C,MAAM,MAAM,GAA6B,EAAE,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QACxB,IAAI,IAAI,KAAK,WAAW;YAAE,SAAS;QACnC,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO;YAAE,SAAS;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,cAAc,CAC1B,KAAwC,EACxC,OAA+B;IAE/B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { SignalingProvider } from './SignalingProvider.js';
2
+ import type { SerenadaConfig } from './types.js';
3
+ export declare const SUPPORTED_SIGNALING_PROVIDER_VERSION = 1;
4
+ export interface ResolvedSerenadaConfig {
5
+ serverHost: string | null;
6
+ signalingProvider: SignalingProvider | null;
7
+ }
8
+ export declare function resolveSerenadaConfig(config: SerenadaConfig): ResolvedSerenadaConfig;
9
+ export declare function requireServerHost(config: SerenadaConfig): string;
10
+ //# sourceMappingURL=configValidation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configValidation.d.ts","sourceRoot":"","sources":["../src/configValidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,oCAAoC,IAAI,CAAC;AAEtD,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC/C;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,sBAAsB,CAgBpF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAMhE"}
@@ -0,0 +1,24 @@
1
+ export const SUPPORTED_SIGNALING_PROVIDER_VERSION = 1;
2
+ export function resolveSerenadaConfig(config) {
3
+ const trimmedHost = typeof config.serverHost === 'string' ? config.serverHost.trim() : '';
4
+ const serverHost = trimmedHost.length > 0 ? trimmedHost : null;
5
+ const signalingProvider = config.signalingProvider ?? null;
6
+ if (serverHost && signalingProvider) {
7
+ throw new Error('Provide exactly one of serverHost or signalingProvider');
8
+ }
9
+ if (!serverHost && !signalingProvider) {
10
+ throw new Error('Provide exactly one of serverHost or signalingProvider');
11
+ }
12
+ if (signalingProvider && signalingProvider.version !== SUPPORTED_SIGNALING_PROVIDER_VERSION) {
13
+ throw new Error(`Unsupported signalingProvider version: ${signalingProvider.version}`);
14
+ }
15
+ return { serverHost, signalingProvider };
16
+ }
17
+ export function requireServerHost(config) {
18
+ const { serverHost } = resolveSerenadaConfig(config);
19
+ if (!serverHost) {
20
+ throw new Error('requires serverHost');
21
+ }
22
+ return serverHost;
23
+ }
24
+ //# sourceMappingURL=configValidation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configValidation.js","sourceRoot":"","sources":["../src/configValidation.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC;AAOtD,MAAM,UAAU,qBAAqB,CAAC,MAAsB;IACxD,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/D,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,IAAI,CAAC;IAE3D,IAAI,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,CAAC,UAAU,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,OAAO,KAAK,oCAAoC,EAAE,CAAC;QAC1F,MAAM,IAAI,KAAK,CAAC,0CAA0C,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAsB;IACpD,MAAM,EAAE,UAAU,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,UAAU,CAAC;AACtB,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Canonical WebRTC resilience constants shared across all Serenada clients.
3
+ * @internal
4
+ * @module
5
+ */
6
+ export declare const RECONNECT_BACKOFF_BASE_MS = 500;
7
+ export declare const RECONNECT_BACKOFF_CAP_MS = 5000;
8
+ export declare const CONNECT_TIMEOUT_MS = 2000;
9
+ export declare const PING_INTERVAL_MS = 12000;
10
+ export declare const PONG_MISS_THRESHOLD = 2;
11
+ export declare const WS_FALLBACK_CONSECUTIVE_FAILURES = 3;
12
+ export declare const JOIN_CONNECT_KICKSTART_MS = 1200;
13
+ export declare const JOIN_RECOVERY_MS = 4000;
14
+ export declare const JOIN_HARD_TIMEOUT_MS = 15000;
15
+ export declare const OFFER_TIMEOUT_MS = 8000;
16
+ export declare const ICE_RESTART_COOLDOWN_MS = 10000;
17
+ export declare const NON_HOST_FALLBACK_DELAY_MS = 4000;
18
+ export declare const NON_HOST_FALLBACK_MAX_ATTEMPTS = 2;
19
+ export declare const ICE_CANDIDATE_BUFFER_MAX = 50;
20
+ export declare const TURN_FETCH_TIMEOUT_MS = 2000;
21
+ export declare const TURN_REFRESH_TRIGGER_RATIO = 0.8;
22
+ export declare const ICE_FETCH_RETRY_DELAYS_MS: number[];
23
+ export declare const ENDING_SCREEN_MS = 3000;
24
+ export declare const SNAPSHOT_PREPARE_TIMEOUT_MS = 2000;
25
+ export declare const FOREGROUND_FORCE_PING_TIMEOUT_MS = 2000;
26
+ export declare const EPOCH_RESYNC_TIMEOUT_MS = 5000;
27
+ export declare const PEER_SUSPENDED_UI_TIMEOUT_MS = 30000;
28
+ export declare const SUSPEND_HARD_EVICTION_TIMEOUT_MS = 600000;
29
+ export declare const MEDIA_LIVENESS_INTERVAL_MS = 10000;
30
+ export declare const CONNECTION_RETRYING_DELAY_MS = 10000;
31
+ export declare const LOCAL_VIDEO_RESUME_GAP_MS = 15000;
32
+ export declare const LOCAL_VIDEO_HEARTBEAT_INTERVAL_MS = 5000;
33
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAC7C,eAAO,MAAM,kBAAkB,OAAO,CAAC;AACvC,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AACtC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAGlD,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAG1C,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAC7C,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAC/C,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAG3C,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAC1C,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,eAAO,MAAM,yBAAyB,UAAwB,CAAC;AAG/D,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAGrC,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAMhD,eAAO,MAAM,gCAAgC,OAAO,CAAC;AAMrD,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAQ5C,eAAO,MAAM,4BAA4B,QAAQ,CAAC;AAMlD,eAAO,MAAM,gCAAgC,SAAS,CAAC;AAQvD,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAGhD,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAGnD,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAChD,eAAO,MAAM,iCAAiC,OAAQ,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Canonical WebRTC resilience constants shared across all Serenada clients.
3
+ * @internal
4
+ * @module
5
+ */
6
+ // Signaling
7
+ export const RECONNECT_BACKOFF_BASE_MS = 500;
8
+ export const RECONNECT_BACKOFF_CAP_MS = 5000;
9
+ export const CONNECT_TIMEOUT_MS = 2000;
10
+ export const PING_INTERVAL_MS = 12000;
11
+ export const PONG_MISS_THRESHOLD = 2;
12
+ export const WS_FALLBACK_CONSECUTIVE_FAILURES = 3;
13
+ // Join
14
+ export const JOIN_CONNECT_KICKSTART_MS = 1200;
15
+ export const JOIN_RECOVERY_MS = 4000;
16
+ export const JOIN_HARD_TIMEOUT_MS = 15000;
17
+ // Peer Connection
18
+ export const OFFER_TIMEOUT_MS = 8000;
19
+ export const ICE_RESTART_COOLDOWN_MS = 10000;
20
+ export const NON_HOST_FALLBACK_DELAY_MS = 4000;
21
+ export const NON_HOST_FALLBACK_MAX_ATTEMPTS = 2;
22
+ export const ICE_CANDIDATE_BUFFER_MAX = 50;
23
+ // TURN
24
+ export const TURN_FETCH_TIMEOUT_MS = 2000;
25
+ export const TURN_REFRESH_TRIGGER_RATIO = 0.8;
26
+ export const ICE_FETCH_RETRY_DELAYS_MS = [0, 1000, 2000, 4000];
27
+ // Session
28
+ export const ENDING_SCREEN_MS = 3000;
29
+ // Snapshot
30
+ export const SNAPSHOT_PREPARE_TIMEOUT_MS = 2000;
31
+ // Foreground / Doze recovery
32
+ // After the app returns to foreground from background, the SDK issues a
33
+ // synthetic ping and waits this long for a pong before force-closing the
34
+ // transport and triggering the normal reconnect path.
35
+ export const FOREGROUND_FORCE_PING_TIMEOUT_MS = 2000;
36
+ // Post-reconnect snapshot resync
37
+ // After signaling reconnects, the SDK waits this long for an authoritative
38
+ // `room_state` snapshot before falling back to firing ICE restart against the
39
+ // last-known peer map.
40
+ export const EPOCH_RESYNC_TIMEOUT_MS = 5000;
41
+ // Suspended-peer presentation
42
+ // After a remote peer transitions to `signalingStatus="suspended"`, the SDK
43
+ // starts a per-CID UI presentation timer. When this timer expires the
44
+ // participant is flagged `presumedLost=true` so call UIs can move them out
45
+ // of the active grid. The peer connection itself stays open so media can
46
+ // resume immediately if the peer reattaches.
47
+ export const PEER_SUSPENDED_UI_TIMEOUT_MS = 30000;
48
+ // Server hard-eviction window
49
+ // Mirrors `suspendHardEvictionTimeout` on the Go server. Used SDK-side to
50
+ // compute `estimatedHardEvictionAtMs` for the `signalingState.suspended`
51
+ // surface so apps can render a countdown.
52
+ export const SUSPEND_HARD_EVICTION_TIMEOUT_MS = 600000;
53
+ // Media-liveness emission cadence
54
+ // Active SDKs broadcast `media_liveness{cids:[..]}` every interval for
55
+ // remote CIDs whose inbound media is currently flowing. The server uses
56
+ // this hint to defer hard-eviction of suspended peers whose media is still
57
+ // being received. 10s leaves headroom under the server's 30s freshness
58
+ // window (`mediaLivenessFreshnessWindow`) for missed emissions.
59
+ export const MEDIA_LIVENESS_INTERVAL_MS = 10000;
60
+ // Connection Status
61
+ export const CONNECTION_RETRYING_DELAY_MS = 10_000;
62
+ // Local Video Recovery
63
+ export const LOCAL_VIDEO_RESUME_GAP_MS = 15_000;
64
+ export const LOCAL_VIDEO_HEARTBEAT_INTERVAL_MS = 5_000;
65
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY;AACZ,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AACvC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AACtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AACrC,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAElD,OAAO;AACP,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC;AAE1C,kBAAkB;AAClB,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAC7C,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAC/C,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,OAAO;AACP,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAC9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE/D,UAAU;AACV,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAErC,WAAW;AACX,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD,6BAA6B;AAC7B,wEAAwE;AACxE,yEAAyE;AACzE,sDAAsD;AACtD,MAAM,CAAC,MAAM,gCAAgC,GAAG,IAAI,CAAC;AAErD,iCAAiC;AACjC,2EAA2E;AAC3E,8EAA8E;AAC9E,uBAAuB;AACvB,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C,8BAA8B;AAC9B,4EAA4E;AAC5E,sEAAsE;AACtE,2EAA2E;AAC3E,yEAAyE;AACzE,6CAA6C;AAC7C,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAElD,8BAA8B;AAC9B,0EAA0E;AAC1E,yEAAyE;AACzE,0CAA0C;AAC1C,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC;AAEvD,kCAAkC;AAClC,uEAAuE;AACvE,wEAAwE;AACxE,2EAA2E;AAC3E,uEAAuE;AACvE,gEAAgE;AAChE,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD,oBAAoB;AACpB,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAEnD,uBAAuB;AACvB,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAChD,MAAM,CAAC,MAAM,iCAAiC,GAAG,KAAK,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Safely extract a human-readable message from an unknown catch-block value. */
2
+ export declare function formatError(err: unknown): string;
3
+ //# sourceMappingURL=formatError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatError.d.ts","sourceRoot":"","sources":["../src/formatError.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAGhD"}
@@ -0,0 +1,7 @@
1
+ /** Safely extract a human-readable message from an unknown catch-block value. */
2
+ export function formatError(err) {
3
+ if (err instanceof Error)
4
+ return err.message;
5
+ return String(err);
6
+ }
7
+ //# sourceMappingURL=formatError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatError.js","sourceRoot":"","sources":["../src/formatError.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,UAAU,WAAW,CAAC,GAAY;IACpC,IAAI,GAAG,YAAY,KAAK;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IAC7C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function normalizeIceServers(iceServers: RTCIceServer[], turnsOnly: boolean): RTCIceServer[];
2
+ //# sourceMappingURL=iceServers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iceServers.d.ts","sourceRoot":"","sources":["../src/iceServers.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,GAAG,YAAY,EAAE,CAmBlG"}
@@ -0,0 +1,21 @@
1
+ export function normalizeIceServers(iceServers, turnsOnly) {
2
+ const normalized = [];
3
+ for (const iceServer of iceServers) {
4
+ const urls = Array.isArray(iceServer.urls) ? iceServer.urls : [iceServer.urls];
5
+ const filteredUrls = urls.filter((url) => {
6
+ if (typeof url !== 'string' || url.length === 0) {
7
+ return false;
8
+ }
9
+ return !turnsOnly || url.toLowerCase().startsWith('turns:');
10
+ });
11
+ if (filteredUrls.length === 0) {
12
+ continue;
13
+ }
14
+ normalized.push({
15
+ ...iceServer,
16
+ urls: filteredUrls,
17
+ });
18
+ }
19
+ return normalized;
20
+ }
21
+ //# sourceMappingURL=iceServers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iceServers.js","sourceRoot":"","sources":["../src/iceServers.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,mBAAmB,CAAC,UAA0B,EAAE,SAAkB;IAC9E,MAAM,UAAU,GAAmB,EAAE,CAAC;IACtC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC/E,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE;YACpD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9C,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,SAAS;QACb,CAAC;QACD,UAAU,CAAC,IAAI,CAAC;YACZ,GAAG,SAAS;YACZ,IAAI,EAAE,YAAY;SACrB,CAAC,CAAC;IACP,CAAC;IACD,OAAO,UAAU,CAAC;AACtB,CAAC"}