Skip to content

Releases: polkadot-cloud/polkadot-staking-dashboard

v1.0.9.2

14 Sep 15:27
Compare
Choose a tag to compare

Fixes overflow styling for canvas-scroll and modal-carousel classes.

v1.0.9.1

14 Sep 14:48
Compare
Choose a tag to compare

Fixes

  • Fixes an issue where unclaimed payout syncing was hanging when switching to another account with unclaimed payouts.
  • Fixes an issue where zero balance unclaimed payouts were being displayed.
  • Removes "Claim All" from the Claim Payout modal after a discovery that it can quickly exceed block limits with a large transaction.
  • Fixes an issue where the modal height was not adjusting correctly in Safari and Firefox.
  • Brings back scrollbars for the modal.
  • Fixes translation errors.

v1.0.9

14 Sep 09:40
1512285
Compare
Choose a tag to compare

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.
    • erasStakers are now cached for the current era, and refresh per era.
    • Added Payouts context, fetch up to MaxSupportedPayoutEras unclaimed payouts per account.
    • Pending Payouts stat replaces Controller Account stat on Nominate page.
  • Ability to claim pending payouts via a new ClaimPayouts modal, accessible with a Claim button 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 QRCode component to library, discontinuing usage of the @polkadot/react-qr dependency.
  • 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/core package for true source of app themes.
  • Began using the @polkadot-cloud/community package for true source of extensions and validator operator community. Removed the corresponding data from codebase.
  • Introduced a useEffectIgnoreInitial hook to reduce unneeded initial renders of some components.
  • Moved modal wrappers to @polkadot-cloud/react.
  • Introduced a new full-screen canvas overlay as an additional overlay to modal.
  • 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/react component:
    • UI component at @polkadot-cloud/react/Overlay.
    • Provider at @polkadot-cloud/react/OverlayProvider.
    • useOverlay hook at @polkadot-cloud/react/hooks.
  • ESLint rules consistent-return, @typescript-eslint/ban-ts-comment, no-shadow and no-underscore-dangle have been activated, with fixed codebase.
  • Github pages deployment has been automated with Github CI.
  • Connect context: importExternalAccounts, importVaultAccounts and importLedgerAccounts functions have been unified into one importLocalAccounts function, with misc syntax improvements across the context.
  • The useNominationStatus hook has been improved, getNominationStatus has been removed from Staking context.
  • The Validator context 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 FavoriteValidators context.
  • Account and PoolAccount UI components have been unified under library/Account.
  • A new PolkadotIcon component hosted on @polkadot-cloud/react is now being used in place of Identicon.
  • Uses a new ellipsisFn in place of clipAddress. clipAddress has 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.

v1.0.8.3

23 Jul 10:06
Compare
Choose a tag to compare
  • Small fixes for the latest runtime upgrades.
  • Miscellaneous infrastructure updates.

v1.0.8.2

16 Jul 17:42
64b3eb2
Compare
Choose a tag to compare

This release is a maintenance release that fixes a number of bugs, and by default now disables pool member syncing from the page load, and instead asynchronously fetches pages of pool members when the Members tab is visited.

Changelog

  • Transient props have been used for styled components where it makes sense.
  • Styled components has been updated to version 6.
  • Some unused styles have been removed.
  • Fixed an issue where claim permission was not enabled on all networks.
  • bond and setController calls have been fixed for runtime 0.9.43 on Kusama.
  • Added usePoolCommission hook for capping max commission to global maximum automatically.
  • Added chain state (chain name version, ss58 format) to API context - to be expanded upon in a future update.
  • Gets pool members and pool member count from Subscan by default, preventing all pool members to be synced on page load.
  • Fixed an issue where Commission change rate's minDelay would break.
  • Fixed an issue where the updated pool commission configs (now None for maxPools) would cause an error.
  • Dockerfile has been added for container support.
  • Identicon and QR Code components are now a part of staking dashboard library, and no longer external packages.

v1.0.8.1

15 Jun 12:55
Compare
Choose a tag to compare

This is a minor release that provides fixes for the Polkadot 9420 runtime upgrade.

v1.0.8

11 Jun 09:56
cdbbe44
Compare
Choose a tag to compare

