* 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
nx affected `head` was set to `master` instead of `HEAD`, which cause every commit to detect a change and deploy.
- Fix head argument for nx affected command
* fix loader size, balance refresh after faucet and string interpolation of market name in order dialog
* fix ts errors
* remove ts-ignores
* remove 0x from pubkey before starting sub for deposit event
* add remove0x helper
* 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>
Feedback on the initial PR pointed out the flaw that just assuming
that the previous commit was HEAD~1 would be inaccurate, so this
rewrite instead fetches the appropriate commit for each Fleek project,
does the appropriate nx affected call, and triggers a deploy.
This allows for each project to independently get deployed only when
there is a change that affects it on master.
The script is written to have no dependencies, and lazily uses curl
instead of node http. It feels a bit icky, but for a build script feels
reasonable. Also as the header comment notes, it seems like an nx build
script would be more appropriate, but because it needs the appropriate
commit for each project, I resorted to a shell script.
- Rewrite ./tools/ipfs-deploy.js
* initial commit for adding chartt lib with pennant chart
* add pennant package, fix dynamic import of chart
* use updated pennant library
* Create separate chart and depth-chart libs
* Remove leftover generated files
* Use more targeted queries and subscriptions
* Fix jestConfig value for depth-chart
* Add jest-canvas-mock
* Refactor updateDepthUpdate function
* Add updateDpethUpdate test
* Add jest-canvas-mock to chart tests
* Avoid using any type in test
* Use correct casing for gql queries and subscriptions
* Make ButtonRadio generic in option value type
* Add padding and margin to chart container
* Remove unused subscriptions and methods from data source
* Use correct React imports
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
* add trades lib with data provider
* add trades table and cell color logic
* ensure we only show last 50 rows
* add test for table columns and formatting
* update trades table to get cells using col-id
* fix linting
* use default function param for fetchpolicy
* 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
* add small/large options for loader
* switch order-list lib to use orders data provider
* prepare incoming orders for table insertion
* delete dupe file, fix test
* ignore sentry-cli from netlify build
* move sentry/nextjs to dev deps
* exclude sentry-cli from netlify
* Updated tests to pass when there are no txs
* Add slack command to send messages to slack
* Re add library for Cypress
* Resolved PR comments
* Added TODOs for clarity
* Increase wait for block to update
* Increase to 3 seconds
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
* 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>