@babylonlabs-io/ts-sdk 0.72.1 → 0.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/README.md +56 -13
  2. package/dist/BTCVaultRegistryKeyEpochs.abi-CrQiTLfA.cjs +2 -0
  3. package/dist/BTCVaultRegistryKeyEpochs.abi-CrQiTLfA.cjs.map +1 -0
  4. package/dist/BTCVaultRegistryKeyEpochs.abi-D8cIbMtH.js +229 -0
  5. package/dist/BTCVaultRegistryKeyEpochs.abi-D8cIbMtH.js.map +1 -0
  6. package/dist/PeginManager-C9RPOd0L.js +1216 -0
  7. package/dist/PeginManager-C9RPOd0L.js.map +1 -0
  8. package/dist/PeginManager-E-UHA1un.cjs +2 -0
  9. package/dist/PeginManager-E-UHA1un.cjs.map +1 -0
  10. package/dist/bip322Verify-B7_gIhRk.cjs +2 -0
  11. package/dist/bip322Verify-B7_gIhRk.cjs.map +1 -0
  12. package/dist/bip322Verify-D6sBBUHE.js +79 -0
  13. package/dist/bip322Verify-D6sBBUHE.js.map +1 -0
  14. package/dist/{buildAndBroadcastReclaim-QIN8Mcwq.js → buildAndBroadcastReclaim-BXclIcu_.js} +3 -3
  15. package/dist/{buildAndBroadcastReclaim-QIN8Mcwq.js.map → buildAndBroadcastReclaim-BXclIcu_.js.map} +1 -1
  16. package/dist/{buildAndBroadcastReclaim-HX2xQlbM.cjs → buildAndBroadcastReclaim-U-PyFfDg.cjs} +2 -2
  17. package/dist/{buildAndBroadcastReclaim-HX2xQlbM.cjs.map → buildAndBroadcastReclaim-U-PyFfDg.cjs.map} +1 -1
  18. package/dist/index.cjs +1 -1
  19. package/dist/index.js +209 -205
  20. package/dist/index.js.map +1 -1
  21. package/dist/onChainBtcPubkey-BbxRrbvg.cjs +2 -0
  22. package/dist/onChainBtcPubkey-BbxRrbvg.cjs.map +1 -0
  23. package/dist/onChainBtcPubkey-C-6UWpD8.js +34 -0
  24. package/dist/onChainBtcPubkey-C-6UWpD8.js.map +1 -0
  25. package/dist/{parseFundingOutpoints-BkgGihaY.cjs → parseFundingOutpoints-B4iQeX6q.cjs} +2 -2
  26. package/dist/{parseFundingOutpoints-BkgGihaY.cjs.map → parseFundingOutpoints-B4iQeX6q.cjs.map} +1 -1
  27. package/dist/{parseFundingOutpoints-DlINgQ3X.js → parseFundingOutpoints-B67CoXpF.js} +2 -2
  28. package/dist/{parseFundingOutpoints-DlINgQ3X.js.map → parseFundingOutpoints-B67CoXpF.js.map} +1 -1
  29. package/dist/pegin-registration-client-6vLk2itL.cjs +2 -0
  30. package/dist/pegin-registration-client-6vLk2itL.cjs.map +1 -0
  31. package/dist/pegin-registration-client-BdRiR8br.js +2635 -0
  32. package/dist/pegin-registration-client-BdRiR8br.js.map +1 -0
  33. package/dist/primeVpAuth-DBHohVKM.cjs +2 -0
  34. package/dist/primeVpAuth-DBHohVKM.cjs.map +1 -0
  35. package/dist/primeVpAuth-DvaD45q_.js +745 -0
  36. package/dist/primeVpAuth-DvaD45q_.js.map +1 -0
  37. package/dist/psbtInputFields-B3e05Xe6.js +171 -0
  38. package/dist/psbtInputFields-B3e05Xe6.js.map +1 -0
  39. package/dist/psbtInputFields-BIxBpPj2.cjs +2 -0
  40. package/dist/psbtInputFields-BIxBpPj2.cjs.map +1 -0
  41. package/dist/sha2-CrlWM5S8.js +312 -0
  42. package/dist/{sha2-BYVxyZzX.js.map → sha2-CrlWM5S8.js.map} +1 -1
  43. package/dist/sha2-DI0-0SHr.cjs +2 -0
  44. package/dist/{sha2-DsrLC4NM.cjs.map → sha2-DI0-0SHr.cjs.map} +1 -1
  45. package/dist/{signPsbtsWithFallback-CCFTzE0o.js → signPsbtsWithFallback-0VBALhjS.js} +2 -2
  46. package/dist/{signPsbtsWithFallback-CCFTzE0o.js.map → signPsbtsWithFallback-0VBALhjS.js.map} +1 -1
  47. package/dist/{signPsbtsWithFallback-CrkvpSJz.cjs → signPsbtsWithFallback-DMSpIQWH.cjs} +2 -2
  48. package/dist/{signPsbtsWithFallback-CrkvpSJz.cjs.map → signPsbtsWithFallback-DMSpIQWH.cjs.map} +1 -1
  49. package/dist/tbv/core/clients/eth/__tests__/eth-import-boundary.test.d.ts +2 -0
  50. package/dist/tbv/core/clients/eth/__tests__/eth-import-boundary.test.d.ts.map +1 -0
  51. package/dist/tbv/core/clients/eth/__tests__/onChainBtcPubkey.test.d.ts +2 -0
  52. package/dist/tbv/core/clients/eth/__tests__/onChainBtcPubkey.test.d.ts.map +1 -0
  53. package/dist/tbv/core/clients/eth/__tests__/payout-script.test.d.ts +2 -0
  54. package/dist/tbv/core/clients/eth/__tests__/payout-script.test.d.ts.map +1 -0
  55. package/dist/tbv/core/clients/eth/__tests__/pegin-registration-calldata.test.d.ts +2 -0
  56. package/dist/tbv/core/clients/eth/__tests__/pegin-registration-calldata.test.d.ts.map +1 -0
  57. package/dist/tbv/core/clients/eth/__tests__/pegin-registration-client.test.d.ts +2 -0
  58. package/dist/tbv/core/clients/eth/__tests__/pegin-registration-client.test.d.ts.map +1 -0
  59. package/dist/tbv/core/clients/eth/__tests__/pegin-transaction.test.d.ts +2 -0
  60. package/dist/tbv/core/clients/eth/__tests__/pegin-transaction.test.d.ts.map +1 -0
  61. package/dist/tbv/core/clients/eth/index.cjs +2 -0
  62. package/dist/tbv/core/clients/eth/index.cjs.map +1 -0
  63. package/dist/tbv/core/clients/eth/index.d.ts +4 -0
  64. package/dist/tbv/core/clients/eth/index.d.ts.map +1 -1
  65. package/dist/tbv/core/clients/eth/index.js +22 -0
  66. package/dist/tbv/core/clients/eth/index.js.map +1 -0
  67. package/dist/tbv/core/clients/eth/onChainBtcPubkey.d.ts.map +1 -1
  68. package/dist/tbv/core/clients/eth/payout-script.d.ts +4 -0
  69. package/dist/tbv/core/clients/eth/payout-script.d.ts.map +1 -0
  70. package/dist/tbv/core/clients/eth/pegin-registration-client.d.ts +99 -0
  71. package/dist/tbv/core/clients/eth/pegin-registration-client.d.ts.map +1 -0
  72. package/dist/tbv/core/clients/eth/pegin-transaction.d.ts +14 -0
  73. package/dist/tbv/core/clients/eth/pegin-transaction.d.ts.map +1 -0
  74. package/dist/tbv/core/clients/index.cjs +1 -1
  75. package/dist/tbv/core/clients/index.js +55 -48
  76. package/dist/tbv/core/clients/index.js.map +1 -1
  77. package/dist/tbv/core/clients/mempool/index.cjs +2 -0
  78. package/dist/tbv/core/clients/mempool/index.cjs.map +1 -0
  79. package/dist/tbv/core/clients/mempool/index.js +222 -0
  80. package/dist/tbv/core/clients/mempool/index.js.map +1 -0
  81. package/dist/tbv/core/contracts/index.cjs +1 -1
  82. package/dist/tbv/core/contracts/index.cjs.map +1 -1
  83. package/dist/tbv/core/contracts/index.js +491 -12
  84. package/dist/tbv/core/contracts/index.js.map +1 -1
  85. package/dist/tbv/core/index.cjs +1 -1
  86. package/dist/tbv/core/index.d.ts +1 -0
  87. package/dist/tbv/core/index.d.ts.map +1 -1
  88. package/dist/tbv/core/index.js +207 -203
  89. package/dist/tbv/core/index.js.map +1 -1
  90. package/dist/tbv/core/managers/PeginManager.d.ts +38 -30
  91. package/dist/tbv/core/managers/PeginManager.d.ts.map +1 -1
  92. package/dist/tbv/core/managers/index.cjs +1 -1
  93. package/dist/tbv/core/managers/index.d.ts +2 -1
  94. package/dist/tbv/core/managers/index.d.ts.map +1 -1
  95. package/dist/tbv/core/managers/index.js +2 -2
  96. package/dist/tbv/core/services/index.cjs +1 -1
  97. package/dist/tbv/core/services/index.js +2 -2
  98. package/dist/tbv/core/utils/eth/index.cjs +2 -0
  99. package/dist/tbv/core/utils/eth/index.cjs.map +1 -0
  100. package/dist/tbv/core/utils/eth/index.js +109 -0
  101. package/dist/tbv/core/utils/eth/index.js.map +1 -0
  102. package/dist/tbv/core/utils/index.cjs +1 -1
  103. package/dist/tbv/core/utils/index.js +41 -40
  104. package/dist/tbv/core/utils/index.js.map +1 -1
  105. package/dist/tbv/core/vault-secrets/index.cjs +1 -1
  106. package/dist/tbv/core/vault-secrets/index.js +1 -1
  107. package/dist/tbv/index.cjs +1 -1
  108. package/dist/tbv/index.js +207 -203
  109. package/dist/tbv/index.js.map +1 -1
  110. package/dist/testing/index.cjs +1 -1
  111. package/dist/testing/index.js +1 -1
  112. package/dist/{toRefundInputs-BG-qHCEu.js → toRefundInputs-BkcFhvDp.js} +5 -5
  113. package/dist/{toRefundInputs-BG-qHCEu.js.map → toRefundInputs-BkcFhvDp.js.map} +1 -1
  114. package/dist/{toRefundInputs-kVR-3EdD.cjs → toRefundInputs-CatCKniS.cjs} +2 -2
  115. package/dist/{toRefundInputs-kVR-3EdD.cjs.map → toRefundInputs-CatCKniS.cjs.map} +1 -1
  116. package/dist/types-CPDLZm3l.js +430 -0
  117. package/dist/types-CPDLZm3l.js.map +1 -0
  118. package/dist/types-DSlcXtog.cjs +2 -0
  119. package/dist/types-DSlcXtog.cjs.map +1 -0
  120. package/package.json +32 -3
  121. package/dist/BTCVaultRegistryKeyEpochs.abi-CXjhRZbm.js +0 -111
  122. package/dist/BTCVaultRegistryKeyEpochs.abi-CXjhRZbm.js.map +0 -1
  123. package/dist/BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs +0 -2
  124. package/dist/BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs.map +0 -1
  125. package/dist/PeginManager-Bwjqb0_6.cjs +0 -2
  126. package/dist/PeginManager-Bwjqb0_6.cjs.map +0 -1
  127. package/dist/PeginManager-DjatPUPS.js +0 -1503
  128. package/dist/PeginManager-DjatPUPS.js.map +0 -1
  129. package/dist/ProtocolParams.abi-C0TSRaHV.js +0 -486
  130. package/dist/ProtocolParams.abi-C0TSRaHV.js.map +0 -1
  131. package/dist/ProtocolParams.abi-CYZoV2EI.cjs +0 -2
  132. package/dist/ProtocolParams.abi-CYZoV2EI.cjs.map +0 -1
  133. package/dist/errors-Blc-JWnI.js +0 -121
  134. package/dist/errors-Blc-JWnI.js.map +0 -1
  135. package/dist/errors-CGcNP0rV.cjs +0 -2
  136. package/dist/errors-CGcNP0rV.cjs.map +0 -1
  137. package/dist/mempoolApi-BJvC9nPF.cjs +0 -2
  138. package/dist/mempoolApi-BJvC9nPF.cjs.map +0 -1
  139. package/dist/mempoolApi-_CoQH5vH.js +0 -612
  140. package/dist/mempoolApi-_CoQH5vH.js.map +0 -1
  141. package/dist/onChainBtcPubkey-B5ZvWCCF.cjs +0 -2
  142. package/dist/onChainBtcPubkey-B5ZvWCCF.cjs.map +0 -1
  143. package/dist/onChainBtcPubkey-DATNfAAl.js +0 -19
  144. package/dist/onChainBtcPubkey-DATNfAAl.js.map +0 -1
  145. package/dist/primeVpAuth-BI63kgdd.js +0 -1171
  146. package/dist/primeVpAuth-BI63kgdd.js.map +0 -1
  147. package/dist/primeVpAuth-D3xbar3j.cjs +0 -2
  148. package/dist/primeVpAuth-D3xbar3j.cjs.map +0 -1
  149. package/dist/sha2-BYVxyZzX.js +0 -274
  150. package/dist/sha2-DsrLC4NM.cjs +0 -2
  151. package/dist/waitForTransactionReceiptSmartAware-DpQ69ySe.cjs +0 -2
  152. package/dist/waitForTransactionReceiptSmartAware-DpQ69ySe.cjs.map +0 -1
  153. package/dist/waitForTransactionReceiptSmartAware-z3Xfmo44.js +0 -277
  154. package/dist/waitForTransactionReceiptSmartAware-z3Xfmo44.js.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./verifyScriptPathSchnorrSignature-BfNUSgA7.cjs"),C=require("./vaultCoreVersion-DYfw3qed.cjs"),c=require("./tbv/core/wasm/index.cjs"),p=require("./verifyKeyPathSchnorrSignature-BedSbH2D.cjs"),E=require("./noPayout-zEifyecV.cjs"),O=require("./challengeAssert-Z7_YULBb.cjs"),r=require("./bitcoin-D-O2GjbC.cjs"),I=require("./abortSignals-msbmbqFe.cjs"),T=require("./signing-BJ3X66b-.cjs"),P=require("./validation-C6XTfZak.cjs"),l=require("./PeginManager-Bwjqb0_6.cjs"),d=require("./signPsbtsWithFallback-CrkvpSJz.cjs"),m=require("./ProtocolParams.abi-CYZoV2EI.cjs"),h=require("./BTCVaultRegistry.abi-z7d_eP22.cjs"),N=require("./BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs"),A=require("./errors-CGcNP0rV.cjs"),_=require("./parseFundingOutpoints-BkgGihaY.cjs"),v=require("./shared/index.cjs"),u=require("./waitForTransactionReceiptSmartAware-DpQ69ySe.cjs"),i=require("./fundPeginTransaction-BLD8FRL9.cjs"),R=require("./reservation-Dr2HLCxx.cjs"),a=require("./mempoolApi-BJvC9nPF.cjs"),S=require("./index-Cs7_Evtk.cjs"),s=require("./json-rpc-client-BiAmg_ho.cjs"),n=require("./primeVpAuth-D3xbar3j.cjs"),y=require("./onChainBtcPubkey-B5ZvWCCF.cjs"),t=require("./toRefundInputs-kVR-3EdD.cjs"),e=require("./buildAndBroadcastReclaim-HX2xQlbM.cjs"),g=require("./peginState-eaQ4IO_R.cjs");exports.PEGIN_DEPOSITOR_CLAIM_VOUT=o.PEGIN_DEPOSITOR_CLAIM_VOUT;exports.PsbtSubstitutionError=o.PsbtSubstitutionError;exports.assertPsbtUnsignedTxMatches=o.assertPsbtUnsignedTxMatches;exports.assertScriptPathSchnorrSignature=o.assertScriptPathSchnorrSignature;exports.buildPayoutPsbt=o.buildPayoutPsbt;exports.buildPeginTxFromFundedPrePegin=o.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=o.buildPrePeginPsbt;exports.computeNumLocalChallengers=o.computeNumLocalChallengers;exports.createPayoutScript=o.createPayoutScript;exports.deriveDepositorClaimDescriptor=o.deriveDepositorClaimDescriptor;exports.deriveDepositorClaimScriptPubKey=o.deriveDepositorClaimScriptPubKey;exports.extractPayoutSignature=o.extractPayoutSignature;exports.assertValidVaultCoreVersion=C.assertValidVaultCoreVersion;exports.computeMinClaimValue=c.computeMinClaimValue;exports.computeMinPeginFee=c.computeMinPeginFee;exports.deriveVaultId=c.deriveVaultId;exports.expandAuthAnchor=c.expandAuthAnchor;exports.expandHashlockSecret=c.expandHashlockSecret;exports.expandWotsSeed=c.expandWotsSeed;exports.peginP2aAnchorOutput=c.peginP2aAnchorOutput;exports.supportedTxGraphVersions=c.supportedTxGraphVersions;exports.validatePeginP2aAnchor=c.validatePeginP2aAnchor;exports.assertKeyPathSchnorrSignature=p.assertKeyPathSchnorrSignature;exports.assertReturnedKeyPathSignatures=p.assertReturnedKeyPathSignatures;exports.buildPeginInputPsbt=p.buildPeginInputPsbt;exports.extractPeginInputSignature=p.extractPeginInputSignature;exports.finalizePeginInputPsbt=p.finalizePeginInputPsbt;exports.buildNoPayoutPsbt=E.buildNoPayoutPsbt;exports.buildReclaimPsbt=E.buildReclaimPsbt;exports.buildRefundPsbt=E.buildRefundPsbt;exports.estimateReclaimFeeSats=E.estimateReclaimFeeSats;exports.finalizeScriptPathWithSignatures=E.finalizeScriptPathWithSignatures;exports.reclaimVsize=E.reclaimVsize;exports.buildChallengeAssertPsbt=O.buildChallengeAssertPsbt;exports.canonicalizeBtcPubkey=r.canonicalizeBtcPubkey;exports.deriveBip86ScriptPubKeyHex=r.deriveBip86ScriptPubKeyHex;exports.deriveNativeSegwitAddress=r.deriveNativeSegwitAddress;exports.deriveTaprootAddress=r.deriveTaprootAddress;exports.ensureHexPrefix=r.ensureHexPrefix;exports.formatSatoshisToBtc=r.formatSatoshisToBtc;exports.getNetwork=r.getNetwork;exports.getSortedXOnlyPubkeys=r.getSortedXOnlyPubkeys;exports.hexToUint8Array=r.hexToUint8Array;exports.isAddressFromPublicKey=r.isAddressFromPublicKey;exports.isValidHex=r.isValidHex;exports.processPublicKeyToXOnly=r.processPublicKeyToXOnly;exports.stripHexPrefix=r.stripHexPrefix;exports.toXOnly=r.toXOnly;exports.uint8ArrayToHex=r.uint8ArrayToHex;exports.validateWalletPubkey=r.validateWalletPubkey;exports.combineAbortSignals=I.combineAbortSignals;exports.calculateBtcTxHash=T.calculateBtcTxHash;exports.createTaprootScriptPathSignOptions=T.createTaprootScriptPathSignOptions;exports.BITCOIN_ADDRESS_RE=P.BITCOIN_ADDRESS_RE;exports.COMPRESSED_PUBKEY_HEX_LEN=P.COMPRESSED_PUBKEY_HEX_LEN;exports.HEX_RE=P.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=P.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=P.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=P.TXID_RE;exports.X_ONLY_PUBKEY_HEX_LEN=P.X_ONLY_PUBKEY_HEX_LEN;exports.COMMISSION_BPS_HEADROOM=l.COMMISSION_BPS_HEADROOM;exports.MAX_ACCEPTABLE_COMMISSION_BPS_CAP=l.MAX_ACCEPTABLE_COMMISSION_BPS_CAP;exports.PeginManager=l.PeginManager;exports.buildDepositTerms=l.buildDepositTerms;exports.capMaxAcceptableCommissionBps=l.capMaxAcceptableCommissionBps;exports.computeWotsBlockPublicKeysHash=l.computeWotsBlockPublicKeysHash;exports.deriveWotsBlocksFromSeed=l.deriveWotsBlocksFromSeed;exports.ensurePrePeginTermsApproval=l.ensurePrePeginTermsApproval;exports.estimateSubmitPeginRequestBatchGas=l.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=d.PayoutManager;exports.computeHashlock=d.computeHashlock;exports.forwardDepositApproval=d.forwardDepositApproval;exports.requireChangeAddress=d.requireChangeAddress;exports.supportsDepositApproval=d.supportsDepositApproval;exports.validateSecretAgainstHashlock=d.validateSecretAgainstHashlock;exports.ApplicationRegistryABI=m.ApplicationRegistryABI;exports.ProtocolParamsABI=m.ProtocolParamsABI;exports.BTCVaultRegistryABI=h.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=N.BTCVaultRegistryKeyEpochsABI;exports.CONTRACT_ERRORS=A.CONTRACT_ERRORS;exports.extractErrorData=A.extractErrorData;exports.getContractErrorMessage=A.getContractErrorMessage;exports.handleContractError=A.handleContractError;exports.isKnownContractError=A.isKnownContractError;exports.VAULT_APP_NAME=_.VAULT_APP_NAME;exports.buildFundingOutpointsCommitment=_.buildFundingOutpointsCommitment;exports.buildVaultContext=_.buildVaultContext;exports.deriveVaultRoot=_.deriveVaultRoot;exports.forwardDeriveContextHash=_.forwardDeriveContextHash;exports.parseFundingOutpointsFromTx=_.parseFundingOutpointsFromTx;exports.BitcoinNetworks=v.BitcoinNetworks;exports.BitcoinScriptType=u.BitcoinScriptType;exports.applyChangeOutputPolicy=u.applyChangeOutputPolicy;exports.computeChangeOutputFeeSats=u.computeChangeOutputFeeSats;exports.computeMaxDeposit=u.computeMaxDeposit;exports.computePeginBaseFeeSats=u.computePeginBaseFeeSats;exports.getDustThreshold=u.getDustThreshold;exports.getPsbtInputFields=u.getPsbtInputFields;exports.getScriptType=u.getScriptType;exports.selectUtxosForPegin=u.selectUtxosForPegin;exports.shouldAddChangeOutput=u.shouldAddChangeOutput;exports.waitForTransactionReceiptSmartAware=u.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=R.UtxoNotAvailableError;exports.assertUtxosAvailable=R.assertUtxosAvailable;exports.extractInputsFromTransaction=R.extractInputsFromTransaction;exports.findOverlappingPendingVaults=R.findOverlappingPendingVaults;exports.validateUtxosAvailable=R.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.VaultProviderRpcClient=S.VaultProviderRpcClient;exports.VpResponseValidationError=S.VpResponseValidationError;exports.batchPollByProvider=S.batchPollByProvider;exports.validateRequestDepositorClaimerArtifactsResponse=S.validateRequestDepositorClaimerArtifactsResponse;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.OnChainBtcVaultStatus=n.OnChainBtcVaultStatus;exports.ServerIdentityError=n.ServerIdentityError;exports.ViemOperationKeyReader=n.ViemOperationKeyReader;exports.ViemProtocolParamsReader=n.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=n.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=n.ViemVaultKeeperReader;exports.VpTokenRegistry=n.VpTokenRegistry;exports.createAuthenticatedVpClient=n.createAuthenticatedVpClient;exports.primeVpTokenRegistry=n.primeVpTokenRegistry;exports.resolveProtocolAddresses=n.resolveProtocolAddresses;exports.verifyServerIdentity=n.verifyServerIdentity;exports.vpTokenRegistry=n.vpTokenRegistry;exports.assertOnChainBtcPubkey=y.assertOnChainBtcPubkey;exports.DEPOSIT_TERMS_REJECTED_ERROR_NAME=t.DEPOSIT_TERMS_REJECTED_ERROR_NAME;exports.DepositTermsRejectedError=t.DepositTermsRejectedError;exports.PeginParamsAmbiguousError=t.PeginParamsAmbiguousError;exports.PeginParamsIncompleteSpaceError=t.PeginParamsIncompleteSpaceError;exports.PeginParamsNotFoundError=t.PeginParamsNotFoundError;exports.PeginSizingIntegrityError=t.PeginSizingIntegrityError;exports.UnanchoredPrePeginError=t.UnanchoredPrePeginError;exports.VaultRootMismatchError=t.VaultRootMismatchError;exports.buildPeginParamsCandidates=t.buildPeginParamsCandidates;exports.deriveHashlocksFromPrePegin=t.deriveHashlocksFromPrePegin;exports.describePeginParamsCandidate=t.describePeginParamsCandidate;exports.describeUnresolvedVersion=t.describeUnresolvedVersion;exports.isDepositTermsRejectedError=t.isDepositTermsRejectedError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.rebuildDepositTermsCore=t.rebuildDepositTermsCore;exports.reconstructPeginParams=t.reconstructPeginParams;exports.toRefundInputs=t.toRefundInputs;exports.BIP68NotMatureError=e.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=e.ClaimerPegoutStatusValue;exports.PEGIN_ETH_CONFIRMATIONS=e.PEGIN_ETH_CONFIRMATIONS;exports.ParticipantKeyDriftError=e.ParticipantKeyDriftError;exports.PeginRegistrationMissingError=e.PeginRegistrationMissingError;exports.PeginRegistrationNotFinalError=e.PeginRegistrationNotFinalError;exports.RECLAIM_MAX_FEE_FRACTION_DENOMINATOR=e.RECLAIM_MAX_FEE_FRACTION_DENOMINATOR;exports.RECLAIM_MAX_FEE_FRACTION_NUMERATOR=e.RECLAIM_MAX_FEE_FRACTION_NUMERATOR;exports.RECLAIM_MAX_FEE_RATE_SATS_VB=e.RECLAIM_MAX_FEE_RATE_SATS_VB;exports.RECLAIM_WARN_FEE_FRACTION_NUMERATOR=e.RECLAIM_WARN_FEE_FRACTION_NUMERATOR;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.ReclaimUneconomicalError=e.ReclaimUneconomicalError;exports.RegisteredVaultVersionMismatchError=e.RegisteredVaultVersionMismatchError;exports.activateVault=e.activateVault;exports.activateVaultAndRedeem=e.activateVaultAndRedeem;exports.assertVaultProviderHintAccepted=e.assertVaultProviderHintAccepted;exports.buildAndBroadcastReclaim=e.buildAndBroadcastReclaim;exports.buildAndBroadcastRefund=e.buildAndBroadcastRefund;exports.estimateRefundFeeSats=e.estimateRefundFeeSats;exports.isDepositAmountValid=e.isDepositAmountValid;exports.isHintAccepted=e.isHintAccepted;exports.isParticipantKeyDriftError=e.isParticipantKeyDriftError;exports.isPeginRegistrationMissingError=e.isPeginRegistrationMissingError;exports.isPeginRegistrationNotFinalError=e.isPeginRegistrationNotFinalError;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.waitForPeginRegistrationDepth=e.waitForPeginRegistrationDepth;exports.waitForPeginStatus=e.waitForPeginStatus;exports.ContractStatus=g.ContractStatus;exports.PeginAction=g.PeginAction;exports.canPerformAction=g.canPerformAction;exports.getPeginProtocolState=g.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=g.isActivationDeadlinePassedOnChain;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./verifyScriptPathSchnorrSignature-BfNUSgA7.cjs"),I=require("./vaultCoreVersion-DYfw3qed.cjs"),u=require("./tbv/core/wasm/index.cjs"),g=require("./verifyKeyPathSchnorrSignature-BedSbH2D.cjs"),P=require("./noPayout-zEifyecV.cjs"),h=require("./challengeAssert-Z7_YULBb.cjs"),r=require("./bitcoin-D-O2GjbC.cjs"),v=require("./abortSignals-msbmbqFe.cjs"),C=require("./signing-BJ3X66b-.cjs"),l=require("./validation-C6XTfZak.cjs"),b=require("./tbv/core/utils/eth/index.cjs"),E=require("./PeginManager-E-UHA1un.cjs"),d=require("./signPsbtsWithFallback-DMSpIQWH.cjs"),o=require("./tbv/core/clients/mempool/index.cjs"),_=require("./types-DSlcXtog.cjs"),N=require("./onChainBtcPubkey-BbxRrbvg.cjs"),c=require("./pegin-registration-client-6vLk2itL.cjs"),O=require("./tbv/core/contracts/index.cjs"),V=require("./BTCVaultRegistry.abi-z7d_eP22.cjs"),p=require("./BTCVaultRegistryKeyEpochs.abi-CrQiTLfA.cjs"),R=require("./parseFundingOutpoints-B4iQeX6q.cjs"),y=require("./shared/index.cjs"),n=require("./psbtInputFields-BIxBpPj2.cjs"),i=require("./fundPeginTransaction-BLD8FRL9.cjs"),S=require("./reservation-Dr2HLCxx.cjs"),m=require("./index-Cs7_Evtk.cjs"),s=require("./json-rpc-client-BiAmg_ho.cjs"),A=require("./primeVpAuth-DBHohVKM.cjs"),t=require("./toRefundInputs-CatCKniS.cjs"),e=require("./buildAndBroadcastReclaim-U-PyFfDg.cjs"),T=require("./peginState-eaQ4IO_R.cjs");exports.PEGIN_DEPOSITOR_CLAIM_VOUT=a.PEGIN_DEPOSITOR_CLAIM_VOUT;exports.PsbtSubstitutionError=a.PsbtSubstitutionError;exports.assertPsbtUnsignedTxMatches=a.assertPsbtUnsignedTxMatches;exports.assertScriptPathSchnorrSignature=a.assertScriptPathSchnorrSignature;exports.buildPayoutPsbt=a.buildPayoutPsbt;exports.buildPeginTxFromFundedPrePegin=a.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=a.buildPrePeginPsbt;exports.computeNumLocalChallengers=a.computeNumLocalChallengers;exports.createPayoutScript=a.createPayoutScript;exports.deriveDepositorClaimDescriptor=a.deriveDepositorClaimDescriptor;exports.deriveDepositorClaimScriptPubKey=a.deriveDepositorClaimScriptPubKey;exports.extractPayoutSignature=a.extractPayoutSignature;exports.assertValidVaultCoreVersion=I.assertValidVaultCoreVersion;exports.computeMinClaimValue=u.computeMinClaimValue;exports.computeMinPeginFee=u.computeMinPeginFee;exports.deriveVaultId=u.deriveVaultId;exports.expandAuthAnchor=u.expandAuthAnchor;exports.expandHashlockSecret=u.expandHashlockSecret;exports.expandWotsSeed=u.expandWotsSeed;exports.peginP2aAnchorOutput=u.peginP2aAnchorOutput;exports.supportedTxGraphVersions=u.supportedTxGraphVersions;exports.validatePeginP2aAnchor=u.validatePeginP2aAnchor;exports.assertKeyPathSchnorrSignature=g.assertKeyPathSchnorrSignature;exports.assertReturnedKeyPathSignatures=g.assertReturnedKeyPathSignatures;exports.buildPeginInputPsbt=g.buildPeginInputPsbt;exports.extractPeginInputSignature=g.extractPeginInputSignature;exports.finalizePeginInputPsbt=g.finalizePeginInputPsbt;exports.buildNoPayoutPsbt=P.buildNoPayoutPsbt;exports.buildReclaimPsbt=P.buildReclaimPsbt;exports.buildRefundPsbt=P.buildRefundPsbt;exports.estimateReclaimFeeSats=P.estimateReclaimFeeSats;exports.finalizeScriptPathWithSignatures=P.finalizeScriptPathWithSignatures;exports.reclaimVsize=P.reclaimVsize;exports.buildChallengeAssertPsbt=h.buildChallengeAssertPsbt;exports.canonicalizeBtcPubkey=r.canonicalizeBtcPubkey;exports.deriveBip86ScriptPubKeyHex=r.deriveBip86ScriptPubKeyHex;exports.deriveNativeSegwitAddress=r.deriveNativeSegwitAddress;exports.deriveTaprootAddress=r.deriveTaprootAddress;exports.ensureHexPrefix=r.ensureHexPrefix;exports.formatSatoshisToBtc=r.formatSatoshisToBtc;exports.getNetwork=r.getNetwork;exports.getSortedXOnlyPubkeys=r.getSortedXOnlyPubkeys;exports.hexToUint8Array=r.hexToUint8Array;exports.isAddressFromPublicKey=r.isAddressFromPublicKey;exports.isValidHex=r.isValidHex;exports.processPublicKeyToXOnly=r.processPublicKeyToXOnly;exports.stripHexPrefix=r.stripHexPrefix;exports.toXOnly=r.toXOnly;exports.uint8ArrayToHex=r.uint8ArrayToHex;exports.validateWalletPubkey=r.validateWalletPubkey;exports.combineAbortSignals=v.combineAbortSignals;exports.calculateBtcTxHash=C.calculateBtcTxHash;exports.createTaprootScriptPathSignOptions=C.createTaprootScriptPathSignOptions;exports.BITCOIN_ADDRESS_RE=l.BITCOIN_ADDRESS_RE;exports.COMPRESSED_PUBKEY_HEX_LEN=l.COMPRESSED_PUBKEY_HEX_LEN;exports.HEX_RE=l.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=l.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=l.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=l.TXID_RE;exports.X_ONLY_PUBKEY_HEX_LEN=l.X_ONLY_PUBKEY_HEX_LEN;exports.waitForTransactionReceiptSmartAware=b.waitForTransactionReceiptSmartAware;exports.PeginManager=E.PeginManager;exports.buildDepositTerms=E.buildDepositTerms;exports.computeWotsBlockPublicKeysHash=E.computeWotsBlockPublicKeysHash;exports.deriveWotsBlocksFromSeed=E.deriveWotsBlocksFromSeed;exports.ensurePrePeginTermsApproval=E.ensurePrePeginTermsApproval;exports.estimateSubmitPeginRequestBatchGas=E.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=d.PayoutManager;exports.computeHashlock=d.computeHashlock;exports.forwardDepositApproval=d.forwardDepositApproval;exports.requireChangeAddress=d.requireChangeAddress;exports.supportsDepositApproval=d.supportsDepositApproval;exports.validateSecretAgainstHashlock=d.validateSecretAgainstHashlock;exports.MEMPOOL_API_URLS=o.MEMPOOL_API_URLS;exports.getAddressTxs=o.getAddressTxs;exports.getAddressUtxos=o.getAddressUtxos;exports.getMempoolApiUrl=o.getMempoolApiUrl;exports.getNetworkFees=o.getNetworkFees;exports.getOutspend=o.getOutspend;exports.getTipHeight=o.getTipHeight;exports.getTxHex=o.getTxHex;exports.getTxInfo=o.getTxInfo;exports.getUtxoInfo=o.getUtxoInfo;exports.pushTx=o.pushTx;exports.OnChainBtcVaultStatus=_.OnChainBtcVaultStatus;exports.ViemOperationKeyReader=_.ViemOperationKeyReader;exports.ViemProtocolParamsReader=_.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=_.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=_.ViemVaultKeeperReader;exports.resolveProtocolAddresses=_.resolveProtocolAddresses;exports.assertOnChainBtcPubkey=N.assertOnChainBtcPubkey;exports.COMMISSION_BPS_HEADROOM=c.COMMISSION_BPS_HEADROOM;exports.MAX_ACCEPTABLE_COMMISSION_BPS_CAP=c.MAX_ACCEPTABLE_COMMISSION_BPS_CAP;exports.ViemPeginRegistrationClient=c.ViemPeginRegistrationClient;exports.ViemVaultRegistryReader=c.ViemVaultRegistryReader;exports.capMaxAcceptableCommissionBps=c.capMaxAcceptableCommissionBps;exports.derivePeginVaultId=c.derivePeginVaultId;exports.validateOffchainParams=c.validateOffchainParams;exports.validatePegInConfiguration=c.validatePegInConfiguration;exports.validateTBVProtocolParams=c.validateTBVProtocolParams;exports.ApplicationRegistryABI=O.ApplicationRegistryABI;exports.ProtocolParamsABI=O.ProtocolParamsABI;exports.BTCVaultRegistryABI=V.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=p.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=R.VAULT_APP_NAME;exports.buildFundingOutpointsCommitment=R.buildFundingOutpointsCommitment;exports.buildVaultContext=R.buildVaultContext;exports.deriveVaultRoot=R.deriveVaultRoot;exports.forwardDeriveContextHash=R.forwardDeriveContextHash;exports.parseFundingOutpointsFromTx=R.parseFundingOutpointsFromTx;exports.BitcoinNetworks=y.BitcoinNetworks;exports.BitcoinScriptType=n.BitcoinScriptType;exports.applyChangeOutputPolicy=n.applyChangeOutputPolicy;exports.computeChangeOutputFeeSats=n.computeChangeOutputFeeSats;exports.computeMaxDeposit=n.computeMaxDeposit;exports.computePeginBaseFeeSats=n.computePeginBaseFeeSats;exports.getDustThreshold=n.getDustThreshold;exports.getPsbtInputFields=n.getPsbtInputFields;exports.getScriptType=n.getScriptType;exports.selectUtxosForPegin=n.selectUtxosForPegin;exports.shouldAddChangeOutput=n.shouldAddChangeOutput;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=S.UtxoNotAvailableError;exports.assertUtxosAvailable=S.assertUtxosAvailable;exports.extractInputsFromTransaction=S.extractInputsFromTransaction;exports.findOverlappingPendingVaults=S.findOverlappingPendingVaults;exports.validateUtxosAvailable=S.validateUtxosAvailable;exports.VaultProviderRpcClient=m.VaultProviderRpcClient;exports.VpResponseValidationError=m.VpResponseValidationError;exports.batchPollByProvider=m.batchPollByProvider;exports.validateRequestDepositorClaimerArtifactsResponse=m.validateRequestDepositorClaimerArtifactsResponse;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.ServerIdentityError=A.ServerIdentityError;exports.VpTokenRegistry=A.VpTokenRegistry;exports.createAuthenticatedVpClient=A.createAuthenticatedVpClient;exports.primeVpTokenRegistry=A.primeVpTokenRegistry;exports.verifyServerIdentity=A.verifyServerIdentity;exports.vpTokenRegistry=A.vpTokenRegistry;exports.DEPOSIT_TERMS_REJECTED_ERROR_NAME=t.DEPOSIT_TERMS_REJECTED_ERROR_NAME;exports.DepositTermsRejectedError=t.DepositTermsRejectedError;exports.PeginParamsAmbiguousError=t.PeginParamsAmbiguousError;exports.PeginParamsIncompleteSpaceError=t.PeginParamsIncompleteSpaceError;exports.PeginParamsNotFoundError=t.PeginParamsNotFoundError;exports.PeginSizingIntegrityError=t.PeginSizingIntegrityError;exports.UnanchoredPrePeginError=t.UnanchoredPrePeginError;exports.VaultRootMismatchError=t.VaultRootMismatchError;exports.buildPeginParamsCandidates=t.buildPeginParamsCandidates;exports.deriveHashlocksFromPrePegin=t.deriveHashlocksFromPrePegin;exports.describePeginParamsCandidate=t.describePeginParamsCandidate;exports.describeUnresolvedVersion=t.describeUnresolvedVersion;exports.isDepositTermsRejectedError=t.isDepositTermsRejectedError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.rebuildDepositTermsCore=t.rebuildDepositTermsCore;exports.reconstructPeginParams=t.reconstructPeginParams;exports.toRefundInputs=t.toRefundInputs;exports.BIP68NotMatureError=e.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=e.ClaimerPegoutStatusValue;exports.PEGIN_ETH_CONFIRMATIONS=e.PEGIN_ETH_CONFIRMATIONS;exports.ParticipantKeyDriftError=e.ParticipantKeyDriftError;exports.PeginRegistrationMissingError=e.PeginRegistrationMissingError;exports.PeginRegistrationNotFinalError=e.PeginRegistrationNotFinalError;exports.RECLAIM_MAX_FEE_FRACTION_DENOMINATOR=e.RECLAIM_MAX_FEE_FRACTION_DENOMINATOR;exports.RECLAIM_MAX_FEE_FRACTION_NUMERATOR=e.RECLAIM_MAX_FEE_FRACTION_NUMERATOR;exports.RECLAIM_MAX_FEE_RATE_SATS_VB=e.RECLAIM_MAX_FEE_RATE_SATS_VB;exports.RECLAIM_WARN_FEE_FRACTION_NUMERATOR=e.RECLAIM_WARN_FEE_FRACTION_NUMERATOR;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.ReclaimUneconomicalError=e.ReclaimUneconomicalError;exports.RegisteredVaultVersionMismatchError=e.RegisteredVaultVersionMismatchError;exports.activateVault=e.activateVault;exports.activateVaultAndRedeem=e.activateVaultAndRedeem;exports.assertVaultProviderHintAccepted=e.assertVaultProviderHintAccepted;exports.buildAndBroadcastReclaim=e.buildAndBroadcastReclaim;exports.buildAndBroadcastRefund=e.buildAndBroadcastRefund;exports.estimateRefundFeeSats=e.estimateRefundFeeSats;exports.isDepositAmountValid=e.isDepositAmountValid;exports.isHintAccepted=e.isHintAccepted;exports.isParticipantKeyDriftError=e.isParticipantKeyDriftError;exports.isPeginRegistrationMissingError=e.isPeginRegistrationMissingError;exports.isPeginRegistrationNotFinalError=e.isPeginRegistrationNotFinalError;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.waitForPeginRegistrationDepth=e.waitForPeginRegistrationDepth;exports.waitForPeginStatus=e.waitForPeginStatus;exports.ContractStatus=T.ContractStatus;exports.PeginAction=T.PeginAction;exports.canPerformAction=T.canPerformAction;exports.getPeginProtocolState=T.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=T.isActivationDeadlinePassedOnChain;
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.js CHANGED
@@ -1,268 +1,272 @@
1
1
  import { P as s, h as t, i as r, j as i, f as o, b as n, a as P, c as p, k as c, d as u, e as E, g as d } from "./verifyScriptPathSchnorrSignature-Ciq_xZhw.js";
