Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

## Unreleased

## 3.2.0 - 2026-08-31

- Added the typed `buttonStyle`, `containerStyle`, `faceHeight`, `autoWidth`, eventless `onLongPressAction`, accessibility text, and canonical `x` compatibility bridges without changing 3.1.0 legacy meanings.
- Hardened callback freshness, cancellation, one-shot progress completion, teardown, Reduced Motion, large-text, RTL, and theme-transition ownership.
- Added package-owned compatibility, lifecycle, sizing, accessibility, normalization, and theme regressions.
Expand All @@ -12,3 +14,7 @@
- Hardened final label settlement with conservative physical-pixel fit and a generation-matched native text/layout acknowledgement before stable wrapping resumes.

See [MIGRATION.md](./MIGRATION.md) for compatibility details and deferred major-version debt.

This npm release also includes the size-transition work documented by the GitHub-only `v3.1.0`
release. The previous npm `latest` version was `3.0.2`; no different source is being backfilled as
`3.1.0`.
6 changes: 3 additions & 3 deletions MIGRATION.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Migration Guide

## From 3.1.0 to the engineering-hardening bridge
## From 3.1.0 to the 3.2.0 compatibility bridge

This pass preserves every 3.1.0 call site while exposing the shared Awesome Button vocabulary. It does not silently enable a new geometry mode.
Version 3.2.0 preserves every 3.1.0 call site while exposing the shared Awesome Button vocabulary. It does not silently enable a new geometry mode.

| Existing API | Bridge API | Current behavior | Future major intent |
| ------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
Expand Down Expand Up @@ -39,4 +39,4 @@ This pass preserves every 3.1.0 call site while exposing the shared Awesome Butt

React Native still retains its 3.1.0 direct geometry defaults and 100 ms press fallback. Other governed ports use the neutral 140 ms fallback. This remains explicit cross-platform debt rather than an implicit behavior change.

No package version or release is selected by this document. Review the checked-in API report and `CHANGELOG.md` before adopting the bridge.
Review the checked-in API report and `CHANGELOG.md` before adopting the 3.2.0 bridge.
42 changes: 42 additions & 0 deletions RELEASE_NOTES_3.2.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# React Native Awesome Button 3.2.0

React Native Awesome Button 3.2.0 makes interaction, progress, sizing, and text transitions more
predictable while expanding the typed configuration and accessibility surface.

## Highlights

- Keeps callbacks current across rerenders while preserving transition-scoped release and progress
completion behavior.
- Strengthens cancellation, long-press replacement, one-shot progress completion, Reduced Motion,
large-text, RTL, and numeric validation behavior.
- Stabilizes auto-width growth and shrink choreography so labels settle without stale frames,
reversal, or overshoot.
- Adds typed `buttonStyle`, `containerStyle`, `faceHeight`, `autoWidth`, accessibility text, and the
canonical `x` compatibility bridge.
- Adds deterministic package, API-report, documentation-coverage, payload, and regression gates.

## Compatibility

- Existing 3.1.0 call sites and legacy aliases remain supported. Canonical bridge fields take
precedence when both forms are supplied.
- Legacy geometry defaults remain unchanged and are documented in `MIGRATION.md` as future
major-version debt.
- npm consumers upgrading from 3.0.2 also receive the size-transition improvements documented by
the GitHub-only v3.1.0 release; old source is not being republished as 3.1.0.

## Verification

- `yarn release:check` — passed.
- 12 Jest suites, 128 tests, and 2 snapshots — passed.
- TypeScript, lint, API Extractor, TSDoc coverage, generated builds, and npm payload validation —
passed.

## Installation

```sh
yarn add @rcaferati/react-native-awesome-button@3.2.0
```

## Full Changelog

See [v3.1.0...v3.2.0](https://github.com/rcaferati/react-native-awesome-button/compare/v3.1.0...v3.2.0).
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rcaferati/react-native-awesome-button",
"version": "3.1.0",
"version": "3.2.0",
"packageManager": "yarn@4.5.1",
"description": "React Native button component that renders a 60fps animated set of progress-enabled 3D buttons.",
"main": "lib/commonjs/index",
Expand Down
Loading