Skip to content

feat: add staking vault UI for locking creator keys and tracking rewa… - #1062

Merged
Chucks1093 merged 2 commits into
accesslayerorg:devfrom
mysterio123865:feature/issue-1017-staking-vault-ui
Oct 5, 2026
Merged

Chucks1093 merged 2 commits into
accesslayerorg:devfrom
mysterio123865:feature/issue-1017-staking-vault-ui

Conversation

@mysterio123865

Copy link
Copy Markdown
Contributor

Summary

Built a staking vault section on the key detail page that enables key holders to lock creator keys for chosen lock periods, view active stakes, monitor accrued rewards, and execute stake/unstake transactions via connected wallets[cite: 4].


What Was Implemented

  1. Stake Form & Reward Preview:

    • Implemented a stake form with an amount input, lock period selector, and dynamic estimated reward preview[cite: 4].
    • Added validation enforcing that input amounts do not exceed the user's available balance[cite: 4].
  2. Active Stakes List & Lock Countdown:

    • Displayed active stakes showing staked key amounts, accrued rewards, and precise lock expiry countdown timers[cite: 4].
    • Enforced disabling of the unstake button with an informative tooltip during the lock period, activating only post-expiry[cite: 4].
  3. Reward Pool & Wallet Transactions:

    • Fetched and displayed key reward pool balances directly from the API[cite: 4].
    • Configured wallet integration for submitting stake and unstake transactions[cite: 4].

Acceptance Criteria

  • Stake form validates amount against available balance[cite: 4]
  • Estimated reward preview updates on amount and period change[cite: 4]
  • Lock expiry countdown accurate to seconds[cite: 4]
  • Unstake button disabled with tooltip during lock period[cite: 4]
  • Reward pool balance shown correctly from API[cite: 4]

Closes #1017

…rds (accesslayerorg#1017)

- Add StakingVaultService with stake/unstake API methods and types
- Add stakingVault query key namespace to queryKeys factory
- Add useVaultStakes, useStakeVaultMutation, useUnstakeVaultMutation hooks
- Add StakeForm component with amount input, lock period selector (7/30/90/180d), estimated reward preview
- Add ActiveStakesList with per-stake countdown, accrued rewards, pool balance, and unstake CTA
- Unstake button disabled with tooltip during lock period (acceptance criteria)
- Add StakingVaultPanel container integrating form and stakes list
- Integrate StakingVaultPanel into CreatorDetailPage after StakingRewardsSection
- Add unit tests for StakeForm and ActiveStakesList covering all acceptance criteria
@drips-wave

drips-wave Bot commented Sep 28, 2026

Copy link
Copy Markdown

@mysterio123865 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@Chucks1093
Chucks1093 merged commit 694358d into accesslayerorg:dev Oct 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add staking vault UI for locking creator keys and tracking rewards

2 participants