@secondlayer/stacks 0.0.4 → 0.1.0

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.
Files changed (98) hide show
  1. package/dist/shared/{stacks-vdfs3e5v.js → stacks-1ddg6mbv.js} +2 -2
  2. package/dist/shared/{stacks-bnvfmt7y.cjs → stacks-2gdt3aqj.cjs} +15 -2
  3. package/dist/shared/{stacks-8m9byk2j.js.map → stacks-2gdt3aqj.cjs.map} +1 -1
  4. package/dist/shared/stacks-709tra19.js.map +2 -2
  5. package/dist/shared/stacks-9g0jhab3.cjs.map +2 -2
  6. package/dist/shared/stacks-b008c3w8.cjs.map +2 -2
  7. package/dist/shared/stacks-gck1sq7h.cjs.map +2 -2
  8. package/dist/shared/stacks-gjvbq6w7.js.map +2 -2
  9. package/dist/shared/{stacks-74k8cxgb.cjs → stacks-hfem9dck.cjs} +46 -2
  10. package/dist/shared/stacks-hfem9dck.cjs.map +13 -0
  11. package/dist/shared/stacks-j2cy7qtt.js.map +2 -2
  12. package/dist/shared/stacks-k58k970n.js.map +2 -2
  13. package/dist/shared/{stacks-zm0b3tgy.js → stacks-m2dc5xwg.js} +7 -7
  14. package/dist/shared/{stacks-zm0b3tgy.js.map → stacks-m2dc5xwg.js.map} +1 -1
  15. package/dist/shared/{stacks-n2g56wgg.js → stacks-md6e5ta0.js} +13 -13
  16. package/dist/shared/{stacks-n2g56wgg.js.map → stacks-md6e5ta0.js.map} +1 -1
  17. package/dist/shared/stacks-njvyj3ab.js +23 -0
  18. package/dist/shared/{stacks-bnvfmt7y.cjs.map → stacks-njvyj3ab.js.map} +1 -1
  19. package/dist/shared/{stacks-dxhntr76.js → stacks-ph4a6322.js} +54 -11
  20. package/dist/shared/stacks-ph4a6322.js.map +10 -0
  21. package/dist/shared/{stacks-f7wdrzs3.js → stacks-pz73cn97.js} +17 -17
  22. package/dist/shared/{stacks-f7wdrzs3.js.map → stacks-pz73cn97.js.map} +1 -1
  23. package/dist/shared/stacks-qvg7c24g.cjs.map +2 -2
  24. package/dist/shared/{stacks-4py5pm0r.cjs → stacks-v3zy6zds.cjs} +42 -2
  25. package/dist/shared/stacks-v3zy6zds.cjs.map +10 -0
  26. package/dist/shared/stacks-v9jqcpd4.js.map +2 -2
  27. package/dist/shared/{stacks-yfgsm6ap.js → stacks-xtz0n62y.js} +58 -3
  28. package/dist/shared/stacks-xtz0n62y.js.map +13 -0
  29. package/dist/shared/stacks-ya3x01yd.cjs.map +2 -2
  30. package/dist/src/accounts/index.js +1 -1
  31. package/dist/src/actions/index.d.cts +43 -2
  32. package/dist/src/actions/index.d.ts +43 -2
  33. package/dist/src/actions/index.js +7 -7
  34. package/dist/src/bns/index.js +10 -10
  35. package/dist/src/bns/index.js.map +1 -1
  36. package/dist/src/chains/index.js +1 -1
  37. package/dist/src/clarity/index.cjs +326 -1
  38. package/dist/src/clarity/index.cjs.map +5 -3
  39. package/dist/src/clarity/index.d.cts +24 -5
  40. package/dist/src/clarity/index.d.ts +24 -5
  41. package/dist/src/clarity/index.js +264 -13
  42. package/dist/src/clarity/index.js.map +5 -3
  43. package/dist/src/connect/index.cjs.map +2 -2
  44. package/dist/src/connect/index.d.cts +7 -1
  45. package/dist/src/connect/index.d.ts +7 -1
  46. package/dist/src/connect/index.js.map +2 -2
  47. package/dist/src/connect/walletconnect/index.cjs +4 -4
  48. package/dist/src/connect/walletconnect/index.cjs.map +7 -7
  49. package/dist/src/connect/walletconnect/index.d.cts +5 -5
  50. package/dist/src/connect/walletconnect/index.d.ts +5 -5
  51. package/dist/src/connect/walletconnect/index.js +4 -4
  52. package/dist/src/connect/walletconnect/index.js.map +7 -7
  53. package/dist/src/index.cjs +1 -1
  54. package/dist/src/index.cjs.map +2 -2
  55. package/dist/src/index.d.cts +44 -3
  56. package/dist/src/index.d.ts +44 -3
  57. package/dist/src/index.js +12 -11
  58. package/dist/src/index.js.map +3 -3
  59. package/dist/src/postconditions/index.cjs +117 -1
  60. package/dist/src/postconditions/index.cjs.map +4 -3
  61. package/dist/src/postconditions/index.js +119 -6
  62. package/dist/src/postconditions/index.js.map +4 -3
  63. package/dist/src/pox/index.js +9 -9
  64. package/dist/src/pox/index.js.map +1 -1
  65. package/dist/src/stackingdao/index.cjs.map +2 -2
  66. package/dist/src/stackingdao/index.d.cts +18 -7
  67. package/dist/src/stackingdao/index.d.ts +18 -7
  68. package/dist/src/stackingdao/index.js +9 -9
  69. package/dist/src/stackingdao/index.js.map +3 -3
  70. package/dist/src/subscriptions/index.js +1 -1
  71. package/dist/src/transactions/index.cjs +5 -1
  72. package/dist/src/transactions/index.cjs.map +1 -1
  73. package/dist/src/transactions/index.d.cts +40 -2
  74. package/dist/src/transactions/index.d.ts +40 -2
  75. package/dist/src/transactions/index.js +18 -10
  76. package/dist/src/transactions/index.js.map +1 -1
  77. package/dist/src/utils/index.d.cts +4 -4
  78. package/dist/src/utils/index.d.ts +4 -4
  79. package/dist/src/utils/index.js +1 -1
  80. package/package.json +1 -1
  81. package/dist/shared/stacks-2ar4prfz.cjs +0 -328
  82. package/dist/shared/stacks-2ar4prfz.cjs.map +0 -11
  83. package/dist/shared/stacks-4py5pm0r.cjs.map +0 -10
  84. package/dist/shared/stacks-74k8cxgb.cjs.map +0 -13
  85. package/dist/shared/stacks-8m9byk2j.js +0 -7
  86. package/dist/shared/stacks-dr5en54r.cjs +0 -119
  87. package/dist/shared/stacks-dr5en54r.cjs.map +0 -10
  88. package/dist/shared/stacks-dxhntr76.js.map +0 -10
  89. package/dist/shared/stacks-f3tk2k5s.js +0 -27
  90. package/dist/shared/stacks-f3tk2k5s.js.map +0 -9
  91. package/dist/shared/stacks-g9mcjcqg.cjs +0 -3
  92. package/dist/shared/stacks-g9mcjcqg.cjs.map +0 -9
  93. package/dist/shared/stacks-tjxmrssa.js +0 -282
  94. package/dist/shared/stacks-tjxmrssa.js.map +0 -11
  95. package/dist/shared/stacks-yfgsm6ap.js.map +0 -13
  96. package/dist/shared/stacks-yfveb68e.js +0 -121
  97. package/dist/shared/stacks-yfveb68e.js.map +0 -10
  98. /package/dist/shared/{stacks-vdfs3e5v.js.map → stacks-1ddg6mbv.js.map} +0 -0
