Skip to content

Commit

Permalink
Merge pull request #308 from Cryptonomic/13-staker
Browse files Browse the repository at this point in the history
Staker updates
  • Loading branch information
anonymoussprocket authored Mar 12, 2021
2 parents af700cd + fa52430 commit 3b3d72e
Show file tree
Hide file tree
Showing 30 changed files with 29,206 additions and 337 deletions.
26,201 changes: 26,185 additions & 16 deletions package-lock.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -166,12 +166,12 @@
"@types/styled-components": "5.1.0",
"@types/throttle-debounce": "2.1.0",
"@types/webpack-env": "1.15.2",
"bs58check": "2.1.2",
"concurrently": "5.3.0",
"copy-webpack-plugin": "6.0.1",
"coveralls": "^3.1.0",
"cross-env": "7.0.2",
"css-loader": "3.5.3",
"bs58check": "2.1.2",
"detect-port": "1.3.0",
"electron": "8.5.5",
"electron-builder": "22.8.0",
Expand Down
Binary file added resources/contracts/blnd-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed resources/contracts/stakerdao-icon.png
Binary file not shown.
Binary file added resources/contracts/stkr-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 9 additions & 5 deletions src/components/AddressBlock/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -356,22 +356,26 @@ function AddressBlock(props: Props) {
return null;
}

if (token.kind === TokenKind.stkr) {
tokenType = AddressType.STKR;
}

if (token.kind === TokenKind.tzbtc) {
tokenType = AddressType.TzBTC;
}

if (token.kind === TokenKind.kusd) {
tokenType = AddressType.kUSD;
}

if (token.kind === TokenKind.objkt) {
tokenType = AddressType.objkt;
}

if (token.kind === TokenKind.blnd) {
tokenType = AddressType.BLND;
}

if (token.kind === TokenKind.stkr) {
tokenType = AddressType.STKR;
}

