ModeratorElection/frontend/generated/jar-resources/selectConnector.js
2024-06-06 17:45:46 +02:00

36 lines
1 KiB
JavaScript

(function () {
const tryCatchWrapper = function (callback) {
return window.Vaadin.Flow.tryCatchWrapper(callback, 'Vaadin Select');
};
window.Vaadin.Flow.selectConnector = {
initLazy: (select) =>
tryCatchWrapper(function (select) {
const _findListBoxElement = tryCatchWrapper(function () {
for (let i = 0; i < select.childElementCount; i++) {
const child = select.children[i];
if ('VAADIN-SELECT-LIST-BOX' === child.tagName.toUpperCase()) {
return child;
}
}
});
// do not init this connector twice for the given select
if (select.$connector) {
return;
}
select.$connector = {};
select.renderer = tryCatchWrapper(function (root) {
const listBox = _findListBoxElement();
if (listBox) {
if (root.firstChild) {
root.removeChild(root.firstChild);
}
root.appendChild(listBox);
}
});
})(select)
};
})();