diff --git a/packages/apps-config/src/links/commonwealth.ts b/packages/apps-config/src/links/commonwealth.ts index 1a256f1d8c..4b3f240099 100644 --- a/packages/apps-config/src/links/commonwealth.ts +++ b/packages/apps-config/src/links/commonwealth.ts @@ -20,5 +20,6 @@ export default { proposal: 'proposal/democracyproposal', referendum: 'proposal/referendum', treasury: 'proposal/treasuryproposal' - } + }, + url: 'https://commonwealth.im/' }; diff --git a/packages/apps-config/src/links/polkascan.ts b/packages/apps-config/src/links/polkascan.ts index bc1ca433f3..05d95ac091 100644 --- a/packages/apps-config/src/links/polkascan.ts +++ b/packages/apps-config/src/links/polkascan.ts @@ -24,5 +24,6 @@ export default { referendum: 'democracy/referendum', techcomm: 'techcomm/proposal', treasury: 'treasury/proposal' - } + }, + url: 'https://polkascan.io/' }; diff --git a/packages/apps-config/src/links/polkassembly.ts b/packages/apps-config/src/links/polkassembly.ts index 55190a7744..a9683669d7 100644 --- a/packages/apps-config/src/links/polkassembly.ts +++ b/packages/apps-config/src/links/polkassembly.ts @@ -17,5 +17,6 @@ export default { proposal: 'proposal', referendum: 'referendum', treasury: 'treasury' - } + }, + url: 'https://polkassembly.io/' }; diff --git a/packages/apps-config/src/links/subscan.ts b/packages/apps-config/src/links/subscan.ts index 2365210885..241e104afd 100644 --- a/packages/apps-config/src/links/subscan.ts +++ b/packages/apps-config/src/links/subscan.ts @@ -21,5 +21,6 @@ export default { referendum: 'referenda', techcomm: 'tech', treasury: 'treasury' - } + }, + url: 'https://subscan.io/' }; diff --git a/packages/apps-config/src/links/types.ts b/packages/apps-config/src/links/types.ts index c9ec18733f..4098571852 100644 --- a/packages/apps-config/src/links/types.ts +++ b/packages/apps-config/src/links/types.ts @@ -7,8 +7,9 @@ import BN from 'bn.js'; export type LinkTypes = 'address' | 'block' | 'council' | 'extrinsic' | 'proposal' | 'referendum' | 'techcomm' | 'treasury'; export interface ExternalDef { - isActive: boolean; chains: Record; + isActive: boolean; paths: Partial>; + url: string; create: (chain: string, path: string, data: BN | number | string, hash?: string) => string; } diff --git a/packages/react-components/src/LinkExternal.tsx b/packages/react-components/src/LinkExternal.tsx index aac205396e..99c868f266 100644 --- a/packages/react-components/src/LinkExternal.tsx +++ b/packages/react-components/src/LinkExternal.tsx @@ -11,7 +11,6 @@ import linked from '@polkadot/apps-config/links'; import { useApi } from '@polkadot/react-hooks'; import { useTranslation } from './translate'; -import Icon from './Icon'; import Tooltip from './Tooltip'; interface Props { @@ -22,10 +21,14 @@ interface Props { withShort?: boolean; } +function shortName (name: string): string { + return `${name[0]}${name[name.length - 1]}`; +} + function genLinks (systemChain: string, { data, hash, type, withShort }: Props): React.ReactNode[] { return Object .entries(linked) - .map(([name, { chains, create, isActive, paths }]): React.ReactNode | null => { + .map(([name, { chains, create, isActive, paths, url }]): React.ReactNode | null => { const extChain = chains[systemChain]; const extPath = paths[type]; @@ -46,12 +49,12 @@ function genLinks (systemChain: string, { data, hash, type, withShort }: Props): target='_blank' > {withShort - ? + ? shortName(name) : name } {name}
{url}} trigger={trigger} /> @@ -75,7 +78,7 @@ function LinkExternal ({ className, data, hash, type, withShort }: Props): React return (
{!withShort &&
{t('View this externally')}
} -
{links.map((link, index) => {link})}
+
{links.map((link, index) => {link})}
); } @@ -83,11 +86,13 @@ function LinkExternal ({ className, data, hash, type, withShort }: Props): React export default React.memo(styled(LinkExternal)` text-align: right; - > div { - display: block; - white-space: nowrap; + .links { + span { + word-wrap: normal; + display: inline-block; + } - > span+span { + span+span { margin-left: 0.3rem; } } diff --git a/packages/react-components/src/Table/Body.tsx b/packages/react-components/src/Table/Body.tsx index 055a5a6fcc..340d0fabb6 100644 --- a/packages/react-components/src/Table/Body.tsx +++ b/packages/react-components/src/Table/Body.tsx @@ -119,8 +119,11 @@ export default React.memo(styled(Body)` } &.mini { + max-width: 4rem; + min-width: 4rem; padding: 0 0.75rem 0 0; - white-space: nowrap; + width: 4rem; + white-space: normal; } &.favorite i.icon.isSelected {