Fix SSE stream discovery and add ESLint for WebUI

JavaScript fixes:
- Fix Invalid URL error in stream-discovery.js by adding window.location.origin as base URL
- Fix SSE race condition: ensure all stream_found events sent before complete event
- Comment unused eventType variable in stream-discovery.js
- Comment unused FrigateGenerator import in config-panel.js
- Fix quote style (double to single quotes)

Go fixes:
- Add sync.WaitGroup for result collector to prevent premature SSE closure
- Add logging for stream_found events
- Fix ERR_INCOMPLETE_CHUNKED_ENCODING by waiting for all streams to be sent

ESLint setup:
- Add ESLint v8.57.1 with .eslintrc.cjs config for ES2022 modules
- Add npm scripts for lint and lint:fix
- Update .gitignore for node_modules and package-lock.json

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
eduard256
2025-11-12 11:45:46 +03:00
parent 86a8fb36d5
commit d12d732671
7 changed files with 61 additions and 5 deletions
+3 -2
View File
@@ -12,7 +12,7 @@ export class StreamDiscoveryAPI {
discover(request, callbacks) {
this.close();
const url = new URL(`${this.baseURL}/api/v1/streams/discover`);
const url = new URL(`${this.baseURL}/api/v1/streams/discover`, window.location.origin);
fetch(url, {
method: 'POST',
@@ -39,7 +39,8 @@ export class StreamDiscoveryAPI {
for (const line of lines) {
if (line.startsWith('event:')) {
const eventType = line.substring(6).trim();
// Parse event type (not currently used, but available for future features)
// const eventType = line.substring(6).trim();
continue;
}