Remove label help tooltips (#8767)

* Remove label help tooltips

* Fix missed item

* Adjust

* adjust

* Back to defaults
This commit is contained in:
Jaco 2023-01-12 10:11:02 +02:00 committed by GitHub
parent ab8cb517b4
commit e1727917d1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
133 changed files with 54 additions and 371 deletions

View File

@ -8,19 +8,20 @@
<title><%= htmlWebpackPlugin.options.PAGE_TITLE %></title>
<script type="text/javascript" src="env-config.js"></script>
<style>
/*
1.125 (8:9) factor (https://www.modularscale.com/?1&rem&1.067, https://type-scale.com/) -
1.424rem
1.266rem
1.125rem
1rem
0.889rem
0.79rem
*/
:root {
--font-mono: 0.889em Consolas, monaco, "Ubuntu Mono", "Liberation Mono", "Courier New", Courier, monospace;
--font-sans: 1em "-apple-system", BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
/*
1.125 (8:9) factor (https://www.modularscale.com/?1&rem&1.067, https://type-scale.com/) -
1.424rem
1.266rem
1.125rem
1rem
0.889rem
0.79rem
*/
--font-percent-small: 88.9%;
--font-percent-tiny: 79.0%;
--font-size-base: 1rem;
@ -29,18 +30,23 @@
--font-size-h3: 1.125rem;
--font-size-small: 0.889rem;
--font-size-tiny: 0.79rem;
--font-weight-bold: 700;
--font-weight-header: 400;
--font-weight-bold: 700; /* semi-bold = 600 */
--font-weight-light: 200;
--font-weight-normal: 400;
--font-size-label: 0.889rem;
--font-weight-label: 700;
--text-transform-label: lowercase;
--opacity-light: 0.6;
--width-full: 1750px;
--width-half: 875px;
--width-shortaddr: 6.5em;
--width-shorthash: 9em;
--font-weight-header: var(--font-weight-normal);
--font-size-label: var(--font-size-small);
--font-weight-label: var(--font-weight-bold);
--text-transform-label: lowercase;
--bg-menu-hover: rgba(255, 255, 255, 0.2);
}

View File

@ -192,7 +192,6 @@ function VanityApp ({ className = '', onStatusChange }: Props): React.ReactEleme
<Input
autoFocus
className='medium'
help={t<string>('Type here what you would like your address to contain. This tool will generate the keys and show the associated addresses that best match your search. ')}
isDisabled={isRunning}
isError={!isMatchValid}
label={t<string>('Search for')}
@ -202,7 +201,6 @@ function VanityApp ({ className = '', onStatusChange }: Props): React.ReactEleme
/>
<Dropdown
className='medium'
help={t<string>('Should the search be case sensitive, e.g if you select "no" your search for "Some" may return addresses containing "somE" or "sOme"...')}
isDisabled={isRunning}
label={t<string>('case sensitive')}
onChange={setWithCase}
@ -214,7 +212,6 @@ function VanityApp ({ className = '', onStatusChange }: Props): React.ReactEleme
<Dropdown
className='medium'
defaultValue={type}
help={t<string>('Determines what cryptography will be used to create this account. Note that to validate on Polkadot, the session account must use "ed25519".')}
label={t<string>('keypair crypto type')}
onChange={setType}
options={isEthereum ? settings.availableCryptosEth : settings.availableCryptos}

View File

@ -72,7 +72,6 @@ function Backup ({ address, onClose }: Props): React.ReactElement<Props> {
<div>
<Password
autoFocus
help={t<string>('The account password as specified when creating the account. This is used to encrypt the backup file and subsequently decrypt it when restoring the account.')}
isError={isPassTouched && !isPassValid}
label={t<string>('password')}
onChange={_onChangePass}

View File

@ -103,7 +103,6 @@ function ChangePass ({ address, className = '', onClose }: Props): React.ReactEl
<Modal.Columns hint={t<string>('The existing account password as specified when this account was created or when it was last changed.')}>
<Password
autoFocus
help={t<string>('The existing account password as specified when this account was created or when it was last changed.')}
isError={!isOldValid}
label={t<string>('your current password')}
onChange={_onChangeOld}
@ -113,7 +112,6 @@ function ChangePass ({ address, className = '', onClose }: Props): React.ReactEl
</Modal.Columns>
<Modal.Columns hint={t<string>('This will apply to any future use of this account as stored on this browser. Ensure that you securely store this new password and that it is strong and unique to the account.')}>
<Password
help={t<string>('The new account password. Once set, all future account unlocks will be performed with this new password.')}
isError={!newPass1.isValid}
label={t<string>('your new password')}
onChange={_onChangeNew1}
@ -122,7 +120,6 @@ function ChangePass ({ address, className = '', onClose }: Props): React.ReactEl
value={newPass1.password}
/>
<Password
help={t<string>('Verify the password entered above.')}
isError={!newPass2.isValid}
label={t<string>('password (repeat)')}
onChange={_onChangeNew2}

View File

@ -261,9 +261,6 @@ function Create ({ className = '', onClose, onStatusChange, seed: propsSeed, typ
{step === 1 && <>
<Modal.Columns hint={t<string>('The secret seed value for this account. Ensure that you keep this in a safe place, with access to the seed you can re-create the account.')}>
<TextArea
help={isEthereum
? t<string>("Your ethereum key pair is derived from your private key. Don't divulge this key.")
: t<string>('The private key for your account is derived from this seed. This seed must be kept secret as anyone in its possession has access to the funds of this account. If you validate, use the seed of the session account as the "--key" parameter of your node.')}
isAction
isError={!isSeedValid}
isReadOnly={seedType === 'dev'}
@ -302,7 +299,6 @@ function Create ({ className = '', onClose, onStatusChange, seed: propsSeed, typ
<Modal.Columns hint={t<string>('If you are moving accounts between applications, ensure that you use the correct type.')}>
<Dropdown
defaultValue={pairType}
help={t<string>('Determines what cryptography will be used to create this account. Note that to validate on Polkadot, the session account must use "ed25519".')}
label={t<string>('keypair crypto type')}
onChange={_onChangePairType}
options={
@ -336,7 +332,6 @@ function Create ({ className = '', onClose, onStatusChange, seed: propsSeed, typ
: (
<Modal.Columns hint={t<string>('The derivation path allows you to create different accounts from the same base mnemonic.')}>
<Input
help={(t<string>('You can set a custom derivation path for this account using the following syntax "/<soft-key>//<hard-key>". The "/<soft-key>" and "//<hard-key>" may be repeated and mixed`. An optional "///<password>" can be used with a mnemonic seed, and may only be specified once.'))}
isDisabled={seedType === 'raw'}
isError={!!deriveValidation?.error}
label={t<string>('secret derivation path')}

View File

@ -43,7 +43,6 @@ const CreateAccountInputs = ({ name: { isNameValid, name }, onCommit, setName, s
<Modal.Columns hint={t<string>('The name for this account and how it will appear under your addresses. With an on-chain identity, it can be made available to others.')}>
<Input
className='full'
help={t<string>('Name given to this account. You can edit it. To use the account to validate or nominate, it is a good practice to append the function of the account in the name, e.g "name_you_want - stash".')}
isError={!isNameValid}
label={t<string>('name')}
onChange={_onChangeName}

View File

@ -72,7 +72,6 @@ function CreateEthDerivationPath ({ className,
{useCustomIndex
? (
<InputNumber
help={t<string>('You can set a custom derivation index for this account')}
isDecimal={false}
label={t<string>('Custom index')}
onChange={setCustomIndex}
@ -81,7 +80,6 @@ function CreateEthDerivationPath ({ className,
)
: (
<Dropdown
help={t('The address index (derivation on account) to use')}
label={t('address index')}
onChange={setAddIndex}
options={addressList}
@ -98,9 +96,6 @@ function CreateEthDerivationPath ({ className,
{useCustomPath
? (
<Input
help={t<string>(
'You can set a custom derivation path for this account using the following syntax "m/<purpose>/<coin_type>/<account>/<change>/<address_index>'
)}
isError={!!deriveValidation?.error}
label={t<string>('secret derivation path')}
onChange={onChange}

View File

@ -53,21 +53,18 @@ function CreateSuriLedger ({ className, onChange, seedType }: Props): React.Reac
? (
<>
<Dropdown
help={t('The network to derive on')}
label={t('Ledger app type (originated from)')}
onChange={setChainType}
options={netOpts.current}
value={chainType}
/>
<Dropdown
help={t('The account type (derivation) to use')}
label={t('account type')}
onChange={setAccIndex}
options={accOps.current}
value={accIndex}
/>
<Dropdown
help={t('The address index (derivation on account) to use')}
label={t('address index')}
onChange={setAddIndex}
options={addOps.current}

View File

@ -76,7 +76,6 @@ function Delegate ({ onClose, previousAmount, previousConviction, previousDelega
<Modal.Columns hint={t('The amount to allocate and the conviction that will be applied to all votes made on a referendum.')}>
<InputBalance
autoFocus
help={t<string>('Amount to delegate for any democracy vote. This is adjusted using the available funds on the account.')}
isError={!!amountError?.error}
isZeroable={false}
label={t<string>('delegating amount')}
@ -96,7 +95,6 @@ function Delegate ({ onClose, previousAmount, previousConviction, previousDelega
onError={setAmountError}
/>
<ConvictionDropdown
help={t<string>('The conviction that will be used for each delegated vote.')}
label={t<string>('conviction')}
onChange={setConviction}
value={conviction}

View File

@ -148,7 +148,6 @@ function Derive ({ className = '', from, onClose }: Props): React.ReactElement {
const sourceStatic = (
<InputAddress
help={t<string>('The selected account to perform the derivation on.')}
isDisabled
label={t<string>('derive root account')}
value={from}
@ -178,7 +177,6 @@ function Derive ({ className = '', from, onClose }: Props): React.ReactElement {
{sourceStatic}
<Password
autoFocus
help={t<string>('The password to unlock the selected account.')}
isError={!!lockedError}
label={t<string>('password')}
onChange={_onChangeRootPass}
@ -195,7 +193,6 @@ function Derive ({ className = '', from, onClose }: Props): React.ReactElement {
{sourceStatic}
<Input
autoFocus
help={t<string>('You can set a custom derivation path for this account using the following syntax "/<soft-key>//<hard-key>///<password>". The "/<soft-key>" and "//<hard-key>" may be repeated and mixed`.')}
label={t<string>('derivation path')}
onChange={setSuri}
placeholder={t<string>('//hard/soft')}

View File

@ -151,7 +151,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
<Modal.Content>
<Input
autoFocus
help={t<string>('The name that will be displayed in your accounts list.')}
isError={!okDisplay}
label={t<string>('display name')}
maxLength={32}
@ -164,7 +163,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
value={hasLegal}
>
<Input
help={t<string>('The legal name for this identity.')}
isDisabled={!hasLegal}
isError={!okLegal}
label={t<string>('legal name')}
@ -179,7 +177,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
value={hasEmail}
>
<Input
help={t<string>('The email address associated with this identity.')}
isDisabled={!hasEmail}
isError={!okEmail}
label={t<string>('email')}
@ -194,7 +191,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
value={hasWeb}
>
<Input
help={t<string>('An URL that is linked to this identity.')}
isDisabled={!hasWeb}
isError={!okWeb}
label={t<string>('web')}
@ -209,7 +205,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
value={hasTwitter}
>
<Input
help={t<string>('The twitter name for this identity.')}
isDisabled={!hasTwitter}
isError={!okTwitter}
label={t<string>('twitter')}
@ -223,7 +218,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
value={hasRiot}
>
<Input
help={t<string>('a riot name linked to this identity')}
isDisabled={!hasRiot}
isError={!okRiot}
label={t<string>('riot name')}
@ -235,7 +229,6 @@ function IdentityMain ({ address, className = '', onClose }: Props): React.React
</WrapToggle>
<InputBalance
defaultValue={api.consts.identity?.basicDeposit}
help={t<string>('Total amount of fund that will be reserved. These funds are returned when the identity is cleared')}
isDisabled
label={t<string>('total deposit')}
/>

View File

@ -124,7 +124,6 @@ function Import ({ className = '', onClose, onStatusChange }: Props): React.Reac
<InputFile
accept={acceptedFormats}
className='full'
help={t<string>('Select the JSON key file that was downloaded when you created the account. This JSON file contains your private key encrypted with your password.')}
isError={!pair}
label={t<string>('backup file')}
onChange={_onChangeFile}
@ -135,7 +134,6 @@ function Import ({ className = '', onClose, onStatusChange }: Props): React.Reac
<Password
autoFocus
className='full'
help={t<string>('Type the password chosen at the account creation. It was used to encrypt your account\'s private key in the backup file.')}
isError={!isPassValid}
label={t<string>('password')}
onChange={_onChangePass}

View File

@ -91,7 +91,6 @@ function LedgerModal ({ className, onClose }: Props): React.ReactElement<Props>
<Input
autoFocus
className='full'
help={t<string>('Name given to this account to uniquely identity the account to yourself.')}
isError={!isNameValid}
label={t<string>('name')}
onChange={_onChangeName}
@ -101,7 +100,6 @@ function LedgerModal ({ className, onClose }: Props): React.ReactElement<Props>
</Modal.Columns>
<Modal.Columns hint={t('The account type that you wish to create. This is the top-level derivation.')}>
<Dropdown
help={t('The account type (derivation) to use')}
label={t('account type')}
onChange={setAccIndex}
options={accOps.current}
@ -110,7 +108,6 @@ function LedgerModal ({ className, onClose }: Props): React.ReactElement<Props>
</Modal.Columns>
<Modal.Columns hint={t('The address index on the account that you wish to add. This is the second-level derivation.')}>
<Dropdown
help={t('The address index (derivation on account) to use')}
label={t('address index')}
onChange={setAddIndex}
options={addOps.current}

View File

@ -172,7 +172,6 @@ function MultisigApprove ({ className = '', onClose, ongoing, threshold, who }:
<Modal.Content>
<Modal.Columns hint={t('The call hash from the list of available and unapproved calls.')}>
<Dropdown
help={t<string>('The call hashes that have not been executed as of yet.')}
label={t<string>('pending hashes {{count}}', {
replace: { count: hashes.length }
})}
@ -213,7 +212,6 @@ function MultisigApprove ({ className = '', onClose, ongoing, threshold, who }:
)}
<Modal.Columns hint={t('The operation type to apply. For approvals both non-final and final approvals are supported.')}>
<Dropdown
help={t<string>('Either approve or reject this call.')}
label={t<string>('approval type')}
onChange={setType}
options={callOptRef.current}
@ -225,7 +223,6 @@ function MultisigApprove ({ className = '', onClose, ongoing, threshold, who }:
<Modal.Columns hint={t('For approvals outstanding approvers will be shown, for hashes that should be cancelled the first approver is required.')}>
<InputAddress
filter={whoFilter}
help={t<string>('The signatory to send the approval/cancel from')}
label={t<string>('signatory')}
onChange={setSignatory}
/>
@ -250,7 +247,6 @@ function MultisigApprove ({ className = '', onClose, ongoing, threshold, who }:
: (
<Input
autoFocus
help={t('For final approvals, the actual full call data is required to execute the transaction')}
isError={!callHex || !!callError}
label={t('call data for final approval')}
onChange={setCallHex}

View File

@ -180,7 +180,6 @@ function Multisig ({ className = '', onClose, onStatusChange }: Props): React.Re
<InputAddressMulti
available={availableSignatories}
availableLabel={t<string>('available signatories')}
help={t<string>('The addresses that are able to approve multisig transactions. You can select up to {{maxHelpers}} trusted addresses.', { replace: { maxHelpers: MAX_SIGNATORIES } })}
maxCount={MAX_SIGNATORIES}
onChange={_onChangeAddressMulti}
value={signatories}
@ -194,7 +193,6 @@ function Multisig ({ className = '', onClose, onStatusChange }: Props): React.Re
accept={acceptedFormats}
className='full'
clearContent={!uploadedSignatories.length && isUploadedFileValid}
help={t<string>('Select a JSON key file with the list of signatories.')}
isError={!isUploadedFileValid}
label={t<string>('upload signatories list')}
onChange={_onChangeFile}
@ -230,7 +228,6 @@ function Multisig ({ className = '', onClose, onStatusChange }: Props): React.Re
)}
<Modal.Columns hint={t<string>('The threshold for approval should be less or equal to the number of signatories for this multisig.')}>
<InputNumber
help={t<string>('The threshold for this multisig')}
isError={!isThresholdValid}
label={t<string>('threshold')}
onChange={_onChangeThreshold}
@ -241,7 +238,6 @@ function Multisig ({ className = '', onClose, onStatusChange }: Props): React.Re
<Input
autoFocus
className='full'
help={t<string>('Name given to this multisig. You can edit it at any later point in time.')}
isError={!isNameValid}
label={t<string>('name')}
onChange={_onChangeName}

View File

@ -56,7 +56,6 @@ export default function PasswordInput ({ onChange, onEnter }: Props): React.Reac
>
<Password
className='full'
help={t<string>('This password is used to encrypt your private key. It must be strong and unique! You will need it to sign transactions with this account. You can recover this account using this password together with the backup file (generated in the next step).')}
isError={!isPass1Valid}
label={t<string>('password')}
onChange={_onPassword1Change}
@ -65,7 +64,6 @@ export default function PasswordInput ({ onChange, onEnter }: Props): React.Reac
/>
<Password
className='full'
help={t<string>('Verify the password entered above.')}
isError={!isPass2Valid}
label={t<string>('password (repeat)')}
onChange={onPassword2Change}

View File

@ -81,7 +81,6 @@ function ProxyAdd ({ className = '', onClose, onStatusChange }: Props): React.Re
<Modal.Columns hint={t<string>('The address that has previously setup a proxy to one of the accounts that you control.')}>
<InputAddressSimple
autoFocus
help={t<string>('The address that you have a valid proxy setup for.')}
isError={!proxyInfo || proxyInfo.isEmpty}
label={t<string>('proxied account')}
onChange={setStashAddress}
@ -91,7 +90,6 @@ function ProxyAdd ({ className = '', onClose, onStatusChange }: Props): React.Re
<Modal.Columns hint={t<string>('The name is for unique identification of the account in your owner lists.')}>
<Input
className='full'
help={t<string>('Name given to this proxied account. You can edit it at any later point in time.')}
isError={!isNameValid}
label={t<string>('name')}
onChange={_onChangeName}

View File

@ -81,7 +81,6 @@ function PrevProxy ({ index, onRemove, typeOpts, value: [accountId, type] }: Pre
label={t<string>('proxy account')}
/>
<Dropdown
help={'Type of proxy'}
isDisabled
label={'type'}
options={typeOpts}
@ -133,7 +132,6 @@ function NewProxy ({ index, onChangeAccount, onChangeType, onRemove, proxiedAcco
<MarkError content={t<string>('You should not setup proxies to act as a self-proxy.')} />
)}
<Dropdown
help={'Type of proxy'}
label={'type'}
onChange={_onChangeType}
options={typeOpts}

View File

@ -138,7 +138,6 @@ function QrModal ({ className = '', onClose, onStatusChange }: Props): React.Rea
<Input
autoFocus
className='full'
help={t<string>('Name given to this account. You can change it at any point in the future.')}
isError={!isNameValid}
label={t<string>('name')}
onChange={_onNameChange}

View File

@ -32,7 +32,6 @@ function RecoverAccount ({ address, className = '', onClose }: Props): React.Rea
value={address}
/>
<InputAddress
help={t<string>('Select the account you wish to recover into this account.')}
label={t<string>('recover this account')}
onChange={setRecover}
type='allPlus'

View File

@ -58,7 +58,6 @@ function RecoverSetup ({ address, className = '', onClose }: Props): React.React
<InputAddressMulti
available={availableHelpers}
availableLabel={t<string>('available social recovery helpers')}
help={t<string>('The addresses that are able to help in recovery. You can select up to {{maxHelpers}} trusted helpers.', { replace: { maxHelpers: MAX_HELPERS } })}
maxCount={MAX_HELPERS}
onChange={setHelpers}
value={helpers}
@ -67,13 +66,11 @@ function RecoverSetup ({ address, className = '', onClose }: Props): React.React
</Modal.Columns>
<Modal.Columns hint={t<string>('The threshold for approvals and the delay is the protection associated with the account. The delay should be such that any colluding recovery attempts does have a window to stop.')}>
<InputNumber
help={t<string>('The threshold of vouches that is to be reached for the account to be recovered.')}
isError={isErrorThreshold}
label={t<string>('recovery threshold')}
onChange={setThreshold}
/>
<InputNumber
help={t<string>('The delay between vouching and the availability of the recovered account.')}
isError={isErrorDelay}
isZeroable
label={t<string>('recovery block delay')}

View File

@ -131,7 +131,6 @@ function Create ({ onClose, onStatusChange }: Props): React.ReactElement<Props>
<Input
autoFocus
className='full'
help={t<string>('Paste here the address of the contact you want to add to your address book.')}
isError={!isAddressValid}
label={t<string>('address')}
onChange={_onChangeAddress}
@ -141,7 +140,6 @@ function Create ({ onClose, onStatusChange }: Props): React.ReactElement<Props>
/>
<Input
className='full'
help={t<string>('Type the name of your contact. This name will be used across all the apps. It can be edited later on.')}
isError={!isNameValid}
label={t<string>('name')}
onChange={_onChangeName}

View File

@ -47,7 +47,6 @@ function Join ({ className, members, onClose, unscrupulous: { accounts } }: Prop
<Modal.Columns hint={t<string>('This account will be submitted to join the aliance. It will be allocated one of the alliance roles upon joining, starting with Ally.')}>
<InputAddress
filter={available}
help={t<string>('Select the account you wish to join with')}
label={t<string>('alliance account')}
onChange={setAccountId}
type='account'
@ -56,7 +55,6 @@ function Join ({ className, members, onClose, unscrupulous: { accounts } }: Prop
<Modal.Columns hint={t('The bond will be reserved for the duration of your alliance membership.')}>
<InputBalance
defaultValue={api.consts.alliance.allyDeposit}
help={t<string>('The deposit that is reserved')}
isDisabled
label={t<string>('alliance deposit')}
/>

View File

@ -45,7 +45,6 @@ function AwardBounty ({ curatorId, description, index }: Props): React.ReactElem
<Modal.Columns hint={t<string>('The Curator account that will be used to send this transaction. Any applicable fees will be paid by this account.')}>
<InputAddress
defaultValue={curatorId}
help={t<string>("Curator's account that will reward the bounty to the implementer.")}
isDisabled={true}
label={t<string>('award with account')}
type='account'
@ -54,7 +53,6 @@ function AwardBounty ({ curatorId, description, index }: Props): React.ReactElem
</Modal.Columns>
<Modal.Columns hint={t<string>("Reward the bounty to an implementer's account. The implementer will be able to claim the funds after a delay period.")}>
<InputAddress
help={t<string>('Choose the Beneficiary for this bounty.')}
label={t<string>('implementer account')}
onChange={setBeneficiaryId}
withLabel

View File

@ -47,7 +47,6 @@ function BountyAcceptCurator ({ curatorId, description, fee, index }: Props) {
<Modal.Content>
<Modal.Columns hint={t<string>('Only the account proposed as curator by the council can create the assign curator transaction')}>
<InputAddress
help={t<string>('This account will accept the curator role.')}
isDisabled
label={t<string>('curator account')}
type='account'
@ -65,7 +64,6 @@ function BountyAcceptCurator ({ curatorId, description, fee, index }: Props) {
<Modal.Columns hint={t<string>('This amount will be reserved from your account and returned after bounty claim is confirmed or if you give up, unless you are slashed earlier.')}>
<InputBalance
defaultValue={deposit.toString()}
help={t<string>("Curator's deposit is calculated based on the accepted curator's fee for this bounty.")}
isDisabled
label={t<string>("curator's deposit")}
/>

View File

@ -68,7 +68,6 @@ function BountyInitiateVoting ({ description, index, proposals }: Props): React.
<Modal.Columns hint={t<string>('The council member that will create a motion, submission equates to an "aye" vote for chosen option.')}>
<InputAddress
filter={members}
help={t<string>('Select the council member account you wish to use to create a motion for the Bounty.')}
label={t<string>('vote with account')}
onChange={setAccountId}
type='account'

View File

@ -79,7 +79,6 @@ function ProposeCuratorAction ({ description, index, proposals, value }: Props):
<Modal.Columns hint={t<string>('The council member that will create the motion.')}>
<InputAddress
filter={members}
help={t<string>('Select the council member account you wish to use to create a motion for the Bounty.')}
label={t<string>('proposing account')}
onChange={setAccountId}
type='account'
@ -88,7 +87,6 @@ function ProposeCuratorAction ({ description, index, proposals, value }: Props):
</Modal.Columns>
<Modal.Columns hint={t<string>('Choose a curator whose background and expertise is such that they are capable of determining when the task is complete.')}>
<InputAddress
help={t<string>('Select an account which (after a successful vote) will act as a curator.')}
label={t<string>('select curator')}
onChange={setCuratorId}
withLabel
@ -96,7 +94,6 @@ function ProposeCuratorAction ({ description, index, proposals, value }: Props):
</Modal.Columns>
<Modal.Columns hint={t<string>('Part of the bounty value that will go to the Curator as a reward for their work')}>
<InputBalance
help={t<string>('A reward for a curator, this amount is included in the total value of the bounty.')}
isError={!isFeeValid}
isZeroable
label={t<string>("curator's fee")}

View File

@ -69,7 +69,6 @@ function BountyCreate () {
<Input
autoFocus
defaultValue={TITLE_DEFAULT_VALUE}
help={t<string>('The description of this bounty')}
isError={!isTitleValid}
label={t<string>('bounty title')}
onChange={onTitleChange}
@ -81,7 +80,6 @@ function BountyCreate () {
</Modal.Columns>
<Modal.Columns hint={t<string>('How much should be paid out for completed Bounty. Upon funding, the amount will be reserved in treasury.')}>
<InputBalance
help={t<string>("The total payment amount of this bounty, curator's fee included.")}
isError={!isValueValid}
isZeroable
label={t<string>('bounty requested allocation')}
@ -95,14 +93,12 @@ function BountyCreate () {
<Modal.Columns hint={t<string>('Proposer bond depends on bounty title length.')}>
<InputBalance
defaultValue={bond.toString()}
help={t<string>('This amount will be reserved from origin account and returned on approval or slashed upon rejection.')}
isDisabled
label={t<string>('bounty bond')}
/>
</Modal.Columns>
<Modal.Columns hint={t<string>('This account will propose the bounty. Bond amount will be reserved on its balance.')}>
<InputAddress
help={t<string>('Select the account you wish to propose the bounty from.')}
isError={!hasFunds}
label={t<string>('submit with account')}
onChange={setAccountId}

View File

@ -31,7 +31,6 @@ function BountyRejectCurator ({ curatorId, description, index, toggleOpen }: Pro
<Modal.Content>
<Modal.Columns hint={t<string>('Only the account proposed as curator by the council can create the unassign curator transaction ')}>
<InputAddress
help={t<string>('This account will be used to create the unassign curator transaction.')}
isDisabled
label={t<string>('curator account')}
type='account'

View File

@ -51,7 +51,6 @@ function CloseBounty ({ description, index, toggleOpen }: Props): React.ReactEle
<Modal.Columns hint={t<string>('The council member that will create the close bounty proposal, submission equates to an "aye" vote.')}>
<InputAddress
filter={members}
help={t<string>('Select the council member account you wish to use to create a proposal for closing bounty.')}
label={t<string>('propose with account')}
onChange={setAccountId}
type='account'

View File

@ -42,7 +42,6 @@ function ExtendBountyExpiryAction ({ curatorId, description, index, toggleOpen }
<Modal.Content>
<Modal.Columns hint={t<string>('Only curator can extend the bounty time.')}>
<InputAddress
help={t<string>('This account will be used to create an extend bounty expire transaction.')}
isDisabled
label={t<string>('curator account')}
type='account'
@ -53,7 +52,6 @@ function ExtendBountyExpiryAction ({ curatorId, description, index, toggleOpen }
{expiryDate &&
<Modal.Columns hint={t<string>(`Bounty expiry time will be set to ${timeAsText} from now.`)}>
<Input
help={t<string>('The extended expiry date does not depend on the current expiry date.')}
isDisabled
label={t<string>('new expiry date and time')}
value={`${expiryDate.toLocaleDateString()} ${expiryDate.toLocaleTimeString()}`}
@ -64,7 +62,6 @@ function ExtendBountyExpiryAction ({ curatorId, description, index, toggleOpen }
<Input
autoFocus
defaultValue={''}
help={t<string>('The note linked to the extension call, explaining the reason behind it.')}
label={t<string>('bounty remark')}
onChange={onRemarkChange}
value={remark}

View File

@ -31,7 +31,6 @@ function BountyGiveUpCurator ({ curatorId, description, index, toggleOpen }: Pro
<Modal.Content>
<Modal.Columns hint={t<string>('You are giving up your curator role, the bounty will return to the Funded state. You will get your deposit back.')}>
<InputAddress
help={t<string>('The Curator account that will give up on it\'s role.')}
isDisabled
label={t<string>('curator account')}
type='account'

View File

@ -27,7 +27,6 @@ interface Props {
interface ActionProperties {
filter: string[];
header: string;
helpMessage: string;
params: unknown[] | (() => unknown[]) | undefined;
proposingAccountTip: string;
tip: string;
@ -57,7 +56,6 @@ function SlashCurator ({ action, curatorId, description, index, toggleOpen }: Pr
SlashCuratorAction: {
filter: allAccounts,
header: t('This action will Slash the Curator.'),
helpMessage: t('The Curator that will be slashed.'),
params: [index],
proposingAccountTip: t('The account that will create the transaction.'),
tip: t("Curator's deposit will be slashed and curator will be unassigned. Bounty will return to the Funded state."),
@ -67,7 +65,6 @@ function SlashCurator ({ action, curatorId, description, index, toggleOpen }: Pr
SlashCuratorMotion: {
filter: members,
header: t('This action will create a Council motion to slash the Curator.'),
helpMessage: t('The Curator that will be slashed.'),
params: [threshold, unassignCuratorProposal, unassignCuratorProposal?.length],
proposingAccountTip: t('The council member that will create the motion, submission equates to an "aye" vote.'),
tip: t("If the motion is approved, Curator's deposit will be slashed and Curator will be unassigned. Bounty will return to the Funded state."),
@ -77,7 +74,6 @@ function SlashCurator ({ action, curatorId, description, index, toggleOpen }: Pr
UnassignCurator: {
filter: members,
header: t('This action will create a Council motion to unassign the Curator.'),
helpMessage: t('The Curator that will be unassigned'),
params: [threshold, unassignCuratorProposal, unassignCuratorProposal?.length],
proposingAccountTip: t('The council member that will create the motion, submission equates to an "aye" vote.'),
tip: t('If the motion is approved, the current Curator will be unassigned and the Bounty will return to the Funded state.'),
@ -86,7 +82,7 @@ function SlashCurator ({ action, curatorId, description, index, toggleOpen }: Pr
}
}), [t, index, unassignCurator, api, allAccounts, councilMod, members, threshold, unassignCuratorProposal]);
const { filter, helpMessage, params, proposingAccountTip, tip, title, tx } = actionProperties[action];
const { filter, params, proposingAccountTip, tip, title, tx } = actionProperties[action];
if (!tx) {
return null;
@ -102,7 +98,6 @@ function SlashCurator ({ action, curatorId, description, index, toggleOpen }: Pr
<Modal.Columns hint={proposingAccountTip}>
<InputAddress
filter={filter}
help={t<string>('The account that will sign the transaction.')}
label={t<string>('proposing account')}
onChange={setAccountId}
type='account'
@ -112,7 +107,6 @@ function SlashCurator ({ action, curatorId, description, index, toggleOpen }: Pr
<Modal.Columns hint={tip}>
<InputAddress
defaultValue={curatorId}
help={helpMessage}
isDisabled
label={t<string>('current curator')}
withLabel

View File

@ -1,14 +1,13 @@
// Copyright 2017-2023 @polkadot/app-bounties authors & contributors
// SPDX-License-Identifier: Apache-2.0
import React, { useRef } from 'react';
import React from 'react';
import styled from 'styled-components';
import { LabelHelp } from '@polkadot/react-components';
import { insertSpaceBeforeCapitalLetter } from './helpers';
import { useTranslation } from './translate';
import { HelpMessages, StatusName } from './types';
import { StatusName } from './types';
interface Props {
bountyStatus: StatusName;
@ -16,26 +15,13 @@ interface Props {
}
function BountyStatusView ({ bountyStatus, className = '' }: Props): React.ReactElement<Props> {
const { t } = useTranslation();
const statusHelpMessages = useRef<HelpMessages>({
Active: t('This bounty has received approval and is currently being implemented.'),
Approved: t('This bounty was approved by the council. When the next spend period starts, it will be funded.'),
CuratorProposed: t('Curator has been proposed by council. The bounty is waiting for curator to accept the role.'),
Funded: t('This bounty is funded.'),
PendingPayout: t('This bounty was completed and the beneficiary was rewarded by the curator. Claiming the payout will be possible after the delay period is over.'),
Proposed: t('After a bounty was proposed the council decides whether to fund it or not.')
});
return (
<div
className={className}
data-testid={'bountyStatus'}
>
{insertSpaceBeforeCapitalLetter(bountyStatus)}
<LabelHelp
help={statusHelpMessages.current[bountyStatus]}
/>
<LabelHelp />
</div>
);
}

View File

@ -207,7 +207,6 @@ function ClaimsApp ({ basePath }: Props): React.ReactElement<Props> {
})}</h2>
<InputAddress
defaultValue={accountId}
help={t<string>('The account you want to claim to.')}
label={t<string>('claim to account')}
onChange={setAccountId}
type='all'
@ -235,7 +234,6 @@ function ClaimsApp ({ basePath }: Props): React.ReactElement<Props> {
<Input
autoFocus
className='full'
help={t<string>('The Ethereum address you used during the pre-sale (starting by "0x")')}
label={t<string>('Pre-sale ethereum address')}
onChange={onChangeEthereumAddress}
value={ethereumAddress || ''}

View File

@ -46,7 +46,6 @@ function Add ({ onClose }: Props): React.ReactElement {
<Modal.Content>
<Input
autoFocus
help={t('The code hash for the on-chain deployed code.')}
isError={codeHash.length > 0 && !isCodeHashValid}
label={t('code hash')}
onChange={setCodeHash}

View File

@ -139,7 +139,6 @@ function Upload ({ onClose }: Props): React.ReactElement {
{step === 1 && (
<>
<InputAddress
help={t('Specify the user account to use for this deployment. Any fees will be deducted from this account.')}
isInput={false}
label={t('deployment account')}
labelExtra={
@ -167,7 +166,6 @@ function Upload ({ onClose }: Props): React.ReactElement {
<>
{!contractAbi.info.source.wasm.length && (
<InputFile
help={t<string>('The compiled WASM for the contract that you wish to deploy. Each unique code blob will be attached with a code hash that can be used to create new instances.')}
isError={!isWasmValid}
label={t<string>('compiled contract WASM')}
onChange={_onAddWasm}
@ -186,7 +184,6 @@ function Upload ({ onClose }: Props): React.ReactElement {
{step === 2 && contractAbi && (
<>
<Dropdown
help={t<string>('The deployment constructor information for this contract, as provided by the ABI.')}
isDisabled={contractAbi.constructors.length <= 1}
label={t('deployment constructor')}
onChange={setConstructorIndex}
@ -200,7 +197,6 @@ function Upload ({ onClose }: Props): React.ReactElement {
/>
{contractAbi.constructors[constructorIndex].isPayable && (
<InputBalance
help={t<string>('The balance to transfer from the `origin` to the newly created contract.')}
isError={!isValueValid}
isZeroable
label={t<string>('value')}
@ -210,7 +206,6 @@ function Upload ({ onClose }: Props): React.ReactElement {
)
}
<InputMegaGas
help={t<string>('The maximum amount of gas that can be used by this deployment, if the code requires more, the deployment will fail')}
weight={weight}
/>
{error && (

View File

@ -76,7 +76,6 @@ function Add ({ onClose }: Props): React.ReactElement {
>
<Input
autoFocus
help={t<string>('The address for the deployed contract instance.')}
isError={!isAddressValid}
label={t<string>('contract address')}
onChange={setAddress}

View File

@ -118,7 +118,6 @@ function Call ({ className = '', contract, messageIndex, onCallResult, onChangeM
>
<Modal.Content>
<InputAddress
help={t<string>('A deployed contract that has either been deployed or attached. The address and ABI are used to construct the parameters.')}
isDisabled
label={t<string>('contract to use')}
type='contract'
@ -126,7 +125,6 @@ function Call ({ className = '', contract, messageIndex, onCallResult, onChangeM
/>
<InputAddress
defaultValue={accountId}
help={t<string>('Specify the user account to use for this contract call. And fees will be deducted from this account.')}
label={t<string>('call from account')}
labelExtra={
<Available
@ -142,7 +140,6 @@ function Call ({ className = '', contract, messageIndex, onCallResult, onChangeM
<>
<Dropdown
defaultValue={messageIndex}
help={t<string>('The message to send to this contract. Parameters are adjusted based on the ABI provided.')}
isError={message === null}
label={t<string>('message to send')}
onChange={onChangeMessage}
@ -162,7 +159,6 @@ function Call ({ className = '', contract, messageIndex, onCallResult, onChangeM
)}
{message.isPayable && (
<InputBalance
help={t<string>('The allotted value for this contract, i.e. the amount transferred to the contract as part of this call.')}
isError={!isValueValid}
isZeroable
label={t<string>('value')}
@ -172,7 +168,6 @@ function Call ({ className = '', contract, messageIndex, onCallResult, onChangeM
)}
<InputMegaGas
estimatedWeight={message.isMutating ? estimatedWeight : MAX_CALL_WEIGHT}
help={t<string>('The maximum amount of gas to use for this contract call. If the call requires more, it will fail.')}
isCall={!message.isMutating}
weight={weight}
/>

View File

@ -123,7 +123,6 @@ function Deploy ({ codeHash, constructorIndex = 0, onClose, setConstructorIndex
>
<Modal.Content>
<InputAddress
help={t('Specify the user account to use for this deployment. Any fees will be deducted from this account.')}
isInput={false}
label={t('deployment account')}
labelExtra={
@ -156,7 +155,6 @@ function Deploy ({ codeHash, constructorIndex = 0, onClose, setConstructorIndex
{contractAbi && (
<>
<Dropdown
help={t<string>('The deployment constructor information for this contract, as provided by the ABI.')}
isDisabled={contractAbi.constructors.length <= 1}
label={t('deployment constructor')}
onChange={setConstructorIndex}
@ -172,7 +170,6 @@ function Deploy ({ codeHash, constructorIndex = 0, onClose, setConstructorIndex
)}
{contractAbi?.constructors[constructorIndex].isPayable && (
<InputBalance
help={t<string>('The balance to transfer from the `origin` to the newly created contract.')}
isError={!isValueValid}
isZeroable
label={t<string>('value')}
@ -181,7 +178,6 @@ function Deploy ({ codeHash, constructorIndex = 0, onClose, setConstructorIndex
/>
)}
<Input
help={t<string>('A hex or string value that acts as a salt for this deployment.')}
isDisabled={!withSalt}
label={t<string>('unique deployment salt')}
onChange={setSalt}
@ -196,7 +192,6 @@ function Deploy ({ codeHash, constructorIndex = 0, onClose, setConstructorIndex
/>
</Input>
<InputMegaGas
help={t<string>('The maximum amount of gas that can be used by this deployment, if the code requires more, the deployment will fail.')}
weight={weight}
/>
</Modal.Content>

View File

@ -40,7 +40,6 @@ function ABI ({ className, contractAbi, errorText, isDisabled, isError, isFull,
? (
<Labelled
className={className}
help={t<string>('This is the ABI as supplied. Any calls to the contract will use this information for encoding.')}
label={label || t<string>('contract ABI')}
labelExtra={onRemove && (
<IconLink
@ -64,7 +63,6 @@ function ABI ({ className, contractAbi, errorText, isDisabled, isError, isFull,
: (
<div className={className}>
<InputFile
help={t<string>('The ABI for the WASM code. The ABI is required and stored for future operations such as sending messages.')}
isDisabled={isDisabled}
isError={isError}
isFull={isFull}

View File

@ -15,12 +15,11 @@ import { useTranslation } from '../translate';
interface Props {
className?: string;
estimatedWeight?: BN;
help: React.ReactNode;
isCall?: boolean;
weight: UseWeight;
}
function InputMegaGas ({ className, estimatedWeight, help, isCall, weight: { executionTime, isValid, megaGas, percentage, setIsEmpty, setMegaGas } }: Props): React.ReactElement<Props> {
function InputMegaGas ({ className, estimatedWeight, isCall, weight: { executionTime, isValid, megaGas, percentage, setIsEmpty, setMegaGas } }: Props): React.ReactElement<Props> {
const { t } = useTranslation();
const [withEstimate, setWithEstimate] = useState(true);
@ -45,7 +44,6 @@ function InputMegaGas ({ className, estimatedWeight, help, isCall, weight: { exe
<div className={className}>
<InputNumber
defaultValue={estimatedMg && isDisabled ? estimatedMg.toString() : undefined}
help={help}
isDisabled={isDisabled}
isError={!isValid}
isZeroable={isCall}

View File

@ -24,11 +24,6 @@ function InputName ({ className, isBusy, isContract, isError, onChange, onEnter,
return (
<Input
className={className}
help={t<string>(
isContract
? 'A name for the deployed contract to help users distinguish. Only used for display purposes.'
: 'A name for this WASM code to help users distinguish. Only used for display purposes.'
)}
isDisabled={isBusy}
isError={isError}
label={t<string>(

View File

@ -47,7 +47,6 @@ function Close ({ hasFailed, hash, idNumber, proposal }: Props): React.ReactElem
</Modal.Columns>
<Modal.Columns hint={t<string>('The council account that will apply the close for the current round.')}>
<InputAddress
help={t<string>('Select the account you wish close the proposal with.')}
label={t<string>('close from account')}
onChange={setAccountId}
type='account'

View File

@ -96,7 +96,6 @@ function ProposeExternal ({ className = '', isMember, members }: Props): React.R
<Modal.Columns hint={t<string>('The council account for the proposal. The selection is filtered by the current members.')}>
<InputAddress
filter={members}
help={t<string>('Select the account you wish to make the proposal with.')}
label={t<string>('propose from account')}
onChange={setAcountId}
type='account'
@ -106,7 +105,6 @@ function ProposeExternal ({ className = '', isMember, members }: Props): React.R
<Modal.Columns hint={t<string>('The hash of the proposal image, either already submitted or valid for the specific call.')}>
<Input
autoFocus
help={t<string>('The preimage hash of the proposal')}
isError={!isHashValid}
label={t<string>('preimage hash')}
onChange={_onChangeHash}

View File

@ -81,7 +81,6 @@ function Propose ({ isMember, members }: Props): React.ReactElement<Props> | nul
<Modal.Columns hint={t<string>('The council account for the proposal. The selection is filtered by the current members.')}>
<InputAddress
filter={members}
help={t<string>('Select the account you wish to make the proposal with.')}
label={t<string>('propose from account')}
onChange={setAcountId}
type='account'
@ -91,7 +90,6 @@ function Propose ({ isMember, members }: Props): React.ReactElement<Props> | nul
<Modal.Columns hint={t<string>('The desired threshold. Here set to a default of 50%+1, as applicable for general proposals.')}>
<InputNumber
className='medium'
help={t<string>('The minimum number of council votes required to approve this motion')}
isError={!threshold || threshold.eqn(0) || threshold.gtn(members.length)}
label={t<string>('threshold')}
onChange={_setThreshold}

View File

@ -87,7 +87,6 @@ function Slashing ({ className = '', isMember, members }: Props): React.ReactEle
<Modal.Columns hint={t<string>('The council account for the proposal. The selection is filtered by the current members.')}>
<InputAddress
filter={members}
help={t<string>('Select the account you wish to make the proposal with.')}
label={t<string>('propose from account')}
onChange={setAcountId}
type='account'
@ -99,7 +98,6 @@ function Slashing ({ className = '', isMember, members }: Props): React.ReactEle
? (
<Dropdown
defaultValue={eras[0].value}
help={t<string>('The unapplied slashed era to cancel.')}
label={t<string>('the era to cancel for')}
onChange={setSelectedEra}
options={eras}

View File

@ -33,7 +33,6 @@ function SubmitCandidacy ({ electionsInfo }: Props): React.ReactElement<Props> |
<Modal.Content>
<Modal.Columns hint={t<string>('This account will appear in the list of candidates. With enough votes in an election, it will become either a runner-up or a council member.')}>
<InputAddress
help={t<string>('Select the account you wish to submit for candidacy.')}
label={t<string>('candidate account')}
onChange={setAccountId}
type='account'
@ -43,7 +42,6 @@ function SubmitCandidacy ({ electionsInfo }: Props): React.ReactElement<Props> |
<Modal.Columns hint={t('The bond will be reserved for the duration of your candidacy and membership.')}>
<InputBalance
defaultValue={api.consts[modLocation].candidacyBond}
help={t<string>('The bond that is reserved')}
isDisabled
label={t<string>('candidacy bond')}
/>

View File

@ -86,7 +86,6 @@ function Vote ({ electionsInfo }: Props): React.ReactElement<Props> | null {
<Modal.Content>
<Modal.Columns hint={t<string>('The vote will be recorded for the selected account.')}>
<InputAddress
help={t<string>('This account will be use to approve each candidate.')}
label={t<string>('voting account')}
onChange={setAccountId}
type='account'
@ -110,7 +109,6 @@ function Vote ({ electionsInfo }: Props): React.ReactElement<Props> | null {
available={available}
availableLabel={t<string>('council candidates')}
defaultValue={defaultVotes}
help={t<string>('Select and order council candidates you wish to vote for.')}
maxCount={MAX_VOTES}
onChange={setVotes}
valueLabel={t<string>('my ordered votes')}
@ -120,7 +118,6 @@ function Vote ({ electionsInfo }: Props): React.ReactElement<Props> | null {
<Modal.Columns hint={t('The amount will be reserved for the duration of your vote')}>
<InputBalance
defaultValue={bondValue}
help={t<string>('The amount that is reserved')}
isDisabled
label={t<string>('voting bond')}
/>

View File

@ -115,14 +115,12 @@ function Fasttrack ({ imageHash, members, threshold }: Props): React.ReactElemen
<Modal.Columns hint={t<string>('The voting period and delay to apply to this proposal. The threshold is calculated from these values.')}>
<InputNumber
autoFocus
help={t<string>('The voting period to apply in blocks')}
isZeroable={false}
label={t<string>('voting period')}
onChange={setVotingBlocks}
value={votingBlocks}
/>
<InputNumber
help={t<string>('The delay period to apply in blocks')}
isZeroable={false}
label={t<string>('delay')}
onChange={setDelayBlocks}

View File

@ -70,7 +70,6 @@ function PreImage ({ className = '', imageHash, isImminent = false, onClose }: P
<Modal.Content>
<Modal.Columns hint={t<string>('This account will pay the fees for the preimage, based on the size thereof.')}>
<InputAddress
help={t<string>('The account you want to register the preimage from')}
label={t<string>('send from account')}
labelExtra={
<Available
@ -95,7 +94,6 @@ function PreImage ({ className = '', imageHash, isImminent = false, onClose }: P
onChange={setProposal}
/>
<Static
help={t<string>('The hash of the selected proposal, use it for submitting the proposal')}
label={t<string>('preimage hash')}
value={encodedHash}
withCopy
@ -105,7 +103,6 @@ function PreImage ({ className = '', imageHash, isImminent = false, onClose }: P
<Modal.Columns hint={t<string>('The calculated storage costs based on the size and the per-bytes fee.')}>
<InputBalance
defaultValue={storageFee}
help={t<string>('The amount reserved to store this image')}
isDisabled
label={t<string>('calculated storage fee')}
/>

View File

@ -51,7 +51,6 @@ function Propose ({ className = '', onClose }: Props): React.ReactElement<Props>
<Modal.Content>
<Modal.Columns hint={t<string>('The proposal will be registered from this account and the balance lock will be applied here.')}>
<InputAddress
help={t<string>('The account you want to register the proposal from')}
label={t<string>('send from account')}
labelExtra={
<Available
@ -66,7 +65,6 @@ function Propose ({ className = '', onClose }: Props): React.ReactElement<Props>
<Modal.Columns hint={t<string>('The hash of the preimage for the proposal as previously submitted or intended.')}>
<Input
autoFocus
help={t<string>('The preimage hash of the proposal')}
isError={!isHashValid}
label={t<string>('preimage hash')}
onChange={_onChangeHash}
@ -76,14 +74,12 @@ function Propose ({ className = '', onClose }: Props): React.ReactElement<Props>
<Modal.Columns hint={t<string>('The associated deposit for this proposal should be more then the minimum on-chain deposit required. It will be locked until the proposal passes.')}>
<InputBalance
defaultValue={api.consts.democracy.minimumDeposit}
help={t<string>('The locked value for this proposal')}
isError={!hasMinLocked}
label={t<string>('locked balance')}
onChange={setBalance}
/>
<InputBalance
defaultValue={api.consts.democracy.minimumDeposit}
help={t<string>('The minimum deposit required')}
isDisabled
label={t<string>('minimum deposit')}
/>

View File

@ -48,7 +48,6 @@ function Seconding ({ deposit, depositors, image, proposalId }: Props): React.Re
</Modal.Columns>
<Modal.Columns hint={t<string>('Endorsing a proposal that indicates your backing for the proposal. Proposals with greater interest moves up the queue for potential next referendums.')}>
<InputAddress
help={t<string>('Select the account you wish to endorse with. This will lock your funds until the proposal is either approved or rejected')}
label={t<string>('endorse with account')}
onChange={setAccountId}
type='account'

View File

@ -70,7 +70,6 @@ function Voting ({ proposal, referendumId }: Props): React.ReactElement<Props> |
/>
)}
<ConvictionDropdown
help={t<string>('The conviction to use for this vote, with an appropriate lock period.')}
label={t<string>('conviction')}
onChange={setConviction}
value={conviction}

View File

@ -296,7 +296,6 @@ function UploadModal ({ className, file, onClose = NOOP, onSuccess = NOOP }: Pro
</Modal.Columns>
<Modal.Columns>
<Dropdown
help={t<string>('File streaming and wallet authentication will be processed by the chosen gateway.')}
isDisabled={isBusy}
label={t<string>('Select a Web3 IPFS Gateway')}
onChange={_onChangeGateway}
@ -306,7 +305,6 @@ function UploadModal ({ className, file, onClose = NOOP, onSuccess = NOOP }: Pro
</Modal.Columns>
<Modal.Columns>
<Dropdown
help={t<string>('Your file will be pinned to IPFS for long-term storage.')}
isDisabled={true}
label={t<string>('Select a Web3 IPFS Pinner')}
onChange={_onChangePinner}
@ -331,7 +329,6 @@ function UploadModal ({ className, file, onClose = NOOP, onSuccess = NOOP }: Pro
{
!upState.up && isLocked && !isInjected &&
<Password
help={t<string>('The account\'s password specified at the creation of this account.')}
isError={false}
label={t<string>('password')}
onChange={setPassword}

View File

@ -58,7 +58,6 @@ function Bid ({ className, isDisabled, proxies }: Props): React.ReactElement<Pro
<Modal.Columns hint={t<string>('This account will make the bid for the gilt and pay all associated fees.')}>
<InputAddress
filter={proxiedAccounts}
help={t<string>('The account you want to register the bid from')}
label={t<string>('use proxied account')}
labelExtra={
<Available
@ -72,7 +71,6 @@ function Bid ({ className, isDisabled, proxies }: Props): React.ReactElement<Pro
{accountId && (
<InputAddress
filter={proxies[accountId]}
help={t<string>('The associated proxy to use for this account')}
label={t<string>('send via proxy')}
onChange={setProxyId}
type='account'
@ -90,7 +88,6 @@ function Bid ({ className, isDisabled, proxies }: Props): React.ReactElement<Pro
/>
<InputBalance
defaultValue={api.consts.gilt.minFreeze}
help={t<string>('The minimum amount that is allowed as a bid')}
isDisabled
label={t<string>('minimum freeze amount')}
/>

View File

@ -97,7 +97,6 @@ function RegisterThread ({ className, nextParaId, onClose, ownedIds }: Props): R
}
<Modal.Columns hint={t<string>('The WASM validation function for this parachain.')}>
<InputFile
help={t<string>('The compiled runtime WASM for the parachain you wish to register.')}
isError={!wasm}
label={t<string>('code')}
onChange={_setWasm}
@ -105,7 +104,6 @@ function RegisterThread ({ className, nextParaId, onClose, ownedIds }: Props): R
</Modal.Columns>
<Modal.Columns hint={t<string>('The genesis state for this parachain.')}>
<InputFile
help={t<string>('The genesis state for the parachain.')}
isError={!genesisState}
label={t<string>('initial state')}
onChange={_setGenesisState}

View File

@ -119,14 +119,12 @@ function Propose ({ className, onClose }: Props): React.ReactElement<Props> {
</Modal.Columns>
<Modal.Columns hint={t<string>('The WASM validation function as well as the genesis state for this parachain.')}>
<InputWasm
help={t<string>('The compiled runtime WASM for the parachain you wish to register.')}
isError={!isWasmValid}
label={t<string>('validation code')}
onChange={_setWasm}
placeholder={wasm && !isWasmValid && t<string>('The code is not recognized as being in valid WASM format')}
/>
<InputFile
help={t<string>('The genesis state for the parachain.')}
isError={!genesisState}
label={t<string>('genesis state')}
onChange={_setGenesisState}

View File

@ -95,13 +95,11 @@ function Partial ({ className, onChange }: Props): React.ReactElement<Props> {
onChange={setProposal}
/>
<Static
help={t<string>('The hash of the selected proposal, use it for submitting the proposal')}
label={t<string>('preimage hash')}
value={encodedHash}
withCopy
/>
<Static
help={t<string>('The encoded length of the selected proposal, as available on-chain')}
label={t<string>('preimage length')}
value={encodedLength || '0'}
withCopy
@ -114,7 +112,6 @@ function Partial ({ className, onChange }: Props): React.ReactElement<Props> {
>
<InputBalance
defaultValue={storageFee}
help={t<string>('The amount reserved to store this image')}
isDisabled
label={t<string>('calculated storage fee')}
/>

View File

@ -37,7 +37,6 @@ function Add ({ className, imageHash }: Props): React.ReactElement<Props> {
<Modal.Content>
<Modal.Columns hint={t<string>('This account will pay the fees for the preimage, based on the size thereof.')}>
<InputAddress
help={t<string>('The account you want to register the preimage from')}
label={t<string>('send from account')}
labelExtra={
<Available

View File

@ -38,7 +38,6 @@ function Deposit ({ className = '', id, palletReferenda, track }: Props): React.
<Modal.Content>
<Modal.Columns hint={t<string>('The deposit will be registered from this account and the balance lock will be applied here.')}>
<InputAddress
help={t<string>('The account you want to deposit from')}
label={t<string>('deposit from account')}
labelExtra={
<Available

View File

@ -35,7 +35,6 @@ function Refund ({ className = '', id, palletReferenda }: Props): React.ReactEle
<Modal.Content>
<Modal.Columns hint={t<string>('The transaction will be submitted from this account.')}>
<InputAddress
help={t<string>('The account you want to refund from')}
label={t<string>('refund from account')}
onChange={setAccountId}
type='account'

View File

@ -194,7 +194,6 @@ function Submit ({ className = '', isMember, members, palletReferenda, tracks }:
<Modal.Columns hint={t<string>('The proposal will be registered from this account and the balance lock will be applied here.')}>
<InputAddress
filter={members}
help={t<string>('The account you want to propose from')}
label={t<string>('propose from account')}
labelExtra={
<Available
@ -246,7 +245,6 @@ function Submit ({ className = '', isMember, members, palletReferenda, tracks }:
>
<Input
autoFocus
help={t<string>('The preimage hash of the proposal')}
isError={!isImageHashValid}
label={t<string>('preimage hash')}
onChange={_onChangeImageHash}
@ -254,7 +252,6 @@ function Submit ({ className = '', isMember, members, palletReferenda, tracks }:
/>
<InputNumber
defaultValue={imageLenDefault}
help={t<string>('The preimage length of the proposal')}
isDisabled={!!preimage?.proposalLength && !preimage?.proposalLength.isZero() && isImageHashValid && isImageLenValid}
isError={!isImageLenValid}
key='inputLength'

View File

@ -51,7 +51,6 @@ function VoteStandard ({ accountId, id, isAye, onChange, voteLockingPeriod }: Pr
onChange={setBalance}
/>
<ConvictionDropdown
help={t<string>('The conviction to use for this vote, with an appropriate lock period.')}
label={t<string>('conviction')}
onChange={setConviction}
value={conviction}

View File

@ -82,7 +82,6 @@ function Selection ({ queueRpc }: Props): React.ReactElement<Props> {
<section className='rpc--Selection'>
<InputRpc
defaultValue={defaultMethod}
help={t<string>('The actual JSONRPC module and function to make a call to.')}
label={t<string>('call the selected endpoint')}
onChange={_onChangeMethod}
/>

View File

@ -74,7 +74,6 @@ function Selection ({ onSubmit }: Props): React.ReactElement<Props> {
return (
<section className='runtime--Selection'>
<InputCalls
help={t<string>('The actual runtime function to make a call to.')}
label={t<string>('call the selected endpoint')}
onChange={_onChangeMethod}
/>

View File

@ -170,7 +170,6 @@ function Developer ({ className = '', onStatusChange }: Props): React.ReactEleme
<div className='full'>
<InputFile
clearContent={typesHasNoEntries && isTypesValid}
help={t<string>('Save the type definitions for your custom structures as key-value pairs in a valid JSON file. The key should be the name of your custom structure and the value an object containing your type definitions.')}
isError={!isTypesValid}
label={t<string>('Additional types as a JSON file (or edit below)')}
onChange={_onChangeTypes}

View File

@ -115,7 +115,6 @@ function General ({ className = '' }: Props): React.ReactElement<Props> {
<div className='ui--row'>
<Dropdown
defaultValue={prefix}
help={t<string>('Override the default ss58 prefix for address generation')}
label={t<string>('address prefix')}
onChange={_handleChange('prefix')}
options={prefixOptions}
@ -124,7 +123,6 @@ function General ({ className = '' }: Props): React.ReactElement<Props> {
<div className='ui--row'>
<Dropdown
defaultValue={icon}
help={t<string>('Override the default identity icon display with a specific theme')}
label={t<string>('default icon theme')}
onChange={_handleChange('icon')}
options={iconOptions}
@ -155,7 +153,6 @@ function General ({ className = '' }: Props): React.ReactElement<Props> {
? ledgerConn
: ledgerConnOptions[0].value
}
help={t<string>('Manage your connection to Ledger S')}
isDisabled={!hasWebUsb}
label={t<string>('manage hardware connections')}
onChange={_handleChange('ledgerConn')}

View File

@ -114,7 +114,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<div className='settings--networkSpecs-name'>
<Input
className='full'
help={t<string>('Name of the network. It is only for display purposes.')}
isDisabled
label={t<string>('Network Name')}
value={networkSpecs.title}
@ -137,7 +136,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<div>
<Input
className='full settings--networkSpecs-colorInput'
help={t<string>('The color used to distinguish this network with others, use color code with 3 or 6 digits, like "#FFF" or "#111111"')}
isError={!_checkColorValid()}
label={t<string>('Color')}
onChange={_onChangeColor}
@ -161,7 +159,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<td>
<Input
className='full'
help={t<string>('Genesis Hash refers to initial state of the chain, it cannot be changed once the chain is launched')}
isDisabled
label={t<string>('Genesis Hash')}
value={networkSpecs.genesisHash}
@ -173,7 +170,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<Input
className='full'
help={t<string>('Unit decides the name of 1 unit token, e.g. "DOT" for Polkadot')}
isDisabled
label={t<string>('Unit')}
value={networkSpecs.unit}
@ -184,7 +180,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<td>
<Input
className='full'
help={t<string>('Prefix indicates the ss58 address format in this network, it is a 16 bit unsigned integer that describes the precise format of the bytes of the address')}
isDisabled
label={t<string>('Address Prefix')}
value={networkSpecs.prefix.toString()}
@ -195,7 +190,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<td>
<Input
className='full'
help={t<string>('Decimals decides the smallest unit of the token, which is 1/10^decimals')}
isDisabled
label={t<string>('Decimals')}
value={networkSpecs.decimals.toString()}
@ -206,7 +200,6 @@ function NetworkSpecs ({ chainInfo, className }: Props): React.ReactElement<Prop
<td>
<Input
className='full'
help={t<string>('Chain type (ethereum compatible or regular substrate)')}
isDisabled
label={t<string>('Chain Type')}
value={networkSpecs.chainType}

View File

@ -123,7 +123,6 @@ function Sign ({ className = '' }: Props): React.ReactElement<Props> {
<div className='ui--row'>
<InputAddress
className='full'
help={t<string>('select the account you wish to sign data with')}
isInput={false}
label={t<string>('account')}
onChange={_onChangeAccount}
@ -135,7 +134,6 @@ function Sign ({ className = '' }: Props): React.ReactElement<Props> {
<Input
autoFocus
className='full'
help={t<string>('The input data to sign. This can be either specified as a hex value (0x-prefix) or as a string.')}
label={t<string>('sign the following data')}
onChange={_onChangeData}
value={data}
@ -144,7 +142,6 @@ function Sign ({ className = '' }: Props): React.ReactElement<Props> {
<div className='ui--row'>
<Static
className='medium'
help={t<string>('Detection on the input string to determine if it is hex or non-hex.')}
label={t<string>('hex input data')}
value={
isHexData
@ -156,7 +153,6 @@ function Sign ({ className = '' }: Props): React.ReactElement<Props> {
<div className='ui--row'>
<Output
className='full'
help={t<string>('The resulting signature of the input data, as done with the crypto algorithm from the account. (This could be non-deterministic for some types such as sr25519).')}
isHidden={signature.length === 0}
isMonospace
label={t<string>('signature of supplied data')}

View File

@ -68,7 +68,6 @@ function Unlock ({ onClose, onUnlock, pair }: Props): React.ReactElement<Props>
<Modal.Content>
<Modal.Columns hint={t<string>('This account that will perform the message signing.')}>
<InputAddress
help={t<string>('The selected account to be unlocked.')}
isDisabled
label={t<string>('account')}
value={address}
@ -77,7 +76,6 @@ function Unlock ({ onClose, onUnlock, pair }: Props): React.ReactElement<Props>
<Modal.Columns hint={t<string>('Unlock the account for signing. Once active the signature will be generated based on the content provided.')}>
<Password
autoFocus
help={t<string>('The account\'s password specified at the creation of this account.')}
isError={!!unlockError}
label={t<string>('password')}
onChange={setPassword}

View File

@ -79,7 +79,6 @@ function Verify ({ className = '' }: Props): React.ReactElement {
<div className='ui--row'>
<InputAddress
className='full'
help={t<string>('The account that signed the input')}
isError={!isValidPk}
isInput
label={t<string>('verify using address')}
@ -90,7 +89,6 @@ function Verify ({ className = '' }: Props): React.ReactElement {
<Input
autoFocus
className='full'
help={t<string>('The data that was signed. This is used in combination with the signature for the verification. It can either be hex or a string.')}
label={t<string>('using the following data')}
onChange={_onChangeData}
value={data}
@ -106,7 +104,6 @@ function Verify ({ className = '' }: Props): React.ReactElement {
</div>
<Input
className='full'
help={t<string>('The signature as by the account being checked, supplied as a hex-formatted string.')}
isError={!isValidSignature}
label={t<string>('the supplied signature')}
onChange={_onChangeSignature}
@ -116,14 +113,12 @@ function Verify ({ className = '' }: Props): React.ReactElement {
<div className='ui--row'>
<Dropdown
defaultValue={cryptoType}
help={t<string>('Cryptography used to create this signature. It is auto-detected on valid signatures.')}
isDisabled
label={t<string>('signature crypto type')}
options={cryptoOptions}
/>
<Static
className='medium'
help={t<string>('Detection on the input string to determine if it is hex or non-hex.')}
label={t<string>('hex input data')}
value={
isHexData

View File

@ -29,7 +29,6 @@ function BidNew ({ onClose }: Props): React.ReactElement<Props> {
<Modal.Content>
<Modal.Columns hint={t<string>('Your candidate/bid account. Once accepted this account will become a member.')}>
<InputAddress
help={t<string>('The actual account you wish to submit the bid with')}
label={t<string>('bid account')}
onChange={setAccount}
type='account'
@ -38,7 +37,6 @@ function BidNew ({ onClose }: Props): React.ReactElement<Props> {
<Modal.Columns hint={t<string>('The amount to tie to your bid. The lowest bidder moves forward.')}>
<InputBalance
autoFocus
help={t<string>('The amount to associate with your bid, should be less than the pot.')}
label={t<string>('bid amount')}
onChange={setAmount}
/>

View File

@ -36,12 +36,10 @@ function CandidateVoting ({ candidateId, isMember, ownMembers }: Props): React.R
<Modal.Content>
<InputAddress
filter={ownMembers}
help={t<string>('The address to vote from (must be a member)')}
label={t<string>('vote from account')}
onChange={setAccountId}
/>
<Dropdown
help={t<string>('Approve this candidacy.')}
label={t<string>('vote for candidate')}
onChange={setVote}
options={voteOptsRef.current}

View File

@ -35,12 +35,10 @@ function DefenderVoting ({ isMember, ownMembers }: Props): React.ReactElement<Pr
<Modal.Content>
<InputAddress
filter={ownMembers}
help={t<string>('The address to vote from (must be a member)')}
label={t<string>('vote from account')}
onChange={setAccountId}
/>
<Dropdown
help={t<string>('Approve or reject this defender.')}
label={t<string>('vote for defender')}
onChange={setVote}
options={voteOptsRef.current}

View File

@ -71,7 +71,6 @@ function BondExtra ({ controllerId, onClose, stakingInfo, stashId }: Props): Rea
<InputBalance
autoFocus
defaultValue={startBalance}
help={t<string>('Amount to add to the currently bonded funds. This is adjusted using the available funds on the account.')}
isError={!!amountError?.error || !maxAdditional || maxAdditional.isZero()}
label={t<string>('additional funds to bond')}
labelExtra={

View File

@ -68,7 +68,6 @@ function KickNominees ({ className = '', controllerId, nominating, onClose, stas
available={nominators}
availableLabel={t<string>('existing/active nominators')}
defaultValue={nominating}
help={t<string>('Filter available nominators based on name, address or short account index.')}
maxCount={MAX_KICK}
onChange={setSelected}
valueLabel={t<string>('nominators to be removed')}

View File

@ -82,35 +82,30 @@ function ListNominees ({ nominating, stashId }: Props): React.ReactElement<Props
{renOver && (
<ExpanderScroll
className='stakeOver'
help={t<string>('These validators are active but only the top {{max}} nominators by backing stake will be receiving rewards. The nominating stash is not one of those to be rewarded in the current era.', { replace: { max: api.consts.staking?.maxNominatorRewardedPerValidator?.toString() } })}
renderChildren={renOver[1]}
summary={t<string>('Oversubscribed nominations ({{count}})', { replace: { count: renOver[0] } })}
/>
)}
{renActive && (
<ExpanderScroll
help={t<string>('The validators selected by the Phragmen algorithm to nominate for this era.')}
renderChildren={renActive[1]}
summary={t<string>('Active nominations ({{count}})', { replace: { count: renActive[0] } })}
/>
)}
{renInactive && (
<ExpanderScroll
help={t<string>('The elected validator list that did not get selected by the Phragmen algorithm for this era. However they may be selected in the future.')}
renderChildren={renInactive[1]}
summary={t<string>('Inactive nominations ({{count}})', { replace: { count: renInactive[0] } })}
/>
)}
{renChilled && (
<ExpanderScroll
help={t<string>('The validators that got slashed and for which your nomination got auto-chilled. Re-nominating these will make them available to the Phragmen algorithm.')}
renderChildren={renChilled[1]}
summary={t<string>('Renomination required ({{count}})', { replace: { count: renChilled[0] } })}
/>
)}
{renWaiting && (
<ExpanderScroll
help={t<string>('The validators that are not in the validator set because they need more nominations or because they have willingly stopped validating. Any nominations made before the next election will also appear here.')}
renderChildren={renWaiting[1]}
summary={t<string>('Waiting nominations ({{count}})', { replace: { count: renWaiting[0] } })}
/>

View File

@ -48,7 +48,6 @@ function Rebond ({ controllerId, onClose, stakingInfo, stashId }: Props): React.
<InputBalance
autoFocus
defaultValue={startBalance}
help={t<string>('Amount to add to the currently bonded funds. This is adjusted using the funds currently unlocking.')}
isError={!maxAdditional || maxAdditional.eqn(0) || maxAdditional.gt(startBalance)}
label={t<string>('rebonded amount')}
onChange={setMaxAdditional}

View File

@ -43,7 +43,6 @@ function SetControllerAccount ({ defaultControllerId, onClose, stashId }: Props)
<Modal.Columns hint={t<string>('The selected controller tied to this stash. Once set, this account will be able to control the actions performed by the stash account.')}>
<InputAddress
defaultValue={defaultControllerId}
help={t<string>('The controller is the account that will be used to control any nominating or validating actions. Should not match another stash or controller.')}
label={t<string>('controller account')}
onChange={setControllerId}
type='account'

View File

@ -50,7 +50,6 @@ function SetRewardDestination ({ controllerId, defaultDestination, onClose, stas
/>
<InputAddress
defaultValue={controllerId}
help={t<string>('The controller is the account that is be used to control any nominating or validating actions. I will sign this transaction.')}
isDisabled
label={t<string>('controller account')}
/>
@ -58,7 +57,6 @@ function SetRewardDestination ({ controllerId, defaultDestination, onClose, stas
<Modal.Columns hint={t<string>('All rewards will go towards the selected output destination when a payout is made.')}>
<Dropdown
defaultValue={defaultDestination?.toString()}
help={t<string>('The destination account for any payments as either a nominator or validator')}
label={t<string>('payment destination')}
onChange={setDestination}
options={options}
@ -66,7 +64,6 @@ function SetRewardDestination ({ controllerId, defaultDestination, onClose, stas
/>
{isAccount && (
<InputAddress
help={t('An account that is to receive the rewards')}
label={t('the payment account')}
onChange={setDestAccount}
type='account'

View File

@ -52,7 +52,6 @@ function Unbond ({ controllerId, onClose, stakingLedger, stashId }: Props): Reac
<InputBalance
autoFocus
defaultValue={maxBalance}
help={t<string>('The amount of funds to unbond, this is adjusted using the bonded funds on the stash account.')}
isDisabled={withMax}
key={`unbondAmount-${withMax.toString()}`}
label={t<string>('unbond amount')}
@ -69,7 +68,6 @@ function Unbond ({ controllerId, onClose, stakingLedger, stashId }: Props): Reac
</InputBalance>
{bondedBlocks?.gtn(0) && (
<Static
help={t<string>('The bonding duration for any staked funds. After this period needs to be withdrawn.')}
label={t<string>('on-chain bonding duration')}
>
<BlockToTime value={bondedBlocks} />

View File

@ -57,7 +57,6 @@ function BondExtra ({ className, controllerId, onClose, poolId }: Props): React.
{type === 'free' && (
<InputBalance
autoFocus
help={t<string>('Amount to add to the currently bonded funds. This is adjusted using the available funds on the account.')}
isError={isAmountError}
label={t<string>('additional free funds to bond')}
labelExtra={

View File

@ -47,7 +47,6 @@ function Unbond ({ className, controllerId, maxUnbond, onClose, poolId }: Props)
<InputBalance
autoFocus
defaultValue={maxUnbond}
help={t<string>('Amount to unbond from the current bonded amount.')}
isDisabled={withMax}
isError={isAmountError}
key={`unbondAmount-${withMax.toString()}`}
@ -71,7 +70,6 @@ function Unbond ({ className, controllerId, maxUnbond, onClose, poolId }: Props)
</InputBalance>
{bondedBlocks?.gtn(0) && (
<Static
help={t<string>('The bonding duration for any staked funds. After this period needs to be withdrawn.')}
label={t<string>('on-chain bonding duration')}
>
<BlockToTime value={bondedBlocks} />

View File

@ -112,7 +112,6 @@ function Bond ({ className = '', isNominating, minNominated, minNominatorBond, m
value={stashId}
/>
<InputAddress
help={t<string>('The controller is the account that will be used to control any nominating or validating actions. Should not match another stash or controller.')}
label={t<string>('controller account')}
onChange={setControllerId}
type='account'
@ -136,7 +135,6 @@ function Bond ({ className = '', isNominating, minNominated, minNominatorBond, m
<InputBalance
autoFocus
defaultValue={startBalance}
help={t<string>('The total amount of the stash balance that will be at stake in any forthcoming rounds (should be less than the free amount available)')}
isError={!hasValue || !!amountError?.error}
label={t<string>('value bonded')}
labelExtra={
@ -159,7 +157,6 @@ function Bond ({ className = '', isNominating, minNominated, minNominatorBond, m
/>
{bondedBlocks?.gtn(0) && (
<Static
help={t<string>('The bonding duration for any staked funds. Needs to be unlocked and withdrawn to become available.')}
label={t<string>('on-chain bonding duration')}
>
<BlockToTime value={bondedBlocks} />
@ -170,7 +167,6 @@ function Bond ({ className = '', isNominating, minNominated, minNominatorBond, m
<Modal.Columns hint={t<string>('Rewards (once paid) can be deposited to either the stash or controller, with different effects.')}>
<Dropdown
defaultValue={0}
help={t<string>('The destination account for any payments as either a nominator or validator')}
label={t<string>('payment destination')}
onChange={setDestination}
options={options}
@ -178,7 +174,6 @@ function Bond ({ className = '', isNominating, minNominated, minNominatorBond, m
/>
{isAccount && (
<InputAddress
help={t('An account that is to receive the rewards')}
label={t('the payment account')}
onChange={setDestAccount}
type='account'

View File

@ -92,7 +92,6 @@ function Nominate ({ className = '', controllerId, nominating, onChange, poolId,
available={available}
availableLabel={t<string>('candidate accounts')}
defaultValue={nominating}
help={t<string>('Filter available candidates based on name, address or short account index.')}
maxCount={maxNominations}
onChange={setSelected}
valueLabel={t<string>('nominated accounts')}

View File

@ -59,7 +59,6 @@ function SessionKey ({ className = '', controllerId, onChange, stashId, withFocu
<Modal.Columns hint={t<string>('The hex output from author_rotateKeys, as executed on the validator node. The keys will show as pending until applied at the start of a new session.')}>
<Input
autoFocus={withFocus}
help={t<string>('Changing the key only takes effect at the start of the next session. The input here is generated from the author_rotateKeys command')}
isError={!keys}
label={t<string>('Keys from rotateKeys')}
onChange={setKeys}

View File

@ -84,7 +84,6 @@ function Validate ({ className = '', controllerId, minCommission, onChange, stas
<InputNumber
autoFocus={withFocus}
defaultValue={defaultComm}
help={t<string>('The percentage reward (0-100) that should be applied for the validator')}
isError={commErr}
isZeroable
label={t<string>('reward commission percentage')}
@ -99,7 +98,6 @@ function Validate ({ className = '', controllerId, minCommission, onChange, stas
<Modal.Columns hint={t<string>('The validator can block any new nominations. By default it is set to allow all nominations.')}>
<Dropdown
defaultValue={true}
help={t<string>('Does this validator allow nominations or is it blocked for all')}
label={t<string>('allows new nominations')}
onChange={setAllowNoms}
options={blockedOptions.current}

View File

@ -63,7 +63,6 @@ function Rebag ({ bagUpper, stashIds }: Props): React.ReactElement<Props> | null
<Modal.Content>
<Modal.Columns hint={t<string>('The account that will submit the rebag transaction.')}>
<InputAddress
help={t<string>('Select the account you wish to rebag with.')}
label={t<string>('rebag from account')}
onChange={setAccountId}
type='account'

View File

@ -48,7 +48,6 @@ function Query ({ className }: Props): React.ReactElement<Props> {
<InputAddressSimple
className='staking--queryInput'
defaultValue={value}
help={t<string>('Display overview information for the selected validator, including blocks produced.')}
label={t<string>('validator to query')}
onChange={setValidatorId}
onEnter={_onQuery}

View File

@ -66,7 +66,6 @@ function Nominate ({ className = '', isDisabled, ownNominators, targets }: Props
<Modal.Columns hint={t<string>('One of your available nomination accounts, keyed by the stash. The transaction will be sent from the controller.')}>
<InputAddress
filter={stashes}
help={t<string>('Your stash account. The transaction will be sent from the associated controller.')}
label={t<string>('the stash account to nominate with')}
onChange={_onChangeStash}
value={ids?.stashId}

View File

@ -32,15 +32,11 @@ function Consts ({ onAdd }: Props): React.ReactElement<Props> {
[onAdd, value]
);
const { method, section } = value;
const meta = (api.consts[section][method] as ConstantCodec).meta;
return (
<section className='storage--actionrow'>
<div className='storage--actionrow-value'>
<InputConsts
defaultValue={defaultValue}
help={meta?.docs.join(' ')}
label={t<string>('selected constant query')}
onChange={setValue}
/>

View File

@ -206,14 +206,13 @@ function Modules ({ className = '', onAdd }: Props): React.ReactElement<Props> {
[isIterable, isValid, values]
);
const { creator: { meta, method, section } } = key;
const { creator: { method, section } } = key;
return (
<section className={`${className} storage--actionrow`}>
<div className='storage--actionrow-value'>
<InputStorage
defaultValue={startValue}
help={meta && meta.docs.join(' ')}
label={t<string>('selected state query')}
onChange={_onChangeKey}
/>

View File

@ -46,7 +46,6 @@ function Sudo ({ className, isMine, sudoKey }: Props): React.ReactElement<Props>
/>
{isFunction(api.tx.sudo.sudoUncheckedWeight) && (
<InputNumber
help={t<string>('The unchecked weight as specified for the sudoUncheckedWeight call.')}
isDisabled={!withWeight}
isError={weight.eq(BN_ZERO)}
isZeroable={false}

View File

@ -48,7 +48,6 @@ function Close ({ hasFailed, hash, idNumber, proposal, type }: Props): React.Rea
</Modal.Columns>
<Modal.Columns hint={t<string>('The committee account that will apply the close for the current round.')}>
<InputAddress
help={t<string>('Select the account you wish close the proposal with.')}
label={t<string>('close from account')}
onChange={setAccountId}
type='account'

View File

@ -73,7 +73,6 @@ function Propose ({ defaultThreshold = DEFAULT_THRESHOLD, defaultValue, filter,
<Modal.Content>
<InputAddress
filter={members}
help={t<string>('Select the account you wish to make the proposal with.')}
label={t<string>('propose from account')}
onChange={setAcountId}
type='account'
@ -81,7 +80,6 @@ function Propose ({ defaultThreshold = DEFAULT_THRESHOLD, defaultValue, filter,
/>
<InputNumber
className='medium'
help={t<string>('The minimum number of committee votes required to approve this motion')}
isError={!hasThreshold}
label={t<string>('threshold')}
onChange={_onChangeThreshold}

View File

@ -63,7 +63,6 @@ function Council ({ id, isDisabled, members }: Props): React.ReactElement<Props>
<Modal.Columns hint={t<string>('The council member that is proposing this, submission equates to an "aye" vote.')}>
<InputAddress
filter={members}
help={t<string>('Select the council account you wish to use to make the proposal.')}
label={t<string>('submit with council account')}
onChange={setAccountId}
type='account'
@ -72,7 +71,6 @@ function Council ({ id, isDisabled, members }: Props): React.ReactElement<Props>
</Modal.Columns>
<Modal.Columns hint={t<string>('Proposal can either be to approve or reject this spend. Once approved, the change is applied by either removing the proposal or scheduling payout.')}>
<Dropdown
help={t<string>('The type of council proposal to submit.')}
label={t<string>('council proposal type')}
onChange={setProposalType}
options={councilTypeOptRef.current}

View File

@ -47,7 +47,6 @@ function Propose ({ className }: Props): React.ReactElement<Props> | null {
<Modal.Content>
<Modal.Columns hint={t<string>('This account will make the proposal and be responsible for the bond.')}>
<InputAddress
help={t<string>('Select the account you wish to submit the proposal from.')}
label={t<string>('submit with account')}
onChange={setAccountId}
type='account'
@ -56,7 +55,6 @@ function Propose ({ className }: Props): React.ReactElement<Props> | null {
</Modal.Columns>
<Modal.Columns hint={t<string>('The beneficiary will receive the full amount if the proposal passes.')}>
<InputAddress
help={t<string>('The account to which the proposed balance will be transferred if approved')}
label={t<string>('beneficiary')}
onChange={setBeneficiary}
type='allPlus'
@ -74,27 +72,23 @@ function Propose ({ className }: Props): React.ReactElement<Props> | null {
}
>
<InputBalance
help={t<string>('The amount that will be allocated from the treasury pot')}
isError={!hasValue}
label={t<string>('value')}
onChange={setValue}
/>
<Static
help={t<string>('The on-chain percentage for the treasury')}
label={t<string>('proposal bond')}
>
{bondPercentage}
</Static>
<InputBalance
defaultValue={bondMin}
help={t<string>('The minimum amount that will be bonded')}
isDisabled
label={t<string>('minimum bond')}
/>
{bondMax && (
<InputBalance
defaultValue={bondMax}
help={t<string>('The maximum amount that will be bonded')}
isDisabled
label={t<string>('maximum bond')}
/>

View File

@ -60,7 +60,6 @@ function TipCreate ({ members }: Props): React.ReactElement<Props> | null {
<Modal.Content>
<Modal.Columns hint={t<string>('Use this account to request the tip from. This can be a normal or council account.')}>
<InputAddress
help={t<string>('Select the account you wish to submit the tip from.')}
label={t<string>('submit with account')}
onChange={setAccountId}
type='account'
@ -69,7 +68,6 @@ function TipCreate ({ members }: Props): React.ReactElement<Props> | null {
</Modal.Columns>
<Modal.Columns hint={t<string>('The beneficiary will received the tip as approved by council members.')}>
<InputAddress
help={t<string>('The account to which the tip will be transferred if approved')}
label={t<string>('beneficiary')}
onChange={setBeneficiary}
type='allPlus'
@ -78,7 +76,6 @@ function TipCreate ({ members }: Props): React.ReactElement<Props> | null {
<Modal.Columns hint={t<string>('A reason (to be stored-on-chain) as to why the recipient deserves a tip payout.')}>
<Input
autoFocus
help={t<string>('The reason why this tip should be paid.')}
isError={!hasReason}
label={t<string>('tip reason')}
onChange={setReason}
@ -87,7 +84,6 @@ function TipCreate ({ members }: Props): React.ReactElement<Props> | null {
{isMember && (
<Modal.Columns hint={t<string>('As a council member, you can suggest an initial value for the tip, each other council member can suggest their own.')}>
<InputBalance
help={t<string>('The suggested value for this tip')}
isError={!hasValue}
label={t<string>('tip value')}
onChange={setValue}

View File

@ -64,7 +64,6 @@ function TipEndorse ({ defaultId, hash, isMember, isTipped, median, members, rec
<Modal.Columns hint={t<string>('Your endorsement will be applied for this account.')}>
<InputAddress
filter={members}
help={t<string>('Select the account you wish to submit the tip from.')}
label={t<string>('submit with account')}
onChange={setAccountId}
type='account'
@ -75,7 +74,6 @@ function TipEndorse ({ defaultId, hash, isMember, isTipped, median, members, rec
<InputBalance
autoFocus
defaultValue={median}
help={t<string>('The tip amount that should be allocated')}
isZeroable
label={t<string>('value')}
onChange={setValue}

Some files were not shown because too many files have changed in this diff Show More