@bimetal/dom
v0.35.0
Published
Framework-free DOM builder primitives for the BIMETAL vanilla render layers: el() (a tiny createElement wrapper with class + rich content) and syncChildren() (keyed child reconciliation that reuses node instances, preserving focus/caret). No framework — c
Maintainers
Readme
@bimetal/dom
Framework-freie DOM-Builder-Primitive für die BIMETAL-Vanilla-Render-Layer. Zwei winzige Helfer, die
die @bimetal/<familie>-vanilla-components-Bindungen nutzen, um ohne Framework identitätsstabiles,
fokus-erhaltendes DOM zu bauen.
Zero externe npm-Dependencies. Zero @bimetal-Dependencies.
Installation
npm install @bimetal/domWas das Paket liefert
| Export | Zweck |
|--------|-------|
| el(tag, cls?, content?) | Ein dünner createElement-Wrapper mit Klassen- und Rich-Content-Argument (String, Node oder Node-Array). |
| syncChildren(parent, desired) | Keyed Kind-Reconciliation: gleicht die tatsächlichen Kinder an die gewünschte Node-Liste an und wiederverwendet vorhandene Node-Instanzen — dadurch bleiben Fokus und Caret erhalten (die Vanilla-Lektion: kein blindes innerHTML). |
| Content | Der Content-Typ (string \| Node \| (Node \| null \| false \| undefined)[] \| null). |
Warum ein eigenes Paket: Die identitätsstabile Reconciliation ist das, was Vanilla-Bindings von naivem DOM-Neuaufbau unterscheidet — genau der Punkt, an dem Gesten (Drag, Roving-Fokus) sonst abreißen.
Architektur
Framework-Ebene (Vanilla-Fundament). Tiefe: doc/architecture/07-framework-adapter.md.
