diff --git a/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDelegationItem.tsx b/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDelegationItem.tsx
index 64e5f9f02..1beee2a91 100644
--- a/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDelegationItem.tsx
+++ b/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDelegationItem.tsx
@@ -13,7 +13,6 @@ import { getValidatorDashboardValidatorUrl } from "@/utils/validatorDashboardUti
import { getExplorerTxUrl, getExplorerAddressUrl } from "@/utils/explorerUtils"
import { useSequencerStatus, SequencerStatus } from "@/hooks/rollup/useSequencerStatus"
import { useStakeHealth } from "@/hooks/rollup/useStakeHealth"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useGovernanceConfig } from "@/hooks/governance"
import { useClaimAllContext } from "@/contexts/ClaimAllContext"
import { WithdrawalActions } from "./WithdrawalActions"
@@ -58,8 +57,6 @@ export const ATPDetailsDelegationItem = ({
const { symbol, decimals } = useStakingAssetTokenDetails()
const { date, time } = formatBlockTimestamp(delegation.timestamp)
const { getSplitStatus, claimAllHook } = useClaimAllContext()
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
const { status, statusLabel, isLoading: isLoadingStatus, canFinalize, actualUnlockTime, refetch: refetchStatus } = useSequencerStatus(delegation.operatorAddress as Address)
const { withdrawalDelayDays } = useGovernanceConfig()
@@ -445,16 +442,14 @@ export const ATPDetailsDelegationItem = ({
providerTakeRate: delegation.providerTakeRate,
providerRewardsRecipient: delegation.providerRewardsRecipient
})}
- disabled={delegationRewards.userRewards === 0n || isInBatch || isRewardsClaimable === false}
+ disabled={delegationRewards.userRewards === 0n || isInBatch}
className="px-3 py-1.5 border font-oracle-standard text-xs font-bold uppercase tracking-wide whitespace-nowrap transition-colors disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-parchment/10 disabled:border-parchment/30 disabled:text-parchment/60 border-chartreuse bg-chartreuse text-ink hover:bg-chartreuse/90"
title={
- isRewardsClaimable === false
- ? "Rewards are currently locked by the network protocol"
- : delegationRewards.userRewards === 0n
- ? "No rewards to claim"
- : isInBatch
- ? "Processing in batch"
- : "Claim delegation rewards"
+ delegationRewards.userRewards === 0n
+ ? "No rewards to claim"
+ : isInBatch
+ ? "Processing in batch"
+ : "Claim delegation rewards"
}
>
{isProcessingInBatch ? (
@@ -466,13 +461,9 @@ export const ATPDetailsDelegationItem = ({
'Claim Rewards'
)}
- {(delegationRewards.userRewards === 0n || isRewardsClaimable === false) && (
+ {delegationRewards.userRewards === 0n && (
diff --git a/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDirectStakeItem.tsx b/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDirectStakeItem.tsx
index fa0ce6534..af356579d 100644
--- a/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDirectStakeItem.tsx
+++ b/staking-dashboard/src/components/ATPDetailsModal/ATPDetailsDirectStakeItem.tsx
@@ -12,7 +12,6 @@ import { getValidatorDashboardValidatorUrl } from "@/utils/validatorDashboardUti
import { getExplorerTxUrl } from "@/utils/explorerUtils"
import { useSequencerStatus, SequencerStatus } from "@/hooks/rollup/useSequencerStatus"
import { useStakeHealth } from "@/hooks/rollup/useStakeHealth"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useGovernanceConfig } from "@/hooks/governance"
import { ClaimSelfStakeRewardsModal } from "@/components/ClaimSelfStakeRewardsModal"
import { WithdrawalActions } from "./WithdrawalActions"
@@ -41,8 +40,6 @@ export const ATPDetailsDirectStakeItem = ({ stake, stakerAddress, rollupVersion,
const [isClaimModalOpen, setIsClaimModalOpen] = useState(false)
const { symbol, decimals } = useStakingAssetTokenDetails()
const { date, time } = formatBlockTimestamp(stake.timestamp)
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
const { status, statusLabel, isLoading: isLoadingStatus, canFinalize, actualUnlockTime, refetch: refetchStatus } = useSequencerStatus(stake.attesterAddress as Address)
const { withdrawalDelayDays } = useGovernanceConfig()
@@ -366,19 +363,11 @@ export const ATPDetailsDirectStakeItem = ({ stake, stakerAddress, rollupVersion,
- {isRewardsClaimable === false && (
-
- )}
)}
diff --git a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverview.tsx b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverview.tsx
index f036b4d82..615805144 100644
--- a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverview.tsx
+++ b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverview.tsx
@@ -2,7 +2,6 @@ import { useState, useEffect, useRef } from "react"
import { useAggregatedStakingData } from "@/hooks/atp/useAggregatedStakingData"
import { useMultipleStakeableAmounts } from "@/hooks/atp/useMultipleStakeableAmounts"
import { useStakingAssetTokenDetails } from "@/hooks/stakingRegistry"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useCoinbaseAddresses, useMultipleCoinbaseRewards } from "@/hooks/rewards"
import { ATPDetailsModal } from "@/components/ATPDetailsModal"
import { ATPStakingOverviewSkeleton } from "./ATPStakingOverviewSkeleton"
@@ -58,9 +57,6 @@ export const ATPStakingOverview = ({ atpData, walletBalance = 0n }: ATPStakingOv
isLoading: isLoadingStakeable,
} = useMultipleStakeableAmounts(atpData)
- // Check if rewards are claimable
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
// Get coinbase addresses and their rewards for self-stake tracking
const { coinbaseAddresses } = useCoinbaseAddresses()
const { totalCoinbaseRewards, coinbaseBreakdown, refetch: refetchCoinbaseRewards } = useMultipleCoinbaseRewards(coinbaseAddresses as Address[])
@@ -179,7 +175,6 @@ export const ATPStakingOverview = ({ atpData, walletBalance = 0n }: ATPStakingOv
totalRewards={totalRewards}
selfStakeRewards={totalCoinbaseRewards}
pendingWarehouseWithdrawal={pendingWarehouseWithdrawal}
- isRewardsClaimable={isRewardsClaimable}
isExpanded={isTotalRewardsExpanded}
onToggle={() => setIsTotalRewardsExpanded(!isTotalRewardsExpanded)}
decimals={decimals}
diff --git a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewClaimableRewards.tsx b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewClaimableRewards.tsx
index d057fb0dc..bdcf4e92b 100644
--- a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewClaimableRewards.tsx
+++ b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewClaimableRewards.tsx
@@ -11,7 +11,6 @@ interface ATPStakingOverviewClaimableRewardsProps {
totalRewards: bigint
selfStakeRewards?: bigint
pendingWarehouseWithdrawal?: bigint
- isRewardsClaimable?: boolean
isExpanded: boolean
onToggle: () => void
decimals: number
@@ -25,7 +24,7 @@ interface ATPStakingOverviewClaimableRewardsProps {
* Displays claimable delegation rewards and self-stake rewards
*/
export const ATPStakingOverviewClaimableRewards = forwardRef(
- ({ totalRewards, selfStakeRewards = 0n, pendingWarehouseWithdrawal = 0n, isRewardsClaimable = true, isExpanded, onToggle, decimals, symbol, delegationBreakdown = [], coinbaseBreakdown = [], onClaimSuccess }, ref) => {
+ ({ totalRewards, selfStakeRewards = 0n, pendingWarehouseWithdrawal = 0n, isExpanded, onToggle, decimals, symbol, delegationBreakdown = [], coinbaseBreakdown = [], onClaimSuccess }, ref) => {
const [isManageModalOpen, setIsManageModalOpen] = useState(false)
const [isClaimAllModalOpen, setIsClaimAllModalOpen] = useState(false)
@@ -85,18 +84,6 @@ export const ATPStakingOverviewClaimableRewards = forwardRef
- {/* Rewards Locked Warning */}
- {!isRewardsClaimable && (
-
-
-
-
- Rewards are currently locked
-
-
-
- )}
-
{/* Info message when no rewards */}
{combinedTotalRewards === 0n && (
@@ -117,7 +104,7 @@ export const ATPStakingOverviewClaimableRewards = forwardRef
diff --git a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDelegationItem.tsx b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDelegationItem.tsx
index 343b18bcd..13f32dba1 100644
--- a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDelegationItem.tsx
+++ b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDelegationItem.tsx
@@ -4,7 +4,6 @@ import { Icon } from "@/components/Icon"
import { formatTokenAmount } from "@/utils/atpFormatters"
import { getValidatorDashboardValidatorUrl } from "@/utils/validatorDashboardUtils"
import { getExplorerTxUrl } from "@/utils/explorerUtils"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useClaimAllContext } from "@/contexts/ClaimAllContext"
import type { ATPData } from "@/hooks/atp"
import type { DelegationBreakdown, Erc20DelegationBreakdown } from "@/hooks/atp/useAggregatedStakingData"
@@ -35,7 +34,6 @@ export const ATPStakingOverviewDelegationItem = ({
onClaimClick
}: ATPStakingOverviewDelegationItemProps) => {
const { getSplitStatus, claimAllHook } = useClaimAllContext()
- const { isRewardsClaimable } = useIsRewardsClaimable()
const isWallet = variant === 'wallet'
const splitStatus = getSplitStatus(delegation.splitContract as Address)
@@ -152,12 +150,10 @@ export const ATPStakingOverviewDelegationItem = ({
- {isRewardsClaimable === false && (
-
- )}
)}
diff --git a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDirectStakeItem.tsx b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDirectStakeItem.tsx
index a8e732a38..dff98cd99 100644
--- a/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDirectStakeItem.tsx
+++ b/staking-dashboard/src/components/ATPStakingOverview/ATPStakingOverviewDirectStakeItem.tsx
@@ -4,7 +4,6 @@ import { Icon } from "@/components/Icon"
import { formatTokenAmount } from "@/utils/atpFormatters"
import { getValidatorDashboardValidatorUrl } from "@/utils/validatorDashboardUtils"
import { getExplorerTxUrl } from "@/utils/explorerUtils"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import type { ATPData } from "@/hooks/atp"
import type { DirectStakeBreakdown, Erc20DirectStakeBreakdown } from "@/hooks/atp/useAggregatedStakingData"
@@ -32,7 +31,6 @@ export const ATPStakingOverviewDirectStakeItem = ({
onWalletClick,
onClaimClick
}: ATPStakingOverviewDirectStakeItemProps) => {
- const { isRewardsClaimable } = useIsRewardsClaimable()
const isWallet = variant === 'wallet'
return (
@@ -119,19 +117,11 @@ export const ATPStakingOverviewDirectStakeItem = ({
- {isRewardsClaimable === false && (
-
- )}
)}
diff --git a/staking-dashboard/src/components/ClaimAllDelegationRewardsButton/ClaimAllDelegationRewardsButton.tsx b/staking-dashboard/src/components/ClaimAllDelegationRewardsButton/ClaimAllDelegationRewardsButton.tsx
index f7338a9ef..e108c43ce 100644
--- a/staking-dashboard/src/components/ClaimAllDelegationRewardsButton/ClaimAllDelegationRewardsButton.tsx
+++ b/staking-dashboard/src/components/ClaimAllDelegationRewardsButton/ClaimAllDelegationRewardsButton.tsx
@@ -1,7 +1,6 @@
import { useEffect, useMemo } from "react"
import { useAccount } from "wagmi"
import { useStakingAssetTokenDetails } from "@/hooks/stakingRegistry"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useClaimAllContext } from "@/contexts/ClaimAllContext"
import { useAlert } from "@/contexts/AlertContext"
import type { Address } from "viem"
@@ -28,7 +27,6 @@ export const ClaimAllDelegationRewardsButton = ({
}: ClaimAllDelegationRewardsButtonProps) => {
const { address: beneficiary } = useAccount() // TODO : should get the address from atp.beneficiary to handle the condition where the connected address is operator
const { stakingAssetAddress: tokenAddress } = useStakingAssetTokenDetails()
- const { isRewardsClaimable } = useIsRewardsClaimable()
const { claimAllHook } = useClaimAllContext()
const { showAlert } = useAlert()
@@ -81,7 +79,7 @@ export const ClaimAllDelegationRewardsButton = ({
claimAllHook.claimAll(tasks)
}
- if (delegationsWithRewards.length === 0 || isRewardsClaimable === false) {
+ if (delegationsWithRewards.length === 0) {
return null
}
diff --git a/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsModal.tsx b/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsModal.tsx
index ae3555689..16246b868 100644
--- a/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsModal.tsx
+++ b/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsModal.tsx
@@ -3,7 +3,6 @@ import { createPortal } from "react-dom"
import { Icon } from "@/components/Icon"
import { useClaimAllRewards } from "@/hooks/rewards"
import { useStakingAssetTokenDetails } from "@/hooks/stakingRegistry"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { ClaimAllRewardsSummary } from "./ClaimAllRewardsSummary"
import { ClaimAllRewardsProgress } from "./ClaimAllRewardsProgress"
import { ClaimAllRewardsSuccess } from "./ClaimAllRewardsSuccess"
@@ -38,9 +37,6 @@ export const ClaimAllRewardsModal = ({
// Token details
const { symbol, decimals } = useStakingAssetTokenDetails()
- // Check if rewards are claimable
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
// Claim hook
const claimAllRewards = useClaimAllRewards()
@@ -154,7 +150,6 @@ export const ClaimAllRewardsModal = ({
pendingWarehouseWithdrawal={pendingWarehouseWithdrawal}
decimals={decimals ?? 18}
symbol={symbol ?? ""}
- isRewardsClaimable={isRewardsClaimable ?? false}
onStartClaiming={handleStartClaiming}
isDisabled={false}
/>
diff --git a/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsSummary.tsx b/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsSummary.tsx
index 9237690da..f5f003197 100644
--- a/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsSummary.tsx
+++ b/staking-dashboard/src/components/ClaimAllRewardsModal/ClaimAllRewardsSummary.tsx
@@ -9,7 +9,6 @@ interface ClaimAllRewardsSummaryProps {
pendingWarehouseWithdrawal?: bigint
decimals: number
symbol: string
- isRewardsClaimable: boolean
onStartClaiming: () => void
isDisabled: boolean
}
@@ -23,7 +22,6 @@ export const ClaimAllRewardsSummary = ({
pendingWarehouseWithdrawal = 0n,
decimals,
symbol,
- isRewardsClaimable,
onStartClaiming,
isDisabled
}: ClaimAllRewardsSummaryProps) => {
@@ -41,21 +39,6 @@ export const ClaimAllRewardsSummary = ({
return (
- {/* Rewards Locked Warning */}
- {!isRewardsClaimable && (
-
-
-
-
-
Rewards Locked
-
- Rewards are currently locked and cannot be claimed. Check back later.
-
-
-
-
- )}
-
{/* Total */}
@@ -187,18 +170,14 @@ export const ClaimAllRewardsSummary = ({
{/* Claim Button */}
{/* Transaction Info */}
- {hasRewards && isRewardsClaimable && (
+ {hasRewards && (
This will require multiple transactions. Each claim will prompt for approval.
diff --git a/staking-dashboard/src/components/ClaimSelfStakeRewardsModal/ClaimSelfStakeRewardsModal.tsx b/staking-dashboard/src/components/ClaimSelfStakeRewardsModal/ClaimSelfStakeRewardsModal.tsx
index 19d09f749..ddbad6d91 100644
--- a/staking-dashboard/src/components/ClaimSelfStakeRewardsModal/ClaimSelfStakeRewardsModal.tsx
+++ b/staking-dashboard/src/components/ClaimSelfStakeRewardsModal/ClaimSelfStakeRewardsModal.tsx
@@ -7,7 +7,6 @@ import { debounce } from "@/utils/debounce"
import { useStakingAssetTokenDetails } from "@/hooks/stakingRegistry"
import { useSequencerRewards } from "@/hooks/rollup/useSequencerRewards"
import { useClaimSequencerRewards } from "@/hooks/rollup/useClaimSequencerRewards"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useAlert } from "@/contexts/AlertContext"
import type { ATPData } from "@/hooks/atp"
import type { Address } from "viem"
@@ -58,8 +57,6 @@ export const ClaimSelfStakeRewardsModal = ({
reset
} = useClaimSequencerRewards()
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
// Create debounced check function that manages debouncing state
const debouncedCheckRewards = useMemo(
() => debounce(() => {
@@ -232,17 +229,6 @@ export const ClaimSelfStakeRewardsModal = ({
)}
- {/* Rewards Not Claimable Warning */}
- {isRewardsClaimable === false && (
-
-
- Rewards Currently Locked
-
-
- All rewards are currently locked by the network protocol (rollup). Claiming will be enabled once the protocol unlocks rewards.
-
-
- )}
>
)}
@@ -270,8 +256,7 @@ export const ClaimSelfStakeRewardsModal = ({
!rewards ||
rewards === 0n ||
isPending ||
- isConfirming ||
- isRewardsClaimable === false
+ isConfirming
}
className="px-6 py-3 bg-chartreuse text-ink font-oracle-standard font-bold text-sm uppercase tracking-wider hover:bg-chartreuse/90 transition-all disabled:opacity-50 disabled:cursor-not-allowed"
>
diff --git a/staking-dashboard/src/components/RewardsManagement/CoinbaseAddressList.tsx b/staking-dashboard/src/components/RewardsManagement/CoinbaseAddressList.tsx
index 47f3862e7..4a71fa76d 100644
--- a/staking-dashboard/src/components/RewardsManagement/CoinbaseAddressList.tsx
+++ b/staking-dashboard/src/components/RewardsManagement/CoinbaseAddressList.tsx
@@ -9,7 +9,6 @@ interface CoinbaseAddressListProps {
coinbaseBreakdown: CoinbaseBreakdown[]
decimals: number
symbol: string
- isRewardsClaimable: boolean
isLoading?: boolean
onRefetch?: () => void
}
@@ -21,7 +20,6 @@ export const CoinbaseAddressList = ({
coinbaseBreakdown,
decimals,
symbol,
- isRewardsClaimable,
isLoading,
onRefetch
}: CoinbaseAddressListProps) => {
@@ -100,26 +98,20 @@ export const CoinbaseAddressList = ({
{/* Claim Button */}
{item.rewards > 0n && (
- {isRewardsClaimable ? (
-
- ) : (
-
- Rewards are currently locked
-
- )}
+
)}
diff --git a/staking-dashboard/src/components/RewardsManagement/ManageRewardsAddressesModal.tsx b/staking-dashboard/src/components/RewardsManagement/ManageRewardsAddressesModal.tsx
index 25ef5dcb9..6113487a0 100644
--- a/staking-dashboard/src/components/RewardsManagement/ManageRewardsAddressesModal.tsx
+++ b/staking-dashboard/src/components/RewardsManagement/ManageRewardsAddressesModal.tsx
@@ -2,7 +2,6 @@ import { useState, useMemo } from "react"
import { createPortal } from "react-dom"
import { Icon } from "@/components/Icon"
import { useStakingAssetTokenDetails } from "@/hooks/stakingRegistry"
-import { useIsRewardsClaimable } from "@/hooks/rollup/useIsRewardsClaimable"
import { useAggregatedStakingData } from "@/hooks/atp/useAggregatedStakingData"
import {
useCoinbaseAddresses,
@@ -14,7 +13,6 @@ import {
import { AddAddressForm } from "./AddAddressForm"
import { CoinbaseAddressList } from "./CoinbaseAddressList"
import { SplitContractList } from "./SplitContractList"
-import { RewardsLockedBanner } from "./RewardsLockedBanner"
import type { Address } from "viem"
import type { SplitContractWithSource } from "./types"
@@ -38,9 +36,6 @@ export const ManageRewardsAddressesModal = ({
// Token details
const { symbol, decimals, stakingAssetAddress: tokenAddress } = useStakingAssetTokenDetails()
- // Check if rewards are claimable
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
// Coinbase addresses
const {
coinbaseAddresses,
@@ -154,11 +149,6 @@ export const ManageRewardsAddressesModal = ({
- {/* Rewards Locked Banner */}
- {isRewardsClaimable === false && (
-
- )}
-
{/* Tabs */}
@@ -243,7 +232,6 @@ export const ManageRewardsAddressesModal = ({
decimals={decimals ?? 18}
symbol={symbol ?? ""}
tokenAddress={tokenAddress}
- isRewardsClaimable={isRewardsClaimable ?? false}
isLoading={isLoadingSplitAddresses || isLoadingDelegations}
onRefetch={refetchSplitAddresses}
/>
diff --git a/staking-dashboard/src/components/RewardsManagement/RewardsLockedBanner.tsx b/staking-dashboard/src/components/RewardsManagement/RewardsLockedBanner.tsx
deleted file mode 100644
index d020e252c..000000000
--- a/staking-dashboard/src/components/RewardsManagement/RewardsLockedBanner.tsx
+++ /dev/null
@@ -1,24 +0,0 @@
-import { Icon } from "@/components/Icon"
-
-interface RewardsLockedBannerProps {
- className?: string
-}
-
-/**
- * Banner showing that rewards are currently locked
- */
-export const RewardsLockedBanner = ({ className = "" }: RewardsLockedBannerProps) => {
- return (
-
-
-
-
- Rewards are currently locked.
-
- Claiming will be enabled at a later date.
-
-
-
-
- )
-}
diff --git a/staking-dashboard/src/components/RewardsManagement/SplitContractList.tsx b/staking-dashboard/src/components/RewardsManagement/SplitContractList.tsx
index 3b127c9cc..33a6373ca 100644
--- a/staking-dashboard/src/components/RewardsManagement/SplitContractList.tsx
+++ b/staking-dashboard/src/components/RewardsManagement/SplitContractList.tsx
@@ -13,7 +13,6 @@ interface SplitContractItemProps {
decimals: number
symbol: string
tokenAddress: Address
- isRewardsClaimable: boolean
onRemove?: () => void
isRemoving: boolean
}
@@ -23,7 +22,6 @@ const SplitContractItem = ({
decimals,
symbol,
tokenAddress,
- isRewardsClaimable,
onRemove,
isRemoving
}: SplitContractItemProps) => {
@@ -125,15 +123,9 @@ const SplitContractItem = ({
{/* Info about claiming */}
{userShare > 0n && !isLoading && (
- {isRewardsClaimable ? (
-
- To claim rewards, go to your Token Vault details and use the delegation claim flow.
-
- ) : (
-
- Rewards are currently locked. Check back later.
-
- )}
+
+ To claim rewards, go to your Token Vault details and use the delegation claim flow.
+
)}
@@ -145,7 +137,6 @@ interface SplitContractListProps {
decimals: number
symbol: string
tokenAddress: Address | undefined
- isRewardsClaimable: boolean
isLoading?: boolean
onRefetch?: () => void
}
@@ -158,7 +149,6 @@ export const SplitContractList = ({
decimals,
symbol,
tokenAddress,
- isRewardsClaimable,
isLoading,
onRefetch
}: SplitContractListProps) => {
@@ -218,7 +208,6 @@ export const SplitContractList = ({
decimals={decimals}
symbol={symbol}
tokenAddress={tokenAddress}
- isRewardsClaimable={isRewardsClaimable}
isRemoving={isRemoving}
/>
))}
@@ -240,7 +229,6 @@ export const SplitContractList = ({
decimals={decimals}
symbol={symbol}
tokenAddress={tokenAddress}
- isRewardsClaimable={isRewardsClaimable}
onRemove={() => handleRemove(split.address)}
isRemoving={isRemoving}
/>
diff --git a/staking-dashboard/src/components/RewardsManagement/index.ts b/staking-dashboard/src/components/RewardsManagement/index.ts
index 6d28d29fd..48d6e9896 100644
--- a/staking-dashboard/src/components/RewardsManagement/index.ts
+++ b/staking-dashboard/src/components/RewardsManagement/index.ts
@@ -2,4 +2,3 @@ export { ManageRewardsAddressesModal } from "./ManageRewardsAddressesModal"
export { AddAddressForm } from "./AddAddressForm"
export { CoinbaseAddressList } from "./CoinbaseAddressList"
export { SplitContractList } from "./SplitContractList"
-export { RewardsLockedBanner } from "./RewardsLockedBanner"
diff --git a/staking-dashboard/src/components/WalletStakesDetailsModal/WalletDelegationItem.tsx b/staking-dashboard/src/components/WalletStakesDetailsModal/WalletDelegationItem.tsx
index 621f3daf7..5a908ba79 100644
--- a/staking-dashboard/src/components/WalletStakesDetailsModal/WalletDelegationItem.tsx
+++ b/staking-dashboard/src/components/WalletStakesDetailsModal/WalletDelegationItem.tsx
@@ -12,7 +12,7 @@ import { formatBlockTimestamp } from "@/utils/dateFormatters"
import { useStakingAssetTokenDetails } from "@/hooks/stakingRegistry"
import { getValidatorDashboardValidatorUrl } from "@/utils/validatorDashboardUtils"
import { getExplorerTxUrl, getExplorerAddressUrl } from "@/utils/explorerUtils"
-import { useSequencerStatus, SequencerStatus, useStakeHealth, useIsRewardsClaimable } from "@/hooks/rollup"
+import { useSequencerStatus, SequencerStatus, useStakeHealth } from "@/hooks/rollup"
import { useGovernanceConfig } from "@/hooks/governance"
import { useClaimAllContext } from "@/contexts/ClaimAllContext"
import { WalletWithdrawalActions } from "./WalletWithdrawalActions"
@@ -43,8 +43,6 @@ export const WalletDelegationItem = ({
const { symbol, decimals } = useStakingAssetTokenDetails()
const { date, time } = formatBlockTimestamp(delegation.timestamp)
const { getSplitStatus, claimAllHook } = useClaimAllContext()
- const { isRewardsClaimable } = useIsRewardsClaimable()
-
const { status, statusLabel, isLoading: isLoadingStatus, canFinalize, actualUnlockTime, refetch: refetchStatus } = useSequencerStatus(delegation.attesterAddress as Address)
const { withdrawalDelayDays } = useGovernanceConfig()
@@ -339,16 +337,14 @@ export const WalletDelegationItem = ({
providerTakeRate: delegation.providerTakeRate,
providerRewardsRecipient: delegation.providerRewardsRecipient
})}
- disabled={delegation.rewards === 0n || isInBatch || isRewardsClaimable === false}
+ disabled={delegation.rewards === 0n || isInBatch}
className="px-3 py-1.5 border font-oracle-standard text-xs font-bold uppercase tracking-wide whitespace-nowrap transition-colors disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-parchment/10 disabled:border-parchment/30 disabled:text-parchment/60 border-chartreuse bg-chartreuse text-ink hover:bg-chartreuse/90"
title={
- isRewardsClaimable === false
- ? "Rewards are currently locked by the network protocol"
- : delegation.rewards === 0n
- ? "No rewards to claim"
- : isInBatch
- ? "Processing in batch"
- : "Claim delegation rewards"
+ delegation.rewards === 0n
+ ? "No rewards to claim"
+ : isInBatch
+ ? "Processing in batch"
+ : "Claim delegation rewards"
}
>
{isProcessingInBatch ? (
@@ -360,13 +356,9 @@ export const WalletDelegationItem = ({
'Claim Rewards'
)}
- {(delegation.rewards === 0n || isRewardsClaimable === false) && (
+ {delegation.rewards === 0n && (
diff --git a/staking-dashboard/src/hooks/rollup/index.ts b/staking-dashboard/src/hooks/rollup/index.ts
index d35471714..0d14b5085 100644
--- a/staking-dashboard/src/hooks/rollup/index.ts
+++ b/staking-dashboard/src/hooks/rollup/index.ts
@@ -2,7 +2,6 @@ export { useRollupData } from "./useRollupData";
export { useActivationThresholdFormatted } from "./useActivationThresholdFormatted";
export { useSequencerRewards } from "./useSequencerRewards";
export { useClaimSequencerRewards } from "./useClaimSequencerRewards";
-export { useIsRewardsClaimable } from "./useIsRewardsClaimable";
export { useEjectionThreshold } from "./useEjectionThreshold";
export { useStakeHealth } from "./useStakeHealth";
export type { StakeHealth } from "./useStakeHealth";