* 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
* chore: improve assertions for deposits
* test: validation test passing
* test: withdrawal tests passing
* fix: test failures in CI
* fix: lint
* chore: add env variables
* fix: failing tests due to wallet service not running
* ci: pass automatic cnsent
* ci: init wallet in other directory
* ci: pass home string everywhere
* ci: config is already imported
* fix: failing deposit and nightly run
* ci: port over changes from pr run
* fix: failing network param tests
* fix: assertion
* fix: assertion one last time
Co-authored-by: Dexter <dexter.edwards93@gmail.com>
* [#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>
* delete token version of vega wallet serivce
* update use-user-vote to use new wallet service
* remove typo
* add further types for transaction submissions, add assets to withdraw page query
* update api client package to get generated types, adjust render logic of withdrawals page
* fix withdrawals list rendering
* update determine id function to not use nodejs buffer
* update service api client so it accepts new tx types
* remove stray logs and formatting
* make filtering erc20 assets the responsibility of the withdraw/deposit lib and not the app
* remove sha3 dep and use js-sha3 and ethers to determine ids
* use hook for fetching withdrawals form lib, add type policy to ensure withdrawal state is updated correctly
* fix: markets page feature
* add feature/scenarios for deposits
* add file for auction orders tests
* update feature file for deposits
* update feature tests for deposit
* add feature/scenarios for deposits
* add file for auction orders tests
* update feature file for deposits
* update feature tests for deposit
* add test for wallet not connected
* fix lint warning
* add mock ethereum provider to allow connecting ethereum wallet
* add basic test for required validation errors
* add aria for input errors for a11y and test targeting, expand submit form helper
* use mnemonic for private key generation, update tests to not submit and just assert validation message updates
* add chain id to cypress config
* update scenario
* remove feature file
* lint fix
* Update apps/trading-e2e/cypress.json
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* use mnemonic from github secret, update cypress.json env vars to match
* fix typo in test name and mnemonic env var
* update env variables
* update eth wallet mnemonic env
* Update libs/cypress/src/lib/eip1193-bridge.ts
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* remove unused reference to chainId
* update casing
* chainId reference from cypress.json
* Update apps/trading-e2e/cypress.json
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* Update apps/trading-e2e/src/support/step_definitions/deposits.step.ts
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* ignore a known failing step in the test due to wallet connected having approved status
* update testid
* update tests for deposits
* tidy up comments in custom cypress commands
* add comment about eager connect when running in cypress
* update deposits tests
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* Add additional checks before and after click
* Change back to use cy.contains
* Add assertion before click
* Change assert
* Remove force
* Add click
* Increase timeout
* move accounts and positions into own feature, add mock for accounts
* use length for expected number of columns
* combine trading feature tests into single trading-page.feature
* add orders scenario for trading page
* fix typo
* move related test cases for orders together
* add withdraw page
* add create page and withdraws lib with basic components
* add create withdrawal functionality, add withdrawal dialog
* re arrange pages so we have a pending page with a list of withdrawals and a withdraw page with the form
* handle withdrawal completion
* add withdraw dialog so withdraw is completed in one flow
* rename and arrange prop getter function to avoid use of any
* tidy up and make eth transaction and vega transaction hooks follow similar patterns
* make complete withdraw hook fetch approval, combine hooks for full flow
* delete unused file
* add accounts to query to get use max withdraw button
* use ag grid fro withdrawals list
* format amount in grid
* ensure party has id field for cache
* update to use t i18n function
* change complete status to better match values of WithdrawalStatus
* add asset lib file for type guard
* share queries for withdraws lib
* move web3 related hooks to the web3 lib and make web3 lib buildable
* add unit test for use-complete-withdraw
* add test for use-withdraw
* add e2e scenarios for withdrawals
* don render custom no withdrawals message and use ag grid prop
* make withdraw form take ethereum account as prop
* add test config, update withdraw form to handle min/max amounts, add unit test for withdraw form
* fix rendering 0 if not pending withdrawals
* use controlled component for select box
* tidy up async parts of tests, add test for withdraw-manager
* update withdraw dialog to use map for different tx states
* add fallback etherscan link, add test for withdraw-dialog.spec.tsx
* rename erc20 query in token app, change page structure to /withdraw and /withdrawals
* change linked vegawallet-service-api-client to newly published version
* ignore not implemented withdrawals e2e tests
* make vega tx pending and requested states the same, for now, until tx confirmation work is done
* Add some unit tests for determine-ids and remove0x
Neither are critical, but both are libs expected to be shared between
projects so some unit tests will hopefully ensure projects all have the
same expectations about how the functions act.
- Add 1 determine-ids test
- Add a few remove-0x tests
- Update determine-ids to use remove-0x
- Add a comment describing why i18n is what it is
* modify cache with client only field for tracking foreign chain progress
* move withdrawals-list to lib, add useWithdrawals hook
* add container component for withdrawals page
* add unit tests for withdrawals-table
* add some tests for use-withdrawals hook
* revert changes to generated files in other libs and apps
* update withdrawals scenarios
* resolve pr comments
* update page containers to use render prop rather than children
* delete unused files
* remove transaction dialog story
Co-authored-by: Ditmir-Vega <ditmir@vega.xyz>
Co-authored-by: Edd <edd@vega.xyz>
* 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
* Explorer-e2e files changed to ts
* Files on trading app converted
* Fix type error and update Cypress
* Remove Jquery type
* Update Cypress version in package.json
* 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>
* 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>