Fixed
- Frontend Polyfill & Custom Element Registry Intercept Hardening (Fixes #47, PR #49):
- Bound
origGet = registry.get.bind(registry)from the same registry reference asorigDefineinjellyha-seek-polyfill.ts, preventing Home Assistant's scoped custom element registry polyfill from overridingget()with an un-upgraded internal registry. - Resolved
Uncaught TypeError: Illegal constructorand endless splash screen freeze on older tablets, browsers, and cached reload sessions (frontend_es5/ LineageOS / Android 7 WebView). - Added strict name guarding (
name !== 'ha-bar-media-player') to immediately pass through non-bar elements, insulating<home-assistant>and all third-party custom cards from polyfill interception. - Scoped the duplicate element registration guard in
safe-custom-elements.tsstrictly toname.startsWith('jellyha-')elements.
- Bound
- Large Library API Request Timeout & Configurable Budget (Fixes #48):
- Raised default
API_TIMEOUTfrom 10 seconds to 30 seconds across all Jellyfin HTTP calls (custom_components/jellyha/const.py,api.py), resolving setup failures and infinite retry loops (Config entry not ready yet; Retrying in ...) on large media servers (e.g. 100k+ items). - Added configurable
api_timeoutoption in Integration Options Flow (range: 10s–120s, default: 30s) so users on very slow hardware, NAS systems with spinning disks, or remote VPN links can customize the timeout budget. - Enabled per-request custom timeout override in
JellyfinApiClient._request().
- Raised default