@@ -12,6 +12,6 @@
12
12
  "import type { Client } from \"../../clients/types.ts\";\nimport type { ClarityValue } from \"../../clarity/types.ts\";\nimport type { PostCondition } from \"../../postconditions/types.ts\";\nimport type { IntegerType } from \"../../utils/encoding.ts\";\nimport { parseContractId } from \"../../utils/address.ts\";\nimport { buildContractCall } from \"../../transactions/build.ts\";\nimport { signTransactionWithAccount } from \"../../transactions/signer.ts\";\nimport { sendTransaction } from \"./sendTransaction.ts\";\nimport { getNonce } from \"../public/getNonce.ts\";\nimport { estimateFee } from \"../public/estimateFee.ts\";\nimport { isProviderAccount } from \"./utils.ts\";\n\nexport type CallContractParams = {\n contract: string; // \"address.name\"\n functionName: string;\n functionArgs?: ClarityValue[];\n fee?: IntegerType;\n nonce?: IntegerType;\n postConditionMode?: \"allow\" | \"deny\";\n postConditions?: PostCondition[];\n};\n\n/** Build, sign, and broadcast a contract call */\nexport async function callContract(\n client: Client,\n params: CallContractParams\n): Promise<string> {\n const account = client.account;\n if (!account) throw new Error(\"Account required\");\n\n // Provider: delegate to wallet\n if (isProviderAccount(account)) {\n const result = await account.provider.request(\"stx_callContract\", {\n contract: params.contract,\n functionName: params.functionName,\n functionArgs: params.functionArgs ?? [],\n });\n return result.txid;\n }\n\n // Local/Custom: build → sign → broadcast\n const [contractAddress, contractName] = parseContractId(params.contract);\n\n const nonce =\n params.nonce ?? await getNonce(client, { address: account.address });\n\n const unsigned = buildContractCall({\n contractAddress,\n contractName,\n functionName: params.functionName,\n functionArgs: params.functionArgs ?? [],\n fee: params.fee ?? 0n,\n nonce,\n publicKey: account.publicKey,\n chain: client.chain,\n postConditionMode: params.postConditionMode,\n postConditions: params.postConditions,\n });\n\n if (params.fee === undefined) {\n const estimates = await estimateFee(client, { transaction: unsigned });\n const mid = estimates[1] ?? estimates[0];\n if (mid) {\n (unsigned.auth.spendingCondition as any).fee = BigInt(mid.fee);\n }\n }\n\n const signed = await signTransactionWithAccount(unsigned, account);\n const result = await sendTransaction(client, { transaction: signed });\n return result.txid;\n}\n"
13
13
  ],
14
14
  "mappings": "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",
15
- "debugId": "B88C94A76BEBD99764756E2164756E21",
15
+ "debugId": "BDF3EE3CE5CBCB7864756E2164756E21",
16
16
  "names": []
17
17
  }
@@ -4,27 +4,19 @@ import {
4
4
  isProviderAccount,
5
5
  readContract,
6
6
  sendTransaction
7
- } from "./stacks-zm0b3tgy.js";
7
+ } from "./stacks-m2dc5xwg.js";
8
8
  import {
9
9
  BaseError
10
10
  } from "./stacks-709tra19.js";
11
11
  import {
12
12
  deserializeTransaction
13
- } from "./stacks-dxhntr76.js";
13
+ } from "./stacks-ph4a6322.js";
14
14
  import {
15
15
  buildContractDeploy,
16
16
  buildTokenTransfer,
17
17
  signSponsorWithAccount,
18
18
  signTransactionWithAccount
19
- } from "./stacks-f7wdrzs3.js";
20
- import {
21
- AddressHashMode,
22
- AuthType,
23
- PayloadType,
24
- createSingleSigSpendingCondition,
25
- serializeTransactionHex,
26
- signMultiSigWithAccount
27
- } from "./stacks-yfgsm6ap.js";
19
+ } from "./stacks-pz73cn97.js";
28
20
  import {
29
21
  Cl,
30
22
  deserializeCVBytes
@@ -42,6 +34,14 @@ import {
42
34
  intToBigInt,
43
35
  with0x
44
36
  } from "./stacks-nqytwfcc.js";
37
+ import {
38
+ AddressHashMode,
39
+ AuthType,
40
+ PayloadType,
41
+ createSingleSigSpendingCondition,
42
+ serializeTransactionHex,
43
+ signMultiSigWithAccount
44
+ } from "./stacks-xtz0n62y.js";
45
45
 
46
46
  // src/actions/public/getBalance.ts
47
47
  async function getBalance(client, params) {
@@ -334,5 +334,5 @@ async function sponsorTransaction(client, params) {
334
334
 
335
335
  export { getBalance, getAccountInfo, getBlock, getBlockHeight, getContractAbi, multicall, simulateCall, simulateTransaction, signTransactionAction, transferStx, deployContract, signMessage, sponsorTransaction };
336
336
 
337
- //# debugId=A1189E78FB52287464756E2164756E21
338
- //# sourceMappingURL=stacks-n2g56wgg.js.map
337
+ //# debugId=C59E7B00168F498364756E2164756E21
338
+ //# sourceMappingURL=stacks-md6e5ta0.js.map
@@ -18,6 +18,6 @@
18
18
  "import type { Client } from \"../../clients/types.ts\";\nimport type { IntegerType } from \"../../utils/encoding.ts\";\nimport { intToBigInt } from \"../../utils/encoding.ts\";\nimport {\n AuthType,\n type StacksTransaction,\n type SponsoredAuthorization,\n type SingleSigSpendingCondition,\n} from \"../../transactions/types.ts\";\nimport { createSingleSigSpendingCondition } from \"../../transactions/authorization.ts\";\nimport { signSponsorWithAccount } from \"../../transactions/signer.ts\";\nimport { getNonce } from \"../public/getNonce.ts\";\nimport { estimateFee } from \"../public/estimateFee.ts\";\nimport { isProviderAccount } from \"./utils.ts\";\n\nexport type SponsorTransactionParams = {\n transaction: StacksTransaction;\n fee?: IntegerType;\n nonce?: IntegerType;\n};\n\n/** Sponsor a transaction: set sponsor spending condition, sign as sponsor */\nexport async function sponsorTransaction(\n client: Client,\n params: SponsorTransactionParams\n): Promise<StacksTransaction> {\n const { transaction } = params;\n\n if (transaction.auth.authType !== AuthType.Sponsored) {\n throw new Error(\"Transaction must have sponsored authorization\");\n }\n\n const account = client.account;\n if (!account) throw new Error(\"Account required\");\n if (isProviderAccount(account)) {\n throw new Error(\"Provider accounts cannot sponsor transactions\");\n }\n\n // Resolve sponsor nonce\n const nonce = params.nonce != null\n ? intToBigInt(params.nonce)\n : await getNonce(client, { address: account.address });\n\n // Resolve sponsor fee\n let fee: bigint;\n if (params.fee != null) {\n fee = intToBigInt(params.fee);\n } else {\n const estimates = await estimateFee(client, { transaction });\n const mid = estimates[1] ?? estimates[0];\n fee = mid ? BigInt(mid.fee) : 0n;\n }\n\n // Create sponsor spending condition\n const sponsorCondition = createSingleSigSpendingCondition(\n account.publicKey,\n nonce,\n fee\n );\n\n // Set sponsor spending condition on the tx\n const auth = transaction.auth as SponsoredAuthorization;\n const sponsored: StacksTransaction = {\n ...transaction,\n auth: {\n ...auth,\n sponsorSpendingCondition: sponsorCondition,\n },\n };\n\n // Sign as sponsor\n return signSponsorWithAccount(sponsored, account);\n}\n"
19
19
  ],
20
20
  "mappings": "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",
21
- "debugId": "A1189E78FB52287464756E2164756E21",
21
+ "debugId": "C59E7B00168F498364756E2164756E21",
22
22
  "names": []
23
23
  }
@@ -0,0 +1,23 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
18
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
19
+
20
+ export { __toESM, __require };
21
+
22
+ //# debugId=3D8B6E2927A7752164756E2164756E21
23
+ //# sourceMappingURL=stacks-njvyj3ab.js.map
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "5555BAAAF1009B9864756E2164756E21",
7
+ "debugId": "3D8B6E2927A7752164756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -1,12 +1,3 @@
1
- import {
2
- AddressHashMode,
3
- AssetType,
4
- AuthType,
5
- MEMO_MAX_LENGTH_BYTES,
6
- PayloadType,
7
- PostConditionPrincipalId,
8
- RECOVERABLE_ECDSA_SIG_LENGTH_BYTES
9
- } from "./stacks-yfgsm6ap.js";
10
1
  import {
11
2
  bufferCV,
12
3
  contractPrincipalCV,
@@ -36,6 +27,18 @@ import {
36
27
  hexToBytes,
37
28
  without0x
38
29
  } from "./stacks-nqytwfcc.js";
30
+ import {
31
+ AddressHashMode,
32
+ AssetType,
33
+ AuthType,
34
+ COINBASE_BYTES_LENGTH,
35
+ MEMO_MAX_LENGTH_BYTES,
36
+ MICROBLOCK_HEADER_BYTES_LENGTH,
37
+ PayloadType,
38
+ PostConditionPrincipalId,
39
+ RECOVERABLE_ECDSA_SIG_LENGTH_BYTES,
40
+ VRF_PROOF_BYTES_LENGTH
41
+ } from "./stacks-xtz0n62y.js";
39
42
 
40
43
  // src/transactions/wire/deserialize.ts
41
44
  class Reader {
@@ -254,6 +257,46 @@ function readPayload(r) {
254
257
  const codeBody = readLPString(r, 4);
255
258
  return { payloadType: PayloadType.VersionedSmartContract, clarityVersion, contractName, codeBody };
256
259
  }
260
+ case PayloadType.Coinbase: {
261
+ const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));
262
+ return { payloadType: PayloadType.Coinbase, coinbaseBuffer };
263
+ }
264
+ case PayloadType.CoinbaseToAltRecipient: {
265
+ const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));
266
+ const recipient = readCV(r);
267
+ return { payloadType: PayloadType.CoinbaseToAltRecipient, coinbaseBuffer, recipient };
268
+ }
269
+ case PayloadType.PoisonMicroblock: {
270
+ const header1 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));
271
+ const header2 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));
272
+ return { payloadType: PayloadType.PoisonMicroblock, header1, header2 };
273
+ }
274
+ case PayloadType.TenureChange: {
275
+ const tenureConsensusHash = bytesToHex(r.readBytes(20));
276
+ const prevTenureConsensusHash = bytesToHex(r.readBytes(20));
277
+ const burnViewConsensusHash = bytesToHex(r.readBytes(20));
278
+ const previousTenureEnd = bytesToHex(r.readBytes(32));
279
+ const previousTenureBlocks = r.readUInt32BE();
280
+ const cause = r.readUInt8();
281
+ const pubkeyHash = bytesToHex(r.readBytes(20));
282
+ return {
283
+ payloadType: PayloadType.TenureChange,
284
+ tenureConsensusHash,
285
+ prevTenureConsensusHash,
286
+ burnViewConsensusHash,
287
+ previousTenureEnd,
288
+ previousTenureBlocks,
289
+ cause,
290
+ pubkeyHash
291
+ };
292
+ }
293
+ case PayloadType.NakamotoCoinbase: {
294
+ const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));
295
+ const optionalCV = readCV(r);
296
+ const recipient = optionalCV.type === "none" ? null : optionalCV.type === "some" ? optionalCV.value : optionalCV;
297
+ const vrfProof = bytesToHex(r.readBytes(VRF_PROOF_BYTES_LENGTH));
298
+ return { payloadType: PayloadType.NakamotoCoinbase, coinbaseBuffer, recipient, vrfProof };
299
+ }
257
300
  default:
258
301
  throw new Error(`Unknown payload type: ${payloadType}`);
259
302
  }
@@ -274,5 +317,5 @@ function deserializeTransaction(input) {
274
317
 
275
318
  export { deserializeTransaction };
276
319
 
277
- //# debugId=10C8FB91F221D94764756E2164756E21
278
- //# sourceMappingURL=stacks-dxhntr76.js.map
320
+ //# debugId=8915AC3F57DF629464756E2164756E21
321
+ //# sourceMappingURL=stacks-ph4a6322.js.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/transactions/wire/deserialize.ts"],
4
+ "sourcesContent": [
5
+ "import {\n bytesToHex,\n hexToBytes,\n bytesToAscii,\n bytesToUtf8,\n without0x,\n} from \"../../utils/encoding.ts\";\nimport { c32address } from \"../../utils/c32.ts\";\nimport {\n AuthType,\n PayloadType,\n AddressHashMode,\n PostConditionPrincipalId,\n AssetType,\n RECOVERABLE_ECDSA_SIG_LENGTH_BYTES,\n MEMO_MAX_LENGTH_BYTES,\n COINBASE_BYTES_LENGTH,\n VRF_PROOF_BYTES_LENGTH,\n MICROBLOCK_HEADER_BYTES_LENGTH,\n type StacksTransaction,\n type Authorization,\n type SpendingCondition,\n type TransactionPayload,\n type PostConditionWire,\n type PostConditionPrincipalWire,\n type AssetInfoWire,\n type TransactionAuthField,\n type AnchorMode,\n type PostConditionModeWire,\n type ClarityVersion,\n type TenureChangeCause,\n} from \"../types.ts\";\nimport type { ClarityValue } from \"../../clarity/types.ts\";\nimport { clarityTypeFromByte } from \"../../clarity/types.ts\";\nimport {\n intCV,\n uintCV,\n trueCV,\n falseCV,\n bufferCV,\n noneCV,\n someCV,\n responseOkCV,\n responseErrorCV,\n standardPrincipalCV,\n contractPrincipalCV,\n listCV,\n tupleCV,\n stringAsciiCV,\n stringUtf8CV,\n} from \"../../clarity/values.ts\";\nimport { bytesToTwosBigInt } from \"../../utils/encoding.ts\";\n\nclass Reader {\n private data: Uint8Array;\n public offset = 0;\n\n constructor(data: Uint8Array) {\n this.data = data;\n }\n\n readUInt8(): number {\n return this.data[this.offset++]!;\n }\n\n readUInt16BE(): number {\n const val = ((this.data[this.offset]! << 8) | this.data[this.offset + 1]!) >>> 0;\n this.offset += 2;\n return val;\n }\n\n readUInt32BE(): number {\n const val =\n ((this.data[this.offset]! << 24) |\n (this.data[this.offset + 1]! << 16) |\n (this.data[this.offset + 2]! << 8) |\n this.data[this.offset + 3]!) >>>\n 0;\n this.offset += 4;\n return val;\n }\n\n readBytes(length: number): Uint8Array {\n const slice = this.data.slice(this.offset, this.offset + length);\n this.offset += length;\n return slice;\n }\n\n readBigUInt64BE(): bigint {\n return BigInt(`0x${bytesToHex(this.readBytes(8))}`);\n }\n}\n\nfunction readAddress(r: Reader): string {\n const version = r.readUInt8();\n const hash160 = bytesToHex(r.readBytes(20));\n return c32address(version, hash160);\n}\n\nfunction readLPString(r: Reader, prefixBytes = 1): string {\n let length = 0;\n for (let i = 0; i < prefixBytes; i++) {\n length = (length << 8) | r.readUInt8();\n }\n return bytesToUtf8(r.readBytes(length));\n}\n\nfunction readCV(r: Reader): ClarityValue {\n const typeByte = r.readUInt8();\n const type = clarityTypeFromByte(typeByte);\n\n switch (type) {\n case \"int\":\n return intCV(bytesToTwosBigInt(r.readBytes(16)));\n case \"uint\":\n return uintCV(r.readBytes(16));\n case \"true\":\n return trueCV();\n case \"false\":\n return falseCV();\n case \"buffer\": {\n const len = r.readUInt32BE();\n return bufferCV(r.readBytes(len));\n }\n case \"none\":\n return noneCV();\n case \"some\":\n return someCV(readCV(r));\n case \"ok\":\n return responseOkCV(readCV(r));\n case \"err\":\n return responseErrorCV(readCV(r));\n case \"address\":\n return standardPrincipalCV(readAddress(r));\n case \"contract\": {\n const addr = readAddress(r);\n const name = readLPString(r);\n return contractPrincipalCV(addr, name);\n }\n case \"list\": {\n const len = r.readUInt32BE();\n const items: ClarityValue[] = [];\n for (let i = 0; i < len; i++) items.push(readCV(r));\n return listCV(items);\n }\n case \"tuple\": {\n const len = r.readUInt32BE();\n const data: Record<string, ClarityValue> = {};\n for (let i = 0; i < len; i++) {\n const key = readLPString(r);\n data[key] = readCV(r);\n }\n return tupleCV(data);\n }\n case \"ascii\": {\n const len = r.readUInt32BE();\n return stringAsciiCV(bytesToAscii(r.readBytes(len)));\n }\n case \"utf8\": {\n const len = r.readUInt32BE();\n return stringUtf8CV(bytesToUtf8(r.readBytes(len)));\n }\n default:\n throw new Error(`Unknown clarity type: ${type}`);\n }\n}\n\nfunction readSpendingCondition(r: Reader): SpendingCondition {\n const hashMode = r.readUInt8();\n const signer = bytesToHex(r.readBytes(20));\n const nonce = r.readBigUInt64BE();\n const fee = r.readBigUInt64BE();\n\n if (hashMode === AddressHashMode.P2PKH || hashMode === AddressHashMode.P2WPKH) {\n const keyEncoding = r.readUInt8();\n const signature = bytesToHex(r.readBytes(RECOVERABLE_ECDSA_SIG_LENGTH_BYTES));\n return { hashMode, signer, nonce, fee, keyEncoding, signature } as SpendingCondition;\n }\n\n const fieldCount = r.readUInt32BE();\n const fields: TransactionAuthField[] = [];\n for (let i = 0; i < fieldCount; i++) {\n const fieldType = r.readUInt8();\n if (fieldType <= 0x01) {\n const keyLen = fieldType === 0x00 ? 33 : 65;\n fields.push({\n type: \"publicKey\",\n pubKeyEncoding: fieldType as 0x00 | 0x01,\n data: bytesToHex(r.readBytes(keyLen)),\n });\n } else {\n fields.push({\n type: \"signature\",\n pubKeyEncoding: (fieldType === 0x02 ? 0x00 : 0x01) as 0x00 | 0x01,\n data: bytesToHex(r.readBytes(RECOVERABLE_ECDSA_SIG_LENGTH_BYTES)),\n });\n }\n }\n const signaturesRequired = r.readUInt16BE();\n\n return { hashMode, signer, nonce, fee, fields, signaturesRequired } as SpendingCondition;\n}\n\nfunction readAuthorization(r: Reader): Authorization {\n const authType = r.readUInt8();\n const spendingCondition = readSpendingCondition(r);\n\n if (authType === AuthType.Standard) {\n return { authType: AuthType.Standard, spendingCondition };\n }\n\n const sponsorSpendingCondition = readSpendingCondition(r);\n return {\n authType: AuthType.Sponsored,\n spendingCondition,\n sponsorSpendingCondition,\n };\n}\n\nfunction readAssetInfo(r: Reader): AssetInfoWire {\n return {\n address: readAddress(r),\n contractName: readLPString(r),\n assetName: readLPString(r),\n };\n}\n\nfunction readPostConditionPrincipal(r: Reader): PostConditionPrincipalWire {\n const type = r.readUInt8();\n switch (type) {\n case PostConditionPrincipalId.Origin:\n return { type: \"origin\" };\n case PostConditionPrincipalId.Standard:\n return { type: \"standard\", address: readAddress(r) };\n case PostConditionPrincipalId.Contract:\n return { type: \"contract\", address: readAddress(r), contractName: readLPString(r) };\n default:\n throw new Error(`Unknown post condition principal type: ${type}`);\n }\n}\n\nfunction readPostConditions(r: Reader): PostConditionWire[] {\n const count = r.readUInt32BE();\n const pcs: PostConditionWire[] = [];\n for (let i = 0; i < count; i++) {\n const principal = readPostConditionPrincipal(r);\n const assetType = r.readUInt8();\n switch (assetType) {\n case AssetType.STX:\n pcs.push({ type: \"stx\", principal, conditionCode: r.readUInt8(), amount: r.readBigUInt64BE() });\n break;\n case AssetType.Fungible:\n pcs.push({ type: \"ft\", principal, asset: readAssetInfo(r), conditionCode: r.readUInt8(), amount: r.readBigUInt64BE() });\n break;\n case AssetType.NonFungible:\n pcs.push({ type: \"nft\", principal, asset: readAssetInfo(r), assetId: readCV(r), conditionCode: r.readUInt8() });\n break;\n }\n }\n return pcs;\n}\n\nfunction readPayload(r: Reader): TransactionPayload {\n const payloadType = r.readUInt8();\n\n switch (payloadType) {\n case PayloadType.TokenTransfer: {\n const recipient = readCV(r);\n const amount = r.readBigUInt64BE();\n const memoContentLen = r.readUInt8();\n const memoBytes = r.readBytes(MEMO_MAX_LENGTH_BYTES);\n const memo = bytesToAscii(memoBytes.slice(0, memoContentLen)).replace(/\\0+$/, \"\");\n return { payloadType: PayloadType.TokenTransfer, recipient, amount, memo };\n }\n case PayloadType.ContractCall: {\n const contractAddress = readAddress(r);\n const contractName = readLPString(r);\n const functionName = readLPString(r);\n const numArgs = r.readUInt32BE();\n const functionArgs: ClarityValue[] = [];\n for (let i = 0; i < numArgs; i++) functionArgs.push(readCV(r));\n return { payloadType: PayloadType.ContractCall, contractAddress, contractName, functionName, functionArgs };\n }\n case PayloadType.SmartContract: {\n const contractName = readLPString(r);\n const codeBody = readLPString(r, 4);\n return { payloadType: PayloadType.SmartContract, contractName, codeBody };\n }\n case PayloadType.VersionedSmartContract: {\n const clarityVersion = r.readUInt8() as ClarityVersion;\n const contractName = readLPString(r);\n const codeBody = readLPString(r, 4);\n return { payloadType: PayloadType.VersionedSmartContract, clarityVersion, contractName, codeBody };\n }\n case PayloadType.Coinbase: {\n const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));\n return { payloadType: PayloadType.Coinbase, coinbaseBuffer };\n }\n case PayloadType.CoinbaseToAltRecipient: {\n const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));\n const recipient = readCV(r);\n return { payloadType: PayloadType.CoinbaseToAltRecipient, coinbaseBuffer, recipient };\n }\n case PayloadType.PoisonMicroblock: {\n const header1 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));\n const header2 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));\n return { payloadType: PayloadType.PoisonMicroblock, header1, header2 };\n }\n case PayloadType.TenureChange: {\n const tenureConsensusHash = bytesToHex(r.readBytes(20));\n const prevTenureConsensusHash = bytesToHex(r.readBytes(20));\n const burnViewConsensusHash = bytesToHex(r.readBytes(20));\n const previousTenureEnd = bytesToHex(r.readBytes(32));\n const previousTenureBlocks = r.readUInt32BE();\n const cause = r.readUInt8() as TenureChangeCause;\n const pubkeyHash = bytesToHex(r.readBytes(20));\n return {\n payloadType: PayloadType.TenureChange,\n tenureConsensusHash,\n prevTenureConsensusHash,\n burnViewConsensusHash,\n previousTenureEnd,\n previousTenureBlocks,\n cause,\n pubkeyHash,\n };\n }\n case PayloadType.NakamotoCoinbase: {\n const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));\n const optionalCV = readCV(r);\n const recipient = optionalCV.type === \"none\" ? null : optionalCV.type === \"some\" ? optionalCV.value : optionalCV;\n const vrfProof = bytesToHex(r.readBytes(VRF_PROOF_BYTES_LENGTH));\n return { payloadType: PayloadType.NakamotoCoinbase, coinbaseBuffer, recipient, vrfProof };\n }\n default:\n throw new Error(`Unknown payload type: ${payloadType}`);\n }\n}\n\nexport function deserializeTransaction(input: string | Uint8Array): StacksTransaction {\n const bytes = typeof input === \"string\" ? hexToBytes(without0x(input)) : input;\n const r = new Reader(bytes);\n\n return {\n version: r.readUInt8(),\n chainId: r.readUInt32BE(),\n auth: readAuthorization(r),\n anchorMode: r.readUInt8() as AnchorMode,\n postConditionMode: r.readUInt8() as PostConditionModeWire,\n postConditions: readPostConditions(r),\n payload: readPayload(r),\n };\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "8915AC3F57DF629464756E2164756E21",
9
+ "names": []
10
+ }
@@ -1,3 +1,17 @@
1
+ import {
2
+ Cl
3
+ } from "./stacks-j2cy7qtt.js";
4
+ import {
5
+ txidFromBytes
6
+ } from "./stacks-bycy6t9k.js";
7
+ import {
8
+ parseContractId
9
+ } from "./stacks-gjvbq6w7.js";
10
+ import {
11
+ bytesToHex,
12
+ hexToBytes,
13
+ intToBigInt
14
+ } from "./stacks-nqytwfcc.js";
1
15
  import {
2
16
  AnchorMode,
3
17
  AuthType,
@@ -16,21 +30,7 @@ import {
16
30
  serializeTransaction,
17
31
  sigHashPostSign,
18
32
  sigHashPreSign
19
- } from "./stacks-yfgsm6ap.js";
20
- import {
21
- Cl
22
- } from "./stacks-j2cy7qtt.js";
23
- import {
24
- txidFromBytes
25
- } from "./stacks-bycy6t9k.js";
26
- import {
27
- parseContractId
28
- } from "./stacks-gjvbq6w7.js";
29
- import {
30
- bytesToHex,
31
- hexToBytes,
32
- intToBigInt
33
- } from "./stacks-nqytwfcc.js";
33
+ } from "./stacks-xtz0n62y.js";
34
34
 
35
35
  // src/transactions/signer.ts
36
36
  function txid(tx) {
@@ -281,5 +281,5 @@ function buildContractDeploy(options) {
281
281
 
282
282
  export { signBegin, signTransaction, signTransactionWithAccount, getTransactionId, getOriginSigHash, signSponsor, signSponsorWithAccount, buildTokenTransfer, buildContractCall, buildContractDeploy };
283
283
 
284
- //# debugId=4382774F865376AE64756E2164756E21
285
- //# sourceMappingURL=stacks-f7wdrzs3.js.map
284
+ //# debugId=E1E66CCEB4972C3164756E2164756E21
285
+ //# sourceMappingURL=stacks-pz73cn97.js.map
@@ -6,6 +6,6 @@
6
6
  "import type { StacksChain } from \"../chains/types.ts\";\nimport type { ClarityValue } from \"../clarity/types.ts\";\nimport type { PostCondition } from \"../postconditions/types.ts\";\nimport type { MultiSigHashMode, SpendingCondition } from \"./types.ts\";\nimport {\n createSingleSigSpendingCondition,\n createStandardAuth,\n createSponsoredAuth,\n} from \"./authorization.ts\";\nimport { createMultiSigSpendingCondition } from \"./multisig.ts\";\nimport {\n PayloadType,\n AnchorMode,\n PostConditionModeWire,\n FungibleConditionCode,\n NonFungibleConditionCode,\n PostConditionPrincipalId,\n type StacksTransaction,\n type PostConditionWire,\n type PostConditionPrincipalWire,\n type ClarityVersion,\n} from \"./types.ts\";\nimport { Cl } from \"../clarity/values.ts\";\nimport { intToBigInt, type IntegerType } from \"../utils/encoding.ts\";\nimport { validateStacksAddress, parseContractId } from \"../utils/address.ts\";\n\ntype MultiSigOptions = {\n publicKeys?: string[];\n signaturesRequired?: number;\n hashMode?: MultiSigHashMode;\n};\n\nexport type BuildTokenTransferOptions = MultiSigOptions & {\n recipient: string;\n amount: IntegerType;\n memo?: string;\n fee: IntegerType;\n nonce: IntegerType;\n publicKey?: string;\n chain?: StacksChain;\n postConditionMode?: \"allow\" | \"deny\";\n postConditions?: PostCondition[];\n sponsored?: boolean;\n};\n\nexport type BuildContractCallOptions = MultiSigOptions & {\n contractAddress: string;\n contractName: string;\n functionName: string;\n functionArgs: ClarityValue[];\n fee: IntegerType;\n nonce: IntegerType;\n publicKey?: string;\n chain?: StacksChain;\n postConditionMode?: \"allow\" | \"deny\";\n postConditions?: PostCondition[];\n sponsored?: boolean;\n};\n\nexport type BuildContractDeployOptions = MultiSigOptions & {\n contractName: string;\n codeBody: string;\n clarityVersion?: ClarityVersion;\n fee: IntegerType;\n nonce: IntegerType;\n publicKey?: string;\n chain?: StacksChain;\n postConditionMode?: \"allow\" | \"deny\";\n postConditions?: PostCondition[];\n sponsored?: boolean;\n};\n\nfunction resolvePcMode(mode?: \"allow\" | \"deny\"): PostConditionModeWire {\n return mode === \"allow\" ? PostConditionModeWire.Allow : PostConditionModeWire.Deny;\n}\n\nfunction convertPostConditions(pcs?: PostCondition[]): PostConditionWire[] {\n if (!pcs || pcs.length === 0) return [];\n return pcs.map(convertPostCondition);\n}\n\nfunction resolvePrincipal(address: string): PostConditionPrincipalWire {\n if (address === \"origin\") return { type: \"origin\" };\n const [addr, name] = address.split(\".\");\n if (name) {\n return { type: \"contract\", address: addr!, contractName: name };\n }\n return { type: \"standard\", address: addr! };\n}\n\nconst FUNGIBLE_CODE_MAP: Record<string, number> = {\n eq: FungibleConditionCode.Equal,\n gt: FungibleConditionCode.Greater,\n gte: FungibleConditionCode.GreaterEqual,\n lt: FungibleConditionCode.Less,\n lte: FungibleConditionCode.LessEqual,\n};\n\nfunction convertPostCondition(pc: PostCondition): PostConditionWire {\n switch (pc.type) {\n case \"stx-postcondition\":\n return {\n type: \"stx\",\n principal: resolvePrincipal(pc.address),\n conditionCode: FUNGIBLE_CODE_MAP[pc.condition]!,\n amount: intToBigInt(pc.amount),\n };\n case \"ft-postcondition\": {\n const [contractId, tokenName] = pc.asset.split(\"::\");\n const [addr, name] = parseContractId(contractId!);\n return {\n type: \"ft\",\n principal: resolvePrincipal(pc.address),\n asset: { address: addr, contractName: name, assetName: tokenName! },\n conditionCode: FUNGIBLE_CODE_MAP[pc.condition]!,\n amount: intToBigInt(pc.amount),\n };\n }\n case \"nft-postcondition\": {\n const [contractId, tokenName] = pc.asset.split(\"::\");\n const [addr, name] = parseContractId(contractId!);\n return {\n type: \"nft\",\n principal: resolvePrincipal(pc.address),\n asset: { address: addr, contractName: name, assetName: tokenName! },\n conditionCode: pc.condition === \"sent\" ? NonFungibleConditionCode.Sends : NonFungibleConditionCode.DoesNotSend,\n assetId: pc.assetId,\n };\n }\n }\n}\n\nimport type { Authorization } from \"./types.ts\";\n\nfunction resolveSpendingCondition(\n opts: MultiSigOptions & { publicKey?: string },\n nonce: bigint,\n fee: bigint\n): SpendingCondition {\n if (opts.publicKeys) {\n return createMultiSigSpendingCondition(\n opts.publicKeys,\n opts.signaturesRequired!,\n nonce,\n fee,\n opts.hashMode\n );\n }\n return createSingleSigSpendingCondition(opts.publicKey!, nonce, fee);\n}\n\nfunction resolveAuth(spendingCondition: any, sponsored?: boolean): Authorization {\n return sponsored\n ? createSponsoredAuth(spendingCondition)\n : createStandardAuth(spendingCondition);\n}\n\nfunction resolveVersionAndChainId(chain?: StacksChain): { version: number; chainId: number } {\n if (!chain) return { version: 0x00, chainId: 0x00000001 }; // mainnet defaults\n return { version: chain.transactionVersion, chainId: chain.id };\n}\n\nexport function buildTokenTransfer(options: BuildTokenTransferOptions): StacksTransaction {\n const { version, chainId } = resolveVersionAndChainId(options.chain);\n const fee = intToBigInt(options.fee);\n const nonce = intToBigInt(options.nonce);\n\n const spendingCondition = resolveSpendingCondition(options, nonce, fee);\n const recipient = Cl.principal(options.recipient);\n\n const tx: StacksTransaction = {\n version,\n chainId,\n auth: resolveAuth(spendingCondition, options.sponsored),\n anchorMode: AnchorMode.Any,\n postConditionMode: resolvePcMode(options.postConditionMode),\n postConditions: convertPostConditions(options.postConditions),\n payload: {\n payloadType: PayloadType.TokenTransfer,\n recipient,\n amount: intToBigInt(options.amount),\n memo: options.memo ?? \"\",\n },\n };\n\n if (options.publicKeys) {\n (tx as any)._multisig = { publicKeys: options.publicKeys };\n }\n return tx;\n}\n\nexport function buildContractCall(options: BuildContractCallOptions): StacksTransaction {\n const { version, chainId } = resolveVersionAndChainId(options.chain);\n const fee = intToBigInt(options.fee);\n const nonce = intToBigInt(options.nonce);\n\n const spendingCondition = resolveSpendingCondition(options, nonce, fee);\n\n const tx: StacksTransaction = {\n version,\n chainId,\n auth: resolveAuth(spendingCondition, options.sponsored),\n anchorMode: AnchorMode.Any,\n postConditionMode: resolvePcMode(options.postConditionMode),\n postConditions: convertPostConditions(options.postConditions),\n payload: {\n payloadType: PayloadType.ContractCall,\n contractAddress: options.contractAddress,\n contractName: options.contractName,\n functionName: options.functionName,\n functionArgs: options.functionArgs,\n },\n };\n\n if (options.publicKeys) {\n (tx as any)._multisig = { publicKeys: options.publicKeys };\n }\n return tx;\n}\n\nexport function buildContractDeploy(options: BuildContractDeployOptions): StacksTransaction {\n const { version, chainId } = resolveVersionAndChainId(options.chain);\n const fee = intToBigInt(options.fee);\n const nonce = intToBigInt(options.nonce);\n\n const spendingCondition = resolveSpendingCondition(options, nonce, fee);\n const useVersioned = options.clarityVersion !== undefined;\n\n const tx: StacksTransaction = {\n version,\n chainId,\n auth: resolveAuth(spendingCondition, options.sponsored),\n anchorMode: AnchorMode.Any,\n postConditionMode: resolvePcMode(options.postConditionMode),\n postConditions: convertPostConditions(options.postConditions),\n payload: {\n payloadType: useVersioned ? PayloadType.VersionedSmartContract : PayloadType.SmartContract,\n clarityVersion: options.clarityVersion,\n contractName: options.contractName,\n codeBody: options.codeBody,\n },\n };\n\n if (options.publicKeys) {\n (tx as any)._multisig = { publicKeys: options.publicKeys };\n }\n return tx;\n}\n"
7
7
  ],
8
8
  "mappings": "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",
9
- "debugId": "4382774F865376AE64756E2164756E21",
9
+ "debugId": "E1E66CCEB4972C3164756E2164756E21",
10
10
  "names": []
11
11
  }
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/clarity/abi/standards.ts"],
4
4
  "sourcesContent": [
5
- "import type { AbiContract } from \"./contract.ts\";\n\nexport const SIP010_ABI = {\n functions: [\n {\n name: \"transfer\",\n access: \"public\",\n args: [\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n { name: \"memo\", type: { optional: { buff: { length: 34 } } } },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"get-balance\",\n access: \"read-only\",\n args: [{ name: \"account\", type: \"principal\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-total-supply\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-name\",\n access: \"read-only\",\n args: [],\n outputs: {\n response: {\n ok: { \"string-ascii\": { length: 32 } },\n error: \"uint128\",\n },\n },\n },\n {\n name: \"get-symbol\",\n access: \"read-only\",\n args: [],\n outputs: {\n response: {\n ok: { \"string-ascii\": { length: 10 } },\n error: \"uint128\",\n },\n },\n },\n {\n name: \"get-decimals\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-token-uri\",\n access: \"read-only\",\n args: [],\n outputs: {\n response: {\n ok: { optional: { \"string-utf8\": { length: 256 } } },\n error: \"uint128\",\n },\n },\n },\n ],\n fungible_tokens: [{ name: \"token\" }],\n} as const satisfies AbiContract;\n\nexport const SIP009_ABI = {\n functions: [\n {\n name: \"transfer\",\n access: \"public\",\n args: [\n { name: \"id\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"get-owner\",\n access: \"read-only\",\n args: [{ name: \"id\", type: \"uint128\" }],\n outputs: { response: { ok: { optional: \"principal\" }, error: \"uint128\" } },\n },\n {\n name: \"get-last-token-id\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-token-uri\",\n access: \"read-only\",\n args: [{ name: \"id\", type: \"uint128\" }],\n outputs: {\n response: {\n ok: { optional: { \"string-utf8\": { length: 256 } } },\n error: \"uint128\",\n },\n },\n },\n ],\n non_fungible_tokens: [{ name: \"nft\", type: \"uint128\" }],\n} as const satisfies AbiContract;\n\nexport const SIP013_ABI = {\n functions: [\n {\n name: \"transfer\",\n access: \"public\",\n args: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"transfer-memo\",\n access: \"public\",\n args: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n { name: \"memo\", type: { buff: { length: 34 } } },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"transfer-many\",\n access: \"public\",\n args: [\n {\n name: \"transfers\",\n type: {\n list: {\n type: {\n tuple: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n ],\n },\n length: 200,\n },\n },\n },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"transfer-many-memo\",\n access: \"public\",\n args: [\n {\n name: \"transfers\",\n type: {\n list: {\n type: {\n tuple: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n { name: \"memo\", type: { buff: { length: 34 } } },\n ],\n },\n length: 200,\n },\n },\n },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"get-balance\",\n access: \"read-only\",\n args: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"account\", type: \"principal\" },\n ],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-overall-balance\",\n access: \"read-only\",\n args: [{ name: \"account\", type: \"principal\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-total-supply\",\n access: \"read-only\",\n args: [{ name: \"token-id\", type: \"uint128\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-overall-supply\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-decimals\",\n access: \"read-only\",\n args: [{ name: \"token-id\", type: \"uint128\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-token-uri\",\n access: \"read-only\",\n args: [{ name: \"token-id\", type: \"uint128\" }],\n outputs: {\n response: {\n ok: { optional: { \"string-utf8\": { length: 256 } } },\n error: \"uint128\",\n },\n },\n },\n ],\n fungible_tokens: [],\n non_fungible_tokens: [],\n} as const satisfies AbiContract;\n\n// Camel-case aliases for better DX\nexport const sip010Abi = SIP010_ABI;\nexport const sip009Abi = SIP009_ABI;\nexport const sip013Abi = SIP013_ABI;\n"
5
+ "import type { AbiContract } from \"./contract.ts\";\n\nexport const SIP010_ABI = {\n functions: [\n {\n name: \"transfer\",\n access: \"public\",\n args: [\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n { name: \"memo\", type: { optional: { buff: { length: 34 } } } },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"get-balance\",\n access: \"read-only\",\n args: [{ name: \"account\", type: \"principal\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-total-supply\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-name\",\n access: \"read-only\",\n args: [],\n outputs: {\n response: {\n ok: { \"string-ascii\": { length: 32 } },\n error: \"uint128\",\n },\n },\n },\n {\n name: \"get-symbol\",\n access: \"read-only\",\n args: [],\n outputs: {\n response: {\n ok: { \"string-ascii\": { length: 10 } },\n error: \"uint128\",\n },\n },\n },\n {\n name: \"get-decimals\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-token-uri\",\n access: \"read-only\",\n args: [],\n outputs: {\n response: {\n ok: { optional: { \"string-utf8\": { length: 256 } } },\n error: \"uint128\",\n },\n },\n },\n ],\n fungible_tokens: [{ name: \"token\" }],\n} as const satisfies AbiContract;\n\nexport const SIP009_ABI = {\n functions: [\n {\n name: \"transfer\",\n access: \"public\",\n args: [\n { name: \"id\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"get-owner\",\n access: \"read-only\",\n args: [{ name: \"id\", type: \"uint128\" }],\n outputs: { response: { ok: { optional: \"principal\" }, error: \"uint128\" } },\n },\n {\n name: \"get-last-token-id\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-token-uri\",\n access: \"read-only\",\n args: [{ name: \"id\", type: \"uint128\" }],\n outputs: {\n response: {\n ok: { optional: { \"string-utf8\": { length: 256 } } },\n error: \"uint128\",\n },\n },\n },\n ],\n non_fungible_tokens: [{ name: \"nft\", type: \"uint128\" }],\n} as const satisfies AbiContract;\n\nexport const SIP013_ABI = {\n functions: [\n {\n name: \"transfer\",\n access: \"public\",\n args: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"transfer-memo\",\n access: \"public\",\n args: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n { name: \"memo\", type: { buff: { length: 34 } } },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"transfer-many\",\n access: \"public\",\n args: [\n {\n name: \"transfers\",\n type: {\n list: {\n type: {\n tuple: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n ],\n },\n length: 200,\n },\n },\n },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"transfer-many-memo\",\n access: \"public\",\n args: [\n {\n name: \"transfers\",\n type: {\n list: {\n type: {\n tuple: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"amount\", type: \"uint128\" },\n { name: \"sender\", type: \"principal\" },\n { name: \"recipient\", type: \"principal\" },\n { name: \"memo\", type: { buff: { length: 34 } } },\n ],\n },\n length: 200,\n },\n },\n },\n ],\n outputs: { response: { ok: \"bool\", error: \"uint128\" } },\n },\n {\n name: \"get-balance\",\n access: \"read-only\",\n args: [\n { name: \"token-id\", type: \"uint128\" },\n { name: \"account\", type: \"principal\" },\n ],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-overall-balance\",\n access: \"read-only\",\n args: [{ name: \"account\", type: \"principal\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-total-supply\",\n access: \"read-only\",\n args: [{ name: \"token-id\", type: \"uint128\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-overall-supply\",\n access: \"read-only\",\n args: [],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-decimals\",\n access: \"read-only\",\n args: [{ name: \"token-id\", type: \"uint128\" }],\n outputs: { response: { ok: \"uint128\", error: \"uint128\" } },\n },\n {\n name: \"get-token-uri\",\n access: \"read-only\",\n args: [{ name: \"token-id\", type: \"uint128\" }],\n outputs: {\n response: {\n ok: { optional: { \"string-utf8\": { length: 256 } } },\n error: \"uint128\",\n },\n },\n },\n ],\n fungible_tokens: [],\n non_fungible_tokens: [],\n} as const satisfies AbiContract;\n\n// Camel-case aliases for better DX\nexport const sip010Abi: AbiContract = SIP010_ABI;\nexport const sip009Abi: AbiContract = SIP009_ABI;\nexport const sip013Abi: AbiContract = SIP013_ABI;\n"
6
6
  ],
7
- "mappings": "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",
7
+ "mappings": "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",
8
8
  "debugId": "AB6C51E03AD7EE0164756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -215,6 +215,46 @@ function readPayload(r) {
215
215
  const codeBody = readLPString(r, 4);
216
216
  return { payloadType: PayloadType.VersionedSmartContract, clarityVersion, contractName, codeBody };
217
217
  }