2
2
  import { a as A } from "./vaultCoreVersion-D_fP9P3C.js";
3
- import { computeMinClaimValue as _, computeMinPeginFee as g, deriveVaultId as T, expandAuthAnchor as S, expandHashlockSecret as m, expandWotsSeed as C, peginP2aAnchorOutput as O, supportedTxGraphVersions as f, validatePeginP2aAnchor as I } from "./tbv/core/wasm/index.js";
4
- import { a as b, c as h, b as V, e as v, f as N } from "./verifyKeyPathSchnorrSignature-BrgUJmV0.js";
3
+ import { computeMinClaimValue as _, computeMinPeginFee as g, deriveVaultId as T, expandAuthAnchor as m, expandHashlockSecret as S, expandWotsSeed as C, peginP2aAnchorOutput as O, supportedTxGraphVersions as f, validatePeginP2aAnchor as I } from "./tbv/core/wasm/index.js";
4
+ import { a as b, c as V, b as h, e as v, f as N } from "./verifyKeyPathSchnorrSignature-BrgUJmV0.js";
5
5
  import { c as F, a as y, b as D, e as U, f as B, r as H } from "./noPayout-DpGRzidi.js";
6
6
  import { b as K } from "./challengeAssert-Cp_GeRg8.js";
7
- import { c as k, d as w, a as W, b as G, e as j, f as Y, k as z, g as J, h as Z, i as q, j as Q, p as $, s as aa, t as ea, u as sa, v as ta } from "./bitcoin-C-TuHb-v.js";
7
+ import { c as k, d as W, a as w, b as G, e as Y, f as j, k as z, g as J, h as Z, i as q, j as Q, p as $, s as aa, t as ea, u as sa, v as ta } from "./bitcoin-C-TuHb-v.js";
8
8
  import { c as ia } from "./abortSignals-BPpAUL1Z.js";
