* fix: deposits tests, also convert to basic cypress
* add new home tests which test redirect to trading page and markets page
* chore: replace portfolio page feature with raw cypress
* chore: replace market page feature with raw cypress tests
* chore: replace home page tests with global.ts for wallet connections
* chore: add raw cypress withdrawals tests with mocks
* fix: complete withdrawals prompt and add assertion for it
* chore: remove unnecessary cypress envs now that we are mocking assets
* chore: ignore lint errors temporarily
* chore: add mock for deposit page query, add wait for mocked queries to resolve
* fix: order of waiting for withdraw page query
* fix: validate vega wallet connection
* chore: remove rest of page objects and convert trading page feature to regular cypress
* fix: assertion on transaction dialog after withdrawal
* chore: split withdraw and withdrawals pages into separate files
* chore: split trading tests into own files, connect wallet once for deal ticket
* feat: convert home page tests to raw cypress
* fix: dont use localstorage for navigation, remove query params for tabs
* chore: lint
* fix: revert to using url rather than data test id
* chore: lint
* chore: remove arrow down ref from markets page object
* feat: [#456] select markets modal opening from market title
* feat: add a global zustand store for managing connect dialogs and landing dialog
* feat: add tests
* feat: [#456] make arrow configurable
* feat: [#456] make arrow configurable
* feat: [#456] trading tab active only on portfolio
* chore: update tranches
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix: [#445] shallow routing from index (#484)
* fix: [#445] shallow routing from index
* fix: [#445] use link to redirect to market - an attempt to fix reload
* fix: [#445] remove stretched link from last link - it makes all the other links unusable
* fix: [#445] fix lint on select market list - remove stretched link
* fix: [#456] put everything in landing folder to avoid conflicts
* fix: remove condition for cypress for auto connecting
* feat: [#456] add global store and fix href routing
* feat: [#456] add global store and fix href routing
* feat: [#456] add one more test
* feat: [#154] pull market data summary
* feat: [#154] move header above the trade grid child sections
* feat: [#154] flex oerflow and styling updates for market summary
* feat: [#154] fix styling
* fix: [154] fix cyp tests and styling
* fix: [#154] fix markets navigation cypress step
* fix: [#154] fix for navigate to markets link
* fix: failing tests from market change
* fix: [#154] set nav items based on market id and show last viewed market on landing
* fix: [#412] invalid decimal place on realised PnL field
* fix: [#154] remove redundant curly braces
* fix: [#154] show hyphen on volume if market data is undefined
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
Co-authored-by: dexturr <dexturr@users.noreply.github.com>
Co-authored-by: Joe <joe@vega.xyz>
* feat: add a global zustand store for managing connect dialogs and landing dialog
* feat: add tests
* fix: remove condition for cypress for auto connecting
* chore: fix assertion in tests for vega wallet text
* fix: add mock for landing dialog markets query
Co-authored-by: madalinaraicu <madalina@vegaprotocol.io>
* feat: add enviromnemt provider to the ui-toolkit
* chore: replace etherscan links
* chore: wrap trading app into environment provider
* chore: move env provider to react-helpers and wrap every app
* chore: remove more env variables from libs and replace them with the env hook
* fix: lint
* fix: update readme with correct formatting command
* fix: warnings for web3 hook
* fix: wrap warning in conditional, print message only when env keys are missing
* fix: incorrect condition on deposit manager fauceting param
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
* fix: cleanup token app ethereum config
* chore: add better error handling to the useEnvironment hook
* fix: lint
* fix: formatting
* fix: more lint
* fix: throw error if required env variables are missing
* fix: remove default eth chain id
* fix: add back etherscan testid to withdrawals links
* fix: imports
* fix: try using babel jest for smart contracts test transpilation
* fix: uniform ts syntax
* chore: set resolveJsonModule in base tsconfig
* fix: add missing data-ids for etherscan links
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
* feat: add positionDecimalPlaces prop to market query and regenerate types
* feat: add stepper to order amount input
* feat: convert fractions back to integers when submitting the order
* refactor: move order transformations into hooks
* fix: formatting
* fix: simplify toDecimal calculation
* fix: remove redundant function for size calculation
* fix: add new prop to e2e test mock generator
* feat: add tests for order validation
* fix: lint
* chore: add validation to the simple trading app order form
* fix: lint
* fix: [#445] shallow routing from index
* fix: [#445] use link to redirect to market - an attempt to fix reload
* fix: [#445] remove stretched link from last link - it makes all the other links unusable
* fix: [#445] fix lint on select market list - remove stretched link
* [#305] add initial landing dialog on markets page and fix some typos
* [#305] market-list utils and generate schema
* [#305] initial styling of the landing dialog and add arrows
* [#305] routing to markets and add hover and market list tests
* [#305] fix z-index on dialog overlay
* [#305] default market shoulde be oldest market that is currently trading in continuous mode
* [#305] refactor market-list library
* [#305] add arrow unit tests
* Update libs/market-list/src/lib/components/landing/landing-dialog.tsx
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* Update libs/market-list/src/lib/components/landing/select-market-list.tsx
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* Update libs/market-list/src/lib/components/landing/select-market-list.tsx
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* test: fix failing tests from homepage change
* [#305] sort by id after sorting by date
* test: increase timeout for failing tests in CI
* [#305] destructuring all over the place and some code tweaks, arrows and percentage changes
* [#305] update sparkline to show colour
* [#305] fix order of market list
* [#305] stretchedLink class plus a-tag href for navigation - accessibility updates
* [#305] use href only and remove log
* [#305] use bignumber.js for price calculations
* [#305] change to bg-white/50 on dark mode overlay as asked from UX
* [#305] change to bg-white/50 on dark mode overlay as asked from UX
* [#305] toLocaleString fix
* [#305] toLocaleString fix
* [#305] add price-change-cell and use formatNumber
* [#305] add extra test for select market list
* Update apps/trading/specs/index.spec.tsx
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* [#305] use memo, sort by date and id lodash
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
Co-authored-by: Joe <joe@vega.xyz>
* network parameters table with key value rows and syntax blobs only for json values
* inline row not for syntax
* add unit test for network param table
* add cypress test to verify if values are non-empty
* remove some comments
* rename formatNumber method to addDecimalsFormatNumber and simplify formatNumber
* remove duplicate expect line
* use AsyncRenderer and sort params asc
* refactor and add extra tests to check ordering and loading cases
* format big number params with addDecimals formatNumber
* Update apps/explorer/src/app/routes/network-parameters/network-parameters.tsx
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* capitalize and refactor tests
* missing ; caused formatting to fail
Co-authored-by: madalinaraicu <“madalina@raygroup.uk”>
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* change to setting envars rather than passing in via CLI
* update nx to latest patch version
* add env files for token-e2e, fix lint and ts errors
* move generate functions to mocs for trading e2e to avoid violating boundary rules
* add jsx compiler option for trading-e2e
* downgrade nextjs
* add testing-library to types declaration where required
* add fixture for markets query
* stub graphql requests
* re-add assertion for tx hash, stub command/sync requests
* refactor to get tests to run with trading page mocked queries
* add test wallet credentials
* split up markets page from trading page
* add portfolio page feature, add market page scenarios
* move hasOperationName helper to support/index
* fix home-page.feature
* fix missing feature step
* Minor changes to BDD steps
* Use in object syntax to get better type safety on hasOperationName helper function
* remove bypass placing orders env var and usage in tests
* use UI_Trading_Test wallet publick key in command/sync mock
* move public key to cypress env
* replace fixtures with generator functions
* colocate query generators with queries
* add custom commands, add index files
* fix dodgy merge, remove duplicate market page feature
* make tsconfig for cypress lib match
* update tsconfig for explorer e2e so commands using merge work
* revert trading step to js
Co-authored-by: Joe <joe@vega.xyz>
* add web3 provider using web3-react package
* add env setup, add guard for incorrect chain id
* add lib for web3-provider
* make wallet and ethereum connect dialogs look more consistent
* add setup tests file for jest-dom
* remove chain id config and just use appChainId prop, add disconnect button to invalid chainId state
* switch handling of connect dialog state to the consuming app
* rename web3-provider package to just web3
* envs for each environment so we can specify chainId
* make web3container enforce connection before rendering childen
* add web3 provider using web3-react package
* make web3container enforce connection before rendering childen
* add container for getting network params
* Move ethereum config query to web3 container
* add basic deposit form elements
* add queries required for deposits, add asset default
* add bridge contract and deposit transaction
* break txhash
* restrict etherscan link props, use etherscan link in transaction dialogs
* use smart-contracts-sdk
* split hooks and components into different files, fix find deposit logic, add styles and progress for tx dialogs
* fix text colors for dark mode
* improve tx dialogs, rename deposit query
* position use buttons, fix select validation
* fix type errors after not being in strict mode, add allowance checking
* add deposit-limits component, fix types now that strict mode is enabled
* make contract hooks have a single instance
* split out dialogs into separate files, fix icon alignment
* improve error types for use transaction hook, add number save min and max for the amount input
* add validation for ethereum and vega addresses
* add unit test for deposit form component
* add icons and shared dialog styles so it better matches order transaction dialog
* fix underline class, reset finalized deposit
* fix type imports, use i18n function, regen types
* only pass contract address to token contract hook
* add vega env, refactor so retrieving asset contract address logic isn't duplicated
* add faucet functionality, combine dialogs into single transaction-dialog
* combine rendering logic into single func of transaction dialog, rever contract hooks to just useMemo
* use to field rather than connected key
* fix props and imports in deposit form test
* share faucetable condition, pass it to token contract
* pass contracts in as params to hooks to avoid multiple contract instances
* refetch balance in wallet after deposit, add comments
* use hook state for tracking deposit via partyid, add test for use ethereum transaction hook
* add deposits lib
* add last smart contract sdk package
* fix asset import in test
* tidy up ts-ignores
* pass arg for faucetable token contract
* add provider url to env vars and use in place of infura id, also update web3-connector to only allow the chain permitted by the app
* add type guard for erc20 assets
* fix intent shadow helper function, use arrow function for isEthereumError
* update etherscan link to use env vars for url base
* rename deposit related hooks to indicate read vs write calls
* move ethereum error class and helpers to react-helpers
* add use-ethereum-read-contract hook to contain fetch logic
* remove unused import
* move validation to lib, add hex check for vega public key
* use map for transaction modal states, pass confirmed prop to transaction dialog for deposits
* remove unused import for classnames
* enable strict mode and fix resulting type errors
* fix print affected command
* remove assign-deep and use lodash/merge, fix some type errors after enabling strict mode
* 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