Skip to content

Commit 4abff62

Browse files
committed
feat: re-add solana
1 parent 4065c49 commit 4abff62

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+3689
-3591
lines changed

package.json

+23-24
Original file line numberDiff line numberDiff line change
@@ -18,56 +18,55 @@
1818
"doc:publish": "yarn doc:build && gh-pages --repo [email protected]:renproject/ren-js-v3-docs.git -m \"[ci skip] Updates\" -d docs"
1919
},
2020
"devDependencies": {
21-
"@istanbuljs/nyc-config-typescript": "^1.0.1",
22-
"@nomiclabs/hardhat-ethers": "^2.0.2",
23-
"@truffle/hdwallet-provider": "1.4.1",
24-
"@types/chai": "^4.2.22",
21+
"@istanbuljs/nyc-config-typescript": "^1.0.2",
22+
"@nomiclabs/hardhat-ethers": "^2.0.3",
23+
"@truffle/hdwallet-provider": "2.0.0",
24+
"@types/chai": "^4.3.0",
2525
"@types/chai-as-promised": "^7.1.4",
2626
"@types/mocha": "^9.0.0",
27-
"@types/node": "^14",
28-
"@typescript-eslint/eslint-plugin": "^4.32.0",
29-
"@typescript-eslint/parser": "^4.32.0",
27+
"@types/node": "^17",
28+
"@typescript-eslint/eslint-plugin": "^5.9.0",
29+
"@typescript-eslint/parser": "^5.9.0",
3030
"babel-core": "^6.26.3",
31-
"babel-loader": "^8.2.2",
31+
"babel-loader": "^8.2.3",
3232
"babel-plugin-import": "^1.13.3",
3333
"babel-polyfill": "^6.26.0",
3434
"babel-runtime": "^6.26.0",
35-
"bignumber.js": "^9.0.1",
35+
"bignumber.js": "^9.0.2",
3636
"chai": "^4.3.4",
3737
"chai-as-promised": "^7.1.1",
3838
"chalk": "^4.1.2",
3939
"codecov": "^3.8.3",
4040
"cross-env": "^7.0.3",
4141
"cz-conventional-changelog": "^3.3.0",
42-
"dotenv": "^8.2.0",
43-
"eslint": "^7.32.0",
42+
"dotenv": "^10.0.0",
43+
"eslint": "^8.6.0",
4444
"eslint-config-prettier": "^8.3.0",
45-
"eslint-plugin-import": "^2.24.2",
46-
"eslint-plugin-jsdoc": "^36.1.1",
45+
"eslint-plugin-import": "^2.25.4",
46+
"eslint-plugin-jsdoc": "^37.5.1",
4747
"eslint-plugin-no-null": "^1.0.2",
4848
"eslint-plugin-prefer-arrow": "^1.2.3",
49-
"eslint-plugin-react": "^7.26.0",
49+
"eslint-plugin-react": "^7.28.0",
5050
"eslint-plugin-security": "^1.4.0",
51-
"ethers": "^5.5.1",
52-
"gh-pages": "^3.1.0",
53-
"hardhat": "2.4.1",
54-
"immutable": "^4.0.0-rc.14",
51+
"ethers": "^5.5.2",
52+
"gh-pages": "^3.2.3",
53+
"hardhat": "2.8.0",
5554
"lerna": "^4.0.0",
56-
"mocha": "^9.1.2",
55+
"mocha": "^9.1.3",
5756
"npm-run-all": "^4.1.5",
5857
"npmignore": "^0.2.0",
5958
"nyc": "^15.1.0",
6059
"open-cli": "^7.0.1",
61-
"prettier": "^2.4.1",
60+
"prettier": "^2.5.1",
6261
"rimraf": "^3.0.2",
6362
"send-crypto": "^0.2.33",
6463
"throat": "6.0.1",
6564
"ts-loader": "^9.2.6",
6665
"ts-mocha": "^8.0.0",
67-
"typedoc": "^0.22.4",
68-
"typescript": "4.4.3",
69-
"webpack": "5.54.0",
70-
"webpack-cli": "^4.8.0",
66+
"typedoc": "^0.22.10",
67+
"typescript": "4.5.4",
68+
"webpack": "5.65.0",
69+
"webpack-cli": "^4.9.1",
7170
"webpack-node-externals": "^3.0.0"
7271
},
7372
"workspaces": [

packages/chains/chains-bitcoin/package.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,12 @@
4747
"@renproject/utils": "^3.0.0-alpha.4",
4848
"@types/bchaddrjs": "^0.4.0",
4949
"@types/bs58": "^4.0.1",
50+
"@types/bs58check": "2.1.0",
5051
"@types/cashaddrjs": "^0.3.0",
5152
"@types/create-hash": "1.2.2",
5253
"@types/node": ">=10",
5354
"bchaddrjs": "^0.5.2",
54-
"bignumber.js": "^9.0.1",
55+
"bignumber.js": "^9.0.2",
5556
"bs58": "^4.0.1",
5657
"bs58check": "^2.1.2",
5758
"cashaddrjs": "^0.4.4",

packages/chains/chains-bitcoin/src/base.ts

+13-3
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,13 @@ export abstract class BitcoinBaseChain
3535
BitcoinReleasePayload
3636
>
3737
{
38-
public static chain: string = "Bitcoin";
38+
public static chain: string;
3939
public chain: string;
40+
public nativeAsset: {
41+
name: string;
42+
symbol: string;
43+
decimals: number;
44+
};
4045
public assets: { [asset: string]: string } = {};
4146

4247
public static configMap: BitcoinNetworkConfigMap = {};
@@ -46,7 +51,7 @@ export abstract class BitcoinBaseChain
4651

4752
public api = new CombinedAPI();
4853

49-
public constructor(network: BitcoinNetworkInput) {
54+
public constructor({ network }: { network: BitcoinNetworkInput }) {
5055
const networkConfig = isBitcoinNetworkConfig(network)
5156
? network
5257
: this.configMap[network];
@@ -59,6 +64,7 @@ export abstract class BitcoinBaseChain
5964
}
6065
this.network = networkConfig;
6166
this.chain = this.network.selector;
67+
this.nativeAsset = this.network.nativeAsset;
6268
for (const provider of this.network.providers) {
6369
this.withAPI(provider);
6470
}
@@ -142,7 +148,7 @@ export abstract class BitcoinBaseChain
142148
* See [[LockChain.isLockAsset]].
143149
*/
144150
public isLockAsset(asset: string): boolean {
145-
return asset === this.network.nativeAsset.symbol;
151+
return asset === this.nativeAsset.symbol;
146152
}
147153

148154
public isDepositAsset(asset: string): boolean {
@@ -190,6 +196,8 @@ export abstract class BitcoinBaseChain
190196
txid: utils.toURLBase64(utils.fromHex(tx.txid).reverse()),
191197
txidFormatted: tx.txid,
192198
txindex: tx.txindex,
199+
200+
asset,
193201
amount: tx.amount,
194202
}),
195203
);
@@ -212,6 +220,8 @@ export abstract class BitcoinBaseChain
212220
),
213221
txidFormatted: tx.txid,
214222
txindex: tx.txindex,
223+
224+
asset,
215225
amount: tx.amount,
216226
}),
217227
);