9
9
  import { c as na, a as Pa } from "./signing-Cm-McVR2.js";
10
10
  import { B as ca, C as ua, H as Ea, K as da, M as la, T as Aa, X as Ra } from "./validation-OSC0xTHB.js";
11
- import { C as ga, M as Ta, P as Sa, b as ma, a as Ca, c as Oa, d as fa, f as Ia, e as xa } from "./PeginManager-DjatPUPS.js";
12
- import { P as ha, c as Va, f as va, r as Na, s as Ma, v as Fa } from "./signPsbtsWithFallback-CCFTzE0o.js";
13
- import { A as Da, P as Ua } from "./ProtocolParams.abi-C0TSRaHV.js";
14
- import { B as Ha } from "./BTCVaultRegistry.abi-CJwWI2EO.js";
15
- import { B as Ka } from "./BTCVaultRegistryKeyEpochs.abi-CXjhRZbm.js";
16
- import { C as ka, e as wa, g as Wa, h as Ga, i as ja } from "./errors-Blc-JWnI.js";
17
- import { V as za, b as Ja, a as Za, d as qa, f as Qa, p as $a } from "./parseFundingOutpoints-DlINgQ3X.js";
18
- import { BitcoinNetworks as ee } from "./shared/index.js";
19
- import { B as te, a as re, c as ie, b as oe, d as ne, g as Pe, h as pe, f as ce, s as ue, e as Ee, w as de } from "./waitForTransactionReceiptSmartAware-z3Xfmo44.js";
20
- import { B as Ae, D as Re, L as _e, M as ge, c as Te, P as Se, b as me, a as Ce, S as Oe, T as fe, W as Ie, f as xe, d as be, p as he, r as Ve } from "./fundPeginTransaction-B2wyjqp0.js";
21
- import { U as Ne, a as Me, e as Fe, f as ye, v as De } from "./reservation-Cj9F0rP9.js";
22
- import { M as Be, V as He, g as Le, a as Ke, b as Xe, c as ke, d as we, e as We, f as Ge, h as je, i as Ye, p as ze, v as Je, j as Ze, k as qe } from "./mempoolApi-_CoQH5vH.js";
23
- import { V as $e, a as as, b as es, v as ss } from "./index-LgmJhdEN.js";
24
- import { A as rs, D as is, J as os, a as ns, b as Ps, d as ps, P as cs, R as us, e as Es, c as ds, V as ls, i as As } from "./json-rpc-client-DuUARJvV.js";
25
- import { O as _s, S as gs, b as Ts, d as Ss, e as ms, f as Cs, V as Os, c as fs, p as Is, r as xs, v as bs, a as hs } from "./primeVpAuth-BI63kgdd.js";
26
- import { a as vs } from "./onChainBtcPubkey-DATNfAAl.js";
27
- import { D as Ms, a as Fs, h as ys, j as Ds, P as Us, k as Bs, U as Hs, V as Ls, c as Ks, d as Xs, f as ks, e as ws, b as Ws, i as Gs, r as js, g as Ys, t as zs } from "./toRefundInputs-BG-qHCEu.js";
28
- import { H as Zs, E as qs, P as Qs, o as $s, c as at, d as et, S as st, T as tt, U as rt, V as it, K as ot, L as nt, M as Pt, N as pt, O as ct, R as ut, a as Et, b as dt, y as lt, Q as At, I as Rt, J as _t, g as gt, z as Tt, p as St, i as mt, e as Ct, G as Ot, F as ft, t as It, A as xt, B as bt, C as ht, D as Vt, r as vt, s as Nt, f as Mt, h as Ft, j as yt, v as Dt, k as Ut, l as Bt, m as Ht, n as Lt, q as Kt, u as Xt, w as kt, x as wt } from "./buildAndBroadcastReclaim-QIN8Mcwq.js";
29
- import { C as Gt, P as jt, c as Yt, g as zt, i as Jt } from "./peginState-CxDiaKuk.js";
11
+ import { waitForTransactionReceiptSmartAware as ga } from "./tbv/core/utils/eth/index.js";
12
+ import { P as ma, b as Sa, c as Ca, d as Oa, a as fa, e as Ia } from "./PeginManager-C9RPOd0L.js";
13
+ import { P as ba, c as Va, f as ha, r as va, s as Na, v as Ma } from "./signPsbtsWithFallback-0VBALhjS.js";
14
+ import { MEMPOOL_API_URLS as ya, getAddressTxs as Da, getAddressUtxos as Ua, getMempoolApiUrl as Ba, getNetworkFees as Ha, getOutspend as La, getTipHeight as Ka, getTxHex as Xa, getTxInfo as ka, getUtxoInfo as Wa, pushTx as wa } from "./tbv/core/clients/mempool/index.js";
15
+ import { O as Ya, V as ja, a as za, b as Ja, c as Za, r as qa } from "./types-CPDLZm3l.js";
16
+ import { a as $a } from "./onChainBtcPubkey-C-6UWpD8.js";
17
+ import { C as ee, M as se, V as te, c as re, e as ie, d as oe, v as ne, a as Pe, b as pe } from "./pegin-registration-client-BdRiR8br.js";
18
+ import { ApplicationRegistryABI as ue, ProtocolParamsABI as Ee } from "./tbv/core/contracts/index.js";
19
+ import { B as le } from "./BTCVaultRegistry.abi-CJwWI2EO.js";
20
+ import { B as Re, C as _e, e as ge, g as Te, h as me, i as Se } from "./BTCVaultRegistryKeyEpochs.abi-D8cIbMtH.js";
21
+ import { V as Oe, b as fe, a as Ie, d as xe, f as be, p as Ve } from "./parseFundingOutpoints-B67CoXpF.js";
22
+ import { BitcoinNetworks as ve } from "./shared/index.js";
23
+ import { B as Me, a as Fe, c as ye, b as De, d as Ue, g as Be, h as He, f as Le, s as Ke, e as Xe } from "./psbtInputFields-B3e05Xe6.js";
24
+ import { B as We, D as we, L as Ge, M as Ye, c as je, P as ze, b as Je, a as Ze, S as qe, T as Qe, W as $e, f as as, d as es, p as ss, r as ts } from "./fundPeginTransaction-B2wyjqp0.js";
25
+ import { U as is, a as os, e as ns, f as Ps, v as ps } from "./reservation-Cj9F0rP9.js";
26
+ import { V as us, a as Es, b as ds, v as ls } from "./index-LgmJhdEN.js";
27
+ import { A as Rs, D as _s, J as gs, a as Ts, b as ms, d as Ss, P as Cs, R as Os, e as fs, c as Is, V as xs, i as bs } from "./json-rpc-client-DuUARJvV.js";
28
+ import { S as hs, V as vs, c as Ns, p as Ms, v as Fs, a as ys } from "./primeVpAuth-DvaD45q_.js";
29
+ import { D as Us, a as Bs, h as Hs, j as Ls, P as Ks, k as Xs, U as ks, V as Ws, c as ws, d as Gs, f as Ys, e as js, b as zs, i as Js, r as Zs, g as qs, t as Qs } from "./toRefundInputs-BkcFhvDp.js";
30
+ import { H as at, E as et, P as st, o as tt, c as rt, d as it, S as ot, T as nt, U as Pt, V as pt, K as ct, L as ut, M as Et, N as dt, O as lt, R as At, a as Rt, b as _t, y as gt, Q as Tt, I as mt, J as St, g as Ct, z as Ot, p as ft, i as It, e as xt, G as bt, F as Vt, t as ht, A as vt, B as Nt, C as Mt, D as Ft, r as yt, s as Dt, f as Ut, h as Bt, j as Ht, v as Lt, k as Kt, l as Xt, m as kt, n as Wt, q as wt, u as Gt, w as Yt, x as jt } from "./buildAndBroadcastReclaim-BXclIcu_.js";
31
+ import { C as Jt, P as Zt, c as qt, g as Qt, i as $t } from "./peginState-CxDiaKuk.js";
30
32
  export {
31
- rs as AUTH_REJECTED_RPC_CODE,
32
- Da as ApplicationRegistryABI,
33
- Zs as BIP68NotMatureError,
33
+ Rs as AUTH_REJECTED_RPC_CODE,
34
+ ue as ApplicationRegistryABI,
35
+ at as BIP68NotMatureError,
34
36
  ca as BITCOIN_ADDRESS_RE,
35
- Ha as BTCVaultRegistryABI,
36
- Ka as BTCVaultRegistryKeyEpochsABI,
37
- Ae as BTC_DUST_SAT,
38
- ee as BitcoinNetworks,
39
- te as BitcoinScriptType,
40
- ga as COMMISSION_BPS_HEADROOM,
37
+ le as BTCVaultRegistryABI,
38
+ Re as BTCVaultRegistryKeyEpochsABI,
39
+ We as BTC_DUST_SAT,
40
+ ve as BitcoinNetworks,
41
+ Me as BitcoinScriptType,
42
+ ee as COMMISSION_BPS_HEADROOM,
41
43
  ua as COMPRESSED_PUBKEY_HEX_LEN,
42
- ka as CONTRACT_ERRORS,
43
- qs as ClaimerPegoutStatusValue,
44
- Gt as ContractStatus,
45
- Ms as DEPOSIT_TERMS_REJECTED_ERROR_NAME,
46
- Re as DUST_THRESHOLD,
47
- is as DaemonStatus,
48
- Fs as DepositTermsRejectedError,
44
+ _e as CONTRACT_ERRORS,
45
+ et as ClaimerPegoutStatusValue,
46
+ Jt as ContractStatus,
47
+ Us as DEPOSIT_TERMS_REJECTED_ERROR_NAME,
48
+ we as DUST_THRESHOLD,
49
+ _s as DaemonStatus,
50
+ Bs as DepositTermsRejectedError,
49
51
  Ea as HEX_RE,
50
- os as JSON_RPC_ERROR_CODES,
51
- ns as JsonRpcClient,
52
- Ps as JsonRpcError,
52
+ gs as JSON_RPC_ERROR_CODES,
53
+ Ts as JsonRpcClient,
54
+ ms as JsonRpcError,
53
55
  da as KNOWN_SCRIPT_PREFIXES,
54
- _e as LOW_RATE_ESTIMATION_ACCURACY_BUFFER,
55
- Ta as MAX_ACCEPTABLE_COMMISSION_BPS_CAP,
56
- ge as MAX_NON_LEGACY_OUTPUT_SIZE,
56
+ Ge as LOW_RATE_ESTIMATION_ACCURACY_BUFFER,
57
+ se as MAX_ACCEPTABLE_COMMISSION_BPS_CAP,
58
+ Ye as MAX_NON_LEGACY_OUTPUT_SIZE,
57
59
  la as MAX_REASONABLE_FEE_SATS,
58
- Te as MAX_REASONABLE_PEGIN_VBYTES,
59
- Be as MEMPOOL_API_URLS,
60
- _s as OnChainBtcVaultStatus,
61
- Se as P2TR_INPUT_SIZE,
62
- me as PEGIN_AUTH_ANCHOR_OUTPUTS,
60
+ je as MAX_REASONABLE_PEGIN_VBYTES,
61
+ ya as MEMPOOL_API_URLS,
62
+ Ya as OnChainBtcVaultStatus,
63
+ ze as P2TR_INPUT_SIZE,
64
+ Je as PEGIN_AUTH_ANCHOR_OUTPUTS,
63
65
  s as PEGIN_DEPOSITOR_CLAIM_VOUT,
64
- Qs as PEGIN_ETH_CONFIRMATIONS,
65
- Ce as PEGIN_FIXED_OUTPUTS,
66
- ps as POST_WOTS_STATUSES,
67
- cs as PRE_DEPOSITOR_SIGNATURES_STATES,
68
- $s as ParticipantKeyDriftError,
69
- ha as PayoutManager,
70
- jt as PeginAction,
71
- Sa as PeginManager,
72
- ys as PeginParamsAmbiguousError,
73
- Ds as PeginParamsIncompleteSpaceError,
74
- Us as PeginParamsNotFoundError,
75
- at as PeginRegistrationMissingError,
76
- et as PeginRegistrationNotFinalError,
77
- Bs as PeginSizingIntegrityError,
78
- Ua as ProtocolParamsABI,
66
+ st as PEGIN_ETH_CONFIRMATIONS,
67
+ Ze as PEGIN_FIXED_OUTPUTS,
68
+ Ss as POST_WOTS_STATUSES,
69
+ Cs as PRE_DEPOSITOR_SIGNATURES_STATES,
70
+ tt as ParticipantKeyDriftError,
71
+ ba as PayoutManager,
72
+ Zt as PeginAction,
73
+ ma as PeginManager,
74
+ Hs as PeginParamsAmbiguousError,
75
+ Ls as PeginParamsIncompleteSpaceError,
76
+ Ks as PeginParamsNotFoundError,
77
+ rt as PeginRegistrationMissingError,
78
+ it as PeginRegistrationNotFinalError,
79
+ Xs as PeginSizingIntegrityError,
80
+ Ee as ProtocolParamsABI,
79
81
  t as PsbtSubstitutionError,
80
- st as RECLAIM_MAX_FEE_FRACTION_DENOMINATOR,
81
- tt as RECLAIM_MAX_FEE_FRACTION_NUMERATOR,
82
- rt as RECLAIM_MAX_FEE_RATE_SATS_VB,
83
- it as RECLAIM_WARN_FEE_FRACTION_NUMERATOR,
84
- ot as REFUND_MAX_FEE_FRACTION_DENOMINATOR,
85
- nt as REFUND_MAX_FEE_FRACTION_NUMERATOR,
86
- Pt as REFUND_MAX_FEE_RATE_SATS_VB,
87
- pt as REFUND_VSIZE,
88
- ct as ReclaimUneconomicalError,
89
- ut as RegisteredVaultVersionMismatchError,
90
- us as RpcErrorCode,
91
- Oe as SPLIT_TX_FEE_SAFETY_MULTIPLIER,
92
- gs as ServerIdentityError,
82
+ ot as RECLAIM_MAX_FEE_FRACTION_DENOMINATOR,
83
+ nt as RECLAIM_MAX_FEE_FRACTION_NUMERATOR,
84
+ Pt as RECLAIM_MAX_FEE_RATE_SATS_VB,
85
+ pt as RECLAIM_WARN_FEE_FRACTION_NUMERATOR,
86
+ ct as REFUND_MAX_FEE_FRACTION_DENOMINATOR,
87
+ ut as REFUND_MAX_FEE_FRACTION_NUMERATOR,
88
+ Et as REFUND_MAX_FEE_RATE_SATS_VB,
89
+ dt as REFUND_VSIZE,
90
+ lt as ReclaimUneconomicalError,
91
+ At as RegisteredVaultVersionMismatchError,
92
+ Os as RpcErrorCode,
93
+ qe as SPLIT_TX_FEE_SAFETY_MULTIPLIER,
94
+ hs as ServerIdentityError,
93
95
  Aa as TXID_RE,
94
- fe as TX_BUFFER_SIZE_OVERHEAD,
95
- Hs as UnanchoredPrePeginError,
96
- Ne as UtxoNotAvailableError,
97
- za as VAULT_APP_NAME,
98
- Es as VP_BATCH_MAX_SIZE,
99
- ds as VP_TERMINAL_FAILURE_STATUSES,
100
- ls as VP_TRANSIENT_STATUSES,
101
- $e as VaultProviderRpcClient,
102
- Ls as VaultRootMismatchError,
103
- Ts as ViemOperationKeyReader,
104
- Ss as ViemProtocolParamsReader,
105
- ms as ViemUniversalChallengerReader,
106
- Cs as ViemVaultKeeperReader,
107
- He as ViemVaultRegistryReader,
108
- as as VpResponseValidationError,
109
- Os as VpTokenRegistry,
110
- Ie as WALLET_RELAY_FEE_RATE_THRESHOLD,
96
+ Qe as TX_BUFFER_SIZE_OVERHEAD,
97
+ ks as UnanchoredPrePeginError,
98
+ is as UtxoNotAvailableError,
99
+ Oe as VAULT_APP_NAME,
100
+ fs as VP_BATCH_MAX_SIZE,
101
+ Is as VP_TERMINAL_FAILURE_STATUSES,
102
+ xs as VP_TRANSIENT_STATUSES,
103
+ us as VaultProviderRpcClient,
104
+ Ws as VaultRootMismatchError,
105
+ ja as ViemOperationKeyReader,
106
+ te as ViemPeginRegistrationClient,
107
+ za as ViemProtocolParamsReader,
108
+ Ja as ViemUniversalChallengerReader,
109
+ Za as ViemVaultKeeperReader,
110
+ re as ViemVaultRegistryReader,
111
+ Es as VpResponseValidationError,
112
+ vs as VpTokenRegistry,
113
+ $e as WALLET_RELAY_FEE_RATE_THRESHOLD,
111
114
  Ra as X_ONLY_PUBKEY_HEX_LEN,
112
- Et as activateVault,
113
- dt as activateVaultAndRedeem,
114
- re as applyChangeOutputPolicy,
115
+ Rt as activateVault,
116
+ _t as activateVaultAndRedeem,
117
+ Fe as applyChangeOutputPolicy,
115
118
  b as assertKeyPathSchnorrSignature,
116
- vs as assertOnChainBtcPubkey,
119
+ $a as assertOnChainBtcPubkey,
117
120
  r as assertPsbtUnsignedTxMatches,
118
- h as assertReturnedKeyPathSignatures,
121
+ V as assertReturnedKeyPathSignatures,
119
122
  i as assertScriptPathSchnorrSignature,
120
- Me as assertUtxosAvailable,
123
+ os as assertUtxosAvailable,
121
124
  A as assertValidVaultCoreVersion,
122
- lt as assertVaultProviderHintAccepted,
123
- es as batchPollByProvider,
124
- At as buildAndBroadcastReclaim,
125
- Rt as buildAndBroadcastRefund,
125
+ gt as assertVaultProviderHintAccepted,
126
+ ds as batchPollByProvider,
127
+ Tt as buildAndBroadcastReclaim,
128
+ mt as buildAndBroadcastRefund,
126
129
  K as buildChallengeAssertPsbt,
127
- ma as buildDepositTerms,
128
- Ja as buildFundingOutpointsCommitment,
130
+ Sa as buildDepositTerms,
131
+ fe as buildFundingOutpointsCommitment,
129
132
  F as buildNoPayoutPsbt,
130
133
  o as buildPayoutPsbt,
131
- V as buildPeginInputPsbt,
132
- Ks as buildPeginParamsCandidates,
134
+ h as buildPeginInputPsbt,
135
+ ws as buildPeginParamsCandidates,
133
136
  n as buildPeginTxFromFundedPrePegin,
134
137
  P as buildPrePeginPsbt,
135
138
  y as buildReclaimPsbt,
136
139
  D as buildRefundPsbt,
137
- Za as buildVaultContext,
140
+ Ie as buildVaultContext,
138
141
  na as calculateBtcTxHash,
139
- Yt as canPerformAction,
142
+ qt as canPerformAction,
140
143
  k as canonicalizeBtcPubkey,
141
- Ca as capMaxAcceptableCommissionBps,
144
+ ie as capMaxAcceptableCommissionBps,
142
145
  ia as combineAbortSignals,
143
- ie as computeChangeOutputFeeSats,
146
+ ye as computeChangeOutputFeeSats,
144
147
  Va as computeHashlock,
145
- oe as computeMaxDeposit,
148
+ De as computeMaxDeposit,
146
149
  _ as computeMinClaimValue,
147
150
  g as computeMinPeginFee,
148
151
  p as computeNumLocalChallengers,
149
- ne as computePeginBaseFeeSats,
150
- Oa as computeWotsBlockPublicKeysHash,
151
- fs as createAuthenticatedVpClient,
152
+ Ue as computePeginBaseFeeSats,
153
+ Ca as computeWotsBlockPublicKeysHash,
154
+ Ns as createAuthenticatedVpClient,
152
155
  c as createPayoutScript,
153
156
  Pa as createTaprootScriptPathSignOptions,
154
- w as deriveBip86ScriptPubKeyHex,
157
+ W as deriveBip86ScriptPubKeyHex,
155
158
  u as deriveDepositorClaimDescriptor,
156
159
  E as deriveDepositorClaimScriptPubKey,
157
- Xs as deriveHashlocksFromPrePegin,
158
- W as deriveNativeSegwitAddress,
160
+ Gs as deriveHashlocksFromPrePegin,
161
+ w as deriveNativeSegwitAddress,
162
+ oe as derivePeginVaultId,
159
163
  G as deriveTaprootAddress,
160
164
  T as deriveVaultId,
161
- qa as deriveVaultRoot,
162
- fa as deriveWotsBlocksFromSeed,
163
- ks as describePeginParamsCandidate,
164
- ws as describeUnresolvedVersion,
165
- j as ensureHexPrefix,
166
- Ia as ensurePrePeginTermsApproval,
165
+ xe as deriveVaultRoot,
166
+ Oa as deriveWotsBlocksFromSeed,
167
+ Ys as describePeginParamsCandidate,
168
+ js as describeUnresolvedVersion,
169
+ Y as ensureHexPrefix,
170
+ fa as ensurePrePeginTermsApproval,
167
171
  U as estimateReclaimFeeSats,
168
- _t as estimateRefundFeeSats,
169
- xa as estimateSubmitPeginRequestBatchGas,
170
- S as expandAuthAnchor,
171
- m as expandHashlockSecret,
172
+ St as estimateRefundFeeSats,
173
+ Ia as estimateSubmitPeginRequestBatchGas,
174
+ m as expandAuthAnchor,
175
+ S as expandHashlockSecret,
172
176
  C as expandWotsSeed,
173
- wa as extractErrorData,
174
- Fe as extractInputsFromTransaction,
177
+ ge as extractErrorData,
178
+ ns as extractInputsFromTransaction,
175
179
  d as extractPayoutSignature,
176
180
  v as extractPeginInputSignature,
177
181
  N as finalizePeginInputPsbt,
178
182
  B as finalizeScriptPathWithSignatures,
179
- ye as findOverlappingPendingVaults,
180
- Y as formatSatoshisToBtc,
181
- va as forwardDepositApproval,
182
- Qa as forwardDeriveContextHash,
183
- xe as fundPeginTransaction,
184
- Le as getAddressTxs,
185
- Ke as getAddressUtxos,
186
- Wa as getContractErrorMessage,
187
- Pe as getDustThreshold,
188
- Xe as getMempoolApiUrl,
183
+ Ps as findOverlappingPendingVaults,
184
+ j as formatSatoshisToBtc,
185
+ ha as forwardDepositApproval,
186
+ be as forwardDeriveContextHash,
187
+ as as fundPeginTransaction,
188
+ Da as getAddressTxs,
189
+ Ua as getAddressUtxos,
190
+ Te as getContractErrorMessage,
191
+ Be as getDustThreshold,
192
+ Ba as getMempoolApiUrl,
189
193
  z as getNetwork,
190
- ke as getNetworkFees,
191
- we as getOutspend,
192
- zt as getPeginProtocolState,
193
- pe as getPsbtInputFields,
194
- ce as getScriptType,
194
+ Ha as getNetworkFees,
195
+ La as getOutspend,
196
+ Qt as getPeginProtocolState,
197
+ He as getPsbtInputFields,
198
+ Le as getScriptType,
195
199
  J as getSortedXOnlyPubkeys,
196
- We as getTipHeight,
197
- Ge as getTxHex,
198
- je as getTxInfo,
199
- Ye as getUtxoInfo,
200
- Ga as handleContractError,
200
+ Ka as getTipHeight,
201
+ Xa as getTxHex,
202
+ ka as getTxInfo,
203
+ Wa as getUtxoInfo,
204
+ me as handleContractError,
201
205
  Z as hexToUint8Array,
202
- Jt as isActivationDeadlinePassedOnChain,
206
+ $t as isActivationDeadlinePassedOnChain,
203
207
  q as isAddressFromPublicKey,
204
- As as isAuthRejectedError,
205
- gt as isDepositAmountValid,
206
- Ws as isDepositTermsRejectedError,
207
- Tt as isHintAccepted,
208
- ja as isKnownContractError,
209
- St as isParticipantKeyDriftError,
210
- mt as isPeginRegistrationMissingError,
211
- Ct as isPeginRegistrationNotFinalError,
212
- Ot as isPegoutTerminalStatus,
213
- ft as isRecognizedPegoutStatus,
214
- It as isRegisteredVaultVersionMismatchError,
208
+ bs as isAuthRejectedError,
209
+ Ct as isDepositAmountValid,
210
+ zs as isDepositTermsRejectedError,
211
+ Ot as isHintAccepted,
212
+ Se as isKnownContractError,
213
+ ft as isParticipantKeyDriftError,
214
+ It as isPeginRegistrationMissingError,
215
+ xt as isPeginRegistrationNotFinalError,
216
+ bt as isPegoutTerminalStatus,
217
+ Vt as isRecognizedPegoutStatus,
218
+ ht as isRegisteredVaultVersionMismatchError,
215
219
  Q as isValidHex,
216
- Gs as isWotsMismatchError,
217
- xt as matchKeyHint,
218
- bt as matchKeySetHint,
219
- $a as parseFundingOutpointsFromTx,
220
- be as parseUnfundedWasmTransaction,
221
- he as peginOutputCount,
220
+ Js as isWotsMismatchError,
221
+ vt as matchKeyHint,
222
+ Nt as matchKeySetHint,
223
+ Ve as parseFundingOutpointsFromTx,
224
+ es as parseUnfundedWasmTransaction,
225
+ ss as peginOutputCount,
222
226
  O as peginP2aAnchorOutput,
223
- Is as primeVpTokenRegistry,
227
+ Ms as primeVpTokenRegistry,
224
228
  $ as processPublicKeyToXOnly,
225
- ze as pushTx,
226
- Ve as rateBasedTxBufferFee,
227
- js as rebuildDepositTermsCore,
229
+ wa as pushTx,
230
+ ts as rateBasedTxBufferFee,
231
+ Zs as rebuildDepositTermsCore,
228
232
  H as reclaimVsize,
229
- Ys as reconstructPeginParams,
230
- Na as requireChangeAddress,
231
- ht as resolveCurrentParticipantKeys,
232
- Vt as resolveParticipantKeysAtEpochs,
233
- xs as resolveProtocolAddresses,
234
- vt as runDepositorPresignFlow,
235
- ue as selectUtxosForPegin,
236
- Ee as shouldAddChangeOutput,
237
- Nt as signDepositorGraph,
233
+ qs as reconstructPeginParams,
234
+ va as requireChangeAddress,
235
+ Mt as resolveCurrentParticipantKeys,
236
+ Ft as resolveParticipantKeysAtEpochs,
237
+ qa as resolveProtocolAddresses,
238
+ yt as runDepositorPresignFlow,
239
+ Ke as selectUtxosForPegin,
240
+ Xe as shouldAddChangeOutput,
241
+ Dt as signDepositorGraph,
238
242
  aa as stripHexPrefix,
239
- Mt as submitWotsPublicKey,
243
+ Ut as submitWotsPublicKey,
240
244
  f as supportedTxGraphVersions,
241
- Ma as supportsDepositApproval,
242
- zs as toRefundInputs,
245
+ Na as supportsDepositApproval,
246
+ Qs as toRefundInputs,
243
247
  ea as toXOnly,
244
248
  sa as uint8ArrayToHex,
245
- Ft as validateDepositAmount,
246
- yt as validateMultiVaultDepositInputs,
247
- Je as validateOffchainParams,
248
- Dt as validateOnChainParticipantKeys,
249
- Ze as validatePegInConfiguration,
249
+ Bt as validateDepositAmount,
250
+ Ht as validateMultiVaultDepositInputs,
251
+ ne as validateOffchainParams,
252
+ Lt as validateOnChainParticipantKeys,
253
+ Pe as validatePegInConfiguration,
250
254
  I as validatePeginP2aAnchor,
251
- Ut as validateProviderSelection,
252
- Bt as validateRemainingCapacity,
253
- ss as validateRequestDepositorClaimerArtifactsResponse,
254
- Fa as validateSecretAgainstHashlock,
255
- qe as validateTBVProtocolParams,
256
- De as validateUtxosAvailable,
257
- Ht as validateVaultAmounts,
258
- Lt as validateVaultProviderPubkey,
255
+ Kt as validateProviderSelection,
256
+ Xt as validateRemainingCapacity,
257
+ ls as validateRequestDepositorClaimerArtifactsResponse,
258
+ Ma as validateSecretAgainstHashlock,
259
+ pe as validateTBVProtocolParams,
260
+ ps as validateUtxosAvailable,
261
+ kt as validateVaultAmounts,
262
+ Wt as validateVaultProviderPubkey,
259
263
  ta as validateWalletPubkey,
260
- Kt as verifyRegisteredParticipantKeys,
261
- Xt as verifyRegisteredVaultVersions,
262
- bs as verifyServerIdentity,
263
- hs as vpTokenRegistry,
264
- kt as waitForPeginRegistrationDepth,
265
- wt as waitForPeginStatus,
266
- de as waitForTransactionReceiptSmartAware
264
+ wt as verifyRegisteredParticipantKeys,
265
+ Gt as verifyRegisteredVaultVersions,
266
+ Fs as verifyServerIdentity,
267
+ ys as vpTokenRegistry,
268
+ Yt as waitForPeginRegistrationDepth,
269
+ jt as waitForPeginStatus,
270
+ ga as waitForTransactionReceiptSmartAware
267
271
  };
