]; targetParentNode?.querySelector(`.${target.className}`).focus(); }); }; return div( { ref: this.listRef, className: "http-custom-input-and-map-form", }, list.map((item, index) => { return div( { className: "tabpanel-summary-container http-custom-input", id: `http-custom-${item.name.toLowerCase()}`, key: index, }, input({ className: "tabpanel-summary-input-checkbox", name: `checked-${index}`, type: "checkbox", onChange: event => { onChecked(index, event.target.checked); }, checked: item.checked, disabled: !!item.disabled, wrap: "off", }), div( { className: "tabpanel-summary-input-name" }, div( { className: "auto-growing-textarea", "data-replicated-value": item.name, title: item.name, }, textarea({ className: "http-custom-input-name", name: `name-${index}`, value: item.name, disabled: !!item.disabled, onChange: event => { onUpdate(event); }, rows: 1, }) ) ), div( { className: "tabpanel-summary-input-value" }, div( { className: "auto-growing-textarea", "data-replicated-value": item.value, title: item.value, }, textarea({ className: "http-custom-input-value", name: `value-${index}`, placeholder: "value", disabled: !!item.disabled, onChange: event => { onUpdate(event); }, value: item.value, rows: 1, }) ) ), !item.disabled && onDelete && button({ className: "http-custom-delete-button", title: REMOVE_ITEM, "aria-label": REMOVE_ITEM, onClick: () => onDelete(index), }) ); }), onAdd && div( { className: "map-add-new-inputs", }, input({ className: "tabpanel-summary-input-checkbox", onChange: () => {}, checked: true, type: "checkbox", }), div( { className: "tabpanel-summary-input-name" }, div( { className: "auto-growing-textarea", "data-replicated-value": name, title: value, }, textarea({ className: "http-custom-input-name", type: "text", ref: "addInputName", checked: true, value: name, rows: 1, placeholder: CUSTOM_NEW_REQUEST_INPUT_NAME, onChange: e => this.setState({ name: e.target.value }), onKeyDown, }) ) ), div( { className: "tabpanel-summary-input-value" }, div( { className: "auto-growing-textarea", "data-replicated-value": value, title: value, }, textarea({ className: "http-custom-input-value", type: "text", ref: "addInputValue", value, onChange: e => this.setState({ value: e.target.value }), rows: 1, placeholder: CUSTOM_NEW_REQUEST_INPUT_VALUE, onKeyDown, }) ) ) ) ); } } module.exports = InputMap; PK