@joewinke/jatui 0.2.25 → 0.2.26
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.
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* haven't installed the peer. Media preview is stopped on unmount and before
|
|
13
13
|
* join (the room re-acquires tracks).
|
|
14
14
|
*/
|
|
15
|
+
import { untrack } from 'svelte';
|
|
15
16
|
import type { Snippet } from 'svelte';
|
|
16
17
|
import type { PreJoinResult } from './types.js';
|
|
17
18
|
|
|
@@ -175,7 +176,12 @@
|
|
|
175
176
|
void videoDeviceId;
|
|
176
177
|
void audioDeviceId;
|
|
177
178
|
void videoEl;
|
|
178
|
-
acquire()
|
|
179
|
+
// untrack is load-bearing: acquire() synchronously calls stopStream(),
|
|
180
|
+
// which READS `stream` — without untrack the effect silently depends on
|
|
181
|
+
// `stream`, so the `stream = next` assignment re-runs the effect, whose
|
|
182
|
+
// cleanup stops the just-acquired stream and re-acquires, forever. The
|
|
183
|
+
// observable symptom was a preview that never survived acquisition.
|
|
184
|
+
untrack(() => acquire());
|
|
179
185
|
return () => stopStream();
|
|
180
186
|
});
|
|
181
187
|
|
|
@@ -1,16 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PreJoinLobby — the device check before joining.
|
|
3
|
-
*
|
|
4
|
-
* Camera/mic self-preview, display-name confirm, per-device pickers, and an
|
|
5
|
-
* optional consent gate (checkbox slot; recording/telehealth contexts). On
|
|
6
|
-
* "Join" it emits a {@link PreJoinResult} the route uses to exchange the join
|
|
7
|
-
* token for a LiveKit JWT and connect.
|
|
8
|
-
*
|
|
9
|
-
* Uses only browser-native `getUserMedia`/`enumerateDevices` — NO
|
|
10
|
-
* livekit-client dependency, so the lobby renders in demos and in apps that
|
|
11
|
-
* haven't installed the peer. Media preview is stopped on unmount and before
|
|
12
|
-
* join (the room re-acquires tracks).
|
|
13
|
-
*/
|
|
14
1
|
import type { Snippet } from 'svelte';
|
|
15
2
|
import type { PreJoinResult } from './types.js';
|
|
16
3
|
interface Props {
|