TermDOM 0.1.4
Rendering and layout:
- Fire the
resizeevent onwindow. - Fix borders not joining for some parent/child layouts.
- Add rounded corners when
border-radiusis set. - Remove whitespace-only text between flex items regardless of what the neighboring items display as (css-flexbox-1 §4).
- Stop collapsing spaces under
white-space: break-spaces.
DOM and CSSOM:
- Fix serialization, the
dirattribute, and event dispatch, including retargeting across shadow trees. - Write user edits to a field's value slot instead of calling its value setter (this broke React)
- Track live ranges and node iterators per tree and release them with it.
- Define indexed access on collections and computed styles as accessor properties.
- Invalidate styles on every attribute writer (
classList,className,toggleAttribute, the parser) and register declaratively parsed shadow roots with the cascade.
Width measurement:
- Regenerate the character width tables from the Unicode Character Database at 17.0.0. Trigrams, hexagrams, counting rods, and recent emoji now measure two cells.
- Measure clusters that only appear against the right margin, where a reply is ambiguous, at the left edge of a row the frame repaints anyway.
Examples:
- Add hello-world examples for React, Vue, Svelte, and Crank, each running under Node with no build step.
Internal:
- Adopt @b9g/eslint-config across the codebase; remove WeakRef, most proxies, and the compile-cache call from the entry module.