vega-frontend-monorepo/apps/trading/components/page-query-container/page-query-container.tsx

31 lines
821 B
TypeScript
Raw Normal View History

import type { OperationVariables, QueryHookOptions } from '@apollo/client';
import { useQuery } from '@apollo/client';
import type { DocumentNode } from 'graphql';
import type { ReactNode } from 'react';
2022-03-29 22:52:51 +00:00
import { AsyncRenderer } from '@vegaprotocol/ui-toolkit';
2022-03-02 01:01:10 +00:00
interface PageQueryContainerProps<TData, TVariables> {
query: DocumentNode;
options?: QueryHookOptions<TData, TVariables>;
render: (data: TData) => ReactNode;
2022-03-02 01:01:10 +00:00
}
export const PageQueryContainer = <TData, TVariables = OperationVariables>({
2022-03-02 01:01:10 +00:00
query,
options,
render,
2022-03-02 01:01:10 +00:00
}: PageQueryContainerProps<TData, TVariables>) => {
chore: stagnet3 api updates (#1321) * chore: update account, fills and orders subscriptions in data providers * chore: update account, fills and orders subscriptions in data providers * fixing console-lite * fixing types in general - regen * chore: update account, fills and orders subscriptions in data providers * fixed console-lite unit tests, uncommented quote name * chore: update account, fills and orders subscriptions in data providers * type aligning of assets and proposals * fixes liquidity data provider * fixed accounts build errors and unit tests * regen types, removed market name * regen types * fixed positions * chore: handle updates in derived market provider, update orders * removed taker fee mapping (renamed to maker fee) * chore: update account, fills and orders subscriptions in data providers * chore: update account, fills and orders subscriptions in data providers * chore: fix Order type * chore: fix possible null types * chore: revert order-list.stories.tsx * chore: derivedDataProvider fixes * fills unit tests fixes * orders unit tests fixes * added eslint ingore for generated files in liquidity * added unique key to the list element of simple market toolbar * changed main-branch-name to develop for pr workflows * removed redundant waitFor * increased test timeout to 10s * removed mocked response * chore: disable simple market list tests * chore: fix e2e projects mock types * feat: [subscription-update] - uncomment some console-lite tests * cypress: trading-accounts * chore: replace market candles with candlesConnection * chore: ignore gql errors, to be reverted after candlesConnectio n will be fixed * feat: [subscription-update] - improve wrongly renamed hook * feat: [subscription-update] - improve wrongly renamed hook * feat: [subscription-update] - improve wrongly renamed hook 3 * chore: add pagination hangdling to derived data provier * cypress: trading-fills * feat: [stagnet3 api update] - remove redundant command in tests * feat: [stagnet3 api update] - remove redundant command in tests * chore: fix trading orders e2e tests * chore: fix console lite e2e mocks * chore: fix market-trade tests * chore: use markets only in market selector, change Instrument cache policy * chore: fix market-selector tests * feat: [subscription-update] - improve ag grid conf for unit tests * feat: [subscription-update] - improve ag grid conf for unit tests * chore: fix candle types in console lite market mocks * chore: revert error policy ignore * chore: revert jest timeout * chore: remove unused AccountFields * chore: revert remove unused AccountFields * chore: simplify node subscription probe * chore: remove unused generated types in candles-chart * chore: improve useMarketsList mock * feat: [subscription-update] - increase jest timeout * feat: [subscription-update] - fix jest timeout * feat: [subscription-update] - fix jest timeout * feat: [subscription-update] - try to fix failing test again * chore: fix candles-chart types * feat: [subscription-update] - temporary skip failing test * feat: [subscription-update] - temporary skip failing test * feat: [subscription-update] - temporary skip failing test * feat: [subscription-update] - fix failling int test * feat: [subscription-update] - try to restore commented unit tests * feat: [subscription-update] - try to restore commented unit tests * feat: [subscription-update] - improve fixed unit tests Co-authored-by: asiaznik <artur@vegaprotocol.io> Co-authored-by: maciek <maciek@vegaprotocol.io>
2022-09-20 15:24:28 +00:00
const { data, loading, error } = useQuery<TData, TVariables>(query, {
...options,
});
2022-03-02 01:01:10 +00:00
Feat/84 Order list (#89) * scaffold dealticket package, remove trading views from react-helpers * add deal ticket component, add intent utils, expand dialog and form group styles * add splash component, show market not found message if market doesnt exist * tidy up error handling * add handleError method for vega tx hook * add better testname for provider test, flesh out tests a bit more for deal ticket * Add unit tests for useVegaTransaction and useOrderSubmit hooks * add wrapper component for order dialog styles * add vega styled loader to ui toolkit and use in order dialog * add title prop to order dialog * add button radio component * revert dialog styles * move splash component to ui-toolkit, add story * convert intent to enum * add date-fns, add datetime to helpers * add order types to wallet package, make price undefined if order type is market * tidy up order state by moving submit and transaction hooks out of deal ticket * add types package, delete old generated types from trading project * rename types package to graphql * add order list container and order list component * add test setup for useOrders * add test for use-orders hook * tidy unnecessary diff * regen types and use them in order-list, also change to use applytransaction hook for orderlist grid * make order table columns resizable * make market table not have highlightable cells, use splash for orders errors and loading states, unit test for orderlist container * add tests for order list table * show rejection reason and expires at depending on status and tif * add decimal places to query * only update row if data has changed, add test coverage * add setup tests file to avoid importing jest-dom for every test, add async-renderer component to handle fetch ui logic * install all of lodash but import individually to get tree shaking * add setup tests file for orderlist package * add missing fields to use orders spec mock order * fix act warnings in index page test * fix casing of app import * remove react-singleton-hook, simplify side formatting * fix linting errors
2022-03-23 19:08:10 +00:00
return (
<AsyncRenderer<TData>
loading={loading}
error={error}
data={data}
render={render}
/>
Feat/84 Order list (#89) * scaffold dealticket package, remove trading views from react-helpers * add deal ticket component, add intent utils, expand dialog and form group styles * add splash component, show market not found message if market doesnt exist * tidy up error handling * add handleError method for vega tx hook * add better testname for provider test, flesh out tests a bit more for deal ticket * Add unit tests for useVegaTransaction and useOrderSubmit hooks * add wrapper component for order dialog styles * add vega styled loader to ui toolkit and use in order dialog * add title prop to order dialog * add button radio component * revert dialog styles * move splash component to ui-toolkit, add story * convert intent to enum * add date-fns, add datetime to helpers * add order types to wallet package, make price undefined if order type is market * tidy up order state by moving submit and transaction hooks out of deal ticket * add types package, delete old generated types from trading project * rename types package to graphql * add order list container and order list component * add test setup for useOrders * add test for use-orders hook * tidy unnecessary diff * regen types and use them in order-list, also change to use applytransaction hook for orderlist grid * make order table columns resizable * make market table not have highlightable cells, use splash for orders errors and loading states, unit test for orderlist container * add tests for order list table * show rejection reason and expires at depending on status and tif * add decimal places to query * only update row if data has changed, add test coverage * add setup tests file to avoid importing jest-dom for every test, add async-renderer component to handle fetch ui logic * install all of lodash but import individually to get tree shaking * add setup tests file for orderlist package * add missing fields to use orders spec mock order * fix act warnings in index page test * fix casing of app import * remove react-singleton-hook, simplify side formatting * fix linting errors
2022-03-23 19:08:10 +00:00
);
2022-03-02 01:01:10 +00:00
};