Swap Icon to FAIcon wrapper (#3046)

* Swap Icon to FAIcon wrapper

* Small tweaks
This commit is contained in:
Jaco Greeff 2020-06-25 11:00:36 +02:00 committed by GitHub
parent 2d9b9729dd
commit ede19891e1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
137 changed files with 379 additions and 288 deletions

View File

@ -14,7 +14,7 @@ export default function create (t: <T = string> (key: string, text: string, opti
'tx.democracy.notePreimage'
]
},
icon: 'calendar check',
icon: 'calendar-check',
name: 'democracy',
text: t<string>('nav.democracy', 'Democracy', { ns: 'apps-routing' }),
useCounter

View File

@ -14,7 +14,7 @@ export default function create (t: <T = string> (key: string, text: string, opti
'query.parachains.code'
]
},
icon: 'chain',
icon: 'link',
name: 'parachains',
text: t<string>('nav.parachains', 'Parachains', { ns: 'apps-routing' })
};

View File

@ -10,7 +10,7 @@ export default function create (t: <T = string> (key: string, text: string, opti
return {
Component: Settings,
display: {},
icon: 'settings',
icon: 'cogs',
name: 'settings',
text: t<string>('nav.settings', 'Settings', { ns: 'apps-routing' }),
useCounter

View File

@ -15,7 +15,7 @@ export default function create (t: <T = string> (key: string, text: string, opti
'query.society.pot'
]
},
icon: 'grab',
icon: 'hand-spock',
name: 'society',
text: t<string>('nav.society', 'Society', { ns: 'apps-routing' })
};

View File

@ -12,7 +12,7 @@ export default function create (t: <T = string> (key: string, text: string, opti
display: {
needsApi: []
},
icon: 'configure',
icon: 'tools',
name: 'toolbox',
text: t<string>('nav.toolbox', 'Toolbox', { ns: 'apps-routing' })
};

View File

@ -17,7 +17,7 @@ export default function create (t: <T = string> (key: string, text: string, opti
'tx.balances.transfer'
]
},
icon: 'send',
icon: 'paper-plane',
name: 'transfer',
text: t<string>('nav.transfer', 'Transfer', { ns: 'apps-routing' })
};

View File

@ -2,7 +2,7 @@
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
import { SemanticICONS } from 'semantic-ui-react/dist/commonjs/generic';
import { IconName } from '@fortawesome/fontawesome-svg-core';
import { AppProps, BareProps } from '@polkadot/react-components/types';
export interface RouteProps extends AppProps, BareProps {
@ -19,7 +19,7 @@ export interface Route {
needsApi?: (string | string[])[];
needsSudo?: boolean;
};
icon: SemanticICONS;
icon: IconName;
isIgnored?: boolean;
name: string;
text: string;

View File

@ -24,7 +24,7 @@ const NOT_FOUND: Route = {
display: {
needsApi: undefined
},
icon: 'cancel',
icon: 'times',
isIgnored: false,
name: 'unknown',
text: 'Unknown'

View File

@ -36,7 +36,10 @@ function ChainInfo ({ className = '', onClick }: Props): React.ReactElement<Prop
)}
<BestNumber label='#' />
</div>
<Icon name='dropdown' />
<Icon
className='dropdown'
icon='caret-down'
/>
</div>
</div>
);
@ -61,7 +64,7 @@ export default React.memo(styled(ChainInfo)`
width: 2.75rem;
}
.icon.dropdown,
.ui--Icon.dropdown,
> div.info {
color: white;
opacity: 0.75;
@ -69,7 +72,7 @@ export default React.memo(styled(ChainInfo)`
vertical-align: middle;
}
.icon.dropdown {
.ui--Icon.dropdown {
flex: 0;
margin: 0;
}

View File

@ -100,7 +100,7 @@ function Item ({ isCollapsed, onClick, route }: Props): React.ReactElement<Props
const body = (
<>
<Icon name={icon} />
<Icon icon={icon} />
<span className='text'>{text}</span>
{!!count && (
<Badge

View File

@ -112,7 +112,7 @@ function SideBar ({ className = '', collapse, handleResize, isCollapsed, isMenuO
rel='noopener noreferrer'
target='_blank'
>
<Icon name='github' /><span className='text'>{t<string>('nav.github', 'GitHub', { ns: 'apps-routing' })}</span>
<Icon icon='code-branch' /><span className='text'>{t<string>('nav.github', 'GitHub', { ns: 'apps-routing' })}</span>
</a>
</Menu.Item>
<Menu.Item className='apps--SideBar-Item'>
@ -122,22 +122,18 @@ function SideBar ({ className = '', collapse, handleResize, isCollapsed, isMenuO
rel='noopener noreferrer'
target='_blank'
>
<Icon name='book' /><span className='text'>{t<string>('nav.wiki', 'Wiki', { ns: 'apps-routing' })}</span>
<Icon icon='book' /><span className='text'>{t<string>('nav.wiki', 'Wiki', { ns: 'apps-routing' })}</span>
</a>
</Menu.Item>
<Menu.Divider hidden />
{
isCollapsed
? undefined
: <NodeInfo />
}
{!isCollapsed && <NodeInfo />}
</div>
<Responsive
className={`apps--SideBar-collapse ${isCollapsed ? 'collapsed' : 'expanded'}`}
minWidth={SIDEBAR_MENU_THRESHOLD}
>
<Button
icon={`angle double ${isCollapsed ? 'right' : 'left'}`}
icon={isCollapsed ? 'angle-double-right' : 'angle-double-left'}
isBasic
isCircular
onClick={collapse}

View File

@ -4,13 +4,14 @@
import React from 'react';
import styled from 'styled-components';
import { IconName } from '@fortawesome/fontawesome-svg-core';
import { Icon } from '@polkadot/react-components';
import { useToggle } from '@polkadot/react-hooks';
interface Props {
children: React.ReactNode;
className?: string;
icon: string;
icon: IconName;
type: 'error' | 'info';
}
@ -26,15 +27,15 @@ function BaseOverlay ({ children, className = '', icon, type }: Props): React.Re
<div className='content'>
<Icon
className='contentIcon'
name={icon as 'send'}
size='big'
icon={icon}
size='large'
/>
<div className='contentItem'>
{children}
</div>
<Icon
className='closeIcon'
name='close'
icon='times'
onClick={toggleHidden}
/>
</div>

View File

@ -33,7 +33,7 @@ function Transfer ({ accountId }: Props): React.ReactElement<Props> {
<Button.Group>
<TxButton
accountId={accountId}
icon='send'
icon='paper-plane'
label='make transfer'
params={[recipientId, amount]}
tx='balances.transfer'

View File

@ -177,8 +177,8 @@ function Account ({ account: { address, meta }, className = '', filter, isFavori
<tr className={className}>
<td className='favorite'>
<Icon
className={`${isFavorite ? 'isSelected isColorHighlight' : ''}`}
name={isFavorite ? 'star' : 'star outline'}
color={isFavorite ? 'orange' : 'gray'}
icon='star'
onClick={_onFavorite}
/>
</td>
@ -215,7 +215,7 @@ function Account ({ account: { address, meta }, className = '', filter, isFavori
</table>
</div>
}
info={<Icon name='shield' />}
info={<Icon icon='shield' />}
isInline
isTooltip
/>
@ -335,7 +335,7 @@ function Account ({ account: { address, meta }, className = '', filter, isFavori
</td>
<td className='button'>
<Button
icon='paper plane'
icon='paper-plane'
label={t<string>('send')}
onClick={toggleTransfer}
/>
@ -345,7 +345,7 @@ function Account ({ account: { address, meta }, className = '', filter, isFavori
onClose={toggleSettings}
trigger={
<Button
icon='ellipsis vertical'
icon='ellipsis-v'
onClick={toggleSettings}
/>
}

View File

@ -196,7 +196,7 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
)}
<Button.Group>
<Button
icon='add'
icon='plus'
isDisabled={isIpfs}
label={t<string>('Add account')}
onClick={toggleCreate}
@ -222,13 +222,13 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
</>
)}
<Button
icon='add'
icon='plus'
isDisabled={!api.tx.multisig && api.tx.utility}
label={t<string>('Multisig')}
onClick={toggleMultisig}
/>
<Button
icon='add'
icon='plus'
isDisabled={!api.tx.proxy}
label={t<string>('Proxied')}
onClick={toggleProxy}

View File

@ -125,7 +125,7 @@ function ChangePass ({ address, className = '', onClose }: Props): React.ReactEl
</Modal.Content>
<Modal.Actions onCancel={onClose}>
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!newPass1.isValid || !newPass2.isValid || !isOldValid}
isPrimary
label={t<string>('Change')}

View File

@ -211,7 +211,7 @@ function Identity ({ address, className = '', onClose }: Props): React.ReactElem
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={address}
icon='send'
icon='paper-plane'
isPrimary
label={t<string>('Set Identity')}
onStart={onClose}

View File

@ -235,7 +235,7 @@ function MultisigApprove ({ className = '', onClose, ongoing, threshold, who }:
<TxButton
accountId={signatory}
extrinsic={tx}
icon={type === 'aye' ? 'check' : 'cancel'}
icon={type === 'aye' ? 'check' : 'times'}
isDisabled={!tx || !whoFilter.length}
label={type === 'aye' ? 'Approve' : 'Reject'}
onStart={onClose}

View File

@ -157,7 +157,7 @@ function QrModal ({ className = '', onClose, onStatusChange }: Props): React.Rea
</Modal.Content>
<Modal.Actions onCancel={onClose}>
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!scanned || !isValid || (isAddress && isIpfs)}
isPrimary
label={t<string>('Create')}

View File

@ -89,7 +89,7 @@ function RecoverSetup ({ address, className = '', onClose }: Props): React.React
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={address}
icon='share alternate'
icon='share-alt'
isDisabled={isErrorHelpers || isErrorThreshold || isErrorDelay}
label={t<string>('Make recoverable')}
onStart={onClose}

View File

@ -108,7 +108,7 @@ function Transfer ({ className = '', onClose, recipientId: propRecipientId, send
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={senderId}
icon='send'
icon='paper-plane'
isDisabled={!hasAvailable || !recipientId || !amount}
isPrimary
label={t<string>('Make Transfer')}

View File

@ -150,8 +150,8 @@ function Address ({ address, className = '', filter, isFavorite, toggleFavorite
<tr className={className}>
<td className='favorite'>
<Icon
className={`${isFavorite ? 'isSelected isColorHighlight' : ''}`}
name={isFavorite ? 'star' : 'star outline'}
color={isFavorite ? 'orange' : 'gray'}
icon='star'
onClick={_onFavorite}
/>
</td>
@ -196,7 +196,7 @@ function Address ({ address, className = '', filter, isFavorite, toggleFavorite
</td>
<td className='button'>
<Button
icon='paper plane'
icon='paper-plane'
key='deposit'
label={t<string>('deposit')}
onClick={_toggleTransfer}
@ -207,7 +207,7 @@ function Address ({ address, className = '', filter, isFavorite, toggleFavorite
onClose={_toggleSettingPopup}
trigger={
<Button
icon='ellipsis vertical'
icon='ellipsis-v'
onClick={_toggleSettingPopup}
/>
}

View File

@ -64,7 +64,7 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
<div className={className}>
<Button.Group>
<Button
icon='add'
icon='plus'
label={t<string>('Add contact')}
onClick={toggleCreate}
/>

View File

@ -22,7 +22,7 @@ function Balances ({ address, className }: Props): React.ReactElement<Props> | n
<section className={className}>
<div className='ui--AddressMenu-sectionHeader'>
<div>
<Icon name='sort amount down' />
<Icon icon='sort-amount-down' />
&nbsp;
{t<string>('balance')}
</div>

View File

@ -32,7 +32,7 @@ function Identity ({ address, identity }: Props): React.ReactElement<Props> | nu
<div className='ui--AddressMenu-section ui--AddressMenu-identity'>
<div className='ui--AddressMenu-sectionHeader'>
<div>
<Icon name='address card' />
<Icon icon='address-card' />
&nbsp;
{t<string>('identity')}
</div>
@ -158,7 +158,7 @@ function Identity ({ address, identity }: Props): React.ReactElement<Props> | nu
<ul>
<li>
<IconLink
icon='address card'
icon='address-card'
label={t<string>('Add identity judgment')}
onClick={toggleIsJudgementOpen}
/>

View File

@ -27,7 +27,7 @@ function Multisig ({ isMultisig, meta }: Props): React.ReactElement<Props> | nul
<section>
<div className='ui--AddressMenu-sectionHeader'>
<div>
<Icon name='handshake outline' />
<Icon icon='handshake' />
&nbsp;
{t<string>('multisig')}
</div>

View File

@ -49,7 +49,7 @@ function Sidebar ({ address, className = '', onClose, onUpdateName }: Props): Re
<div className={className}>
<Button
className='ui--AddressMenu-close'
icon='close'
icon='times'
isBasic
isCircular
onClick={onClose}
@ -86,7 +86,7 @@ function Sidebar ({ address, className = '', onClose, onUpdateName }: Props): Re
{(!isEditingName && flags.isEditable) && (
<Icon
className='inline-icon'
name='edit'
icon='edit'
/>
)}
</AccountName>
@ -105,7 +105,7 @@ function Sidebar ({ address, className = '', onClose, onUpdateName }: Props): Re
<div className='ui-AddressMenu--button'>
<Button.Group>
<Button
icon='send'
icon='paper-plane'
label={t<string>('Deposit')}
onClick={toggleIsTransferOpen}
/>
@ -122,7 +122,7 @@ function Sidebar ({ address, className = '', onClose, onUpdateName }: Props): Re
)}
{!flags.isOwned && !flags.isInContacts && (
<Button
icon='add'
icon='plus'
isPositive
label={t<string>('Save')}
onClick={_onUpdateName}
@ -143,12 +143,12 @@ function Sidebar ({ address, className = '', onClose, onUpdateName }: Props): Re
size='tiny'
>
<Button.Content visible>
<Icon name='check' />
<Icon icon='check' />
&nbsp;
{t<string>('Saved')}
</Button.Content>
<Button.Content hidden>
<Icon name='ban' />
<Icon icon='ban' />
&nbsp;
{t<string>('Remove')}
</Button.Content>

View File

@ -59,7 +59,7 @@ function Match ({ address, className = '', count, offset, onCreateToggle, onRemo
size='tiny'
/>
<Button
icon='close'
icon='times'
isNegative
onClick={_onRemove}
size='tiny'

View File

@ -215,7 +215,7 @@ function VanityApp ({ className = '', onStatusChange }: Props): React.ReactEleme
icon={
isRunning
? 'stop'
: 'sign-in'
: 'sign-in-alt'
}
isDisabled={!isMatchValid}
label={

View File

@ -88,7 +88,7 @@ function Attest ({ accountId, className, ethereumAddress, onSuccess, statementKi
<Button.Group>
<TxButton
accountId={accountId}
icon='send'
icon='paper-plane'
isDisabled={!statementSentence}
isPrimary
label={t<string>('I agree')}

View File

@ -86,7 +86,7 @@ function Claim ({ accountId, className = '', ethereumAddress, ethereumSignature,
<h2><FormatBalance value={claimValue} /></h2>
<Button.Group>
<TxButton
icon='send'
icon='paper-plane'
isPrimary
isUnsigned
label={t('Claim')}

View File

@ -201,7 +201,7 @@ function ClaimsApp (): React.ReactElement {
{(step === Step.Account) && (
<Button.Group>
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={preclaimEthereumAddress === PRECLAIMS_LOADING}
label={preclaimEthereumAddress === PRECLAIMS_LOADING
? t<string>('Loading')
@ -229,7 +229,7 @@ function ClaimsApp (): React.ReactElement {
{(step === Step.ETHAddress) && (
<Button.Group>
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!ethereumAddress}
label={t<string>('Continue')}
onClick={goToStepSign}
@ -272,7 +272,7 @@ function ClaimsApp (): React.ReactElement {
{(step === Step.Sign) && (
<Button.Group>
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!accountId || !signature}
label={t<string>('Confirm claim')}
onClick={goToStepClaim}

View File

@ -54,7 +54,7 @@ function Add (): React.ReactElement {
return (
<>
<Button
icon='add'
icon='plus'
label={t('Add an existing code hash')}
onClick={toggleIsOpen}
/>

View File

@ -83,7 +83,7 @@ function Code ({ className, code, onShowDeploy }: Props): React.ReactElement<Pro
tooltip={t('Forget this code hash')}
/>
<Button
icon='cloud upload'
icon='upload'
isPrimary
label={t('deploy')}
onClick={_onShowDeploy}

View File

@ -62,7 +62,7 @@ function Upload (): React.ReactElement {
return (
<>
<Button
icon='add'
icon='plus'
label={t('Upload WASM')}
onClick={toggleIsOpen}
/>

View File

@ -67,7 +67,7 @@ function Add (): React.ReactElement {
return (
<>
<Button
icon='add'
icon='plus'
label={t('Add an existing contract')}
onClick={toggleIsOpen}
/>

View File

@ -204,7 +204,7 @@ function Call (props: Props): React.ReactElement<Props> | null {
{useRpc
? (
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!isValid}
isPrimary
label={t<string>('Call')}
@ -214,7 +214,7 @@ function Call (props: Props): React.ReactElement<Props> | null {
: (
<TxButton
accountId={accountId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!isValid}
isPrimary
label={t('Call')}
@ -234,7 +234,7 @@ function Call (props: Props): React.ReactElement<Props> | null {
{t<string>('Call results')}
<IconLink
className='clear-all'
icon='close'
icon='times'
label={t<string>('Clear all')}
onClick={_onClearOutcomes}
/>

View File

@ -39,7 +39,7 @@ function Outcome ({ className = '', onClear, outcome: { isSuccess, message, orig
</span>
<Button
className='icon-button clear-btn'
icon='close'
icon='times'
isPrimary
onClick={onClear}
size='mini'

View File

@ -70,7 +70,7 @@ function Contracts (props: Props): React.ReactElement<Props> {
<Button.Group isCentered>
{hasCode && (
<Button
icon='cloud upload'
icon='upload'
label={t('Deploy a code hash')}
onClick={onShowDeploy()}
/>

View File

@ -233,7 +233,7 @@ function Deploy ({ allCodes, basePath, codeHash, constructorIndex = 0, isOpen, o
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={accountId}
icon='cloud upload'
icon='upload'
isDisabled={!isValid}
isPrimary
label={t('Deploy')}

View File

@ -73,7 +73,7 @@ function CodeRow ({ buttons, children, className, code: { json }, isInline, with
icon={
<div className='ui--CodeRow-icon'>
<Icon
name='code'
icon='code'
size='large'
/>
</div>
@ -104,7 +104,7 @@ export default React.memo(
padding: 0.5rem;
display: flex;
justify-content: flex-end;
align-items: flex-end;
align-items: flex-end;
}
`
);

View File

@ -67,7 +67,7 @@ function MessageSignature ({ className, message: { args, mutates, name, returnTy
className='ui--MessageSignature-mutates'
data-for={`mutates-${name}`}
data-tip
name='database'
icon='database'
/>
{withTooltip && (
<Tooltip
@ -95,7 +95,7 @@ export default React.memo(
.ui--MessageSignature-name {
color: #2f8ddb;
font-weight: bold;
font-weight: bold;
}
.ui--MessageSignature-type {

View File

@ -97,7 +97,7 @@ function renderItem (props: Props, message: ContractABIMessage, index: number, a
<div className='accessory'>
<Button
className='execute'
icon='cloud upload'
icon='upload'
onClick={onSelectConstructor(props, index)}
tooltip={t<string>('Deploy with this constructor')}
/>

View File

@ -77,7 +77,7 @@ function Close ({ hasFailed, hash, idNumber, isDisabled, members, proposal }: Pr
</Modal>
)}
<Button
icon='cancel'
icon='times'
isDisabled={isDisabled}
label={t<string>('Close')}
onClick={toggleOpen}

View File

@ -59,7 +59,7 @@ function ProposeExternal ({ className = '', isMember, members }: Props): React.R
return (
<>
<Button
icon='add'
icon='plus'
isDisabled={!isMember}
label={t<string>('Propose external')}
onClick={toggleVisible}

View File

@ -61,7 +61,7 @@ function Propose ({ isMember, members }: Props): React.ReactElement<Props> {
return (
<>
<Button
icon='add'
icon='plus'
isDisabled={!isMember}
label={t<string>('Propose motion')}
onClick={toggleOpen}

View File

@ -60,7 +60,7 @@ function Slashing ({ className = '', isMember, members }: Props): React.ReactEle
return (
<>
<Button
icon='cancel'
icon='times'
isDisabled={!isMember || !slashes.length}
label={t<string>('Cancel slashes')}
onClick={toggleVisible}

View File

@ -85,7 +85,7 @@ function Voting ({ hash, idNumber, isDisabled, members, prime, proposal }: Props
</Modal.Columns>
{isPrime && (
<article className='warning'>
<div><Icon name='warning sign' />{t<string>('You are voting with this collective\'s prime account. The vote will be the default outcome in case of any abstentions.')}</div>
<div><Icon icon='exclamation-triangle' />{t<string>('You are voting with this collective\'s prime account. The vote will be the default outcome in case of any abstentions.')}</div>
</article>
)}
</Modal.Content>

View File

@ -69,7 +69,7 @@ function SubmitCandidacy ({ electionsInfo }: Props): React.ReactElement<Props> {
</Modal>
)}
<Button
icon='add'
icon='plus'
isDisabled={!electionsInfo}
label={t<string>('Submit candidacy')}
onClick={onOpen}

View File

@ -19,7 +19,7 @@ function Entry ({ className = '', route: { icon, name, text } }: Props): React.R
<div className={className}>
<Link to={`/${name}`}>
<Icon
name={icon}
icon={icon}
size='massive'
/>
<div className='name'>

View File

@ -92,7 +92,7 @@ function Fasttrack ({ imageHash, threshold }: Props): React.ReactElement<Props>
<Modal.Actions onCancel={toggleFasttrack}>
<TxButton
accountId={accountId}
icon='fast forward'
icon='fast-forward'
isDisabled={!accountId || !proposal || !memberThreshold}
isPrimary
label={t<string>('Fast track')}
@ -108,7 +108,7 @@ function Fasttrack ({ imageHash, threshold }: Props): React.ReactElement<Props>
</Modal>
)}
<Button
icon='fast forward'
icon='fast-forward'
isDisabled={!allowFast}
label={t<string>('Fast track')}
onClick={toggleFasttrack}

View File

@ -109,7 +109,7 @@ function PreImage ({ className = '', imageHash, isImminent: propsIsImminent, onC
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={accountId}
icon='add'
icon='plus'
isDisabled={!proposal || !accountId || !isMatched || !encodedProposal}
isPrimary
label={t<string>('Submit preimage')}

View File

@ -99,7 +99,7 @@ function Propose ({ className = '', onClose }: Props): React.ReactElement<Props>
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={accountId}
icon='add'
icon='plus'
isDisabled={!balance || !hasMinLocked || !isHashValid || !accountId}
isPrimary
label={t<string>('Submit proposal')}

View File

@ -119,27 +119,19 @@ function Referendum ({ className = '', value: { allAye, allNay, image, imageHash
total={votedNay}
votes={allNay}
/>
<td className='badge together'>
<td className='badge'>
{isBoolean(isPassing) && (
<>
<Badge
color={isPassing ? 'green' : 'red'}
hover={
isPassing
? t<string>('{{threshold}}, passing', { replace: { threshold } })
: t<string>('{{threshold}}, not passing', { replace: { threshold } })
}
info={<Icon name={isPassing ? 'check' : 'cancel'} />}
isInline
isTooltip
/>
{hasVoted && (
<Icon
color={hasVotedAye ? 'green' : 'red'}
name='check square outline'
/>
)}
</>
<Badge
color={isPassing ? 'green' : 'red'}
hover={
isPassing
? t<string>('{{threshold}}, passing', { replace: { threshold } })
: t<string>('{{threshold}}, not passing', { replace: { threshold } })
}
info={<Icon icon={isPassing ? 'check' : 'times'} />}
isInline
isTooltip
/>
)}
</td>
<td className='button'>
@ -153,6 +145,12 @@ function Referendum ({ className = '', value: { allAye, allNay, image, imageHash
)}
</Button.Group>
</td>
<td className='badge'>
<Icon
color={hasVoted ? (hasVotedAye ? 'green' : 'red') : 'gray'}
icon='asterisk'
/>
</td>
<td className='mini ui--media-1000'>
<LinkExternal
data={index}

View File

@ -61,7 +61,7 @@ function ReferendumVotes ({ change, className = '', count, index, isWinning, tot
className='double-icon'
data-for={trigger}
data-tip
name={isWinning ? 'arrow alternate circle down' : 'arrow alternate circle up'}
icon={isWinning ? 'arrow alternate circle down' : 'arrow alternate circle up'}
/>
<FormatBalance value={change} />
<Tooltip
@ -90,7 +90,7 @@ function ReferendumVotes ({ change, className = '', count, index, isWinning, tot
export default React.memo(styled(ReferendumVotes)`
.ui--Expander-summary {
i.icon+i.icon {
.ui--Icon+.ui--Icon {
margin-left: -0.375rem;
}
}

View File

@ -26,6 +26,7 @@ function Referendums ({ className = '', referendums }: Props): React.ReactElemen
[t('aye')],
[t('nay')],
[undefined, undefined, 2],
[undefined, 'badge'],
[undefined, 'mini ui--media-1000']
], [t]);

View File

@ -69,7 +69,7 @@ function Seconding ({ depositors, image, proposalId }: Props): React.ReactElemen
<Modal.Actions onCancel={toggleSeconding}>
<TxButton
accountId={accountId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!accountId || isDepositor}
isPrimary
label={t<string>('Second')}
@ -85,7 +85,7 @@ function Seconding ({ depositors, image, proposalId }: Props): React.ReactElemen
</Modal>
)}
<Button
icon='toggle off'
icon='toggle-off'
label={t<string>('Second')}
onClick={toggleSeconding}
/>

View File

@ -34,12 +34,12 @@ function Overview ({ className }: Props): React.ReactElement<Props> {
<Summary referendumCount={referendums?.length} />
<Button.Group>
<Button
icon='add'
icon='plus'
label={t<string>('Submit preimage')}
onClick={togglePreimage}
/>
<Button
icon='add'
icon='plus'
label={t<string>('Submit proposal')}
onClick={togglePropose}
/>

View File

@ -53,7 +53,7 @@ function Selection (): React.ReactElement {
<Button.Group>
<TxButton
extrinsic={extrinsic}
icon='sign-in'
icon='sign-in-alt'
isBasic
isDisabled={!extrinsic}
isUnsigned
@ -63,7 +63,7 @@ function Selection (): React.ReactElement {
<TxButton
accountId={accountId}
extrinsic={extrinsic}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!extrinsic || !accountId}
isPrimary={false}
label={t<string>('Submit Transaction')}

View File

@ -115,7 +115,7 @@ function Transfer ({ assets, className = '', onClose, recipientId: propRecipient
<TxButton
accountId={senderId}
extrinsic={extrinsic}
icon='send'
icon='paper-plane'
isPrimary
label={t<string>('Make Transfer')}
onStart={onClose}

View File

@ -98,7 +98,6 @@ function ActionButtons ({ className = '', isCustomExample, isRunning, removeSnip
<Button
icon='save'
isDisabled={!snippetName.length}
isPrimary
label={t<string>('Save snippet to local storage')}
onClick={_saveSnippet}
/>
@ -107,9 +106,8 @@ function ActionButtons ({ className = '', isCustomExample, isRunning, removeSnip
{isRunning
? (
<Button
icon='close'
icon='times'
isCircular
isNegative
onClick={stopJs}
/>
)
@ -118,7 +116,6 @@ function ActionButtons ({ className = '', isCustomExample, isRunning, removeSnip
className='play-button'
icon='play'
isCircular
isPrimary
onClick={runJs}
/>
)

View File

@ -258,9 +258,8 @@ function Playground ({ className = '' }: Props): React.ReactElement<Props> {
>
<Button
className='action-button'
icon='erase'
icon='eraser'
isCircular
isNegative
onClick={_clearConsole}
/>
</Output>

View File

@ -47,7 +47,7 @@ function Parachain ({ className = '', parachain: { didUpdate, id, info, pendingS
: t<string>('Not updated in the last block')
}
info={
<Icon name='check' />
<Icon icon='check' />
}
isGray={!didUpdate}
isTooltip

View File

@ -78,7 +78,7 @@ function Register ({ nextFreeId = BN_THOUSAND, sudoKey }: Props): React.ReactEle
<>
<div className='ui--Row-buttons'>
<Button
icon='add'
icon='plus'
label={t<string>('Register a parachain')}
onClick={onOpen}
/>

View File

@ -45,7 +45,7 @@ function Overview ({ isMine, sudoKey }: Props): React.ReactElement<Props> {
{actions}
<article className='error padded'>
<div>
<Icon name='ban' />
<Icon icon='ban' />
{t<string>('There are no registered parachains')}
</div>
</article>

View File

@ -44,7 +44,7 @@ function Parachain ({ basePath, className = '', isMine, paraInfoRef, sudoKey }:
<>
<article className='error padded'>
<div>
<Icon name='ban' />
<Icon icon='ban' />
{t(`No parachain with ${id ? `id ${id.toString()}` : 'this id'} exists`)}
</div>
</article>
@ -76,7 +76,7 @@ function Parachain ({ basePath, className = '', isMine, paraInfoRef, sudoKey }:
trigger={
<Button
className='menu-button'
icon='ellipsis vertical'
icon='ellipsis-v'
isPrimary
onClick={toggleMenu}
/>

View File

@ -260,7 +260,7 @@ function Translate ({ className }: Props): React.ReactElement<Props> {
</div>
<Button.Group>
<Button
icon='refresh'
icon='sync'
label={t<string>('Apply to UI')}
onClick={_doApply}
/>

View File

@ -101,7 +101,7 @@ function BondExtra ({ controllerId, onClose, stakingInfo, stashId }: Props): Rea
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={stashId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!maxAdditional?.gt(BN_ZERO) || !!amountError?.error}
isPrimary
label={t<string>('Bond more')}

View File

@ -92,7 +92,7 @@ function InjectKeys ({ onClose }: Props): React.ReactElement<Props> | null {
value={suri}
/>
<article className='warning'>
<div><Icon name='warning sign' />{t<string>('This operation will submit the seed via an RPC call. Do not perform this operation on a public RPC node, but ensure that the node is local, connected to your validator and secure.')}</div>
<div><Icon icon='exclamation-triangle' />{t<string>('This operation will submit the seed via an RPC call. Do not perform this operation on a public RPC node, but ensure that the node is local, connected to your validator and secure.')}</div>
</article>
</Modal.Column>
<Modal.Column>
@ -134,7 +134,7 @@ function InjectKeys ({ onClose }: Props): React.ReactElement<Props> | null {
</Modal.Content>
<Modal.Actions onCancel={onClose}>
<Button
icon='sign-in'
icon='sign-in-alt'
isPrimary
label={t<string>('Submit key')}
onClick={_onSubmit}

View File

@ -73,7 +73,7 @@ function ValidateAmount ({ currentAmount, onError, stashId, value }: Props): Rea
if (error || warning) {
return (
<article className={error ? 'error' : 'warning'}>
<div><Icon name='warning sign' />{error || warning}</div>
<div><Icon icon='exclamation-triangle' />{error || warning}</div>
</article>
);
}

View File

@ -73,7 +73,7 @@ function ValidateController ({ accountId, controllerId, defaultController, onErr
return (
<article className={isFatal ? 'error' : 'warning'}>
<div><Icon name='warning sign' />{error}</div>
<div><Icon icon='exclamation-triangle' />{error}</div>
</article>
);
}

View File

@ -37,7 +37,7 @@ function ValidateSessionEd25519 ({ onError, sessionId, stashId }: Props): React.
return (
<article className='warning'>
<div><Icon name='warning sign' />{error}</div>
<div><Icon icon='exclamation-triangle' />{error}</div>
</article>
);
}

View File

@ -38,7 +38,7 @@ function InputValidationUnstakeThreshold ({ onError, unstakeThreshold }: Props):
return (
<article className='warning'>
<div><Icon name='warning sign' />{error}</div>
<div><Icon icon='exclamation-triangle' />{error}</div>
</article>
);
}

View File

@ -46,7 +46,7 @@ function Nominate ({ controllerId, next, nominating, onClose, stashId, targets,
<TxButton
accountId={controllerId}
extrinsic={nominateTx}
icon='hand paper outline'
icon='hand-paper'
isDisabled={!nominateTx}
isPrimary
label={t<string>('Nominate')}

View File

@ -62,7 +62,7 @@ function SetControllerAccount ({ defaultControllerId, onClose, stashId }: Props)
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={stashId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!controllerId}
isPrimary
label={t<string>('Set controller')}

View File

@ -62,7 +62,7 @@ function SetRewardDestination ({ controllerId, defaultDestination, onClose, stas
<Modal.Actions onCancel={onClose}>
<TxButton
accountId={controllerId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!controllerId}
isPrimary
label={t<string>('Set reward destination')}

View File

@ -37,7 +37,7 @@ function SetSessionKey ({ controllerId, onClose, stashId }: Props): React.ReactE
<TxButton
accountId={controllerId}
extrinsic={sessionTx}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!sessionTx}
isPrimary
label={t<string>('Set Session Key')}

View File

@ -37,7 +37,7 @@ function Validate ({ controllerId, onClose, stashId }: Props): React.ReactElemen
<TxButton
accountId={controllerId}
extrinsic={validateTx}
icon='check circle outline'
icon='certificate'
isDisabled={!validateTx}
isPrimary
label={t<string>('Validate')}

View File

@ -166,7 +166,7 @@ function Account ({ className = '', info: { controllerId, destination, destinati
{(!sessionIds.length || hexSessionIdNext === '0x')
? (
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!isOwnController || isDisabled}
key='set'
label={t<string>('Session Key')}
@ -175,7 +175,7 @@ function Account ({ className = '', info: { controllerId, destination, destinati
)
: (
<Button
icon='check circle outline'
icon='certificate'
isDisabled={!isOwnController || isDisabled}
key='validate'
label={t<string>('Validate')}
@ -184,7 +184,7 @@ function Account ({ className = '', info: { controllerId, destination, destinati
)
}
<Button
icon='hand paper outline'
icon='hand-paper'
isDisabled={!isOwnController || isDisabled}
key='nominate'
label={t<string>('Nominate')}
@ -199,7 +199,7 @@ function Account ({ className = '', info: { controllerId, destination, destinati
onClose={toggleSettings}
trigger={
<Button
icon='ellipsis vertical'
icon='ellipsis-v'
isDisabled={isDisabled}
onClick={toggleSettings}
/>

View File

@ -56,7 +56,7 @@ function NewNominator ({ isInElection, next, targets, validators }: Props): Reac
return (
<>
<Button
icon='add'
icon='plus'
isDisabled={isDisabled}
key='new-nominator'
label={t<string>('Nominator')}
@ -90,7 +90,7 @@ function NewNominator ({ isInElection, next, targets, validators }: Props): Reac
</Modal.Content>
<Modal.Actions onCancel={_toggle}>
<Button
icon='step backward'
icon='step-backward'
isDisabled={step === 1}
label={t<string>('prev')}
onClick={_prevStep}
@ -99,7 +99,7 @@ function NewNominator ({ isInElection, next, targets, validators }: Props): Reac
? (
<TxButton
accountId={stashId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!bondTx || !nominateTx || !stashId || !controllerId}
isPrimary
label={t<string>('Bond & Nominate')}
@ -114,7 +114,7 @@ function NewNominator ({ isInElection, next, targets, validators }: Props): Reac
)
: (
<Button
icon='step forward'
icon='step-forward'
isDisabled={!bondTx}
isPrimary
label={t<string>('next')}

View File

@ -27,7 +27,7 @@ function NewStash (): React.ReactElement {
return (
<>
<Button
icon='add'
icon='plus'
key='new-stash'
label={t<string>('Stash')}
onClick={_toggle}
@ -44,7 +44,7 @@ function NewStash (): React.ReactElement {
<TxButton
accountId={stashId}
extrinsic={bondTx}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!bondTx || !stashId}
isPrimary
label={t<string>('Bond')}

View File

@ -54,7 +54,7 @@ function NewValidator ({ isInElection }: Props): React.ReactElement<Props> {
return (
<>
<Button
icon='add'
icon='plus'
isDisabled={isDisabled}
key='new-validator'
label={t<string>('Validator')}
@ -91,7 +91,7 @@ function NewValidator ({ isInElection }: Props): React.ReactElement<Props> {
</Modal.Content>
<Modal.Actions onCancel={_toggle}>
<Button
icon='step backward'
icon='step-backward'
isDisabled={step === 1}
label={t<string>('prev')}
onClick={_prevStep}
@ -100,7 +100,7 @@ function NewValidator ({ isInElection }: Props): React.ReactElement<Props> {
? (
<TxButton
accountId={stashId}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!bondTx || !sessionTx || !validateTx}
isPrimary
label={t<string>('Bond & Validate')}
@ -115,7 +115,7 @@ function NewValidator ({ isInElection }: Props): React.ReactElement<Props> {
)
: (
<Button
icon='step forward'
icon='step-forward'
isDisabled={!bondTx}
isPrimary
label={t<string>('next')}

View File

@ -20,8 +20,8 @@ function Favorite ({ address, isFavorite, toggleFavorite }: Props): React.ReactE
return (
<td className='favorite'>
<Icon
className={`${isFavorite ? 'isSelected isColorHighlight' : ''}`}
name={isFavorite ? 'star' : 'star outline'}
color={isFavorite ? 'orange' : 'gray'}
icon='star'
onClick={_onFavorite}
/>
</td>

View File

@ -21,7 +21,7 @@ function Status ({ isElected, numNominators, onlineCount, onlineMessage }: Props
? (
<Badge
color='blue'
info={<Icon name='chevron right' />}
info={<Icon icon='chevron-right' />}
isInline
/>
)
@ -35,7 +35,7 @@ function Status ({ isElected, numNominators, onlineCount, onlineMessage }: Props
{(!!onlineCount || onlineMessage) && (
<Badge
color='green'
info={onlineCount || <Icon name='envelope' />}
info={onlineCount || <Icon icon='envelope' />}
isInline
/>
)}

View File

@ -150,7 +150,7 @@ function Address ({ address, className = '', filterName, hasQueries, isAuthor, i
<td>
{hasQueries && (
<Icon
name='line graph'
icon='chart-line'
onClick={_onQueryStats}
/>
)}

View File

@ -134,7 +134,7 @@ function PayButton ({ className, isAll, isDisabled, payout }: Props): React.Reac
<TxButton
accountId={accountId}
extrinsic={extrinsic}
icon='credit card outline'
icon='credit-card'
isDisabled={!extrinsic || !accountId}
label={t<string>('Payout')}
onStart={togglePayout}
@ -143,7 +143,7 @@ function PayButton ({ className, isAll, isDisabled, payout }: Props): React.Reac
</Modal>
)}
<Button
icon='credit card outline'
icon='credit-card'
isDisabled={isDisabled || isPayoutEmpty}
label={
(isAll || Array.isArray(payout))

View File

@ -95,7 +95,7 @@ function Stash ({ className = '', isDisabled, payout: { available, rewards, stas
<TxButton
accountId={stakingAccount.controllerId}
extrinsic={extrinsic}
icon='credit card outline'
icon='credit-card'
isDisabled={!extrinsic || isDisabled}
isPrimary={false}
label={t<string>('Payout')}

View File

@ -51,7 +51,7 @@ function Nominate ({ className = '', isDisabled, ownNominators, targets }: Props
return (
<>
<Button
icon='hand paper outline'
icon='hand-paper'
isDisabled={isDisabled || !filter.length || !targets.length}
label={t<string>('Nominate selected')}
onClick={toggleOpen}

View File

@ -89,7 +89,7 @@ function Validator ({ canSelect, filterName, info, isSelected, toggleFavorite, t
{isElected && (
<Badge
color='blue'
info={<Icon name='chevron right' />}
info={<Icon icon='chevron-right' />}
isInline
/>
)}
@ -123,7 +123,7 @@ function Validator ({ canSelect, filterName, info, isSelected, toggleFavorite, t
<td>
<Icon
className='staking--stats'
name='line graph'
icon='chart-line'
onClick={_onQueryStats}
/>
</td>

View File

@ -118,7 +118,7 @@ function Targets ({ className = '', isInElection, ownStashes, targets: { calcWit
const header = useMemo(() => [
[t('validators'), 'start', 4],
...['rankNumNominators', 'rankComm', 'rankBondTotal', 'rankBondOwn', 'rankBondOther', 'rankOverall'].map((header) => [
<>{labels[header]}<Icon name={sortBy === header ? (sortFromMax ? 'chevron down' : 'chevron up') : 'minus'} /></>,
<>{labels[header]}<Icon icon={sortBy === header ? (sortFromMax ? 'chevron-down' : 'chevron-up') : 'minus'} /></>,
`${sorted ? `isClickable ${sortBy === header ? 'ui--highlight--border' : ''} number` : 'number'} ${classes[header] || ''}`,
1,
(): void => _sort(header as 'rankComm')
@ -204,7 +204,7 @@ export default React.memo(styled(Targets)`
text-align: center;
th {
i.icon {
.ui--Icon {
margin-left: 0.5rem;
}
}

View File

@ -206,13 +206,13 @@ function Query ({ className = '', onRemove, value }: Props): React.ReactElement<
<div className='container'>
{isSpreadable && (
<Button
icon='ellipsis horizontal'
icon='ellipsis-h'
key='spread'
onClick={_spreadHandler(id)}
/>
)}
<Button
icon='close'
icon='times'
isNegative
key='close'
onClick={_onRemove}

View File

@ -42,7 +42,7 @@ function SetKey ({ allAccounts, className = '', isMine, sudoKey }: Props): React
/>
<TxButton
accountId={sudoKey}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!isMine || sudoKey === selected}
isPrimary
label={t<string>('Reassign')}
@ -65,7 +65,7 @@ function SetKey ({ allAccounts, className = '', isMine, sudoKey }: Props): React
{willLose && (
<article className='warning padded'>
<div>
<Icon name='warning' />
<Icon icon='exclamation-triangle' />
{t<string>('You will no longer have sudo access')}
</div>
</article>

View File

@ -66,7 +66,7 @@ function Propose ({ className = '', isMine, sudoKey }: Props): React.ReactElemen
<Button.Group>
<TxButton
accountId={sudoKey}
icon='sign-in'
icon='sign-in-alt'
isDisabled={!method || (withWeight ? weight.eq(BN_ZERO) : false)}
label={t<string>('Submit Sudo')}
params={
@ -86,7 +86,7 @@ function Propose ({ className = '', isMine, sudoKey }: Props): React.ReactElemen
: (
<article className='error padded'>
<div>
<Icon name='ban' />
<Icon icon='ban' />
{t<string>('You do not have access to the current sudo key')}
</div>
</article>

View File

@ -59,7 +59,7 @@ function SudoApp ({ basePath }: Props): React.ReactElement<Props> {
: (
<article className='error padded'>
<div>
<Icon name='ban' />
<Icon icon='ban' />
{t<string>('You do not have access to the current sudo key')}
</div>
</article>

View File

@ -77,7 +77,7 @@ function Close ({ hasFailed, hash, idNumber, isDisabled, members, proposal }: Pr
</Modal>
)}
<Button
icon='cancel'
icon='times'
isDisabled={isDisabled}
label={t<string>('Close')}
onClick={toggleOpen}

View File

@ -55,7 +55,7 @@ function Voting ({ hash, prime, proposalId }: Props): React.ReactElement<Props>
/>
{isPrime && (
<article className='warning'>
<div><Icon name='warning sign' />{t<string>('You are voting with this collective\'s prime account. The vote will be the default outcome in case of any abstentions.')}</div>
<div><Icon icon='exclamation-triangle' />{t<string>('You are voting with this collective\'s prime account. The vote will be the default outcome in case of any abstentions.')}</div>
</article>
)}
</Modal.Content>

View File

@ -95,7 +95,7 @@ function Selection ({ queueRpc }: Props): React.ReactElement<Props> {
/>
<Button.Group>
<Button
icon='sign-in'
icon='sign-in-alt'
isDisabled={!isValid}
label={t<string>('Submit RPC call')}
onClick={_onSubmit}

View File

@ -211,7 +211,7 @@ function Sign ({ className = '' }: Props): React.ReactElement<Props> {
</div>
<Button.Group>
<Button
icon='privacy'
icon='key'
isDisabled={!(isUsable && !isLocked)}
label={t<string>('Sign message')}
onClick={_onSign}

View File

@ -92,7 +92,7 @@ function Propose ({ className }: Props): React.ReactElement<Props> | null {
<Modal.Actions onCancel={toggleOpen}>
<TxButton
accountId={accountId}
icon='add'
icon='plus'
isDisabled={!accountId || !hasValue}
isPrimary
label={t<string>('Submit proposal')}

View File

@ -119,7 +119,7 @@ function Submission ({ councilProposals, id, isDisabled, members }: Props): Reac
</Modal>
)}
<Button
icon='step forward'
icon='step-forward'
isDisabled={isDisabled}
label={t<string>('To council')}
onClick={toggleOpen}

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