import layoutManager from '../../components/layoutManager'; import browser from '../../scripts/browser'; import 'webcomponents.js'; import './emby-radio.css'; /* eslint-disable indent */ const EmbyRadioPrototype = Object.create(HTMLInputElement.prototype); function onKeyDown(e) { // Don't submit form on enter // Real (non-emulator) Tizen does nothing on Space if (e.keyCode === 13 || (e.keyCode === 32 && browser.tizen)) { e.preventDefault(); if (!this.checked) { this.checked = true; this.dispatchEvent(new CustomEvent('change', { bubbles: true })); } return false; } } EmbyRadioPrototype.attachedCallback = function () { const showFocus = !layoutManager.mobile; if (this.getAttribute('data-radio') === 'true') { return; } this.setAttribute('data-radio', 'true'); this.classList.add('mdl-radio__button'); const labelElement = this.parentNode; labelElement.classList.add('mdl-radio'); labelElement.classList.add('mdl-js-radio'); labelElement.classList.add('mdl-js-ripple-effect'); if (showFocus) { labelElement.classList.add('show-focus'); } const labelTextElement = labelElement.querySelector('span'); labelTextElement.classList.add('radioButtonLabel'); labelTextElement.classList.add('mdl-radio__label'); let html = ''; html += '