diff --git a/packages/ui-components/src/__tests__/ButtonVaultLink.test.ts b/packages/ui-components/src/__tests__/OrderVaultInfo.test.ts
similarity index 50%
rename from packages/ui-components/src/__tests__/ButtonVaultLink.test.ts
rename to packages/ui-components/src/__tests__/OrderVaultInfo.test.ts
index db251ca94..76bfec5b1 100644
--- a/packages/ui-components/src/__tests__/ButtonVaultLink.test.ts
+++ b/packages/ui-components/src/__tests__/OrderVaultInfo.test.ts
@@ -1,15 +1,13 @@
import { describe, it, expect, vi } from 'vitest';
import { render, screen } from '@testing-library/svelte';
-import ButtonVaultLink from '../lib/components/ButtonVaultLink.svelte';
-import * as navigation from '$app/navigation';
-import { userEvent } from '@testing-library/user-event';
+import OrderVaultInfo from '../lib/components/OrderVaultInfo.svelte';
import type { Vault } from '@rainlanguage/orderbook/js_api';
// Mock the $app/navigation module
vi.mock('$app/navigation', () => ({
goto: vi.fn()
}));
-describe('ButtonVaultLink', () => {
+describe('OrderVaultInfo', () => {
const mockVault = {
id: '123',
vaultId: '1000',
@@ -21,17 +19,15 @@ describe('ButtonVaultLink', () => {
}
} as unknown as Vault;
- it('should navigate to vault details page when clicked', async () => {
- render(ButtonVaultLink, {
+ it('should display vault name and address', () => {
+ render(OrderVaultInfo, {
props: {
tokenVault: mockVault,
subgraphName: 'test'
}
});
- const vaultLink = screen.getByTestId('vault-link');
- expect(vaultLink).toBeTruthy();
- await userEvent.click(vaultLink);
- expect(navigation.goto).toHaveBeenCalledWith(`/vaults/test-${mockVault.id}`);
+ expect(screen.getByText('Test Token (TEST)')).toBeInTheDocument();
+ expect(screen.getByText('1')).toBeInTheDocument();
});
});
diff --git a/packages/ui-components/src/lib/components/ButtonVaultLink.svelte b/packages/ui-components/src/lib/components/ButtonVaultLink.svelte
deleted file mode 100644
index 8e1a532c7..000000000
--- a/packages/ui-components/src/lib/components/ButtonVaultLink.svelte
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
-
goto(`/vaults/${subgraphName}-${tokenVault.id}`)}
->
-
-
-
- ID: {bigintStringToHex(tokenVault.vaultId)}
-
-
- {tokenVault.token.name} ({tokenVault.token.symbol})
-
-
-
- Balance
-
-
- {formatUnits(BigInt(tokenVault.balance), parseInt(tokenVault.token.decimals || '18'))}
-
-
-
-
-
diff --git a/packages/ui-components/src/lib/components/OrderOrVaultHash.svelte b/packages/ui-components/src/lib/components/OrderOrVaultHash.svelte
index 3c0a38d76..b3f8861bc 100644
--- a/packages/ui-components/src/lib/components/OrderOrVaultHash.svelte
+++ b/packages/ui-components/src/lib/components/OrderOrVaultHash.svelte
@@ -9,7 +9,8 @@
export let orderOrVault: OrderOrVault;
export let type: 'orders' | 'vaults';
export let network: string;
- export let updateActiveNetworkAndOrderbook: (subgraphName: string) => void;
+ export let updateActiveNetworkAndOrderbook: ((subgraphName: string) => void) | undefined =
+ undefined;
let hash;
@@ -20,12 +21,12 @@
diff --git a/packages/ui-components/src/lib/components/OrderVaultInfo.svelte b/packages/ui-components/src/lib/components/OrderVaultInfo.svelte
new file mode 100644
index 000000000..b453e44d0
--- /dev/null
+++ b/packages/ui-components/src/lib/components/OrderVaultInfo.svelte
@@ -0,0 +1,23 @@
+
+
+
+
+
+ {tokenVault.token.name} ({tokenVault.token.symbol})
+
+
+
+
+ Balance
+
+ {formatUnits(BigInt(tokenVault.balance), parseInt(tokenVault.token.decimals || '18'))}
+
+
+
diff --git a/packages/ui-components/src/lib/components/detail/OrderDetail.svelte b/packages/ui-components/src/lib/components/detail/OrderDetail.svelte
index 21f550cb4..a5d160686 100644
--- a/packages/ui-components/src/lib/components/detail/OrderDetail.svelte
+++ b/packages/ui-components/src/lib/components/detail/OrderDetail.svelte
@@ -7,7 +7,6 @@
import TanstackPageContentDetail from './TanstackPageContentDetail.svelte';
import CardProperty from '../CardProperty.svelte';
import { formatTimestampSecondsAsLocal } from '../../utils/time';
- import ButtonVaultLink from '../ButtonVaultLink.svelte';
import OrderVaultsVolTable from '../tables/OrderVaultsVolTable.svelte';
import { QKEY_ORDER } from '../../queries/keys';
import CodeMirrorRainlang from '../CodeMirrorRainlang.svelte';
@@ -21,6 +20,7 @@
import { page } from '$app/stores';
import DepositOrWithdrawButtons from './DepositOrWithdrawButtons.svelte';
import type { Config } from 'wagmi';
+ import OrderVaultInfo from '../OrderVaultInfo.svelte';
export let walletAddressMatchesOrBlank: Readable<(address: string) => boolean> | undefined =
undefined;
@@ -133,12 +133,9 @@
Input vaults
-
- Balance
-
{#each data.inputs || [] as vault}
-
+
{#if handleDepositOrWithdrawModal && $signerAddress === vault.owner && chainId}
Output vaults
-
- Balance
-
{#each data.outputs || [] as vault}
-
+
{#if handleDepositOrWithdrawModal && $wagmiConfig && $signerAddress === vault.owner && chainId}