v3.1.0
3.1.0 (2025-10-03)
- custom cssPrefix support (ad42835)
- layers: add support for layers with FontAwesomeLayers component (2c84902)
- better export path for CustomPrefixProvider (663cd25)
- browser-support: don't use string.replaceAll to fix safari 12 support (1776e3a)
- layers: add unit tests for FontAwesomeLayers (d31480b)
- utils: unit tests for withPrefix utility (982f649)
- release: use @semantic-release/exec for multi-publish rather than third-party plugin (5a47e13)
Release 3.0.2
3.0.2 (2025-09-01)
- constants: resolve JSON import errors for vite/remix users (850a804)
- test: flaky converter performance test in CI (8f43f0e)
- WCAG: correctly read aria-label and ensure aria-hidden is false when label present (19ddeb3)
- converter: fix unit test for aria-label handling (8c49cdc)
- remove flaky test (f9605ab)
- remove unnecessary test conditionals for v5 (fd5bf9b)
Release 3.0.1
- Added additional module resolution configs in
package.json(b078d99) - Refactored SVGCore version checks to use dynamic import to fix #589 (bc7cad0)
Full Changelog: https://github.com/FortAwesome/react-fontawesome/compare/3.0.0...3.0.1
Release 3.0.0
- Dropped support for end-of-life FontAwesome versions (below v6), Node versions (below 20.x) and React versions (below 18.x)
- Dropped support for browser versions that don't support the ES2020 standard, namely JavaScript built-in: globalThis
- Rewrote the entire library from plain JavaScript to TypeScript
- Replaced
rollupwithtsupfor providing both ESM and CJS exports from one TypeScript source - Removed
prop-typesin favour of colocated typings for React component props - Added better type definitions to each prop including examples of usage
- Upgraded
eslintfrom v6 to v9, rewrote config as Flat Config, modernised ESLint config, plugins and rules - Refactored all unit tests from the deprecated
react-test-rendererto the industry standard@testing-library/react - Upgraded all other development dependencies to latest versions as of release date
- Optimised
FontAwesomeIconby reducing per-render function calls and memory allocations - Optimised
classListfunction by removing runtime semver checks and array operations - Optimised
converterwith a full rewrite for significant performance increases (~70%) - Moved inline class strings from
getClassListFromPropsto pre-computed maps
- Fixed accessibility ID generation (
titleId, maskId) for SSR ensuring a consistent ID across server and client renders (#93, #550, #573) - Fixed TypeScript errors when styling duotone icons with CSS variables (#509)
- Fixed
aria-hiddenso it isfalseif there is a non-emptyaria-labelattribute (#126) - Resolved large number of
npm auditissues by removing and updating dependencies
- @charles4221 made their first contribution in https://github.com/FortAwesome/react-fontawesome/pull/581
Full Changelog: https://github.com/FortAwesome/react-fontawesome/compare/0.2.6...3.0.0
Release 0.2.6
- check for existence of
processbefore readingprocess.env(#585)
Full Changelog: https://github.com/FortAwesome/react-fontawesome/compare/0.2.5...0.2.6
Release 0.2.5
- #583 - fix interface definition by @dom-the-dev in https://github.com/FortAwesome/react-fontawesome/pull/584
- @dom-the-dev made their first contribution in https://github.com/FortAwesome/react-fontawesome/pull/584
Full Changelog: https://github.com/FortAwesome/react-fontawesome/compare/0.2.4...0.2.5
Release 0.2.4
- Allow passing undefined to optional properties with exactOptionalPropertyTypes by @jdufresne in https://github.com/FortAwesome/react-fontawesome/pull/574
- Update TypeScript to use the React.JSX namespace by @jdufresne in https://github.com/FortAwesome/react-fontawesome/pull/571
- @jdufresne made their first contribution in https://github.com/FortAwesome/react-fontawesome/pull/574
Full Changelog: https://github.com/FortAwesome/react-fontawesome/compare/0.2.3...0.2.4