Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,5 @@
"husky": "catalog:",
"rev-dep": "catalog:",
"turbo": "catalog:"
},
"pnpm": {
"patchedDependencies": {
"purify-ts": "patches/purify-ts.patch",
"@stakekit/rainbowkit@2.2.11": "patches/@stakekit__rainbowkit@2.2.11.patch"
}
}
}
2 changes: 1 addition & 1 deletion packages/widget/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@
"@cosmos-kit/keplr": "catalog:",
"@cosmos-kit/leap": "catalog:",
"@cosmos-kit/walletconnect": "catalog:",
"@effect/atom-react": "catalog:",
"@effect/openapi-generator": "catalog:",
"@effect/platform-node": "catalog:",
"@faker-js/faker": "catalog:",
Expand Down Expand Up @@ -117,7 +118,6 @@
"@vitejs/plugin-react": "catalog:",
"@vitest/browser-playwright": "catalog:",
"@xstate/react": "catalog:",
"@xstate/store": "catalog:",
"autoprefixer": "catalog:",
"babel-plugin-react-compiler": "catalog:",
"bignumber.js": "catalog:",
Expand Down
115 changes: 55 additions & 60 deletions packages/widget/src/Dashboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import { PendingCompletePage } from "./pages/complete/pages/pending-complete.pag
import { StakeCompletePage } from "./pages/complete/pages/stake-complete.page";
import { UnstakeCompletePage } from "./pages/complete/pages/unstake-complete.page";
import { EarnPageContextProvider } from "./pages/details/earn-page/state/earn-page-context";
import { EarnPageStateUsageBoundaryProvider } from "./pages/details/earn-page/state/earn-page-state-context";
import { StakeReviewPage } from "./pages/review";
import { PendingReviewPage } from "./pages/review/pages/pending-review.page";
import { UnstakeReviewPage } from "./pages/review/pages/unstake-review.page";
Expand Down Expand Up @@ -40,77 +39,73 @@ export const Dashboard = () => {

return (
<DashboardProvider>
<EarnPageStateUsageBoundaryProvider>
<EarnPageContextProvider
registerFooterButton={registerEarnFooterButton}
>
<Routes>
<Route element={<DashboardWrapper />}>
{/* Earn Tab */}
<Route element={<OverviewPage />}>
<Route index element={<EarnPageContent />} />
<EarnPageContextProvider registerFooterButton={registerEarnFooterButton}>
<Routes>
<Route element={<DashboardWrapper />}>
{/* Earn Tab */}
<Route element={<OverviewPage />}>
<Route index element={<EarnPageContent />} />

<Route element={<ConnectedCheck />}>
<Route path="review" element={<StakeReviewPage />} />
<Route path="steps" element={<StakeStepsPage />} />
<Route path="complete" element={<StakeCompletePage />} />
</Route>
<Route element={<ConnectedCheck />}>
<Route path="review" element={<StakeReviewPage />} />
<Route path="steps" element={<StakeStepsPage />} />
<Route path="complete" element={<StakeCompletePage />} />
</Route>
</Route>

{/* Manage Tab */}
<Route path="manage" element={<ManagePage />} />
{/* Manage Tab */}
<Route path="manage" element={<ManagePage />} />

{/* Position Details */}
<Route
path="positions/:integrationId/:balanceId"
element={<PositionDetailsPage />}
>
<Route index element={<PositionDetailsStakeActions />} />
{/* Position Details */}
<Route
path="positions/:integrationId/:balanceId"
element={<PositionDetailsPage />}
>
<Route index element={<PositionDetailsStakeActions />} />

{/* Staking */}
<Route path="stake">
<Route index element={<PositionDetailsStakeActions />} />
<Route path="review" element={<StakeReviewPage />} />
<Route path="steps" element={<StakeStepsPage />} />
<Route path="complete" element={<StakeCompletePage />} />
</Route>
{/* Staking */}
<Route path="stake">
<Route index element={<PositionDetailsStakeActions />} />
<Route path="review" element={<StakeReviewPage />} />
<Route path="steps" element={<StakeStepsPage />} />
<Route path="complete" element={<StakeCompletePage />} />
</Route>

<Route
path="select-validator/:pendingActionType"
element={<PositionDetailsPage />}
/>
<Route
path="select-validator/:pendingActionType"
element={<PositionDetailsPage />}
/>

{/* Unstaking */}
<Route path="unstake">
<Route index element={<PositionDetailsActions />} />
<Route path="review" element={<UnstakeReviewPage />} />
<Route path="steps" element={<UnstakeStepsPage />} />
<Route path="complete" element={<UnstakeCompletePage />} />
</Route>
{/* Unstaking */}
<Route path="unstake">
<Route index element={<PositionDetailsActions />} />
<Route path="review" element={<UnstakeReviewPage />} />
<Route path="steps" element={<UnstakeStepsPage />} />
<Route path="complete" element={<UnstakeCompletePage />} />
</Route>

{/* Pending Actions */}
<Route path="pending-action">
<Route path="review" element={<PendingReviewPage />} />
<Route path="steps" element={<PendingStepsPage />} />
<Route path="complete" element={<PendingCompletePage />} />
</Route>
{/* Pending Actions */}
<Route path="pending-action">
<Route path="review" element={<PendingReviewPage />} />
<Route path="steps" element={<PendingStepsPage />} />
<Route path="complete" element={<PendingCompletePage />} />
</Route>
</Route>

{/* Rewards Tab */}
{/* <Route path="rewards" element={<RewardsTabPage />} /> */}
{/* Rewards Tab */}
{/* <Route path="rewards" element={<RewardsTabPage />} /> */}

{/* Activity Tab */}
<Route path="activity" element={<ActivityTabPage />}>
<Route index element={<ActivityDetailsPage />} />
<Route
path=":pendingActionType/steps"
element={<ActivityStepsPage />}
/>
</Route>
{/* Activity Tab */}
<Route path="activity" element={<ActivityTabPage />}>
<Route index element={<ActivityDetailsPage />} />
<Route
path=":pendingActionType/steps"
element={<ActivityStepsPage />}
/>
</Route>
</Routes>
</EarnPageContextProvider>
</EarnPageStateUsageBoundaryProvider>
</Route>
</Routes>
</EarnPageContextProvider>

<GlobalModals />
</DashboardProvider>
Expand Down
68 changes: 0 additions & 68 deletions packages/widget/src/common/get-token-balances.ts

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import type { PropsWithChildren } from "react";
import { useMemo, useState } from "react";
import { useTranslation } from "react-i18next";
import type { Validator, ValidatorKey } from "../../../domain/types/validators";
import type { Yield } from "../../../domain/types/yields";
import type { ValidatorDto } from "../../../generated/api/yield";
import { Box } from "../../atoms/box";
import type { SelectModalProps } from "../../atoms/select-modal";
import { SelectModal } from "../../atoms/select-modal";
Expand All @@ -16,13 +16,13 @@ type SelectValidatorProps = PropsWithChildren<
SelectModalProps,
"isLoading" | "onClose" | "onOpen" | "state" | "trigger"
> & {
selectedValidators: Set<ValidatorDto["address"]>;
onItemClick: (item: ValidatorDto) => void;
selectedValidators: Set<ValidatorKey>;
onItemClick: (item: Validator) => void;
onViewMoreClick?: () => void;
onLoadMore?: () => void;
hasMore?: boolean;
isLoadingMore?: boolean;
validators: ValidatorDto[];
validators: Validator[];
selectedStake: Yield;
multiSelect: boolean;
} & (
Expand Down Expand Up @@ -71,7 +71,7 @@ export const SelectValidator = ({
const showExpandedValidators = multiSelect || hasRequestedMoreValidators;

const data = useMemo<{
tableData: ValidatorDto[];
tableData: Validator[];
groupedItems: GroupedItem[];
groupCounts: number[];
}>(() => {
Expand Down Expand Up @@ -106,11 +106,11 @@ export const SelectValidator = ({
},
{
preferred: {
items: [] as ValidatorDto[],
items: [] as Validator[],
label: t("details.validators_preferred"),
},
other: {
items: [] as ValidatorDto[],
items: [] as Validator[],
label: t("details.validators_other"),
},
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import type { ComponentProps } from "react";
import { memo } from "react";
import { useTranslation } from "react-i18next";
import type { Validator, ValidatorKey } from "../../../domain/types/validators";
import type { Yield } from "../../../domain/types/yields";
import type { ValidatorDto } from "../../../generated/api/yield";
import { vars } from "../../../styles/theme/contract.css";
import {
getRewardRateFormatted,
Expand Down Expand Up @@ -31,7 +31,7 @@ import {
validatorVirtuosoContainer,
} from "./styles.css";

export type GroupedItem = { items: ValidatorDto[]; label: string };
export type GroupedItem = { items: Validator[]; label: string };

export const SelectValidatorList = ({
multiSelect,
Expand All @@ -44,11 +44,11 @@ export const SelectValidatorList = ({
tableData,
}: {
multiSelect: boolean;
selectedValidators: Set<ValidatorDto["address"]>;
onItemClick: (item: ValidatorDto) => void;
selectedValidators: Set<ValidatorKey>;
onItemClick: (item: Validator) => void;
onViewMoreClick: () => void;
selectedStake: Yield;
tableData: ValidatorDto[];
tableData: Validator[];
groupedItems: GroupedItem[];
groupCounts: number[];
}) => {
Expand Down Expand Up @@ -100,7 +100,7 @@ export const SelectValidatorList = ({

const status = item.status;

const itemSelected = selectedValidators.has(item.address);
const itemSelected = selectedValidators.has(item.key);

const _onItemClick: ComponentProps<
typeof SelectModalItem
Expand All @@ -115,7 +115,7 @@ export const SelectValidatorList = ({
<SelectModalItemContainer>
<SelectModalItem
onItemClick={_onItemClick}
testId={item.address}
testId={item.key}
selected={!multiSelect && itemSelected}
>
<Box flex={1} display="flex" flexDirection="column" gap="3">
Expand All @@ -135,7 +135,7 @@ export const SelectValidatorList = ({
justifyContent="center"
alignItems="center"
>
{selectedValidators.has(item.address) ? (
{itemSelected ? (
<CheckSteps hw={16} color={vars.color.white} />
) : null}
</Box>
Expand Down
2 changes: 0 additions & 2 deletions packages/widget/src/domain/types/action.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ export type TransactionStatus = TransactionDto["status"];

export type YieldCreateActionDto = YieldCreateActionDtoGenerated;
export type YieldCreateManageActionDto = YieldCreateManageActionDtoGenerated;
export type YieldActionDto = ActionDto;
export type YieldTransactionDto = TransactionDto;
type TransactionGasEstimate = {
amount: string;
gasLimit?: string;
Expand Down
Loading