@atomiqlabs/chain-starknet 4.0.0-dev.30 → 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.
@@ -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
- export type StarknetChainType = ChainType<"STARKNET", never, StarknetPreFetchVerification, StarknetTx, StarknetSigner, StarknetSwapData, StarknetSwapContract, StarknetChainInterface, StarknetChainEventsBrowser, StarknetBtcRelay<any>, StarknetSpvVaultData, StarknetSpvWithdrawalData, StarknetSpvVaultContract>;
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;
@@ -10,7 +10,7 @@ const StarknetFees_1 = require("../chain/modules/StarknetFees");
10
10
  const transaction_1 = require("@scure/btc-signer/transaction");
11
11
  const promise_queue_ts_1 = require("promise-queue-ts");
12
12
  const WAIT_BEFORE_BUMP = 15 * 1000;
13
- const MIN_FEE_INCREASE_ABSOLUTE = 1n * 1000000000n; //1GWei
13
+ const MIN_FEE_INCREASE_ABSOLUTE = 1n * 1000000n; //0.001GWei
14
14
  const MIN_FEE_INCREASE_PPM = 110000n; // +11%
15
15
  const MIN_TIP_INCREASE_ABSOLUTE = 1n * 1000000000n; //1GWei
16
16
  const MIN_TIP_INCREASE_PPM = 110000n; // +11%
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atomiqlabs/chain-starknet",
3
- "version": "4.0.0-dev.30",
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.13",
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
  }
@@ -9,7 +9,7 @@ import {cloneDeep} from "@scure/btc-signer/transaction";
9
9
  import { PromiseQueue } from "promise-queue-ts";
10
10
 
11
11
  const WAIT_BEFORE_BUMP = 15*1000;
12
- const MIN_FEE_INCREASE_ABSOLUTE = 1n*1_000_000_000n; //1GWei
12
+ const MIN_FEE_INCREASE_ABSOLUTE = 1n*1_000_000n; //0.001GWei
13
13
  const MIN_FEE_INCREASE_PPM = 110_000n; // +11%
14
14
 
15
15
  const MIN_TIP_INCREASE_ABSOLUTE = 1n*1_000_000_000n; //1GWei