Skip to content
This repository has been archived by the owner on May 31, 2023. It is now read-only.

Commit

Permalink
release v0.4 (#1071)
Browse files Browse the repository at this point in the history
* fix: graph timeframe updates after website idle (#182)

* Update yarn.lock

* #41 | WIP resolver tests

* feat: add wait-for-expect testing library

* feat: remove unnecessary propertiy in gql schema

* feat: add mocked polkadotJsContext for testing purposes

* feat: update getBalancesByAddress implementation

* feat: update gql schema

* #41 | move render function to fix ESlint validation

* refactor: mockApiPromise and mockUsePolkadotJsContext

* test: add fail cases

* feat: upgrade type def for polkadot/api v7

* #41 accounts resolver mock

* #41 | clear VestingSchedule from account schema

* #41 | selectedAccount => activeAccount

* #41 | remove duplicated line

* #41 | PR comment fixes

* #41 | PR comment fixes

* #41 | addressing PR review - refactored onAccountSelected handling

* #41 | PR issue fix - use classNames FTW

* #41 | PR comment fix - account is always populated

* #41 | TODO comment

* #41 | basic react-intl setup

* #41 | Formatted messages for links

* #41 | handle and propagate getAllAccounts loading state

* #41 | moving files along to match desired dir structures

* #41 | moving files along to match desired dir structures

* #41 | further dir structure shaking and cleanup

* #41 | accounts dir structure refactoring finished

* #41 | Todo

* #41 | add source field to Account GQL type

* #41 | test update

* #41 | add transformIgnorePatterns for polkadot to jest.config.js file

* #41 | getAccounts lib function and tests

* #41 | cleanup

* #41 | cleanup

* #41 | getAccounts refactoring

* #41 | getAccounts tests finished

* #41 | use waitForExpect

* #41 | accounts resolver tests

* #41 | pass ss58Format as an option to avoid manual address encoding

* #41 | tests structured formatting

* #41 | fix test description

* #41 | shared withTypename helper

* #41 | propper return type

* #41 | extract callback to separate function

* test: refactor getAccounts

* #41 | basilisk ui app provider name  moved to constants

* #41 | update mocked web3Enable response format

* #41 | update padding to result in whole px value

* #41 | use skip instead of lazy query to avoid manual effects

* #41 | post merge fixes

* Create .nvmrc

* #41 | post install yarn.lock update

* #41 | fix storybook test snapshots

* #41 | remove tests for deprecated component

* #41 | Icon component refactoring

* #41 | translations

* Really remove husky:

* account-selector redesign

* Updates to tradeform

* fixes to AssetBalanceInput + stories

* Added default asset out bsx

* remove trade chart

* cleanup trade form

* working towards trade info

* reverse spot price

* spot price display

* submit trade

* complete wallet

* fix wallet

* start balance input

* fix balance fetching for accounts

* Added last block fetching and trade info

* added spot price display to trade form

* mumbo jumbo with spot price

* debugging last block

* update polkadot dependencies, fix trade limit calc

* change event listener for trade type changing

* feat: subscription for last block

* added historical dataset with latest data composition, added asset switcher

* fix asset balance input + metric unit selector

* page layout

* fix ci?

* Update styles

* some chart fixes

* small story fix

* remove an unwanted dot

* chart-style

* correct loading statuses for accounts & pool by ids

* Revive trade chart

* reset dataset on asset id change

* fix loading status for wallet & trade form

* responsive something

* better flex

* polish

* more swag

* fix overlay

* hide trade form settings instead of comment out

* added pool asset list

* disable lbp pool fetching

* fix styles

* add placeholder

* xyk trade status handling

* extract trade settings as portal

* add updating of query params

* fix trade settings form submit

* settings

* button n info

* limit graph bounds

* icons~WIP

* icons something

* asset styling + longname

* swag, actually fix chart jail and rendering, disable tooltip logs

* style fixes

* trade balances before/after/%

* fix unique assets for asset selector

* no default values for calculated amount counterparts

* graph fix

* linechart x axis scale

* Trade info style

* moar space

* asset selector

* fix decimal input in BalanceInput

* USDC metadata

* use formattedbalance in chart & form

* fix straight graph

* fix clickable area for unit selector

* trade chart precision fix

* switchfix

* header fix

* trade form tweaks

* jumpy

* footer liveliness and spot price in graph fix

* colors for footer

* bring back notifs

* notifs v1

* spinner

* settings

* trade info errors

* swag

* Uupdate E2E testing workflow

* Update polkadot-dapp

* Unlock e2e tests

* warning styling

* more swag for trade info

* trade paddings

* new test for trade page

* clean console logs and remove graceful error handler from xyk.sell

* center modal close button

* add sha version to footer

* remove unit if value is 0

* switch to short sha version

* fix footer sha display

* short git hash version

* minor fixes

* spicy validations

* add small fix for calculated amounts

* Error styling

* trade balance fixes

* loading status fixes

* eerrrrs

* added faucete mutation + fixed % trade balance change

* add faucetg

* remove loader from faucet

* fix error timing

* fix alignment in tradeinfo

* fix % trade balances

* units and balance input remove trailing zeroes

* Adjust unit balance recalculation in inputs

* timeout hack for tradeinfo errors

* switch you get / pay with

* fix switching of in/out in form

* add help

* Fix graph loading status

* Fix chart loading text, fix block num loading status

* fix asset ordering

* Simplify wallet button logic (show connect account)

* Added debug box"

* fix debug box false

* debug stuff

* Moveup active account validation, move debugbox closer to root

* add pretty json view to debug box

* debug box details for trade form

* fix rerender of debug box

* debug box features

* Fix trade balances loading state

* Tweak trade balances display for none/some account connected + none/some amount input value

* Add extension availability pseudo-polling

* remove secondary account item address

* unify account address triming between mini wallet and account list item

* tweaks to account list / item

* Add horizontal bar when no asset is selected for unit selector

* Filter of trade form assets

* Added payment info estimation for xyk sell

* add multiple empty states with horizontal bar

* Added tooltip to formatted balance

* show spotprice in the tradeform as formattede balance

* update URLs for new testnet

* tokens

* styling error fix + hide faucet

* wallet genesis hash handling

* fix unnecessary display of trade balance change

* Align wallet correctly

* shorter tooltip delay

* adjust extension detection timeout

* revalidate when allowed slippage changes

* Add calculating of usable balance for the native asset + sufficient fee balance validation (#141)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* Added handling of usable balances for tokens, fixed sub-zero balances for native asset

* added minor schema improvements to work with apollo vscode extension (#152)

* Feat/usable balance + notEnoughFeeBalance (#151)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* feat: fetch all balances (multi) (#166)

* refactor: remove underline for used variables

* refactor: rm mockUsePolkadotJsContext;improve fn() mocking

* test: update balances test

* feat: update hook and error handler for balance resolver

* feat: fetch non-native token balances without any assetId

* feat: Add reporter workflow to issue comment (#117)

* Add reporter workflow to issue comment

* Fix github-script params

* Fix reporter env vars

* docs: update CI docs

* docs: fix image in CI docs

* refactor: refactor workflows titles and lables

* Fix permission issue in script

* refactor: Decorate steps names

* refactor: Add comment into workflows

* refactor: Remove redundant files

* refactor: rename workflow

* refactor: Rename job name

* Refactor github scripts

* docs: Update comments and docs in workflows

* docs: Update Ci docs

* Refactor steps params order

* docs: Fix image in CI docs

* dosc: Add comment into ggithub actions

* docs: Update ci docs

* docs: Improve CI docs

* refactor: rename wf files, update wf comments

* docs: Fix wf comments typos

* docs: Refactor CI docs

* Fix input name (#165)

Co-authored-by: Max Kravchuk <mckrava2@gmail.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>

* feat: fetch all balances (#168)

* feat: fetch all balances if no resolver args are provided

* test: rm only

* feat: claimable vesting amount (#169)

* feat: claimable amount for vesting schedule

* feat: return multiple vesting schedules and extract claim cal

* feat: add balance transfer mutation (#170)

* small build fixes

* feat: add function to fetch locked balances for given lockId (#94)

* feat: add function to fetch locked balance of native token

* feat: add fetching of locked balances

* feat: add lockedBalancesQueryResolver

* feat: add address parameter to locked balance fetching

* feat: Add reporter workflow to issue comment (#117)

* Add reporter workflow to issue comment

* Fix github-script params

* Fix reporter env vars

* docs: update CI docs

* docs: fix image in CI docs

* refactor: refactor workflows titles and lables

* Fix permission issue in script

* refactor: Decorate steps names

* refactor: Add comment into workflows

* refactor: Remove redundant files

* refactor: rename workflow

* refactor: Rename job name

* Refactor github scripts

* docs: Update comments and docs in workflows

* docs: Update Ci docs

* Refactor steps params order

* docs: Fix image in CI docs

* dosc: Add comment into ggithub actions

* docs: Update ci docs

* docs: Improve CI docs

* refactor: rename wf files, update wf comments

* docs: Fix wf comments typos

* docs: Refactor CI docs

* Fix input name (#165)

* feat: use generated resolver args for lockedBalance

* test: refactor

Co-authored-by: Max Kravchuk <mckrava2@gmail.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>

* refactor: resolve merge conflict

* feat: error handling for locked balance (#175)

* feat: Fix initial installation (#176)

* feat: fetch available non native balance, correct tests

* fix: graph timeframe updates after website idle

* fix: use lodash and add guard clause for refreshing

* forgotten merge conflicts

Co-authored-by: Václav Slavík <vaclav.slavik@topmonks.com>
Co-authored-by: dexterslabor <dexterslabor@users.noreply.github.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Matej Sima <matej.sima@gmail.com>
Co-authored-by: Jakub Panik <k@macbook-pro-2.home>
Co-authored-by: Jakub Panik <k@MacBook-Pro-2.local>
Co-authored-by: Jakub Panik <jakub.panik@gmail.com>
Co-authored-by: mckrava <mckrava2@gmail.com>
Co-authored-by: Jakub Vitek <j.vitek25@gmail.com>
Co-authored-by: Ayoub Fakir <ayoub@fakir.dev>
Co-authored-by: Matej Šima <maht0rz@users.noreply.github.com>

* Fixed broken validation triggers for payment info (#162)

* Revert "#41 | simplified the install extension scenario"

This reverts commit 3144db9a8f6a5fadc8037be40307aaf4083e36f9.

* feat: #54 update balances resolver

* feat: #54 update imports

* test: #54 add test for getBalancesByAddress

* refactor: #54 constants

* feat: #54 add implement. for getBalancesByAddress resolver

* docs: format comments

* feat: add assetIds type

* refactor: #54 getBalancesByAddress

* feat: #54 update implementation getBalancesByAddress

* #41 | introduce patch for CRAP issue

https://github.com/facebook/create-react-app/pull/11797

REMINDER:
check for pull request #11797 release to remove the patch. Removing the patch is pretty straightforward. Remove patch-package postinstall-postinstall, remove the package.json script & delete the /patch dir (if you don't use patch-package for anything else).

* #41 | fix postinstall script

* Update yarn.lock

* #41 | WIP resolver tests

* feat: add wait-for-expect testing library

* feat: remove unnecessary propertiy in gql schema

* feat: add mocked polkadotJsContext for testing purposes

* feat: update getBalancesByAddress implementation

* feat: update gql schema

* #41 | move render function to fix ESlint validation

* refactor: mockApiPromise and mockUsePolkadotJsContext

* test: add fail cases

* feat: upgrade type def for polkadot/api v7

* #41 accounts resolver mock

* #41 | clear VestingSchedule from account schema

* #41 | selectedAccount => activeAccount

* #41 | remove duplicated line

* #41 | PR comment fixes

* #41 | PR comment fixes

* #41 | addressing PR review - refactored onAccountSelected handling

* #41 | PR issue fix - use classNames FTW

* #41 | PR comment fix - account is always populated

* #41 | TODO comment

* #41 | basic react-intl setup

* #41 | Formatted messages for links

* #41 | handle and propagate getAllAccounts loading state

* #41 | moving files along to match desired dir structures

* #41 | moving files along to match desired dir structures

* #41 | further dir structure shaking and cleanup

* #41 | accounts dir structure refactoring finished

* #41 | Todo

* #41 | add source field to Account GQL type

* #41 | test update

* #41 | add transformIgnorePatterns for polkadot to jest.config.js file

* #41 | getAccounts lib function and tests

* #41 | cleanup

* #41 | cleanup

* #41 | getAccounts refactoring

* #41 | getAccounts tests finished

* #41 | use waitForExpect

* #41 | accounts resolver tests

* #41 | pass ss58Format as an option to avoid manual address encoding

* #41 | tests structured formatting

* #41 | fix test description

* #41 | shared withTypename helper

* #41 | propper return type

* #41 | extract callback to separate function

* test: refactor getAccounts

* #41 | basilisk ui app provider name  moved to constants

* #41 | update mocked web3Enable response format

* #41 | update padding to result in whole px value

* #41 | use skip instead of lazy query to avoid manual effects

* #41 | post merge fixes

* Create .nvmrc

* #41 | post install yarn.lock update

* #41 | fix storybook test snapshots

* #41 | remove tests for deprecated component

* #41 | Icon component refactoring

* #41 | translations

* Really remove husky:

* account-selector redesign

* Updates to tradeform

* fixes to AssetBalanceInput + stories

* Added default asset out bsx

* remove trade chart

* cleanup trade form

* working towards trade info

* reverse spot price

* spot price display

* submit trade

* complete wallet

* fix wallet

* start balance input

* fix balance fetching for accounts

* Added last block fetching and trade info

* added spot price display to trade form

* mumbo jumbo with spot price

* debugging last block

* update polkadot dependencies, fix trade limit calc

* change event listener for trade type changing

* feat: subscription for last block

* added historical dataset with latest data composition, added asset switcher

* fix asset balance input + metric unit selector

* page layout

* fix ci?

* Update styles

* some chart fixes

* small story fix

* remove an unwanted dot

* chart-style

* correct loading statuses for accounts & pool by ids

* Revive trade chart

* reset dataset on asset id change

* fix loading status for wallet & trade form

* responsive something

* better flex

* polish

* more swag

* fix overlay

* hide trade form settings instead of comment out

* added pool asset list

* disable lbp pool fetching

* fix styles

* add placeholder

* xyk trade status handling

* extract trade settings as portal

* add updating of query params

* fix trade settings form submit

* settings

* button n info

* limit graph bounds

* icons~WIP

* icons something

* asset styling + longname

* swag, actually fix chart jail and rendering, disable tooltip logs

* style fixes

* trade balances before/after/%

* fix unique assets for asset selector

* no default values for calculated amount counterparts

* graph fix

* linechart x axis scale

* Trade info style

* moar space

* asset selector

* fix decimal input in BalanceInput

* USDC metadata

* use formattedbalance in chart & form

* fix straight graph

* fix clickable area for unit selector

* trade chart precision fix

* switchfix

* header fix

* trade form tweaks

* jumpy

* footer liveliness and spot price in graph fix

* colors for footer

* bring back notifs

* notifs v1

* spinner

* settings

* trade info errors

* swag

* Uupdate E2E testing workflow

* Update polkadot-dapp

* Unlock e2e tests

* warning styling

* more swag for trade info

* trade paddings

* new test for trade page

* clean console logs and remove graceful error handler from xyk.sell

* center modal close button

* add sha version to footer

* remove unit if value is 0

* switch to short sha version

* fix footer sha display

* short git hash version

* minor fixes

* spicy validations

* add small fix for calculated amounts

* Error styling

* trade balance fixes

* loading status fixes

* eerrrrs

* added faucete mutation + fixed % trade balance change

* add faucetg

* remove loader from faucet

* fix error timing

* fix alignment in tradeinfo

* fix % trade balances

* units and balance input remove trailing zeroes

* Adjust unit balance recalculation in inputs

* timeout hack for tradeinfo errors

* switch you get / pay with

* fix switching of in/out in form

* add help

* Fix graph loading status

* Fix chart loading text, fix block num loading status

* fix asset ordering

* Simplify wallet button logic (show connect account)

* Added debug box"

* fix debug box false

* debug stuff

* Moveup active account validation, move debugbox closer to root

* add pretty json view to debug box

* debug box details for trade form

* fix rerender of debug box

* debug box features

* Fix trade balances loading state

* Tweak trade balances display for none/some account connected + none/some amount input value

* Add extension availability pseudo-polling

* remove secondary account item address

* unify account address triming between mini wallet and account list item

* tweaks to account list / item

* Add horizontal bar when no asset is selected for unit selector

* Filter of trade form assets

* Added payment info estimation for xyk sell

* add multiple empty states with horizontal bar

* Added tooltip to formatted balance

* show spotprice in the tradeform as formattede balance

* update URLs for new testnet

* tokens

* styling error fix + hide faucet

* wallet genesis hash handling

* fix unnecessary display of trade balance change

* Align wallet correctly

* shorter tooltip delay

* adjust extension detection timeout

* revalidate when allowed slippage changes

* Add calculating of usable balance for the native asset + sufficient fee balance validation (#141)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* Added handling of usable balances for tokens, fixed sub-zero balances for native asset

* added minor schema improvements to work with apollo vscode extension (#152)

* Feat/usable balance + notEnoughFeeBalance (#151)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* Fixed broken validation triggers for payment info

Co-authored-by: Václav Slavík <vaclav.slavik@topmonks.com>
Co-authored-by: dexterslabor <dexterslabor@users.noreply.github.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Jakub Panik <k@macbook-pro-2.home>
Co-authored-by: Jakub Panik <k@MacBook-Pro-2.local>
Co-authored-by: Jakub Panik <jakub.panik@gmail.com>
Co-authored-by: mckrava <mckrava2@gmail.com>
Co-authored-by: Jakub Vitek <j.vitek25@gmail.com>
Co-authored-by: Ayoub Fakir <ayoub@fakir.dev>

* added max button (#153)

* #41 | refactoring

* #41 | Install polkadot extension CTA

* #41 | Reload page link

* #41 | simplified the install extension scenario

* Revert "#41 | simplified the install extension scenario"

This reverts commit 3144db9a8f6a5fadc8037be40307aaf4083e36f9.

* feat: #54 update balances resolver

* feat: #54 update imports

* test: #54 add test for getBalancesByAddress

* refactor: #54 constants

* feat: #54 add implement. for getBalancesByAddress resolver

* docs: format comments

* feat: add assetIds type

* refactor: #54 getBalancesByAddress

* feat: #54 update implementation getBalancesByAddress

* #41 | introduce patch for CRAP issue

https://github.com/facebook/create-react-app/pull/11797

REMINDER:
check for pull request #11797 release to remove the patch. Removing the patch is pretty straightforward. Remove patch-package postinstall-postinstall, remove the package.json script & delete the /patch dir (if you don't use patch-package for anything else).

* #41 | fix postinstall script

* Update yarn.lock

* #41 | WIP resolver tests

* feat: add wait-for-expect testing library

* feat: remove unnecessary propertiy in gql schema

* feat: add mocked polkadotJsContext for testing purposes

* feat: update getBalancesByAddress implementation

* feat: update gql schema

* #41 | move render function to fix ESlint validation

* refactor: mockApiPromise and mockUsePolkadotJsContext

* test: add fail cases

* feat: upgrade type def for polkadot/api v7

* #41 accounts resolver mock

* #41 | clear VestingSchedule from account schema

* #41 | selectedAccount => activeAccount

* #41 | remove duplicated line

* #41 | PR comment fixes

* #41 | PR comment fixes

* #41 | addressing PR review - refactored onAccountSelected handling

* #41 | PR issue fix - use classNames FTW

* #41 | PR comment fix - account is always populated

* #41 | TODO comment

* #41 | basic react-intl setup

* #41 | Formatted messages for links

* #41 | handle and propagate getAllAccounts loading state

* #41 | moving files along to match desired dir structures

* #41 | moving files along to match desired dir structures

* #41 | further dir structure shaking and cleanup

* #41 | accounts dir structure refactoring finished

* #41 | Todo

* #41 | add source field to Account GQL type

* #41 | test update

* #41 | add transformIgnorePatterns for polkadot to jest.config.js file

* #41 | getAccounts lib function and tests

* #41 | cleanup

* #41 | cleanup

* #41 | getAccounts refactoring

* #41 | getAccounts tests finished

* #41 | use waitForExpect

* #41 | accounts resolver tests

* #41 | pass ss58Format as an option to avoid manual address encoding

* #41 | tests structured formatting

* #41 | fix test description

* #41 | shared withTypename helper

* #41 | propper return type

* #41 | extract callback to separate function

* test: refactor getAccounts

* #41 | basilisk ui app provider name  moved to constants

* #41 | update mocked web3Enable response format

* #41 | update padding to result in whole px value

* #41 | use skip instead of lazy query to avoid manual effects

* #41 | post merge fixes

* Create .nvmrc

* #41 | post install yarn.lock update

* #41 | fix storybook test snapshots

* #41 | remove tests for deprecated component

* #41 | Icon component refactoring

* #41 | translations

* Really remove husky:

* account-selector redesign

* Updates to tradeform

* fixes to AssetBalanceInput + stories

* Added default asset out bsx

* remove trade chart

* cleanup trade form

* working towards trade info

* reverse spot price

* spot price display

* submit trade

* complete wallet

* fix wallet

* start balance input

* fix balance fetching for accounts

* Added last block fetching and trade info

* added spot price display to trade form

* mumbo jumbo with spot price

* debugging last block

* update polkadot dependencies, fix trade limit calc

* change event listener for trade type changing

* feat: subscription for last block

* added historical dataset with latest data composition, added asset switcher

* fix asset balance input + metric unit selector

* page layout

* fix ci?

* Update styles

* some chart fixes

* small story fix

* remove an unwanted dot

* chart-style

* correct loading statuses for accounts & pool by ids

* Revive trade chart

* reset dataset on asset id change

* fix loading status for wallet & trade form

* responsive something

* better flex

* polish

* more swag

* fix overlay

* hide trade form settings instead of comment out

* added pool asset list

* disable lbp pool fetching

* fix styles

* add placeholder

* xyk trade status handling

* extract trade settings as portal

* add updating of query params

* fix trade settings form submit

* settings

* button n info

* limit graph bounds

* icons~WIP

* icons something

* asset styling + longname

* swag, actually fix chart jail and rendering, disable tooltip logs

* style fixes

* trade balances before/after/%

* fix unique assets for asset selector

* no default values for calculated amount counterparts

* graph fix

* linechart x axis scale

* Trade info style

* moar space

* asset selector

* fix decimal input in BalanceInput

* USDC metadata

* use formattedbalance in chart & form

* fix straight graph

* fix clickable area for unit selector

* trade chart precision fix

* switchfix

* header fix

* trade form tweaks

* jumpy

* footer liveliness and spot price in graph fix

* colors for footer

* bring back notifs

* notifs v1

* spinner

* settings

* trade info errors

* swag

* Uupdate E2E testing workflow

* Update polkadot-dapp

* Unlock e2e tests

* warning styling

* more swag for trade info

* trade paddings

* new test for trade page

* clean console logs and remove graceful error handler from xyk.sell

* center modal close button

* add sha version to footer

* remove unit if value is 0

* switch to short sha version

* fix footer sha display

* short git hash version

* minor fixes

* spicy validations

* add small fix for calculated amounts

* Error styling

* trade balance fixes

* loading status fixes

* eerrrrs

* added faucete mutation + fixed % trade balance change

* add faucetg

* remove loader from faucet

* fix error timing

* fix alignment in tradeinfo

* fix % trade balances

* units and balance input remove trailing zeroes

* Adjust unit balance recalculation in inputs

* timeout hack for tradeinfo errors

* switch you get / pay with

* fix switching of in/out in form

* add help

* Fix graph loading status

* Fix chart loading text, fix block num loading status

* fix asset ordering

* Simplify wallet button logic (show connect account)

* Added debug box"

* fix debug box false

* debug stuff

* Moveup active account validation, move debugbox closer to root

* add pretty json view to debug box

* debug box details for trade form

* fix rerender of debug box

* debug box features

* Fix trade balances loading state

* Tweak trade balances display for none/some account connected + none/some amount input value

* Add extension availability pseudo-polling

* remove secondary account item address

* unify account address triming between mini wallet and account list item

* tweaks to account list / item

* Add horizontal bar when no asset is selected for unit selector

* Filter of trade form assets

* Added payment info estimation for xyk sell

* add multiple empty states with horizontal bar

* Added tooltip to formatted balance

* show spotprice in the tradeform as formattede balance

* update URLs for new testnet

* tokens

* styling error fix + hide faucet

* wallet genesis hash handling

* fix unnecessary display of trade balance change

* Align wallet correctly

* shorter tooltip delay

* adjust extension detection timeout

* revalidate when allowed slippage changes

* Add calculating of usable balance for the native asset + sufficient fee balance validation (#141)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* added max button

* use payment info when calculating trade balances

Co-authored-by: Václav Slavík <vaclav.slavik@topmonks.com>
Co-authored-by: dexterslabor <dexterslabor@users.noreply.github.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Jakub Panik <k@macbook-pro-2.home>
Co-authored-by: Jakub Panik <k@MacBook-Pro-2.local>
Co-authored-by: Jakub Panik <jakub.panik@gmail.com>
Co-authored-by: mckrava <mckrava2@gmail.com>
Co-authored-by: Jakub Vitek <j.vitek25@gmail.com>
Co-authored-by: Ayoub Fakir <ayoub@fakir.dev>

* docs(readme.md): fix storybook invocation in README.md (#914)

* feat: Add dummy sign and send helper (#108)

* signAndSend #71

* sign and send extrinsic errors

* signAndSend tests init

* sign and send other error test

* readActiveAccount from develop

* Merged with latest develop

Co-authored-by: Matej Sima <matej.sima@gmail.com>

* Feat: wallet page for lbp-v1 (#181)

* #41 | clear VestingSchedule from account schema

* #41 | selectedAccount => activeAccount

* #41 | remove duplicated line

* #41 | PR comment fixes

* #41 | PR comment fixes

* #41 | addressing PR review - refactored onAccountSelected handling

* #41 | PR issue fix - use classNames FTW

* #41 | PR comment fix - account is always populated

* #41 | TODO comment

* #41 | basic react-intl setup

* #41 | Formatted messages for links

* #41 | handle and propagate getAllAccounts loading state

* #41 | moving files along to match desired dir structures

* #41 | moving files along to match desired dir structures

* #41 | further dir structure shaking and cleanup

* #41 | accounts dir structure refactoring finished

* #41 | Todo

* #41 | add source field to Account GQL type

* #41 | test update

* #41 | add transformIgnorePatterns for polkadot to jest.config.js file

* #41 | getAccounts lib function and tests

* #41 | cleanup

* #41 | cleanup

* #41 | getAccounts refactoring

* #41 | getAccounts tests finished

* #41 | use waitForExpect

* #41 | accounts resolver tests

* #41 | pass ss58Format as an option to avoid manual address encoding

* #41 | tests structured formatting

* #41 | fix test description

* #41 | shared withTypename helper

* #41 | propper return type

* #41 | extract callback to separate function

* test: refactor getAccounts

* #41 | basilisk ui app provider name  moved to constants

* #41 | update mocked web3Enable response format

* #41 | update padding to result in whole px value

* #41 | use skip instead of lazy query to avoid manual effects

* #41 | post merge fixes

* Create .nvmrc

* #41 | post install yarn.lock update

* #41 | fix storybook test snapshots

* #41 | remove tests for deprecated component

* #41 | Icon component refactoring

* #41 | translations

* Really remove husky:

* account-selector redesign

* Updates to tradeform

* fixes to AssetBalanceInput + stories

* Added default asset out bsx

* remove trade chart

* cleanup trade form

* working towards trade info

* reverse spot price

* spot price display

* submit trade

* complete wallet

* fix wallet

* start balance input

* fix balance fetching for accounts

* Added last block fetching and trade info

* added spot price display to trade form

* mumbo jumbo with spot price

* debugging last block

* update polkadot dependencies, fix trade limit calc

* change event listener for trade type changing

* feat: subscription for last block

* added historical dataset with latest data composition, added asset switcher

* fix asset balance input + metric unit selector

* page layout

* fix ci?

* Update styles

* some chart fixes

* small story fix

* remove an unwanted dot

* chart-style

* correct loading statuses for accounts & pool by ids

* Revive trade chart

* reset dataset on asset id change

* fix loading status for wallet & trade form

* responsive something

* better flex

* polish

* more swag

* fix overlay

* hide trade form settings instead of comment out

* added pool asset list

* disable lbp pool fetching

* fix styles

* add placeholder

* xyk trade status handling

* extract trade settings as portal

* add updating of query params

* fix trade settings form submit

* settings

* button n info

* limit graph bounds

* icons~WIP

* icons something

* asset styling + longname

* swag, actually fix chart jail and rendering, disable tooltip logs

* style fixes

* trade balances before/after/%

* fix unique assets for asset selector

* no default values for calculated amount counterparts

* graph fix

* linechart x axis scale

* Trade info style

* moar space

* asset selector

* fix decimal input in BalanceInput

* USDC metadata

* use formattedbalance in chart & form

* fix straight graph

* fix clickable area for unit selector

* trade chart precision fix

* switchfix

* header fix

* trade form tweaks

* jumpy

* footer liveliness and spot price in graph fix

* colors for footer

* bring back notifs

* notifs v1

* spinner

* settings

* trade info errors

* swag

* Uupdate E2E testing workflow

* Update polkadot-dapp

* Unlock e2e tests

* warning styling

* more swag for trade info

* trade paddings

* new test for trade page

* clean console logs and remove graceful error handler from xyk.sell

* center modal close button

* add sha version to footer

* remove unit if value is 0

* switch to short sha version

* fix footer sha display

* short git hash version

* minor fixes

* spicy validations

* add small fix for calculated amounts

* Error styling

* trade balance fixes

* loading status fixes

* eerrrrs

* added faucete mutation + fixed % trade balance change

* add faucetg

* remove loader from faucet

* fix error timing

* fix alignment in tradeinfo

* fix % trade balances

* units and balance input remove trailing zeroes

* Adjust unit balance recalculation in inputs

* timeout hack for tradeinfo errors

* switch you get / pay with

* fix switching of in/out in form

* add help

* Fix graph loading status

* Fix chart loading text, fix block num loading status

* fix asset ordering

* Simplify wallet button logic (show connect account)

* Added debug box"

* fix debug box false

* debug stuff

* Moveup active account validation, move debugbox closer to root

* add pretty json view to debug box

* debug box details for trade form

* fix rerender of debug box

* debug box features

* Fix trade balances loading state

* Tweak trade balances display for none/some account connected + none/some amount input value

* Add extension availability pseudo-polling

* remove secondary account item address

* unify account address triming between mini wallet and account list item

* tweaks to account list / item

* Add horizontal bar when no asset is selected for unit selector

* Filter of trade form assets

* Added payment info estimation for xyk sell

* add multiple empty states with horizontal bar

* Added tooltip to formatted balance

* show spotprice in the tradeform as formattede balance

* update URLs for new testnet

* tokens

* styling error fix + hide faucet

* wallet genesis hash handling

* fix unnecessary display of trade balance change

* Align wallet correctly

* shorter tooltip delay

* adjust extension detection timeout

* revalidate when allowed slippage changes

* Add calculating of usable balance for the native asset + sufficient fee balance validation (#141)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* Added handling of usable balances for tokens, fixed sub-zero balances for native asset

* added minor schema improvements to work with apollo vscode extension (#152)

* Feat/usable balance + notEnoughFeeBalance (#151)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* feat: fetch all balances (multi) (#166)

* refactor: remove underline for used variables

* refactor: rm mockUsePolkadotJsContext;improve fn() mocking

* test: update balances test

* feat: update hook and error handler for balance resolver

* feat: fetch non-native token balances without any assetId

* feat: Add reporter workflow to issue comment (#117)

* Add reporter workflow to issue comment

* Fix github-script params

* Fix reporter env vars

* docs: update CI docs

* docs: fix image in CI docs

* refactor: refactor workflows titles and lables

* Fix permission issue in script

* refactor: Decorate steps names

* refactor: Add comment into workflows

* refactor: Remove redundant files

* refactor: rename workflow

* refactor: Rename job name

* Refactor github scripts

* docs: Update comments and docs in workflows

* docs: Update Ci docs

* Refactor steps params order

* docs: Fix image in CI docs

* dosc: Add comment into ggithub actions

* docs: Update ci docs

* docs: Improve CI docs

* refactor: rename wf files, update wf comments

* docs: Fix wf comments typos

* docs: Refactor CI docs

* Fix input name (#165)

Co-authored-by: Max Kravchuk <mckrava2@gmail.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>

* feat: fetch all balances (#168)

* feat: fetch all balances if no resolver args are provided

* test: rm only

* feat: claimable vesting amount (#169)

* feat: claimable amount for vesting schedule

* feat: return multiple vesting schedules and extract claim cal

* feat: add balance transfer mutation (#170)

* wallet

* wip

* small build fixes

* add should calculate

* feat: add function to fetch locked balances for given lockId (#94)

* feat: add function to fetch locked balance of native token

* feat: add fetching of locked balances

* feat: add lockedBalancesQueryResolver

* feat: add address parameter to locked balance fetching

* feat: Add reporter workflow to issue comment (#117)

* Add reporter workflow to issue comment

* Fix github-script params

* Fix reporter env vars

* docs: update CI docs

* docs: fix image in CI docs

* refactor: refactor workflows titles and lables

* Fix permission issue in script

* refactor: Decorate steps names

* refactor: Add comment into workflows

* refactor: Remove redundant files

* refactor: rename workflow

* refactor: Rename job name

* Refactor github scripts

* docs: Update comments and docs in workflows

* docs: Update Ci docs

* Refactor steps params order

* docs: Fix image in CI docs

* dosc: Add comment into ggithub actions

* docs: Update ci docs

* docs: Improve CI docs

* refactor: rename wf files, update wf comments

* docs: Fix wf comments typos

* docs: Refactor CI docs

* Fix input name (#165)

* feat: use generated resolver args for lockedBalance

* test: refactor

Co-authored-by: Max Kravchuk <mckrava2@gmail.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>

* refactor: resolve merge conflict

* feat: error handling for locked balance (#175)

* feat: Fix initial installation (#176)

* move balances and vesting under active account container

* feat: add vesting resolver (#173)

* feat: add vesting resolver

resolves vesting info to claimable amount, original lock and remaining
lock

* refactor: remove toBN()

* feat: fetch available non native balance, correct tests

* fixes

* feat: rename vesting, fix lock calc, refactor

* feat: rename vestingSchedule and vesting

* fix: do not allow negative futureLock

* basic transfer

* Feat: estimate claim transfer (#171)

* feat: add balance transfer mutation

* feat: add estimate for transfer and vesting claim

Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Matej Sima <matej.sima@gmail.com>

* Added contextual queries for active account & extension, reduced query duplicity

* updated transfers in wallet page

Co-authored-by: Václav Slavík <vaclav.slavik@topmonks.com>
Co-authored-by: Matej Sima <matej.sima@gmail.com>
Co-authored-by: Jakub Panik <k@macbook-pro-2.home>
Co-authored-by: Jakub Panik <k@MacBook-Pro-2.local>
Co-authored-by: Jakub Panik <jakub.panik@gmail.com>
Co-authored-by: mckrava <mckrava2@gmail.com>
Co-authored-by: Jakub Vitek <j.vitek25@gmail.com>
Co-authored-by: Ayoub Fakir <ayoub@fakir.dev>
Co-authored-by: Matej Šima <maht0rz@users.noreply.github.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Matehoo <55109377+Matehoo@users.noreply.github.com>

* Feat/confirmation screen (#161)

* feat: #54 update balances resolver

* feat: #54 update imports

* test: #54 add test for getBalancesByAddress

* refactor: #54 constants

* feat: #54 add implement. for getBalancesByAddress resolver

* docs: format comments

* feat: add assetIds type

* refactor: #54 getBalancesByAddress

* feat: #54 update implementation getBalancesByAddress

* #41 | introduce patch for CRAP issue

https://github.com/facebook/create-react-app/pull/11797

REMINDER:
check for pull request #11797 release to remove the patch. Removing the patch is pretty straightforward. Remove patch-package postinstall-postinstall, remove the package.json script & delete the /patch dir (if you don't use patch-package for anything else).

* #41 | fix postinstall script

* Update yarn.lock

* #41 | WIP resolver tests

* feat: add wait-for-expect testing library

* feat: remove unnecessary propertiy in gql schema

* feat: add mocked polkadotJsContext for testing purposes

* feat: update getBalancesByAddress implementation

* feat: update gql schema

* #41 | move render function to fix ESlint validation

* refactor: mockApiPromise and mockUsePolkadotJsContext

* test: add fail cases

* feat: upgrade type def for polkadot/api v7

* #41 accounts resolver mock

* #41 | clear VestingSchedule from account schema

* #41 | selectedAccount => activeAccount

* #41 | remove duplicated line

* #41 | PR comment fixes

* #41 | PR comment fixes

* #41 | addressing PR review - refactored onAccountSelected handling

* #41 | PR issue fix - use classNames FTW

* #41 | PR comment fix - account is always populated

* #41 | TODO comment

* #41 | basic react-intl setup

* #41 | Formatted messages for links

* #41 | handle and propagate getAllAccounts loading state

* #41 | moving files along to match desired dir structures

* #41 | moving files along to match desired dir structures

* #41 | further dir structure shaking and cleanup

* #41 | accounts dir structure refactoring finished

* #41 | Todo

* #41 | add source field to Account GQL type

* #41 | test update

* #41 | add transformIgnorePatterns for polkadot to jest.config.js file

* #41 | getAccounts lib function and tests

* #41 | cleanup

* #41 | cleanup

* #41 | getAccounts refactoring

* #41 | getAccounts tests finished

* #41 | use waitForExpect

* #41 | accounts resolver tests

* #41 | pass ss58Format as an option to avoid manual address encoding

* #41 | tests structured formatting

* #41 | fix test description

* #41 | shared withTypename helper

* #41 | propper return type

* #41 | extract callback to separate function

* test: refactor getAccounts

* #41 | basilisk ui app provider name  moved to constants

* #41 | update mocked web3Enable response format

* #41 | update padding to result in whole px value

* #41 | use skip instead of lazy query to avoid manual effects

* #41 | post merge fixes

* Create .nvmrc

* #41 | post install yarn.lock update

* #41 | fix storybook test snapshots

* #41 | remove tests for deprecated component

* #41 | Icon component refactoring

* #41 | translations

* Really remove husky:

* account-selector redesign

* Updates to tradeform

* fixes to AssetBalanceInput + stories

* Added default asset out bsx

* remove trade chart

* cleanup trade form

* working towards trade info

* reverse spot price

* spot price display

* submit trade

* complete wallet

* fix wallet

* start balance input

* fix balance fetching for accounts

* Added last block fetching and trade info

* added spot price display to trade form

* mumbo jumbo with spot price

* debugging last block

* update polkadot dependencies, fix trade limit calc

* change event listener for trade type changing

* feat: subscription for last block

* added historical dataset with latest data composition, added asset switcher

* fix asset balance input + metric unit selector

* page layout

* fix ci?

* Update styles

* some chart fixes

* small story fix

* remove an unwanted dot

* chart-style

* correct loading statuses for accounts & pool by ids

* Revive trade chart

* reset dataset on asset id change

* fix loading status for wallet & trade form

* responsive something

* better flex

* polish

* more swag

* fix overlay

* hide trade form settings instead of comment out

* added pool asset list

* disable lbp pool fetching

* fix styles

* add placeholder

* xyk trade status handling

* extract trade settings as portal

* add updating of query params

* fix trade settings form submit

* settings

* button n info

* limit graph bounds

* icons~WIP

* icons something

* asset styling + longname

* swag, actually fix chart jail and rendering, disable tooltip logs

* style fixes

* trade balances before/after/%

* fix unique assets for asset selector

* no default values for calculated amount counterparts

* graph fix

* linechart x axis scale

* Trade info style

* moar space

* asset selector

* fix decimal input in BalanceInput

* USDC metadata

* use formattedbalance in chart & form

* fix straight graph

* fix clickable area for unit selector

* trade chart precision fix

* switchfix

* header fix

* trade form tweaks

* jumpy

* footer liveliness and spot price in graph fix

* colors for footer

* bring back notifs

* notifs v1

* spinner

* settings

* trade info errors

* swag

* Uupdate E2E testing workflow

* Update polkadot-dapp

* Unlock e2e tests

* warning styling

* more swag for trade info

* trade paddings

* new test for trade page

* clean console logs and remove graceful error handler from xyk.sell

* center modal close button

* add sha version to footer

* remove unit if value is 0

* switch to short sha version

* fix footer sha display

* short git hash version

* minor fixes

* spicy validations

* add small fix for calculated amounts

* Error styling

* trade balance fixes

* loading status fixes

* eerrrrs

* added faucete mutation + fixed % trade balance change

* add faucetg

* remove loader from faucet

* fix error timing

* fix alignment in tradeinfo

* fix % trade balances

* units and balance input remove trailing zeroes

* Adjust unit balance recalculation in inputs

* timeout hack for tradeinfo errors

* switch you get / pay with

* fix switching of in/out in form

* add help

* Fix graph loading status

* Fix chart loading text, fix block num loading status

* fix asset ordering

* Simplify wallet button logic (show connect account)

* Added debug box"

* fix debug box false

* debug stuff

* Moveup active account validation, move debugbox closer to root

* add pretty json view to debug box

* debug box details for trade form

* fix rerender of debug box

* debug box features

* Fix trade balances loading state

* Tweak trade balances display for none/some account connected + none/some amount input value

* Add extension availability pseudo-polling

* remove secondary account item address

* unify account address triming between mini wallet and account list item

* tweaks to account list / item

* Add horizontal bar when no asset is selected for unit selector

* Filter of trade form assets

* Added payment info estimation for xyk sell

* add multiple empty states with horizontal bar

* Added tooltip to formatted balance

* show spotprice in the tradeform as formattede balance

* update URLs for new testnet

* tokens

* styling error fix + hide faucet

* wallet genesis hash handling

* fix unnecessary display of trade balance change

* Align wallet correctly

* shorter tooltip delay

* adjust extension detection timeout

* revalidate when allowed slippage changes

* Add calculating of usable balance for the native asset + sufficient fee balance validation (#141)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* Added handling of usable balances for tokens, fixed sub-zero balances for native asset

* added minor schema improvements to work with apollo vscode extension (#152)

* Feat/usable balance + notEnoughFeeBalance (#151)

* Add calculating of usable balance for the native asset

* Added fee balance validation to trade form

* unstyled confirmation screen

Co-authored-by: dexterslabor <dexterslabor@users.noreply.github.com>
Co-authored-by: Václav Slavík <vaclav.slavik@topmonks.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Jakub Panik <k@macbook-pro-2.home>
Co-authored-by: Jakub Panik <k@MacBook-Pro-2.local>
Co-authored-by: Jakub Panik <jakub.panik@gmail.com>
Co-authored-by: mckrava <mckrava2@gmail.com>
Co-authored-by: Jakub Vitek <j.vitek25@gmail.com>
Co-authored-by: Ayoub Fakir <ayoub@fakir.dev>

* update node url

* Minor css tweaks, removed graph, removed balance change indicator %

* added multi fee payment asset support to asset list

* Added notifications for setting the fee payment asset

* added tx fee estimate to transfer

* css fixes

* Added displaying of tx fees in the desired fee payment asset

* added txfee/multi fee payment support to vesting and transfer

* added some styles (#1045)

* added some styles

* Feat/swag (#1046)

* feat: Add some styles for Wallet, still WIP

* feat: Make Wallet table nicer

* active account wip

* update style

* add font

* account list updates

* more swag

* settings button

* settings screen

* fix gradient

* wallet connect err

* no wallet nicer style

* feat: More polishing (#1047)

Co-authored-by: Matehoo <55109377+Matehoo@users.noreply.github.com>

* Fix/vesting schedule (#1050)

* fix: vesting schedule

change formula to use parachain block number; change how future lock is
calculated

* style: linter

* test: add for calculateLock()

* Feat/liquidity provisioning (#1051)

* added liquidity provisioning basic skeleton

* fix wrong component imports

* feat: Inherit styles from trade page

* wip add/remove liquidity

* add/remove liquidity math

* Added transactions for add/rm liquidity

* feat: Add headers to wallet tables and style pool buttons

* changed to public testnet

* bring back old env config

* feat: Restyle tabs

* feat: Restyle tabs #2

* feat: some styles

* remove max btn, add validations

* feat: some styles #2

* feat: some styles #3

* Adjusted validations + small css

* bsx/ksm remain as fee payment assets

Co-authored-by: Matej Holicky <10matejholicky@gmail.com>

* fixes for multi fee payment asset tx fee conversion

* Fix/vesting calculation (#1053)

* fix: vesting schedule

change formula to use parachain block number; change how future lock is
calculated

* style: linter

* test: add for calculateLock()

* fix: vesting calculation

* feat: Style notificationa as toast (#1052)

* feat: Style notificationa as toast

* notifications css + fixed tx status reporting

Co-authored-by: Matej Sima <matej.sima@gmail.com>

* notification styles

* Fix/vesting (#1054)

* fix: vesting schedule

change formula to use parachain block number; change how future lock is
calculated

* style: linter

* test: add for calculateLock()

* fix: vesting

Co-authored-by: Istvan <istvan.deak@stove-labs.com>

* fix LP math

* fixed asset switcher (#1058)

* feat: Center link, url will be added later (#1057)

* Feat/remove si units (#1059)

* feat: Center link, url will be added later

* removed SI units

* updated rules for formatting balances"

* new formatting rules for balances

Co-authored-by: Matej Holicky <10matejholicky@gmail.com>

* fixed crashing FormattedBalance

Co-authored-by: Matehoo <55109377+Matehoo@users.noreply.github.com>
Co-authored-by: Václav Slavík <vaclav.slavik@topmonks.com>
Co-authored-by: dexterslabor <dexterslabor@users.noreply.github.com>
Co-authored-by: Istvan <istvan.deak@stove-labs.com>
Co-authored-by: Matej Sima <matej.sima@gmail.com>
Co-authored-by: Jakub Panik <k@macbook-pro-2.home>
Co-authored-by: Jakub Panik <k@MacBook-Pro-2.local>
Co-authored-by: mckrava <mckrava2@gmail.com>
Co-authored-by: Jakub Vitek <j.vitek25@gmail.com>
Co-authored-by: Ayoub Fakir <ayoub@fakir.dev>
Co-authored-by: Matej Šima <maht0rz@users.noreply.github.com>
Co-authored-by: Felipe <felipe@xra.sh>
Co-authored-by: Jan Fabian <mail@janfabian.cz>
Co-authored-by: Matej Holicky <10matejholicky@gmail.com>
  • Loading branch information
15 people committed Jul 19, 2022
1 parent b9bd747 commit bfcf5a6
Show file tree
Hide file tree
Showing 131 changed files with 6,936 additions and 1,348 deletions.
6 changes: 5 additions & 1 deletion .env
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
HTTPS=true
# REACT_APP_NODE_URL='ws://localhost:9988'
REACT_APP_NODE_URL='wss://basilisk-rpc.hydration.cloud/'
# testnet
# REACT_APP_NODE_URL='wss://basilisk-testnet-rpc.bsx.fi/'
# rococo
REACT_APP_NODE_URL='wss://rpc-01.basilisk-rococo.hydradx.io/'
# REACT_APP_NODE_URL='wss://amsterdot.eu.ngrok.io'
REACT_APP_PROCESSOR_URL='https://bsx-api-testnet.hydration.cloud/graphql'
REACT_APP_APP_NAME='Basilisk UI'
NODE_OPTIONS=--openssl-legacy-provider
Expand Down
206 changes: 206 additions & 0 deletions .github/workflows/app-e2e-testing-flow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
name: Application E2E Testing Flow
on:
pull_request:
branches:
- develop
push:
branches:
- 'feat/lbp-v1'

jobs:
build_app:
name: Build UI application
runs-on: macos-11
steps:
- uses: actions/checkout@v2

- name: Install Node.js
uses: actions/setup-node@v1
with:
node-version: 17.3

- name: Cache Node Modules for ui-app
id: cache-node-modules-ui-app
uses: actions/cache@v2
with:
path: node_modules
key: node-modules-ui-app-${{ hashFiles('yarn.lock') }}

- name: Install Dependencies for ui-app
if: steps.cache-node-modules-ui-app.outputs.cache-hit != 'true'
run: rm -rf node_modules && yarn install --frozen-lockfile

- name: Update browserslist
run: npx browserslist@latest --update-db

- name: Build App
run: yarn run build:deployment
env:
CI: false
REACT_APP_GIT_BRANCH: ${{ steps.extract_branch.outputs.branch }}
NODE_OPTIONS: --openssl-legacy-provider

- name: Upload script files
uses: actions/upload-artifact@v2
with:
name: script-files
path: ./scripts

- name: Upload production-ready App build files
uses: actions/upload-artifact@v2
with:
name: app-build-files
path: ./build

run_tests:
name: Run tests
runs-on: ubuntu-latest
needs: [build_app]
steps:
- uses: actions/setup-node@v2
with:
node-version: 17.3

- name: Install Node.js HTTP-Server
run: yarn global add http-server

- uses: actions/checkout@v2
with:
path: 'ui-app'

- name: Download artifact - UI app build
uses: actions/download-artifact@v2
with:
name: app-build-files
path: ./ui-app/build

# - name: Download artifact - Storybook build
# uses: actions/download-artifact@v2
# with:
# name: sb-build-files
# path: ./ui-app/storybook-static

# Prepare Basilisk-api ("develop" branch must be cloned)
- name: Clone Basilisk-api
run: git clone -b feature/dockerize-testnet https://github.com/galacticcouncil/Basilisk-api.git

- name: Cache Node Modules for Basilisk-api
id: cache-node-modules-basilisk-api
uses: actions/cache@v2
with:
path: Basilisk-api/node_modules
key: node-modules-basilisk-api-${{ hashFiles('Basilisk-api/yarn.lock') }}

- name: Install Dependencies for Basilisk-api
if: steps.cache-node-modules-basilisk-api.outputs.cache-hit != 'true'
run: |
cd Basilisk-api
yarn install --frozen-lockfile
# Install NPM deps for running tests
- name: Cache Node Modules for ui-app
id: cache-node-modules-ui-app
uses: actions/cache@v2
with:
path: ui-app/node_modules
key: node-modules-ui-app-${{ hashFiles('ui-app/yarn.lock') }}

- name: Install Dependencies for ui-app
if: steps.cache-node-modules-ui-app.outputs.cache-hit != 'true'
run: |
cd ui-app
yarn install --frozen-lockfile
# Update folders structure
- name: Change folders permissions
run: |
chmod -R 777 Basilisk-api
chmod -R 777 ui-app
# Run testnet
- name: Run sandbox testnet
shell: bash
timeout-minutes: 10
run: |
cd Basilisk-api
yarn fullruntime:clean-setup-start
# Double check of testnet status
- name: Wait for Basilisk Node port :9988
shell: bash
timeout-minutes: 2
run: . ./ui-app/scripts/gh-actions-wait-for-port.sh 9988

# Run UI App
- name: Run UI application
shell: bash
run: |
cd ui-app/build
http-server -s -p 3030 -a 127.0.0.1 &
# Check of UI app status
- name: Wait for UI app port :3030
shell: bash
timeout-minutes: 2
run: . ./ui-app/scripts/gh-actions-wait-for-port.sh 3030

# Prepare Playwright env
- name: Install OS dependencies for Playwright
run: npx playwright install-deps

- name: Make e2e testing env vars file visible (required for falnyr/replace-env-vars-action@master)
run: mv ui-app/.env.test.e2e.ci ui-app/e2e-tests-vars.txt
shell: bash

- name: Prepate E2E Tests Env Variables
uses: falnyr/replace-env-vars-action@master
env:
E2E_TEST_ACCOUNT_NAME_ALICE: ${{ secrets.E2E_TEST_ACCOUNT_NAME_ALICE }}
E2E_TEST_ACCOUNT_PASSWORD_ALICE: ${{ secrets.E2E_TEST_ACCOUNT_PASSWORD_ALICE }}
E2E_TEST_ACCOUNT_SEED_ALICE: ${{ secrets.E2E_TEST_ACCOUNT_SEED_ALICE }}
with:
filename: ui-app/e2e-tests-vars.txt

- name: Make e2e testing env vars file hidden
run: mv ui-app/e2e-tests-vars.txt ui-app/.env.test.e2e.ci
shell: bash

# For debug and monitoring purposes
- name: Check Docker containers and ports
if: always()
run: |
docker ps
docker network ls
sudo lsof -i -P -n | grep LISTEN
shell: bash

# Run e2e tests
- name: Run e2e tests
shell: bash
run: |
cd ui-app
DEBUG=pw:browser* HEADFUL=true xvfb-run --auto-servernum -- yarn test:e2e-ci
env:
PLAYWRIGHT_TEST_BASE_URL: ${{ github.event.deployment_status.target_url }}

- name: Sleep for 30 seconds (for compiling html reports)
run: sleep 30s
shell: bash

- name: Upload trace files
if: always()
uses: actions/upload-artifact@v2
with:
name: traces_screenshots
path: ./ui-app/traces

- name: Upload e2e tests report file
if: always()
uses: actions/upload-artifact@v2
with:
name: e2e_tests_report_html
path: ./ui-app/ui-app-e2e-results.html

- name: Upload testnet logs
if: always()
uses: actions/upload-artifact@v2
with:
name: testnet-sandbox-logs
path: ./Basilisk-api/testnet-sandbox-logs
7 changes: 7 additions & 0 deletions .vscode/snipsnap.code-snippets
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html>
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ yarn install
Start Storybook component development environment.

```
yarn storybook
yarn storybook:start
```

Storybook can be opened at [:6006](http://localhost:6006)
Expand Down Expand Up @@ -438,4 +438,4 @@ You have to use legacy openssl provider in node 17+. Set this to node options

```shell
export NODE_OPTIONS=--openssl-legacy-provider
```
```
Loading

0 comments on commit bfcf5a6

Please sign in to comment.