return (
<TokenNav
key={token.address}
Expand Down
74 changes: 70 additions & 4 deletions src/constants/Token.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
import { ArtToken, VaultToken, Token, TokenKind } from '../types/general';
import { TRANSACTIONS, DETAILS, COLLECTION } from './TabConstants';

import stakerdaoIcon from '../../resources/contracts/stakerdao-icon.png';
import tzbtcIcon from '../../resources/contracts/tzbtc-icon.png';
import usdtzIcon from '../../resources/contracts/usdtz-icon.png';
import ethtzIcon from '../../resources/contracts/ethtz-icon.png';
import wxtzIcon from '../../resources/contracts/wXTZ-token-FullColor.png';
import uteIcon from '../../resources/contracts/ute-aspen-icon.png';
import kusdIcon from '../../resources/contracts/kusd-icon.png';
import hicetnuncIcon from '../../resources/contracts/hicetnunc-icon.png';
import blndIcon from '../../resources/contracts/blnd-icon.png';
import stkrIcon from '../../resources/contracts/stkr-icon.png';

export const knownTokenContracts: (Token | VaultToken | ArtToken)[] = [
{
Expand Down Expand Up @@ -84,7 +85,7 @@ export const knownTokenContracts: (Token | VaultToken | ArtToken)[] = [
icon: wxtzIcon,
scale: 6,
precision: 6,
round: 6,
round: 2,
helpLink: 'https://stakerdao.gitbook.io/stakerdao-faq-and-docs/wrapped-tezos-wxtz-faq-and-docs',
vaultCoreAddress: 'KT1V4Vp7zhynCNuaBjWMpNU535Xm2sgqkz6M',
vaultRegistryMapId: 260,
Expand Down Expand Up @@ -132,6 +133,38 @@ export const knownTokenContracts: (Token | VaultToken | ArtToken)[] = [
precision: 6,
round: 2,
},
{
network: 'mainnet',
address: 'KT1MEouXPpCx9eFJYnxfAWpFA7NxhW3rDgUN',
displayName: 'Blend',
symbol: 'BLND',
balance: 0,
transactions: [],
activeTab: TRANSACTIONS,
kind: TokenKind.blnd,
icon: blndIcon,
scale: 18,
precision: 18,
round: 2,
mapid: 368,
helpLink: 'https://docs.stakerdao.com/blend-blnd-faq-and-docs',
},
{
network: 'mainnet',
address: 'KT1AEfeckNbdEYwaMKkytBwPJPycz7jdSGea',
displayName: 'Staker Governance Token',
symbol: 'STKR',
balance: 0,
transactions: [],
activeTab: TRANSACTIONS,
kind: TokenKind.stkr,
icon: stkrIcon,
scale: 18,
precision: 18,
round: 2,
mapid: 527,
helpLink: 'https://docs.stakerdao.com/',
},
{
network: 'delphinet',
address: 'KT1REPEBMQS3Be8ZybkQQfSwAv3g4pHJViuK',
Expand Down Expand Up @@ -216,10 +249,41 @@ export const knownTokenContracts: (Token | VaultToken | ArtToken)[] = [
precision: 6,
round: 6,
},
{
network: 'delphinet',
address: 'KT1N3KopJkpzBfRPFVzqaAwyPEyuVmhpePmt',
displayName: 'Blend',
symbol: 'BLND',
balance: 0,
transactions: [],
activeTab: TRANSACTIONS,
kind: TokenKind.blnd,
icon: blndIcon,
scale: 18,
precision: 18,
round: 2,
mapid: 54781,
helpLink: 'https://docs.stakerdao.com/blend-blnd-faq-and-docs',
},
{
network: 'delphinet',
address: 'KT19UypipJWENBavh34Wn7tc67bL1HucZh9W',
displayName: 'Staker Governance Token',
symbol: 'STKR',
balance: 0,
transactions: [],
activeTab: TRANSACTIONS,
kind: TokenKind.stkr,
icon: stkrIcon,
scale: 18,
precision: 18,
round: 2,
mapid: 75787,
helpLink: 'https://docs.stakerdao.com/',
},
];

export const knownContractNames = {
KT1EctCuorV2NfVb1XTQgvzJ88MQtWP8cMMv: 'StakerDAO Token',
KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn: 'tzBTC Token',
KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9: 'USDtz Token',
KT19at7rQUvyjxnZ2fBv7D9zc8rkyG7gAoU8: 'ETHtz Token',
Expand All @@ -232,10 +296,12 @@ export const knownContractNames = {
KT1H28iie4mW9LmmJeYLjH6zkC8wwSmfHf5P: 'TzButton Round 2',
KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV: 'Kolibri Token',
KT1AbYeDbjjcAnV1QK7EZUUdqku77CdkTuv6: 'Dexter kUSD/XTZ Pool',
KT1Hkg5qeNhfwpKW4fXvq7HGZB9z2EnmCCA9: 'hic et nunc Auction House',
KT1Hkg5qeNhfwpKW4fXvq7HGZB9z2EnmCCA9: 'hic et nunc Art House',
KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton: 'hic et nunc NFT',
KT1CpeSQKdkhWi4pinYcseCFKmDhs5M74BkU: 'tzcolors Auction House',
KT1FyaDqiMQWg7Exo7VUiXAgZbd2kCzo3d4s: 'tzcolors NFT',
KT1MEouXPpCx9eFJYnxfAWpFA7NxhW3rDgUN: 'BLND Token',
KT1AEfeckNbdEYwaMKkytBwPJPycz7jdSGea: 'Staker Governance Token',
};

export const knownMarketMetadata = [
Expand Down
10 changes: 7 additions & 3 deletions src/containers/HomeMain/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,13 @@ import BabylonDelegation from '../../contracts/BabylonDelegation';
import GenericContract from '../../contracts/GenericContract';
import TokenContract from '../../contracts/TokenContract';
import ImplicitAccount from '../../contracts/ImplicitAccount';
import StakerToken from '../../contracts/StakerToken';
import TzBtcToken from '../../contracts/TzBtcToken';
import WXTZToken from '../../contracts/WrappedTezos';
import KolibriToken from '../../contracts/KolibriToken';
import HicNFT from '../../contracts/HicNFT';
import BlndToken from '../../contracts/BlndToken';
import StkrToken from '../../contracts/StkrToken';

import { sortArr } from '../../utils/array';

import { Container, SideBarContainer, AccountItem } from './style';
Expand Down Expand Up @@ -44,8 +46,6 @@ function HomeMain() {
return <BabylonDelegation />;
case AddressType.Token:
return <TokenContract />;
case AddressType.STKR:
return <StakerToken />;
case AddressType.TzBTC:
return <TzBtcToken />;
case AddressType.wXTZ:
Expand All @@ -54,6 +54,10 @@ function HomeMain() {
return <KolibriToken />;
case AddressType.objkt:
return <HicNFT />;
case AddressType.BLND:
return <BlndToken />;
case AddressType.STKR:
return <StkrToken />;
default:
return <GenericContract />;
}
Expand Down
106 changes: 106 additions & 0 deletions src/contracts/BlndToken/components/Ledger/LedgerConfirmModal.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
import React from 'react';
import { useTranslation, Trans } from 'react-i18next';
import Modal from '../../../../components/CustomModal';
import TezosAddress from '../../../../components/TezosAddress';
import sendImg from '../../../../../resources/imgs/Send.svg';
import confirmImg from '../../../../../resources/imgs/Confirm-Ledger.svg';
import Loader from '../../../../components/Loader';
import { formatAmount } from '../../../../utils/currency';
import TezosIcon from '../../../../components/TezosIcon';

import {
MainContainer,
DescriptionContainer,
SendSvg,
SendDes,
ItemContainer,
BottomContainer,
ConfirmImg,
ConfirmDes,
ConfirmSpan,
ItemTitle,
ItemContent,
} from './style';

interface Props {
// Message to display.
message: string;

// Address of the vault, or undefined if operation on the core.
vaultAddress: string | undefined;

// Sender of the operation.
source: string;

// The fee, specificed in mutez.
fee: number;

// The amount, specified in mutez.
amount: number;

// Whether the modal is loading.
isLoading: boolean;

// Whether the modal is open.
open: boolean;

// A function to close the modal.
onClose: () => void;
}

const LedgerConfirmModal = (props: Props) => {
const { t } = useTranslation();

return (
// TODO(keefertaylor): Use translations
<Modal title={'Confirm Operation'} open={props.open} onClose={props.onClose}>
<MainContainer>
<DescriptionContainer>
<SendSvg src={sendImg} />
<SendDes>{props.message}</SendDes>
</DescriptionContainer>

<ItemContainer>
<ItemTitle>{t('general.nouns.source')}</ItemTitle>
<TezosAddress address={props.source} size="16px" weight={300} color="primary" />
</ItemContainer>

<ItemContainer>
<ItemTitle>{t('general.nouns.fee')}</ItemTitle>
<ItemContent>
{formatAmount(props.fee)}
<TezosIcon color="secondary" iconName="tezos" />
</ItemContent>
</ItemContainer>

<ItemContainer>
<ItemTitle>{t('general.nouns.amount')}</ItemTitle>
<ItemContent>
{formatAmount(props.amount)}
<TezosIcon color="secondary" iconName="tezos" />
</ItemContent>
</ItemContainer>

{props.vaultAddress && (
<ItemContainer>
{/* TODO(keefertaylor): translations */}
<ItemTitle> {'Vault'}</ItemTitle>
<TezosAddress address={props.vaultAddress} size="16px" weight={300} color="primary" />
</ItemContainer>
)}
</MainContainer>
<BottomContainer>
<ConfirmDes>
<Trans i18nKey="components.delegationLedgerConfirmationModal.confirm_description">
If the all the details are correct, please
<ConfirmSpan>confirm</ConfirmSpan> the origination on your device.
</Trans>
</ConfirmDes>
<ConfirmImg src={confirmImg} />
</BottomContainer>
{props.isLoading && <Loader />}
</Modal>
);
};

export default LedgerConfirmModal;
Loading

0 comments on commit 3b3d72e

Please sign in to comment.