feat(live): paginate catalog and search server-side (#49)

Load Live channels from a filtered SQLite cursor API, keep navigation and guide consumers working across pages, and retain the QA reproduction coverage.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-10-22 22:43:29 +02:00
parent 8239e6043b
commit e2249154a5
13 changed files with 1280 additions and 387 deletions

View File

@ -73,6 +73,8 @@ function initSchema() {
);
CREATE INDEX IF NOT EXISTS idx_items_source_type ON playlist_items(source_id, type);
CREATE INDEX IF NOT EXISTS idx_items_category ON playlist_items(source_id, category_id);
CREATE INDEX IF NOT EXISTS idx_live_catalog_order
ON playlist_items(name COLLATE NOCASE, source_id, id) WHERE type = 'live';
`);
// EPG Programs
@ -152,6 +154,7 @@ function initSchema() {
// Column already exists, ignore
}
require('../services/liveCatalog').ensureSearch(db);
console.log('[SQLite] Schema initialized');
}