UNPKG

reactronic-dom

Version:

Reactronic DOM - Transactional Reactive Front-End Development Framework

15 lines (14 loc) 524 B
import { Reaction } from '../core/Elements'; export function RxFocuser(name, target, model, setNativeFocus = undefined) { Reaction(name, { target, model }, (_, node) => { const isFocused = model.isFocused; if (setNativeFocus === undefined) setNativeFocus = () => target.focus(); if (node.isInitialRendering) target.dataForSensor.focus = model; if (isFocused) setNativeFocus(); else target.blur(); }, undefined, undefined, 0); }