@secondlayer/stacks 2.8.1 → 2.9.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.
- package/README.md +88 -0
- package/dist/shared/{stacks-sfpr4b0y.js → stacks-53bjdb6p.js} +2 -2
- package/dist/shared/{stacks-9z833ww5.js → stacks-5nmz5ad9.js} +3 -3
- package/dist/shared/{stacks-9z833ww5.js.map → stacks-5nmz5ad9.js.map} +1 -1
- package/dist/shared/{stacks-s9148m6h.js → stacks-8mj5jw77.js} +6 -4
- package/dist/shared/{stacks-s9148m6h.js.map → stacks-8mj5jw77.js.map} +2 -2
- package/dist/shared/stacks-cdvn8qbh.cjs +20 -0
- package/dist/shared/stacks-cdvn8qbh.cjs.map +10 -0
- package/dist/shared/{stacks-y9txtw3p.cjs → stacks-maamjqma.cjs} +2 -20
- package/dist/shared/{stacks-y9txtw3p.cjs.map → stacks-maamjqma.cjs.map} +3 -4
- package/dist/shared/stacks-q1mjkt15.js +34 -0
- package/dist/shared/stacks-q1mjkt15.js.map +10 -0
- package/dist/shared/{stacks-a63xq06y.js → stacks-z1j5d6fd.js} +3 -21
- package/dist/shared/{stacks-a63xq06y.js.map → stacks-z1j5d6fd.js.map} +3 -4
- package/dist/src/actions/index.js +7 -5
- package/dist/src/actions/index.js.map +1 -1
- package/dist/src/bitcoin/index.cjs +679 -0
- package/dist/src/bitcoin/index.cjs.map +19 -0
- package/dist/src/bitcoin/index.d.cts +743 -0
- package/dist/src/bitcoin/index.d.ts +743 -0
- package/dist/src/bitcoin/index.js +704 -0
- package/dist/src/bitcoin/index.js.map +19 -0
- package/dist/src/bns/index.js +4 -3
- package/dist/src/bns/index.js.map +2 -2
- package/dist/src/index.js +6 -4
- package/dist/src/index.js.map +2 -2
- package/dist/src/pox/index.js +5 -4
- package/dist/src/pox/index.js.map +2 -2
- package/dist/src/sbtc/index.js +5 -4
- package/dist/src/sbtc/index.js.map +2 -2
- package/dist/src/stackingdao/index.js +4 -3
- package/dist/src/stackingdao/index.js.map +2 -2
- package/package.json +8 -4
- /package/dist/shared/{stacks-sfpr4b0y.js.map → stacks-53bjdb6p.js.map} +0 -0
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"import { bech32, bech32m } from \"@scure/base\";\n\nimport { bytesToHex, hexToBytes } from \"../utils/encoding.ts\";\nimport { SBTC_BTC_ADDRESS_VERSION } from \"./constants.ts\";\nimport type { SbtcBtcRecipient } from \"./types.ts\";\n\nconst BASE58_ALPHABET =\n\t\"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz\";\n\nfunction base58Encode(bytes: Uint8Array): string {\n\tlet num = 0n;\n\tfor (const byte of bytes) num = num * 256n + BigInt(byte);\n\n\tlet str = \"\";\n\twhile (num > 0n) {\n\t\tconst r = num % 58n;\n\t\tstr = BASE58_ALPHABET[Number(r)] + str;\n\t\tnum /= 58n;\n\t}\n\tfor (const byte of bytes) {\n\t\tif (byte === 0) str = `1${str}`;\n\t\telse break;\n\t}\n\treturn str;\n}\n\nfunction sha256(bytes: Uint8Array): Uint8Array {\n\tconst hasher = new Bun.CryptoHasher(\"sha256\");\n\thasher.update(bytes);\n\treturn hasher.digest() as Uint8Array;\n}\n\nfunction doubleSha256(bytes: Uint8Array): Uint8Array {\n\treturn sha256(sha256(bytes));\n}\n\nfunction base58CheckEncode(version: number, hashbytes: Uint8Array): string {\n\tconst payload = new Uint8Array(1 + hashbytes.length);\n\tpayload[0] = version;\n\tpayload.set(hashbytes, 1);\n\tconst checksum = doubleSha256(payload).slice(0, 4);\n\tconst full = new Uint8Array(payload.length + 4);\n\tfull.set(payload, 0);\n\tfull.set(checksum, payload.length);\n\treturn base58Encode(full);\n}\n\n/**\n * Format a `(buff 1) + (buff 32)` BTC recipient tuple into a canonical\n * mainnet Bitcoin address string.\n *\n * Used to decode the `recipient` field of `withdrawal-create` events\n * into a human-readable address. Mirrors the reverse direction of the\n * `parseBtcAddress` helper in `pox/utils.ts`.\n */\nexport function formatBtcAddress(recipient: SbtcBtcRecipient): string {\n\tconst { version, hashbytes } = recipient;\n\tswitch (version) {\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2pkh:\n\t\t\treturn base58CheckEncode(0x00, hashbytes);\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2sh:\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2sh_p2wpkh:\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2sh_p2wsh:\n\t\t\treturn base58CheckEncode(0x05, hashbytes);\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2wpkh:\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2wsh: {\n\t\t\tconst words = bech32.toWords(hashbytes);\n\t\t\treturn bech32.encode(\"bc\", [0, ...words]);\n\t\t}\n\t\tcase SBTC_BTC_ADDRESS_VERSION.p2tr: {\n\t\t\tconst words = bech32m.toWords(hashbytes);\n\t\t\treturn bech32m.encode(\"bc\", [1, ...words]);\n\t\t}\n\t\tdefault:\n\t\t\tthrow new Error(`Unknown BTC address version: ${version}`);\n\t}\n}\n\n/**\n * Validate that a buffer is a 32-byte Bitcoin transaction id.\n * Throws if the buffer is the wrong length.\n */\nexport function validateBitcoinTxid(buf: Uint8Array): void {\n\tif (buf.length !== 32) {\n\t\tthrow new Error(`Bitcoin txid must be 32 bytes, got ${buf.length}`);\n\t}\n}\n\n/**\n * Hex-encode a Bitcoin txid for storage / display. Throws if the input is\n * not 32 bytes.\n */\nexport function bitcoinTxidToHex(buf: Uint8Array): string {\n\tvalidateBitcoinTxid(buf);\n\treturn bytesToHex(buf);\n}\n\n/**\n * Parse a hex string back into a 32-byte txid. Mirrors `bitcoinTxidToHex`.\n */\nexport function bitcoinTxidFromHex(hex: string): Uint8Array {\n\tconst buf = hexToBytes(hex);\n\tvalidateBitcoinTxid(buf);\n\treturn buf;\n}\n\n/**\n * Convert satoshis (BigInt) to a decimal-string sBTC amount.\n *\n * sBTC has 8 decimals (matching BTC). 100_000_000 sats = 1 sBTC.\n */\nexport function satsToSbtc(sats: bigint): string {\n\tconst sign = sats < 0n ? \"-\" : \"\";\n\tconst abs = sats < 0n ? -sats : sats;\n\tconst whole = abs / 100_000_000n;\n\tconst frac = abs % 100_000_000n;\n\tif (frac === 0n) return `${sign}${whole}`;\n\tconst fracStr = frac.toString().padStart(8, \"0\").replace(/0+$/, \"\");\n\treturn `${sign}${whole}.${fracStr}`;\n}\n\n/**\n * Parse a decimal-string sBTC amount into satoshis. Inverse of\n * {@link satsToSbtc}.\n */\nexport function sbtcToSats(amount: string): bigint {\n\tconst trimmed = amount.trim();\n\tif (!/^-?\\d+(?:\\.\\d+)?$/.test(trimmed)) {\n\t\tthrow new Error(`Invalid sBTC amount: ${amount}`);\n\t}\n\tconst negative = trimmed.startsWith(\"-\");\n\tconst body = negative ? trimmed.slice(1) : trimmed;\n\tconst dotIndex = body.indexOf(\".\");\n\tconst whole = dotIndex < 0 ? body : body.slice(0, dotIndex);\n\tconst frac = dotIndex < 0 ? \"\" : body.slice(dotIndex + 1);\n\tif (frac.length > 8) {\n\t\tthrow new Error(`sBTC amount has more than 8 decimal places: ${amount}`);\n\t}\n\tconst padded = frac.padEnd(8, \"0\");\n\tconst sats = BigInt(whole) * 100_000_000n + BigInt(padded);\n\treturn negative ? -sats : sats;\n}\n",
|
|
9
9
|
"import type { Client } from \"../clients/types.ts\";\nimport {\n\tgetBalance,\n\tgetDecimals,\n\tgetName,\n\tgetSymbol,\n\tgetTokenUri,\n\tgetTotalSupply,\n} from \"./actions.ts\";\n\nexport type {\n\tCompletedDepositEvent,\n\tKeyRotationEvent,\n\tSbtcBtcRecipient,\n\tSbtcEventByTopic,\n\tSbtcRegistryEvent,\n\tSbtcTokenBurnEvent,\n\tSbtcTokenEvent,\n\tSbtcTokenMintEvent,\n\tSbtcTokenTransferEvent,\n\tUpdateProtocolContractEvent,\n\tWithdrawalAcceptEvent,\n\tWithdrawalCreateEvent,\n\tWithdrawalRejectEvent,\n} from \"./types.ts\";\n\nexport {\n\tSBTC_ASSET_IDENTIFIER_MAINNET,\n\tSBTC_ASSET_IDENTIFIER_TESTNET,\n\tSBTC_BTC_ADDRESS_VERSION,\n\tSBTC_CONTRACTS,\n\tSBTC_DECIMALS,\n\tSBTC_EVENT_TOPICS,\n\tSBTC_UNIT_NAME,\n\tsbtcContractId,\n} from \"./constants.ts\";\nexport type { SbtcEventTopic, SbtcNetwork } from \"./constants.ts\";\nexport {\n\tbitcoinTxidFromHex,\n\tbitcoinTxidToHex,\n\tformatBtcAddress,\n\tsatsToSbtc,\n\tsbtcToSats,\n\tvalidateBitcoinTxid,\n} from \"./utils.ts\";\nexport { SBTC_TOKEN_ABI } from \"./abi.ts\";\n\n/** Actions provided by the sBTC extension. */\nexport type SbtcActions = {\n\tsbtc: {\n\t\tgetTotalSupply: () => Promise<bigint>;\n\t\tgetBalance: (owner: string) => Promise<bigint>;\n\t\tgetName: () => Promise<string>;\n\t\tgetSymbol: () => Promise<string>;\n\t\tgetDecimals: () => Promise<bigint>;\n\t\tgetTokenUri: () => Promise<string | null>;\n\t};\n};\n\n/**\n * sBTC extension for the Stacks client.\n *\n * @example\n * import { createWalletClient, http, mainnet } from \"stacks\";\n * import { sbtc } from \"stacks/sbtc\";\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: http(),\n * }).extend(sbtc());\n *\n * const supply = await client.sbtc.getTotalSupply();\n * const balance = await client.sbtc.getBalance(\"SP1...\");\n */\nexport function sbtc(): (client: Client) => SbtcActions {\n\treturn (client: Client) => ({\n\t\tsbtc: {\n\t\t\tgetTotalSupply: () => getTotalSupply(client),\n\t\t\tgetBalance: (owner: string) => getBalance(client, owner),\n\t\t\tgetName: () => getName(client),\n\t\t\tgetSymbol: () => getSymbol(client),\n\t\t\tgetDecimals: () => getDecimals(client),\n\t\t\tgetTokenUri: () => getTokenUri(client),\n\t\t},\n\t});\n}\n"
|
|
10
10
|
],
|
|
11
|
-
"mappings": "
|
|
12
|
-
"debugId": "
|
|
11
|
+
"mappings": "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",
|
|
12
|
+
"debugId": "8D459A9282F0798264756E2164756E21",
|
|
13
13
|
"names": []
|
|
14
14
|
}
|
|
@@ -3,8 +3,9 @@ import {
|
|
|
3
3
|
} from "../../shared/stacks-kg1npstf.js";
|
|
4
4
|
import {
|
|
5
5
|
getContract
|
|
6
|
-
} from "../../shared/stacks-
|
|
7
|
-
import"../../shared/stacks-
|
|
6
|
+
} from "../../shared/stacks-8mj5jw77.js";
|
|
7
|
+
import"../../shared/stacks-z1j5d6fd.js";
|
|
8
|
+
import"../../shared/stacks-q1mjkt15.js";
|
|
8
9
|
import"../../shared/stacks-ttbq8emk.js";
|
|
9
10
|
import"../../shared/stacks-709tra19.js";
|
|
10
11
|
import"../../shared/stacks-g7ffp8aj.js";
|
|
@@ -339,5 +340,5 @@ export {
|
|
|
339
340
|
STACKINGDAO_CONTRACTS
|
|
340
341
|
};
|
|
341
342
|
|
|
342
|
-
//# debugId=
|
|
343
|
+
//# debugId=9C02BA63EC0F722164756E2164756E21
|
|
343
344
|
//# sourceMappingURL=index.js.map
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"import { getContract } from \"../actions/getContract.ts\";\nimport { SIP010_ABI } from \"../clarity/abi/standards.ts\";\nimport type { Client } from \"../clients/types.ts\";\nimport { Pc } from \"../postconditions/index.ts\";\nimport {\n\tDATA_CORE_V1_ABI,\n\tDATA_CORE_V3_ABI,\n\tRESERVE_V1_ABI,\n\tSTACKING_DAO_CORE_ABI,\n} from \"./abi.ts\";\nimport { STACKINGDAO_CONTRACTS, TRAIT_CONTRACTS } from \"./constants.ts\";\nimport type {\n\tDepositParams,\n\tExchangeRateInfo,\n\tFeeInfo,\n\tInitWithdrawParams,\n\tWithdrawIdleParams,\n\tWithdrawParams,\n\tWithdrawalInfo,\n} from \"./types.ts\";\n\nfunction assertMainnet(client: Client) {\n\tif (!client.chain) {\n\t\tthrow new Error(\"Client must have a chain configured\");\n\t}\n\tif (client.chain.network !== \"mainnet\") {\n\t\tthrow new Error(\"StackingDAO is only available on mainnet\");\n\t}\n}\n\nfunction getCoreContract(client: Client) {\n\tassertMainnet(client);\n\tconst c = STACKINGDAO_CONTRACTS.core;\n\treturn getContract({\n\t\tclient,\n\t\taddress: c.address,\n\t\tname: c.name,\n\t\tabi: STACKING_DAO_CORE_ABI,\n\t});\n}\n\nfunction getStstxToken(client: Client) {\n\tassertMainnet(client);\n\tconst c = STACKINGDAO_CONTRACTS.ststxToken;\n\treturn getContract({\n\t\tclient,\n\t\taddress: c.address,\n\t\tname: c.name,\n\t\tabi: SIP010_ABI,\n\t});\n}\n\nfunction getDataCoreV1(client: Client) {\n\tassertMainnet(client);\n\tconst c = STACKINGDAO_CONTRACTS.dataCoreV1;\n\treturn getContract({\n\t\tclient,\n\t\taddress: c.address,\n\t\tname: c.name,\n\t\tabi: DATA_CORE_V1_ABI,\n\t});\n}\n\nfunction getDataCoreV3(client: Client) {\n\tassertMainnet(client);\n\tconst c = STACKINGDAO_CONTRACTS.dataCore;\n\treturn getContract({\n\t\tclient,\n\t\taddress: c.address,\n\t\tname: c.name,\n\t\tabi: DATA_CORE_V3_ABI,\n\t});\n}\n\nfunction getReserveContract(client: Client) {\n\tassertMainnet(client);\n\tconst c = STACKINGDAO_CONTRACTS.reserve;\n\treturn getContract({\n\t\tclient,\n\t\taddress: c.address,\n\t\tname: c.name,\n\t\tabi: RESERVE_V1_ABI,\n\t});\n}\n\nconst traits = {\n\treserve: TRAIT_CONTRACTS.reserve,\n\tcommissionContract: TRAIT_CONTRACTS.commission,\n\tstakingContract: TRAIT_CONTRACTS.staking,\n\tdirectHelpers: TRAIT_CONTRACTS.directHelpers,\n};\n\n// ── User Actions ──\n\nexport async function deposit(\n\tclient: Client,\n\tparams: DepositParams,\n): Promise<string> {\n\tconst core = getCoreContract(client);\n\treturn core.call.deposit(\n\t\t{\n\t\t\t...traits,\n\t\t\tstxAmount: params.amount,\n\t\t\treferrer: params.referrer ?? null,\n\t\t\tpool: params.pool ?? null,\n\t\t},\n\t\t{\n\t\t\tpostConditions: client.account?.address\n\t\t\t\t? [\n\t\t\t\t\t\tPc.principal(client.account.address)\n\t\t\t\t\t\t\t.willSendEq(params.amount)\n\t\t\t\t\t\t\t.ustx(),\n\t\t\t\t\t]\n\t\t\t\t: [],\n\t\t},\n\t);\n}\n\nexport async function initWithdraw(\n\tclient: Client,\n\tparams: InitWithdrawParams,\n): Promise<string> {\n\tconst core = getCoreContract(client);\n\tconst ststx = STACKINGDAO_CONTRACTS.ststxToken;\n\treturn core.call.initWithdraw(\n\t\t{\n\t\t\treserve: traits.reserve,\n\t\t\tdirectHelpers: traits.directHelpers,\n\t\t\tststxAmount: params.ststxAmount,\n\t\t},\n\t\t{\n\t\t\tpostConditions: client.account?.address\n\t\t\t\t? [\n\t\t\t\t\t\tPc.principal(client.account.address)\n\t\t\t\t\t\t\t.willSendEq(params.ststxAmount)\n\t\t\t\t\t\t\t.ft(`${ststx.address}.${ststx.name}`, \"ststx\"),\n\t\t\t\t\t]\n\t\t\t\t: [],\n\t\t},\n\t);\n}\n\nexport async function withdraw(\n\tclient: Client,\n\tparams: WithdrawParams,\n): Promise<string> {\n\tconst core = getCoreContract(client);\n\treturn core.call.withdraw({\n\t\treserve: traits.reserve,\n\t\tcommissionContract: traits.commissionContract,\n\t\tstakingContract: traits.stakingContract,\n\t\tnftId: params.nftId,\n\t});\n}\n\nexport async function withdrawIdle(\n\tclient: Client,\n\tparams: WithdrawIdleParams,\n): Promise<string> {\n\tconst core = getCoreContract(client);\n\tconst ststx = STACKINGDAO_CONTRACTS.ststxToken;\n\treturn core.call.withdrawIdle(\n\t\t{\n\t\t\treserve: traits.reserve,\n\t\t\tdirectHelpers: traits.directHelpers,\n\t\t\tcommissionContract: traits.commissionContract,\n\t\t\tstakingContract: traits.stakingContract,\n\t\t\tststxAmount: params.ststxAmount,\n\t\t},\n\t\t{\n\t\t\tpostConditions: client.account?.address\n\t\t\t\t? [\n\t\t\t\t\t\tPc.principal(client.account.address)\n\t\t\t\t\t\t\t.willSendEq(params.ststxAmount)\n\t\t\t\t\t\t\t.ft(`${ststx.address}.${ststx.name}`, \"ststx\"),\n\t\t\t\t\t]\n\t\t\t\t: [],\n\t\t},\n\t);\n}\n\n// ── Read-only Queries ──\n\nexport async function getStSTXBalance(\n\tclient: Client,\n\taddress: string,\n): Promise<bigint> {\n\tconst token = getStstxToken(client);\n\treturn (await token.read.getBalance({ account: address })) as bigint;\n}\n\nexport async function getExchangeRate(\n\tclient: Client,\n): Promise<ExchangeRateInfo> {\n\tconst reserve = getReserveContract(client);\n\tconst dataV3 = getDataCoreV3(client);\n\n\tconst [totalStx, ststxSupply] = await Promise.all([\n\t\treserve.read.getTotalStx({}) as Promise<bigint>,\n\t\tgetTotalSupply(client),\n\t]);\n\n\tconst stxPerStstx = (await dataV3.read.getStxPerStstxHelper({\n\t\tstxAmount: totalStx,\n\t})) as bigint;\n\n\treturn { stxPerStstx, ststxSupply, totalStx };\n}\n\nexport async function getTotalSupply(client: Client): Promise<bigint> {\n\tconst token = getStstxToken(client);\n\treturn (await token.read.getTotalSupply({})) as bigint;\n}\n\nexport async function getWithdrawalInfo(\n\tclient: Client,\n\tnftId: bigint,\n): Promise<WithdrawalInfo> {\n\tconst dataV1 = getDataCoreV1(client);\n\treturn (await dataV1.read.getWithdrawalsByNft({\n\t\tnftId,\n\t})) as WithdrawalInfo;\n}\n\nexport async function getFees(client: Client): Promise<FeeInfo> {\n\tconst core = getCoreContract(client);\n\tconst [stackFee, unstackFee, withdrawIdleFee] = await Promise.all([\n\t\tcore.read.getStackFee({}) as Promise<bigint>,\n\t\tcore.read.getUnstackFee({}) as Promise<bigint>,\n\t\tcore.read.getWithdrawIdleFee({}) as Promise<bigint>,\n\t]);\n\treturn { stackFee, unstackFee, withdrawIdleFee };\n}\n\nexport async function getReserveBalance(client: Client): Promise<bigint> {\n\tconst reserve = getReserveContract(client);\n\treturn (await reserve.read.getTotalStx({})) as bigint;\n}\n\nexport async function getShutdownDeposits(client: Client): Promise<boolean> {\n\tconst core = getCoreContract(client);\n\treturn (await core.read.getShutdownDeposits({})) as boolean;\n}\n",
|
|
8
8
|
"import type { Client } from \"../clients/types.ts\";\nimport {\n\tdeposit,\n\tgetExchangeRate,\n\tgetFees,\n\tgetReserveBalance,\n\tgetShutdownDeposits,\n\tgetStSTXBalance,\n\tgetTotalSupply,\n\tgetWithdrawalInfo,\n\tinitWithdraw,\n\twithdraw,\n\twithdrawIdle,\n} from \"./actions.ts\";\nimport type {\n\tDepositParams,\n\tExchangeRateInfo,\n\tFeeInfo,\n\tInitWithdrawParams,\n\tWithdrawIdleParams,\n\tWithdrawParams,\n\tWithdrawalInfo,\n} from \"./types.ts\";\n\nexport type {\n\tDepositParams,\n\tInitWithdrawParams,\n\tWithdrawParams,\n\tWithdrawIdleParams,\n\tExchangeRateInfo,\n\tWithdrawalInfo,\n\tFeeInfo,\n};\n/** Actions provided by the StackingDAO extension. */\nexport type StackingDaoActions = {\n\tstackingDao: {\n\t\tdeposit: (params: DepositParams) => Promise<string>;\n\t\tinitWithdraw: (params: InitWithdrawParams) => Promise<string>;\n\t\twithdraw: (params: WithdrawParams) => Promise<string>;\n\t\twithdrawIdle: (params: WithdrawIdleParams) => Promise<string>;\n\t\tgetStSTXBalance: (address: string) => Promise<bigint>;\n\t\tgetExchangeRate: () => Promise<ExchangeRateInfo>;\n\t\tgetTotalSupply: () => Promise<bigint>;\n\t\tgetWithdrawalInfo: (nftId: bigint) => Promise<WithdrawalInfo>;\n\t\tgetFees: () => Promise<FeeInfo>;\n\t\tgetReserveBalance: () => Promise<bigint>;\n\t\tgetShutdownDeposits: () => Promise<boolean>;\n\t};\n};\n\nexport { STACKINGDAO_CONTRACTS, TRAIT_CONTRACTS } from \"./constants.ts\";\n\n/**\n * StackingDAO liquid staking extension.\n * Deposit STX → receive stSTX. Auto-compounding stacking rewards.\n *\n * @example\n * import { createWalletClient, http, mainnet } from \"stacks\";\n * import { stackingDao } from \"stacks/stackingdao\";\n *\n * const client = createWalletClient({ ... }).extend(stackingDao());\n *\n * // Deposit STX for stSTX\n * await client.stackingDao.deposit({ amount: 100_000_000_000n });\n *\n * // Check exchange rate\n * const rate = await client.stackingDao.getExchangeRate();\n */\nexport function stackingDao(): (client: Client) => StackingDaoActions {\n\treturn (client: Client) => ({\n\t\tstackingDao: {\n\t\t\t/** Deposit STX, receive stSTX. */\n\t\t\tdeposit: (params: DepositParams) => deposit(client, params),\n\n\t\t\t/** Initiate withdrawal — burns stSTX, mints NFT receipt. */\n\t\t\tinitWithdraw: (params: InitWithdrawParams) =>\n\t\t\t\tinitWithdraw(client, params),\n\n\t\t\t/** Finalize withdrawal — burns NFT, receive STX. */\n\t\t\twithdraw: (params: WithdrawParams) => withdraw(client, params),\n\n\t\t\t/** Withdraw idle STX instantly (burns stSTX). */\n\t\t\twithdrawIdle: (params: WithdrawIdleParams) =>\n\t\t\t\twithdrawIdle(client, params),\n\n\t\t\t/** Get stSTX balance for an address. */\n\t\t\tgetStSTXBalance: (address: string) => getStSTXBalance(client, address),\n\n\t\t\t/** Get current STX/stSTX exchange rate info. */\n\t\t\tgetExchangeRate: () => getExchangeRate(client),\n\n\t\t\t/** Get total stSTX supply. */\n\t\t\tgetTotalSupply: () => getTotalSupply(client),\n\n\t\t\t/** Get withdrawal NFT info by ID. Returns tuple with amounts and unlock height. */\n\t\t\tgetWithdrawalInfo: (nftId: bigint) => getWithdrawalInfo(client, nftId),\n\n\t\t\t/** Get current fee rates. */\n\t\t\tgetFees: () => getFees(client),\n\n\t\t\t/** Get total STX in reserve. */\n\t\t\tgetReserveBalance: () => getReserveBalance(client),\n\n\t\t\t/** Check if deposits are shut down. */\n\t\t\tgetShutdownDeposits: () => getShutdownDeposits(client),\n\t\t},\n\t});\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": "
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": "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",
|
|
11
|
+
"debugId": "9C02BA63EC0F722164756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@secondlayer/stacks",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.9.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -64,6 +64,11 @@
|
|
|
64
64
|
"import": "./dist/src/bns/index.js",
|
|
65
65
|
"require": "./dist/src/bns/index.cjs"
|
|
66
66
|
},
|
|
67
|
+
"./bitcoin": {
|
|
68
|
+
"types": "./dist/src/bitcoin/index.d.ts",
|
|
69
|
+
"import": "./dist/src/bitcoin/index.js",
|
|
70
|
+
"require": "./dist/src/bitcoin/index.cjs"
|
|
71
|
+
},
|
|
67
72
|
"./pox": {
|
|
68
73
|
"types": "./dist/src/pox/index.d.ts",
|
|
69
74
|
"import": "./dist/src/pox/index.js",
|
|
@@ -105,9 +110,7 @@
|
|
|
105
110
|
"require": "./dist/src/x402/index.cjs"
|
|
106
111
|
}
|
|
107
112
|
},
|
|
108
|
-
"files": [
|
|
109
|
-
"dist"
|
|
110
|
-
],
|
|
113
|
+
"files": ["dist"],
|
|
111
114
|
"scripts": {
|
|
112
115
|
"build": "bunup",
|
|
113
116
|
"test": "bun test",
|
|
@@ -118,6 +121,7 @@
|
|
|
118
121
|
"access": "public"
|
|
119
122
|
},
|
|
120
123
|
"devDependencies": {
|
|
124
|
+
"@stacks/clarinet-sdk": "3.21.0",
|
|
121
125
|
"@stacks/transactions": "7.0.6",
|
|
122
126
|
"@types/bun": "latest"
|
|
123
127
|
},
|
|
File without changes
|