@babylonlabs-io/ts-sdk 0.58.1 → 0.59.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BTCVaultRegistry.abi-3VLWva2x.cjs +2 -0
- package/dist/BTCVaultRegistry.abi-3VLWva2x.cjs.map +1 -0
- package/dist/{BTCVaultRegistry.abi-CixOlp3B.js → BTCVaultRegistry.abi-B3BLhpJ4.js} +30 -13
- package/dist/BTCVaultRegistry.abi-B3BLhpJ4.js.map +1 -0
- package/dist/{PeginManager-C8ixWlUM.js → PeginManager-1R9dMB1G.js} +3 -3
- package/dist/{PeginManager-C8ixWlUM.js.map → PeginManager-1R9dMB1G.js.map} +1 -1
- package/dist/{PeginManager-CogqZaa2.cjs → PeginManager-OXUOsgz2.cjs} +2 -2
- package/dist/{PeginManager-CogqZaa2.cjs.map → PeginManager-OXUOsgz2.cjs.map} +1 -1
- package/dist/{batchPoll-D5IDDOa8.cjs → batchPoll-C4hwVFa8.cjs} +2 -2
- package/dist/batchPoll-C4hwVFa8.cjs.map +1 -0
- package/dist/{batchPoll-B0VxT62K.js → batchPoll-L9LzMl1E.js} +3 -3
- package/dist/batchPoll-L9LzMl1E.js.map +1 -0
- package/dist/{buildAndBroadcastRefund-DBA-Mp4I.js → buildAndBroadcastRefund-DpF_b3d9.js} +457 -428
- package/dist/buildAndBroadcastRefund-DpF_b3d9.js.map +1 -0
- package/dist/buildAndBroadcastRefund-rSxXMwFd.cjs +2 -0
- package/dist/buildAndBroadcastRefund-rSxXMwFd.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +52 -51
- package/dist/{mempoolApi-CMHEz4ez.js → mempoolApi-BQKF5MTr.js} +96 -79
- package/dist/mempoolApi-BQKF5MTr.js.map +1 -0
- package/dist/mempoolApi-BxhMqJ4f.cjs +2 -0
- package/dist/mempoolApi-BxhMqJ4f.cjs.map +1 -0
- package/dist/onChainBtcPubkey-C_a2L3kL.cjs.map +1 -1
- package/dist/onChainBtcPubkey-DeF4cKoO.js.map +1 -1
- package/dist/{peginState-BB81JI6I.js → peginState-CxDiaKuk.js} +26 -19
- package/dist/peginState-CxDiaKuk.js.map +1 -0
- package/dist/peginState-eaQ4IO_R.cjs +2 -0
- package/dist/peginState-eaQ4IO_R.cjs.map +1 -0
- package/dist/{reservation-CbAXa7VG.js → reservation-B4i_PQhY.js} +2 -2
- package/dist/{reservation-CbAXa7VG.js.map → reservation-B4i_PQhY.js.map} +1 -1
- package/dist/{reservation-RGKvg2x6.cjs → reservation-CDbInVw0.cjs} +2 -2
- package/dist/{reservation-RGKvg2x6.cjs.map → reservation-CDbInVw0.cjs.map} +1 -1
- package/dist/tbv/core/clients/eth/onChainBtcPubkey.d.ts +2 -2
- package/dist/tbv/core/clients/eth/types.d.ts +15 -3
- package/dist/tbv/core/clients/eth/types.d.ts.map +1 -1
- package/dist/tbv/core/clients/eth/vault-registry-reader.d.ts +24 -7
- package/dist/tbv/core/clients/eth/vault-registry-reader.d.ts.map +1 -1
- package/dist/tbv/core/clients/index.cjs +1 -1
- package/dist/tbv/core/clients/index.js +2 -2
- package/dist/tbv/core/contracts/abis/BTCVaultRegistry.abi.d.ts +14 -14
- package/dist/tbv/core/contracts/abis/BTCVaultRegistry.abi.d.ts.map +1 -1
- package/dist/tbv/core/contracts/index.cjs +1 -1
- package/dist/tbv/core/contracts/index.js +1 -1
- package/dist/tbv/core/index.cjs +1 -1
- package/dist/tbv/core/index.js +58 -57
- package/dist/tbv/core/managers/index.cjs +1 -1
- package/dist/tbv/core/managers/index.js +1 -1
- package/dist/tbv/core/services/activation/activateVault.d.ts +45 -0
- package/dist/tbv/core/services/activation/activateVault.d.ts.map +1 -1
- package/dist/tbv/core/services/activation/index.d.ts +1 -1
- package/dist/tbv/core/services/activation/index.d.ts.map +1 -1
- package/dist/tbv/core/services/deposit/peginState.d.ts +24 -0
- package/dist/tbv/core/services/deposit/peginState.d.ts.map +1 -1
- package/dist/tbv/core/services/deposit/validateOnChainParticipantKeys.d.ts.map +1 -1
- package/dist/tbv/core/services/index.cjs +1 -1
- package/dist/tbv/core/services/index.js +34 -33
- package/dist/tbv/core/utils/index.cjs +1 -1
- package/dist/tbv/core/utils/index.js +1 -1
- package/dist/tbv/index.cjs +1 -1
- package/dist/tbv/index.js +58 -57
- package/package.json +1 -1
- package/dist/BTCVaultRegistry.abi-AUAyCHal.cjs +0 -2
- package/dist/BTCVaultRegistry.abi-AUAyCHal.cjs.map +0 -1
- package/dist/BTCVaultRegistry.abi-CixOlp3B.js.map +0 -1
- package/dist/batchPoll-B0VxT62K.js.map +0 -1
- package/dist/batchPoll-D5IDDOa8.cjs.map +0 -1
- package/dist/buildAndBroadcastRefund-BL8u-Ti4.cjs +0 -2
- package/dist/buildAndBroadcastRefund-BL8u-Ti4.cjs.map +0 -1
- package/dist/buildAndBroadcastRefund-DBA-Mp4I.js.map +0 -1
- package/dist/mempoolApi-CMHEz4ez.js.map +0 -1
- package/dist/mempoolApi-DfD3_Y6v.cjs +0 -2
- package/dist/mempoolApi-DfD3_Y6v.cjs.map +0 -1
- package/dist/peginState-BB81JI6I.js.map +0 -1
- package/dist/peginState-CBBJw4Za.cjs +0 -2
- package/dist/peginState-CBBJw4Za.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reservation-RGKvg2x6.cjs","sources":["../src/tbv/core/utils/utxo/availability.ts","../src/tbv/core/utils/utxo/reservation.ts"],"sourcesContent":["/**\n * UTXO Availability Validation\n *\n * Validates that UTXOs referenced in a pre-pegin transaction are still unspent\n * BEFORE asking the user to sign. This prevents wasted signing effort when\n * UTXOs have already been spent by unrelated transactions.\n *\n * These functions are pure — they accept pre-fetched UTXOs and perform no I/O.\n * The vault service wrapper is responsible for fetching UTXOs from the mempool.\n */\n\nimport { Transaction } from \"bitcoinjs-lib\";\nimport { Buffer } from \"buffer\";\n\n/**\n * Reference to a Bitcoin UTXO by its outpoint (txid + vout).\n *\n * Used by the availability check to compare a Pre-PegIn transaction's\n * declared inputs against the wallet's current spendable set. Txids are\n * compared case-insensitively; callers should treat the txid as opaque\n * lowercase hex.\n */\nexport interface UtxoRef {\n txid: string;\n vout: number;\n}\n\n/**\n * Information about a missing/spent UTXO.\n */\nexport interface MissingUtxoInfo {\n /** Transaction ID of the missing UTXO */\n txid: string;\n /** Output index of the missing UTXO */\n vout: number;\n}\n\n/**\n * Result of UTXO validation.\n */\nexport interface UtxoValidationResult {\n /** Whether all UTXOs are still available */\n allAvailable: boolean;\n /** List of missing UTXOs (if any) */\n missingUtxos: MissingUtxoInfo[];\n /** Total number of inputs checked */\n totalInputs: number;\n}\n\n/**\n * Error thrown when UTXOs are not available.\n */\nexport class UtxoNotAvailableError extends Error {\n public readonly missingUtxos: MissingUtxoInfo[];\n\n constructor(missingUtxos: MissingUtxoInfo[]) {\n const count = missingUtxos.length;\n const message =\n count === 1\n ? \"The UTXO for this peg-in is no longer available. It may have been spent in another transaction. Please create a new peg-in request with a different UTXO.\"\n : `${count} UTXOs for this peg-in are no longer available. They may have been spent. Please create a new peg-in request with different UTXOs.`;\n\n super(message);\n this.name = \"UtxoNotAvailableError\";\n this.missingUtxos = missingUtxos;\n }\n}\n\n/**\n * Extract input references (txid:vout) from an unsigned transaction.\n *\n * @param unsignedTxHex - Unsigned transaction hex\n * @returns Array of input references\n */\nexport function extractInputsFromTransaction(\n unsignedTxHex: string,\n): Array<{ txid: string; vout: number }> {\n const cleanHex = unsignedTxHex.startsWith(\"0x\")\n ? unsignedTxHex.slice(2)\n : unsignedTxHex;\n\n let tx: Transaction;\n try {\n tx = Transaction.fromHex(cleanHex);\n } catch (error) {\n throw new Error(\n `Failed to parse BTC transaction: ${error instanceof Error ? error.message : String(error)}`,\n );\n }\n\n return tx.ins.map((input) => ({\n // Bitcoin stores txid in reverse byte order\n txid: Buffer.from(input.hash).reverse().toString(\"hex\"),\n vout: input.index,\n }));\n}\n\n/**\n * Validate that all UTXOs in a transaction are still available.\n *\n * Pure function — accepts pre-fetched UTXOs instead of making network calls.\n * This should be called BEFORE signing to avoid wasting user effort\n * signing a transaction that will fail to broadcast.\n *\n * @param unsignedTxHex - Unsigned transaction hex\n * @param availableUtxos - Pre-fetched list of available UTXOs for the depositor\n * @returns Validation result with missing UTXO details\n */\nexport function validateUtxosAvailable(\n unsignedTxHex: string,\n availableUtxos: UtxoRef[],\n): UtxoValidationResult {\n const inputs = extractInputsFromTransaction(unsignedTxHex);\n\n if (inputs.length === 0) {\n throw new Error(\"Transaction has no inputs\");\n }\n\n // Detect duplicate inputs (same txid:vout referenced more than once).\n // This would produce an invalid Bitcoin transaction.\n const inputKeys = new Set<string>();\n for (const input of inputs) {\n const key = `${input.txid.toLowerCase()}:${input.vout}`;\n if (inputKeys.has(key)) {\n throw new Error(\n `Transaction contains duplicate input ${input.txid}:${input.vout}. ` +\n `This would produce an invalid Bitcoin transaction.`,\n );\n }\n inputKeys.add(key);\n }\n\n // Set of available outpoints for O(1) lookup. Lowercased so the comparison\n // is case-insensitive against whatever case the wallet returned.\n const availableSet = new Set(\n availableUtxos.map((utxo) => `${utxo.txid.toLowerCase()}:${utxo.vout}`),\n );\n\n // Check which inputs are missing\n const missingUtxos: MissingUtxoInfo[] = [];\n for (const input of inputs) {\n const key = `${input.txid.toLowerCase()}:${input.vout}`;\n if (!availableSet.has(key)) {\n missingUtxos.push({\n txid: input.txid,\n vout: input.vout,\n });\n }\n }\n\n return {\n allAvailable: missingUtxos.length === 0,\n missingUtxos,\n totalInputs: inputs.length,\n };\n}\n\n/**\n * Validate UTXOs and throw if any are not available.\n *\n * Pure convenience function that combines validation and error throwing.\n *\n * @param unsignedTxHex - Unsigned transaction hex\n * @param availableUtxos - Pre-fetched list of available UTXOs for the depositor\n * @throws UtxoNotAvailableError if any UTXOs are not available\n * @throws Error if validation fails\n */\nexport function assertUtxosAvailable(\n unsignedTxHex: string,\n availableUtxos: UtxoRef[],\n): void {\n const result = validateUtxosAvailable(unsignedTxHex, availableUtxos);\n\n if (!result.allAvailable) {\n throw new UtxoNotAvailableError(result.missingUtxos);\n }\n}\n","/**\n * Pending-vault outpoint overlap detection.\n *\n * Given the depositor's pending vaults (indexer + local cache) and the\n * outpoints a new deposit's coin selector picked, return the set of\n * pending vault ids whose Pre-PegIn BTC tx shares an input. Advisory\n * only — used to warn the user before signing.\n *\n * Only `PENDING` vaults contribute: VERIFIED+ have their Pre-PegIn\n * already confirmed on-chain, so those inputs cannot still appear in\n * the wallet's spendable set.\n */\nimport { Transaction } from \"bitcoinjs-lib\";\nimport { Buffer } from \"buffer\";\n\nimport { stripHexPrefix } from \"../../primitives/utils/bitcoin\";\nimport { ContractStatus } from \"../../services/deposit/peginState\";\n\nimport { type UtxoRef } from \"./availability\";\n\n/** Locally-known pending pegin. `id` is the bytes32 vault id. */\nexport interface PendingPeginLike {\n id?: string;\n unsignedTxHex?: string;\n}\n\n/** On-chain vault row from the indexer. */\nexport interface VaultLike {\n id?: string;\n status: number;\n unsignedPrePeginTx: string;\n}\n\nexport interface FindOverlappingPendingVaultsParams {\n selectedOutpoints: ReadonlyArray<UtxoRef>;\n vaults?: ReadonlyArray<VaultLike>;\n pendingPegins?: ReadonlyArray<PendingPeginLike>;\n}\n\nfunction extractInputUtxoRefs(txHex: string): UtxoRef[] {\n try {\n const tx = Transaction.fromHex(stripHexPrefix(txHex));\n return tx.ins.map((input) => ({\n txid: Buffer.from(input.hash).reverse().toString(\"hex\"),\n vout: input.index,\n }));\n } catch {\n return [];\n }\n}\n\nfunction outpointKey(o: UtxoRef): string {\n return `${o.txid.toLowerCase()}:${o.vout}`;\n}\n\n/**\n * Return the ids of pending vaults whose committed Pre-PegIn inputs\n * overlap any of the just-selected outpoints. On-chain `PENDING` vaults\n * take precedence over a same-id local pegin entry.\n */\nexport function findOverlappingPendingVaults(\n params: FindOverlappingPendingVaultsParams,\n): string[] {\n const { selectedOutpoints, vaults = [], pendingPegins = [] } = params;\n\n const selectedSet = new Set(selectedOutpoints.map(outpointKey));\n if (selectedSet.size === 0) return [];\n\n const seenIds = new Set<string>();\n const impacted = new Set<string>();\n\n const consider = (id: string | undefined, txHex: string): void => {\n if (!id) return;\n const idLower = id.toLowerCase();\n if (seenIds.has(idLower)) return;\n seenIds.add(idLower);\n const inputs = extractInputUtxoRefs(txHex);\n for (const input of inputs) {\n if (selectedSet.has(outpointKey(input))) {\n impacted.add(id);\n return;\n }\n }\n };\n\n // On-chain wins on id collision.\n for (const v of vaults) {\n if (v.status !== ContractStatus.PENDING) continue;\n consider(v.id, v.unsignedPrePeginTx);\n }\n for (const p of pendingPegins) {\n if (!p.unsignedTxHex) continue;\n consider(p.id, p.unsignedTxHex);\n }\n\n return Array.from(impacted);\n}\n"],"names":["UtxoNotAvailableError","missingUtxos","count","message","__publicField","extractInputsFromTransaction","unsignedTxHex","cleanHex","tx","Transaction","error","input","Buffer","validateUtxosAvailable","availableUtxos","inputs","inputKeys","key","availableSet","utxo","assertUtxosAvailable","result","extractInputUtxoRefs","txHex","stripHexPrefix","outpointKey","o","findOverlappingPendingVaults","params","selectedOutpoints","vaults","pendingPegins","selectedSet","seenIds","impacted","consider","id","idLower","v","ContractStatus","p"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reservation-CDbInVw0.cjs","sources":["../src/tbv/core/utils/utxo/availability.ts","../src/tbv/core/utils/utxo/reservation.ts"],"sourcesContent":["/**\n * UTXO Availability Validation\n *\n * Validates that UTXOs referenced in a pre-pegin transaction are still unspent\n * BEFORE asking the user to sign. This prevents wasted signing effort when\n * UTXOs have already been spent by unrelated transactions.\n *\n * These functions are pure — they accept pre-fetched UTXOs and perform no I/O.\n * The vault service wrapper is responsible for fetching UTXOs from the mempool.\n */\n\nimport { Transaction } from \"bitcoinjs-lib\";\nimport { Buffer } from \"buffer\";\n\n/**\n * Reference to a Bitcoin UTXO by its outpoint (txid + vout).\n *\n * Used by the availability check to compare a Pre-PegIn transaction's\n * declared inputs against the wallet's current spendable set. Txids are\n * compared case-insensitively; callers should treat the txid as opaque\n * lowercase hex.\n */\nexport interface UtxoRef {\n txid: string;\n vout: number;\n}\n\n/**\n * Information about a missing/spent UTXO.\n */\nexport interface MissingUtxoInfo {\n /** Transaction ID of the missing UTXO */\n txid: string;\n /** Output index of the missing UTXO */\n vout: number;\n}\n\n/**\n * Result of UTXO validation.\n */\nexport interface UtxoValidationResult {\n /** Whether all UTXOs are still available */\n allAvailable: boolean;\n /** List of missing UTXOs (if any) */\n missingUtxos: MissingUtxoInfo[];\n /** Total number of inputs checked */\n totalInputs: number;\n}\n\n/**\n * Error thrown when UTXOs are not available.\n */\nexport class UtxoNotAvailableError extends Error {\n public readonly missingUtxos: MissingUtxoInfo[];\n\n constructor(missingUtxos: MissingUtxoInfo[]) {\n const count = missingUtxos.length;\n const message =\n count === 1\n ? \"The UTXO for this peg-in is no longer available. It may have been spent in another transaction. Please create a new peg-in request with a different UTXO.\"\n : `${count} UTXOs for this peg-in are no longer available. They may have been spent. Please create a new peg-in request with different UTXOs.`;\n\n super(message);\n this.name = \"UtxoNotAvailableError\";\n this.missingUtxos = missingUtxos;\n }\n}\n\n/**\n * Extract input references (txid:vout) from an unsigned transaction.\n *\n * @param unsignedTxHex - Unsigned transaction hex\n * @returns Array of input references\n */\nexport function extractInputsFromTransaction(\n unsignedTxHex: string,\n): Array<{ txid: string; vout: number }> {\n const cleanHex = unsignedTxHex.startsWith(\"0x\")\n ? unsignedTxHex.slice(2)\n : unsignedTxHex;\n\n let tx: Transaction;\n try {\n tx = Transaction.fromHex(cleanHex);\n } catch (error) {\n throw new Error(\n `Failed to parse BTC transaction: ${error instanceof Error ? error.message : String(error)}`,\n );\n }\n\n return tx.ins.map((input) => ({\n // Bitcoin stores txid in reverse byte order\n txid: Buffer.from(input.hash).reverse().toString(\"hex\"),\n vout: input.index,\n }));\n}\n\n/**\n * Validate that all UTXOs in a transaction are still available.\n *\n * Pure function — accepts pre-fetched UTXOs instead of making network calls.\n * This should be called BEFORE signing to avoid wasting user effort\n * signing a transaction that will fail to broadcast.\n *\n * @param unsignedTxHex - Unsigned transaction hex\n * @param availableUtxos - Pre-fetched list of available UTXOs for the depositor\n * @returns Validation result with missing UTXO details\n */\nexport function validateUtxosAvailable(\n unsignedTxHex: string,\n availableUtxos: UtxoRef[],\n): UtxoValidationResult {\n const inputs = extractInputsFromTransaction(unsignedTxHex);\n\n if (inputs.length === 0) {\n throw new Error(\"Transaction has no inputs\");\n }\n\n // Detect duplicate inputs (same txid:vout referenced more than once).\n // This would produce an invalid Bitcoin transaction.\n const inputKeys = new Set<string>();\n for (const input of inputs) {\n const key = `${input.txid.toLowerCase()}:${input.vout}`;\n if (inputKeys.has(key)) {\n throw new Error(\n `Transaction contains duplicate input ${input.txid}:${input.vout}. ` +\n `This would produce an invalid Bitcoin transaction.`,\n );\n }\n inputKeys.add(key);\n }\n\n // Set of available outpoints for O(1) lookup. Lowercased so the comparison\n // is case-insensitive against whatever case the wallet returned.\n const availableSet = new Set(\n availableUtxos.map((utxo) => `${utxo.txid.toLowerCase()}:${utxo.vout}`),\n );\n\n // Check which inputs are missing\n const missingUtxos: MissingUtxoInfo[] = [];\n for (const input of inputs) {\n const key = `${input.txid.toLowerCase()}:${input.vout}`;\n if (!availableSet.has(key)) {\n missingUtxos.push({\n txid: input.txid,\n vout: input.vout,\n });\n }\n }\n\n return {\n allAvailable: missingUtxos.length === 0,\n missingUtxos,\n totalInputs: inputs.length,\n };\n}\n\n/**\n * Validate UTXOs and throw if any are not available.\n *\n * Pure convenience function that combines validation and error throwing.\n *\n * @param unsignedTxHex - Unsigned transaction hex\n * @param availableUtxos - Pre-fetched list of available UTXOs for the depositor\n * @throws UtxoNotAvailableError if any UTXOs are not available\n * @throws Error if validation fails\n */\nexport function assertUtxosAvailable(\n unsignedTxHex: string,\n availableUtxos: UtxoRef[],\n): void {\n const result = validateUtxosAvailable(unsignedTxHex, availableUtxos);\n\n if (!result.allAvailable) {\n throw new UtxoNotAvailableError(result.missingUtxos);\n }\n}\n","/**\n * Pending-vault outpoint overlap detection.\n *\n * Given the depositor's pending vaults (indexer + local cache) and the\n * outpoints a new deposit's coin selector picked, return the set of\n * pending vault ids whose Pre-PegIn BTC tx shares an input. Advisory\n * only — used to warn the user before signing.\n *\n * Only `PENDING` vaults contribute: VERIFIED+ have their Pre-PegIn\n * already confirmed on-chain, so those inputs cannot still appear in\n * the wallet's spendable set.\n */\nimport { Transaction } from \"bitcoinjs-lib\";\nimport { Buffer } from \"buffer\";\n\nimport { stripHexPrefix } from \"../../primitives/utils/bitcoin\";\nimport { ContractStatus } from \"../../services/deposit/peginState\";\n\nimport { type UtxoRef } from \"./availability\";\n\n/** Locally-known pending pegin. `id` is the bytes32 vault id. */\nexport interface PendingPeginLike {\n id?: string;\n unsignedTxHex?: string;\n}\n\n/** On-chain vault row from the indexer. */\nexport interface VaultLike {\n id?: string;\n status: number;\n unsignedPrePeginTx: string;\n}\n\nexport interface FindOverlappingPendingVaultsParams {\n selectedOutpoints: ReadonlyArray<UtxoRef>;\n vaults?: ReadonlyArray<VaultLike>;\n pendingPegins?: ReadonlyArray<PendingPeginLike>;\n}\n\nfunction extractInputUtxoRefs(txHex: string): UtxoRef[] {\n try {\n const tx = Transaction.fromHex(stripHexPrefix(txHex));\n return tx.ins.map((input) => ({\n txid: Buffer.from(input.hash).reverse().toString(\"hex\"),\n vout: input.index,\n }));\n } catch {\n return [];\n }\n}\n\nfunction outpointKey(o: UtxoRef): string {\n return `${o.txid.toLowerCase()}:${o.vout}`;\n}\n\n/**\n * Return the ids of pending vaults whose committed Pre-PegIn inputs\n * overlap any of the just-selected outpoints. On-chain `PENDING` vaults\n * take precedence over a same-id local pegin entry.\n */\nexport function findOverlappingPendingVaults(\n params: FindOverlappingPendingVaultsParams,\n): string[] {\n const { selectedOutpoints, vaults = [], pendingPegins = [] } = params;\n\n const selectedSet = new Set(selectedOutpoints.map(outpointKey));\n if (selectedSet.size === 0) return [];\n\n const seenIds = new Set<string>();\n const impacted = new Set<string>();\n\n const consider = (id: string | undefined, txHex: string): void => {\n if (!id) return;\n const idLower = id.toLowerCase();\n if (seenIds.has(idLower)) return;\n seenIds.add(idLower);\n const inputs = extractInputUtxoRefs(txHex);\n for (const input of inputs) {\n if (selectedSet.has(outpointKey(input))) {\n impacted.add(id);\n return;\n }\n }\n };\n\n // On-chain wins on id collision.\n for (const v of vaults) {\n if (v.status !== ContractStatus.PENDING) continue;\n consider(v.id, v.unsignedPrePeginTx);\n }\n for (const p of pendingPegins) {\n if (!p.unsignedTxHex) continue;\n consider(p.id, p.unsignedTxHex);\n }\n\n return Array.from(impacted);\n}\n"],"names":["UtxoNotAvailableError","missingUtxos","count","message","__publicField","extractInputsFromTransaction","unsignedTxHex","cleanHex","tx","Transaction","error","input","Buffer","validateUtxosAvailable","availableUtxos","inputs","inputKeys","key","availableSet","utxo","assertUtxosAvailable","result","extractInputUtxoRefs","txHex","stripHexPrefix","outpointKey","o","findOverlappingPendingVaults","params","selectedOutpoints","vaults","pendingPegins","selectedSet","seenIds","impacted","consider","id","idLower","v","ContractStatus","p"],"mappings":"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"}
|
|
@@ -6,8 +6,8 @@ import { OnChainBtcPubkey } from './types';
|
|
|
6
6
|
* 64-char lowercase hex without the `0x` prefix.
|
|
7
7
|
*
|
|
8
8
|
* `label` identifies the read site in error messages (e.g.
|
|
9
|
-
* `
|
|
10
|
-
* which getter produced it.
|
|
9
|
+
* `getOperationBtcKeyAtEpoch (vp=0x…, epoch=0)`), so a failure names which
|
|
10
|
+
* participant and which getter produced it.
|
|
11
11
|
*
|
|
12
12
|
* A zero hash fails the curve check, so an unregistered operator or an epoch
|
|
13
13
|
* with no bonded key surfaces as an error rather than a silent all-zero key.
|
|
@@ -4,7 +4,7 @@ declare const onChainBtcPubkeyBrand: unique symbol;
|
|
|
4
4
|
* 64-char lowercase hex (no `0x`) x-only BTC pubkey sourced from an on-chain
|
|
5
5
|
* registry. Minted only by `assertOnChainBtcPubkey`, which is the shared
|
|
6
6
|
* validator behind both producers:
|
|
7
|
-
* {@link VaultRegistryReader.
|
|
7
|
+
* {@link VaultRegistryReader.getVaultProviderGenesisBtcPubKey} (the fixed
|
|
8
8
|
* registration key) and {@link OperationKeyReader} (RFC-006 operation keys,
|
|
9
9
|
* resolved current or at a vault's frozen epoch).
|
|
10
10
|
*
|
|
@@ -91,7 +91,18 @@ export interface VaultRegistryReader {
|
|
|
91
91
|
getVaultProtocolInfo(vaultId: Hex): Promise<VaultProtocolInfo>;
|
|
92
92
|
getProtocolInfoBatch(vaultIds: readonly Hex[]): Promise<VaultProtocolInfo[]>;
|
|
93
93
|
getVaultData(vaultId: Hex): Promise<VaultData>;
|
|
94
|
-
|
|
94
|
+
/**
|
|
95
|
+
* Read a vault provider's *genesis* (registration) BTC key — the key bonded
|
|
96
|
+
* at version 0, which never moves when the operator rotates.
|
|
97
|
+
*
|
|
98
|
+
* Used only as the genesis fallback for epoch-based resolution and as a
|
|
99
|
+
* candidate when cross-checking an indexer hint. Never the key to build a
|
|
100
|
+
* Bitcoin lock with; that comes from `OperationKeyReader`.
|
|
101
|
+
*
|
|
102
|
+
* Resolves via `getOperationBtcKeyAtEpoch` at epoch 0, so it requires an
|
|
103
|
+
* RFC-006 registry — as does every caller.
|
|
104
|
+
*/
|
|
105
|
+
getVaultProviderGenesisBtcPubKey(vpAddress: Address): Promise<OnChainBtcPubkey>;
|
|
95
106
|
/** Read the protocol pegin fee (in wei) for a given vault provider. */
|
|
96
107
|
getPegInFee(vaultProvider: Address): Promise<bigint>;
|
|
97
108
|
/**
|
|
@@ -259,7 +270,8 @@ export interface UniversalChallengerReader {
|
|
|
259
270
|
export interface OperationKeyQuery {
|
|
260
271
|
vaultProviderEthAddress: Address;
|
|
261
272
|
/**
|
|
262
|
-
* The VP's genesis (registration) key, from
|
|
273
|
+
* The VP's genesis (registration) key, from
|
|
274
|
+
* {@link VaultRegistryReader.getVaultProviderGenesisBtcPubKey}.
|
|
263
275
|
*
|
|
264
276
|
* The VP has no roster entry to carry a genesis key the way keepers and
|
|
265
277
|
* challengers do, so it is supplied here. Every call site already reads it:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/clients/eth/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAMzC,OAAO,CAAC,MAAM,qBAAqB,EAAE,OAAO,MAAM,CAAC;AAEnD;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG;IACtC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,oBAAY,qBAAqB;IAC/B,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,OAAO,IAAI;CACZ;AAED,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,GAAG,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,kEAAkE;AAClE,MAAM,WAAW,iBAAiB;IAChC,sBAAsB,EAAE,GAAG,CAAC;IAC5B,2BAA2B,EAAE,MAAM,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,GAAG,CAAC;IACzB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB,EAAE,GAAG,CAAC;IAC3B,cAAc,EAAE,GAAG,CAAC;IACpB,0BAA0B,EAAE,MAAM,CAAC;IACnC,wFAAwF;IACxF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4FAA4F;IAC5F,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,6CAA6C;AAC7C,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,2EAA2E;AAC3E,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/D,oBAAoB,CAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC7E,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC/C,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/clients/eth/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,18 +14,35 @@ export declare class ViemVaultRegistryReader implements VaultRegistryReader {
|
|
|
14
14
|
private contractAddress;
|
|
15
15
|
constructor(publicClient: PublicClient, contractAddress: Address);
|
|
16
16
|
/**
|
|
17
|
-
* Read the VP's
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
17
|
+
* Read the VP's **genesis** (registration) x-only BTC pubkey — the key bonded
|
|
18
|
+
* at version 0, which never moves when the operator rotates.
|
|
19
|
+
*
|
|
20
|
+
* Resolved as "the operation key at epoch 0" rather than through the
|
|
21
|
+
* dedicated `getVaultProviderBTCKey` getter, which
|
|
22
|
+
* https://github.com/babylonlabs-io/vault-contracts-aave-v4/pull/539 removes.
|
|
23
|
+
* Epoch 0 predates any rotation — appended versions are stamped at epoch 1 or
|
|
24
|
+
* later — so it resolves to the registration key, and the contracts team has
|
|
25
|
+
* confirmed that is a property we can rely on rather than an implementation
|
|
26
|
+
* detail. The devnet comparison behind that claim — both getters returning the
|
|
27
|
+
* identical key for a provider that *has* rotated, while
|
|
28
|
+
* `getCurrentOperationBtcKey` differed — is recorded in
|
|
29
|
+
* https://github.com/babylonlabs-io/babylon-toolkit/issues/2188.
|
|
30
|
+
*
|
|
31
|
+
* This makes the read RFC-006-only, where the removed getter also existed on a
|
|
32
|
+
* legacy registry. That costs nothing: every caller of this method already
|
|
33
|
+
* resolves participant keys through `OperationKeyReader`, so all of them
|
|
34
|
+
* require an RFC-006 registry regardless.
|
|
35
|
+
*
|
|
36
|
+
* Validates length, hex form, and secp256k1 curve membership before minting
|
|
37
|
+
* the brand. Returns 64-char lowercase hex without the `0x` prefix.
|
|
21
38
|
*/
|
|
22
|
-
|
|
39
|
+
getVaultProviderGenesisBtcPubKey(vpAddress: Address): Promise<OnChainBtcPubkey>;
|
|
23
40
|
/**
|
|
24
41
|
* Read a vault provider's *current* RFC-006 operation BTC key.
|
|
25
42
|
*
|
|
26
43
|
* Falls back on-chain to the registration key when the provider has never
|
|
27
|
-
* rotated, so this returns the same value as
|
|
28
|
-
* until the first rotation.
|
|
44
|
+
* rotated, so this returns the same value as
|
|
45
|
+
* `getVaultProviderGenesisBtcPubKey` until the first rotation.
|
|
29
46
|
*
|
|
30
47
|
* This is the key the VP's server signs its BIP-322 auth tokens with — a
|
|
31
48
|
* live per-operator identity, not a per-vault binding, so the auth pin uses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vault-registry-reader.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/clients/eth/vault-registry-reader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAO,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAM5D,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"vault-registry-reader.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/clients/eth/vault-registry-reader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAO,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAM5D,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAqHjB;;;;;;;;GAQG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IAE/D,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,eAAe;gBADf,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,OAAO;IAGlC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,gCAAgC,CACpC,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,gBAAgB,CAAC;IAa5B;;;;;;;;;;OAUG;IACG,sCAAsC,CAC1C,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,gBAAgB,CAAC;IAa5B;;;;;;;;;OASG;IACG,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAWnD,sBAAsB,CAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAkBtE,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC;IAWxD,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAW9D,oBAAoB,CACxB,QAAQ,EAAE,SAAS,GAAG,EAAE,GACvB,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA2B/B;;;OAGG;IACG,WAAW,CAAC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAS1D;;;;;;OAMG;IACG,0BAA0B,CAAC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBnE,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAqCpD;;;;OAIG;IACG,mCAAmC,CACvC,QAAQ,EAAE,SAAS,GAAG,EAAE,GACvB,OAAO,CAAC,MAAM,EAAE,CAAC;CA4BrB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../../mempoolApi-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../../mempoolApi-BxhMqJ4f.cjs"),e=require("../../../batchPoll-C4hwVFa8.cjs"),r=require("../../../json-rpc-client-BiAmg_ho.cjs"),o=require("../../../onChainBtcPubkey-C_a2L3kL.cjs");exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.ViemVaultRegistryReader=t.ViemVaultRegistryReader;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getOutspend=t.getOutspend;exports.getTipHeight=t.getTipHeight;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.pushTx=t.pushTx;exports.validateOffchainParams=t.validateOffchainParams;exports.validatePegInConfiguration=t.validatePegInConfiguration;exports.validateTBVProtocolParams=t.validateTBVProtocolParams;exports.OnChainBtcVaultStatus=e.OnChainBtcVaultStatus;exports.ServerIdentityError=e.ServerIdentityError;exports.VaultProviderRpcClient=e.VaultProviderRpcClient;exports.ViemOperationKeyReader=e.ViemOperationKeyReader;exports.ViemProtocolParamsReader=e.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=e.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=e.ViemVaultKeeperReader;exports.VpResponseValidationError=e.VpResponseValidationError;exports.VpTokenRegistry=e.VpTokenRegistry;exports.batchPollByProvider=e.batchPollByProvider;exports.createAuthenticatedVpClient=e.createAuthenticatedVpClient;exports.primeVpTokenRegistry=e.primeVpTokenRegistry;exports.resolveProtocolAddresses=e.resolveProtocolAddresses;exports.validateRequestDepositorClaimerArtifactsResponse=e.validateRequestDepositorClaimerArtifactsResponse;exports.verifyServerIdentity=e.verifyServerIdentity;exports.vpTokenRegistry=e.vpTokenRegistry;exports.AUTH_REJECTED_RPC_CODE=r.AUTH_REJECTED_RPC_CODE;exports.DaemonStatus=r.DaemonStatus;exports.JSON_RPC_ERROR_CODES=r.JSON_RPC_ERROR_CODES;exports.JsonRpcClient=r.JsonRpcClient;exports.JsonRpcError=r.JsonRpcError;exports.POST_WOTS_STATUSES=r.POST_WOTS_STATUSES;exports.PRE_DEPOSITOR_SIGNATURES_STATES=r.PRE_DEPOSITOR_SIGNATURES_STATES;exports.RpcErrorCode=r.RpcErrorCode;exports.VP_BATCH_MAX_SIZE=r.VP_BATCH_MAX_SIZE;exports.VP_TERMINAL_FAILURE_STATUSES=r.VP_TERMINAL_FAILURE_STATUSES;exports.VP_TRANSIENT_STATUSES=r.VP_TRANSIENT_STATUSES;exports.isAuthRejectedError=r.isAuthRejectedError;exports.assertOnChainBtcPubkey=o.assertOnChainBtcPubkey;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { M as s, V as r, g as t, a as o, b as i, c as R, d as n, e as d, f as T, h as p, i as S, p as l, v as E, j as P, k as V } from "../../../mempoolApi-
|
|
2
|
-
import { O as A, S as g, V as c, g as m, h as O, i as C, j as v, a as f, d as u, b as I, f as h, p as x, r as U, v as y, c as D, e as k } from "../../../batchPoll-
|
|
1
|
+
import { M as s, V as r, g as t, a as o, b as i, c as R, d as n, e as d, f as T, h as p, i as S, p as l, v as E, j as P, k as V } from "../../../mempoolApi-BQKF5MTr.js";
|
|
2
|
+
import { O as A, S as g, V as c, g as m, h as O, i as C, j as v, a as f, d as u, b as I, f as h, p as x, r as U, v as y, c as D, e as k } from "../../../batchPoll-L9LzMl1E.js";
|
|
3
3
|
import { A as N, D as b, J as B, a as J, b as H, d as L, P as j, R as F, e as K, c as q, V as w, i as G } from "../../../json-rpc-client-DuUARJvV.js";
|
|
4
4
|
import { a as X } from "../../../onChainBtcPubkey-DeF4cKoO.js";
|
|
5
5
|
export {
|
|
@@ -203,6 +203,20 @@ export declare const BTCVaultRegistryABI: readonly [{
|
|
|
203
203
|
}];
|
|
204
204
|
readonly outputs: readonly [];
|
|
205
205
|
readonly stateMutability: "nonpayable";
|
|
206
|
+
}, {
|
|
207
|
+
readonly type: "function";
|
|
208
|
+
readonly name: "activateVaultWithSecretAndRedeem";
|
|
209
|
+
readonly inputs: readonly [{
|
|
210
|
+
readonly name: "vaultId";
|
|
211
|
+
readonly type: "bytes32";
|
|
212
|
+
readonly internalType: "bytes32";
|
|
213
|
+
}, {
|
|
214
|
+
readonly name: "s";
|
|
215
|
+
readonly type: "bytes32";
|
|
216
|
+
readonly internalType: "bytes32";
|
|
217
|
+
}];
|
|
218
|
+
readonly outputs: readonly [];
|
|
219
|
+
readonly stateMutability: "nonpayable";
|
|
206
220
|
}, {
|
|
207
221
|
readonly type: "function";
|
|
208
222
|
readonly name: "getPegInFee";
|
|
@@ -217,20 +231,6 @@ export declare const BTCVaultRegistryABI: readonly [{
|
|
|
217
231
|
readonly internalType: "uint256";
|
|
218
232
|
}];
|
|
219
233
|
readonly stateMutability: "view";
|
|
220
|
-
}, {
|
|
221
|
-
readonly type: "function";
|
|
222
|
-
readonly name: "getVaultProviderBTCKey";
|
|
223
|
-
readonly inputs: readonly [{
|
|
224
|
-
readonly name: "vpAddr";
|
|
225
|
-
readonly type: "address";
|
|
226
|
-
readonly internalType: "address";
|
|
227
|
-
}];
|
|
228
|
-
readonly outputs: readonly [{
|
|
229
|
-
readonly name: "";
|
|
230
|
-
readonly type: "bytes32";
|
|
231
|
-
readonly internalType: "bytes32";
|
|
232
|
-
}];
|
|
233
|
-
readonly stateMutability: "view";
|
|
234
234
|
}, {
|
|
235
235
|
readonly type: "function";
|
|
236
236
|
readonly name: "getCurrentOperationBtcKey";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BTCVaultRegistry.abi.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/contracts/abis/BTCVaultRegistry.abi.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"BTCVaultRegistry.abi.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/contracts/abis/BTCVaultRegistry.abi.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuoBtB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../../ProtocolParams.abi-C8U7BHCS.cjs"),o=require("../../../BTCVaultRegistry.abi-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../../ProtocolParams.abi-C8U7BHCS.cjs"),o=require("../../../BTCVaultRegistry.abi-3VLWva2x.cjs"),e=require("../../../BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs"),r=require("../../../errors-CGcNP0rV.cjs");exports.ApplicationRegistryABI=t.ApplicationRegistryABI;exports.ProtocolParamsABI=t.ProtocolParamsABI;exports.BTCVaultRegistryABI=o.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=e.BTCVaultRegistryKeyEpochsABI;exports.CONTRACT_ERRORS=r.CONTRACT_ERRORS;exports.extractErrorData=r.extractErrorData;exports.getContractErrorMessage=r.getContractErrorMessage;exports.handleContractError=r.handleContractError;exports.isKnownContractError=r.isKnownContractError;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { A as o, P as t } from "../../../ProtocolParams.abi-CV938AYZ.js";
|
|
2
|
-
import { B as e } from "../../../BTCVaultRegistry.abi-
|
|
2
|
+
import { B as e } from "../../../BTCVaultRegistry.abi-B3BLhpJ4.js";
|
|
3
3
|
import { B as C } from "../../../BTCVaultRegistryKeyEpochs.abi-CXjhRZbm.js";
|
|
4
4
|
import { C as i, e as n, g as p, h as A, i as R } from "../../../errors-Blc-JWnI.js";
|
|
5
5
|
export {
|
package/dist/tbv/core/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("../../challengeAssert-BFRE2DM-.cjs"),m=require("../../constants-DU5CGcqO.cjs"),n=require("@babylonlabs-io/babylon-tbv-rust-wasm"),u=require("../../verifyScriptPathSchnorrSignature-CYjK4IP_.cjs"),R=require("../../peginInput-Ci921gTl.cjs"),g=require("../../noPayout-qUEtRKc_.cjs"),t=require("../../bitcoin-m84N5a8o.cjs"),c=require("../../validation-CDbOaDj7.cjs"),O=require("../../signing-Bnsro0hE.cjs"),l=require("../../PeginManager-CogqZaa2.cjs"),d=require("../../signPsbtsWithFallback-Xs4jZw5z.cjs"),_=require("../../ProtocolParams.abi-C8U7BHCS.cjs"),y=require("../../BTCVaultRegistry.abi-AUAyCHal.cjs"),b=require("../../BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs"),P=require("../../errors-CGcNP0rV.cjs"),T=require("../../deriveVaultRoot-p4uGsM7w.cjs"),C=require("../../parseFundingOutpoints-C_-PT9BT.cjs"),o=require("../../waitForTransactionReceiptSmartAware-AgZ-3WV_.cjs"),i=require("../../fundPeginTransaction-BLD8FRL9.cjs"),p=require("../../reservation-RGKvg2x6.cjs"),a=require("../../mempoolApi-DfD3_Y6v.cjs"),r=require("../../batchPoll-D5IDDOa8.cjs"),s=require("../../json-rpc-client-BiAmg_ho.cjs"),V=require("../../onChainBtcPubkey-C_a2L3kL.cjs"),A=require("../../errors-2aF9oRwM.cjs"),e=require("../../buildAndBroadcastRefund-BL8u-Ti4.cjs"),E=require("../../peginState-CBBJw4Za.cjs");exports.buildChallengeAssertPsbt=S.buildChallengeAssertPsbt;exports.computeNumLocalChallengers=S.computeNumLocalChallengers;exports.assertValidVaultCoreVersion=m.assertValidVaultCoreVersion;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>n.computeMinClaimValue});Object.defineProperty(exports,"computeMinPeginFee",{enumerable:!0,get:()=>n.computeMinPeginFee});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>n.deriveVaultId});Object.defineProperty(exports,"expandAuthAnchor",{enumerable:!0,get:()=>n.expandAuthAnchor});Object.defineProperty(exports,"expandHashlockSecret",{enumerable:!0,get:()=>n.expandHashlockSecret});Object.defineProperty(exports,"expandWotsSeed",{enumerable:!0,get:()=>n.expandWotsSeed});Object.defineProperty(exports,"peginP2aAnchorOutput",{enumerable:!0,get:()=>n.peginP2aAnchorOutput});Object.defineProperty(exports,"supportedTxGraphVersions",{enumerable:!0,get:()=>n.supportedTxGraphVersions});Object.defineProperty(exports,"validatePeginP2aAnchor",{enumerable:!0,get:()=>n.validatePeginP2aAnchor});exports.PsbtSubstitutionError=u.PsbtSubstitutionError;exports.assertPsbtUnsignedTxMatches=u.assertPsbtUnsignedTxMatches;exports.assertScriptPathSchnorrSignature=u.assertScriptPathSchnorrSignature;exports.buildPayoutPsbt=u.buildPayoutPsbt;exports.buildPeginTxFromFundedPrePegin=u.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=u.buildPrePeginPsbt;exports.createPayoutScript=u.createPayoutScript;exports.extractPayoutSignature=u.extractPayoutSignature;exports.buildPeginInputPsbt=R.buildPeginInputPsbt;exports.extractPeginInputSignature=R.extractPeginInputSignature;exports.finalizePeginInputPsbt=R.finalizePeginInputPsbt;exports.buildNoPayoutPsbt=g.buildNoPayoutPsbt;exports.buildRefundPsbt=g.buildRefundPsbt;exports.canonicalizeBtcPubkey=t.canonicalizeBtcPubkey;exports.deriveBip86ScriptPubKeyHex=t.deriveBip86ScriptPubKeyHex;exports.deriveNativeSegwitAddress=t.deriveNativeSegwitAddress;exports.deriveTaprootAddress=t.deriveTaprootAddress;exports.ensureHexPrefix=t.ensureHexPrefix;exports.formatSatoshisToBtc=t.formatSatoshisToBtc;exports.getNetwork=t.getNetwork;exports.getSortedXOnlyPubkeys=t.getSortedXOnlyPubkeys;exports.hexToUint8Array=t.hexToUint8Array;exports.isAddressFromPublicKey=t.isAddressFromPublicKey;exports.isValidHex=t.isValidHex;exports.processPublicKeyToXOnly=t.processPublicKeyToXOnly;exports.stripHexPrefix=t.stripHexPrefix;exports.toXOnly=t.toXOnly;exports.uint8ArrayToHex=t.uint8ArrayToHex;exports.validateWalletPubkey=t.validateWalletPubkey;exports.BITCOIN_ADDRESS_RE=c.BITCOIN_ADDRESS_RE;exports.HEX_RE=c.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=c.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=c.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=c.TXID_RE;exports.combineAbortSignals=c.combineAbortSignals;exports.createTaprootScriptPathSignOptions=O.createTaprootScriptPathSignOptions;exports.PeginManager=l.PeginManager;exports.buildDepositTerms=l.buildDepositTerms;exports.computeWotsBlockPublicKeysHash=l.computeWotsBlockPublicKeysHash;exports.deriveWotsBlocksFromSeed=l.deriveWotsBlocksFromSeed;exports.estimateSubmitPeginRequestBatchGas=l.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=d.PayoutManager;exports.computeHashlock=d.computeHashlock;exports.forwardDepositApproval=d.forwardDepositApproval;exports.supportsDepositApproval=d.supportsDepositApproval;exports.validateSecretAgainstHashlock=d.validateSecretAgainstHashlock;exports.ApplicationRegistryABI=_.ApplicationRegistryABI;exports.ProtocolParamsABI=_.ProtocolParamsABI;exports.BTCVaultRegistryABI=y.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=b.BTCVaultRegistryKeyEpochsABI;exports.CONTRACT_ERRORS=P.CONTRACT_ERRORS;exports.extractErrorData=P.extractErrorData;exports.getContractErrorMessage=P.getContractErrorMessage;exports.handleContractError=P.handleContractError;exports.isKnownContractError=P.isKnownContractError;exports.VAULT_APP_NAME=T.VAULT_APP_NAME;exports.buildFundingOutpointsCommitment=T.buildFundingOutpointsCommitment;exports.buildVaultContext=T.buildVaultContext;exports.deriveVaultRoot=T.deriveVaultRoot;exports.parseFundingOutpointsFromTx=C.parseFundingOutpointsFromTx;exports.BitcoinScriptType=o.BitcoinScriptType;exports.applyChangeOutputPolicy=o.applyChangeOutputPolicy;exports.calculateBtcTxHash=o.calculateBtcTxHash;exports.computeChangeOutputFeeSats=o.computeChangeOutputFeeSats;exports.computeMaxDeposit=o.computeMaxDeposit;exports.computePeginBaseFeeSats=o.computePeginBaseFeeSats;exports.getDustThreshold=o.getDustThreshold;exports.getPsbtInputFields=o.getPsbtInputFields;exports.getScriptType=o.getScriptType;exports.selectUtxosForPegin=o.selectUtxosForPegin;exports.shouldAddChangeOutput=o.shouldAddChangeOutput;exports.waitForTransactionReceiptSmartAware=o.waitForTransactionReceiptSmartAware;exports.BTC_DUST_SAT=i.BTC_DUST_SAT;exports.DUST_THRESHOLD=i.DUST_THRESHOLD;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=i.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=i.MAX_NON_LEGACY_OUTPUT_SIZE;exports.MAX_REASONABLE_PEGIN_VBYTES=i.MAX_REASONABLE_PEGIN_VBYTES;exports.P2TR_INPUT_SIZE=i.P2TR_INPUT_SIZE;exports.PEGIN_AUTH_ANCHOR_OUTPUTS=i.PEGIN_AUTH_ANCHOR_OUTPUTS;exports.PEGIN_FIXED_OUTPUTS=i.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=i.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=i.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=i.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.fundPeginTransaction=i.fundPeginTransaction;exports.parseUnfundedWasmTransaction=i.parseUnfundedWasmTransaction;exports.peginOutputCount=i.peginOutputCount;exports.rateBasedTxBufferFee=i.rateBasedTxBufferFee;exports.UtxoNotAvailableError=p.UtxoNotAvailableError;exports.assertUtxosAvailable=p.assertUtxosAvailable;exports.extractInputsFromTransaction=p.extractInputsFromTransaction;exports.findOverlappingPendingVaults=p.findOverlappingPendingVaults;exports.validateUtxosAvailable=p.validateUtxosAvailable;exports.MEMPOOL_API_URLS=a.MEMPOOL_API_URLS;exports.ViemVaultRegistryReader=a.ViemVaultRegistryReader;exports.getAddressTxs=a.getAddressTxs;exports.getAddressUtxos=a.getAddressUtxos;exports.getMempoolApiUrl=a.getMempoolApiUrl;exports.getNetworkFees=a.getNetworkFees;exports.getOutspend=a.getOutspend;exports.getTipHeight=a.getTipHeight;exports.getTxHex=a.getTxHex;exports.getTxInfo=a.getTxInfo;exports.getUtxoInfo=a.getUtxoInfo;exports.pushTx=a.pushTx;exports.validateOffchainParams=a.validateOffchainParams;exports.validatePegInConfiguration=a.validatePegInConfiguration;exports.validateTBVProtocolParams=a.validateTBVProtocolParams;exports.OnChainBtcVaultStatus=r.OnChainBtcVaultStatus;exports.ServerIdentityError=r.ServerIdentityError;exports.VaultProviderRpcClient=r.VaultProviderRpcClient;exports.ViemOperationKeyReader=r.ViemOperationKeyReader;exports.ViemProtocolParamsReader=r.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=r.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=r.ViemVaultKeeperReader;exports.VpResponseValidationError=r.VpResponseValidationError;exports.VpTokenRegistry=r.VpTokenRegistry;exports.batchPollByProvider=r.batchPollByProvider;exports.createAuthenticatedVpClient=r.createAuthenticatedVpClient;exports.primeVpTokenRegistry=r.primeVpTokenRegistry;exports.resolveProtocolAddresses=r.resolveProtocolAddresses;exports.validateRequestDepositorClaimerArtifactsResponse=r.validateRequestDepositorClaimerArtifactsResponse;exports.verifyServerIdentity=r.verifyServerIdentity;exports.vpTokenRegistry=r.vpTokenRegistry;exports.AUTH_REJECTED_RPC_CODE=s.AUTH_REJECTED_RPC_CODE;exports.DaemonStatus=s.DaemonStatus;exports.JSON_RPC_ERROR_CODES=s.JSON_RPC_ERROR_CODES;exports.JsonRpcClient=s.JsonRpcClient;exports.JsonRpcError=s.JsonRpcError;exports.POST_WOTS_STATUSES=s.POST_WOTS_STATUSES;exports.PRE_DEPOSITOR_SIGNATURES_STATES=s.PRE_DEPOSITOR_SIGNATURES_STATES;exports.RpcErrorCode=s.RpcErrorCode;exports.VP_BATCH_MAX_SIZE=s.VP_BATCH_MAX_SIZE;exports.VP_TERMINAL_FAILURE_STATUSES=s.VP_TERMINAL_FAILURE_STATUSES;exports.VP_TRANSIENT_STATUSES=s.VP_TRANSIENT_STATUSES;exports.isAuthRejectedError=s.isAuthRejectedError;exports.assertOnChainBtcPubkey=V.assertOnChainBtcPubkey;exports.DEPOSIT_TERMS_REJECTED_ERROR_NAME=A.DEPOSIT_TERMS_REJECTED_ERROR_NAME;exports.DepositTermsRejectedError=A.DepositTermsRejectedError;exports.isDepositTermsRejectedError=A.isDepositTermsRejectedError;exports.isWotsMismatchError=A.isWotsMismatchError;exports.BIP68NotMatureError=e.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=e.ClaimerPegoutStatusValue;exports.ParticipantKeyDriftError=e.ParticipantKeyDriftError;exports.REFUND_MAX_FEE_FRACTION_DENOMINATOR=e.REFUND_MAX_FEE_FRACTION_DENOMINATOR;exports.REFUND_MAX_FEE_FRACTION_NUMERATOR=e.REFUND_MAX_FEE_FRACTION_NUMERATOR;exports.REFUND_MAX_FEE_RATE_SATS_VB=e.REFUND_MAX_FEE_RATE_SATS_VB;exports.REFUND_VSIZE=e.REFUND_VSIZE;exports.RegisteredVaultVersionMismatchError=e.RegisteredVaultVersionMismatchError;exports.activateVault=e.activateVault;exports.assertVaultProviderHintAccepted=e.assertVaultProviderHintAccepted;exports.buildAndBroadcastRefund=e.buildAndBroadcastRefund;exports.estimateRefundFeeSats=e.estimateRefundFeeSats;exports.isDepositAmountValid=e.isDepositAmountValid;exports.isHintAccepted=e.isHintAccepted;exports.isParticipantKeyDriftError=e.isParticipantKeyDriftError;exports.isPegoutTerminalStatus=e.isPegoutTerminalStatus;exports.isRecognizedPegoutStatus=e.isRecognizedPegoutStatus;exports.isRegisteredVaultVersionMismatchError=e.isRegisteredVaultVersionMismatchError;exports.matchKeyHint=e.matchKeyHint;exports.matchKeySetHint=e.matchKeySetHint;exports.resolveCurrentParticipantKeys=e.resolveCurrentParticipantKeys;exports.resolveParticipantKeysAtEpochs=e.resolveParticipantKeysAtEpochs;exports.runDepositorPresignFlow=e.runDepositorPresignFlow;exports.signDepositorGraph=e.signDepositorGraph;exports.submitWotsPublicKey=e.submitWotsPublicKey;exports.validateDepositAmount=e.validateDepositAmount;exports.validateMultiVaultDepositInputs=e.validateMultiVaultDepositInputs;exports.validateOnChainParticipantKeys=e.validateOnChainParticipantKeys;exports.validateProviderSelection=e.validateProviderSelection;exports.validateRemainingCapacity=e.validateRemainingCapacity;exports.validateVaultAmounts=e.validateVaultAmounts;exports.validateVaultProviderPubkey=e.validateVaultProviderPubkey;exports.verifyRegisteredParticipantKeys=e.verifyRegisteredParticipantKeys;exports.verifyRegisteredVaultVersions=e.verifyRegisteredVaultVersions;exports.waitForPeginStatus=e.waitForPeginStatus;exports.ContractStatus=E.ContractStatus;exports.PeginAction=E.PeginAction;exports.canPerformAction=E.canPerformAction;exports.getPeginProtocolState=E.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=E.isActivationDeadlinePassedOnChain;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("../../challengeAssert-BFRE2DM-.cjs"),m=require("../../constants-DU5CGcqO.cjs"),n=require("@babylonlabs-io/babylon-tbv-rust-wasm"),u=require("../../verifyScriptPathSchnorrSignature-CYjK4IP_.cjs"),R=require("../../peginInput-Ci921gTl.cjs"),g=require("../../noPayout-qUEtRKc_.cjs"),t=require("../../bitcoin-m84N5a8o.cjs"),c=require("../../validation-CDbOaDj7.cjs"),O=require("../../signing-Bnsro0hE.cjs"),l=require("../../PeginManager-OXUOsgz2.cjs"),d=require("../../signPsbtsWithFallback-Xs4jZw5z.cjs"),_=require("../../ProtocolParams.abi-C8U7BHCS.cjs"),y=require("../../BTCVaultRegistry.abi-3VLWva2x.cjs"),b=require("../../BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs"),P=require("../../errors-CGcNP0rV.cjs"),T=require("../../deriveVaultRoot-p4uGsM7w.cjs"),C=require("../../parseFundingOutpoints-C_-PT9BT.cjs"),o=require("../../waitForTransactionReceiptSmartAware-AgZ-3WV_.cjs"),i=require("../../fundPeginTransaction-BLD8FRL9.cjs"),p=require("../../reservation-CDbInVw0.cjs"),a=require("../../mempoolApi-BxhMqJ4f.cjs"),r=require("../../batchPoll-C4hwVFa8.cjs"),s=require("../../json-rpc-client-BiAmg_ho.cjs"),V=require("../../onChainBtcPubkey-C_a2L3kL.cjs"),A=require("../../errors-2aF9oRwM.cjs"),e=require("../../buildAndBroadcastRefund-rSxXMwFd.cjs"),E=require("../../peginState-eaQ4IO_R.cjs");exports.buildChallengeAssertPsbt=S.buildChallengeAssertPsbt;exports.computeNumLocalChallengers=S.computeNumLocalChallengers;exports.assertValidVaultCoreVersion=m.assertValidVaultCoreVersion;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>n.computeMinClaimValue});Object.defineProperty(exports,"computeMinPeginFee",{enumerable:!0,get:()=>n.computeMinPeginFee});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>n.deriveVaultId});Object.defineProperty(exports,"expandAuthAnchor",{enumerable:!0,get:()=>n.expandAuthAnchor});Object.defineProperty(exports,"expandHashlockSecret",{enumerable:!0,get:()=>n.expandHashlockSecret});Object.defineProperty(exports,"expandWotsSeed",{enumerable:!0,get:()=>n.expandWotsSeed});Object.defineProperty(exports,"peginP2aAnchorOutput",{enumerable:!0,get:()=>n.peginP2aAnchorOutput});Object.defineProperty(exports,"supportedTxGraphVersions",{enumerable:!0,get:()=>n.supportedTxGraphVersions});Object.defineProperty(exports,"validatePeginP2aAnchor",{enumerable:!0,get:()=>n.validatePeginP2aAnchor});exports.PsbtSubstitutionError=u.PsbtSubstitutionError;exports.assertPsbtUnsignedTxMatches=u.assertPsbtUnsignedTxMatches;exports.assertScriptPathSchnorrSignature=u.assertScriptPathSchnorrSignature;exports.buildPayoutPsbt=u.buildPayoutPsbt;exports.buildPeginTxFromFundedPrePegin=u.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=u.buildPrePeginPsbt;exports.createPayoutScript=u.createPayoutScript;exports.extractPayoutSignature=u.extractPayoutSignature;exports.buildPeginInputPsbt=R.buildPeginInputPsbt;exports.extractPeginInputSignature=R.extractPeginInputSignature;exports.finalizePeginInputPsbt=R.finalizePeginInputPsbt;exports.buildNoPayoutPsbt=g.buildNoPayoutPsbt;exports.buildRefundPsbt=g.buildRefundPsbt;exports.canonicalizeBtcPubkey=t.canonicalizeBtcPubkey;exports.deriveBip86ScriptPubKeyHex=t.deriveBip86ScriptPubKeyHex;exports.deriveNativeSegwitAddress=t.deriveNativeSegwitAddress;exports.deriveTaprootAddress=t.deriveTaprootAddress;exports.ensureHexPrefix=t.ensureHexPrefix;exports.formatSatoshisToBtc=t.formatSatoshisToBtc;exports.getNetwork=t.getNetwork;exports.getSortedXOnlyPubkeys=t.getSortedXOnlyPubkeys;exports.hexToUint8Array=t.hexToUint8Array;exports.isAddressFromPublicKey=t.isAddressFromPublicKey;exports.isValidHex=t.isValidHex;exports.processPublicKeyToXOnly=t.processPublicKeyToXOnly;exports.stripHexPrefix=t.stripHexPrefix;exports.toXOnly=t.toXOnly;exports.uint8ArrayToHex=t.uint8ArrayToHex;exports.validateWalletPubkey=t.validateWalletPubkey;exports.BITCOIN_ADDRESS_RE=c.BITCOIN_ADDRESS_RE;exports.HEX_RE=c.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=c.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=c.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=c.TXID_RE;exports.combineAbortSignals=c.combineAbortSignals;exports.createTaprootScriptPathSignOptions=O.createTaprootScriptPathSignOptions;exports.PeginManager=l.PeginManager;exports.buildDepositTerms=l.buildDepositTerms;exports.computeWotsBlockPublicKeysHash=l.computeWotsBlockPublicKeysHash;exports.deriveWotsBlocksFromSeed=l.deriveWotsBlocksFromSeed;exports.estimateSubmitPeginRequestBatchGas=l.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=d.PayoutManager;exports.computeHashlock=d.computeHashlock;exports.forwardDepositApproval=d.forwardDepositApproval;exports.supportsDepositApproval=d.supportsDepositApproval;exports.validateSecretAgainstHashlock=d.validateSecretAgainstHashlock;exports.ApplicationRegistryABI=_.ApplicationRegistryABI;exports.ProtocolParamsABI=_.ProtocolParamsABI;exports.BTCVaultRegistryABI=y.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=b.BTCVaultRegistryKeyEpochsABI;exports.CONTRACT_ERRORS=P.CONTRACT_ERRORS;exports.extractErrorData=P.extractErrorData;exports.getContractErrorMessage=P.getContractErrorMessage;exports.handleContractError=P.handleContractError;exports.isKnownContractError=P.isKnownContractError;exports.VAULT_APP_NAME=T.VAULT_APP_NAME;exports.buildFundingOutpointsCommitment=T.buildFundingOutpointsCommitment;exports.buildVaultContext=T.buildVaultContext;exports.deriveVaultRoot=T.deriveVaultRoot;exports.parseFundingOutpointsFromTx=C.parseFundingOutpointsFromTx;exports.BitcoinScriptType=o.BitcoinScriptType;exports.applyChangeOutputPolicy=o.applyChangeOutputPolicy;exports.calculateBtcTxHash=o.calculateBtcTxHash;exports.computeChangeOutputFeeSats=o.computeChangeOutputFeeSats;exports.computeMaxDeposit=o.computeMaxDeposit;exports.computePeginBaseFeeSats=o.computePeginBaseFeeSats;exports.getDustThreshold=o.getDustThreshold;exports.getPsbtInputFields=o.getPsbtInputFields;exports.getScriptType=o.getScriptType;exports.selectUtxosForPegin=o.selectUtxosForPegin;exports.shouldAddChangeOutput=o.shouldAddChangeOutput;exports.waitForTransactionReceiptSmartAware=o.waitForTransactionReceiptSmartAware;exports.BTC_DUST_SAT=i.BTC_DUST_SAT;exports.DUST_THRESHOLD=i.DUST_THRESHOLD;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=i.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=i.MAX_NON_LEGACY_OUTPUT_SIZE;exports.MAX_REASONABLE_PEGIN_VBYTES=i.MAX_REASONABLE_PEGIN_VBYTES;exports.P2TR_INPUT_SIZE=i.P2TR_INPUT_SIZE;exports.PEGIN_AUTH_ANCHOR_OUTPUTS=i.PEGIN_AUTH_ANCHOR_OUTPUTS;exports.PEGIN_FIXED_OUTPUTS=i.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=i.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=i.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=i.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.fundPeginTransaction=i.fundPeginTransaction;exports.parseUnfundedWasmTransaction=i.parseUnfundedWasmTransaction;exports.peginOutputCount=i.peginOutputCount;exports.rateBasedTxBufferFee=i.rateBasedTxBufferFee;exports.UtxoNotAvailableError=p.UtxoNotAvailableError;exports.assertUtxosAvailable=p.assertUtxosAvailable;exports.extractInputsFromTransaction=p.extractInputsFromTransaction;exports.findOverlappingPendingVaults=p.findOverlappingPendingVaults;exports.validateUtxosAvailable=p.validateUtxosAvailable;exports.MEMPOOL_API_URLS=a.MEMPOOL_API_URLS;exports.ViemVaultRegistryReader=a.ViemVaultRegistryReader;exports.getAddressTxs=a.getAddressTxs;exports.getAddressUtxos=a.getAddressUtxos;exports.getMempoolApiUrl=a.getMempoolApiUrl;exports.getNetworkFees=a.getNetworkFees;exports.getOutspend=a.getOutspend;exports.getTipHeight=a.getTipHeight;exports.getTxHex=a.getTxHex;exports.getTxInfo=a.getTxInfo;exports.getUtxoInfo=a.getUtxoInfo;exports.pushTx=a.pushTx;exports.validateOffchainParams=a.validateOffchainParams;exports.validatePegInConfiguration=a.validatePegInConfiguration;exports.validateTBVProtocolParams=a.validateTBVProtocolParams;exports.OnChainBtcVaultStatus=r.OnChainBtcVaultStatus;exports.ServerIdentityError=r.ServerIdentityError;exports.VaultProviderRpcClient=r.VaultProviderRpcClient;exports.ViemOperationKeyReader=r.ViemOperationKeyReader;exports.ViemProtocolParamsReader=r.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=r.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=r.ViemVaultKeeperReader;exports.VpResponseValidationError=r.VpResponseValidationError;exports.VpTokenRegistry=r.VpTokenRegistry;exports.batchPollByProvider=r.batchPollByProvider;exports.createAuthenticatedVpClient=r.createAuthenticatedVpClient;exports.primeVpTokenRegistry=r.primeVpTokenRegistry;exports.resolveProtocolAddresses=r.resolveProtocolAddresses;exports.validateRequestDepositorClaimerArtifactsResponse=r.validateRequestDepositorClaimerArtifactsResponse;exports.verifyServerIdentity=r.verifyServerIdentity;exports.vpTokenRegistry=r.vpTokenRegistry;exports.AUTH_REJECTED_RPC_CODE=s.AUTH_REJECTED_RPC_CODE;exports.DaemonStatus=s.DaemonStatus;exports.JSON_RPC_ERROR_CODES=s.JSON_RPC_ERROR_CODES;exports.JsonRpcClient=s.JsonRpcClient;exports.JsonRpcError=s.JsonRpcError;exports.POST_WOTS_STATUSES=s.POST_WOTS_STATUSES;exports.PRE_DEPOSITOR_SIGNATURES_STATES=s.PRE_DEPOSITOR_SIGNATURES_STATES;exports.RpcErrorCode=s.RpcErrorCode;exports.VP_BATCH_MAX_SIZE=s.VP_BATCH_MAX_SIZE;exports.VP_TERMINAL_FAILURE_STATUSES=s.VP_TERMINAL_FAILURE_STATUSES;exports.VP_TRANSIENT_STATUSES=s.VP_TRANSIENT_STATUSES;exports.isAuthRejectedError=s.isAuthRejectedError;exports.assertOnChainBtcPubkey=V.assertOnChainBtcPubkey;exports.DEPOSIT_TERMS_REJECTED_ERROR_NAME=A.DEPOSIT_TERMS_REJECTED_ERROR_NAME;exports.DepositTermsRejectedError=A.DepositTermsRejectedError;exports.isDepositTermsRejectedError=A.isDepositTermsRejectedError;exports.isWotsMismatchError=A.isWotsMismatchError;exports.BIP68NotMatureError=e.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=e.ClaimerPegoutStatusValue;exports.ParticipantKeyDriftError=e.ParticipantKeyDriftError;exports.REFUND_MAX_FEE_FRACTION_DENOMINATOR=e.REFUND_MAX_FEE_FRACTION_DENOMINATOR;exports.REFUND_MAX_FEE_FRACTION_NUMERATOR=e.REFUND_MAX_FEE_FRACTION_NUMERATOR;exports.REFUND_MAX_FEE_RATE_SATS_VB=e.REFUND_MAX_FEE_RATE_SATS_VB;exports.REFUND_VSIZE=e.REFUND_VSIZE;exports.RegisteredVaultVersionMismatchError=e.RegisteredVaultVersionMismatchError;exports.activateVault=e.activateVault;exports.activateVaultAndRedeem=e.activateVaultAndRedeem;exports.assertVaultProviderHintAccepted=e.assertVaultProviderHintAccepted;exports.buildAndBroadcastRefund=e.buildAndBroadcastRefund;exports.estimateRefundFeeSats=e.estimateRefundFeeSats;exports.isDepositAmountValid=e.isDepositAmountValid;exports.isHintAccepted=e.isHintAccepted;exports.isParticipantKeyDriftError=e.isParticipantKeyDriftError;exports.isPegoutTerminalStatus=e.isPegoutTerminalStatus;exports.isRecognizedPegoutStatus=e.isRecognizedPegoutStatus;exports.isRegisteredVaultVersionMismatchError=e.isRegisteredVaultVersionMismatchError;exports.matchKeyHint=e.matchKeyHint;exports.matchKeySetHint=e.matchKeySetHint;exports.resolveCurrentParticipantKeys=e.resolveCurrentParticipantKeys;exports.resolveParticipantKeysAtEpochs=e.resolveParticipantKeysAtEpochs;exports.runDepositorPresignFlow=e.runDepositorPresignFlow;exports.signDepositorGraph=e.signDepositorGraph;exports.submitWotsPublicKey=e.submitWotsPublicKey;exports.validateDepositAmount=e.validateDepositAmount;exports.validateMultiVaultDepositInputs=e.validateMultiVaultDepositInputs;exports.validateOnChainParticipantKeys=e.validateOnChainParticipantKeys;exports.validateProviderSelection=e.validateProviderSelection;exports.validateRemainingCapacity=e.validateRemainingCapacity;exports.validateVaultAmounts=e.validateVaultAmounts;exports.validateVaultProviderPubkey=e.validateVaultProviderPubkey;exports.verifyRegisteredParticipantKeys=e.verifyRegisteredParticipantKeys;exports.verifyRegisteredVaultVersions=e.verifyRegisteredVaultVersions;exports.waitForPeginStatus=e.waitForPeginStatus;exports.ContractStatus=E.ContractStatus;exports.PeginAction=E.PeginAction;exports.canPerformAction=E.canPerformAction;exports.getPeginProtocolState=E.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=E.isActivationDeadlinePassedOnChain;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/tbv/core/index.js
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
1
|
import { b as s, c as t } from "../../challengeAssert-C7PzyJ7g.js";
|
|
2
2
|
import { a as o } from "../../constants-GjWXdaqV.js";
|
|
3
3
|
import { computeMinClaimValue as n, computeMinPeginFee as p, deriveVaultId as u, expandAuthAnchor as c, expandHashlockSecret as l, expandWotsSeed as d, peginP2aAnchorOutput as P, supportedTxGraphVersions as E, validatePeginP2aAnchor as T } from "@babylonlabs-io/babylon-tbv-rust-wasm";
|
|
4
|
-
import { P as R, d as S, f as g, c as
|
|
5
|
-
import { b as
|
|
4
|
+
import { P as R, d as S, f as g, c as m, b as _, a as f, g as x, e as b } from "../../verifyScriptPathSchnorrSignature-Bav08_7R.js";
|
|
5
|
+
import { b as V, e as v, f as C } from "../../peginInput-HQPWZfly.js";
|
|
6
6
|
import { a as y, b as I } from "../../noPayout-DuE-UyhQ.js";
|
|
7
7
|
import { c as F, d as U, a as B, b as N, e as M, f as H, k as K, g as L, h as k, i as X, j as W, p as w, s as G, t as j, u as J, v as Y } from "../../bitcoin-d9eaaZB_.js";
|
|
8
8
|
import { B as z, H as q, K as Q, M as $, T as aa, c as ea } from "../../validation-Dj3dqYtl.js";
|
|
9
9
|
import { c as ta } from "../../signing-DaLvGwQe.js";
|
|
10
|
-
import { P as oa, b as ia, c as na, d as pa, e as ua } from "../../PeginManager-
|
|
10
|
+
import { P as oa, b as ia, c as na, d as pa, e as ua } from "../../PeginManager-1R9dMB1G.js";
|
|
11
11
|
import { P as la, c as da, f as Pa, s as Ea, v as Ta } from "../../signPsbtsWithFallback-eY1YgV13.js";
|
|
12
12
|
import { A as Ra, P as Sa } from "../../ProtocolParams.abi-CV938AYZ.js";
|
|
13
|
-
import { B as
|
|
13
|
+
import { B as ma } from "../../BTCVaultRegistry.abi-B3BLhpJ4.js";
|
|
14
14
|
import { B as fa } from "../../BTCVaultRegistryKeyEpochs.abi-CXjhRZbm.js";
|
|
15
|
-
import { C as ba, e as Oa, g as
|
|
15
|
+
import { C as ba, e as Oa, g as Va, h as va, i as Ca } from "../../errors-Blc-JWnI.js";
|
|
16
16
|
import { V as ya, b as Ia, a as Da, d as Fa } from "../../deriveVaultRoot-D0RY5GJc.js";
|
|
17
17
|
import { p as Ba } from "../../parseFundingOutpoints-GSM-IaaK.js";
|
|
18
18
|
import { B as Ma, a as Ha, f as Ka, c as La, b as ka, d as Xa, g as Wa, i as wa, h as Ga, s as ja, e as Ja, w as Ya } from "../../waitForTransactionReceiptSmartAware-lobLm0q0.js";
|
|
19
19
|
import { B as za, D as qa, L as Qa, M as $a, c as ae, P as ee, b as se, a as te, S as re, T as oe, W as ie, f as ne, d as pe, p as ue, r as ce } from "../../fundPeginTransaction-B2wyjqp0.js";
|
|
20
|
-
import { U as de, a as Pe, e as Ee, f as Te, v as Ae } from "../../reservation-
|
|
21
|
-
import { M as Se, V as ge, g as
|
|
22
|
-
import { O as Ue, S as Be, V as Ne, g as Me, h as He, i as Ke, j as Le, a as ke, d as Xe, b as We, f as we, p as Ge, r as je, v as Je, c as Ye, e as Ze } from "../../batchPoll-
|
|
20
|
+
import { U as de, a as Pe, e as Ee, f as Te, v as Ae } from "../../reservation-B4i_PQhY.js";
|
|
21
|
+
import { M as Se, V as ge, g as me, a as _e, b as fe, c as xe, d as be, e as Oe, f as Ve, h as ve, i as Ce, p as he, v as ye, j as Ie, k as De } from "../../mempoolApi-BQKF5MTr.js";
|
|
22
|
+
import { O as Ue, S as Be, V as Ne, g as Me, h as He, i as Ke, j as Le, a as ke, d as Xe, b as We, f as we, p as Ge, r as je, v as Je, c as Ye, e as Ze } from "../../batchPoll-L9LzMl1E.js";
|
|
23
23
|
import { A as qe, D as Qe, J as $e, a as as, b as es, d as ss, P as ts, R as rs, e as os, c as is, V as ns, i as ps } from "../../json-rpc-client-DuUARJvV.js";
|
|
24
24
|
import { a as cs } from "../../onChainBtcPubkey-DeF4cKoO.js";
|
|
25
25
|
import { D as ds, a as Ps, b as Es, i as Ts } from "../../errors-kXGQXKxZ.js";
|
|
26
|
-
import { B as Rs, C as Ss, P as gs,
|
|
27
|
-
import { C as
|
|
26
|
+
import { B as Rs, C as Ss, P as gs, E as ms, F as _s, G as fs, H as xs, R as bs, a as Os, b as Vs, o as vs, A as Cs, D as hs, i as ys, p as Is, k as Ds, z as Fs, y as Us, m as Bs, q as Ns, t as Ms, u as Hs, x as Ks, r as Ls, s as ks, c as Xs, d as Ws, e as ws, v as Gs, f as js, g as Js, h as Ys, j as Zs, l as zs, n as qs, w as Qs } from "../../buildAndBroadcastRefund-DpF_b3d9.js";
|
|
27
|
+
import { C as at, P as et, c as st, g as tt, i as rt } from "../../peginState-CxDiaKuk.js";
|
|
28
28
|
export {
|
|
29
29
|
qe as AUTH_REJECTED_RPC_CODE,
|
|
30
30
|
Ra as ApplicationRegistryABI,
|
|
31
31
|
Rs as BIP68NotMatureError,
|
|
32
32
|
z as BITCOIN_ADDRESS_RE,
|
|
33
|
-
|
|
33
|
+
ma as BTCVaultRegistryABI,
|
|
34
34
|
fa as BTCVaultRegistryKeyEpochsABI,
|
|
35
35
|
za as BTC_DUST_SAT,
|
|
36
36
|
Ma as BitcoinScriptType,
|
|
37
37
|
ba as CONTRACT_ERRORS,
|
|
38
38
|
Ss as ClaimerPegoutStatusValue,
|
|
39
|
-
|
|
39
|
+
at as ContractStatus,
|
|
40
40
|
ds as DEPOSIT_TERMS_REJECTED_ERROR_NAME,
|
|
41
41
|
qa as DUST_THRESHOLD,
|
|
42
42
|
Qe as DaemonStatus,
|
|
@@ -59,12 +59,12 @@ export {
|
|
|
59
59
|
ts as PRE_DEPOSITOR_SIGNATURES_STATES,
|
|
60
60
|
gs as ParticipantKeyDriftError,
|
|
61
61
|
la as PayoutManager,
|
|
62
|
-
|
|
62
|
+
et as PeginAction,
|
|
63
63
|
oa as PeginManager,
|
|
64
64
|
Sa as ProtocolParamsABI,
|
|
65
65
|
R as PsbtSubstitutionError,
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
ms as REFUND_MAX_FEE_FRACTION_DENOMINATOR,
|
|
67
|
+
_s as REFUND_MAX_FEE_FRACTION_NUMERATOR,
|
|
68
68
|
fs as REFUND_MAX_FEE_RATE_SATS_VB,
|
|
69
69
|
xs as REFUND_VSIZE,
|
|
70
70
|
bs as RegisteredVaultVersionMismatchError,
|
|
@@ -88,27 +88,28 @@ export {
|
|
|
88
88
|
Xe as VpTokenRegistry,
|
|
89
89
|
ie as WALLET_RELAY_FEE_RATE_THRESHOLD,
|
|
90
90
|
Os as activateVault,
|
|
91
|
+
Vs as activateVaultAndRedeem,
|
|
91
92
|
Ha as applyChangeOutputPolicy,
|
|
92
93
|
cs as assertOnChainBtcPubkey,
|
|
93
94
|
S as assertPsbtUnsignedTxMatches,
|
|
94
95
|
g as assertScriptPathSchnorrSignature,
|
|
95
96
|
Pe as assertUtxosAvailable,
|
|
96
97
|
o as assertValidVaultCoreVersion,
|
|
97
|
-
|
|
98
|
+
vs as assertVaultProviderHintAccepted,
|
|
98
99
|
We as batchPollByProvider,
|
|
99
|
-
|
|
100
|
+
Cs as buildAndBroadcastRefund,
|
|
100
101
|
s as buildChallengeAssertPsbt,
|
|
101
102
|
ia as buildDepositTerms,
|
|
102
103
|
Ia as buildFundingOutpointsCommitment,
|
|
103
104
|
y as buildNoPayoutPsbt,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
m as buildPayoutPsbt,
|
|
106
|
+
V as buildPeginInputPsbt,
|
|
107
|
+
_ as buildPeginTxFromFundedPrePegin,
|
|
107
108
|
f as buildPrePeginPsbt,
|
|
108
109
|
I as buildRefundPsbt,
|
|
109
110
|
Da as buildVaultContext,
|
|
110
111
|
Ka as calculateBtcTxHash,
|
|
111
|
-
|
|
112
|
+
st as canPerformAction,
|
|
112
113
|
F as canonicalizeBtcPubkey,
|
|
113
114
|
ea as combineAbortSignals,
|
|
114
115
|
La as computeChangeOutputFeeSats,
|
|
@@ -137,86 +138,86 @@ export {
|
|
|
137
138
|
Oa as extractErrorData,
|
|
138
139
|
Ee as extractInputsFromTransaction,
|
|
139
140
|
b as extractPayoutSignature,
|
|
140
|
-
|
|
141
|
-
|
|
141
|
+
v as extractPeginInputSignature,
|
|
142
|
+
C as finalizePeginInputPsbt,
|
|
142
143
|
Te as findOverlappingPendingVaults,
|
|
143
144
|
H as formatSatoshisToBtc,
|
|
144
145
|
Pa as forwardDepositApproval,
|
|
145
146
|
ne as fundPeginTransaction,
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
147
|
+
me as getAddressTxs,
|
|
148
|
+
_e as getAddressUtxos,
|
|
149
|
+
Va as getContractErrorMessage,
|
|
149
150
|
Wa as getDustThreshold,
|
|
150
151
|
fe as getMempoolApiUrl,
|
|
151
152
|
K as getNetwork,
|
|
152
153
|
xe as getNetworkFees,
|
|
153
154
|
be as getOutspend,
|
|
154
|
-
|
|
155
|
+
tt as getPeginProtocolState,
|
|
155
156
|
wa as getPsbtInputFields,
|
|
156
157
|
Ga as getScriptType,
|
|
157
158
|
L as getSortedXOnlyPubkeys,
|
|
158
159
|
Oe as getTipHeight,
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
160
|
+
Ve as getTxHex,
|
|
161
|
+
ve as getTxInfo,
|
|
162
|
+
Ce as getUtxoInfo,
|
|
163
|
+
va as handleContractError,
|
|
163
164
|
k as hexToUint8Array,
|
|
164
|
-
|
|
165
|
+
rt as isActivationDeadlinePassedOnChain,
|
|
165
166
|
X as isAddressFromPublicKey,
|
|
166
167
|
ps as isAuthRejectedError,
|
|
167
|
-
|
|
168
|
+
ys as isDepositAmountValid,
|
|
168
169
|
Es as isDepositTermsRejectedError,
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
170
|
+
Is as isHintAccepted,
|
|
171
|
+
Ca as isKnownContractError,
|
|
172
|
+
Ds as isParticipantKeyDriftError,
|
|
173
|
+
Fs as isPegoutTerminalStatus,
|
|
174
|
+
Us as isRecognizedPegoutStatus,
|
|
175
|
+
Bs as isRegisteredVaultVersionMismatchError,
|
|
175
176
|
W as isValidHex,
|
|
176
177
|
Ts as isWotsMismatchError,
|
|
177
|
-
|
|
178
|
-
|
|
178
|
+
Ns as matchKeyHint,
|
|
179
|
+
Ms as matchKeySetHint,
|
|
179
180
|
Ba as parseFundingOutpointsFromTx,
|
|
180
181
|
pe as parseUnfundedWasmTransaction,
|
|
181
182
|
ue as peginOutputCount,
|
|
182
183
|
P as peginP2aAnchorOutput,
|
|
183
184
|
Ge as primeVpTokenRegistry,
|
|
184
185
|
w as processPublicKeyToXOnly,
|
|
185
|
-
|
|
186
|
+
he as pushTx,
|
|
186
187
|
ce as rateBasedTxBufferFee,
|
|
187
|
-
|
|
188
|
-
|
|
188
|
+
Hs as resolveCurrentParticipantKeys,
|
|
189
|
+
Ks as resolveParticipantKeysAtEpochs,
|
|
189
190
|
je as resolveProtocolAddresses,
|
|
190
|
-
|
|
191
|
+
Ls as runDepositorPresignFlow,
|
|
191
192
|
ja as selectUtxosForPegin,
|
|
192
193
|
Ja as shouldAddChangeOutput,
|
|
193
|
-
|
|
194
|
+
ks as signDepositorGraph,
|
|
194
195
|
G as stripHexPrefix,
|
|
195
|
-
|
|
196
|
+
Xs as submitWotsPublicKey,
|
|
196
197
|
E as supportedTxGraphVersions,
|
|
197
198
|
Ea as supportsDepositApproval,
|
|
198
199
|
j as toXOnly,
|
|
199
200
|
J as uint8ArrayToHex,
|
|
200
|
-
|
|
201
|
-
|
|
201
|
+
Ws as validateDepositAmount,
|
|
202
|
+
ws as validateMultiVaultDepositInputs,
|
|
202
203
|
ye as validateOffchainParams,
|
|
203
|
-
|
|
204
|
+
Gs as validateOnChainParticipantKeys,
|
|
204
205
|
Ie as validatePegInConfiguration,
|
|
205
206
|
T as validatePeginP2aAnchor,
|
|
206
|
-
|
|
207
|
-
|
|
207
|
+
js as validateProviderSelection,
|
|
208
|
+
Js as validateRemainingCapacity,
|
|
208
209
|
Je as validateRequestDepositorClaimerArtifactsResponse,
|
|
209
210
|
Ta as validateSecretAgainstHashlock,
|
|
210
211
|
De as validateTBVProtocolParams,
|
|
211
212
|
Ae as validateUtxosAvailable,
|
|
212
|
-
|
|
213
|
-
|
|
213
|
+
Ys as validateVaultAmounts,
|
|
214
|
+
Zs as validateVaultProviderPubkey,
|
|
214
215
|
Y as validateWalletPubkey,
|
|
215
|
-
|
|
216
|
-
|
|
216
|
+
zs as verifyRegisteredParticipantKeys,
|
|
217
|
+
qs as verifyRegisteredVaultVersions,
|
|
217
218
|
Ye as verifyServerIdentity,
|
|
218
219
|
Ze as vpTokenRegistry,
|
|
219
|
-
|
|
220
|
+
Qs as waitForPeginStatus,
|
|
220
221
|
Ya as waitForTransactionReceiptSmartAware
|
|
221
222
|
};
|
|
222
223
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../PeginManager-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../PeginManager-OXUOsgz2.cjs"),a=require("../../../signPsbtsWithFallback-Xs4jZw5z.cjs");exports.PeginManager=e.PeginManager;exports.estimateSubmitPeginRequestBatchGas=e.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=a.PayoutManager;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|