fix(accounts): show breakdown in view as user mode (#3021)
This commit is contained in:
parent
6b280d8a70
commit
cc6ea6176a
@ -40,9 +40,9 @@ function App() {
|
|||||||
<NetworkLoader cache={DEFAULT_CACHE_CONFIG}>
|
<NetworkLoader cache={DEFAULT_CACHE_CONFIG}>
|
||||||
<AnnouncementBanner>
|
<AnnouncementBanner>
|
||||||
<div className="font-alpha calt uppercase text-center text-lg text-white">
|
<div className="font-alpha calt uppercase text-center text-lg text-white">
|
||||||
<span className="pr-4">Mainnet sim 2 coming in March!</span>
|
<span className="pr-4">Mainnet sim 2 is live!</span>
|
||||||
<ExternalLink href="https://fairground.wtf/">
|
<ExternalLink href="https://fairground.wtf/">
|
||||||
Learn more
|
Come help stress test the network
|
||||||
</ExternalLink>
|
</ExternalLink>
|
||||||
</div>
|
</div>
|
||||||
</AnnouncementBanner>
|
</AnnouncementBanner>
|
||||||
|
@ -21,8 +21,10 @@ export function TemplateSidebar({ children, sidebar }: TemplateSidebarProps) {
|
|||||||
<>
|
<>
|
||||||
<AnnouncementBanner>
|
<AnnouncementBanner>
|
||||||
<div className="font-alpha calt uppercase text-center text-lg text-white">
|
<div className="font-alpha calt uppercase text-center text-lg text-white">
|
||||||
<span className="pr-4">Mainnet sim 2 coming in March!</span>
|
<span className="pr-4">Mainnet sim 2 is live!</span>
|
||||||
<ExternalLink href="https://fairground.wtf/">Learn more</ExternalLink>
|
<ExternalLink href="https://fairground.wtf/">
|
||||||
|
Come help stress test the network
|
||||||
|
</ExternalLink>
|
||||||
</div>
|
</div>
|
||||||
</AnnouncementBanner>
|
</AnnouncementBanner>
|
||||||
<Nav navbarTheme={VEGA_ENV === Networks.TESTNET ? 'yellow' : 'dark'} />
|
<Nav navbarTheme={VEGA_ENV === Networks.TESTNET ? 'yellow' : 'dark'} />
|
||||||
|
@ -125,9 +125,9 @@ describe('market info is displayed', { tags: '@smoke' }, () => {
|
|||||||
validateMarketDataRow(1, 'Long', '0.008508132993273576');
|
validateMarketDataRow(1, 'Long', '0.008508132993273576');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('price monitoring trigger displayed', () => {
|
it('price monitoring bounds displayed', () => {
|
||||||
cy.getByTestId(marketTitle).contains('Price monitoring bounds 1').click();
|
cy.getByTestId(marketTitle).contains('Price monitoring bounds 1').click();
|
||||||
cy.get('p.col-span-1').contains('100% probability of trading');
|
cy.get('p.col-span-1').contains('99.99999% probability price bounds');
|
||||||
cy.get('p.col-span-1').contains('Within 43,200 seconds');
|
cy.get('p.col-span-1').contains('Within 43,200 seconds');
|
||||||
validateMarketDataRow(0, 'Highest Price', '7.97323 ');
|
validateMarketDataRow(0, 'Highest Price', '7.97323 ');
|
||||||
validateMarketDataRow(1, 'Lowest Price', '6.54701 ');
|
validateMarketDataRow(1, 'Lowest Price', '6.54701 ');
|
||||||
|
@ -29,7 +29,7 @@ export const Banner = () => {
|
|||||||
<Icon name="cross" className="w-6 h-6" ariaLabel="dismiss" />
|
<Icon name="cross" className="w-6 h-6" ariaLabel="dismiss" />
|
||||||
</button>
|
</button>
|
||||||
<div>
|
<div>
|
||||||
<span className="pr-4">Mainnet sim 2 coming in March!</span>
|
<span className="pr-4">Mainnet sim 2 is live!</span>
|
||||||
<ExternalLink href="https://fairground.wtf/">Learn more</ExternalLink>
|
<ExternalLink href="https://fairground.wtf/">Learn more</ExternalLink>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -68,6 +68,32 @@ describe('AccountsTable', () => {
|
|||||||
'1,256.00',
|
'1,256.00',
|
||||||
'Breakdown',
|
'Breakdown',
|
||||||
'Deposit',
|
'Deposit',
|
||||||
|
'Withdraw',
|
||||||
|
];
|
||||||
|
cells.forEach((cell, i) => {
|
||||||
|
expect(cell).toHaveTextContent(expectedValues[i]);
|
||||||
|
});
|
||||||
|
const rows = await screen.findAllByRole('row');
|
||||||
|
expect(rows.length).toBe(6);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should apply correct formatting in view as user mode', async () => {
|
||||||
|
await act(async () => {
|
||||||
|
render(
|
||||||
|
<AccountTable
|
||||||
|
rowData={singleRowData}
|
||||||
|
onClickAsset={() => null}
|
||||||
|
isReadOnly={true}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
});
|
||||||
|
const cells = await screen.findAllByRole('gridcell');
|
||||||
|
const expectedValues = [
|
||||||
|
'tBTC',
|
||||||
|
'1,256.00',
|
||||||
|
'1,256.00',
|
||||||
|
'1,256.00',
|
||||||
|
'Breakdown',
|
||||||
];
|
];
|
||||||
cells.forEach((cell, i) => {
|
cells.forEach((cell, i) => {
|
||||||
expect(cell).toHaveTextContent(expectedValues[i]);
|
expect(cell).toHaveTextContent(expectedValues[i]);
|
||||||
|
@ -154,7 +154,7 @@ export const AccountTable = forwardRef<AgGridReact, AccountTableProps>(
|
|||||||
}
|
}
|
||||||
maxWidth={300}
|
maxWidth={300}
|
||||||
/>
|
/>
|
||||||
{!props.isReadOnly && (
|
{
|
||||||
<AgGridColumn
|
<AgGridColumn
|
||||||
colId="breakdown"
|
colId="breakdown"
|
||||||
headerName=""
|
headerName=""
|
||||||
@ -193,29 +193,33 @@ export const AccountTable = forwardRef<AgGridReact, AccountTableProps>(
|
|||||||
{t('Breakdown')}
|
{t('Breakdown')}
|
||||||
</ButtonLink>
|
</ButtonLink>
|
||||||
<span className="mx-1" />
|
<span className="mx-1" />
|
||||||
<ButtonLink
|
{!props.isReadOnly && (
|
||||||
data-testid="deposit"
|
<ButtonLink
|
||||||
onClick={() => {
|
data-testid="deposit"
|
||||||
onClickDeposit && onClickDeposit(data.asset.id);
|
onClick={() => {
|
||||||
}}
|
onClickDeposit && onClickDeposit(data.asset.id);
|
||||||
>
|
}}
|
||||||
{t('Deposit')}
|
>
|
||||||
</ButtonLink>
|
{t('Deposit')}
|
||||||
|
</ButtonLink>
|
||||||
|
)}
|
||||||
<span className="mx-1" />
|
<span className="mx-1" />
|
||||||
<ButtonLink
|
{!props.isReadOnly && (
|
||||||
data-testid="withdraw"
|
<ButtonLink
|
||||||
onClick={() =>
|
data-testid="withdraw"
|
||||||
onClickWithdraw && onClickWithdraw(data.asset.id)
|
onClick={() =>
|
||||||
}
|
onClickWithdraw && onClickWithdraw(data.asset.id)
|
||||||
>
|
}
|
||||||
{t('Withdraw')}
|
>
|
||||||
</ButtonLink>
|
{t('Withdraw')}
|
||||||
|
</ButtonLink>
|
||||||
|
)}
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
)}
|
}
|
||||||
</AgGrid>
|
</AgGrid>
|
||||||
<Dialog size="medium" open={openBreakdown} onChange={setOpenBreakdown}>
|
<Dialog size="medium" open={openBreakdown} onChange={setOpenBreakdown}>
|
||||||
<div className="h-[35vh] w-full m-auto flex flex-col">
|
<div className="h-[35vh] w-full m-auto flex flex-col">
|
||||||
|
@ -267,24 +267,24 @@ const FeesBreakdownTooltip = ({
|
|||||||
data-testid="fee-breakdown-tooltip"
|
data-testid="fee-breakdown-tooltip"
|
||||||
className="max-w-sm border border-neutral-600 bg-neutral-100 dark:bg-neutral-800 px-4 py-2 z-20 rounded text-sm break-word text-black dark:text-white"
|
className="max-w-sm border border-neutral-600 bg-neutral-100 dark:bg-neutral-800 px-4 py-2 z-20 rounded text-sm break-word text-black dark:text-white"
|
||||||
>
|
>
|
||||||
<dl className="grid grid-cols-2 gap-x-2">
|
<dl className="grid grid-cols-3 gap-x-1">
|
||||||
<dt>{t('Infrastructure fee')}</dt>
|
<dt className="col-span-1">{t('Infrastructure fee')}</dt>
|
||||||
<dd className="text-right">
|
<dd className="text-right col-span-2">
|
||||||
{addDecimalsFormatNumber(feesObj.infrastructureFee, asset.decimals)}{' '}
|
{addDecimalsFormatNumber(feesObj.infrastructureFee, asset.decimals)}{' '}
|
||||||
{asset.symbol}
|
{asset.symbol}
|
||||||
</dd>
|
</dd>
|
||||||
<dt>{t('Liquidity fee')}</dt>
|
<dt className="col-span-1">{t('Liquidity fee')}</dt>
|
||||||
<dd className="text-right">
|
<dd className="text-right col-span-2">
|
||||||
{addDecimalsFormatNumber(feesObj.liquidityFee, asset.decimals)}{' '}
|
{addDecimalsFormatNumber(feesObj.liquidityFee, asset.decimals)}{' '}
|
||||||
{asset.symbol}
|
{asset.symbol}
|
||||||
</dd>
|
</dd>
|
||||||
<dt>{t('Maker fee')}</dt>
|
<dt className="col-span-1">{t('Maker fee')}</dt>
|
||||||
<dd className="text-right">
|
<dd className="text-right col-span-2">
|
||||||
{addDecimalsFormatNumber(feesObj.makerFee, asset.decimals)}{' '}
|
{addDecimalsFormatNumber(feesObj.makerFee, asset.decimals)}{' '}
|
||||||
{asset.symbol}
|
{asset.symbol}
|
||||||
</dd>
|
</dd>
|
||||||
<dt>{t('Total fees')}</dt>
|
<dt className="col-span-1">{t('Total fees')}</dt>
|
||||||
<dd className="text-right">{valueFormatted}</dd>
|
<dd className="text-right col-span-2">{valueFormatted}</dd>
|
||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
@ -317,8 +317,10 @@ export const Info = ({ market, onSelect }: InfoProps) => {
|
|||||||
<div className="text-xs">
|
<div className="text-xs">
|
||||||
<div className="grid grid-cols-2 text-xs mb-4">
|
<div className="grid grid-cols-2 text-xs mb-4">
|
||||||
<p className="col-span-1">
|
<p className="col-span-1">
|
||||||
{t('%s% probability of trading', [
|
{t('%s probability price bounds', [
|
||||||
formatNumber(trigger.probability * 100),
|
formatNumberPercentage(
|
||||||
|
new BigNumber(trigger.probability).times(100)
|
||||||
|
),
|
||||||
])}
|
])}
|
||||||
</p>
|
</p>
|
||||||
<p className="col-span-1 text-right">
|
<p className="col-span-1 text-right">
|
||||||
@ -338,6 +340,11 @@ export const Info = ({ market, onSelect }: InfoProps) => {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
<p className="mt-4">
|
||||||
|
{t('Results in %s seconds auction if breached', [
|
||||||
|
trigger.auctionExtensionSecs.toString(),
|
||||||
|
])}
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
),
|
),
|
||||||
};
|
};
|
||||||
|
@ -166,7 +166,7 @@ export const OrderListManager = ({
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{hasActiveOrder && (
|
{!isReadOnly && hasActiveOrder && (
|
||||||
<div className="w-full dark:bg-black bg-white absolute bottom-0 h-auto flex justify-end px-[11px] py-2">
|
<div className="w-full dark:bg-black bg-white absolute bottom-0 h-auto flex justify-end px-[11px] py-2">
|
||||||
<Button
|
<Button
|
||||||
size="sm"
|
size="sm"
|
||||||
|
@ -73,7 +73,7 @@ export const DropdownMenuContent = forwardRef<
|
|||||||
<DropdownMenuPrimitive.Content
|
<DropdownMenuPrimitive.Content
|
||||||
{...contentProps}
|
{...contentProps}
|
||||||
ref={forwardedRef}
|
ref={forwardedRef}
|
||||||
className="min-w-[290px] bg-neutral-200 dark:bg-white p-2 rounded"
|
className="min-w-[290px] bg-neutral-200 dark:bg-white p-2 rounded text-black"
|
||||||
align="start"
|
align="start"
|
||||||
sideOffset={10}
|
sideOffset={10}
|
||||||
/>
|
/>
|
||||||
|
Loading…
Reference in New Issue
Block a user