packages/chains/chains-bitcoin/src/bitcoin.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,9 @@ export class Bitcoin extends BitcoinBaseChain {
7676
};
7777
public assets = Bitcoin.assets;
7878

79-
public constructor(network: BitcoinNetworkInput) {
80-
super(resolveBitcoinNetworkConfig(Bitcoin.configMap, network));
79+
public constructor({ network }: { network: BitcoinNetworkInput }) {
80+
super({
81+
network: resolveBitcoinNetworkConfig(Bitcoin.configMap, network),
82+
});
8183
}
8284
}

packages/chains/chains-bitcoin/src/bitcoincash.ts

+7-2
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,12 @@ export class BitcoinCash extends BitcoinBaseChain {
7777
return toCashAddress(bs58.encode(bytes));
7878
}
7979

80-
public constructor(network: BitcoinNetworkInput) {
81-
super(resolveBitcoinNetworkConfig(BitcoinCash.configMap, network));
80+
public constructor({ network }: { network: BitcoinNetworkInput }) {
81+
super({
82+
network: resolveBitcoinNetworkConfig(
83+
BitcoinCash.configMap,
84+
network,
85+
),
86+
});
8287
}
8388
}
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
declare module "wallet-address-validator";
22
declare module "wallet-address-validator/src/bitcoin_validator";
3-
declare module "bs58check";

packages/chains/chains-bitcoin/src/digibyte.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,9 @@ export class DigiByte extends BitcoinBaseChain {
6969
};
7070
public assets = DigiByte.assets;
7171

72-
public constructor(network: BitcoinNetworkInput) {
73-
super(resolveBitcoinNetworkConfig(DigiByte.configMap, network));
72+
public constructor({ network }: { network: BitcoinNetworkInput }) {
73+
super({
74+
network: resolveBitcoinNetworkConfig(DigiByte.configMap, network),
75+
});
7476
}
7577
}

