205f4124f1
* 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 * split limit and market tickets into own files * add button radio component * revert dialog styles * move splash component to ui-toolkit, add story * convert intent to enum * Make button always type=button unless type prop is passed * inline filter logic for tif selector * add date-fns, add datetime to helpers * add order types to wallet package, make price undefined if order type is market * use enums in deal ticket logic * tidy up order state by moving submit and transaction hooks out of deal ticket * add comment for dialog styles * remove decimal from price input * add types package, delete old generated types from trading project * rename types package to graphql * update generate command to point to correct locations * fix use order submit test * BDD and navigation tests passing * Remove commented steps * Steps up to placing order * Date picker and date-fns update * Vega connector wallet tests * Passing up to request sent, updated date picker * Tests for sell orders and errors * Update market feature * Fix failing tests * Update wallet login * Readded tx hash assertion and remaining tests * Add CI wallet import * Update .github/workflows/cypress.yml Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com> * Resolved PR comments * Fix yaml error * Attempt to fix failing tests in CI * Run Cypress in Chrome * Add reload if public key error displayed * Fix wallet name * Add force click and waits * Increase timeout for deal ticket page * Removed network list from yaml and using input error id * Increase timeout to 8 seconds * Re add deleted test id Co-authored-by: Matthew Russell <mattrussell36@gmail.com> Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
28 lines
863 B
TypeScript
28 lines
863 B
TypeScript
import { FormGroup, Input } from '@vegaprotocol/ui-toolkit';
|
|
import type { Order } from './use-order-state';
|
|
import { formatForInput } from '@vegaprotocol/react-helpers';
|
|
|
|
interface ExpirySelectorProps {
|
|
order: Order;
|
|
onSelect: (expiration: Date | null) => void;
|
|
}
|
|
|
|
export const ExpirySelector = ({ order, onSelect }: ExpirySelectorProps) => {
|
|
const date = order.expiration ? new Date(order.expiration) : new Date();
|
|
const dateFormatted = formatForInput(date);
|
|
const minDate = formatForInput(date);
|
|
return (
|
|
<FormGroup label="Expiry time/date" labelFor="expiration">
|
|
<Input
|
|
data-testid="date-picker-field"
|
|
id="expiration"
|
|
name="expiration"
|
|
type="datetime-local"
|
|
value={dateFormatted}
|
|
onChange={(e) => onSelect(new Date(e.target.value))}
|
|
min={minDate}
|
|
/>
|
|
</FormGroup>
|
|
);
|
|
};
|