Features

  • Polkadot Vault has been added as an additional Hardware extension. Users can now import accounts and sign transactions from Polkadot Vault.
  • Nomination pool commission UI has been introduced for Kusama and Westend. Users can configure their commission rate & payee, maximum commission and change rate settings from the Manage Pool modal.
  • Nomination pool commission can be claimed on Westend and Kusama from the Manage Pool modal.
    Pool members can now configure their claim permission, allowing other accounts to compound and/or withdraw rewards on their behalf.
  • Tabs have been introduced in the Connect modal to account for Extensions, Read Only and Proxies.
    The Accounts button (top right of app) is now accompanied by a connect icon, allowing users to open the Connect modal directly.
  • Connect modal now allows users to declare proxy delegates by providing the delegator address.
  • The staking status card on Overview has been redesigned to maintain its height and adopt a ⅓ and ⅔ design to fall in line with the rest of the page.
  • Tips now include page links.
  • Introduced logic to not reserve an account’s existential deposit if account locks were already in place.
  • Added a fee reserve feature, accessible from the Overview page, allowing users to reserve additional free balance on top of their existential deposit to pay transaction fees. This reserve is applied to bonding and fast unstake to prevent funds leaving the user’s account.
  • Fonts have been revised, with 3 distinct weights for Inter and a bolder Unbounded font, now in the smaller woff2 format. In addition, spacing and the general style guide of the dashboard has been iterated, improving on the overall aesthetics of the app.
  • PolkaGate was added as a supported extension.
  • Dark mode improvements.
  • Ledger transactions are now enabled for proxied batch calls.

System

  • Substrate Connect is now dynamically imported, and is only loaded when users activate the light client.
  • The dashboard bundle size has been decreased by 70%, dramatically increasing page load time.
  • Account locks are now deducted from the reserve balance in the dashboard, so no reserve is needed if your account locks cover the existential deposit.
  • system.accounts data structure has been amended for the latest runtime upgrade for Westend and Kusama.
  • staking.bond and staking.setController have been amended for the latest runtime upgrade for Westend.
  • Using more core-ui components from @polkadotcloud/core-ui.
  • Removed unneeded types from iterators.
  • Syntax tidy-up for Staking and Validators contexts.
  • GraphWrapper and CardWrapper have been combined and moved to Dashboard UI, along with hardware import elements, - and additional miscellaneous elements.
  • When a proxy account is active, proxy.proxy now wraps each call within a batch call, making Ledger proxied batch calls possible.
  • Added an additional Ledger feedback item for when nested calls are not supported.

Fixes

  • Fixed an issue where non-authorised web extensions were not providing correct feedback when users attempted to connect to it.
  • Fixed an issue where imported Ledger accounts acting as a controller account were treated as not imported.
  • Fixed an issue where read-only proxies were being displayed in the proxies list.
  • Fixed an issue where transactions requiring manual signing (Ledger, Vault) that were proxy accounts were not displaying the Sign button.

v1.0.7

03 May 15:22
Compare
Choose a tag to compare

Features

  • Proxy account support has been introduced to the dashboard!
    • Any and Staking proxies are now recognised in the dashboard.
    • View your proxies from the account selection modal, and find them below the delegator account.
    • Both the delegator and proxy account need to be imported into the dashboard. A future update will allow users to manually declare a proxy account without the need of the delegator being imported.
  • A Controller account deprecation prompt is shown for nominators who have a different controller account to their stash account, with one-click access to update the controller to the stash account.
  • Account selection modal groups accounts that are both nominating and in a pool, preventing duplicate list entries.
  • Added help items to Ledger feedback.
  • Favourite validators have been moved to a tab within the Validators page.
  • Fearless wallet has been added as an additional extension.
  • Miscellaneous theming improvements.
  • A pulse animation has been added to active transaction submission buttons.

System

  • Migrated from lottie-react and the Lottie JSON format to the dot-lottie player and .lottie format, shrinking bundle size by ~10%.
  • Migrated the app's remaining structural wrappers to @polkadotcloud/core-ui.
  • Deprecated src/utils.ts in favour of @polkadotcloud/utils.
  • Deprecated che-react-number-easing in favour of @polkadotcloud/react-odometer, that introduces smooth number animations to stat boxes.
  • Added a totalAdditionalBond property to transfer options for nominating and pools.
  • Ledger feedback has been simplified.
  • No longer calculates pending pool rewards in-app, but rather relies on the nominationPoolsApi.pendingRewards runtime call.
  • Removed state objects for unsubscribe objects, that are now only using a ref.
  • Mobile font size has been made 0.5px larger.

