Skip to content

Commit 384afb9

Browse files
feat(packages): create new pegin vault (#550)
* feat(packages): create new pegin vault
1 parent 107f15e commit 384afb9

29 files changed

+600
-440
lines changed

services/vault/src/components/Overview/Deposits/DepositFormModal/index.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ import {
1212
} from "@babylonlabs-io/core-ui";
1313
import { useMemo, useState } from "react";
1414

15-
import { useVaultProviders } from "../../../../hooks/useVaultProviders";
15+
import type { VaultProvider } from "../../../../types/vaultProvider";
1616
import {
1717
btcStringToSatoshi,
1818
satoshiToBtcNumber,
1919
} from "../../../../utils/btcConversion";
20+
import { useVaultProviders } from "../hooks/useVaultProviders";
2021

2122
interface CollateralDepositModalProps {
2223
open: boolean;
@@ -182,7 +183,7 @@ export function CollateralDepositModal({
182183
</Text>
183184
</div>
184185
) : (
185-
vaultProviders.map((provider) => {
186+
vaultProviders.map((provider: VaultProvider) => {
186187
const shortId =
187188
provider.id.length > 14
188189
? `${provider.id.slice(0, 8)}...${provider.id.slice(-6)}`

services/vault/src/components/Overview/Deposits/index.tsx renamed to services/vault/src/components/Overview/Deposits/DepositOverview/index.tsx

Lines changed: 23 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,15 @@ import {
1212
import { useWalletConnect } from "@babylonlabs-io/wallet-connector";
1313
import { useMemo, useState } from "react";
1414

15-
import { useBTCWallet, useETHWallet } from "../../../context/wallet";
16-
import { useVaultDeposits } from "../../../hooks/useVaultDeposits";
17-
import { getPeginState } from "../../../models/peginStateMachine";
18-
import type { VaultActivity } from "../../../types/activity";
19-
import type { Deposit } from "../../../types/vault";
20-
15+
import { useBTCWallet, useETHWallet } from "../../../../context/wallet";
16+
import { useVaultDeposits } from "../../../../hooks/useVaultDeposits";
17+
import { getPeginState } from "../../../../models/peginStateMachine";
18+
import type { VaultActivity } from "../../../../types/activity";
19+
import type { Deposit } from "../../../../types/vault";
2120
import {
2221
useVaultDepositState,
2322
VaultDepositStep,
24-
} from "./state/VaultDepositState";
25-
import { useVaultRedeemState, VaultRedeemStep } from "./state/VaultRedeemState";
23+
} from "../state/VaultDepositState";
2624

2725
function EmptyState({
2826
onDeposit,
@@ -97,7 +95,6 @@ export function DepositOverview() {
9795
Array<string | number>
9896
>([]);
9997
const { goToStep: goToDepositStep } = useVaultDepositState();
100-
const { goToStep: goToRedeemStep, setRedeemData } = useVaultRedeemState();
10198

10299
const handleDeposit = () => {
103100
if (!isConnected) {
@@ -109,13 +106,6 @@ export function DepositOverview() {
109106
}
110107
};
111108

112-
const handleRedeem = () => {
113-
if (selectedDepositIds.length > 0) {
114-
setRedeemData(selectedDepositIds as string[]);
115-
goToRedeemStep(VaultRedeemStep.FORM);
116-
}
117-
};
118-
119109
// Show empty state when not connected OR when connected but no data
120110
if (!isConnected || deposits.length === 0) {
121111
return <EmptyState onDeposit={handleDeposit} isConnected={isConnected} />;
@@ -157,10 +147,13 @@ export function DepositOverview() {
157147
key: "status",
158148
header: "Status",
159149
render: (_value: unknown, row: Deposit) => {
160-
const statusMap = {
161-
Available: "inactive" as const,
162-
Pending: "pending" as const,
163-
"In Use": "active" as const,
150+
const statusMap: Record<
151+
"Available" | "Pending" | "In Use",
152+
"inactive" | "pending" | "active"
153+
> = {
154+
Available: "inactive",
155+
Pending: "pending",
156+
"In Use": "active",
164157
};
165158
return (
166159
<StatusBadge status={statusMap[row.status]} label={row.status} />
@@ -182,7 +175,8 @@ export function DepositOverview() {
182175
>
183176
{isConnected ? "Deposit" : "Connect Wallet"}
184177
</Button>
185-
<Button
178+
{/* TODO: Uncomment when redeem flow is ready */}
179+
{/* <Button
186180
variant="outlined"
187181
size="medium"
188182
rounded
@@ -191,17 +185,20 @@ export function DepositOverview() {
191185
aria-label="Redeem selected deposits"
192186
>
193187
Redeem
194-
</Button>
188+
</Button> */}
195189
</div>
196190

197191
{/* Desktop: Deposits Table, Mobile: Deposit Cards */}
198192
{isMobile ? (
199193
<div className="flex max-h-[60vh] flex-col gap-4 overflow-y-auto">
200194
{deposits.map((deposit) => {
201-
const statusMap = {
202-
Available: "inactive" as const,
203-
Pending: "pending" as const,
204-
"In Use": "active" as const,
195+
const statusMap: Record<
196+
"Available" | "Pending" | "In Use",
197+
"inactive" | "pending" | "active"
198+
> = {
199+
Available: "inactive",
200+
Pending: "pending",
201+
"In Use": "active",
205202
};
206203
return (
207204
<VaultDetailCard

0 commit comments

Comments
 (0)