@bitgo-beta/sdk-coin-starknet 0.0.1-beta.4 → 0.0.1-beta.40

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.
@@ -1,3 +1,4 @@
1
+ import { StarknetResourceBounds } from './iface';
1
2
  export declare const OZ_ETH_ACCOUNT_CLASS_HASH = "0x3940bc18abf1df6bc540cabadb1cad9486c6803b95801e57b6153ae21abfe06";
2
3
  export declare const STRK_TOKEN_CONTRACT = "0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d";
3
4
  export declare const FELT_MAX: bigint;
@@ -5,4 +6,11 @@ export declare const MASK_128: bigint;
5
6
  export declare const ADDR_BOUND: bigint;
6
7
  export declare const CONTRACT_ADDRESS_PREFIX = 523065374597054866729014270389667305596563390979550329787219n;
7
8
  export declare const DEFAULT_SEED_SIZE_BYTES = 16;
9
+ export declare const INVOKE_TX_PREFIX = 115923154332517n;
10
+ export declare const TRANSACTION_VERSION_3 = 3n;
11
+ export declare const L1_GAS_NAME = 83774935613779n;
12
+ export declare const L2_GAS_NAME = 83779230581075n;
13
+ export declare const L1_DATA_GAS_NAME = 21446383466796097n;
14
+ /** Default v3 resource bounds (matches TransactionBuilder defaults). */
15
+ export declare function defaultResourceBounds(): StarknetResourceBounds;
8
16
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,yBAAyB,sEAAsE,CAAC;AAG7G,eAAO,MAAM,mBAAmB,uEAAuE,CAAC;AAGxG,eAAO,MAAM,QAAQ,QAAyC,CAAC;AAG/D,eAAO,MAAM,QAAQ,QAAoB,CAAC;AAG1C,eAAO,MAAM,UAAU,QAAoB,CAAC;AAG5C,eAAO,MAAM,uBAAuB,gEAAwD,CAAC;AAE7F,eAAO,MAAM,uBAAuB,KAAK,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAGjD,eAAO,MAAM,yBAAyB,sEAAsE,CAAC;AAG7G,eAAO,MAAM,mBAAmB,uEAAuE,CAAC;AAGxG,eAAO,MAAM,QAAQ,QAAyC,CAAC;AAG/D,eAAO,MAAM,QAAQ,QAAoB,CAAC;AAG1C,eAAO,MAAM,UAAU,QAAoB,CAAC;AAG5C,eAAO,MAAM,uBAAuB,gEAAwD,CAAC;AAE7F,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAG1C,eAAO,MAAM,gBAAgB,mBAAkB,CAAC;AAGhD,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAGxC,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAC3C,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAC3C,eAAO,MAAM,gBAAgB,qBAAoB,CAAC;AAElD,wEAAwE;AACxE,wBAAgB,qBAAqB,IAAI,sBAAsB,CAM9D"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_SEED_SIZE_BYTES = exports.CONTRACT_ADDRESS_PREFIX = exports.ADDR_BOUND = exports.MASK_128 = exports.FELT_MAX = exports.STRK_TOKEN_CONTRACT = exports.OZ_ETH_ACCOUNT_CLASS_HASH = void 0;
3
+ exports.L1_DATA_GAS_NAME = exports.L2_GAS_NAME = exports.L1_GAS_NAME = exports.TRANSACTION_VERSION_3 = exports.INVOKE_TX_PREFIX = exports.DEFAULT_SEED_SIZE_BYTES = exports.CONTRACT_ADDRESS_PREFIX = exports.ADDR_BOUND = exports.MASK_128 = exports.FELT_MAX = exports.STRK_TOKEN_CONTRACT = exports.OZ_ETH_ACCOUNT_CLASS_HASH = void 0;
4
+ exports.defaultResourceBounds = defaultResourceBounds;
4
5
  // OZ EthAccountUpgradeable class hash (v0.17.0) — secp256k1 signature verification
5
6
  exports.OZ_ETH_ACCOUNT_CLASS_HASH = '0x3940bc18abf1df6bc540cabadb1cad9486c6803b95801e57b6153ae21abfe06';
6
7
  // STRK token contract (same on both mainnet and sepolia)
@@ -14,4 +15,20 @@ exports.ADDR_BOUND = 2n ** 251n - 256n;
14
15
  // encodeShortString('STARKNET_CONTRACT_ADDRESS')
15
16
  exports.CONTRACT_ADDRESS_PREFIX = 0x535441524b4e45545f434f4e54524143545f41444452455353n;
16
17
  exports.DEFAULT_SEED_SIZE_BYTES = 16;
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUZBQW1GO0FBQ3RFLFFBQUEseUJBQXlCLEdBQUcsbUVBQW1FLENBQUM7QUFFN0cseURBQXlEO0FBQzVDLFFBQUEsbUJBQW1CLEdBQUcsb0VBQW9FLENBQUM7QUFFeEcsNkNBQTZDO0FBQ2hDLFFBQUEsUUFBUSxHQUFHLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7QUFFL0QsNkJBQTZCO0FBQ2hCLFFBQUEsUUFBUSxHQUFHLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUUxQyxzQ0FBc0M7QUFDekIsUUFBQSxVQUFVLEdBQUcsRUFBRSxJQUFJLElBQUksR0FBRyxJQUFJLENBQUM7QUFFNUMsaURBQWlEO0FBQ3BDLFFBQUEsdUJBQXVCLEdBQUcscURBQXFELENBQUM7QUFFaEYsUUFBQSx1QkFBdUIsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBPWiBFdGhBY2NvdW50VXBncmFkZWFibGUgY2xhc3MgaGFzaCAodjAuMTcuMCkg4oCUIHNlY3AyNTZrMSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uXG5leHBvcnQgY29uc3QgT1pfRVRIX0FDQ09VTlRfQ0xBU1NfSEFTSCA9ICcweDM5NDBiYzE4YWJmMWRmNmJjNTQwY2FiYWRiMWNhZDk0ODZjNjgwM2I5NTgwMWU1N2I2MTUzYWUyMWFiZmUwNic7XG5cbi8vIFNUUksgdG9rZW4gY29udHJhY3QgKHNhbWUgb24gYm90aCBtYWlubmV0IGFuZCBzZXBvbGlhKVxuZXhwb3J0IGNvbnN0IFNUUktfVE9LRU5fQ09OVFJBQ1QgPSAnMHgwNDcxOGY1YTBmYzM0Y2MxYWYxNmExY2RlZTk4ZmZiMjBjMzFmNWNkNjFkNmFiMDcyMDE4NThmNDI4N2M5MzhkJztcblxuLy8gZmVsdDI1MiBtYXggdmFsdWUgKDJeMjUxICsgMTcgKiAyXjE5MiArIDEpXG5leHBvcnQgY29uc3QgRkVMVF9NQVggPSAoMW4gPDwgMjUxbikgKyAxN24gKiAoMW4gPDwgMTkybikgKyAxbjtcblxuLy8gdTI1NiBzcGxpdCBtYXNrICgxMjggYml0cylcbmV4cG9ydCBjb25zdCBNQVNLXzEyOCA9ICgxbiA8PCAxMjhuKSAtIDFuO1xuXG4vLyBDb250cmFjdCBhZGRyZXNzIGJvdW5kOiAyXjI1MSAtIDI1NlxuZXhwb3J0IGNvbnN0IEFERFJfQk9VTkQgPSAybiAqKiAyNTFuIC0gMjU2bjtcblxuLy8gZW5jb2RlU2hvcnRTdHJpbmcoJ1NUQVJLTkVUX0NPTlRSQUNUX0FERFJFU1MnKVxuZXhwb3J0IGNvbnN0IENPTlRSQUNUX0FERFJFU1NfUFJFRklYID0gMHg1MzU0NDE1MjRiNGU0NTU0NWY0MzRmNGU1NDUyNDE0MzU0NWY0MTQ0NDQ1MjQ1NTM1M247XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NFRURfU0laRV9CWVRFUyA9IDE2O1xuIl19
18
+ // V3 transaction hash prefix: encodeShortString("invoke")
19
+ exports.INVOKE_TX_PREFIX = 0x696e766f6b65n;
20
+ // V3 transaction version
21
+ exports.TRANSACTION_VERSION_3 = 3n;
22
+ // Resource bound type names (short-string encoded felts)
23
+ exports.L1_GAS_NAME = 0x4c315f474153n; // "L1_GAS"
24
+ exports.L2_GAS_NAME = 0x4c325f474153n; // "L2_GAS"
25
+ exports.L1_DATA_GAS_NAME = 0x4c315f44415441n; // "L1_DATA" — NOT "L1_DATA_GAS"
26
+ /** Default v3 resource bounds (matches TransactionBuilder defaults). */
27
+ function defaultResourceBounds() {
28
+ return {
29
+ l2_gas: { max_amount: '0x1c9c380', max_price_per_unit: '0x174876e800' },
30
+ l1_gas: { max_amount: '0x0', max_price_per_unit: '0x5af3107a4000' },
31
+ l1_data_gas: { max_amount: '0x3e8', max_price_per_unit: '0x2540be400' },
32
+ };
33
+ }
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBa0NBLHNEQU1DO0FBdENELG1GQUFtRjtBQUN0RSxRQUFBLHlCQUF5QixHQUFHLG1FQUFtRSxDQUFDO0FBRTdHLHlEQUF5RDtBQUM1QyxRQUFBLG1CQUFtQixHQUFHLG9FQUFvRSxDQUFDO0FBRXhHLDZDQUE2QztBQUNoQyxRQUFBLFFBQVEsR0FBRyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBRS9ELDZCQUE2QjtBQUNoQixRQUFBLFFBQVEsR0FBRyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7QUFFMUMsc0NBQXNDO0FBQ3pCLFFBQUEsVUFBVSxHQUFHLEVBQUUsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBRTVDLGlEQUFpRDtBQUNwQyxRQUFBLHVCQUF1QixHQUFHLHFEQUFxRCxDQUFDO0FBRWhGLFFBQUEsdUJBQXVCLEdBQUcsRUFBRSxDQUFDO0FBRTFDLDBEQUEwRDtBQUM3QyxRQUFBLGdCQUFnQixHQUFHLGVBQWUsQ0FBQztBQUVoRCx5QkFBeUI7QUFDWixRQUFBLHFCQUFxQixHQUFHLEVBQUUsQ0FBQztBQUV4Qyx5REFBeUQ7QUFDNUMsUUFBQSxXQUFXLEdBQUcsZUFBZSxDQUFDLENBQUMsV0FBVztBQUMxQyxRQUFBLFdBQVcsR0FBRyxlQUFlLENBQUMsQ0FBQyxXQUFXO0FBQzFDLFFBQUEsZ0JBQWdCLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxnQ0FBZ0M7QUFFbkYsd0VBQXdFO0FBQ3hFLFNBQWdCLHFCQUFxQjtJQUNuQyxPQUFPO1FBQ0wsTUFBTSxFQUFFLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUU7UUFDdkUsTUFBTSxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRTtRQUNuRSxXQUFXLEVBQUUsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRTtLQUN4RSxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXJrbmV0UmVzb3VyY2VCb3VuZHMgfSBmcm9tICcuL2lmYWNlJztcblxuLy8gT1ogRXRoQWNjb3VudFVwZ3JhZGVhYmxlIGNsYXNzIGhhc2ggKHYwLjE3LjApIOKAlCBzZWNwMjU2azEgc2lnbmF0dXJlIHZlcmlmaWNhdGlvblxuZXhwb3J0IGNvbnN0IE9aX0VUSF9BQ0NPVU5UX0NMQVNTX0hBU0ggPSAnMHgzOTQwYmMxOGFiZjFkZjZiYzU0MGNhYmFkYjFjYWQ5NDg2YzY4MDNiOTU4MDFlNTdiNjE1M2FlMjFhYmZlMDYnO1xuXG4vLyBTVFJLIHRva2VuIGNvbnRyYWN0IChzYW1lIG9uIGJvdGggbWFpbm5ldCBhbmQgc2Vwb2xpYSlcbmV4cG9ydCBjb25zdCBTVFJLX1RPS0VOX0NPTlRSQUNUID0gJzB4MDQ3MThmNWEwZmMzNGNjMWFmMTZhMWNkZWU5OGZmYjIwYzMxZjVjZDYxZDZhYjA3MjAxODU4ZjQyODdjOTM4ZCc7XG5cbi8vIGZlbHQyNTIgbWF4IHZhbHVlICgyXjI1MSArIDE3ICogMl4xOTIgKyAxKVxuZXhwb3J0IGNvbnN0IEZFTFRfTUFYID0gKDFuIDw8IDI1MW4pICsgMTduICogKDFuIDw8IDE5Mm4pICsgMW47XG5cbi8vIHUyNTYgc3BsaXQgbWFzayAoMTI4IGJpdHMpXG5leHBvcnQgY29uc3QgTUFTS18xMjggPSAoMW4gPDwgMTI4bikgLSAxbjtcblxuLy8gQ29udHJhY3QgYWRkcmVzcyBib3VuZDogMl4yNTEgLSAyNTZcbmV4cG9ydCBjb25zdCBBRERSX0JPVU5EID0gMm4gKiogMjUxbiAtIDI1Nm47XG5cbi8vIGVuY29kZVNob3J0U3RyaW5nKCdTVEFSS05FVF9DT05UUkFDVF9BRERSRVNTJylcbmV4cG9ydCBjb25zdCBDT05UUkFDVF9BRERSRVNTX1BSRUZJWCA9IDB4NTM1NDQxNTI0YjRlNDU1NDVmNDM0ZjRlNTQ1MjQxNDM1NDVmNDE0NDQ0NTI0NTUzNTNuO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9TRUVEX1NJWkVfQllURVMgPSAxNjtcblxuLy8gVjMgdHJhbnNhY3Rpb24gaGFzaCBwcmVmaXg6IGVuY29kZVNob3J0U3RyaW5nKFwiaW52b2tlXCIpXG5leHBvcnQgY29uc3QgSU5WT0tFX1RYX1BSRUZJWCA9IDB4Njk2ZTc2NmY2YjY1bjtcblxuLy8gVjMgdHJhbnNhY3Rpb24gdmVyc2lvblxuZXhwb3J0IGNvbnN0IFRSQU5TQUNUSU9OX1ZFUlNJT05fMyA9IDNuO1xuXG4vLyBSZXNvdXJjZSBib3VuZCB0eXBlIG5hbWVzIChzaG9ydC1zdHJpbmcgZW5jb2RlZCBmZWx0cylcbmV4cG9ydCBjb25zdCBMMV9HQVNfTkFNRSA9IDB4NGMzMTVmNDc0MTUzbjsgLy8gXCJMMV9HQVNcIlxuZXhwb3J0IGNvbnN0IEwyX0dBU19OQU1FID0gMHg0YzMyNWY0NzQxNTNuOyAvLyBcIkwyX0dBU1wiXG5leHBvcnQgY29uc3QgTDFfREFUQV9HQVNfTkFNRSA9IDB4NGMzMTVmNDQ0MTU0NDFuOyAvLyBcIkwxX0RBVEFcIiDigJQgTk9UIFwiTDFfREFUQV9HQVNcIlxuXG4vKiogRGVmYXVsdCB2MyByZXNvdXJjZSBib3VuZHMgKG1hdGNoZXMgVHJhbnNhY3Rpb25CdWlsZGVyIGRlZmF1bHRzKS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0UmVzb3VyY2VCb3VuZHMoKTogU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyB7XG4gIHJldHVybiB7XG4gICAgbDJfZ2FzOiB7IG1heF9hbW91bnQ6ICcweDFjOWMzODAnLCBtYXhfcHJpY2VfcGVyX3VuaXQ6ICcweDE3NDg3NmU4MDAnIH0sXG4gICAgbDFfZ2FzOiB7IG1heF9hbW91bnQ6ICcweDAnLCBtYXhfcHJpY2VfcGVyX3VuaXQ6ICcweDVhZjMxMDdhNDAwMCcgfSxcbiAgICBsMV9kYXRhX2dhczogeyBtYXhfYW1vdW50OiAnMHgzZTgnLCBtYXhfcHJpY2VfcGVyX3VuaXQ6ICcweDI1NDBiZTQwMCcgfSxcbiAgfTtcbn1cbiJdfQ==
@@ -31,6 +31,23 @@ export interface StarknetTransactionData {
31
31
  transactionType: StarknetTransactionType;
32
32
  signature?: string[];
33
33
  transactionHash?: string;
34
+ tip?: string;
35
+ nonceDataAvailabilityMode?: number;
36
+ feeDataAvailabilityMode?: number;
37
+ compiledCalldata?: string[];
38
+ }
39
+ export interface InvokeTransactionHashParams {
40
+ senderAddress: string;
41
+ compiledCalldata: string[];
42
+ chainId: string;
43
+ nonce: string;
44
+ resourceBounds: StarknetResourceBounds;
45
+ tip?: string;
46
+ nonceDataAvailabilityMode?: number;
47
+ feeDataAvailabilityMode?: number;
48
+ paymasterData?: string[];
49
+ accountDeploymentData?: string[];
50
+ proofFacts?: string[];
34
51
  }