218
+ case PayloadType.Coinbase: {
219
+ const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));
220
+ return { payloadType: PayloadType.Coinbase, coinbaseBuffer };
221
+ }
222
+ case PayloadType.CoinbaseToAltRecipient: {
223
+ const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));
224
+ const recipient = readCV(r);
225
+ return { payloadType: PayloadType.CoinbaseToAltRecipient, coinbaseBuffer, recipient };
226
+ }
227
+ case PayloadType.PoisonMicroblock: {
228
+ const header1 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));
229
+ const header2 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));
230
+ return { payloadType: PayloadType.PoisonMicroblock, header1, header2 };
231
+ }
232
+ case PayloadType.TenureChange: {
233
+ const tenureConsensusHash = bytesToHex(r.readBytes(20));
234
+ const prevTenureConsensusHash = bytesToHex(r.readBytes(20));
235
+ const burnViewConsensusHash = bytesToHex(r.readBytes(20));
236
+ const previousTenureEnd = bytesToHex(r.readBytes(32));
237
+ const previousTenureBlocks = r.readUInt32BE();
238
+ const cause = r.readUInt8();
239
+ const pubkeyHash = bytesToHex(r.readBytes(20));
240
+ return {
241
+ payloadType: PayloadType.TenureChange,
242
+ tenureConsensusHash,
243
+ prevTenureConsensusHash,
244
+ burnViewConsensusHash,
245
+ previousTenureEnd,
246
+ previousTenureBlocks,
247
+ cause,
248
+ pubkeyHash
249
+ };
250
+ }
251
+ case PayloadType.NakamotoCoinbase: {
252
+ const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));
253
+ const optionalCV = readCV(r);
254
+ const recipient = optionalCV.type === "none" ? null : optionalCV.type === "some" ? optionalCV.value : optionalCV;
255
+ const vrfProof = bytesToHex(r.readBytes(VRF_PROOF_BYTES_LENGTH));
256
+ return { payloadType: PayloadType.NakamotoCoinbase, coinbaseBuffer, recipient, vrfProof };
257
+ }
218
258
  default:
