Commit Graph

3 Commits

Author SHA1 Message Date
Jaco Greeff
4f96fc0d3f
Merge next into master (#529)
* Update API deps

* Duplicate new Api from api

* Explorer renders

* Cleanup trapping

* Allow Moment values

* Vector -> Array

* Add mapping FIXME

* Updates

* proposals -> publicProposals

* QueueTx

* nonce -> accountNonce

* Cleanup (some) naming

* FIXME

* Cleanups

* cmp & isZero on UInt

* WIP... storage dropdowns may work after latest API PR...

* Misplaced .public

* Update exposed methods

* Remove getBlock checks (available in poc-3)

* Align method/section

* Align with API (method)

* api-codec -> types

* Reanme API interfaces

* Type updates, still very much a WIP

* We have updating queries... without params

* Chainstate app is working

* Get rid of some params imports

* Cleanups

* Remove app-example... outdated, non-working

* Remove app-example link from README

* Additional cleanups

* InputRpc dropdowns working

* We can make transfers (Transfer app)

* Call doesn't encode toU8a

* Cleanup to use extrinsics from Api

* Remove references to @polkadot/params

* Update deps

* Submitting transactions hsould work in app-*

* Bump

* Extrinsics app renders

* Extrinsic app can transfer

* Adapt travis.yml

* Force things to pass checks...

* Update @polkadot/dev for gh-pages -> next

* Bump dev (hopefully now gh-pages deploy)

* Default theme

* Don't skip signer for sending

* Don't throw on unknown types

* Signer queue rework

* Render input params for rpc

* Explorer click-through working

* Update deps

* WIP#327 - app-accounts with ss58 address inputs

* transformtoss58 returns valid address or null

* syntax

* app-accounts

* app-democracy

* app-extrinsics

* app-rpc

* app-staking

* app-transfer

* Generate ui-identicon from ss58 as input

currently handling null address with null return - there should be a better way to do this but it "works".

* ui-app

adapt onChange Props params

* manage identities with ss58 addresses rather than u8a.

also currently handling null value input, should be a better way to handle this but currently "works".

* ui-signer use ss58 address in keyring

* ui-signer combine duplicate imports

* ui-signer signMessage with ss58 address

derive public key by decoding ss58 input

* use 'accountId' as variable name instead of 'ss58'

* Addressing some issues

* sanity check for accountId by decoding and checking public key

* allow u8a account id types for more flexibility around short address input types in the future

* throw error on generate identicon with empty seed

* fix: accountId over publicKey

Transactions work in extrinsics and transfers.

* fix linting errors in  rpc, addresses, transfer, identicon

* accountId in stakelist

* Allow file upload for Bytes

* Extrinsic change updates correctly, Params track codec instances

* Unused import

* Cleanup conflicts, linting

* [next] Display balance with μ, k & m (#350)

* Display balance with μ, k & m

* balanceFormat to handle UInt

* let -> const

* Format static Balance properly

* Take care of new extrinsics format

* m -> M (not mili, mega)

* [next] Proposals & democracy updates (#352)

* Update README.md

* Proposals actually submit (non-valid atm)

* New API package

* Promposal propose

* Poposal decoding

* Proposal & Referendums show up

* Formats

* Proposal & voting works as expected

* Staking works as expected

* Staking & Democracy fully operational

* Update package.json

* [next] Update API deps (#354)

* Update API deps

* Update type locations

* Update api deps

* [next] Add mnemonic support from keyring (#356)

* Add mnemonic support from keyring

* Bump @polkadot/api

* Bump dependencies (#358)

* [next] Add app-settings (#359)

* [next] Add app-settings

* Update deps, cleanups

* Re-encode address for adding

* Action for seedType selection

* Revert denominations (#360)

* [next] Dependency bumps (#362)

* Bump API decoding

* Bump deps

* [next] Chain configs (#361)

* Revert denominations

* Chain Id

* Distinct colours

* Cleanup options for settings

* Adjust tests aftrer colour change

* Gated on isConnected & isReady

* Allow selection/add of AccountIndex

* Remove examples (code removed already)

* Reverse Id <-> Index lookups

* Index reverse lookups

* Usable AccountIndex

* [next] Bump API (#363)

* [next] Merge master (#364)

* Update README.md

* Re-lock account only after save

* trying to get mapping of nominators correct (#346)

* trying to get mapping of nominators correct

* changed double quote to single

* Fix for disabled chain state button bug (#351)

* merge prev and next params on Selection key change

* build error

* [next] Balance formatting (#365)

* Update README.md

* Re-lock account only after save

* trying to get mapping of nominators correct (#346)

* trying to get mapping of nominators correct

* changed double quote to single

* Fix for disabled chain state button bug (#351)

* merge prev and next params on Selection key change

* build error

* Load order (we need chain)

* Dropdown for seed type selection

* Allow SI unit selection on number inputs

* Remove unused function

* Cleanup BalanceFormatter

* Fix tests

* [next] Bump API version (#366)

* Bump API version

* Proposal construction & chain units

* Update Extrinsic -> Call

* Pass correct call params

* Cleanup linting

* Re-encode address on loading

* Bump

* Lint fix.

* [next] Import from package indexes (#370)

* [next] Import form package indexes

* Update deps, fix Transfer balance checks

* Add error on unlock

* Save account with hex encoded (not address)

* Import InputAddress for swap

* Bump @polkadot/api (staking nominators show up)

* Align api & util deps

* Bump @polkadot/api

* [next] Bump API, adjust call/method (#372)

* Bump API, adjust call/method

* Add votes correctly to yay/nay

* [next] Local Testnet

* Don't link block 0

* [next] FF Warning message (#374)

* FF Warning message

* Bump deps, massage message a bit

* Bump deps

* i18next upgrade changes

* Bump yarn to 1.10.1 in engines, travis (#379)

* [next] submitAndWatchExtrinsic for transactions (#377)

* WIP: Replace submitExtrinsic with submitAndWatchExtrinsic

TODO:
* don't `complete` when calling send, rather update as update messages come in from API
* adjust queue statuses in UI with new Status codec type from API.

* update api wrapper for subscribeAndWatch

* Update index.tsx

* subscribe to updates

* remove unneeded subscribe

* display result type

* Wrap up submitAndWatch status display

* Status background colours

* Revert indent

* Queue status icons (#380)

* [next] Bump dependencies (#383)

* Bump dependencies

* Update mock creation

* Don't mangle classes via uglify (#384)

* [next] Update status overlay styling (#385)

* Update status overlay styling

* Adjust colours for status messages

* Slight padding adjustments

* [next] refactor: Create export index files in ui-react-rx/src/{with/util} for single line destructuring imports (#388)

* refactor: Create ui-react-rx/src/with index of exports. Import single line destructuring

* refactor: Create ui-react-rx/src/util index of exports. Import single line destructuring

* refactor: Use ui-react-rx/src/ index of exports. Import single line destructuring

* refactor: Refactor to use exported index

* refactor: Refactor to use another exported index

* fix: Add missing license headers. Avoid import from index in same location

* [next] Support latest substrate master (#390)

* Update deps (api, compact support)

* Bump deps

* Update deps

* Compact<BlockNumber> for Header

* Handle Compact<*> rendering

* Cleanup warnings

* Update deps

* Not perfect, but warn on (invalid) hashes for blocks

* [next] keyring classify (#393)

* refactor: reorder imports and props alphabetically

* fix: Make class methods private

* fix: Restrict user restoring account to select only .json. Add missing withLabel

* refactor: Replace onBack with onCreateAccount and onRestoreAccount

* fix: Show console.log of error in try/catch of Backup/Restore

* fix: accountAll is array of objects

* refactor: Move Backup keyring logic into ui-keyring

* refactor: Move restoreAccount logic into ui-keyring

* refactor: Move validatePass to ui-keyring as isPassValid with MAX_PASSWORD_LEN

* refactor: Issue #138 convert closure to separate function declare, call, export

* refactor: Issue #138 convert function to ES6 class object

* refactor: Move addPair, create, createMnemonic, restore, save into Keyring class

* refactor: Move backup/encrypt/forget account, get accounts, and save account meta functions into Keyring class

* refactor: Move get address/addresses, forget/save address, and save recent functions into Keyring class

* refactor: Move isPassValid, isAvailable functions into Keyring class

* refactor: Move loadAll into Keyring class

* refactor: Move much of ui-keyring/options into Keyring class

* refactor: Move private methods to top of class

* fix: fix: Prevent creating multiple instances of Keyring class

* Prevent creating multiple instances of Keyring class. i.e. the following does not create the second instance:

```
const keyringInstance = new Keyring();
const keyringInstance2 = new Keyring();
```

* References:
	* https://codepen.io/JoeCoulam/pen/mRqbzz
	* https://medium.com/@dmnsgn/singleton-pattern-in-es6-d2d021d150ae
	* https://stackoverflow.com/questions/26205565/converting-singleton-js-objects-to-use-es6-classes/26227662#26227662

* fix: Prevent calling initOptions of Keyring singleton multiple times

* the following calls to initOptions are prevented since initOptions called when instance created with by loadAll() function:

```
const keyringInstance = new Keyring();
keyringInstance.initOptions();
keyringInstance.initOptions();
```

* test: Add test for Keyring singeton instance check and so initOptions only callable once

* feat: Move Keyring options back. Remove singleton check. Move initOptions check. Only export Keyring instance

* Move keyring options back into options folder

* Remove checking if Keyring is singleton

* Move checking if initOptions called multiple times and associated tests out of Keyring and into options folder file

* Add type to pair to fix linting

* Remove exporting Keyring class, only Keyring instance is exported

* refactor: Class-ify the Keyring options directory into a class named

* fix: Store state outside of Keyring instance

* refactor: Move keyring state into Keyring class. Add getters and setters

* Move observable accounts and addresses into Keyring class.

* Rename KeyringInstance interface to KeyringStruct (similar to app-settings)

* Add getter for keyring, accounts, and addresses to Keyring

* Add setter for keyring

* Add AccountSubject type

* Fix State type to use AccountSubject instead of AddressSubject

* Small private member tweaks

* Rework (overzealous private members)

* Fix rename in test

* [next] Block explorer event display (#392)

* Update README.md

* Re-lock account only after save

* trying to get mapping of nominators correct (#346)

* trying to get mapping of nominators correct

* changed double quote to single

* Fix for disabled chain state button bug (#351)

* merge prev and next params on Selection key change

* build error

* Updated required Node version in README (#367)

The minimum Node version is 10.1.0 as specified in the package.json 'engines'. The installation fails if the node version is below that (eg. v10.0.0 ), that's why I changed it in the README

* Simple (unformatted) event display

* section, method + types

* Display events on explorer

* Styling & overflow fixes

* Fix linting issues

* Node 10.13.0 LTS

* Revert message on block, reduce flicker

* [next] Update nvmrc version. Add missing packages to Readme. Indicate LTS required (#395)

* docs: Fix typo in Readme

* fix: Update nvmrc to version in package.json

* docs: Add missing packages to Readme. Indicate that LTS is required

* Render logs in expanded block display (#396)

* [next] Cleanup staking list balance displays (#397)

* Cleanup staking list balance displays

* Don't naked map balances (params passed)

* Cleanup block display with cleaner formatting (#398)

* Only filter dev accounts when in dev (#401)

* [next] Move BIP generation to worker (UI responsiveness) (#400)

* Move BIP generation to worker (responsive)

* Test & cleanup via local prod build

* [next] Fix length encoding for uploaded Bytes (#405)

* Fix length encoding for uploaded Bytes

* Remove addressed FIXME

* Cleanup linting, adjust encoding via helpers

* [next] Handle null nonce in extrinsics (in addition to undefined) (#407)

* Handle null nonce (in addition to undefined)

* Adjust types for partials

* Helper for submit RPC

* [next] Highlight validators (#402)

* Add isHiglight to IdentityIcon

* Display validator highlight in Address{Row,Summary}

* Highlight validators in AddressMini

* Highlight validators in AddressInput

* Display zero balalnce as 0 instead of 0.000f (#408)

* Cleanup explorer header display (#410)

* [next] Align article headers (all h3, no extra classes) (#411)

* Align article headers (all h3, no extra classes)

* Adjust overflowing columns in explorer

* Adjust app contemnt to cover screen (#412)

* [next] Retrieve hash instead of calculating (slower) (#415)

* Retrieve hash instead of calculating (slower)

* Cleanups

* Allow raw-key queries via the storage app (#416)

[next] Allow raw-key queries via the storage app

* [next] Remove IdentityIcon bond dependencies (#419)

* Remove IdentityIcon bond dependencies

* Cleanup tests

* Update README

* Update header

* Update headers

* Catch & display observable status errors (#422)

* [next] refactor: Move backup/restore functionality to Keyring. See details (#386)

* refactor: reorder imports and props alphabetically

* fix: Make class methods private

* fix: Restrict user restoring account to select only .json. Add missing withLabel

* refactor: Replace onBack with onCreateAccount and onRestoreAccount

* fix: Show console.log of error in try/catch of Backup/Restore

* fix: accountAll is array of objects

* refactor: Move Backup keyring logic into ui-keyring

* refactor: Move restoreAccount logic into ui-keyring

* refactor: Move validatePass to ui-keyring as isPassValid with MAX_PASSWORD_LEN

* fix: Change allAccounts type to SubjectInfo

* refactor: Example with clearer usage of  for React Dropzone

* [next] refactor: Issue #138. Convert closure into ES6 class object. Move methods into class (#387)

* refactor: Issue #138 convert closure to separate function declare, call, export

* refactor: Issue #138 convert function to ES6 class object

* refactor: Move addPair, create, createMnemonic, restore, save into Keyring class

* refactor: Move backup/encrypt/forget account, get accounts, and save account meta functions into Keyring class

* refactor: Move get address/addresses, forget/save address, and save recent functions into Keyring class

* refactor: Move isPassValid, isAvailable functions into Keyring class

* refactor: Move loadAll into Keyring class

* refactor: Move much of ui-keyring/options into Keyring class

* refactor: Move private methods to top of class

* fix: fix: Prevent creating multiple instances of Keyring class

* Prevent creating multiple instances of Keyring class. i.e. the following does not create the second instance:

```
const keyringInstance = new Keyring();
const keyringInstance2 = new Keyring();
```

* References:
	* https://codepen.io/JoeCoulam/pen/mRqbzz
	* https://medium.com/@dmnsgn/singleton-pattern-in-es6-d2d021d150ae
	* https://stackoverflow.com/questions/26205565/converting-singleton-js-objects-to-use-es6-classes/26227662#26227662

* fix: Prevent calling initOptions of Keyring singleton multiple times

* the following calls to initOptions are prevented since initOptions called when instance created with by loadAll() function:

```
const keyringInstance = new Keyring();
keyringInstance.initOptions();
keyringInstance.initOptions();
```

* test: Add test for Keyring singeton instance check and so initOptions only callable once

* feat: Move Keyring options back. Remove singleton check. Move initOptions check. Only export Keyring instance

* Move keyring options back into options folder

* Remove checking if Keyring is singleton

* Move checking if initOptions called multiple times and associated tests out of Keyring and into options folder file

* Add type to pair to fix linting

* Remove exporting Keyring class, only Keyring instance is exported

* refactor: Class-ify the Keyring options directory into a class named

* fix: Store state outside of Keyring instance

* refactor: Move keyring state into Keyring class. Add getters and setters

* Move observable accounts and addresses into Keyring class.

* Rename KeyringInstance interface to KeyringStruct (similar to app-settings)

* Add getter for keyring, accounts, and addresses to Keyring

* Add setter for keyring

* Add AccountSubject type

* Fix State type to use AccountSubject instead of AddressSubject

* Small private member tweaks

* Rework (overzealous private members)

* Fix rename in test

* merge latest from next. fix merge conflicts

* fix linting error

* fix: Remove unncessary code

* Bump API version (bugfixes) (#424)

* [next] Apply fee color classes correctly (#426)

* Apply fee color classes correctly

* Class ordering

* Adjust menu & IdentityIcon styling (#427)

* Cleanup proposal & referendum display (#429)

* [next] Cleanup Referendums & voting process (with Vec<KV>) (#431)

* Cleanup Referendums & voting process (with Vec<KV>)

* Remove FIXME (addressed)

* [next] Cleanup styling (#428)

* Adjust backgrounds to be slightly darker

* Cleanup validator/intentions lists

* update readme reflect removal of ui-react (#434)

* moved shared function to parent (#404)

* moved shared function to parent

* lint

* remove balance array dance

* lint

* Bump deps, metadata parsing (#436)

* article styling updates (#437)

* [next] Merge master, param change update (#438)

* Marge master, param change update

* Tie params to section.method

* [next] autoFocus app fields (#439)

* autoFocus app fields

* Toolbox autoFocus

* Cleanup warnings in staking nominate

* Align borders

* Remove unused var

* [next] Revert menu border override (#440)

* Revert menu border override

* Revert article single border

* Menu background

* Align grays

* Lighten content background

* [next] Support dynamic Tuple & Array inputs (#441)

* Allow Tuple value entry

* Fire Param events

* Remove extra debug log

* Allow entry of Array<*>

* Bump deps

* Bump deps (API d.ts fixed)

* [next] Display intention/validator name in staking list #303 (#448)

* Added getAccount() method to ui-keyring package

* Added getDisplayName function for staking accounts/ addresses

* removed deprecated argument from earlier approach

* formatting (added empty line)

* Removed unnecessary typecheck & encoding from getAccount(),

* Added getAccount to types.d.ts

* removed space

* changed type of `address` to string (failing build fix)

* [next] Backup warning modal on account creation #394 (#447)

* Added address summary and auto-download of backup file to 'create'-modal

* Removed deprecated code after falsy merge

* Fixed typo Plesae -> Please

* Move check for whenCreated property from saveAccount to separate method

* removed unnecessary return statement

* grammar fix 'was' -> 'is'

* Added Highlight to Modal class, styling adjustments

* removed surrounding <p> in modal content

* Changed Modal.Highlight to built in MUI Modal.Description

* renamed translation key of Modal.Description

* Moved timestamp creation back to save Account

* [next] Explicit Identityicon prefix (#446)

* set IdentityIcon default prefix

* Update with import from keyring

* Rework encoding/decoding of addresses

* Update keyring deps

* [next] Bump deps (#449)

* Bumpo deps, work around i18next definitions being wonky (again)

* Cleanup yarn.lock

* [next] add user notifications in App-Accounts (#391)

* add toaster for app-accounts status changes

* status notifs

* linter

* lint

* refactor with addressmini

* remove debugger statement

* fixintl, status obj creation pattern

* lint

* Track events globally, alert use (notification pop-up)  (#413)

* move Status component to ui-app

* move status stuff up the component tree

some more generalizations with action types

* global status

currently works in app-accounts and ui-signer

* I18n and linting

* lintlint

* style

* add notifs to app-address

* status notifs with backup, changepass

* addresses unnecessary translates

* lint

* Fix merge

* Vector should not render add/remove in isDisabled mode (#452)

* [next] Bump API version (#455)

* Bump API version

* Bump deps

* Update README and LICENSE

* Bump dependencies

* [next] Track extrinsics, don't allow until accountIndex is updated (#406)

* dont allow queueing until accountindex increments

* WIP: deny txn submit before account nonce increments

* readding blocked extrinsics to the queue. Still need to properly set the accountNonce though

* queue unclog

* remove unnecessary _this=this scoping dance

* Moving the need for `?:` to a separate issue

* update types to match codec, account for different accountid with same nonce

* Fix toString for undefined (#456)

[next] Fix toString for undefined

* [next] Cleanup translate HOC definitions (#457)

* Cleanup translate HOC definitions

* Alignment

* [next] Bump API for Grandpa compat (#461)

* Bump API for Grandpa compat

* Update types for new API

* [next] Handle byte display consistently (#463)

* Handle byte display consistently

* Chack blocked status against completed status

* Bump

* Democracy countdown (lauch & voting) (#464)

* Bump API to handle StorageData -> Bytes with prefix (#466)

* Bump dependencies, align with stricter TS checks (#467)

* Only remove local files, not nested (#468)

* Bump api deps (#469)

* Display nonce via toString(), cleanup blocked checks (#470)

* [next] Bump deps, update with linting rules (#472)

* Bump deps, update with linting rules

* Update root package config

* Revert testing ruleset config

* Update tslint config pulling in dev-react

* Bump deps with UI packages, remove now unused eslint config (#474)

* Move types.d.ts -> types.ts (#475)

* [next] Bump dependencies (#481)

* Bump deps

* Bump deps

* Cleanup lintin issues with 3.2.1

* Bump @polkadot/api with Tuple map support

* Format JSON results from RPC app

* [next] Make settings accessible from non-running node (#484)

* Add onCopy to IdentityIcon

* Allow settings to be accessible when no node

* Proper license naming for identicon (#488)

* [next] Split ui-{identicon,keyring,settings} into ui repo (#491)

* Split ui-{identicon,keyring,settings} into ui repo

* Correct settings import from ui-app

* Use @polkadot/ui-* split from npm

* Update with latest @polkadot/ui

* Migrate to travis-ci.com, bump deps

* Change non-local imports to direct

* #459 Add spread and copy buttons for substrate.code query (#465)

* #459 Add spread and copy buttons for substrate.code query

* fix code style checks

* render spread&copy buttons for all queries which produce byte code

* Type and name refinement

* #459 A first revision where spread functionality for Byte queries is implemented

* remove state property

* Review fixes

* Review fixes

* break query output for overflowing content

* call valueToText with -1

* Fix linter issue

* [next] Global shared status queue and consumer (#490)

* Global shared status queue and consumer

* Bump deps

* Adjust styling

* Remove copy (unimplemented), spread & concat

* [next] Display received events (balalnces.Transfer atm) (#494)

* Display received events (balalnces.Transfer atm)

* Cleanup Status class

* Keys for values in Vector

* Extra information on address decode errors (#495)

* [next] Cleanup React & API errors (#498)

* Cleanup React & API errors

* Revert value override, breaks input

* InputNumber does not switch between controlled and uncontrolled

* Status has key for entries

* Adjust receive icon

* Bump dependencies, cleanup Unknown types (#499)

* Bump dependencies, cleanup Unknown types

* Cleanup status styling, icon stretch

* [next] fix: Fixes #493. Contain logs digest item within div (#497)

* fix: Fixes #493. Contain logs digest item within div

* refactor: Remove monospace and drop-down css. Add only wrapping and space between elements

* fix: Remove AuthoritiesChange, forgotten how that got there, but not required

* Allow onCopy Status for IdentityIcon (#501)

* Allow onCopy Status for IdentityIcon

* Clanup same-package imports

* [CI Skip] Update .codeclimate.yml (#502)

* [next] Bump dependencies (#503)

* Bump dependencies

* Bump dependencies

* Downgrade react-dropzone (8.x has new context API)

* Bump deps (API types fix)

* Cater for check where key has no meta (#504)

* Align number inputs to 0 defaults (#506)

* fix InputAddress display (#509)

* [next] Bump dependencies (#512)

* Bump dependencies

* Don't change status (flicker) when completed

* Expand status timeout

* Pull svg from ui-assets (#513)

* [next] Read chain properties, inject (#514)

* Read chain properties, inject

* Linting

* Bump deps (#520)

* Bump deps

* ... and include lockfile

* [next] Support latest Polkadot types (#523)

* Bump deps, latest Polkadot types

* Rendered for ParaId

* [next] Charred Cherry support (#522)

* Charred Cherry support

* Update deps to include CC

* Update injection & new method interfaces

* Naming, extrinsic vs method

* Update ExtrinsicStatus results

* Bump deps

* [next] launguage -> language (#524)

* [next] Bump deps, support latest metadata struct (#525)

* Bump deps, support latest metadata

* Bumpdeps

* Bump dev

* Bump local deps

* Display target period * 2 (#526)

* Alexanber support (#528)

* Bump API

* Bump deps

* Fix referendums, chain id for Alexander

* Bump deps
2018-12-21 17:17:26 +01:00
Jaco Greeff
9c89026e6e
Copyright project authors (#95)
* Copyright project authors

* Add contributors
2018-06-13 22:32:49 +02:00
Jaco Greeff
dfaddef7eb
Basic account management app (#29)
* Basic account management functions

* Allow dividers

* Use dividers to split menu

* Bump

* Basic cleanups
2018-05-08 17:47:34 +02:00