* moved TFE into monorepo with some remaining errors
* moved TFE into monorepo with some remaining errors - further files
* add tailwind config, use etherscan link from toolkit, use web3 from lib
* make app compatible with react router 6
* remove vega keys from app state and use from state from lib
* comment out crowdin script injection
* convert all buttons to use ui toolkit buttons
* remove blueprint inputs and selects and replace with ui-toolkit
* remove css resets
* tidy button styles in wallet replace splash-screen with version from ui-toolkit
* various style fixes
* tidy up proposal list
* add valid key to route children
* Set custom port and config for token e2e tests
* added env title e2e test
* started some styling fixes - nav and home route
* Added 'h-auto' to button height regex check
* Added 'h-auto' to regex check to allow desired TFE button height
* Removed scss and used tailwind for heading component
* Woff files not woof :)
* Proper nav h1 font size
* Wallet card headings
* Vega wallet button styles
* Set project to use static hosted alpha font (cors being fixed separately)
* Eth wallet button styles (unfinished)
* Home route styles
* Staking route styles and title calculation
* Rewards route styles
* Vega wallet container button style
* Eth wallet disconnect button
* Connect dialog title colour and spacing
* Splash screen layout
* Fixed a bunch of linting errors
* Used 'Object.entries' instead of 'Array.from' to create iterable from object in 'use-search-params'
* Removed use of 'any' from 'use-search-params'
* Better simplification of 'use-search-params'
* Removed package.json duplication errors, set most up-to-date version from duplicate options
* Elvis for possible undefined in 'use-add-asset-to-wallet'
* Removed redundant files
* Removed old todo
* Removed package.json redundant packages
* Added dark class for dialog h1 text colour (required as the current scss gives a wrong default for this element)
* update useAddAsset to use new provider
* Ensure Jest has required methods
* tidy up package.json
* remove ts-ignores and use casts for dynamic grid imports
* remove unused code from token-e2e
* update to latest types from react 17
* Removed vegag wallet not running component as it should be handled by wallet lib
* fix typing of contract addresses
* type cast network string to Network enum in reduce
* remove comment, issue 270 created instead
* default associated wallet amounts to zero
* update comment
* delete unused staking-overview component, add note about withTranslation types to comment
* re add proposal dates
* enable source maps for build
* add rest of env files for networks
* remove crowdin script tags from index.html
* add testing-library/jest-dom to types in test tsconfig
* setup i18n for tests so that translations are used, proposal change table test
* delete unused translation files and config
* set sentry release to use commit ref
* delete dex liquidity pages
* remove unused useVegaLPStaking hook
* use found id so no non null assertion needed
* remove mocked graphql provider
* remove commented out breadcrumb component
* add comment and link to issue for syntax highlighter changes
* fix any types in token-input, add link to ui-toolkit input changes
* dont default allowance to zero as it affects rendering logic
* fix spacing between callouts on associate page
* adjust spacing between callout for association callout
* fix alignment of ethereum splash screen
* use ethereum connect dialog state for connect dialog
* add infura provider as default
* change from infura provider to JsonRpcProvider
* remove unused Ethereum config
* add custom webpack config to inject sentry plugin
* delete commented out code for pending stake
* add comment linking input elements issue for eth-address-input
* move useEagerConnect to libs/wallet, add logic for connecting state so token app can load after connection has succeeded or failed
* remove unused storage files, update web3 connector to render children if not actively connected
Co-authored-by: Matthew Russell <mattrussell36@gmail.com>
* Toggle button built ui-toolkit
* Rewrote controlled toggle button story without args
* Fixed ts args issue using ComponentStory element
* Wrapped controlled version of buttons in a form for Storybook to stop light and dark theme scope collisions
* More toggle tests
* Update libs/ui-toolkit/src/components/toggle/toggle.stories.tsx
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* Displays checked state as text for controlled toggles in storybook
* Used classnames helper
* Added toggle to deal ticket
* Simplified the toggles array type to allow any number of toggles, removing the need for a cast
Co-authored-by: Dexter Edwards <dexter.edwards93@gmail.com>
* 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
* 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>
* 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>
* add manage dialog to wallet lib, add it to trading app
* add test for wallet button
* add tests for manage dialog
* move tooltip to ui-toolkit, add copy with tooltip component for manage dialog
* add better labelling
* add tooltip story
* add story for copy-with-tooltip
* add tests for tooltip and copy-with-tooltip
* move useFakeTimers call to beforeAll
* adjust design of manage dialog
* fix linting issues
* frontend-monorepo-76 Use UI toolkit components for 'jump to block'
* frontend-monorepo-76 Use UI toolkit components for 'go to party'
* Added reusable component for 'jump to block' and 'go to party'
* 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
* add deposit page
* 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
* remove .env file for now, will complete as own ticket
* 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
* remove fallback to testnet for apollo client creation
* make web3container enforce connection before rendering childen
* move infura id to env var
* add custom properties to style ag grid tables
* use theme styles, make nav text sizes responsive
* move row and header heights to parent
* use max-w-full
* 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
* Initial commit of generated mainnet-stats directory
* Migration partly complete
* Migration complete
* Vega logo now in ui toolkit
* Specified a port that stops conflicts with other e2e tests
* Extra config for swapping to port that stops conflicts with other e2e tests. Also file name case change
* Adding the Cypress project ID to allow recording
* fix test
* Mainnet stats manager moved into library
* Mainnet stats project now importing manager element from lib
* Block Explorer has mainnet stats on home route
* Styling tweak to stop mainnet stats tables trying to match heights
* Spacing alignment tweaks
* Changing header text and tests to align with other branches
* Correct header test for mainnet-stats app
* Correct h3 test for mainnet-stats app
* Fix linting issue
* fix casing issue for CI
* Corrected mistake in merge
Co-authored-by: Dexter <dexter.edwards93@gmail.com>
* make titles look prettier
* link to parties from transactions table
* render what data is found conditionally
* more syntax highlighting
* re-jig file orders
* remove footer component for now
* add subheading component
* adjust column layout
* Style up header
* enable ligatures
* change env files
* fix error if data is null
* show governance header even if there is no data
* remove dead css
* add dark theme for block explorer
* use memo on parties submit
* remove some css from header
* basic search implementation
* allow passing classNames to form group
* add tests for form group
* add form-grpup stories
* bad rebase fixes
* add link
* tidy up tests
* fix tests
* tidy up env files
* final test fixes
* switch order of classes
* fix test id
* force build for testing
* rename file for linting
* add tests for header component
* rename export
* input error tests
* use descriptive function names as per PR comment
* fix casing issue for CI
* handle empty state
* make query easier to understand
* 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
* use intent shadow helper
* remove date-fns and format manually, update submit button error to use input-error
* remove stray console.log