high voltage anode

This commit is contained in:
legop3
2025-11-29 22:20:37 -05:00
parent e6e6327165
commit 02b72cbce7
3 changed files with 22 additions and 7 deletions
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -11,7 +11,7 @@
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" /> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="apple-mobile-web-app-title" content="Multi Roomba Rover" /> <meta name="apple-mobile-web-app-title" content="Multi Roomba Rover" />
<title>Multi Roomba Rover</title> <title>Multi Roomba Rover</title>
<script type="module" crossorigin src="/assets/index-DcIs3Dc0.js"></script> <script type="module" crossorigin src="/assets/index-C46PGsPy.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-BxUpjkzh.css"> <link rel="stylesheet" crossorigin href="/assets/index-BxUpjkzh.css">
</head> </head>
<body> <body>
+16 -1
View File
@@ -13,6 +13,7 @@ function normalizeEntry(entry) {
if (typeof entry === 'object') { if (typeof entry === 'object') {
if (entry.type && entry.id) { if (entry.type && entry.id) {
const id = String(entry.id); const id = String(entry.id);
const audioId = entry.audioId ? String(entry.audioId) : null;
let key = entry.key; let key = entry.key;
if (!key) { if (!key) {
key = entry.type === 'room' ? `room:${id}` : id; key = entry.type === 'room' ? `room:${id}` : id;
@@ -21,6 +22,7 @@ function normalizeEntry(entry) {
type: entry.type, type: entry.type,
id, id,
key, key,
audioId,
}; };
} }
if (entry.roverId) { if (entry.roverId) {
@@ -109,7 +111,17 @@ export function useVideoRequests(sourceList = []) {
return; return;
} }
clearRetry(entry.key); clearRetry(entry.key);
setSources((prev) => ({ ...prev, [entry.key]: resp })); setSources((prev) => {
const next = { ...prev, [entry.key]: resp };
if (entry.audioId && resp.url && resp.token) {
const audioUrl = resp.url.replace(
`/${encodeURIComponent(entry.id)}/whep`,
`/${encodeURIComponent(entry.audioId)}/whep`,
);
next[entry.audioId] = { url: audioUrl, token: resp.token };
}
return next;
});
// eslint-disable-next-line no-console // eslint-disable-next-line no-console
console.info('video:request ok', { entry, url: resp.url }); console.info('video:request ok', { entry, url: resp.url });
}); });
@@ -134,6 +146,9 @@ export function useVideoRequests(sourceList = []) {
if (sources[entry.key]) { if (sources[entry.key]) {
next[entry.key] = sources[entry.key]; next[entry.key] = sources[entry.key];
} }
if (entry.audioId && sources[entry.audioId]) {
next[entry.audioId] = sources[entry.audioId];
}
}); });
return next; return next;
}, [normalizedKey, sources, normalizedEntries]); }, [normalizedKey, sources, normalizedEntries]);