@chainvue/verus-sdk 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -38,7 +38,8 @@ const { signedTx, txid, fee } = sdk.transfer({
38
38
  - **Marketplace offers** — build and complete fully on-chain atomic swaps:
39
39
  currency↔currency (`buildOfferFunding` → `buildOffer` → `completeOffer`), and
40
40
  VerusID sell / buy / swap (`build*IdentityOffer` / `complete*IdentityOffer`).
41
- Native coin, tokens, and identities, in every combination.
41
+ Native coin, tokens, and identities, in every combination — plus
42
+ `buildReclaimOffer` to cancel an unaccepted offer and reclaim the funds.
42
43
  - **Helpers** — `VerusSDK.generateWif()`, `deriveAddress(wif)`,
43
44
  `deriveIdentityAddress(name, parent?)`, `validateAddress`, `validateWif`;
44
45
  `utils.summarizeSignedTransaction(hex)` decodes a signed tx (txid, spent
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { Network } from './constants/index.js';
8
8
  import type { VerusSDKConfig, TransferParams, TransferTokenParams, ConvertParams, SendCurrencyParams, SendCurrencyResult, BuildAndSignParams, SignedTxResult, CreateCommitmentParams, CreateCommitmentResult, RegisterIdentityParams, RegisterIdentityResult, UpdateIdentityParams, UpdateIdentityResult, LockIdentityParams, UnlockIdentityParams, RevokeIdentityParams, RecoverIdentityParams, DefineCurrencyParams, DefineCurrencyResult, SignMessageParams, SignMessageResult, VerifyMessageParams, VerifyMessageResult } from './types/index.js';
9
- import type { BuildOfferFundingParams, BuildOfferFundingResult, BuildOfferParams, BuildOfferResult, CompleteOfferParams, CompleteOfferResult, BuildSellIdentityOfferParams, CompleteSellIdentityOfferParams, CompleteSellIdentityOfferResult, BuildBuyIdentityOfferParams, CompleteBuyIdentityOfferParams, CompleteBuyIdentityOfferResult, BuildSwapIdentityOfferParams, CompleteSwapIdentityOfferParams, CompleteSwapIdentityOfferResult } from './offers/public.js';
9
+ import type { BuildOfferFundingParams, BuildOfferFundingResult, BuildOfferParams, BuildOfferResult, CompleteOfferParams, CompleteOfferResult, ReclaimOfferParams, ReclaimOfferResult, BuildSellIdentityOfferParams, CompleteSellIdentityOfferParams, CompleteSellIdentityOfferResult, BuildBuyIdentityOfferParams, CompleteBuyIdentityOfferParams, CompleteBuyIdentityOfferResult, BuildSwapIdentityOfferParams, CompleteSwapIdentityOfferParams, CompleteSwapIdentityOfferResult } from './offers/public.js';
10
10
  export declare class VerusSDK {
11
11
  readonly network: Network;
12
12
  constructor(config: VerusSDKConfig);
@@ -58,6 +58,12 @@ export declare class VerusSDK {
58
58
  * receive the offered asset, and sign the taker's side into an atomic swap.
59
59
  */
60
60
  completeOffer(params: CompleteOfferParams): CompleteOfferResult;
61
+ /**
62
+ * Maker: cancel an unaccepted offer — spend the funding commitment back to the
63
+ * maker (SIGHASH_ALL). Native: the fee comes out of the reclaimed value; token:
64
+ * pass native `feeUtxos` controlled by the same key.
65
+ */
66
+ buildReclaimOffer(params: ReclaimOfferParams): ReclaimOfferResult;
61
67
  /** Maker: offer a VerusID for a currency (spends the identity's on-chain output). */
62
68
  buildSellIdentityOffer(params: BuildSellIdentityOfferParams): BuildOfferResult;
63
69
  /** Taker: complete a sell-identity offer — pay the currency, receive the identity. */
@@ -1 +1 @@
1
- {"version":3,"file":"VerusSDK.d.ts","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VerusSDK.d.ts","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
package/dist/VerusSDK.js CHANGED
@@ -171,6 +171,14 @@ class VerusSDK {
171
171
  completeOffer(params) {
172
172
  return offersModule.completeOffer(params, this.network);
173
173
  }
174
+ /**
175
+ * Maker: cancel an unaccepted offer — spend the funding commitment back to the
176
+ * maker (SIGHASH_ALL). Native: the fee comes out of the reclaimed value; token:
177
+ * pass native `feeUtxos` controlled by the same key.
178
+ */
179
+ buildReclaimOffer(params) {
180
+ return offersModule.buildReclaimOffer(params, this.network);
181
+ }
174
182
  /** Maker: offer a VerusID for a currency (spends the identity's on-chain output). */
175
183
  buildSellIdentityOffer(params) {
176
184
  return offersModule.buildSellIdentityOffer(params, this.network);
@@ -1 +1 @@
1
- {"version":3,"file":"VerusSDK.js","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VerusSDK.js","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
package/dist/bundle.js CHANGED
@@ -34370,6 +34370,7 @@ __export(public_exports, {
34370
34370
  buildBuyIdentityOffer: () => buildBuyIdentityOffer,
34371
34371
  buildOffer: () => buildOffer,
34372
34372
  buildOfferFunding: () => buildOfferFunding,
34373
+ buildReclaimOffer: () => buildReclaimOffer,
34373
34374
  buildSellIdentityOffer: () => buildSellIdentityOffer,
34374
34375
  buildSwapIdentityOffer: () => buildSwapIdentityOffer,
34375
34376
  completeBuyIdentityOffer: () => completeBuyIdentityOffer,
@@ -34580,10 +34581,94 @@ function completeOffer(params, network) {
34580
34581
  return { swapTx: signedTx, txid };
34581
34582
  }
34582
34583
 
34583
- // src/offers/identity.ts
34584
+ // src/offers/reclaim.ts
34584
34585
  function nativePaymentScript2(address2) {
34585
34586
  return address2.startsWith("i") ? identityPaymentScript(parseIAddress(address2, "address")) : addressToScriptPubKey(address2);
34586
34587
  }
34588
+ function buildReclaimOffer(params, network) {
34589
+ const verusNetwork = getNetwork(network === "testnet");
34590
+ const systemId = NETWORK_CONFIG[network].chainId;
34591
+ const offeringNative = params.offered.currency === systemId;
34592
+ if (params.offered.amount <= 0n) {
34593
+ throw new TransactionBuildError("buildReclaimOffer: offered.amount must be positive");
34594
+ }
34595
+ if (!Number.isInteger(params.expiryHeight) || params.expiryHeight <= 0) {
34596
+ throw new TransactionBuildError("buildReclaimOffer: expiryHeight must be a positive block height");
34597
+ }
34598
+ const commitmentScript = Buffer.from(params.commitment.script, "hex");
34599
+ const txb = new import_utxo_lib.TransactionBuilder(verusNetwork);
34600
+ txb.setVersion(4);
34601
+ txb.setExpiryHeight(resolveExpiryHeight(params.expiryHeight));
34602
+ txb.setVersionGroupId(VERSION_GROUP_ID);
34603
+ txb.addInput(
34604
+ Buffer.from(params.commitment.txid, "hex").reverse(),
34605
+ params.commitment.vout,
34606
+ 4294967295,
34607
+ commitmentScript
34608
+ );
34609
+ if (offeringNative) {
34610
+ const fee = estimateFee(1, 1, DEFAULT_FEE_PER_KB, false, 100);
34611
+ const outAmount = params.offered.amount - fee;
34612
+ if (outAmount <= DUST_THRESHOLD) {
34613
+ throw new TransactionBuildError(
34614
+ `buildReclaimOffer: reclaimed native value ${params.offered.amount} is too small to cover the fee ${fee} above dust`
34615
+ );
34616
+ }
34617
+ txb.addOutput(nativePaymentScript2(params.makerAddress), toSafeNumber(outAmount));
34618
+ const tx2 = import_utxo_lib.Transaction.fromHex(txb.buildIncomplete().toHex(), verusNetwork);
34619
+ const takerInputs2 = [
34620
+ { index: 0, prevOutScript: commitmentScript, value: params.commitment.value }
34621
+ ];
34622
+ assertNativeConservation([{ satoshis: params.commitment.value }], tx2.outs, fee, "reclaimOffer");
34623
+ const { signedTx: signedTx2, txid: txid2 } = signTakerInputs(tx2.toHex(), takerInputs2, params.wif, network);
34624
+ return { reclaimTx: signedTx2, txid: txid2 };
34625
+ }
34626
+ const feeUtxos = params.feeUtxos ?? [];
34627
+ if (feeUtxos.length === 0) {
34628
+ throw new TransactionBuildError(
34629
+ "buildReclaimOffer: reclaiming a token requires feeUtxos (native UTXOs) \u2014 the token commitment carries no native coin for the fee"
34630
+ );
34631
+ }
34632
+ const tokenOut = buildTokenChangeOutput(
34633
+ parseAddress(params.makerAddress, "makerAddress"),
34634
+ /* @__PURE__ */ new Map([[params.offered.currency, params.offered.amount]])
34635
+ );
34636
+ txb.addOutput(tokenOut.script, 0);
34637
+ const tx = import_utxo_lib.Transaction.fromHex(txb.buildIncomplete().toHex(), verusNetwork);
34638
+ const takerInputs = [
34639
+ { index: 0, prevOutScript: commitmentScript, value: 0n }
34640
+ ];
34641
+ const selection = selectUtxos(feeUtxos, 0n, /* @__PURE__ */ new Map(), 2, systemId, void 0, true, 200);
34642
+ if (selection.currencyChanges.size > 0) {
34643
+ throw new TransactionBuildError(
34644
+ "buildReclaimOffer: feeUtxos must carry only the native coin; a token-bearing UTXO was selected and its reserve value would be lost."
34645
+ );
34646
+ }
34647
+ const expectedFeeScript = addressToScriptPubKey(
34648
+ import_utxo_lib.ECPair.fromWIF(params.wif, verusNetwork).getAddress()
34649
+ ).toString("hex");
34650
+ for (const u of selection.selected) {
34651
+ if (u.script !== expectedFeeScript) {
34652
+ throw new TransactionBuildError(
34653
+ `buildReclaimOffer: fee UTXO ${u.txid}:${u.outputIndex} must be a native P2PKH output controlled by the provided wif.`
34654
+ );
34655
+ }
34656
+ const idx = tx.addInput(Buffer.from(u.txid, "hex").reverse(), u.outputIndex, 4294967295);
34657
+ takerInputs.push({ index: idx, prevOutScript: Buffer.from(u.script, "hex"), value: u.satoshis });
34658
+ }
34659
+ if (selection.nativeChange > 0n) {
34660
+ tx.addOutput(nativePaymentScript2(params.changeAddress ?? params.makerAddress), toSafeNumber(selection.nativeChange));
34661
+ }
34662
+ const feeNativeIn = selection.selected.reduce((s, u) => s + u.satoshis, 0n);
34663
+ assertNativeConservation([{ satoshis: feeNativeIn }], tx.outs, selection.fee, "reclaimOffer");
34664
+ const { signedTx, txid } = signTakerInputs(tx.toHex(), takerInputs, params.wif, network);
34665
+ return { reclaimTx: signedTx, txid };
34666
+ }
34667
+
34668
+ // src/offers/identity.ts
34669
+ function nativePaymentScript3(address2) {
34670
+ return address2.startsWith("i") ? identityPaymentScript(parseIAddress(address2, "address")) : addressToScriptPubKey(address2);
34671
+ }
34587
34672
  function buildTransferredIdentity(identityJson, newPrimaryAddresses) {
34588
34673
  const identity = boundary_exports.Identity.fromJson(identityJson);
34589
34674
  identity.setPrimaryAddresses(newPrimaryAddresses);
@@ -34610,16 +34695,16 @@ function fundFeeAndSignIdentityTaker(args) {
34610
34695
  ).toString("hex");
34611
34696
  const takerInputs = [...args.priorInputs];
34612
34697
  for (const u of selection.selected) {
34613
- if (!isSmartTransactionScript(Buffer.from(u.script, "hex")) && u.script !== expectedScript) {
34698
+ if (u.script !== expectedScript) {
34614
34699
  throw new TransactionBuildError(
34615
- `${args.label}: fee UTXO ${u.txid}:${u.outputIndex} is not controlled by the provided wif (its scriptPubKey does not match the wif's address).`
34700
+ `${args.label}: fee UTXO ${u.txid}:${u.outputIndex} must be a native P2PKH output controlled by the provided wif.`
34616
34701
  );
34617
34702
  }
34618
34703
  const idx = args.tx.addInput(Buffer.from(u.txid, "hex").reverse(), u.outputIndex, 4294967295);
34619
34704
  takerInputs.push({ index: idx, prevOutScript: Buffer.from(u.script, "hex"), value: u.satoshis });
34620
34705
  }
34621
34706
  if (selection.nativeChange > 0n) {
34622
- args.tx.addOutput(nativePaymentScript2(args.changeAddress), toSafeNumber(selection.nativeChange));
34707
+ args.tx.addOutput(nativePaymentScript3(args.changeAddress), toSafeNumber(selection.nativeChange));
34623
34708
  }
34624
34709
  const feeNativeIn = selection.selected.reduce((s, u) => s + u.satoshis, 0n);
34625
34710
  assertNativeConservation(
@@ -34679,7 +34764,7 @@ function completeSellIdentityOffer(params, network) {
34679
34764
  const change = buildTokenChangeOutput(parseAddress(params.changeAddress, "changeAddress"), selection.currencyChanges);
34680
34765
  tx.addOutput(change.script, toSafeNumber(selection.nativeChange));
34681
34766
  } else {
34682
- tx.addOutput(nativePaymentScript2(params.changeAddress), toSafeNumber(selection.nativeChange));
34767
+ tx.addOutput(nativePaymentScript3(params.changeAddress), toSafeNumber(selection.nativeChange));
34683
34768
  }
34684
34769
  }
34685
34770
  assertTokenConservation(selection.selected, wantedTokenReq, selection.currencyChanges, systemId, "takeSellIdentityOffer");
@@ -34737,7 +34822,7 @@ function completeBuyIdentityOffer(params, network) {
34737
34822
  { index: idIdx, prevOutScript: Buffer.from(params.identityOutput.script, "hex"), value: 0n }
34738
34823
  ];
34739
34824
  if (offeringNative) {
34740
- tx.addOutput(nativePaymentScript2(params.sellerReceiveAddress), toSafeNumber(params.offered.amount));
34825
+ tx.addOutput(nativePaymentScript3(params.sellerReceiveAddress), toSafeNumber(params.offered.amount));
34741
34826
  } else {
34742
34827
  const out = buildTokenChangeOutput(
34743
34828
  parseAddress(params.sellerReceiveAddress, "sellerReceiveAddress"),
@@ -34952,6 +35037,14 @@ var VerusSDK = class {
34952
35037
  completeOffer(params) {
34953
35038
  return completeOffer(params, this.network);
34954
35039
  }
35040
+ /**
35041
+ * Maker: cancel an unaccepted offer — spend the funding commitment back to the
35042
+ * maker (SIGHASH_ALL). Native: the fee comes out of the reclaimed value; token:
35043
+ * pass native `feeUtxos` controlled by the same key.
35044
+ */
35045
+ buildReclaimOffer(params) {
35046
+ return buildReclaimOffer(params, this.network);
35047
+ }
34955
35048
  /** Maker: offer a VerusID for a currency (spends the identity's on-chain output). */
34956
35049
  buildSellIdentityOffer(params) {
34957
35050
  return buildSellIdentityOffer(params, this.network);
package/dist/index.d.ts CHANGED
@@ -13,7 +13,7 @@ export { parseSats, toSatoshis, toCoins, toSafeNumber, SATS_PER_COIN, AMOUNT_DEC
13
13
  export { VerusError, InsufficientFundsError, InvalidWifError, InvalidAddressError, InvalidNameError, TransactionBuildError, InvalidAmountError, } from './errors.js';
14
14
  export { NETWORK_CONFIG, VERSION_GROUP_ID, CONSENSUS_BRANCH_ID, TX_VERSION, DEFAULT_FEE_PER_KB, DUST_THRESHOLD, DEFAULT_REGISTRATION_FEE, DEFAULT_REFERRAL_LEVELS, DEFAULT_EXPIRY_DELTA, RESERVE_TRANSFER_FEE, PUBKEY_HASH_PREFIX, SCRIPT_HASH_PREFIX, WIF_PREFIX, I_ADDR_VERSION, IDENTITY_FLAG_ACTIVECURRENCY, IDENTITY_FLAG_LOCKED, HASH_SHA256, } from './constants/index.js';
15
15
  export type { Network } from './constants/index.js';
16
- export type { FundedOutpoint, BuildOfferFundingParams, BuildOfferFundingResult, OfferWant, BuildOfferParams, BuildOfferResult, CompleteOfferParams, CompleteOfferResult, BuildSellIdentityOfferParams, CompleteSellIdentityOfferParams, CompleteSellIdentityOfferResult, BuildBuyIdentityOfferParams, CompleteBuyIdentityOfferParams, CompleteBuyIdentityOfferResult, BuildSwapIdentityOfferParams, CompleteSwapIdentityOfferParams, CompleteSwapIdentityOfferResult, } from './offers/public.js';
16
+ export type { FundedOutpoint, BuildOfferFundingParams, BuildOfferFundingResult, OfferWant, BuildOfferParams, BuildOfferResult, CompleteOfferParams, CompleteOfferResult, ReclaimOfferParams, ReclaimOfferResult, BuildSellIdentityOfferParams, CompleteSellIdentityOfferParams, CompleteSellIdentityOfferResult, BuildBuyIdentityOfferParams, CompleteBuyIdentityOfferParams, CompleteBuyIdentityOfferResult, BuildSwapIdentityOfferParams, CompleteSwapIdentityOfferParams, CompleteSwapIdentityOfferResult, } from './offers/public.js';
17
17
  export * as address from './address/index.js';
18
18
  export * as keys from './keys/index.js';
19
19
  export * as signing from './signing/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,YAAY,EACV,IAAI,EACJ,WAAW,EACX,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAG3D,OAAO,EACL,SAAS,EACT,UAAU,EACV,UAAU,EACV,cAAc,EACd,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,YAAY,EACZ,aAAa,EACb,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,EACV,cAAc,EACd,4BAA4B,EAC5B,oBAAoB,EACpB,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAGpD,YAAY,EACV,cAAc,EACd,uBAAuB,EACvB,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAExC,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAE1C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,YAAY,EACV,IAAI,EACJ,WAAW,EACX,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAG3D,OAAO,EACL,SAAS,EACT,UAAU,EACV,UAAU,EACV,cAAc,EACd,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,YAAY,EACZ,aAAa,EACb,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,EACV,cAAc,EACd,4BAA4B,EAC5B,oBAAoB,EACpB,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAGpD,YAAY,EACV,cAAc,EACd,uBAAuB,EACvB,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAExC,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAE1C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,cAAc;AACd,6CAAyC;AAAhC,uGAAA,QAAQ,OAAA;AAmCjB,kEAAkE;AAClE,sDAA+E;AAAtE,+GAAA,gBAAgB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAG9C,2DAA2D;AAC3D,+CAM4B;AAL1B,qGAAA,SAAS,OAAA;AACT,sGAAA,UAAU,OAAA;AACV,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,0GAAA,cAAc,OAAA;AAGhB,wDAAwD;AACxD,6CAO0B;AANxB,qGAAA,SAAS,OAAA;AACT,sGAAA,UAAU,OAAA;AACV,mGAAA,OAAO,OAAA;AACP,wGAAA,YAAY,OAAA;AACZ,yGAAA,aAAa,OAAA;AACb,2GAAA,eAAe,OAAA;AAGjB,eAAe;AACf,yCAQqB;AAPnB,uGAAA,UAAU,OAAA;AACV,mHAAA,sBAAsB,OAAA;AACtB,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,6GAAA,gBAAgB,OAAA;AAChB,kHAAA,qBAAqB,OAAA;AACrB,+GAAA,kBAAkB,OAAA;AAGpB,YAAY;AACZ,iDAkB8B;AAjB5B,0GAAA,cAAc,OAAA;AACd,4GAAA,gBAAgB,OAAA;AAChB,+GAAA,mBAAmB,OAAA;AACnB,sGAAA,UAAU,OAAA;AACV,8GAAA,kBAAkB,OAAA;AAClB,0GAAA,cAAc,OAAA;AACd,oHAAA,wBAAwB,OAAA;AACxB,mHAAA,uBAAuB,OAAA;AACvB,gHAAA,oBAAoB,OAAA;AACpB,gHAAA,oBAAoB,OAAA;AACpB,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAClB,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,wHAAA,4BAA4B,OAAA;AAC5B,gHAAA,oBAAoB,OAAA;AACpB,uGAAA,WAAW,OAAA;AAyBb,6BAA6B;AAC7B,8DAA8C;AAC9C,wDAAwC;AACxC,8DAA8C;AAC9C,wDAAwC;AACxC,+EAA+E;AAC/E,iEAAiD;AACjD,gEAAgD;AAChD,8DAA8C;AAC9C,gEAAgD;AAChD,0DAA0C;AAC1C,sFAAsF;AACtF,6DAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,cAAc;AACd,6CAAyC;AAAhC,uGAAA,QAAQ,OAAA;AAmCjB,kEAAkE;AAClE,sDAA+E;AAAtE,+GAAA,gBAAgB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAG9C,2DAA2D;AAC3D,+CAM4B;AAL1B,qGAAA,SAAS,OAAA;AACT,sGAAA,UAAU,OAAA;AACV,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,0GAAA,cAAc,OAAA;AAGhB,wDAAwD;AACxD,6CAO0B;AANxB,qGAAA,SAAS,OAAA;AACT,sGAAA,UAAU,OAAA;AACV,mGAAA,OAAO,OAAA;AACP,wGAAA,YAAY,OAAA;AACZ,yGAAA,aAAa,OAAA;AACb,2GAAA,eAAe,OAAA;AAGjB,eAAe;AACf,yCAQqB;AAPnB,uGAAA,UAAU,OAAA;AACV,mHAAA,sBAAsB,OAAA;AACtB,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,6GAAA,gBAAgB,OAAA;AAChB,kHAAA,qBAAqB,OAAA;AACrB,+GAAA,kBAAkB,OAAA;AAGpB,YAAY;AACZ,iDAkB8B;AAjB5B,0GAAA,cAAc,OAAA;AACd,4GAAA,gBAAgB,OAAA;AAChB,+GAAA,mBAAmB,OAAA;AACnB,sGAAA,UAAU,OAAA;AACV,8GAAA,kBAAkB,OAAA;AAClB,0GAAA,cAAc,OAAA;AACd,oHAAA,wBAAwB,OAAA;AACxB,mHAAA,uBAAuB,OAAA;AACvB,gHAAA,oBAAoB,OAAA;AACpB,gHAAA,oBAAoB,OAAA;AACpB,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAClB,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,wHAAA,4BAA4B,OAAA;AAC5B,gHAAA,oBAAoB,OAAA;AACpB,uGAAA,WAAW,OAAA;AA2Bb,6BAA6B;AAC7B,8DAA8C;AAC9C,wDAAwC;AACxC,8DAA8C;AAC9C,wDAAwC;AACxC,+EAA+E;AAC/E,iEAAiD;AACjD,gEAAgD;AAChD,8DAA8C;AAC9C,gEAAgD;AAChD,0DAA0C;AAC1C,sFAAsF;AACtF,6DAA6C"}
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/offers/identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/offers/identity.ts"],"names":[],"mappings":"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"}
@@ -89,13 +89,16 @@ function fundFeeAndSignIdentityTaker(args) {
89
89
  if (selection.currencyChanges.size > 0) {
90
90
  throw new errors_js_1.TransactionBuildError(`${args.label}: the fee UTXOs must carry only the native coin; a token-bearing UTXO was selected and its reserve value would be lost.`);
91
91
  }
92
- // Every native fee input must be P2PKH controlled by `wif` (CC inputs — the
93
- // identityare added by the caller and signed by the key that controls them).
92
+ // Every fee input must be a native P2PKH output controlled by `wif`. Rejecting
93
+ // anything else including CryptoCondition outputs, whose control can't be
94
+ // verified offline — fails closed with a typed error instead of a doomed,
95
+ // daemon-rejected tx. (The identity CC input is a caller-supplied priorInput,
96
+ // not a selected fee UTXO, and is signed by the key that controls it.)
94
97
  const expectedScript = (0, index_js_4.addressToScriptPubKey)(boundary_js_1.ECPair.fromWIF(args.wif, verusNetwork).getAddress()).toString('hex');
95
98
  const takerInputs = [...args.priorInputs];
96
99
  for (const u of selection.selected) {
97
- if (!(0, index_js_1.isSmartTransactionScript)(Buffer.from(u.script, 'hex')) && u.script !== expectedScript) {
98
- throw new errors_js_1.TransactionBuildError(`${args.label}: fee UTXO ${u.txid}:${u.outputIndex} is not controlled by the provided wif (its scriptPubKey does not match the wif's address).`);
100
+ if (u.script !== expectedScript) {
101
+ throw new errors_js_1.TransactionBuildError(`${args.label}: fee UTXO ${u.txid}:${u.outputIndex} must be a native P2PKH output controlled by the provided wif.`);
99
102
  }
100
103
  const idx = args.tx.addInput(Buffer.from(u.txid, 'hex').reverse(), u.outputIndex, 0xffffffff);
101
104
  takerInputs.push({ index: idx, prevOutScript: Buffer.from(u.script, 'hex'), value: u.satoshis });
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/offers/identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/offers/identity.ts"],"names":[],"mappings":"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"}
@@ -23,8 +23,10 @@
23
23
  */
24
24
  export { buildOfferFunding, buildOffer, } from './maker.js';
25
25
  export { completeOffer, } from './taker.js';
26
+ export { buildReclaimOffer, } from './reclaim.js';
26
27
  export { buildSellIdentityOffer, completeSellIdentityOffer, buildBuyIdentityOffer, completeBuyIdentityOffer, buildSwapIdentityOffer, completeSwapIdentityOffer, } from './identity.js';
27
28
  export type { FundedOutpoint, BuildOfferFundingParams, BuildOfferFundingResult, OfferWant, BuildOfferParams, BuildOfferResult, } from './maker.js';
28
29
  export type { CompleteOfferParams, CompleteOfferResult } from './taker.js';
30
+ export type { ReclaimOfferParams, ReclaimOfferResult } from './reclaim.js';
29
31
  export type { BuildSellIdentityOfferParams, CompleteSellIdentityOfferParams, CompleteSellIdentityOfferResult, BuildBuyIdentityOfferParams, CompleteBuyIdentityOfferParams, CompleteBuyIdentityOfferResult, BuildSwapIdentityOfferParams, CompleteSwapIdentityOfferParams, CompleteSwapIdentityOfferResult, } from './identity.js';
30
32
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/offers/public.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAEL,iBAAiB,EACjB,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,cAAc,EACd,uBAAuB,EACvB,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC3E,YAAY,EACV,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/offers/public.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAEL,iBAAiB,EACjB,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,cAAc,EACd,uBAAuB,EACvB,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC3E,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3E,YAAY,EACV,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,eAAe,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.completeSwapIdentityOffer = exports.buildSwapIdentityOffer = exports.completeBuyIdentityOffer = exports.buildBuyIdentityOffer = exports.completeSellIdentityOffer = exports.buildSellIdentityOffer = exports.completeOffer = exports.buildOffer = exports.buildOfferFunding = void 0;
3
+ exports.completeSwapIdentityOffer = exports.buildSwapIdentityOffer = exports.completeBuyIdentityOffer = exports.buildBuyIdentityOffer = exports.completeSellIdentityOffer = exports.buildSellIdentityOffer = exports.buildReclaimOffer = exports.completeOffer = exports.buildOffer = exports.buildOfferFunding = void 0;
4
4
  /**
5
5
  * The curated public surface of the offers module — Verus marketplace offers
6
6
  * (fully on-chain atomic swaps), built and signed offline.
@@ -31,6 +31,9 @@ Object.defineProperty(exports, "buildOffer", { enumerable: true, get: function (
31
31
  var taker_js_1 = require("./taker.js");
32
32
  // Currency-offer taker: complete and sign the swap.
33
33
  Object.defineProperty(exports, "completeOffer", { enumerable: true, get: function () { return taker_js_1.completeOffer; } });
34
+ var reclaim_js_1 = require("./reclaim.js");
35
+ // Maker cancel: reclaim an unaccepted offer's funding commitment.
36
+ Object.defineProperty(exports, "buildReclaimOffer", { enumerable: true, get: function () { return reclaim_js_1.buildReclaimOffer; } });
34
37
  var identity_js_1 = require("./identity.js");
35
38
  // Identity-offer flows (sell / buy / swap), maker + taker halves.
36
39
  Object.defineProperty(exports, "buildSellIdentityOffer", { enumerable: true, get: function () { return identity_js_1.buildSellIdentityOffer; } });
@@ -1 +1 @@
1
- {"version":3,"file":"public.js","sourceRoot":"","sources":["../../src/offers/public.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,uCAIoB;AAHlB,kFAAkF;AAClF,6GAAA,iBAAiB,OAAA;AACjB,sGAAA,UAAU,OAAA;AAEZ,uCAGoB;AAFlB,oDAAoD;AACpD,yGAAA,aAAa,OAAA;AAEf,6CAQuB;AAPrB,kEAAkE;AAClE,qHAAA,sBAAsB,OAAA;AACtB,wHAAA,yBAAyB,OAAA;AACzB,oHAAA,qBAAqB,OAAA;AACrB,uHAAA,wBAAwB,OAAA;AACxB,qHAAA,sBAAsB,OAAA;AACtB,wHAAA,yBAAyB,OAAA"}
1
+ {"version":3,"file":"public.js","sourceRoot":"","sources":["../../src/offers/public.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,uCAIoB;AAHlB,kFAAkF;AAClF,6GAAA,iBAAiB,OAAA;AACjB,sGAAA,UAAU,OAAA;AAEZ,uCAGoB;AAFlB,oDAAoD;AACpD,yGAAA,aAAa,OAAA;AAEf,2CAGsB;AAFpB,kEAAkE;AAClE,+GAAA,iBAAiB,OAAA;AAEnB,6CAQuB;AAPrB,kEAAkE;AAClE,qHAAA,sBAAsB,OAAA;AACtB,wHAAA,yBAAyB,OAAA;AACzB,oHAAA,qBAAqB,OAAA;AACrB,uHAAA,wBAAwB,OAAA;AACxB,qHAAA,sBAAsB,OAAA;AACtB,wHAAA,yBAAyB,OAAA"}
@@ -0,0 +1,39 @@
1
+ import type { FundedOutpoint } from './maker.js';
2
+ import type { Network } from '../constants/index.js';
3
+ import type { Utxo } from '../types/index.js';
4
+ export interface ReclaimOfferParams {
5
+ wif: string;
6
+ /** The funding commitment to reclaim (the `commitment` from buildOfferFunding). */
7
+ commitment: FundedOutpoint;
8
+ /**
9
+ * What the commitment holds: the native coin (currency = chain id) or a token.
10
+ * `amount` MUST equal the amount originally funded into the commitment — it is
11
+ * the value being reclaimed, and nothing in the outpoint independently carries
12
+ * a token amount. A mismatch produces a value-imbalanced tx the daemon rejects.
13
+ */
14
+ offered: {
15
+ currency: string;
16
+ amount: bigint;
17
+ };
18
+ /** Where the reclaimed asset is returned (an address the `wif` controls). */
19
+ makerAddress: string;
20
+ /**
21
+ * Native UTXOs controlled by `wif` to fund the miner fee. REQUIRED when
22
+ * reclaiming a token (the token commitment carries 0 native); ignored for a
23
+ * native reclaim, where the fee comes out of the reclaimed value.
24
+ */
25
+ feeUtxos?: Utxo[];
26
+ /** Native change destination for a token reclaim (defaults to makerAddress). */
27
+ changeAddress?: string;
28
+ expiryHeight: number;
29
+ }
30
+ export interface ReclaimOfferResult {
31
+ reclaimTx: string;
32
+ txid: string;
33
+ }
34
+ /**
35
+ * Reclaim (cancel) an unaccepted offer: spend the funding commitment back to the
36
+ * maker, signed SIGHASH_ALL. Returns the signed transaction to broadcast.
37
+ */
38
+ export declare function buildReclaimOffer(params: ReclaimOfferParams, network: Network): ReclaimOfferResult;
39
+ //# sourceMappingURL=reclaim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reclaim.d.ts","sourceRoot":"","sources":["../../src/offers/reclaim.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAKjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,mFAAmF;IACnF,UAAU,EAAE,cAAc,CAAC;IAC3B;;;;;OAKG;IACH,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AASD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,kBAAkB,CAkGlG"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildReclaimOffer = buildReclaimOffer;
4
+ /**
5
+ * Reclaiming (cancelling) an unaccepted offer, offline.
6
+ *
7
+ * The SDK's maker flow funds the OFFERED asset into a commitment output — a
8
+ * single-key EVAL_IDENTITY_COMMITMENT CryptoCondition the maker controls (see
9
+ * buildOfferFunding) — and then signs a SIGHASH_SINGLE|ANYONECANPAY partial over
10
+ * it (buildOffer). If no taker ever completes that partial, the offered value is
11
+ * still sitting in the maker's own commitment output. `buildReclaimOffer` spends
12
+ * it back to the maker: the same CryptoCondition, now signed SIGHASH_ALL.
13
+ *
14
+ * This is the maker's unilateral cancel — it needs nothing but the maker's key
15
+ * and the commitment outpoint. (It is distinct from the daemon's `closeoffers`,
16
+ * which cancels the daemon's on-chain *posted* offers — a different, two-condition
17
+ * commitment the SDK does not create.)
18
+ *
19
+ * The offered asset may be the native coin or a token:
20
+ * - native: the fee comes out of the reclaimed value (no extra inputs);
21
+ * - token: the commitment carries 0 native, so `feeUtxos` (native, controlled
22
+ * by `wif`) fund the miner fee; the token returns in full.
23
+ */
24
+ const boundary_js_1 = require("../fork/boundary.js");
25
+ const index_js_1 = require("../utxo/index.js");
26
+ const index_js_2 = require("../signing/index.js");
27
+ const index_js_3 = require("../identity/index.js");
28
+ const sign_js_1 = require("./sign.js");
29
+ const index_js_4 = require("../utils/index.js");
30
+ const brands_js_1 = require("../core/brands.js");
31
+ const index_js_5 = require("../constants/index.js");
32
+ const errors_js_1 = require("../errors.js");
33
+ /** A native payment script to an R-address (P2PKH) or i-address (pay-to-identity). */
34
+ function nativePaymentScript(address) {
35
+ return address.startsWith('i')
36
+ ? (0, index_js_3.identityPaymentScript)((0, brands_js_1.parseIAddress)(address, 'address'))
37
+ : (0, index_js_4.addressToScriptPubKey)(address);
38
+ }
39
+ /**
40
+ * Reclaim (cancel) an unaccepted offer: spend the funding commitment back to the
41
+ * maker, signed SIGHASH_ALL. Returns the signed transaction to broadcast.
42
+ */
43
+ function buildReclaimOffer(params, network) {
44
+ const verusNetwork = (0, index_js_2.getNetwork)(network === 'testnet');
45
+ const systemId = index_js_5.NETWORK_CONFIG[network].chainId;
46
+ const offeringNative = params.offered.currency === systemId;
47
+ if (params.offered.amount <= 0n) {
48
+ throw new errors_js_1.TransactionBuildError('buildReclaimOffer: offered.amount must be positive');
49
+ }
50
+ if (!Number.isInteger(params.expiryHeight) || params.expiryHeight <= 0) {
51
+ throw new errors_js_1.TransactionBuildError('buildReclaimOffer: expiryHeight must be a positive block height');
52
+ }
53
+ const commitmentScript = Buffer.from(params.commitment.script, 'hex');
54
+ const txb = new boundary_js_1.TransactionBuilder(verusNetwork);
55
+ txb.setVersion(4);
56
+ txb.setExpiryHeight((0, index_js_2.resolveExpiryHeight)(params.expiryHeight));
57
+ txb.setVersionGroupId(index_js_5.VERSION_GROUP_ID);
58
+ txb.addInput(Buffer.from(params.commitment.txid, 'hex').reverse(), params.commitment.vout, 0xffffffff, commitmentScript);
59
+ if (offeringNative) {
60
+ // The fee comes out of the reclaimed native value; one CC input, one output.
61
+ const fee = (0, index_js_1.estimateFee)(1, 1, index_js_5.DEFAULT_FEE_PER_KB, false, 100);
62
+ const outAmount = params.offered.amount - fee;
63
+ if (outAmount <= index_js_5.DUST_THRESHOLD) {
64
+ throw new errors_js_1.TransactionBuildError(`buildReclaimOffer: reclaimed native value ${params.offered.amount} is too small to cover the fee ${fee} above dust`);
65
+ }
66
+ txb.addOutput(nativePaymentScript(params.makerAddress), (0, index_js_4.toSafeNumber)(outAmount));
67
+ const tx = boundary_js_1.Transaction.fromHex(txb.buildIncomplete().toHex(), verusNetwork);
68
+ const takerInputs = [
69
+ { index: 0, prevOutScript: commitmentScript, value: params.commitment.value },
70
+ ];
71
+ (0, index_js_2.assertNativeConservation)([{ satoshis: params.commitment.value }], tx.outs, fee, 'reclaimOffer');
72
+ const { signedTx, txid } = (0, sign_js_1.signTakerInputs)(tx.toHex(), takerInputs, params.wif, network);
73
+ return { reclaimTx: signedTx, txid };
74
+ }
75
+ // Token reclaim: the commitment carries 0 native and the token returns in full;
76
+ // native fee UTXOs (controlled by wif) pay the miner fee.
77
+ const feeUtxos = params.feeUtxos ?? [];
78
+ if (feeUtxos.length === 0) {
79
+ throw new errors_js_1.TransactionBuildError('buildReclaimOffer: reclaiming a token requires feeUtxos (native UTXOs) — the token commitment carries no native coin for the fee');
80
+ }
81
+ // Output 0: the offered token returned to the maker (a reserve output, 0 native).
82
+ const tokenOut = (0, index_js_3.buildTokenChangeOutput)((0, brands_js_1.parseAddress)(params.makerAddress, 'makerAddress'), new Map([[params.offered.currency, params.offered.amount]]));
83
+ txb.addOutput(tokenOut.script, 0);
84
+ const tx = boundary_js_1.Transaction.fromHex(txb.buildIncomplete().toHex(), verusNetwork);
85
+ const takerInputs = [
86
+ { index: 0, prevOutScript: commitmentScript, value: 0n },
87
+ ];
88
+ // Select native-only fee UTXOs (numOutputs = token out + native change).
89
+ const selection = (0, index_js_1.selectUtxos)(feeUtxos, 0n, new Map(), 2, systemId, undefined, true, 200);
90
+ if (selection.currencyChanges.size > 0) {
91
+ throw new errors_js_1.TransactionBuildError('buildReclaimOffer: feeUtxos must carry only the native coin; a token-bearing UTXO was selected and its reserve value would be lost.');
92
+ }
93
+ // Fee UTXOs must be native P2PKH controlled by `wif`. Rejecting anything else
94
+ // (including CryptoCondition outputs, whose control can't be verified offline)
95
+ // fails closed with a typed error instead of a doomed, daemon-rejected tx.
96
+ const expectedFeeScript = (0, index_js_4.addressToScriptPubKey)(boundary_js_1.ECPair.fromWIF(params.wif, verusNetwork).getAddress()).toString('hex');
97
+ for (const u of selection.selected) {
98
+ if (u.script !== expectedFeeScript) {
99
+ throw new errors_js_1.TransactionBuildError(`buildReclaimOffer: fee UTXO ${u.txid}:${u.outputIndex} must be a native P2PKH output controlled by the provided wif.`);
100
+ }
101
+ const idx = tx.addInput(Buffer.from(u.txid, 'hex').reverse(), u.outputIndex, 0xffffffff);
102
+ takerInputs.push({ index: idx, prevOutScript: Buffer.from(u.script, 'hex'), value: u.satoshis });
103
+ }
104
+ if (selection.nativeChange > 0n) {
105
+ tx.addOutput(nativePaymentScript(params.changeAddress ?? params.makerAddress), (0, index_js_4.toSafeNumber)(selection.nativeChange));
106
+ }
107
+ const feeNativeIn = selection.selected.reduce((s, u) => s + u.satoshis, 0n);
108
+ (0, index_js_2.assertNativeConservation)([{ satoshis: feeNativeIn }], tx.outs, selection.fee, 'reclaimOffer');
109
+ const { signedTx, txid } = (0, sign_js_1.signTakerInputs)(tx.toHex(), takerInputs, params.wif, network);
110
+ return { reclaimTx: signedTx, txid };
111
+ }
112
+ //# sourceMappingURL=reclaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reclaim.js","sourceRoot":"","sources":["../../src/offers/reclaim.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chainvue/verus-sdk",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "100% offline, fully typed TypeScript SDK for Verus transaction signing",
5
5
  "author": "Robert Lech",
6
6
  "main": "dist/bundle.js",