1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Fix indentation of searchfields

This commit is contained in:
Bill Thornton 2021-05-28 15:06:05 -04:00
parent 903b656f7f
commit b9dacecf22

View file

@ -9,76 +9,74 @@ import 'material-design-icons-iconfont';
import './searchfields.scss'; import './searchfields.scss';
import template from './searchfields.template.html'; import template from './searchfields.template.html';
/* eslint-disable indent */ function onSearchTimeout() {
const instance = this;
let value = instance.nextSearchValue;
function onSearchTimeout() { value = (value || '').trim();
const instance = this; Events.trigger(instance, 'search', [value]);
let value = instance.nextSearchValue; }
value = (value || '').trim(); function triggerSearch(instance, value) {
Events.trigger(instance, 'search', [value]); if (instance.searchTimeout) {
clearTimeout(instance.searchTimeout);
} }
function triggerSearch(instance, value) { instance.nextSearchValue = value;
if (instance.searchTimeout) { instance.searchTimeout = setTimeout(onSearchTimeout.bind(instance), 400);
clearTimeout(instance.searchTimeout); }
}
instance.nextSearchValue = value; function onAlphaValueClicked(e) {
instance.searchTimeout = setTimeout(onSearchTimeout.bind(instance), 400); const value = e.detail.value;
const searchFieldsInstance = this;
const txtSearch = searchFieldsInstance.options.element.querySelector('.searchfields-txtSearch');
if (value === 'backspace') {
const val = txtSearch.value;
txtSearch.value = val.length ? val.substring(0, val.length - 1) : '';
} else {
txtSearch.value += value;
} }
function onAlphaValueClicked(e) { txtSearch.dispatchEvent(new CustomEvent('input', {
const value = e.detail.value; bubbles: true
const searchFieldsInstance = this; }));
}
const txtSearch = searchFieldsInstance.options.element.querySelector('.searchfields-txtSearch'); function initAlphaPicker(alphaPickerElement, instance) {
instance.alphaPicker = new AlphaPicker({
element: alphaPickerElement,
mode: 'keyboard'
});
if (value === 'backspace') { alphaPickerElement.addEventListener('alphavalueclicked', onAlphaValueClicked.bind(instance));
const val = txtSearch.value; }
txtSearch.value = val.length ? val.substring(0, val.length - 1) : '';
} else {
txtSearch.value += value;
}
txtSearch.dispatchEvent(new CustomEvent('input', { function onSearchInput(e) {
bubbles: true const value = e.target.value;
})); const searchFieldsInstance = this;
triggerSearch(searchFieldsInstance, value);
}
function embed(elem, instance) {
elem.innerHTML = globalize.translateHtml(template, 'core');
elem.classList.add('searchFields');
const txtSearch = elem.querySelector('.searchfields-txtSearch');
if (layoutManager.tv && !browser.tv) {
const alphaPickerElement = elem.querySelector('.alphaPicker');
elem.querySelector('.alphaPicker').classList.remove('hide');
initAlphaPicker(alphaPickerElement, instance);
} }
function initAlphaPicker(alphaPickerElement, instance) { txtSearch.addEventListener('input', onSearchInput.bind(instance));
instance.alphaPicker = new AlphaPicker({
element: alphaPickerElement,
mode: 'keyboard'
});
alphaPickerElement.addEventListener('alphavalueclicked', onAlphaValueClicked.bind(instance)); instance.focus();
} }
function onSearchInput(e) {
const value = e.target.value;
const searchFieldsInstance = this;
triggerSearch(searchFieldsInstance, value);
}
function embed(elem, instance) {
elem.innerHTML = globalize.translateHtml(template, 'core');
elem.classList.add('searchFields');
const txtSearch = elem.querySelector('.searchfields-txtSearch');
if (layoutManager.tv && !browser.tv) {
const alphaPickerElement = elem.querySelector('.alphaPicker');
elem.querySelector('.alphaPicker').classList.remove('hide');
initAlphaPicker(alphaPickerElement, instance);
}
txtSearch.addEventListener('input', onSearchInput.bind(instance));
instance.focus();
}
class SearchFields { class SearchFields {
constructor(options) { constructor(options) {
@ -111,5 +109,3 @@ class SearchFields {
} }
export default SearchFields; export default SearchFields;
/* eslint-enable indent */