packages/chains/chains-bitcoin/src/dogecoin.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,9 @@ export class Dogecoin extends BitcoinBaseChain {
6060
};
6161
public assets = Dogecoin.assets;
6262

63-
public constructor(network: BitcoinNetworkInput) {
64-
super(resolveBitcoinNetworkConfig(Dogecoin.configMap, network));
63+
public constructor({ network }: { network: BitcoinNetworkInput }) {
64+
super({
65+
network: resolveBitcoinNetworkConfig(Dogecoin.configMap, network),
66+
});
6567
}
6668
}

packages/chains/chains-bitcoin/src/zcash.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,9 @@ export class Zcash extends BitcoinBaseChain {
7070
};
7171
public assets = Zcash.assets;
7272

73-
public constructor(network: BitcoinNetworkInput) {
74-
super(resolveBitcoinNetworkConfig(Zcash.configMap, network));
73+
public constructor({ network }: { network: BitcoinNetworkInput }) {
74+
super({
75+
network: resolveBitcoinNetworkConfig(Zcash.configMap, network),
76+
});
7577
}
7678
}

packages/chains/chains-ethereum/package.json

+4-6
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,13 @@
4343
"prepare-release": "run-s npmignore build"
4444
},
4545
"dependencies": {
46-
"@ethersproject/abstract-provider": "^5.5.0",
46+
"@ethersproject/abstract-provider": "^5.5.1",
4747
"@ethersproject/abstract-signer": "^5.5.0",
48-
"@ethersproject/providers": "^5.5.0",
48+
"@ethersproject/providers": "^5.5.1",
4949
"@renproject/utils": "^3.0.0-alpha.4",
50-
"@types/bn.js": "^5.1.0",
5150
"@types/node": ">=10",
52-
"bignumber.js": "^9.0.1",
53-
"bn.js": "^5.2.0",
54-
"ethers": "^5.5.1"
51+
"bignumber.js": "^9.0.2",
52+
"ethers": "^5.5.2"
5553
},
5654
"resolutions": {
5755
"sha3": "^2.1.2"

packages/chains/chains-ethereum/src/arbitrum.ts

+17-9
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { EthereumBaseChain } from "./base";
44
import {
55
EthereumClassConfig,
66
EthProvider,
7+
EthSigner,
78
EvmNetworkConfig,
89
EvmNetworkInput,
910
} from "./utils/types";
@@ -83,15 +84,22 @@ export class Arbitrum extends EthereumBaseChain {
8384
};
8485
public assets = Arbitrum.assets;
8586

86-
public constructor(
87-
network: EvmNetworkInput,
88-
web3Provider: EthProvider,
89-
config: EthereumClassConfig = {},
90-
) {
91-
super(
92-
resolveEvmNetworkConfig(Arbitrum.configMap, network),
93-
web3Provider,
87+
public constructor({
88+
network,
89+
provider,
90+
signer,
91+
config,
92+
}: {
93+
network: EvmNetworkInput;
94+
provider: EthProvider;
95+
signer?: EthSigner;
96+
config?: EthereumClassConfig;
97+
}) {
98+
super({
99+
network: resolveEvmNetworkConfig(Arbitrum.configMap, network),
100+
provider,
101+
signer,
94102
config,
95-
);
103+
});
96104
}
97105
}

packages/chains/chains-ethereum/src/avalanche.ts

+17-9
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { EthereumBaseChain } from "./base";
44
import {
55
EthereumClassConfig,
66
EthProvider,
7+
EthSigner,
78
EvmNetworkConfig,
89
EvmNetworkInput,
910
} from "./utils/types";
@@ -62,15 +63,22 @@ export class Avalanche extends EthereumBaseChain {
6263
};
6364
public assets = Avalanche.assets;
6465

65-
public constructor(
66-
network: EvmNetworkInput,
67-
web3Provider: EthProvider,
68-
config: EthereumClassConfig = {},
69-
) {
70-
super(
71-
resolveEvmNetworkConfig(Avalanche.configMap, network),
72-
web3Provider,
66+
public constructor({
67+
network,
68+
provider,
69+
signer,
70+
config,
71+
}: {
72+
network: EvmNetworkInput;
73+
provider: EthProvider;
74+
signer?: EthSigner;
75+
config?: EthereumClassConfig;
76+
}) {
77+
super({
78+
network: resolveEvmNetworkConfig(Avalanche.configMap, network),
79+
provider,
80+
signer,
7381
config,
74-
);
82+
});
7583
}
7684
}

0 commit comments

Comments
 (0)