UNPKG

@kubit-ui-web/react-components

Version:

Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience

38 lines 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.syntheticSelect = void 0; const cloneEvent_1 = require("../helpers/cloneEvent"); const createOption_1 = require("./helper/createOption"); const firstSelectOption = { label: '', value: '', }; const syntheticSelect = (options, selectedText, name) => { let selectEvent; const selectElement = document.createElement('select'); if (name) { selectElement.name = name; } const firstOptionElement = (0, createOption_1.createOption)(firstSelectOption); selectElement.appendChild(firstOptionElement); options.forEach(option => { const currentOption = option.label === selectedText ? { ...option, selected: true } : option; const optionElement = (0, createOption_1.createOption)(currentOption); selectElement.appendChild(optionElement); }); selectElement.addEventListener('change', event => { selectEvent = (0, cloneEvent_1.cloneEvent)(event); }); const getRef = () => { return selectElement; }; const clickOption = (value) => { selectElement.value = value; const changeEvent = new Event('change'); selectElement.dispatchEvent(changeEvent); return selectEvent; }; return { getRef, clickOption }; }; exports.syntheticSelect = syntheticSelect; //# sourceMappingURL=syntheticSelect.js.map