Skip to content

Release Notes v1.1.3

Choose a tag to compare

@vothanhdat vothanhdat released this 16 Dec 16:49
· 69 commits to master since this release

Highlights

  • New search capability: ObjectView now exposes search(filterFn, markTerm, onResult, options) and scrollToPaths. The floating SearchComponent offers debounced input, keyboard shortcuts, a loading indicator, and inline highlights.
  • Search options: Control maxResult, maxDepth, iterateSize, fullSearch, and normalizeSymbol; memoize the options object to keep it stable.
  • Navigation & expansion: More reliable path expansion (expandAndGetIndex, setExpand, setChildExpand) with yield-friendly traversal to keep the UI responsive.
  • Virtual scroller: Ref now exposes scrollTo with clamped bounds to avoid out-of-range jumps.
  • Themes & demo: Added new presets (including themeGeneral and extra light palettes) and refreshed the demo with a theme picker, updated datasets, and the search overlay.
  • Docs & tests: Documentation now covers the search API and memoized options guidance; search integration tests added for the new handle and UI.

Upgrade Notes

  • Add a ref to ObjectView and call search(filterFn, markTerm, onResult, options); filterFn decides matches and markTerm drives highlights.
  • Use the packaged SearchComponent for out-of-the-box UI. Pass memoized options (e.g., { normalizeSymbol, maxResult, maxDepth }) and wire handleSearch to ref.current?.search and scrollToPaths accordingly.
  • Existing ObjectView usage without search requires no changes.