268
272
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";const r=0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn,s=7n;function i(c,f,e){let n=1n,t=c%e,o=f;for(;o>0n;)(o&1n)===1n&&(n=n*t%e),t=t*t%e,o>>=1n;return n}function u(c){const f=BigInt(`0x${c}`);if(f>=r)return!1;const n=(f*f%r*f%r+s)%r,t=i(n,r+1n>>2n,r);return t*t%r===n}function a(c,f){const e=c.toLowerCase();if(!/^0x[0-9a-f]{64}$/.test(e))throw new Error(`${f} returned an unexpected value (length ${e.length}, prefix "${e.slice(0,2)}")`);const n=e.slice(2);if(!u(n))throw new Error(`${f} returned a value that is not on the secp256k1 curve`);return n}exports.assertOnChainBtcPubkey=a;
2
+ //# sourceMappingURL=onChainBtcPubkey-BbxRrbvg.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onChainBtcPubkey-BbxRrbvg.cjs","sources":["../src/tbv/core/clients/eth/onChainBtcPubkey.ts"],"sourcesContent":["/**\n * The single validator that mints {@link OnChainBtcPubkey}.\n *\n * Extracted from `ViemVaultRegistryReader.getVaultProviderGenesisBtcPubKey` so that\n * RFC-006 operation-key resolution can produce branded keys through exactly\n * the same checks, rather than casting past the brand. Every producer of an\n * `OnChainBtcPubkey` must go through here.\n */\n\nimport type { Hex } from \"viem\";\n\nimport type { OnChainBtcPubkey } from \"./types\";\n\n/** secp256k1's base-field prime, `2^256 - 2^32 - 977`. */\nconst SECP256K1_FIELD_PRIME =\n 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn;\n\n/** secp256k1's curve coefficient `b`, from `y^2 = x^3 + b`. */\nconst SECP256K1_CURVE_B = 7n;\n\n/** Modular exponentiation without a crypto-library dependency. */\nfunction modPow(base: bigint, exponent: bigint, modulus: bigint): bigint {\n let result = 1n;\n let factor = base % modulus;\n let remaining = exponent;\n\n while (remaining > 0n) {\n if ((remaining & 1n) === 1n) {\n result = (result * factor) % modulus;\n }\n factor = (factor * factor) % modulus;\n remaining >>= 1n;\n }\n\n return result;\n}\n\n/**\n * secp256k1's field prime is congruent to 3 mod 4, so an x-coordinate is on\n * the curve iff `(x^3 + 7)^((p + 1) / 4)` squares back to `x^3 + 7` modulo\n * p. This is the same curve-membership condition used by x-only key parsers;\n * it deliberately does not merely validate length/range.\n * `x^3 + 7` cannot be zero because `-7` is not a cubic residue in this field,\n * so the zero square-root edge case is unreachable.\n */\nfunction isSecp256k1XCoordinate(value: string): boolean {\n const x = BigInt(`0x${value}`);\n if (x >= SECP256K1_FIELD_PRIME) return false;\n\n const xCubed =\n (((x * x) % SECP256K1_FIELD_PRIME) * x) % SECP256K1_FIELD_PRIME;\n const curveValue = (xCubed + SECP256K1_CURVE_B) % SECP256K1_FIELD_PRIME;\n const y = modPow(\n curveValue,\n (SECP256K1_FIELD_PRIME + 1n) >> 2n,\n SECP256K1_FIELD_PRIME,\n );\n\n return (y * y) % SECP256K1_FIELD_PRIME === curveValue;\n}\n\n/**\n * Validate a registry-returned `bytes32` as an x-only BTC pubkey and mint the\n * brand. Checks length, hex form, and secp256k1 curve membership. Returns\n * 64-char lowercase hex without the `0x` prefix.\n *\n * `label` identifies the read site in error messages (e.g.\n * `getOperationBtcKeyAtEpoch (vp=0x…, epoch=0)`), so a failure names which\n * participant and which getter produced it.\n *\n * A zero hash fails the curve check, so an unregistered operator or an epoch\n * with no bonded key surfaces as an error rather than a silent all-zero key.\n */\nexport function assertOnChainBtcPubkey(\n value: Hex,\n label: string,\n): OnChainBtcPubkey {\n const lowered = value.toLowerCase();\n if (!/^0x[0-9a-f]{64}$/.test(lowered)) {\n throw new Error(\n `${label} returned an unexpected value (length ${lowered.length}, prefix \"${lowered.slice(0, 2)}\")`,\n );\n }\n const stripped = lowered.slice(2);\n if (!isSecp256k1XCoordinate(stripped)) {\n throw new Error(\n `${label} returned a value that is not on the secp256k1 curve`,\n );\n }\n return stripped as OnChainBtcPubkey;\n}\n"],"names":["SECP256K1_FIELD_PRIME","SECP256K1_CURVE_B","modPow","base","exponent","modulus","result","factor","remaining","isSecp256k1XCoordinate","value","x","curveValue","y","assertOnChainBtcPubkey","label","lowered","stripped"],"mappings":"aAcA,MAAMA,EACJ,oEAGIC,EAAoB,GAG1B,SAASC,EAAOC,EAAcC,EAAkBC,EAAyB,CACvE,IAAIC,EAAS,GACTC,EAASJ,EAAOE,EAChBG,EAAYJ,EAEhB,KAAOI,EAAY,KACZA,EAAY,MAAQ,KACvBF,EAAUA,EAASC,EAAUF,GAE/BE,EAAUA,EAASA,EAAUF,EAC7BG,IAAc,GAGhB,OAAOF,CACT,CAUA,SAASG,EAAuBC,EAAwB,CACtD,MAAMC,EAAI,OAAO,KAAKD,CAAK,EAAE,EAC7B,GAAIC,GAAKX,EAAuB,MAAO,GAIvC,MAAMY,GADDD,EAAIA,EAAKX,EAAyBW,EAAKX,EACfC,GAAqBD,EAC5Ca,EAAIX,EACRU,EACCZ,EAAwB,IAAO,GAChCA,CAAA,EAGF,OAAQa,EAAIA,EAAKb,IAA0BY,CAC7C,CAcO,SAASE,EACdJ,EACAK,EACkB,CAClB,MAAMC,EAAUN,EAAM,YAAA,EACtB,GAAI,CAAC,mBAAmB,KAAKM,CAAO,EAClC,MAAM,IAAI,MACR,GAAGD,CAAK,yCAAyCC,EAAQ,MAAM,aAAaA,EAAQ,MAAM,EAAG,CAAC,CAAC,IAAA,EAGnG,MAAMC,EAAWD,EAAQ,MAAM,CAAC,EAChC,GAAI,CAACP,EAAuBQ,CAAQ,EAClC,MAAM,IAAI,MACR,GAAGF,CAAK,sDAAA,EAGZ,OAAOE,CACT"}
@@ -0,0 +1,34 @@
1
+ const r = 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn, i = 7n;
2
+ function s(o, f, e) {
3
+ let n = 1n, t = o % e, c = f;
4
+ for (; c > 0n; )
5
+ (c & 1n) === 1n && (n = n * t % e), t = t * t % e, c >>= 1n;
6
+ return n;
7
+ }
8
+ function a(o) {
9
+ const f = BigInt(`0x${o}`);
10
+ if (f >= r) return !1;
11
+ const n = (f * f % r * f % r + i) % r, t = s(
12
+ n,
13
+ r + 1n >> 2n,
14
+ r
15
+ );
16
+ return t * t % r === n;
17
+ }
18
+ function u(o, f) {
19
+ const e = o.toLowerCase();
20
+ if (!/^0x[0-9a-f]{64}$/.test(e))
21
+ throw new Error(
22
+ `${f} returned an unexpected value (length ${e.length}, prefix "${e.slice(0, 2)}")`
23
+ );
24
+ const n = e.slice(2);
25
+ if (!a(n))
26
+ throw new Error(
27
+ `${f} returned a value that is not on the secp256k1 curve`
28
+ );
29
+ return n;
30
+ }
31
+ export {
32
+ u as a
33
+ };
34
+ //# sourceMappingURL=onChainBtcPubkey-C-6UWpD8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onChainBtcPubkey-C-6UWpD8.js","sources":["../src/tbv/core/clients/eth/onChainBtcPubkey.ts"],"sourcesContent":["/**\n * The single validator that mints {@link OnChainBtcPubkey}.\n *\n * Extracted from `ViemVaultRegistryReader.getVaultProviderGenesisBtcPubKey` so that\n * RFC-006 operation-key resolution can produce branded keys through exactly\n * the same checks, rather than casting past the brand. Every producer of an\n * `OnChainBtcPubkey` must go through here.\n */\n\nimport type { Hex } from \"viem\";\n\nimport type { OnChainBtcPubkey } from \"./types\";\n\n/** secp256k1's base-field prime, `2^256 - 2^32 - 977`. */\nconst SECP256K1_FIELD_PRIME =\n 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2fn;\n\n/** secp256k1's curve coefficient `b`, from `y^2 = x^3 + b`. */\nconst SECP256K1_CURVE_B = 7n;\n\n/** Modular exponentiation without a crypto-library dependency. */\nfunction modPow(base: bigint, exponent: bigint, modulus: bigint): bigint {\n let result = 1n;\n let factor = base % modulus;\n let remaining = exponent;\n\n while (remaining > 0n) {\n if ((remaining & 1n) === 1n) {\n result = (result * factor) % modulus;\n }\n factor = (factor * factor) % modulus;\n remaining >>= 1n;\n }\n\n return result;\n}\n\n/**\n * secp256k1's field prime is congruent to 3 mod 4, so an x-coordinate is on\n * the curve iff `(x^3 + 7)^((p + 1) / 4)` squares back to `x^3 + 7` modulo\n * p. This is the same curve-membership condition used by x-only key parsers;\n * it deliberately does not merely validate length/range.\n * `x^3 + 7` cannot be zero because `-7` is not a cubic residue in this field,\n * so the zero square-root edge case is unreachable.\n */\nfunction isSecp256k1XCoordinate(value: string): boolean {\n const x = BigInt(`0x${value}`);\n if (x >= SECP256K1_FIELD_PRIME) return false;\n\n const xCubed =\n (((x * x) % SECP256K1_FIELD_PRIME) * x) % SECP256K1_FIELD_PRIME;\n const curveValue = (xCubed + SECP256K1_CURVE_B) % SECP256K1_FIELD_PRIME;\n const y = modPow(\n curveValue,\n (SECP256K1_FIELD_PRIME + 1n) >> 2n,\n SECP256K1_FIELD_PRIME,\n );\n\n return (y * y) % SECP256K1_FIELD_PRIME === curveValue;\n}\n\n/**\n * Validate a registry-returned `bytes32` as an x-only BTC pubkey and mint the\n * brand. Checks length, hex form, and secp256k1 curve membership. Returns\n * 64-char lowercase hex without the `0x` prefix.\n *\n * `label` identifies the read site in error messages (e.g.\n * `getOperationBtcKeyAtEpoch (vp=0x…, epoch=0)`), so a failure names which\n * participant and which getter produced it.\n *\n * A zero hash fails the curve check, so an unregistered operator or an epoch\n * with no bonded key surfaces as an error rather than a silent all-zero key.\n */\nexport function assertOnChainBtcPubkey(\n value: Hex,\n label: string,\n): OnChainBtcPubkey {\n const lowered = value.toLowerCase();\n if (!/^0x[0-9a-f]{64}$/.test(lowered)) {\n throw new Error(\n `${label} returned an unexpected value (length ${lowered.length}, prefix \"${lowered.slice(0, 2)}\")`,\n );\n }\n const stripped = lowered.slice(2);\n if (!isSecp256k1XCoordinate(stripped)) {\n throw new Error(\n `${label} returned a value that is not on the secp256k1 curve`,\n );\n }\n return stripped as OnChainBtcPubkey;\n}\n"],"names":["SECP256K1_FIELD_PRIME","SECP256K1_CURVE_B","modPow","base","exponent","modulus","result","factor","remaining","isSecp256k1XCoordinate","value","x","curveValue","y","assertOnChainBtcPubkey","label","lowered","stripped"],"mappings":"AAcA,MAAMA,IACJ,qEAGIC,IAAoB;AAG1B,SAASC,EAAOC,GAAcC,GAAkBC,GAAyB;AACvE,MAAIC,IAAS,IACTC,IAASJ,IAAOE,GAChBG,IAAYJ;AAEhB,SAAOI,IAAY;AACjB,KAAKA,IAAY,QAAQ,OACvBF,IAAUA,IAASC,IAAUF,IAE/BE,IAAUA,IAASA,IAAUF,GAC7BG,MAAc;AAGhB,SAAOF;AACT;AAUA,SAASG,EAAuBC,GAAwB;AACtD,QAAMC,IAAI,OAAO,KAAKD,CAAK,EAAE;AAC7B,MAAIC,KAAKX,EAAuB,QAAO;AAIvC,QAAMY,KADDD,IAAIA,IAAKX,IAAyBW,IAAKX,IACfC,KAAqBD,GAC5Ca,IAAIX;AAAA,IACRU;AAAA,IACCZ,IAAwB,MAAO;AAAA,IAChCA;AAAA,EAAA;AAGF,SAAQa,IAAIA,IAAKb,MAA0BY;AAC7C;AAcO,SAASE,EACdJ,GACAK,GACkB;AAClB,QAAMC,IAAUN,EAAM,YAAA;AACtB,MAAI,CAAC,mBAAmB,KAAKM,CAAO;AAClC,UAAM,IAAI;AAAA,MACR,GAAGD,CAAK,yCAAyCC,EAAQ,MAAM,aAAaA,EAAQ,MAAM,GAAG,CAAC,CAAC;AAAA,IAAA;AAGnG,QAAMC,IAAWD,EAAQ,MAAM,CAAC;AAChC,MAAI,CAACP,EAAuBQ,CAAQ;AAClC,UAAM,IAAI;AAAA,MACR,GAAGF,CAAK;AAAA,IAAA;AAGZ,SAAOE;AACT;"}