35
52
  export interface ParsedTransferData {
36
53
  recipient: string;
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACvC,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAE9B,oBAAY,uBAAuB;IACjC,MAAM,WAAW;IACjB,cAAc,mBAAmB;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,WAAW,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACxC,eAAe,EAAE,uBAAuB,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA+B,SAAQ,0BAA0B;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,+BAAgC,SAAQ,uBAAuB;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACvC,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAE9B,oBAAY,uBAAuB;IACjC,MAAM,WAAW;IACjB,cAAc,mBAAmB;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,WAAW,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACxC,eAAe,EAAE,uBAAuB,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,sBAAsB,CAAC;IACvC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA+B,SAAQ,0BAA0B;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,+BAAgC,SAAQ,uBAAuB;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -6,4 +6,4 @@ var StarknetTransactionType;
6
6
  StarknetTransactionType["INVOKE"] = "INVOKE";
7
7
  StarknetTransactionType["DEPLOY_ACCOUNT"] = "DEPLOY_ACCOUNT";
8
8
  })(StarknetTransactionType || (exports.StarknetTransactionType = StarknetTransactionType = {}));
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLElBQVksdUJBR1g7QUFIRCxXQUFZLHVCQUF1QjtJQUNqQyw0Q0FBaUIsQ0FBQTtJQUNqQiw0REFBaUMsQ0FBQTtBQUNuQyxDQUFDLEVBSFcsdUJBQXVCLHVDQUF2Qix1QkFBdUIsUUFHbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG4gIFRzc1ZlcmlmeUFkZHJlc3NPcHRpb25zLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmV4cG9ydCBlbnVtIFN0YXJrbmV0VHJhbnNhY3Rpb25UeXBlIHtcbiAgSU5WT0tFID0gJ0lOVk9LRScsXG4gIERFUExPWV9BQ0NPVU5UID0gJ0RFUExPWV9BQ0NPVU5UJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFya25ldENhbGwge1xuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZztcbiAgZW50cnlwb2ludDogc3RyaW5nO1xuICBjYWxsZGF0YTogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyB7XG4gIGwyX2dhczogeyBtYXhfYW1vdW50OiBzdHJpbmc7IG1heF9wcmljZV9wZXJfdW5pdDogc3RyaW5nIH07XG4gIGwxX2dhczogeyBtYXhfYW1vdW50OiBzdHJpbmc7IG1heF9wcmljZV9wZXJfdW5pdDogc3RyaW5nIH07XG4gIGwxX2RhdGFfZ2FzOiB7IG1heF9hbW91bnQ6IHN0cmluZzsgbWF4X3ByaWNlX3Blcl91bml0OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFya25ldFRyYW5zYWN0aW9uRGF0YSB7XG4gIHNlbmRlckFkZHJlc3M6IHN0cmluZztcbiAgY2FsbHM6IFN0YXJrbmV0Q2FsbFtdO1xuICBub25jZTogc3RyaW5nO1xuICBjaGFpbklkOiBzdHJpbmc7XG4gIHJlc291cmNlQm91bmRzPzogU3RhcmtuZXRSZXNvdXJjZUJvdW5kcztcbiAgdHJhbnNhY3Rpb25UeXBlOiBTdGFya25ldFRyYW5zYWN0aW9uVHlwZTtcbiAgc2lnbmF0dXJlPzogc3RyaW5nW107XG4gIHRyYW5zYWN0aW9uSGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXJzZWRUcmFuc2ZlckRhdGEge1xuICByZWNpcGllbnQ6IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmc7XG4gIHRva2VuQ29udHJhY3Q6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IHN0cmluZztcbiAgc2VuZGVyOiBzdHJpbmc7XG4gIHNlbmRlclB1YmxpY0tleT86IHN0cmluZztcbiAgcmVjaXBpZW50Pzogc3RyaW5nO1xuICBhbW91bnQ/OiBzdHJpbmc7XG4gIGZlZT86IHN0cmluZztcbiAgbm9uY2U6IHN0cmluZztcbiAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcmtuZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICBzZW5kZXI/OiBzdHJpbmc7XG4gIHR5cGU/OiBCaXRHb1RyYW5zYWN0aW9uVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkhleFBhcmFtcyB7XG4gIHRyYW5zYWN0aW9uSGV4OiBzdHJpbmc7XG4gIHNpZ25hYmxlSGV4Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRzc1ZlcmlmeVN0YXJrbmV0QWRkcmVzc09wdGlvbnMgZXh0ZW5kcyBUc3NWZXJpZnlBZGRyZXNzT3B0aW9ucyB7XG4gIHJvb3RBZGRyZXNzPzogc3RyaW5nO1xufVxuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLElBQVksdUJBR1g7QUFIRCxXQUFZLHVCQUF1QjtJQUNqQyw0Q0FBaUIsQ0FBQTtJQUNqQiw0REFBaUMsQ0FBQTtBQUNuQyxDQUFDLEVBSFcsdUJBQXVCLHVDQUF2Qix1QkFBdUIsUUFHbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG4gIFRzc1ZlcmlmeUFkZHJlc3NPcHRpb25zLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmV4cG9ydCBlbnVtIFN0YXJrbmV0VHJhbnNhY3Rpb25UeXBlIHtcbiAgSU5WT0tFID0gJ0lOVk9LRScsXG4gIERFUExPWV9BQ0NPVU5UID0gJ0RFUExPWV9BQ0NPVU5UJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFya25ldENhbGwge1xuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZztcbiAgZW50cnlwb2ludDogc3RyaW5nO1xuICBjYWxsZGF0YTogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyB7XG4gIGwyX2dhczogeyBtYXhfYW1vdW50OiBzdHJpbmc7IG1heF9wcmljZV9wZXJfdW5pdDogc3RyaW5nIH07XG4gIGwxX2dhczogeyBtYXhfYW1vdW50OiBzdHJpbmc7IG1heF9wcmljZV9wZXJfdW5pdDogc3RyaW5nIH07XG4gIGwxX2RhdGFfZ2FzOiB7IG1heF9hbW91bnQ6IHN0cmluZzsgbWF4X3ByaWNlX3Blcl91bml0OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFya25ldFRyYW5zYWN0aW9uRGF0YSB7XG4gIHNlbmRlckFkZHJlc3M6IHN0cmluZztcbiAgY2FsbHM6IFN0YXJrbmV0Q2FsbFtdO1xuICBub25jZTogc3RyaW5nO1xuICBjaGFpbklkOiBzdHJpbmc7XG4gIHJlc291cmNlQm91bmRzPzogU3RhcmtuZXRSZXNvdXJjZUJvdW5kcztcbiAgdHJhbnNhY3Rpb25UeXBlOiBTdGFya25ldFRyYW5zYWN0aW9uVHlwZTtcbiAgc2lnbmF0dXJlPzogc3RyaW5nW107XG4gIHRyYW5zYWN0aW9uSGFzaD86IHN0cmluZztcbiAgdGlwPzogc3RyaW5nO1xuICBub25jZURhdGFBdmFpbGFiaWxpdHlNb2RlPzogbnVtYmVyO1xuICBmZWVEYXRhQXZhaWxhYmlsaXR5TW9kZT86IG51bWJlcjtcbiAgY29tcGlsZWRDYWxsZGF0YT86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEludm9rZVRyYW5zYWN0aW9uSGFzaFBhcmFtcyB7XG4gIHNlbmRlckFkZHJlc3M6IHN0cmluZztcbiAgY29tcGlsZWRDYWxsZGF0YTogc3RyaW5nW107XG4gIGNoYWluSWQ6IHN0cmluZztcbiAgbm9uY2U6IHN0cmluZztcbiAgcmVzb3VyY2VCb3VuZHM6IFN0YXJrbmV0UmVzb3VyY2VCb3VuZHM7XG4gIHRpcD86IHN0cmluZztcbiAgbm9uY2VEYXRhQXZhaWxhYmlsaXR5TW9kZT86IG51bWJlcjtcbiAgZmVlRGF0YUF2YWlsYWJpbGl0eU1vZGU/OiBudW1iZXI7XG4gIHBheW1hc3RlckRhdGE/OiBzdHJpbmdbXTtcbiAgYWNjb3VudERlcGxveW1lbnREYXRhPzogc3RyaW5nW107XG4gIHByb29mRmFjdHM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXJzZWRUcmFuc2ZlckRhdGEge1xuICByZWNpcGllbnQ6IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmc7XG4gIHRva2VuQ29udHJhY3Q6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IHN0cmluZztcbiAgc2VuZGVyOiBzdHJpbmc7XG4gIHNlbmRlclB1YmxpY0tleT86IHN0cmluZztcbiAgcmVjaXBpZW50Pzogc3RyaW5nO1xuICBhbW91bnQ/OiBzdHJpbmc7XG4gIGZlZT86IHN0cmluZztcbiAgbm9uY2U6IHN0cmluZztcbiAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcmtuZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICBzZW5kZXI/OiBzdHJpbmc7XG4gIHR5cGU/OiBCaXRHb1RyYW5zYWN0aW9uVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkhleFBhcmFtcyB7XG4gIHRyYW5zYWN0aW9uSGV4OiBzdHJpbmc7XG4gIHNpZ25hYmxlSGV4Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRzc1ZlcmlmeVN0YXJrbmV0QWRkcmVzc09wdGlvbnMgZXh0ZW5kcyBUc3NWZXJpZnlBZGRyZXNzT3B0aW9ucyB7XG4gIHJvb3RBZGRyZXNzPzogc3RyaW5nO1xufVxuIl19
@@ -7,6 +7,7 @@ export declare class Transaction extends BaseTransaction {
7
7
  constructor(_coinConfig: Readonly<CoinConfig>);
8
8
  get starknetTransactionData(): StarknetTransactionData;
9
9
  set starknetTransactionData(data: StarknetTransactionData);
10
+ get signableHex(): string;
10
11
  get signedTransaction(): string | undefined;
11
12
  set signedTransaction(tx: string);
12
13
  fromRawTransaction(rawTransaction: string): Promise<void>;
@@ -14,7 +15,9 @@ export declare class Transaction extends BaseTransaction {
14
15
  toJson(): TxData;
15
16
  /** @inheritDoc */
16
17
  explainTransaction(): StarknetTransactionExplanation;
17
- /** @inheritdoc */
18
+ /** Hex-encoded internal JSON — used by WP for round-trip via fromRawTransaction. */
19
+ toInternalHex(): string;
20
+ /** @inheritdoc — returns Starknet RPC-ready JSON string for starknet_addInvokeTransaction. */
18
21
  toBroadcastFormat(): string;
19
22
  /** @inheritdoc */
20
23
  canSign(_key: BaseKey): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,eAAe,EAIhB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAA2B,8BAA8B,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGnH,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,wBAAwB,EAAG,uBAAuB,CAAC;IAC7D,SAAS,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;gBAE1B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,IAAI,uBAAuB,IAAI,uBAAuB,CAErD;IAED,IAAI,uBAAuB,CAAC,IAAI,EAAE,uBAAuB,EAExD;IAED,IAAI,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAE1C;IAED,IAAI,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAE/B;IAEK,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B/D,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAkBhB,kBAAkB;IAClB,kBAAkB,IAAI,8BAA8B;IAwBpD,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAS3B,kBAAkB;IAClB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;CAGhC"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/lib/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,eAAe,EAIhB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAEL,uBAAuB,EAEvB,8BAA8B,EAC9B,MAAM,EACP,MAAM,SAAS,CAAC;AAiBjB,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,wBAAwB,EAAG,uBAAuB,CAAC;IAC7D,SAAS,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;gBAE1B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,IAAI,uBAAuB,IAAI,uBAAuB,CAErD;IAED,IAAI,uBAAuB,CAAC,IAAI,EAAE,uBAAuB,EAKxD;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAE1C;IAED,IAAI,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAE/B;IAEK,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC/D,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAkBhB,kBAAkB;IAClB,kBAAkB,IAAI,8BAA8B;IAwBpD,oFAAoF;IACpF,aAAa,IAAI,MAAM;IAQvB,8FAA8F;IAC9F,iBAAiB,IAAI,MAAM;IAqB3B,kBAAkB;IAClB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;CAGhC"}
@@ -35,8 +35,21 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.Transaction = void 0;
37
37
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
38
+ const constants_1 = require("./constants");
38
39
  const iface_1 = require("./iface");
39
40
  const utils_1 = __importStar(require("./utils"));
41
+ function resolveCompiledCalldata(data) {
42
+ if (data.compiledCalldata && data.compiledCalldata.length > 0) {
43
+ return data.compiledCalldata;
44
+ }
45
+ if (data.calls.length > 0) {
46
+ return (0, utils_1.compileExecuteCalldata)(data.calls);
47
+ }
48
+ throw new sdk_core_1.InvalidTransactionError('Missing calldata: no compiledCalldata or calls');
49
+ }
50
+ function resolveResourceBounds(data) {
51
+ return data.resourceBounds ?? (0, constants_1.defaultResourceBounds)();
52
+ }
40
53
  class Transaction extends sdk_core_1.BaseTransaction {
41
54
  constructor(_coinConfig) {
42
55
  super(_coinConfig);
@@ -46,6 +59,12 @@ class Transaction extends sdk_core_1.BaseTransaction {
46
59
  }
47
60
  set starknetTransactionData(data) {
48
61
  this._starknetTransactionData = data;
62
+ if (data.transactionHash) {
63
+ this._id = data.transactionHash;
64
+ }
65
+ }
66
+ get signableHex() {
67
+ return this._starknetTransactionData?.transactionHash || '';
49
68
  }
50
69
  get signedTransaction() {
51
70
  return this._signedTransaction;
@@ -66,6 +85,11 @@ class Transaction extends sdk_core_1.BaseTransaction {
66
85
  transactionType: parsed.transactionType || iface_1.StarknetTransactionType.INVOKE,
67
86
  signature: parsed.signature,
68
87
  transactionHash: parsed.transactionHash,
88
+ resourceBounds: parsed.resourceBounds,
89
+ tip: parsed.tip,
90
+ compiledCalldata: parsed.compiledCalldata,
91
+ nonceDataAvailabilityMode: parsed.nonceDataAvailabilityMode,
92
+ feeDataAvailabilityMode: parsed.feeDataAvailabilityMode,
69
93
  };
70
94
  if (parsed.signature && parsed.signature.length > 0) {
71
95
  this._signedTransaction = rawTransaction;
@@ -116,14 +140,34 @@ class Transaction extends sdk_core_1.BaseTransaction {
116
140
  changeAmount: '0',
117
141
  };
118
142
  }
119
- /** @inheritdoc */
143
+ /** Hex-encoded internal JSON — used by WP for round-trip via fromRawTransaction. */
144
+ toInternalHex() {
145
+ const data = this._starknetTransactionData;
146
+ if (!data) {
147
+ throw new sdk_core_1.InvalidTransactionError('Empty transaction');
148
+ }
149
+ return Buffer.from(JSON.stringify(data), 'utf-8').toString('hex');
150
+ }
151
+ /** @inheritdoc — returns Starknet RPC-ready JSON string for starknet_addInvokeTransaction. */
120
152
  toBroadcastFormat() {
121
153
  const data = this._starknetTransactionData;
122
154
  if (!data) {
123
155
  throw new sdk_core_1.InvalidTransactionError('Empty transaction');
124
156
  }
125
- const json = JSON.stringify(data);
126
- return Buffer.from(json, 'utf-8').toString('hex');
157
+ return JSON.stringify({
158
+ type: 'INVOKE',
159
+ version: '0x3',
160
+ sender_address: data.senderAddress,
161
+ calldata: resolveCompiledCalldata(data),
162
+ signature: data.signature || [],
163
+ nonce: data.nonce,
164
+ resource_bounds: resolveResourceBounds(data),
165
+ tip: data.tip || '0x0',
166
+ paymaster_data: [],
167
+ account_deployment_data: [],
168
+ nonce_data_availability_mode: 'L1',
169
+ fee_data_availability_mode: 'L1',
170
+ });
127
171
  }
128
172
  /** @inheritdoc */
129
173
  canSign(_key) {
@@ -131,4 +175,4 @@ class Transaction extends sdk_core_1.BaseTransaction {
131
175
  }
132
176
  }
133
177
  exports.Transaction = Transaction;
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQU04QjtBQUU5QixtQ0FBbUg7QUFDbkgsaURBQW1EO0FBRW5ELE1BQWEsV0FBWSxTQUFRLDBCQUFlO0lBSTlDLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLHVCQUF1QjtRQUN6QixPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSx1QkFBdUIsQ0FBQyxJQUE2QjtRQUN2RCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxpQkFBaUIsQ0FBQyxFQUFVO1FBQzlCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxjQUFzQjtRQUM3QyxJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNsRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7WUFFdEMsSUFBSSxDQUFDLHdCQUF3QixHQUFHO2dCQUM5QixhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWE7Z0JBQ25DLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUU7Z0JBQ3pCLEtBQUssRUFB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LENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLE9BQU8sQ0FBQyxJQUFhO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGO0FBN0dELGtDQTZHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25SZWNpcGllbnQsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhLCBTdGFya25ldFRyYW5zYWN0aW9uVHlwZSwgU3RhcmtuZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLCBUeERhdGEgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB1dGlscywgeyBwYXJzZVRyYW5zZmVyQ2FsbCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcm90ZWN0ZWQgX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhITogU3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gIHByb3RlY3RlZCBfc2lnbmVkVHJhbnNhY3Rpb24/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgZ2V0IHN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhKCk6IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICBzZXQgc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEoZGF0YTogU3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEpIHtcbiAgICB0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YSA9IGRhdGE7XG4gIH1cblxuICBnZXQgc2lnbmVkVHJhbnNhY3Rpb24oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmVkVHJhbnNhY3Rpb247XG4gIH1cblxuICBzZXQgc2lnbmVkVHJhbnNhY3Rpb24odHg6IHN0cmluZykge1xuICAgIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICBhc3luYyBmcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuZnJvbShyYXdUcmFuc2FjdGlvbiwgJ2hleCcpO1xuICAgICAgY29uc3QganNvblN0cmluZyA9IGJ1ZmZlci50b1N0cmluZygndXRmLTgnKTtcbiAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UoanNvblN0cmluZyk7XG5cbiAgICAgIHRoaXMuX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgICBzZW5kZXJBZGRyZXNzOiBwYXJzZWQuc2VuZGVyQWRkcmVzcyxcbiAgICAgICAgY2FsbHM6IHBhcnNlZC5jYWxscyB8fCBbXSxcbiAgICAgICAgbm9uY2U6IHBhcnNlZC5ub25jZSxcbiAgICAgICAgY2hhaW5JZDogcGFyc2VkLmNoYWluSWQsXG4gICAgICAgIHRyYW5zYWN0aW9uVHlwZTogcGFyc2VkLnRyYW5zYWN0aW9uVHlwZSB8fCBTdGFya25ldFRyYW5zYWN0aW9uVHlwZS5JTlZPS0UsXG4gICAgICAgIHNpZ25hdHVyZTogcGFyc2VkLnNpZ25hdHVyZSxcbiAgICAgICAgdHJhbnNhY3Rpb25IYXNoOiBwYXJzZWQudHJhbnNhY3Rpb25IYXNoLFxuICAgICAgfTtcblxuICAgICAgaWYgKHBhcnNlZC5zaWduYXR1cmUgJiYgcGFyc2VkLnNpZ25hdHVyZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uID0gcmF3VHJhbnNhY3Rpb247XG4gICAgICB9XG5cbiAgICAgIHV0aWxzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24odGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEpO1xuICAgICAgdGhpcy5faWQgPSBwYXJzZWQudHJhbnNhY3Rpb25IYXNoIHx8ICcnO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdHJhbnNhY3Rpb246ICR7ZXJyb3IubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IFR4RGF0YSB7XG4gICAgaWYgKCF0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBjb25zdCB0cmFuc2ZlciA9XG4gICAgICB0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YS5jYWxscy5sZW5ndGggPiAwXG4gICAgICAgID8gcGFyc2VUcmFuc2ZlckNhbGwodGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEuY2FsbHNbMF0pXG4gICAgICAgIDogdW5kZWZpbmVkO1xuICAgIHJldHVybiB7XG4gICAgICBpZDogdGhpcy5faWQsXG4gICAgICBzZW5kZXI6IHRoaXMuX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhLnNlbmRlckFkZHJlc3MsXG4gICAgICByZWNpcGllbnQ6IHRyYW5zZmVyPy5yZWNpcGllbnQsXG4gICAgICBhbW91bnQ6IHRyYW5zZmVyPy5hbW91bnQsXG4gICAgICBub25jZTogdGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEubm9uY2UsXG4gICAgICB0eXBlOiBUcmFuc2FjdGlvblR5cGUuU2VuZCxcbiAgICB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGV4cGxhaW5UcmFuc2FjdGlvbigpOiBTdGFya25ldFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMudG9Kc29uKCk7XG4gICAgY29uc3QgZGlzcGxheU9yZGVyID0gWydpZCcsICdvdXRwdXRBbW91bnQnLCAnY2hhbmdlQW1vdW50JywgJ291dHB1dHMnLCAnY2hhbmdlT3V0cHV0cycsICdmZWUnXTtcbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gW107XG5cbiAgICBpZiAocmVzdWx0LnJlY2lwaWVudCAmJiByZXN1bHQuYW1vdW50KSB7XG4gICAgICBvdXRwdXRzLnB1c2goe1xuICAgICAgICBhZGRyZXNzOiByZXN1bHQucmVjaXBpZW50LFxuICAgICAgICBhbW91bnQ6IHJlc3VsdC5hbW91bnQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheU9yZGVyLFxuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBvdXRwdXRzLFxuICAgICAgb3V0cHV0QW1vdW50OiByZXN1bHQuYW1vdW50IHx8ICcwJyxcbiAgICAgIGZlZTogeyBmZWU6ICcwJyB9LFxuICAgICAgdHlwZTogcmVzdWx0LnR5cGUsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiBbXSxcbiAgICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gICAgaWYgKCFkYXRhKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IGpzb24gPSBKU09OLnN0cmluZ2lmeShkYXRhKTtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oanNvbiwgJ3V0Zi04JykudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oX2tleTogQmFzZUtleSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQU04QjtBQUU5QiwyQ0FBb0Q7QUFDcEQsbUNBTWlCO0FBQ2pCLGlEQUEyRTtBQUUzRSxTQUFTLHVCQUF1QixDQUFDLElBQTZCO0lBQzVELElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxJQUFBLDhCQUFzQixFQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBQ0QsTUFBTSxJQUFJLGtDQUF1QixDQUFDLGdEQUFnRCxDQUFDLENBQUM7QUFDdEYsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsSUFBNkI7SUFDMUQsT0FBTyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUEsaUNBQXFCLEdBQUUsQ0FBQztBQUN4RCxDQUFDO0FBRUQsTUFBYSxXQUFZLFNBQVEsMEJBQWU7SUFJOUMsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLHVCQUF1QixDQUFDLElBQTZCO1FBQ3ZELElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUM7UUFDckMsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLEdBQUcsR0FB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cEUsQ0FBQztJQUVELDhGQUE4RjtJQUM5RixpQkFBaUI7UUFDZixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUM7UUFDM0MsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1YsTUFBTSxJQUFJLGtDQUF1QixDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNwQixJQUFJLEVBQUUsUUFBUTtZQUNkLE9BQU8sRUFBRSxLQUFLO1lBQ2QsY0FBYyxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2xDLFFBQVEsRUFBRSx1QkFBdUIsQ0FBQyxJQUFJLENBQUM7WUFDdkMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRTtZQUMvQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsZUFBZSxFQUFFLHFCQUFxQixDQUFDLElBQUksQ0FBQztZQUM1QyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxLQUFLO1lBQ3RCLGNBQWMsRUFBRSxFQUFFO1lBQ2xCLHVCQUF1QixFQUFFLEVBQUU7WUFDM0IsNEJBQTRCLEVBQUUsSUFBSTtZQUNsQywwQkFBMEIsRUFBRSxJQUFJO1NBQ2pDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0Y7QUE5SUQsa0NBOElDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgZGVmYXVsdFJlc291cmNlQm91bmRzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyxcbiAgU3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEsXG4gIFN0YXJrbmV0VHJhbnNhY3Rpb25UeXBlLFxuICBTdGFya25ldFRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIFR4RGF0YSxcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgdXRpbHMsIHsgY29tcGlsZUV4ZWN1dGVDYWxsZGF0YSwgcGFyc2VUcmFuc2ZlckNhbGwgfSBmcm9tICcuL3V0aWxzJztcblxuZnVuY3Rpb24gcmVzb2x2ZUNvbXBpbGVkQ2FsbGRhdGEoZGF0YTogU3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEpOiBzdHJpbmdbXSB7XG4gIGlmIChkYXRhLmNvbXBpbGVkQ2FsbGRhdGEgJiYgZGF0YS5jb21waWxlZENhbGxkYXRhLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4gZGF0YS5jb21waWxlZENhbGxkYXRhO1xuICB9XG4gIGlmIChkYXRhLmNhbGxzLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4gY29tcGlsZUV4ZWN1dGVDYWxsZGF0YShkYXRhLmNhbGxzKTtcbiAgfVxuICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ01pc3NpbmcgY2FsbGRhdGE6IG5vIGNvbXBpbGVkQ2FsbGRhdGEgb3IgY2FsbHMnKTtcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVJlc291cmNlQm91bmRzKGRhdGE6IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhKTogU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyB7XG4gIHJldHVybiBkYXRhLnJlc291cmNlQm91bmRzID8/IGRlZmF1bHRSZXNvdXJjZUJvdW5kcygpO1xufVxuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcm90ZWN0ZWQgX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhITogU3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gIHByb3RlY3RlZCBfc2lnbmVkVHJhbnNhY3Rpb24/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgZ2V0IHN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhKCk6IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICBzZXQgc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEoZGF0YTogU3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEpIHtcbiAgICB0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YSA9IGRhdGE7XG4gICAgaWYgKGRhdGEudHJhbnNhY3Rpb25IYXNoKSB7XG4gICAgICB0aGlzLl9pZCA9IGRhdGEudHJhbnNhY3Rpb25IYXNoO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzaWduYWJsZUhleCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YT8udHJhbnNhY3Rpb25IYXNoIHx8ICcnO1xuICB9XG5cbiAgZ2V0IHNpZ25lZFRyYW5zYWN0aW9uKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgc2V0IHNpZ25lZFRyYW5zYWN0aW9uKHR4OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zaWduZWRUcmFuc2FjdGlvbiA9IHR4O1xuICB9XG5cbiAgYXN5bmMgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmZyb20ocmF3VHJhbnNhY3Rpb24sICdoZXgnKTtcbiAgICAgIGNvbnN0IGpzb25TdHJpbmcgPSBidWZmZXIudG9TdHJpbmcoJ3V0Zi04Jyk7XG4gICAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKGpzb25TdHJpbmcpO1xuXG4gICAgICB0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YSA9IHtcbiAgICAgICAgc2VuZGVyQWRkcmVzczogcGFyc2VkLnNlbmRlckFkZHJlc3MsXG4gICAgICAgIGNhbGxzOiBwYXJzZWQuY2FsbHMgfHwgW10sXG4gICAgICAgIG5vbmNlOiBwYXJzZWQubm9uY2UsXG4gICAgICAgIGNoYWluSWQ6IHBhcnNlZC5jaGFpbklkLFxuICAgICAgICB0cmFuc2FjdGlvblR5cGU6IHBhcnNlZC50cmFuc2FjdGlvblR5cGUgfHwgU3RhcmtuZXRUcmFuc2FjdGlvblR5cGUuSU5WT0tFLFxuICAgICAgICBzaWduYXR1cmU6IHBhcnNlZC5zaWduYXR1cmUsXG4gICAgICAgIHRyYW5zYWN0aW9uSGFzaDogcGFyc2VkLnRyYW5zYWN0aW9uSGFzaCxcbiAgICAgICAgcmVzb3VyY2VCb3VuZHM6IHBhcnNlZC5yZXNvdXJjZUJvdW5kcyxcbiAgICAgICAgdGlwOiBwYXJzZWQudGlwLFxuICAgICAgICBjb21waWxlZENhbGxkYXRhOiBwYXJzZWQuY29tcGlsZWRDYWxsZGF0YSxcbiAgICAgICAgbm9uY2VEYXRhQXZhaWxhYmlsaXR5TW9kZTogcGFyc2VkLm5vbmNlRGF0YUF2YWlsYWJpbGl0eU1vZGUsXG4gICAgICAgIGZlZURhdGFBdmFpbGFiaWxpdHlNb2RlOiBwYXJzZWQuZmVlRGF0YUF2YWlsYWJpbGl0eU1vZGUsXG4gICAgICB9O1xuXG4gICAgICBpZiAocGFyc2VkLnNpZ25hdHVyZSAmJiBwYXJzZWQuc2lnbmF0dXJlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5fc2lnbmVkVHJhbnNhY3Rpb24gPSByYXdUcmFuc2FjdGlvbjtcbiAgICAgIH1cblxuICAgICAgdXRpbHMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbih0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YSk7XG4gICAgICB0aGlzLl9pZCA9IHBhcnNlZC50cmFuc2FjdGlvbkhhc2ggfHwgJyc7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCB0cmFuc2FjdGlvbjogJHtlcnJvci5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogVHhEYXRhIHtcbiAgICBpZiAoIXRoaXMuX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IHRyYW5zZmVyID1cbiAgICAgIHRoaXMuX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhLmNhbGxzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBwYXJzZVRyYW5zZmVyQ2FsbCh0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YS5jYWxsc1swXSlcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB0aGlzLl9pZCxcbiAgICAgIHNlbmRlcjogdGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEuc2VuZGVyQWRkcmVzcyxcbiAgICAgIHJlY2lwaWVudDogdHJhbnNmZXI/LnJlY2lwaWVudCxcbiAgICAgIGFtb3VudDogdHJhbnNmZXI/LmFtb3VudCxcbiAgICAgIG5vbmNlOiB0aGlzLl9zdGFya25ldFRyYW5zYWN0aW9uRGF0YS5ub25jZSxcbiAgICAgIHR5cGU6IFRyYW5zYWN0aW9uVHlwZS5TZW5kLFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IFN0YXJrbmV0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy50b0pzb24oKTtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbJ2lkJywgJ291dHB1dEFtb3VudCcsICdjaGFuZ2VBbW91bnQnLCAnb3V0cHV0cycsICdjaGFuZ2VPdXRwdXRzJywgJ2ZlZSddO1xuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSBbXTtcblxuICAgIGlmIChyZXN1bHQucmVjaXBpZW50ICYmIHJlc3VsdC5hbW91bnQpIHtcbiAgICAgIG91dHB1dHMucHVzaCh7XG4gICAgICAgIGFkZHJlc3M6IHJlc3VsdC5yZWNpcGllbnQsXG4gICAgICAgIGFtb3VudDogcmVzdWx0LmFtb3VudCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5T3JkZXIsXG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIG91dHB1dHMsXG4gICAgICBvdXRwdXRBbW91bnQ6IHJlc3VsdC5hbW91bnQgfHwgJzAnLFxuICAgICAgZmVlOiB7IGZlZTogJzAnIH0sXG4gICAgICB0eXBlOiByZXN1bHQudHlwZSxcbiAgICAgIGNoYW5nZU91dHB1dHM6IFtdLFxuICAgICAgY2hhbmdlQW1vdW50OiAnMCcsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBIZXgtZW5jb2RlZCBpbnRlcm5hbCBKU09OIOKAlCB1c2VkIGJ5IFdQIGZvciByb3VuZC10cmlwIHZpYSBmcm9tUmF3VHJhbnNhY3Rpb24uICovXG4gIHRvSW50ZXJuYWxIZXgoKTogc3RyaW5nIHtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5fc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gICAgaWYgKCFkYXRhKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHJldHVybiBCdWZmZXIuZnJvbShKU09OLnN0cmluZ2lmeShkYXRhKSwgJ3V0Zi04JykudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jIOKAlCByZXR1cm5zIFN0YXJrbmV0IFJQQy1yZWFkeSBKU09OIHN0cmluZyBmb3Igc3RhcmtuZXRfYWRkSW52b2tlVHJhbnNhY3Rpb24uICovXG4gIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IHN0cmluZyB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuX3N0YXJrbmV0VHJhbnNhY3Rpb25EYXRhO1xuICAgIGlmICghZGF0YSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgdHlwZTogJ0lOVk9LRScsXG4gICAgICB2ZXJzaW9uOiAnMHgzJyxcbiAgICAgIHNlbmRlcl9hZGRyZXNzOiBkYXRhLnNlbmRlckFkZHJlc3MsXG4gICAgICBjYWxsZGF0YTogcmVzb2x2ZUNvbXBpbGVkQ2FsbGRhdGEoZGF0YSksXG4gICAgICBzaWduYXR1cmU6IGRhdGEuc2lnbmF0dXJlIHx8IFtdLFxuICAgICAgbm9uY2U6IGRhdGEubm9uY2UsXG4gICAgICByZXNvdXJjZV9ib3VuZHM6IHJlc29sdmVSZXNvdXJjZUJvdW5kcyhkYXRhKSxcbiAgICAgIHRpcDogZGF0YS50aXAgfHwgJzB4MCcsXG4gICAgICBwYXltYXN0ZXJfZGF0YTogW10sXG4gICAgICBhY2NvdW50X2RlcGxveW1lbnRfZGF0YTogW10sXG4gICAgICBub25jZV9kYXRhX2F2YWlsYWJpbGl0eV9tb2RlOiAnTDEnLFxuICAgICAgZmVlX2RhdGFfYXZhaWxhYmlsaXR5X21vZGU6ICdMMScsXG4gICAgfSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihfa2V5OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { BaseAddress, BaseKey, BaseTransactionBuilder } from '@bitgo-beta/sdk-core';
2
2
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
3
  import BigNumber from 'bignumber.js';
4
- import { StarknetTransactionType, StarknetCall } from './iface';
4
+ import { StarknetTransactionType, StarknetCall, StarknetResourceBounds } from './iface';
5
5
  import { Transaction } from './transaction';
6
6
  export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
7
7
  protected _transaction: Transaction;
@@ -10,10 +10,14 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
10
10
  protected _calls: StarknetCall[];
11
11
  protected _nonce?: string;
12
12
  protected _chainId?: string;
13
+ protected _resourceBounds: StarknetResourceBounds;
14
+ protected _tip: string;
13
15
  constructor(_coinConfig: Readonly<CoinConfig>);
14
16
  sender(address: string, pubKey?: string): this;
15
17
  nonce(nonce: string): this;
16
18
  chainId(chainId: string): this;
19
+ resourceBounds(rb: StarknetResourceBounds): this;
20
+ tip(tip: string): this;
17
21
  /** @inheritdoc */
18
22
  get transaction(): Transaction;
19
23
  /** @inheritdoc */
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EAIvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAA2B,uBAAuB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,CAAM;IACtC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAEhB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAKtC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAoB9C,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKrC,kBAAkB;IAClB,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,kBAAkB;IAClB,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAEvC;IAED,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IASlC,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAM3C,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAS/B,kBAAkB;IAClB,mBAAmB,CAAC,YAAY,EAAE,WAAW,GAAG,IAAI;IAYpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAMrC,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAMpD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAKjE,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,uBAAuB,CAAC;IAElE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAc3D,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW;CAGzD"}
1
+ {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EAIvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAA2B,uBAAuB,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,CAAM;IACtC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,eAAe,EAAE,sBAAsB,CAA2B;IAC5E,SAAS,CAAC,IAAI,SAAS;gBAEX,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAKtC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAoB9C,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK9B,cAAc,CAAC,EAAE,EAAE,sBAAsB,GAAG,IAAI;IAKhD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK7B,kBAAkB;IAClB,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,kBAAkB;IAClB,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAEvC;IAED,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAelC,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAM3C,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAS/B,kBAAkB;IAClB,mBAAmB,CAAC,YAAY,EAAE,WAAW,GAAG,IAAI;IAYpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAMrC,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAMpD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAKjE,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,uBAAuB,CAAC;IAElE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAgC3D,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW;CAGzD"}
@@ -5,12 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.TransactionBuilder = void 0;
7
7
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const constants_1 = require("./constants");
8
9
  const transaction_1 = require("./transaction");
9
10
  const utils_1 = __importDefault(require("./utils"));
10
11
  class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
11
12
  constructor(_coinConfig) {
12
13
  super(_coinConfig);
13
14
  this._calls = [];
15
+ this._resourceBounds = (0, constants_1.defaultResourceBounds)();
16
+ this._tip = '0x0';
14
17
  this._transaction = new transaction_1.Transaction(_coinConfig);
15
18
  }
16
19
  sender(address, pubKey) {
@@ -38,6 +41,14 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
38
41
  this._chainId = chainId;
39
42
  return this;
40
43
  }
44
+ resourceBounds(rb) {
45
+ this._resourceBounds = rb;
46
+ return this;
47
+ }
48
+ tip(tip) {
49
+ this._tip = tip;
50
+ return this;
51
+ }
41
52
  /** @inheritdoc */
42
53
  get transaction() {
43
54
  return this._transaction;
@@ -53,6 +64,12 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
53
64
  this._calls = data.calls || [];
54
65
  this._nonce = data.nonce;
55
66
  this._chainId = data.chainId;
67
+ if (data.resourceBounds) {
68
+ this._resourceBounds = data.resourceBounds;
69
+ }
70
+ if (data.tip) {
71
+ this._tip = data.tip;
72
+ }
56
73
  }
57
74
  /** @inheritdoc */
58
75
  validateAddress(address) {
@@ -100,12 +117,28 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
100
117
  }
101
118
  /** @inheritdoc */
102
119
  async buildImplementation() {
120
+ const sender = this._sender;
121
+ const chainId = this._chainId;
122
+ const nonce = this._nonce;
123
+ const compiledCalldata = utils_1.default.compileExecuteCalldata(this._calls);
124
+ const transactionHash = utils_1.default.calculateInvokeTransactionHash({
125
+ senderAddress: sender,
126
+ compiledCalldata,
127
+ chainId,
128
+ nonce,
129
+ resourceBounds: this._resourceBounds,
130
+ tip: this._tip,
131
+ });
103
132
  const data = {
104
- senderAddress: this._sender,
133
+ senderAddress: sender,
105
134
  calls: this._calls,
106
- nonce: this._nonce,
107
- chainId: this._chainId,
135
+ nonce,
136
+ chainId,
108
137
  transactionType: this.transactionType,
138
+ resourceBounds: this._resourceBounds,
139
+ tip: this._tip,
140
+ transactionHash,
141
+ compiledCalldata,
109
142
  };
110
143
  this._transaction.starknetTransactionData = data;
111
144
  return this._transaction;
@@ -116,4 +149,4 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
116
149
  }
117
150
  }
118
151
  exports.TransactionBuilder = TransactionBuilder;
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBTzhCO0FBSTlCLCtDQUE0QztBQUM1QyxvREFBNEI7QUFFNUIsTUFBc0Isa0JBQW1CLFNBQVEsaUNBQXNCO0lBUXJFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBTFgsV0FBTSxHQUFtQixFQUFFLENBQUM7UUFNcEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLHlCQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFlLEVBQUUsTUFBZTtRQUM1QyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsZUFBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxtQ0FBbUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUNqRixDQUFDO1FBQ0QsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxlQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDcEMsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxDQUFDO1lBQ3BFLENBQUM7WUFDRCxNQUFNLGNBQWMsR0FBRyxlQUFLLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0QsSUFBSSxlQUFLLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLEtBQUssZUFBSyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQy9FLE1BQU0sSUFBSSxnQ0FBcUIsQ0FDN0IsK0NBQStDLGNBQWMsU0FBUyxPQUFPLEVBQUUsQ0FDaEYsQ0FBQztZQUNKLENBQUM7WUFDRCxJ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QWtCO0lBQ2xCLHNCQUFzQixDQUFDLGNBQXNCO1FBQzNDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksZ0NBQXFCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUM5RCxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFJRCxrQkFBa0I7SUFDUixLQUFLLENBQUMsbUJBQW1CO1FBQ2pDLE1BQU0sSUFBSSxHQUE0QjtZQUNwQyxhQUFhLEVBQUUsSUFBSSxDQUFDLE9BQVE7WUFDNUIsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ2xCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTztZQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVM7WUFDdkIsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1NBQ3RDLENBQUM7UUFFRixJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztRQUNqRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELDhGQUE4RjtJQUNwRixrQkFBa0IsQ0FBQyxJQUFhO1FBQ3hDLE1BQU0sSUFBSSxvQ0FBeUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzVELENBQUM7Q0FDRjtBQXBJRCxnREFvSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlQWRkcmVzcyxcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlcixcbiAgQnVpbGRUcmFuc2FjdGlvbkVycm9yLFxuICBNZXRob2ROb3RJbXBsZW1lbnRlZEVycm9yLFxuICBTaWduaW5nRXJyb3IsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhLCBTdGFya25ldFRyYW5zYWN0aW9uVHlwZSwgU3RhcmtuZXRDYWxsIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuICBwcm90ZWN0ZWQgX3NlbmRlcj86IHN0cmluZztcbiAgcHJvdGVjdGVkIF9wdWJsaWNLZXk/OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfY2FsbHM6IFN0YXJrbmV0Q2FsbFtdID0gW107XG4gIHByb3RlY3RlZCBfbm9uY2U/OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfY2hhaW5JZD86IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSBuZXcgVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHVibGljIHNlbmRlcihhZGRyZXNzOiBzdHJpbmcsIHB1YktleT86IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghYWRkcmVzcyB8fCAhdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgb3IgbWlzc2luZyBhZGRyZXNzLCBnb3Q6ICcgKyBhZGRyZXNzKTtcbiAgICB9XG4gICAgaWYgKHB1YktleSkge1xuICAgICAgaWYgKCF1dGlscy5pc1ZhbGlkUHVibGljS2V5KHB1YktleSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBwdWJLZXksIGdvdDogJyArIHB1YktleSk7XG4gICAgICB9XG4gICAgICBjb25zdCBkZXJpdmVkQWRkcmVzcyA9IHV0aWxzLmdldEFkZHJlc3NGcm9tUHVibGljS2V5KHB1YktleSk7XG4gICAgICBpZiAodXRpbHMubm9ybWFsaXplQWRkcmVzcyhkZXJpdmVkQWRkcmVzcykgIT09IHV0aWxzLm5vcm1hbGl6ZUFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgICBgQWRkcmVzcyBkb2VzIG5vdCBtYXRjaCBwdWJsaWMga2V5LiBFeHBlY3RlZCAke2Rlcml2ZWRBZGRyZXNzfSwgZ290ICR7YWRkcmVzc31gXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLl9wdWJsaWNLZXkgPSBwdWJLZXk7XG4gICAgfVxuICAgIHRoaXMuX3NlbmRlciA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgbm9uY2Uobm9uY2U6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuX25vbmNlID0gbm9uY2U7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgY2hhaW5JZChjaGFpbklkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLl9jaGFpbklkID0gY2hhaW5JZDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBzZXQgdHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbjtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHg7XG4gICAgY29uc3QgZGF0YSA9IHR4LnN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhO1xuICAgIHRoaXMuX3NlbmRlciA9IGRhdGEuc2VuZGVyQWRkcmVzcztcbiAgICB0aGlzLl9jYWxscyA9IGRhdGEuY2FsbHMgfHwgW107XG4gICAgdGhpcy5fbm9uY2UgPSBkYXRhLm5vbmNlO1xuICAgIHRoaXMuX2NoYWluSWQgPSBkYXRhLmNoYWluSWQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVBZGRyZXNzKGFkZHJlc3M6IEJhc2VBZGRyZXNzKTogdm9pZCB7XG4gICAgaWYgKCF1dGlscy5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzLmFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGFkZHJlc3MnKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVLZXkoa2V5OiBCYXNlS2V5KTogdm9pZCB7XG4gICAgaWYgKCFrZXkgfHwgIWtleS5rZXkpIHtcbiAgICAgIHRocm93IG5ldyBTaWduaW5nRXJyb3IoJ0tleSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRQcml2YXRlS2V5KGtleS5rZXkpKSB7XG4gICAgICB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdJbnZhbGlkIHByaXZhdGUga2V5Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVHJhbnNhY3Rpb24oX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIGlmICghdGhpcy5fc2VuZGVyIHx8ICF1dGlscy5pc1ZhbGlkQWRkcmVzcyh0aGlzLl9zZW5kZXIpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIG9yIG1pc3Npbmcgc2VuZGVyIGFkZHJlc3MnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLl9jaGFpbklkKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdDaGFpbiBJRCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fbm9uY2UgPT09IHVuZGVmaW5lZCB8fCB0aGlzLl9ub25jZSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignTm9uY2UgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVWYWx1ZSh2YWx1ZTogQmlnTnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlLmlzTmFOKCkgfHwgdmFsdWUuaXNOZWdhdGl2ZSgpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHZhbHVlOiAke3ZhbHVlLnRvU3RyaW5nKCl9YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghcmF3VHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1JhdyB0cmFuc2FjdGlvbiBpcyBlbXB0eScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBTdGFya25ldFRyYW5zYWN0aW9uVHlwZTtcblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IGRhdGE6IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgc2VuZGVyQWRkcmVzczogdGhpcy5fc2VuZGVyISxcbiAgICAgIGNhbGxzOiB0aGlzLl9jYWxscyxcbiAgICAgIG5vbmNlOiB0aGlzLl9ub25jZSEsXG4gICAgICBjaGFpbklkOiB0aGlzLl9jaGFpbklkISxcbiAgICAgIHRyYW5zYWN0aW9uVHlwZTogdGhpcy50cmFuc2FjdGlvblR5cGUsXG4gICAgfTtcblxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhID0gZGF0YTtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICAvLyBTdGFya25ldCBpcyBUU1Mtb25seTsgc2lnbmluZyBoYXBwZW5zIHZpYSB0aHJlc2hvbGQgRUNEU0EgaW4gd2FsbGV0LXBsYXRmb3JtL09WQywgbm90IGhlcmUuXG4gIHByb3RlY3RlZCBzaWduSW1wbGVtZW50YXRpb24oX2tleTogQmFzZUtleSk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aHJvdyBuZXcgTWV0aG9kTm90SW1wbGVtZW50ZWRFcnJvcignc2lnbkltcGxlbWVudGF0aW9uJyk7XG4gIH1cbn1cbiJdfQ==
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBTzhCO0FBSTlCLDJDQUFvRDtBQUNwRCwrQ0FBNEM7QUFDNUMsb0RBQTRCO0FBRTVCLE1BQXNCLGtCQUFtQixTQUFRLGlDQUFzQjtJQVVyRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQVBYLFdBQU0sR0FBbUIsRUFBRSxDQUFDO1FBRzVCLG9CQUFlLEdBQTJCLElBQUEsaUNBQXFCLEdBQUUsQ0FBQztRQUNsRSxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBSXJCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSx5QkFBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBZSxFQUFFLE1BQWU7UUFDNUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLGVBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUMvQyxNQUFNLElBQUksZ0NBQXFCLENBQUMsbUNBQW1DLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDakYsQ0FBQztRQUNELElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsZUFBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ3BDLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyx1QkFBdUIsR0FBRyxNQUFNLENBQUMsQ0FBQztZQUNwRSxDQUFDO1lBQ0QsTUFBTSxjQUFjLEdBQUcsZUFBSyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdELElBQUksZUFBSyxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxLQUFLLGVBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUMv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SSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRW5FLE1BQU0sZUFBZSxHQUFHLGVBQUssQ0FBQyw4QkFBOEIsQ0FBQztZQUMzRCxhQUFhLEVBQUUsTUFBTTtZQUNyQixnQkFBZ0I7WUFDaEIsT0FBTztZQUNQLEtBQUs7WUFDTCxjQUFjLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDcEMsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxJQUFJLEdBQTRCO1lBQ3BDLGFBQWEsRUFBRSxNQUFNO1lBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNsQixLQUFLO1lBQ0wsT0FBTztZQUNQLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtZQUNyQyxjQUFjLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDcEMsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2QsZUFBZTtZQUNmLGdCQUFnQjtTQUNqQixDQUFDO1FBRUYsSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDakQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCw4RkFBOEY7SUFDcEYsa0JBQWtCLENBQUMsSUFBYTtRQUN4QyxNQUFNLElBQUksb0NBQXlCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0Y7QUF4S0QsZ0RBd0tDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUFkZHJlc3MsXG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgTWV0aG9kTm90SW1wbGVtZW50ZWRFcnJvcixcbiAgU2lnbmluZ0Vycm9yLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBTdGFya25ldFRyYW5zYWN0aW9uRGF0YSwgU3RhcmtuZXRUcmFuc2FjdGlvblR5cGUsIFN0YXJrbmV0Q2FsbCwgU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgZGVmYXVsdFJlc291cmNlQm91bmRzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlciBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF9zZW5kZXI/OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfcHVibGljS2V5Pzogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2NhbGxzOiBTdGFya25ldENhbGxbXSA9IFtdO1xuICBwcm90ZWN0ZWQgX25vbmNlPzogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2NoYWluSWQ/OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfcmVzb3VyY2VCb3VuZHM6IFN0YXJrbmV0UmVzb3VyY2VCb3VuZHMgPSBkZWZhdWx0UmVzb3VyY2VCb3VuZHMoKTtcbiAgcHJvdGVjdGVkIF90aXAgPSAnMHgwJztcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSBuZXcgVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHVibGljIHNlbmRlcihhZGRyZXNzOiBzdHJpbmcsIHB1YktleT86IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghYWRkcmVzcyB8fCAhdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgb3IgbWlzc2luZyBhZGRyZXNzLCBnb3Q6ICcgKyBhZGRyZXNzKTtcbiAgICB9XG4gICAgaWYgKHB1YktleSkge1xuICAgICAgaWYgKCF1dGlscy5pc1ZhbGlkUHVibGljS2V5KHB1YktleSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBwdWJLZXksIGdvdDogJyArIHB1YktleSk7XG4gICAgICB9XG4gICAgICBjb25zdCBkZXJpdmVkQWRkcmVzcyA9IHV0aWxzLmdldEFkZHJlc3NGcm9tUHVibGljS2V5KHB1YktleSk7XG4gICAgICBpZiAodXRpbHMubm9ybWFsaXplQWRkcmVzcyhkZXJpdmVkQWRkcmVzcykgIT09IHV0aWxzLm5vcm1hbGl6ZUFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgICBgQWRkcmVzcyBkb2VzIG5vdCBtYXRjaCBwdWJsaWMga2V5LiBFeHBlY3RlZCAke2Rlcml2ZWRBZGRyZXNzfSwgZ290ICR7YWRkcmVzc31gXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLl9wdWJsaWNLZXkgPSBwdWJLZXk7XG4gICAgfVxuICAgIHRoaXMuX3NlbmRlciA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgbm9uY2Uobm9uY2U6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuX25vbmNlID0gbm9uY2U7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgY2hhaW5JZChjaGFpbklkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLl9jaGFpbklkID0gY2hhaW5JZDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyByZXNvdXJjZUJvdW5kcyhyYjogU3RhcmtuZXRSZXNvdXJjZUJvdW5kcyk6IHRoaXMge1xuICAgIHRoaXMuX3Jlc291cmNlQm91bmRzID0gcmI7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgdGlwKHRpcDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5fdGlwID0gdGlwO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldCB0cmFuc2FjdGlvbigpOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHNldCB0cmFuc2FjdGlvbih0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uO1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0eDtcbiAgICBjb25zdCBkYXRhID0gdHguc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGE7XG4gICAgdGhpcy5fc2VuZGVyID0gZGF0YS5zZW5kZXJBZGRyZXNzO1xuICAgIHRoaXMuX2NhbGxzID0gZGF0YS5jYWxscyB8fCBbXTtcbiAgICB0aGlzLl9ub25jZSA9IGRhdGEubm9uY2U7XG4gICAgdGhpcy5fY2hhaW5JZCA9IGRhdGEuY2hhaW5JZDtcbiAgICBpZiAoZGF0YS5yZXNvdXJjZUJvdW5kcykge1xuICAgICAgdGhpcy5fcmVzb3VyY2VCb3VuZHMgPSBkYXRhLnJlc291cmNlQm91bmRzO1xuICAgIH1cbiAgICBpZiAoZGF0YS50aXApIHtcbiAgICAgIHRoaXMuX3RpcCA9IGRhdGEudGlwO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MpOiB2b2lkIHtcbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUtleShrZXk6IEJhc2VLZXkpOiB2b2lkIHtcbiAgICBpZiAoIWtleSB8fCAha2V5LmtleSkge1xuICAgICAgdGhyb3cgbmV3IFNpZ25pbmdFcnJvcignS2V5IGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdXRpbHMuaXNWYWxpZFByaXZhdGVLZXkoa2V5LmtleSkpIHtcbiAgICAgIHRocm93IG5ldyBTaWduaW5nRXJyb3IoJ0ludmFsaWQgcHJpdmF0ZSBrZXknKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbihfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9zZW5kZXIgfHwgIXV0aWxzLmlzVmFsaWRBZGRyZXNzKHRoaXMuX3NlbmRlcikpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgb3IgbWlzc2luZyBzZW5kZXIgYWRkcmVzcycpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuX2NoYWluSWQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0NoYWluIElEIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9ub25jZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuX25vbmNlID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdOb25jZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUuaXNOYU4oKSB8fCB2YWx1ZS5pc05lZ2F0aXZlKCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdmFsdWU6ICR7dmFsdWUudG9TdHJpbmcoKX1gKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFyYXdUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignUmF3IHRyYW5zYWN0aW9uIGlzIGVtcHR5Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFN0YXJrbmV0VHJhbnNhY3Rpb25UeXBlO1xuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3Qgc2VuZGVyID0gdGhpcy5fc2VuZGVyIGFzIHN0cmluZztcbiAgICBjb25zdCBjaGFpbklkID0gdGhpcy5fY2hhaW5JZCBhcyBzdHJpbmc7XG4gICAgY29uc3Qgbm9uY2UgPSB0aGlzLl9ub25jZSBhcyBzdHJpbmc7XG4gICAgY29uc3QgY29tcGlsZWRDYWxsZGF0YSA9IHV0aWxzLmNvbXBpbGVFeGVjdXRlQ2FsbGRhdGEodGhpcy5fY2FsbHMpO1xuXG4gICAgY29uc3QgdHJhbnNhY3Rpb25IYXNoID0gdXRpbHMuY2FsY3VsYXRlSW52b2tlVHJhbnNhY3Rpb25IYXNoKHtcbiAgICAgIHNlbmRlckFkZHJlc3M6IHNlbmRlcixcbiAgICAgIGNvbXBpbGVkQ2FsbGRhdGEsXG4gICAgICBjaGFpbklkLFxuICAgICAgbm9uY2UsXG4gICAgICByZXNvdXJjZUJvdW5kczogdGhpcy5fcmVzb3VyY2VCb3VuZHMsXG4gICAgICB0aXA6IHRoaXMuX3RpcCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGRhdGE6IFN0YXJrbmV0VHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgc2VuZGVyQWRkcmVzczogc2VuZGVyLFxuICAgICAgY2FsbHM6IHRoaXMuX2NhbGxzLFxuICAgICAgbm9uY2UsXG4gICAgICBjaGFpbklkLFxuICAgICAgdHJhbnNhY3Rpb25UeXBlOiB0aGlzLnRyYW5zYWN0aW9uVHlwZSxcbiAgICAgIHJlc291cmNlQm91bmRzOiB0aGlzLl9yZXNvdXJjZUJvdW5kcyxcbiAgICAgIHRpcDogdGhpcy5fdGlwLFxuICAgICAgdHJhbnNhY3Rpb25IYXNoLFxuICAgICAgY29tcGlsZWRDYWxsZGF0YSxcbiAgICB9O1xuXG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uc3RhcmtuZXRUcmFuc2FjdGlvbkRhdGEgPSBkYXRhO1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8vIFN0YXJrbmV0IGlzIFRTUy1vbmx5OyBzaWduaW5nIGhhcHBlbnMgdmlhIHRocmVzaG9sZCBFQ0RTQSBpbiB3YWxsZXQtcGxhdGZvcm0vT1ZDLCBub3QgaGVyZS5cbiAgcHJvdGVjdGVkIHNpZ25JbXBsZW1lbnRhdGlvbihfa2V5OiBCYXNlS2V5KTogVHJhbnNhY3Rpb24ge1xuICAgIHRocm93IG5ldyBNZXRob2ROb3RJbXBsZW1lbnRlZEVycm9yKCdzaWduSW1wbGVtZW50YXRpb24nKTtcbiAgfVxufVxuIl19
@@ -5,10 +5,12 @@ import { StarknetTransactionType } from './iface';
5
5
  export declare class TransferBuilder extends TransactionBuilder {
6
6
  protected _receiverAddress?: string;
7
7
  protected _amount?: string;
8
+ protected _tokenContractAddress: string;
8
9
  constructor(_coinConfig: Readonly<CoinConfig>);
9
10
  protected get transactionType(): StarknetTransactionType;
10
11
  receiverId(address: string): this;
11
12
  amount(value: string): this;
13
+ tokenContractAddress(address: string): this;
12
14
  /** @inheritdoc */
13
15
  initBuilder(tx: Transaction): void;
14
16
  /** @inheritdoc */
@@ -1 +1 @@
1
- {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAgB,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAIhE,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;gBAEf,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,uBAAuB,CAEvD;IAEM,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQjC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IASlC,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAWlC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAc3D,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,gBAAgB;CAiBzB"}
1
+ {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAgB,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAIhE,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAuB;gBAElD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,uBAAuB,CAEvD;IAEM,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQjC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS3B,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQlD,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAYlC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAc3D,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,gBAAgB;CAiBzB"}
@@ -12,6 +12,7 @@ const utils_1 = __importDefault(require("./utils"));
12
12
  class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
13
13
  constructor(_coinConfig) {
14
14
  super(_coinConfig);
15
+ this._tokenContractAddress = constants_1.STRK_TOKEN_CONTRACT;
15
16
  }
16
17
  get transactionType() {
17
18
  return iface_1.StarknetTransactionType.INVOKE;
@@ -31,6 +32,13 @@ class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
31
32
  this._amount = value;
32
33
  return this;
33
34
  }
35
+ tokenContractAddress(address) {
36
+ if (!address || !utils_1.default.isValidAddress(address)) {
37
+ throw new sdk_core_1.BuildTransactionError('Invalid token contract address, got: ' + address);
38
+ }
39
+ this._tokenContractAddress = address;
40
+ return this;
41
+ }
34
42
  /** @inheritdoc */
35
43
  initBuilder(tx) {
36
44
  super.initBuilder(tx);
@@ -39,6 +47,7 @@ class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
39
47
  if (transfer) {
40
48
  this._receiverAddress = transfer.recipient;
41
49
  this._amount = transfer.amount;
50
+ this._tokenContractAddress = transfer.tokenContract;
42
51
  }
43
52
  }
44
53
  }
@@ -46,7 +55,7 @@ class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
46
55
  async buildImplementation() {
47
56
  this.validateTransfer();
48
57
  const transferCall = {
49
- contractAddress: constants_1.STRK_TOKEN_CONTRACT,
58
+ contractAddress: this._tokenContractAddress,
50
59
  entrypoint: 'transfer',
51
60
  calldata: this.compileTransferCalldata(this._receiverAddress, this._amount),
52
61
  };
@@ -76,4 +85,4 @@ class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
76
85
  }
77
86
  }
78
87
  exports.TransferBuilder = TransferBuilder;
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTZEO0FBRTdELDZEQUEwRDtBQUUxRCxtQ0FBZ0U7QUFDaEUsMkNBQTREO0FBQzVELG9EQUE0QjtBQUU1QixNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBSXJELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywrQkFBdUIsQ0FBQyxNQUFNLENBQUM7SUFDeEMsQ0FBQztJQUVNLFVBQVUsQ0FBQyxPQUFlO1FBQy9CLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxlQUFLLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTSxJQUFJLGdDQUFxQixDQUFDLDRDQUE0QyxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQzFGLENBQUM7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFhO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixJQUFJLEdBQUcsR0FBRyxFQUFFLEVBQUUsQ0FBQztZQUNiLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxtQkFBbUIsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMzQixNQUFNLFFBQVEsR0FBRyxlQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pELElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUNqQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDUixLQUFLLENBQUMsbUJBQW1CO1FBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLE1BQU0sWUFBWSxHQUFpQjtZQUNqQyxlQUFlLEVBQUUsK0JBQW1CO1lBQ3BDLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLFFBQVEsRUFBRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGdCQUEwQixFQUFFLElBQUksQ0FBQyxPQUFpQixDQUFDO1NBQ2hHLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFN0IsT0FBTyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU8sdUJBQXVCLENBQUMsU0FBaUIsRUFBRSxNQUFjO1FBQy9ELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLFNBQVMsR0FBRyxvQkFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksZ0NBQXFCLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUMxRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksZ0NBQXFCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLGVBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDeEMsTUFBTSxJQUFJLGdDQUFxQixDQUFDLDJCQUEyQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLGVBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztZQUNqRCxNQUFNLElBQUksZ0NBQXFCLENBQUMsNkJBQTZCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDeEYsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTlFRCwwQ0E4RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgU3RhcmtuZXRDYWxsLCBTdGFya25ldFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgU1RSS19UT0tFTl9DT05UUkFDVCwgTUFTS18xMjggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3JlY2VpdmVyQWRkcmVzcz86IHN0cmluZztcbiAgcHJvdGVjdGVkIF9hbW91bnQ/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogU3RhcmtuZXRUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBTdGFya25ldFRyYW5zYWN0aW9uVHlwZS5JTlZPS0U7XG4gIH1cblxuICBwdWJsaWMgcmVjZWl2ZXJJZChhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWFkZHJlc3MgfHwgIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIG9yIG1pc3NpbmcgcmVjZWl2ZXIgYWRkcmVzcywgZ290OiAnICsgYWRkcmVzcyk7XG4gICAgfVxuICAgIHRoaXMuX3JlY2VpdmVyQWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgYW1vdW50KHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCB2YWwgPSBCaWdJbnQodmFsdWUpO1xuICAgIGlmICh2YWwgPCAwbikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCBhbW91bnQ6ICR7dmFsdWV9YCk7XG4gICAgfVxuICAgIHRoaXMuX2Ftb3VudCA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICBpZiAodGhpcy5fY2FsbHMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgdHJhbnNmZXIgPSB1dGlscy5wYXJzZVRyYW5zZmVyQ2FsbCh0aGlzLl9jYWxsc1swXSk7XG4gICAgICBpZiAodHJhbnNmZXIpIHtcbiAgICAgICAgdGhpcy5fcmVjZWl2ZXJBZGRyZXNzID0gdHJhbnNmZXIucmVjaXBpZW50O1xuICAgICAgICB0aGlzLl9hbW91bnQgPSB0cmFuc2Zlci5hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNmZXIoKTtcblxuICAgIGNvbnN0IHRyYW5zZmVyQ2FsbDogU3RhcmtuZXRDYWxsID0ge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBTVFJLX1RPS0VOX0NPTlRSQUNULFxuICAgICAgZW50cnlwb2ludDogJ3RyYW5zZmVyJyxcbiAgICAgIGNhbGxkYXRhOiB0aGlzLmNvbXBpbGVUcmFuc2ZlckNhbGxkYXRhKHRoaXMuX3JlY2VpdmVyQWRkcmVzcyBhcyBzdHJpbmcsIHRoaXMuX2Ftb3VudCBhcyBzdHJpbmcpLFxuICAgIH07XG5cbiAgICB0aGlzLl9jYWxscyA9IFt0cmFuc2ZlckNhbGxdO1xuXG4gICAgcmV0dXJuIHN1cGVyLmJ1aWxkSW1wbGVtZW50YXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgY29tcGlsZVRyYW5zZmVyQ2FsbGRhdGEocmVjaXBpZW50OiBzdHJpbmcsIGFtb3VudDogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGFtb3VudEJpZyA9IEJpZ0ludChhbW91bnQpO1xuICAgIHJldHVybiBbcmVjaXBpZW50LCAnMHgnICsgKGFtb3VudEJpZyAmIE1BU0tfMTI4KS50b1N0cmluZygxNiksICcweCcgKyAoYW1vdW50QmlnID4+IDEyOG4pLnRvU3RyaW5nKDE2KV07XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlVHJhbnNmZXIoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9zZW5kZXIpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1NlbmRlciBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuX3JlY2VpdmVyQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignUmVjZWl2ZXIgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLl9hbW91bnQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0Ftb3VudCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKHRoaXMuX3NlbmRlcikpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgc2VuZGVyIGFkZHJlc3M6ICR7dGhpcy5fc2VuZGVyfWApO1xuICAgIH1cbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKHRoaXMuX3JlY2VpdmVyQWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgcmVjZWl2ZXIgYWRkcmVzczogJHt0aGlzLl9yZWNlaXZlckFkZHJlc3N9YCk7XG4gICAgfVxuICB9XG59XG4iXX0=
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTZEO0FBRTdELDZEQUEwRDtBQUUxRCxtQ0FBZ0U7QUFDaEUsMkNBQTREO0FBQzVELG9EQUE0QjtBQUU1QixNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBS3JELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBSFgsMEJBQXFCLEdBQVcsK0JBQW1CLENBQUM7SUFJOUQsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLCtCQUF1QixDQUFDLE1BQU0sQ0FBQztJQUN4QyxDQUFDO0lBRU0sVUFBVSxDQUFDLE9BQWU7UUFDL0IsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLGVBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUMvQyxNQUFNLElBQUksZ0NBQXFCLENBQUMsNENBQTRDLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDMUYsQ0FBQztRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUM7UUFDaEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQWE7UUFDekIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksR0FBRyxHQUFHLEVBQUUsRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLG1CQUFtQixLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxPQUFlO1FBQ3pDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxlQUFLLENBQUMsY0FB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eyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgU3RhcmtuZXRDYWxsLCBTdGFya25ldFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgU1RSS19UT0tFTl9DT05UUkFDVCwgTUFTS18xMjggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3JlY2VpdmVyQWRkcmVzcz86IHN0cmluZztcbiAgcHJvdGVjdGVkIF9hbW91bnQ/OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfdG9rZW5Db250cmFjdEFkZHJlc3M6IHN0cmluZyA9IFNUUktfVE9LRU5fQ09OVFJBQ1Q7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogU3RhcmtuZXRUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBTdGFya25ldFRyYW5zYWN0aW9uVHlwZS5JTlZPS0U7XG4gIH1cblxuICBwdWJsaWMgcmVjZWl2ZXJJZChhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWFkZHJlc3MgfHwgIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIG9yIG1pc3NpbmcgcmVjZWl2ZXIgYWRkcmVzcywgZ290OiAnICsgYWRkcmVzcyk7XG4gICAgfVxuICAgIHRoaXMuX3JlY2VpdmVyQWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgYW1vdW50KHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCB2YWwgPSBCaWdJbnQodmFsdWUpO1xuICAgIGlmICh2YWwgPCAwbikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCBhbW91bnQ6ICR7dmFsdWV9YCk7XG4gICAgfVxuICAgIHRoaXMuX2Ftb3VudCA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHRva2VuQ29udHJhY3RBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghYWRkcmVzcyB8fCAhdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdG9rZW4gY29udHJhY3QgYWRkcmVzcywgZ290OiAnICsgYWRkcmVzcyk7XG4gICAgfVxuICAgIHRoaXMuX3Rva2VuQ29udHJhY3RBZGRyZXNzID0gYWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgaWYgKHRoaXMuX2NhbGxzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHRyYW5zZmVyID0gdXRpbHMucGFyc2VUcmFuc2ZlckNhbGwodGhpcy5fY2FsbHNbMF0pO1xuICAgICAgaWYgKHRyYW5zZmVyKSB7XG4gICAgICAgIHRoaXMuX3JlY2VpdmVyQWRkcmVzcyA9IHRyYW5zZmVyLnJlY2lwaWVudDtcbiAgICAgICAgdGhpcy5fYW1vdW50ID0gdHJhbnNmZXIuYW1vdW50O1xuICAgICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyA9IHRyYW5zZmVyLnRva2VuQ29udHJhY3Q7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNmZXIoKTtcblxuICAgIGNvbnN0IHRyYW5zZmVyQ2FsbDogU3RhcmtuZXRDYWxsID0ge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyxcbiAgICAgIGVudHJ5cG9pbnQ6ICd0cmFuc2ZlcicsXG4gICAgICBjYWxsZGF0YTogdGhpcy5jb21waWxlVHJhbnNmZXJDYWxsZGF0YSh0aGlzLl9yZWNlaXZlckFkZHJlc3MgYXMgc3RyaW5nLCB0aGlzLl9hbW91bnQgYXMgc3RyaW5nKSxcbiAgICB9O1xuXG4gICAgdGhpcy5fY2FsbHMgPSBbdHJhbnNmZXJDYWxsXTtcblxuICAgIHJldHVybiBzdXBlci5idWlsZEltcGxlbWVudGF0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIGNvbXBpbGVUcmFuc2ZlckNhbGxkYXRhKHJlY2lwaWVudDogc3RyaW5nLCBhbW91bnQ6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBhbW91bnRCaWcgPSBCaWdJbnQoYW1vdW50KTtcbiAgICByZXR1cm4gW3JlY2lwaWVudCwgJzB4JyArIChhbW91bnRCaWcgJiBNQVNLXzEyOCkudG9TdHJpbmcoMTYpLCAnMHgnICsgKGFtb3VudEJpZyA+PiAxMjhuKS50b1N0cmluZygxNildO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZVRyYW5zZmVyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fc2VuZGVyKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdTZW5kZXIgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLl9yZWNlaXZlckFkZHJlc3MpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1JlY2VpdmVyIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fYW1vdW50KSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdBbW91bnQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF1dGlscy5pc1ZhbGlkQWRkcmVzcyh0aGlzLl9zZW5kZXIpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHNlbmRlciBhZGRyZXNzOiAke3RoaXMuX3NlbmRlcn1gKTtcbiAgICB9XG4gICAgaWYgKCF1dGlscy5pc1ZhbGlkQWRkcmVzcyh0aGlzLl9yZWNlaXZlckFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHJlY2VpdmVyIGFkZHJlc3M6ICR7dGhpcy5fcmVjZWl2ZXJBZGRyZXNzfWApO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { StarknetTransactionData, StarknetCall, ParsedTransferData } from './iface';
1
+ import { StarknetTransactionData, StarknetCall, ParsedTransferData, InvokeTransactionHashParams } from './iface';
2
2
  /**
3
3
  * Normalize a Starknet address to canonical form: 0x + 64 hex chars, zero-padded.
4
4
  */
@@ -63,6 +63,24 @@ export declare function generateKeyPair(seed?: Buffer): {
63
63
  * Validate raw transaction data has required fields.
64
64
  */
65
65
  export declare function validateRawTransaction(tx: StarknetTransactionData): void;
66
+ /**
67
+ * Encode an ASCII string (max 31 chars) as a felt252.
68
+ */
69
+ export declare function encodeShortString(str: string): bigint;
70
+ /**
71
+ * Compute the Starknet function selector: keccak256(name) masked to 250 bits.
72
+ * @scure/starknet's keccak() already applies the 250-bit mask.
73
+ */
74
+ export declare function getSelectorFromName(name: string): bigint;
75
+ /**
76
+ * Compile calls into the Cairo 1 multicall __execute__ calldata format.
77
+ * Format: [num_calls, to_0, selector_0, data_len_0, ...data_0, to_1, ...]
78
+ */
79
+ export declare function compileExecuteCalldata(calls: StarknetCall[]): string[];
80
+ /**
81
+ * Compute the Poseidon V3 INVOKE transaction hash per SNIP-8.
82
+ */
83
+ export declare function calculateInvokeTransactionHash(params: InvokeTransactionHashParams): string;
66
84
  declare const _default: {
67
85
  isValidAddress: typeof isValidAddress;
68
86
  isValidPublicKey: typeof isValidPublicKey;
@@ -77,6 +95,10 @@ declare const _default: {
77
95
  parseTransferCall: typeof parseTransferCall;
78
96
  generateKeyPair: typeof generateKeyPair;
79
97
  validateRawTransaction: typeof validateRawTransaction;
98
+ encodeShortString: typeof encodeShortString;
99
+ getSelectorFromName: typeof getSelectorFromName;
100
+ compileExecuteCalldata: typeof compileExecuteCalldata;
101
+ calculateInvokeTransactionHash: typeof calculateInvokeTransactionHash;
80
102
  };
81
103
  export default _default;
82
104
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGpF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CASvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAgBrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAatE;AAED;;;GAGG;AACH,wBAAgB,oCAAoC,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAUpF;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,MAAM,EAAE,EAC7B,eAAe,EAAE,MAAM,GAAG,MAAM,GAC/B,MAAM,CAUR;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd,CASA;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAI3E;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAYvF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,kBAAkB,GAAG,SAAS,CAYpF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAQ3E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,GAAG,IAAI,CAOxE;;;;;;;;;;;;;;;;AAED,wBAcE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAGjH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CASvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAgBrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAatE;AAED;;;GAGG;AACH,wBAAgB,oCAAoC,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAUpF;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,MAAM,EAAE,EAC7B,eAAe,EAAE,MAAM,GAAG,MAAM,GAC/B,MAAM,CAUR;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd,CASA;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAI3E;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAYvF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,kBAAkB,GAAG,SAAS,CAYpF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAQ3E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,GAAG,IAAI,CAOxE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAerD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAUtE;AAMD;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,2BAA2B,GAAG,MAAM,CA+C1F;;;;;;;;;;;;;;;;;;;;AAED,wBAkBE"}