Skip to content

2.2.0 β€” Inset shadow, New Architecture fixes

Latest

Choose a tag to compare

@kuraydev kuraydev released this 12 Aug 15:39
· 4 commits to master since this release

demo

✨ New

  • insetShadow prop (#11) β€” recess the track with an inner shadow so the raised indicator visually sits inside it. Pass true for a sensible default, or a CSS-like boxShadow string (e.g. "inset 0 3px 8px rgba(0,0,0,0.35)") for full control. Requires RN 0.76+; gracefully ignored on older versions.
  • activeTextStyle prop is back β€” extra text styling applied only to the active tab.
  • Named TypeScript exports β€” SegmentedControlProps and TabItem are now exported alongside the default export.

πŸ› Fixed

  • RN 0.85 compatibility (#14) β€” removed the deleted StyleSheet.absoluteFillObject API.
  • New Architecture / Fabric (#15) β€” tabs are now distributed evenly and the indicator no longer lands on a stale offset when layout events arrive a frame apart.
  • Indicator no longer slides in from the left on first paint β€” it starts on the selected tab.

πŸ“¦ Packaging & tooling

  • Rebuilt on react-native-typescript-library-starter: sources in src/, dual CJS + ESM output with type definitions via react-native-builder-bob, proper main/module/types/exports fields.
  • The npm tarball now ships only src/ and lib/ β€” no more editor/config junk.
  • New jest + @testing-library/react-native suite (100% line coverage) and GitHub Actions CI (typecheck, lint, tests, build).

πŸ“š Docs & example

  • README rewritten with per-capability examples and a full typed props reference.
  • Example app redesigned into a sectioned showcase (the demo above) β€” including an in-app light/dark theme switch built with the control itself.

Full changelog: 2.1.1...v2.2.0