import { searchItems, imageUrl, session } from '../embyApi.js';
import { navigate } from '../router.js';
export function renderBrowse(root) {
root.innerHTML = `
Watch Party
`;
root.querySelector('#logout').addEventListener('click', () => {
session.clear();
navigate('/login');
});
const input = root.querySelector('#search');
const results = root.querySelector('#results');
let debounceTimer;
input.addEventListener('input', () => {
clearTimeout(debounceTimer);
debounceTimer = setTimeout(runSearch, 300);
});
async function runSearch() {
const query = input.value;
if (!query || query.trim().length < 2) {
results.innerHTML = '';
return;
}
let items;
try {
items = await searchItems(query);
} catch (err) {
results.innerHTML = 'Recherche impossible - le serveur Emby est-il joignable ?
';
return;
}
if (!items.length) {
results.innerHTML = 'Aucun résultat.
';
return;
}
results.innerHTML = items.map((item) => `
${escapeHtml(item.Name)}${item.ProductionYear ? ' (' + item.ProductionYear + ')' : ''}
`).join('');
}
}
function escapeHtml(str) {
const div = document.createElement('div');
div.textContent = str;
return div.innerHTML;
}