Skip to content

Commit

Permalink
Merge pull request #307 from Cryptonomic/as-hicnft
Browse files Browse the repository at this point in the history
Add hic et nunc support
  • Loading branch information
anonymoussprocket authored Mar 9, 2021
2 parents 2af1af6 + 0a46cca commit af700cd
Show file tree
Hide file tree
Showing 43 changed files with 1,545 additions and 161 deletions.
22 changes: 15 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The wallet is built with Typescript, React and Electron. [Cryptonomic](https://c

To build your own package add the environment configuration file as `src/extraResources/walletSettings.json`. Cryptonomic uses the [Nautilus Cloud](https://nautilus.cloud/) infrastructure of Tezos and [Conseil indexer](https://github.com/Cryptonomic/Conseil) nodes for production deployments.

Note the version of nodejs specified in the outer [package file](https://github.com/Cryptonomic/T2/blob/trunk/package.json), at the time of writing it was **12.19.1**. We recommend using [nvm](https://github.com/nvm-sh/nvm).
Note the version of nodejs specified in the outer [package file](https://github.com/Cryptonomic/T2/blob/trunk/package.json), at the time of writing it was **12.21.0**. We recommend using [nvm](https://github.com/nvm-sh/nvm).

```json
{
Expand All @@ -42,12 +42,7 @@ Note the version of nodejs specified in the outer [package file](https://github.

To install all dependencies:

```bash
npm i
cd src
npm i
cd ..
```
`npm i`

To run during development:

Expand All @@ -57,6 +52,19 @@ To package for deployment for the local target:

`npm run package`

A complete script might look like this:

```bash
nvm use 12.21.0

mkdir ./t2
cd t2

git clone https://github.com/Cryptonomic/T2.git .
npm i
npm run dev
```

### Customization Options

Several branding features can be applied in `src/config.json`, including name, logo and block explorer link.
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@
"webpack-merge": "4.2.2"
},
"dependencies": {
"@airgap/beacon-sdk": "2.1.0",
"@airgap/beacon-sdk": "2.2.2",
"@material-ui/core": "4.9.14",
"@material-ui/icons": "4.9.1",
"@material-ui/lab": "4.0.0-alpha.53",
Expand Down
Binary file added resources/contracts/hicetnunc-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions src/components/AddressBlock/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -368,6 +368,10 @@ function AddressBlock(props: Props) {
tokenType = AddressType.kUSD;
}

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

return (
<TokenNav
key={token.address}
Expand Down
15 changes: 9 additions & 6 deletions src/components/BalanceBanner/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -131,20 +131,23 @@ function BalanceBanner(props: Props) {
</AddressTitle>
)}
<AddressInfo>
<TezosAddress address={publicKeyHash} weight={100} color="white" text={publicKeyHash} size={ms(1.7)} />
<TezosAddress address={publicKeyHash} weight={100} color="white" text={publicKeyHash} size={ms(1.7)} shorten={true} />
<Gap />
{isReady || storeType === Mnemonic ? (
<TezosAmount color="white" size={ms(4.5)} amount={balance} weight="light" format={2} symbol={symbol} showTooltip={true} />
<div style={{ marginLeft: 'auto' }}>
<TezosAmount color="white" size={ms(4.5)} amount={balance} weight="light" format={2} symbol={symbol} showTooltip={true} />
</div>
) : null}
</AddressInfo>
{delegatedAddress && (
<DelegateContainer>
<>{t('components.balanceBanner.delegated_to')}</>
{name && <DelegateName>{name}</DelegateName>}
{!name &&
<span style={{marginLeft: "3px", marginRight: "3px"}}>
<TezosAddress address={delegatedAddress} color="white" size={ms(0)} weight={400} />
</span>}
{!name && (
<span style={{ marginLeft: '3px', marginRight: '3px' }}>
<TezosAddress address={delegatedAddress} color="white" size={ms(0)} weight={400} shorten={true} />
</span>
)}
<LinkContainer onClick={() => openHarpoonUrl()}>
view baker details on Harpoon
<LinkIcon iconName="new-window" color="white" />
Expand Down
6 changes: 2 additions & 4 deletions src/components/RestoreBackup/SeedInput.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -74,14 +74,12 @@ function SeedInput(props: Props) {

if (inputWords.length > 1 && inputWords.length > invalidWords.length) {
// paste multiple
onChange([...seeds, ...inputWords.filter((w) => !w.match(/[0-9]{1,2}\./))]);
// TODO: may not set/or clear error correctly
onChangeItems(null, [...seeds, ...inputWords.filter((w) => !w.match(/[0-9]{1,2}\./))]);
}

const matchingWords = seedJson.filter((w) => w.startsWith(inputWords[0]));
if (inputWords.length === 1 && matchingWords.length === 1) {
onChange([...seeds, matchingWords[0]]);
// TODO: may not set/or clear error correctly
onChangeItems(null, [...seeds, matchingWords[0]]);
}

if (invalidWords.length > 0) {
Expand Down
4 changes: 2 additions & 2 deletions src/constants/TabConstants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ export const BURN = 'general.verbs.burn';
export const SIGN = 'general.verbs.sign';
export const VERIFY = 'general.verbs.verify';
export const DETAILS = 'general.nouns.details';
// TODO(keefertaylor): Translations
export const VAULTS = 'Vaults';
export const VAULTS = 'general.nouns.vaults';
export const COLLECTION = 'general.nouns.collection';
128 changes: 78 additions & 50 deletions src/constants/Token.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { VaultToken, Token, TokenKind } from '../types/general';
import { TRANSACTIONS, DETAILS } from './TabConstants';
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';
Expand All @@ -8,36 +8,9 @@ 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';

export const knownTokenContracts: (Token | VaultToken)[] = [
{
network: 'mainnet',
address: 'KT1EctCuorV2NfVb1XTQgvzJ88MQtWP8cMMv',
displayName: 'StakerDAO Token',
symbol: 'STKR',
balance: 0,
transactions: [],
activeTab: DETAILS,
kind: TokenKind.stkr,
icon: stakerdaoIcon,
scale: 0,
precision: 0,
round: 0,
},
{
network: 'mainnet',
address: 'KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn',
displayName: 'tzBTC',
symbol: 'tzBTC',
balance: 0,
transactions: [],
activeTab: TRANSACTIONS,
kind: TokenKind.tzbtc,
icon: tzbtcIcon,
scale: 8,
precision: 8,
round: 8,
},
export const knownTokenContracts: (Token | VaultToken | ArtToken)[] = [
{
network: 'mainnet',
address: 'KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9',
Expand Down Expand Up @@ -68,6 +41,37 @@ export const knownTokenContracts: (Token | VaultToken)[] = [
round: 6,
helpLink: 'https://ethtz.io',
},
{
network: 'mainnet',
address: 'KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV',
displayName: 'Kolibri',
symbol: 'kUSD',
balance: 0,
transactions: [],
activeTab: COLLECTION,
kind: TokenKind.kusd,
icon: kusdIcon,
scale: 18,
precision: 18,
round: 2,
mapid: 380,
},
{
network: 'mainnet',
address: 'KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton',
displayName: 'hic et nunc',
symbol: 'OBJKT',
balance: 0,
transactions: [],
activeTab: DETAILS,
kind: TokenKind.objkt,
icon: hicetnuncIcon,
scale: 0,
precision: 0,
round: 0,
helpLink: 'https://www.hicetnunc.xyz/',
marketAddress: 'KT1Hkg5qeNhfwpKW4fXvq7HGZB9z2EnmCCA9',
},
{
network: 'mainnet',
address: 'KT1VYsVfmobT7rsMVivvZ4J8i3bPiqz12NaH',
Expand All @@ -88,18 +92,31 @@ export const knownTokenContracts: (Token | VaultToken)[] = [
},
{
network: 'mainnet',
address: 'KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV',
displayName: 'Kolibri',
symbol: 'kUSD',
address: 'KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn',
displayName: 'tzBTC',
symbol: 'tzBTC',
balance: 0,
transactions: [],
activeTab: TRANSACTIONS,
kind: TokenKind.kusd,
icon: kusdIcon,
scale: 18,
precision: 18,
round: 2,
mapid: 380,
kind: TokenKind.tzbtc,
icon: tzbtcIcon,
scale: 8,
precision: 8,
round: 8,
},
{
network: 'mainnet',
address: 'KT1EctCuorV2NfVb1XTQgvzJ88MQtWP8cMMv',
displayName: 'StakerDAO Token',
symbol: 'STKR',
balance: 0,
transactions: [],
activeTab: DETAILS,
kind: TokenKind.stkr,
icon: stakerdaoIcon,
scale: 0,
precision: 0,
round: 0,
},
{
network: 'mainnet',
Expand Down Expand Up @@ -208,49 +225,60 @@ export const knownContractNames = {
KT19at7rQUvyjxnZ2fBv7D9zc8rkyG7gAoU8: 'ETHtz Token',
KT1VYsVfmobT7rsMVivvZ4J8i3bPiqz12NaH: 'wXTZ Token',
KT1V4Vp7zhynCNuaBjWMpNU535Xm2sgqkz6M: 'wXTZ Manager',
KT19c8n5mWrqpxMcR3J687yssHxotj88nGhZ: 'Dexter ETHtz/XTZ Pool',
KT1Puc9St8wdNoGtLiD2WXaHbWU7styaxYhD: 'Dexter USDtz/XTZ Pool',
KT1DrJV8vhkdLEj76h1H9Q4irZDqAkMPo1Qf: 'Dexter tzBTC/XTZ Pool',
KT1XTXBsEauzcv3uPvVXW92mVqrx99UGsb9T: 'Dexter wXTZ/XTZ Pool',
KT1PDrBE59Zmxnb8vXRgRAG1XmvTMTs5EDHU: 'Dexter ETHtz/XTZ Pool',
KT1Tr2eG3eVmPRbymrbU2UppUmKjFPXomGG9: 'Dexter USDtz/XTZ Pool',
KT1BGQR7t4izzKZ7eRodKWTodAsM23P38v7N: 'Dexter tzBTC/XTZ Pool',
KT1D56HQfMmwdopmFLTwNHFJSs6Dsg2didFo: 'Dexter wXTZ/XTZ Pool',
KT1H28iie4mW9LmmJeYLjH6zkC8wwSmfHf5P: 'TzButton Round 2',
KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV: 'Kolibri Token',
KT1Xf2Cwwwh67Ycu7E9yd3UhsABQC4YZPkab: 'Dexter kUSD/XTZ Pool',
KT1AbYeDbjjcAnV1QK7EZUUdqku77CdkTuv6: 'Dexter kUSD/XTZ Pool',
KT1Hkg5qeNhfwpKW4fXvq7HGZB9z2EnmCCA9: 'hic et nunc Auction House',
KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton: 'hic et nunc NFT',
KT1CpeSQKdkhWi4pinYcseCFKmDhs5M74BkU: 'tzcolors Auction House',
KT1FyaDqiMQWg7Exo7VUiXAgZbd2kCzo3d4s: 'tzcolors NFT',
};

export const knownMarketMetadata = [
{
network: 'mainnet',
address: 'KT19c8n5mWrqpxMcR3J687yssHxotj88nGhZ',
address: 'KT1PDrBE59Zmxnb8vXRgRAG1XmvTMTs5EDHU',
name: 'Dexter ETHtz/XTZ Pool',
scale: 18,
symbol: 'ETHtz',
},
{
network: 'mainnet',
address: 'KT1Puc9St8wdNoGtLiD2WXaHbWU7styaxYhD',
address: 'KT1Tr2eG3eVmPRbymrbU2UppUmKjFPXomGG9',
name: 'Dexter USDtz/XTZ Pool',
scale: 6,
symbol: 'USDtz',
},
{
network: 'mainnet',
address: 'KT1DrJV8vhkdLEj76h1H9Q4irZDqAkMPo1Qf',
address: 'KT1BGQR7t4izzKZ7eRodKWTodAsM23P38v7N',
name: 'Dexter tzBTC/XTZ Pool',
scale: 8,
symbol: 'tzBTC',
},
{
network: 'mainnet',
address: 'KT1XTXBsEauzcv3uPvVXW92mVqrx99UGsb9T',
address: 'KT1D56HQfMmwdopmFLTwNHFJSs6Dsg2didFo',
name: 'Dexter wXTZ/XTZ Pool',
scale: 6,
symbol: 'wXTZ',
},
{
network: 'mainnet',
address: 'KT1Xf2Cwwwh67Ycu7E9yd3UhsABQC4YZPkab',
address: 'KT1AbYeDbjjcAnV1QK7EZUUdqku77CdkTuv6',
name: 'Dexter kUSD/XTZ Pool',
scale: 18,
symbol: 'kUSD',
},
{
network: 'mainnet',
address: 'KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton',
name: 'hic et nunc NFT',
scale: 0,
symbol: 'OBJKT',
},
];
3 changes: 3 additions & 0 deletions src/containers/HomeMain/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ 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 { sortArr } from '../../utils/array';

import { Container, SideBarContainer, AccountItem } from './style';
Expand Down Expand Up @@ -51,6 +52,8 @@ function HomeMain() {
return <WXTZToken />;
case AddressType.kUSD:
return <KolibriToken />;
case AddressType.objkt:
return <HicNFT />;
default:
return <GenericContract />;
}
Expand Down
Loading

0 comments on commit af700cd

Please sign in to comment.