Features
- Unclaimed payout UI has been introduced to the Nominate page, with optimisations to erasStakers and validator entry data fetching:
- Validator entries are now cached in local storage, and refresh per era.
erasStakersare now cached for the current era, and refresh per era.- Added
Payoutscontext, fetch up toMaxSupportedPayoutErasunclaimed payouts per account. - Pending Payouts stat replaces Controller Account stat on Nominate page.
- Ability to claim pending payouts via a new
ClaimPayoutsmodal, accessible with aClaimbutton next to pending payouts. - Pool member points are now being converted to pool balance and displayed in the ManageBond card on the Pools page.
- Account list has been expanded with a 2-row design, with free balance showing on the second row.
- Odometer has been re-engineered and replaced, and now lives at
@polkadot-cloud/react. The odometer is now being used for more balance stats throughout the main page UI. - Network token symbols are now being used on main page UI alongside balances in place of the text-based symbol.
- All Pools list has been simplified, counters have been added to the Pools page tabs.
- Update Reserve button has moved to above the statistic on Overview page.
- Polkawatch has been added as another resource in Overview -> balances.
- Overlay transitions have been revised with improved in and out transitions.
System
- Added a
QRCodecomponent to library, discontinuing usage of the@polkadot/react-qrdependency. - Updated and migrated styled components to version 6.
- Updated and migrated prettier to version 3.
- Moved styled component props to transient props where not valid HTML attributes.
- Began using the
@polkadot-cloud/corepackage for true source of app themes. - Began using the
@polkadot-cloud/communitypackage for true source of extensions and validator operator community. Removed the corresponding data from codebase. - Introduced a
useEffectIgnoreInitialhook to reduce unneeded initial renders of some components. - Moved modal wrappers to
@polkadot-cloud/react. - Introduced a new full-screen
canvasoverlay as an additional overlay tomodal. - Unified the overlay backgrounds into 1 component that is used for both modal and canvas, with a dynamic blur radius that adjusts depending on which form of overlay is used.
- Modal and canvas were bundled into a
@polkadot-cloud/reactcomponent:- UI component at
@polkadot-cloud/react/Overlay. - Provider at
@polkadot-cloud/react/OverlayProvider. useOverlayhook at@polkadot-cloud/react/hooks.
- UI component at
- ESLint rules
consistent-return,@typescript-eslint/ban-ts-comment,no-shadowandno-underscore-danglehave been activated, with fixed codebase. - Github pages deployment has been automated with Github CI.
Connectcontext:importExternalAccounts,importVaultAccountsandimportLedgerAccountsfunctions have been unified into oneimportLocalAccountsfunction, with misc syntax improvements across the context.- The
useNominationStatushook has been improved,getNominationStatushas been removed fromStakingcontext. - The
Validatorcontext has been refactored to more efficiently fetch validator metadata (such as identities), and opts to fetch data rather than subscribe to it where applicable. - Favorite validators functionalities have been separated into a new
FavoriteValidatorscontext. AccountandPoolAccountUI components have been unified underlibrary/Account.- A new
PolkadotIconcomponent hosted on@polkadot-cloud/reactis now being used in place ofIdenticon. - Uses a new
ellipsisFnin place ofclipAddress.clipAddresshas been deprecated.
Fixes
- Fixed some scenarios where the modal would not resize upon error message updates.
- Misc styling improvements, removal of unused / deprecated CSS and styled components.
- Fixed an issue where the modal did not increase in height on window resizing after firstly decreasing in height.
- Fixed the unwanted behaviour of a scrollbar appearing on some browsers in the side menu.