219
259
  throw new Error(`Unknown payload type: ${payloadType}`);
220
260
  }
@@ -233,5 +273,5 @@ function deserializeTransaction(input) {
233
273
  };
234
274
  }
235
275
 
236
- //# debugId=4529BFD45E5E5E8B64756E2164756E21
237
- //# sourceMappingURL=stacks-4py5pm0r.cjs.map
276
+ //# debugId=2951E64B5A5D8D3264756E2164756E21
277
+ //# sourceMappingURL=stacks-v3zy6zds.cjs.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/transactions/wire/deserialize.ts"],
4
+ "sourcesContent": [
5
+ "import {\n bytesToHex,\n hexToBytes,\n bytesToAscii,\n bytesToUtf8,\n without0x,\n} from \"../../utils/encoding.ts\";\nimport { c32address } from \"../../utils/c32.ts\";\nimport {\n AuthType,\n PayloadType,\n AddressHashMode,\n PostConditionPrincipalId,\n AssetType,\n RECOVERABLE_ECDSA_SIG_LENGTH_BYTES,\n MEMO_MAX_LENGTH_BYTES,\n COINBASE_BYTES_LENGTH,\n VRF_PROOF_BYTES_LENGTH,\n MICROBLOCK_HEADER_BYTES_LENGTH,\n type StacksTransaction,\n type Authorization,\n type SpendingCondition,\n type TransactionPayload,\n type PostConditionWire,\n type PostConditionPrincipalWire,\n type AssetInfoWire,\n type TransactionAuthField,\n type AnchorMode,\n type PostConditionModeWire,\n type ClarityVersion,\n type TenureChangeCause,\n} from \"../types.ts\";\nimport type { ClarityValue } from \"../../clarity/types.ts\";\nimport { clarityTypeFromByte } from \"../../clarity/types.ts\";\nimport {\n intCV,\n uintCV,\n trueCV,\n falseCV,\n bufferCV,\n noneCV,\n someCV,\n responseOkCV,\n responseErrorCV,\n standardPrincipalCV,\n contractPrincipalCV,\n listCV,\n tupleCV,\n stringAsciiCV,\n stringUtf8CV,\n} from \"../../clarity/values.ts\";\nimport { bytesToTwosBigInt } from \"../../utils/encoding.ts\";\n\nclass Reader {\n private data: Uint8Array;\n public offset = 0;\n\n constructor(data: Uint8Array) {\n this.data = data;\n }\n\n readUInt8(): number {\n return this.data[this.offset++]!;\n }\n\n readUInt16BE(): number {\n const val = ((this.data[this.offset]! << 8) | this.data[this.offset + 1]!) >>> 0;\n this.offset += 2;\n return val;\n }\n\n readUInt32BE(): number {\n const val =\n ((this.data[this.offset]! << 24) |\n (this.data[this.offset + 1]! << 16) |\n (this.data[this.offset + 2]! << 8) |\n this.data[this.offset + 3]!) >>>\n 0;\n this.offset += 4;\n return val;\n }\n\n readBytes(length: number): Uint8Array {\n const slice = this.data.slice(this.offset, this.offset + length);\n this.offset += length;\n return slice;\n }\n\n readBigUInt64BE(): bigint {\n return BigInt(`0x${bytesToHex(this.readBytes(8))}`);\n }\n}\n\nfunction readAddress(r: Reader): string {\n const version = r.readUInt8();\n const hash160 = bytesToHex(r.readBytes(20));\n return c32address(version, hash160);\n}\n\nfunction readLPString(r: Reader, prefixBytes = 1): string {\n let length = 0;\n for (let i = 0; i < prefixBytes; i++) {\n length = (length << 8) | r.readUInt8();\n }\n return bytesToUtf8(r.readBytes(length));\n}\n\nfunction readCV(r: Reader): ClarityValue {\n const typeByte = r.readUInt8();\n const type = clarityTypeFromByte(typeByte);\n\n switch (type) {\n case \"int\":\n return intCV(bytesToTwosBigInt(r.readBytes(16)));\n case \"uint\":\n return uintCV(r.readBytes(16));\n case \"true\":\n return trueCV();\n case \"false\":\n return falseCV();\n case \"buffer\": {\n const len = r.readUInt32BE();\n return bufferCV(r.readBytes(len));\n }\n case \"none\":\n return noneCV();\n case \"some\":\n return someCV(readCV(r));\n case \"ok\":\n return responseOkCV(readCV(r));\n case \"err\":\n return responseErrorCV(readCV(r));\n case \"address\":\n return standardPrincipalCV(readAddress(r));\n case \"contract\": {\n const addr = readAddress(r);\n const name = readLPString(r);\n return contractPrincipalCV(addr, name);\n }\n case \"list\": {\n const len = r.readUInt32BE();\n const items: ClarityValue[] = [];\n for (let i = 0; i < len; i++) items.push(readCV(r));\n return listCV(items);\n }\n case \"tuple\": {\n const len = r.readUInt32BE();\n const data: Record<string, ClarityValue> = {};\n for (let i = 0; i < len; i++) {\n const key = readLPString(r);\n data[key] = readCV(r);\n }\n return tupleCV(data);\n }\n case \"ascii\": {\n const len = r.readUInt32BE();\n return stringAsciiCV(bytesToAscii(r.readBytes(len)));\n }\n case \"utf8\": {\n const len = r.readUInt32BE();\n return stringUtf8CV(bytesToUtf8(r.readBytes(len)));\n }\n default:\n throw new Error(`Unknown clarity type: ${type}`);\n }\n}\n\nfunction readSpendingCondition(r: Reader): SpendingCondition {\n const hashMode = r.readUInt8();\n const signer = bytesToHex(r.readBytes(20));\n const nonce = r.readBigUInt64BE();\n const fee = r.readBigUInt64BE();\n\n if (hashMode === AddressHashMode.P2PKH || hashMode === AddressHashMode.P2WPKH) {\n const keyEncoding = r.readUInt8();\n const signature = bytesToHex(r.readBytes(RECOVERABLE_ECDSA_SIG_LENGTH_BYTES));\n return { hashMode, signer, nonce, fee, keyEncoding, signature } as SpendingCondition;\n }\n\n const fieldCount = r.readUInt32BE();\n const fields: TransactionAuthField[] = [];\n for (let i = 0; i < fieldCount; i++) {\n const fieldType = r.readUInt8();\n if (fieldType <= 0x01) {\n const keyLen = fieldType === 0x00 ? 33 : 65;\n fields.push({\n type: \"publicKey\",\n pubKeyEncoding: fieldType as 0x00 | 0x01,\n data: bytesToHex(r.readBytes(keyLen)),\n });\n } else {\n fields.push({\n type: \"signature\",\n pubKeyEncoding: (fieldType === 0x02 ? 0x00 : 0x01) as 0x00 | 0x01,\n data: bytesToHex(r.readBytes(RECOVERABLE_ECDSA_SIG_LENGTH_BYTES)),\n });\n }\n }\n const signaturesRequired = r.readUInt16BE();\n\n return { hashMode, signer, nonce, fee, fields, signaturesRequired } as SpendingCondition;\n}\n\nfunction readAuthorization(r: Reader): Authorization {\n const authType = r.readUInt8();\n const spendingCondition = readSpendingCondition(r);\n\n if (authType === AuthType.Standard) {\n return { authType: AuthType.Standard, spendingCondition };\n }\n\n const sponsorSpendingCondition = readSpendingCondition(r);\n return {\n authType: AuthType.Sponsored,\n spendingCondition,\n sponsorSpendingCondition,\n };\n}\n\nfunction readAssetInfo(r: Reader): AssetInfoWire {\n return {\n address: readAddress(r),\n contractName: readLPString(r),\n assetName: readLPString(r),\n };\n}\n\nfunction readPostConditionPrincipal(r: Reader): PostConditionPrincipalWire {\n const type = r.readUInt8();\n switch (type) {\n case PostConditionPrincipalId.Origin:\n return { type: \"origin\" };\n case PostConditionPrincipalId.Standard:\n return { type: \"standard\", address: readAddress(r) };\n case PostConditionPrincipalId.Contract:\n return { type: \"contract\", address: readAddress(r), contractName: readLPString(r) };\n default:\n throw new Error(`Unknown post condition principal type: ${type}`);\n }\n}\n\nfunction readPostConditions(r: Reader): PostConditionWire[] {\n const count = r.readUInt32BE();\n const pcs: PostConditionWire[] = [];\n for (let i = 0; i < count; i++) {\n const principal = readPostConditionPrincipal(r);\n const assetType = r.readUInt8();\n switch (assetType) {\n case AssetType.STX:\n pcs.push({ type: \"stx\", principal, conditionCode: r.readUInt8(), amount: r.readBigUInt64BE() });\n break;\n case AssetType.Fungible:\n pcs.push({ type: \"ft\", principal, asset: readAssetInfo(r), conditionCode: r.readUInt8(), amount: r.readBigUInt64BE() });\n break;\n case AssetType.NonFungible:\n pcs.push({ type: \"nft\", principal, asset: readAssetInfo(r), assetId: readCV(r), conditionCode: r.readUInt8() });\n break;\n }\n }\n return pcs;\n}\n\nfunction readPayload(r: Reader): TransactionPayload {\n const payloadType = r.readUInt8();\n\n switch (payloadType) {\n case PayloadType.TokenTransfer: {\n const recipient = readCV(r);\n const amount = r.readBigUInt64BE();\n const memoContentLen = r.readUInt8();\n const memoBytes = r.readBytes(MEMO_MAX_LENGTH_BYTES);\n const memo = bytesToAscii(memoBytes.slice(0, memoContentLen)).replace(/\\0+$/, \"\");\n return { payloadType: PayloadType.TokenTransfer, recipient, amount, memo };\n }\n case PayloadType.ContractCall: {\n const contractAddress = readAddress(r);\n const contractName = readLPString(r);\n const functionName = readLPString(r);\n const numArgs = r.readUInt32BE();\n const functionArgs: ClarityValue[] = [];\n for (let i = 0; i < numArgs; i++) functionArgs.push(readCV(r));\n return { payloadType: PayloadType.ContractCall, contractAddress, contractName, functionName, functionArgs };\n }\n case PayloadType.SmartContract: {\n const contractName = readLPString(r);\n const codeBody = readLPString(r, 4);\n return { payloadType: PayloadType.SmartContract, contractName, codeBody };\n }\n case PayloadType.VersionedSmartContract: {\n const clarityVersion = r.readUInt8() as ClarityVersion;\n const contractName = readLPString(r);\n const codeBody = readLPString(r, 4);\n return { payloadType: PayloadType.VersionedSmartContract, clarityVersion, contractName, codeBody };\n }\n case PayloadType.Coinbase: {\n const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));\n return { payloadType: PayloadType.Coinbase, coinbaseBuffer };\n }\n case PayloadType.CoinbaseToAltRecipient: {\n const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));\n const recipient = readCV(r);\n return { payloadType: PayloadType.CoinbaseToAltRecipient, coinbaseBuffer, recipient };\n }\n case PayloadType.PoisonMicroblock: {\n const header1 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));\n const header2 = bytesToHex(r.readBytes(MICROBLOCK_HEADER_BYTES_LENGTH));\n return { payloadType: PayloadType.PoisonMicroblock, header1, header2 };\n }\n case PayloadType.TenureChange: {\n const tenureConsensusHash = bytesToHex(r.readBytes(20));\n const prevTenureConsensusHash = bytesToHex(r.readBytes(20));\n const burnViewConsensusHash = bytesToHex(r.readBytes(20));\n const previousTenureEnd = bytesToHex(r.readBytes(32));\n const previousTenureBlocks = r.readUInt32BE();\n const cause = r.readUInt8() as TenureChangeCause;\n const pubkeyHash = bytesToHex(r.readBytes(20));\n return {\n payloadType: PayloadType.TenureChange,\n tenureConsensusHash,\n prevTenureConsensusHash,\n burnViewConsensusHash,\n previousTenureEnd,\n previousTenureBlocks,\n cause,\n pubkeyHash,\n };\n }\n case PayloadType.NakamotoCoinbase: {\n const coinbaseBuffer = bytesToHex(r.readBytes(COINBASE_BYTES_LENGTH));\n const optionalCV = readCV(r);\n const recipient = optionalCV.type === \"none\" ? null : optionalCV.type === \"some\" ? optionalCV.value : optionalCV;\n const vrfProof = bytesToHex(r.readBytes(VRF_PROOF_BYTES_LENGTH));\n return { payloadType: PayloadType.NakamotoCoinbase, coinbaseBuffer, recipient, vrfProof };\n }\n default:\n throw new Error(`Unknown payload type: ${payloadType}`);\n }\n}\n\nexport function deserializeTransaction(input: string | Uint8Array): StacksTransaction {\n const bytes = typeof input === \"string\" ? hexToBytes(without0x(input)) : input;\n const r = new Reader(bytes);\n\n return {\n version: r.readUInt8(),\n chainId: r.readUInt32BE(),\n auth: readAuthorization(r),\n anchorMode: r.readUInt8() as AnchorMode,\n postConditionMode: r.readUInt8() as PostConditionModeWire,\n postConditions: readPostConditions(r),\n payload: readPayload(r),\n };\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "2951E64B5A5D8D3264756E2164756E21",
9
+ "names": []
10
+ }
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/utils/constants.ts"],
4
4
  "sourcesContent": [
5
- "// Clarity integer bounds\nexport const MAX_U128 = (1n << 128n) - 1n;\nexport const MAX_I128 = (1n << 127n) - 1n;\nexport const MIN_I128 = -(1n << 127n);\n\n/** C32-encoded address version bytes for single-sig and multi-sig on each network. */\nexport const AddressVersion = {\n MainnetSingleSig: 22,\n MainnetMultiSig: 20,\n TestnetSingleSig: 26,\n TestnetMultiSig: 21,\n} as const;\nexport type AddressVersion = (typeof AddressVersion)[keyof typeof AddressVersion];\n\n/** Mainnet burn address (all-zero hash160). */\nexport const ZERO_ADDRESS = \"SP000000000000000000002Q6VF78\";\n/** Testnet burn address (all-zero hash160). */\nexport const TESTNET_ZERO_ADDRESS = \"ST000000000000000000002AMW42H\";\n\n/** Number of microSTX per 1 STX (10^6). */\nexport const MICROSTX_PER_STX = 1_000_000n;\n"
5
+ "// Clarity integer bounds\nexport const MAX_U128: bigint = (1n << 128n) - 1n;\nexport const MAX_I128: bigint = (1n << 127n) - 1n;\nexport const MIN_I128: bigint = -(1n << 127n);\n\n/** C32-encoded address version bytes for single-sig and multi-sig on each network. */\nexport const AddressVersion = {\n MainnetSingleSig: 22,\n MainnetMultiSig: 20,\n TestnetSingleSig: 26,\n TestnetMultiSig: 21,\n} as const;\nexport type AddressVersion = (typeof AddressVersion)[keyof typeof AddressVersion];\n\n/** Mainnet burn address (all-zero hash160). */\nexport const ZERO_ADDRESS = \"SP000000000000000000002Q6VF78\";\n/** Testnet burn address (all-zero hash160). */\nexport const TESTNET_ZERO_ADDRESS = \"ST000000000000000000002AMW42H\";\n\n/** Number of microSTX per 1 STX (10^6). */\nexport const MICROSTX_PER_STX = 1_000_000n;\n"
6
6
  ],
7
- "mappings": ";AACO,IAAM,YAAY,MAAM,QAAQ;AAChC,IAAM,YAAY,MAAM,QAAQ;AAChC,IAAM,WAAW,EAAE,MAAM;AAGzB,IAAM,iBAAiB;AAAA,EAC5B,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,kBAAkB;AAAA,EAClB,iBAAiB;AACnB;AAIO,IAAM,eAAe;AAErB,IAAM,uBAAuB;AAG7B,IAAM,mBAAmB;",
7
+ "mappings": ";AACO,IAAM,YAAoB,MAAM,QAAQ;AACxC,IAAM,YAAoB,MAAM,QAAQ;AACxC,IAAM,WAAmB,EAAE,MAAM;AAGjC,IAAM,iBAAiB;AAAA,EAC5B,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,kBAAkB;AAAA,EAClB,iBAAiB;AACnB;AAIO,IAAM,eAAe;AAErB,IAAM,uBAAuB;AAG7B,IAAM,mBAAmB;",
8
8
  "debugId": "536701B14D19412164756E2164756E21",
9
9
  "names": []
10
10
  }