@atomiqlabs/chain-starknet 4.0.0-dev.31 → 4.0.0-dev.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/starknet/StarknetChainType.d.ts +2 -1
- package/dist/starknet/chain/StarknetChainInterface.d.ts +3 -2
- package/dist/starknet/chain/StarknetChainInterface.js +9 -0
- package/package.json +2 -2
- package/src/starknet/StarknetChainType.ts +2 -0
- package/src/starknet/chain/StarknetChainInterface.ts +11 -2
|
@@ -10,4 +10,5 @@ import { StarknetChainInterface } from "./chain/StarknetChainInterface";
|
|
|
10
10
|
import { StarknetSpvVaultData } from "./spv_swap/StarknetSpvVaultData";
|
|
11
11
|
import { StarknetSpvWithdrawalData } from "./spv_swap/StarknetSpvWithdrawalData";
|
|
12
12
|
import { StarknetSpvVaultContract } from "./spv_swap/StarknetSpvVaultContract";
|
|
13
|
-
|
|
13
|
+
import { Account } from "starknet";
|
|
14
|
+
export type StarknetChainType = ChainType<"STARKNET", never, StarknetPreFetchVerification, StarknetTx, StarknetSigner, Account, StarknetSwapData, StarknetSwapContract, StarknetChainInterface, StarknetChainEventsBrowser, StarknetBtcRelay<any>, StarknetSpvVaultData, StarknetSpvWithdrawalData, StarknetSpvVaultContract>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Provider, constants } from "starknet";
|
|
1
|
+
import { Provider, constants, Account } from "starknet";
|
|
2
2
|
import { StarknetTransactions, StarknetTx } from "./modules/StarknetTransactions";
|
|
3
3
|
import { StarknetFees } from "./modules/StarknetFees";
|
|
4
4
|
import { StarknetTokens } from "./modules/StarknetTokens";
|
|
@@ -19,7 +19,7 @@ export type StarknetConfig = {
|
|
|
19
19
|
maxGetLogKeys?: number;
|
|
20
20
|
maxParallelCalls?: number;
|
|
21
21
|
};
|
|
22
|
-
export declare class StarknetChainInterface implements ChainInterface {
|
|
22
|
+
export declare class StarknetChainInterface implements ChainInterface<StarknetTx, StarknetSigner, "STARKNET", Account> {
|
|
23
23
|
readonly chainId = "STARKNET";
|
|
24
24
|
readonly provider: Provider;
|
|
25
25
|
readonly retryPolicy: StarknetRetryPolicy;
|
|
@@ -51,4 +51,5 @@ export declare class StarknetChainInterface implements ChainInterface {
|
|
|
51
51
|
getTxStatus(tx: string): Promise<"not_found" | "pending" | "success" | "reverted">;
|
|
52
52
|
txsTransfer(signer: string, token: string, amount: bigint, dstAddress: string, feeRate?: string): Promise<StarknetTx[]>;
|
|
53
53
|
transfer(signer: StarknetSigner, token: string, amount: bigint, dstAddress: string, txOptions?: TransactionConfirmationOptions): Promise<string>;
|
|
54
|
+
wrapSigner(signer: Account): Promise<StarknetSigner>;
|
|
54
55
|
}
|
|
@@ -14,6 +14,7 @@ const StarknetBlocks_1 = require("./modules/StarknetBlocks");
|
|
|
14
14
|
const StarknetSigner_1 = require("../wallet/StarknetSigner");
|
|
15
15
|
const buffer_1 = require("buffer");
|
|
16
16
|
const StarknetKeypairWallet_1 = require("../wallet/accounts/StarknetKeypairWallet");
|
|
17
|
+
const StarknetBrowserSigner_1 = require("../wallet/StarknetBrowserSigner");
|
|
17
18
|
class StarknetChainInterface {
|
|
18
19
|
constructor(chainId, provider, retryPolicy, feeEstimator = new StarknetFees_1.StarknetFees(provider), options) {
|
|
19
20
|
var _a, _b, _c, _d;
|
|
@@ -93,5 +94,13 @@ class StarknetChainInterface {
|
|
|
93
94
|
const [txId] = await this.Transactions.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal, false);
|
|
94
95
|
return txId;
|
|
95
96
|
}
|
|
97
|
+
wrapSigner(signer) {
|
|
98
|
+
if (signer.walletProvider != null) {
|
|
99
|
+
return Promise.resolve(new StarknetBrowserSigner_1.StarknetBrowserSigner(signer));
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
return Promise.resolve(new StarknetSigner_1.StarknetSigner(signer));
|
|
103
|
+
}
|
|
104
|
+
}
|
|
96
105
|
}
|
|
97
106
|
exports.StarknetChainInterface = StarknetChainInterface;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atomiqlabs/chain-starknet",
|
|
3
|
-
"version": "4.0.0-dev.
|
|
3
|
+
"version": "4.0.0-dev.32",
|
|
4
4
|
"description": "Starknet specific base implementation",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"url": "git+https://github.com/atomiqlabs/atomiq-chain-starknet.git"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@atomiqlabs/base": "^10.0.0-dev.
|
|
31
|
+
"@atomiqlabs/base": "^10.0.0-dev.15",
|
|
32
32
|
"@noble/hashes": "^1.7.1",
|
|
33
33
|
"@scure/btc-signer": "^1.6.0",
|
|
34
34
|
"abi-wan-kanabi": "2.2.4",
|
|
@@ -10,6 +10,7 @@ import {StarknetChainInterface} from "./chain/StarknetChainInterface";
|
|
|
10
10
|
import {StarknetSpvVaultData} from "./spv_swap/StarknetSpvVaultData";
|
|
11
11
|
import {StarknetSpvWithdrawalData} from "./spv_swap/StarknetSpvWithdrawalData";
|
|
12
12
|
import {StarknetSpvVaultContract} from "./spv_swap/StarknetSpvVaultContract";
|
|
13
|
+
import {Account} from "starknet";
|
|
13
14
|
|
|
14
15
|
export type StarknetChainType = ChainType<
|
|
15
16
|
"STARKNET",
|
|
@@ -17,6 +18,7 @@ export type StarknetChainType = ChainType<
|
|
|
17
18
|
StarknetPreFetchVerification,
|
|
18
19
|
StarknetTx,
|
|
19
20
|
StarknetSigner,
|
|
21
|
+
Account,
|
|
20
22
|
StarknetSwapData,
|
|
21
23
|
StarknetSwapContract,
|
|
22
24
|
StarknetChainInterface,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {Provider, constants, stark, ec} from "starknet";
|
|
1
|
+
import {Provider, constants, stark, ec, Account, provider, wallet} from "starknet";
|
|
2
2
|
import {getLogger, toHex} from "../../utils/Utils";
|
|
3
3
|
import {StarknetTransactions, StarknetTx} from "./modules/StarknetTransactions";
|
|
4
4
|
import {StarknetFees} from "./modules/StarknetFees";
|
|
@@ -12,6 +12,7 @@ import {ChainInterface, TransactionConfirmationOptions} from "@atomiqlabs/base";
|
|
|
12
12
|
import {StarknetSigner} from "../wallet/StarknetSigner";
|
|
13
13
|
import {Buffer} from "buffer";
|
|
14
14
|
import {StarknetKeypairWallet} from "../wallet/accounts/StarknetKeypairWallet";
|
|
15
|
+
import {StarknetBrowserSigner} from "../wallet/StarknetBrowserSigner";
|
|
15
16
|
|
|
16
17
|
export type StarknetRetryPolicy = {
|
|
17
18
|
maxRetries?: number,
|
|
@@ -27,7 +28,7 @@ export type StarknetConfig = {
|
|
|
27
28
|
maxParallelCalls?: number, //10
|
|
28
29
|
};
|
|
29
30
|
|
|
30
|
-
export class StarknetChainInterface implements ChainInterface {
|
|
31
|
+
export class StarknetChainInterface implements ChainInterface<StarknetTx, StarknetSigner, "STARKNET", Account> {
|
|
31
32
|
|
|
32
33
|
readonly chainId = "STARKNET";
|
|
33
34
|
|
|
@@ -162,4 +163,12 @@ export class StarknetChainInterface implements ChainInterface {
|
|
|
162
163
|
return txId;
|
|
163
164
|
}
|
|
164
165
|
|
|
166
|
+
wrapSigner(signer: Account): Promise<StarknetSigner> {
|
|
167
|
+
if((signer as any).walletProvider!=null) {
|
|
168
|
+
return Promise.resolve(new StarknetBrowserSigner(signer));
|
|
169
|
+
} else {
|
|
170
|
+
return Promise.resolve(new StarknetSigner(signer));
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
165
174
|
}
|