Fixes

  • Fixed an issue on carousel modals that were resizing incorrectly.
  • Fixed an issue where pools were not taking into consideration account locks when displaying the maximum possible bond amount.
  • Fixed an issue where a pool's outstanding reward balance would be preloading if it remained at zero.
  • Fixed button spacing via the latest @polkadotcloud/core-ui package update.
  • Fixed an issue where the maximum number of nominees could not be added to a nomination set.
  • Fixed an issue where font weights were too bold on Safari.

v1.0.6

29 Mar 05:47
Compare
Choose a tag to compare

Features

  • BETA: Native Ledger support has been introduced to the dashboard! Import your public keys into the dashboard and sign extrinsics directly from Ledger Stax, Nano X, Nano S Plus and Nano S.
    • Fully featured: Every extrinsic in staking dashboard works with Ledger.
    • No web extension required.
    • Even works with light-client enabled.
    • Supported on Polkadot and Kusama networks with the Polkadot and Kusama Ledger apps respectively. The Kusama Ledger app is considered experimental, and is treated as experimental in the dashboard.
    • Limited to Google Chrome / Brave browsers over a USB (HID) connection.
  • Extension UI has been revamped with larger icons, 2 items per row, and links to each extension’s website.
  • New Dark mode theming with improved colour balance and branding.
  • Substrate Connect support has been re-enabled, speeding up light client syncing when using the Substrate Connect extension.
  • An additional All pools tab item has been added to the pools list, allowing users to view inactive pools.
  • The design of the staking status card on Overview has been simplified.

System

  • Migrated from CRA to a Vite + React & Typescript config.
    • Webpack config has been replaced with Vite plugins.
    • Syntax has been refactored to account for the Vite toolchain, ranging from type and worker import syntax, environment variables, and cjs formatting for node scripts.
    • A new visualizer script summons the vite-bundle-visualizer plugin, offering dashboard bundle analysis. Run with yarn visualizer.
    • Vitest is now being used to run existing dashboard tests.
  • downshift has been deprecated and removed as a dependency.
  • The Balances context has been split into Accounts/Balances and Accounts/Identities. The Account context has been renamed to Identities.
  • A new Accounts/Proxies context has been created to sync imported account proxies. This currently has no impact on the rest of the dashboard.
  • @rossbulat/polkadot-dashboard-ui has been deprecated in favour of polkadotcloud/dashboard-ui.
  • Dashboard now uses core/Entry from dashboard-ui and discontinues EntryWrapper.
  • Github CI updates
    • Added Dependabot auto-merging of minor and patch releases.
    • Mergify has been deprecated in favour of native auto merge support.

Fixes

  • Fixed an issue that sometimes caused an identity to not update in validator lists once they were synced.
  • Fixed an issue where pool claims were not displaying in large payout lists.
  • Fixed an issue where more validators were being displayed on a page than was intended.
  • Fixed an issue where payouts were not being capped early enough for larger lists of payouts.
  • The Payouts graph title on the Payouts page is now persisted, and does not reinitialise on every page visit.
  • Fixed an issue where the UpdatePayee modal would emit an error boundary when an invalid account was given.
  • Fixed an issue where the syncing graphic was not displaying on the pools page when poolMembers were not yet fetched.
  • 10 day averages are now accurately calculated from the first payout in payout graphs if enough payout history exists.

v1.0.5

08 Mar 04:32
d49bad7
Compare
Choose a tag to compare

Features

  • Unclaimed rewards are now displayed as “pending” rewards and represented by transparent bars in payout bar graphs.
  • Unlock chunks contain a live countdown of time left before withdrawal is enabled.
  • Removes controller accounts from accounts list, and improves presentation.
  • Light client has been re-enabled as a connection option.
  • Added additional validator operators in the community section.

System

  • Introduced Array.at syntax where applicable.
  • All network metrics that were numbers have been converted to BigNumber.
  • Minimum active bond has been replaced with minimum active stake directly from API storage.
  • totalStake and minActiveBond have been removed from the staking worker.
  • Allows countdowns to take any arbitrary start date.
  • Introduced ButtonHelp from UI library, replacing OpenHelpIcon.

Fixes

  • Fixes an issue where the payouts graph title was incorrectly displaying None for pool rewards.
  • Fixes an issue where pool claims sometimes did not display in the payouts list.
  • Fixes an issue where meta batch state was not being updated correctly.
  • Fixes an issue where time-left displays would jump forward a matter of seconds due to re-renders resetting the start date.
  • Fixes an issue where deleting a multi-character search term from the search bar resulted in no results being displayed.
  • All payouts are now rendered in one state update and only one page is fetched per payout type, preventing failed Subscan requests or unsmooth re-renders.