Skip to content

v4.29.0 — Fixed viewport ranges and recorded endpoints

Choose a tag to compare

@brandtnewlabs brandtnewlabs released this 26 Oct 18:57
· 10 commits to main since this release
0fe90b1

Added

  • The Time scroll demo includes a fixed-price-range setting, feed freeze, and
    repeatable history/future-space previews for comparing viewport.range off/on.

  • Experimental viewport.range supplies exact { min, max } price bounds while
    viewport.end is non-null. It keeps annotation coordinates stable in empty past
    or future space. Invalid/null bounds restore auto-fit; returning to live ignores
    the override. Range-only writes also wake autoSleep charts.

  • LoadingConfig.freezeAfterMs freezes the loading squiggle once it has
    animated that long (ms) each time the loading or empty shell appears; its
    frame callback stops until the shell next appears. Time is counted in frames
    drawn (at most 34 ms each), so time in the background doesn't use it up; the
    reveal morph always animates, and 0 or less freezes from the start. Omitted
    by default: no limit, as before.

Changed

  • Line-mode LiveChart with an external viewport or positive windowBuffer
    stops the line/dot at the last recorded point, leaving future space empty.
    Badge and value-line prices stay aligned with that point. Existing
    badge.followViewEdge, dot.trackWhileParked, and candle-price behavior are
    preserved.

  • badge.textAlign: "yAxisColumn" no longer centers the value in a tailed
    right-gutter pill too narrow for both paddings. Next to the tail, whose
    taper already keeps the value off the outline, the pill gives up the left
    padding first, then the right one, so the value moves continuously as the
    pill narrows. With room for its right padding it ends padX from the pill's
    end (the column's right edge when marginEdge + padX equals
    labelRightMargin); before, it was centered, half the missing padding to the
    right (2 px with padX: 4 and no left padding). Only a value wider than the
    pill's body is still centered. Pills with room for both paddings and pills
    without a tail are unchanged.

Fixed

  • Preserve the final recorded sample when reducing dense line data, so controlled
    or buffered charts end at the same price as their live dot and badge.

Maintenance

  • Align the example app with Expo 57.0.31, deduplicate native modules, and refresh
    the Metro Bundle Mode patches for 0.84.5. Pin the test renderer to the version
    compatible with React 19.2, and check Expo dependency versions, TypeScript, and
    lint in CI.
  • Update React Doctor to 0.9.18 and make npm run doctor use the installed version.