@yaswap/bitcoin 3.4.3 → 3.4.4

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/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # @yaswap/bitcoin
2
2
 
3
+ ## 3.4.4
4
+
5
+ ### Patch Changes
6
+
7
+ - Improve change UTXOs and change addresses logic
8
+ - Updated dependencies
9
+ - @yaswap/client@3.4.4
10
+ - @yaswap/errors@3.4.4
11
+ - @yaswap/types@3.4.4
12
+ - @yaswap/utils@3.4.4
13
+
3
14
  ## 3.4.3
4
15
 
5
16
  ### Patch Changes
@@ -116,6 +116,17 @@ export interface P2SHInput {
116
116
  vout: any;
117
117
  outputScript: Buffer;
118
118
  }
119
+ /**
120
+ * Controls where the change output is sent.
121
+ * - USE_FIRST_RECEIVING_ADDRESS: Use the first receiving address (default).
122
+ * - USE_UNUSED_CHANGE_ADDRESS: Use unused change address if available; otherwise randomly select from used change addresses.
123
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: Randomly select one of the previously used receiving addresses.
124
+ */
125
+ export declare enum ChangeAddressType {
126
+ USE_FIRST_RECEIVING_ADDRESS = "use_first_receiving_address",
127
+ USE_UNUSED_CHANGE_ADDRESS = "use_unused_change_address",
128
+ USE_RANDOM_USED_RECEIVING_ADDRESS = "use_random_used_receiving_address"
129
+ }
119
130
  /**
120
131
  * Options for Bitcoin sendTransaction and sendTransactionFixedInputs.
121
132
  * Extends TransactionRequest with Bitcoin-specific options.
@@ -123,8 +134,10 @@ export interface P2SHInput {
123
134
  export interface BitcoinSendTransactionOptions extends TransactionRequest {
124
135
  /** Pre-selected UTXOs to use as inputs. When set, only these UTXOs are used (e.g. for sendTransactionFixedInputs). */
125
136
  inputs?: UTXO[];
126
- /** When true, use a change address (internal branch) for the change output; when false, use a receiving address (external branch). Default: false. */
127
- change?: boolean;
137
+ /** Where to send the change output. Default: USE_FIRST_RECEIVING_ADDRESS. */
138
+ changeAddressType?: ChangeAddressType;
139
+ /** When false, only UTXOs from receiving addresses are used. When true, UTXOs from both receiving and change addresses are used. Default: false. */
140
+ useChangeUtxos?: boolean;
128
141
  /** Maximum number of addresses to scan for UTXOs. Default: 40. */
129
142
  addressLimit?: number;
130
143
  }
package/dist/lib/types.js CHANGED
@@ -26,7 +26,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
26
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.SwapMode = exports.AddressType = exports.BitcoinJsonRpcTypes = exports.BitcoinEsploraTypes = void 0;
29
+ exports.ChangeAddressType = exports.SwapMode = exports.AddressType = exports.BitcoinJsonRpcTypes = exports.BitcoinEsploraTypes = void 0;
30
30
  exports.BitcoinEsploraTypes = __importStar(require("./chain/esplora/types"));
31
31
  exports.BitcoinJsonRpcTypes = __importStar(require("./chain/jsonRpc/types"));
32
32
  __exportStar(require("./swap/types"), exports);
@@ -42,4 +42,16 @@ var SwapMode;
42
42
  SwapMode["P2SH_SEGWIT"] = "p2shSegwit";
43
43
  SwapMode["P2WSH"] = "p2wsh";
44
44
  })(SwapMode = exports.SwapMode || (exports.SwapMode = {}));
45
+ /**
46
+ * Controls where the change output is sent.
47
+ * - USE_FIRST_RECEIVING_ADDRESS: Use the first receiving address (default).
48
+ * - USE_UNUSED_CHANGE_ADDRESS: Use unused change address if available; otherwise randomly select from used change addresses.
49
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: Randomly select one of the previously used receiving addresses.
50
+ */
51
+ var ChangeAddressType;
52
+ (function (ChangeAddressType) {
53
+ ChangeAddressType["USE_FIRST_RECEIVING_ADDRESS"] = "use_first_receiving_address";
54
+ ChangeAddressType["USE_UNUSED_CHANGE_ADDRESS"] = "use_unused_change_address";
55
+ ChangeAddressType["USE_RANDOM_USED_RECEIVING_ADDRESS"] = "use_random_used_receiving_address";
56
+ })(ChangeAddressType = exports.ChangeAddressType || (exports.ChangeAddressType = {}));
45
57
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,6EAA6D;AAC7D,6EAA6D;AAC7D,+CAA6B;AA6F7B,IAAY,WAIX;AAJD,WAAY,WAAW;IACnB,gCAAiB,CAAA;IACjB,0CAA2B,CAAA;IAC3B,gCAAiB,CAAA;AACrB,CAAC,EAJW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAItB;AAED,IAAY,QAIX;AAJD,WAAY,QAAQ;IAChB,yBAAa,CAAA;IACb,sCAA0B,CAAA;IAC1B,2BAAe,CAAA;AACnB,CAAC,EAJW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAInB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,6EAA6D;AAC7D,6EAA6D;AAC7D,+CAA6B;AA6F7B,IAAY,WAIX;AAJD,WAAY,WAAW;IACnB,gCAAiB,CAAA;IACjB,0CAA2B,CAAA;IAC3B,gCAAiB,CAAA;AACrB,CAAC,EAJW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAItB;AAED,IAAY,QAIX;AAJD,WAAY,QAAQ;IAChB,yBAAa,CAAA;IACb,sCAA0B,CAAA;IAC1B,2BAAe,CAAA;AACnB,CAAC,EAJW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAInB;AA2BD;;;;;GAKG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,gFAA2D,CAAA;IAC3D,4EAAuD,CAAA;IACvD,4FAAuE,CAAA;AAC3E,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B"}
@@ -4,7 +4,7 @@ import { Address, AddressType, Asset, Transaction, CreateTokenTransaction } from
4
4
  import { BIP32Interface } from 'bip32';
5
5
  import { payments } from 'bitcoinjs-lib';
6
6
  import { BitcoinBaseChainProvider } from '../chain/BitcoinBaseChainProvider';
7
- import { AddressType as BtcAddressType, BitcoinNetwork, BitcoinSendTransactionOptions, BitcoinWalletProviderOptions, OutputTarget, P2SHInput, PsbtInputTarget, Transaction as BtcTransaction, UsedUnusedAddressesResult, UTXO } from '../types';
7
+ import { AddressType as BtcAddressType, BitcoinNetwork, BitcoinSendTransactionOptions, BitcoinWalletProviderOptions, ChangeAddressType, OutputTarget, P2SHInput, PsbtInputTarget, Transaction as BtcTransaction, UsedUnusedAddressesResult, UTXO } from '../types';
8
8
  import { CoinSelectTarget } from '../utils';
9
9
  export declare const NUMBER_ADDRESS_LIMIT = 40;
10
10
  export declare enum AddressSearchType {
@@ -24,7 +24,7 @@ export declare abstract class BitcoinBaseWalletProvider<T extends BitcoinBaseCha
24
24
  constructor(options: BitcoinWalletProviderOptions, chainProvider?: Chain<T>);
25
25
  protected onChainProviderUpdate(chainProvider: Chain<T>): void;
26
26
  protected abstract baseDerivationNode(): Promise<BIP32Interface>;
27
- protected abstract buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], change?: boolean, addressLimit?: number): Promise<{
27
+ protected abstract buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], useChangeUtxos?: boolean, changeAddressType?: ChangeAddressType, addressLimit?: number): Promise<{
28
28
  hex: string;
29
29
  fee: number;
30
30
  }>;
@@ -59,7 +59,7 @@ export declare abstract class BitcoinBaseWalletProvider<T extends BitcoinBaseCha
59
59
  sendSweepTransaction(externalChangeAddress: AddressType, _asset: Asset, feePerByte: number): Promise<Transaction<BtcTransaction>>;
60
60
  updateTransactionFee(tx: Transaction<BtcTransaction> | string, newFeePerByte: number): Promise<Transaction<BtcTransaction>>;
61
61
  getTotalFees(transactions: BitcoinSendTransactionOptions[], max: boolean): Promise<any>;
62
- protected _sendTransaction(transactions: OutputTarget[], feePerByte?: number, change?: boolean, addressLimit?: number): Promise<Transaction<BtcTransaction>>;
62
+ protected _sendTransaction(transactions: OutputTarget[], feePerByte?: number, useChangeUtxos?: boolean, changeAddressType?: ChangeAddressType, addressLimit?: number): Promise<Transaction<BtcTransaction>>;
63
63
  protected findAddress(addresses: string[], change?: boolean, addressLimit?: number): Promise<Address>;
64
64
  getWalletAddress(address: string): Promise<Address>;
65
65
  protected getDerivationPathAddress(path: string): Promise<Address>;
@@ -67,7 +67,7 @@ export declare abstract class BitcoinBaseWalletProvider<T extends BitcoinBaseCha
67
67
  protected withCachedUtxos(func: () => any): Promise<any>;
68
68
  getTotalFeeFixedInputs(opts: BitcoinSendTransactionOptions, max: boolean): Promise<number>;
69
69
  protected getTotalFee(opts: BitcoinSendTransactionOptions, max: boolean): Promise<number>;
70
- protected getInputsForAmount(_targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], sweep?: boolean, addressLimit?: number, change?: boolean): Promise<{
70
+ protected getInputsForAmount(_targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], sweep?: boolean, addressLimit?: number, useChangeUtxos?: boolean): Promise<{
71
71
  inputs: UTXO[];
72
72
  change: CoinSelectTarget;
73
73
  outputs: CoinSelectTarget[];
@@ -109,32 +109,35 @@ class BitcoinBaseWalletProvider extends client_1.Wallet {
109
109
  });
110
110
  }
111
111
  sendTransactionFixedInputs(options) {
112
- var _a, _b, _c;
112
+ var _a, _b, _c, _d;
113
113
  return __awaiter(this, void 0, void 0, function* () {
114
114
  const targets = this.sendOptionsToOutputs([options]);
115
115
  const fixedUtxos = (_a = options.inputs) !== null && _a !== void 0 ? _a : [];
116
- const change = (_b = options.change) !== null && _b !== void 0 ? _b : false;
117
- const addressLimit = (_c = options.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT;
118
- const { hex, fee } = yield this.buildTransaction(targets, options.fee, fixedUtxos, change, addressLimit);
116
+ const useChangeUtxos = (_b = options.useChangeUtxos) !== null && _b !== void 0 ? _b : false;
117
+ const changeAddressType = (_c = options.changeAddressType) !== null && _c !== void 0 ? _c : types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS;
118
+ const addressLimit = (_d = options.addressLimit) !== null && _d !== void 0 ? _d : exports.NUMBER_ADDRESS_LIMIT;
119
+ const { hex, fee } = yield this.buildTransaction(targets, options.fee, fixedUtxos, useChangeUtxos, changeAddressType, addressLimit);
119
120
  yield this.chainProvider.sendRawTransaction(hex);
120
121
  return (0, utils_2.normalizeTransactionObject)((0, utils_2.decodeRawTransaction)(hex, this._network), fee);
121
122
  });
122
123
  }
123
124
  sendTransaction(options) {
124
- var _a, _b;
125
+ var _a, _b, _c;
125
126
  return __awaiter(this, void 0, void 0, function* () {
126
- const change = (_a = options.change) !== null && _a !== void 0 ? _a : false;
127
- const addressLimit = (_b = options.addressLimit) !== null && _b !== void 0 ? _b : exports.NUMBER_ADDRESS_LIMIT;
128
- return this._sendTransaction(this.sendOptionsToOutputs([options]), options.fee, change, addressLimit);
127
+ const useChangeUtxos = (_a = options.useChangeUtxos) !== null && _a !== void 0 ? _a : false;
128
+ const changeAddressType = (_b = options.changeAddressType) !== null && _b !== void 0 ? _b : types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS;
129
+ const addressLimit = (_c = options.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT;
130
+ return this._sendTransaction(this.sendOptionsToOutputs([options]), options.fee, useChangeUtxos, changeAddressType, addressLimit);
129
131
  });
130
132
  }
131
133
  sendBatchTransaction(transactions) {
132
- var _a, _b;
134
+ var _a, _b, _c;
133
135
  return __awaiter(this, void 0, void 0, function* () {
134
136
  const first = transactions[0];
135
- const change = (_a = first === null || first === void 0 ? void 0 : first.change) !== null && _a !== void 0 ? _a : false;
136
- const addressLimit = (_b = first === null || first === void 0 ? void 0 : first.addressLimit) !== null && _b !== void 0 ? _b : exports.NUMBER_ADDRESS_LIMIT;
137
- return [yield this._sendTransaction(this.sendOptionsToOutputs(transactions), undefined, change, addressLimit)];
137
+ const useChangeUtxos = (_a = first === null || first === void 0 ? void 0 : first.useChangeUtxos) !== null && _a !== void 0 ? _a : false;
138
+ const changeAddressType = (_b = first === null || first === void 0 ? void 0 : first.changeAddressType) !== null && _b !== void 0 ? _b : types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS;
139
+ const addressLimit = (_c = first === null || first === void 0 ? void 0 : first.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT;
140
+ return [yield this._sendTransaction(this.sendOptionsToOutputs(transactions), undefined, useChangeUtxos, changeAddressType, addressLimit)];
138
141
  });
139
142
  }
140
143
  sendSweepTransaction(externalChangeAddress, _asset, feePerByte) {
@@ -177,7 +180,7 @@ class BitcoinBaseWalletProvider extends client_1.Wallet {
177
180
  address: output.scriptPubKey.addresses[0],
178
181
  value: new types_1.BigNumber(output.value).times(1e8).toNumber(),
179
182
  }));
180
- const { hex, fee } = yield this.buildTransaction(transactions, newFeePerByte, fixedUtxos, true, exports.NUMBER_ADDRESS_LIMIT);
183
+ const { hex, fee } = yield this.buildTransaction(transactions, newFeePerByte, fixedUtxos, true, types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, exports.NUMBER_ADDRESS_LIMIT);
181
184
  yield this.chainProvider.sendRawTransaction(hex);
182
185
  return (0, utils_2.normalizeTransactionObject)((0, utils_2.decodeRawTransaction)(hex, this._network), fee);
183
186
  });
@@ -200,9 +203,9 @@ class BitcoinBaseWalletProvider extends client_1.Wallet {
200
203
  return fees;
201
204
  });
202
205
  }
203
- _sendTransaction(transactions, feePerByte, change = false, addressLimit = exports.NUMBER_ADDRESS_LIMIT) {
206
+ _sendTransaction(transactions, feePerByte, useChangeUtxos = false, changeAddressType = types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, addressLimit = exports.NUMBER_ADDRESS_LIMIT) {
204
207
  return __awaiter(this, void 0, void 0, function* () {
205
- const { hex, fee } = yield this.buildTransaction(transactions, feePerByte, [], change, addressLimit);
208
+ const { hex, fee } = yield this.buildTransaction(transactions, feePerByte, [], useChangeUtxos, changeAddressType, addressLimit);
206
209
  yield this.chainProvider.sendRawTransaction(hex);
207
210
  return (0, utils_2.normalizeTransactionObject)((0, utils_2.decodeRawTransaction)(hex, this._network), fee);
208
211
  });
@@ -362,7 +365,7 @@ class BitcoinBaseWalletProvider extends client_1.Wallet {
362
365
  return __awaiter(this, void 0, void 0, function* () {
363
366
  const targets = this.sendOptionsToOutputs([opts]);
364
367
  const addressLimit = (_a = opts.addressLimit) !== null && _a !== void 0 ? _a : exports.NUMBER_ADDRESS_LIMIT;
365
- const useChangeUtxos = (_b = opts.change) !== null && _b !== void 0 ? _b : false;
368
+ const useChangeUtxos = (_b = opts.useChangeUtxos) !== null && _b !== void 0 ? _b : false;
366
369
  const { fee } = yield this.getInputsForAmount(targets.filter((t) => !t.value), opts.fee, (_c = opts.inputs) !== null && _c !== void 0 ? _c : [], max, addressLimit, useChangeUtxos);
367
370
  return fee;
368
371
  });
@@ -372,7 +375,7 @@ class BitcoinBaseWalletProvider extends client_1.Wallet {
372
375
  return __awaiter(this, void 0, void 0, function* () {
373
376
  const targets = this.sendOptionsToOutputs([opts]);
374
377
  const addressLimit = (_a = opts.addressLimit) !== null && _a !== void 0 ? _a : exports.NUMBER_ADDRESS_LIMIT;
375
- const useChangeUtxos = (_b = opts.change) !== null && _b !== void 0 ? _b : false;
378
+ const useChangeUtxos = (_b = opts.useChangeUtxos) !== null && _b !== void 0 ? _b : false;
376
379
  if (!max) {
377
380
  const { fee } = yield this.getInputsForAmount(targets, opts.fee, [], false, addressLimit, useChangeUtxos);
378
381
  return fee;
@@ -383,11 +386,11 @@ class BitcoinBaseWalletProvider extends client_1.Wallet {
383
386
  }
384
387
  });
385
388
  }
386
- getInputsForAmount(_targets, feePerByte, fixedUtxos = [], sweep = false, addressLimit = exports.NUMBER_ADDRESS_LIMIT, change = false) {
389
+ getInputsForAmount(_targets, feePerByte, fixedUtxos = [], sweep = false, addressLimit = exports.NUMBER_ADDRESS_LIMIT, useChangeUtxos = false) {
387
390
  return __awaiter(this, void 0, void 0, function* () {
388
391
  const feePerBytePromise = this.chainProvider.getProvider().getFeePerByte();
389
392
  const utxos = [];
390
- const addressType = change ? AddressSearchType.EXTERNAL_OR_CHANGE : AddressSearchType.EXTERNAL;
393
+ const addressType = useChangeUtxos ? AddressSearchType.EXTERNAL_OR_CHANGE : AddressSearchType.EXTERNAL;
391
394
  const addresses = yield this.getUsedAddresses(addressType, addressLimit);
392
395
  const needsWitness = [types_2.AddressType.BECH32, types_2.AddressType.P2SH_SEGWIT].includes(this._addressType);
393
396
  // Enrich fixedUtxos that are missing derivationPath or witnessUtxo
@@ -1 +1 @@
1
- {"version":3,"file":"BitcoinBaseWallet.js","sourceRoot":"","sources":["../../../lib/wallet/BitcoinBaseWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BitcoinBaseWallet.js","sourceRoot":"","sources":["../../../lib/wallet/BitcoinBaseWallet.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Chain } from '@yaswap/client';
3
3
  import { AddressType, Asset, BigNumber } from '@yaswap/types';
4
4
  import { BIP32Interface } from 'bip32';
5
5
  import { BitcoinBaseChainProvider } from '../chain/BitcoinBaseChainProvider';
6
- import { BitcoinHDWalletProviderOptions, OutputTarget, PsbtInputTarget, RawExtendedPrivateKey, RawExtendedPublicKey, UTXO } from '../types';
6
+ import { BitcoinHDWalletProviderOptions, ChangeAddressType, OutputTarget, PsbtInputTarget, RawExtendedPrivateKey, RawExtendedPublicKey, UTXO } from '../types';
7
7
  import { BitcoinBaseWalletProvider } from './BitcoinBaseWallet';
8
8
  import { IBitcoinWallet } from './IBitcoinWallet';
9
9
  export declare class BitcoinHDWalletProvider extends BitcoinBaseWalletProvider implements IBitcoinWallet<BitcoinBaseChainProvider> {
@@ -27,7 +27,7 @@ export declare class BitcoinHDWalletProvider extends BitcoinBaseWalletProvider i
27
27
  getConnectedNetwork(): Promise<import("../types").BitcoinNetwork>;
28
28
  isWalletAvailable(): Promise<boolean>;
29
29
  protected baseDerivationNode(): Promise<BIP32Interface>;
30
- protected buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], change?: boolean, addressLimit?: number): Promise<{
30
+ protected buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], useChangeUtxos?: boolean, changeAddressType?: ChangeAddressType, addressLimit?: number): Promise<{
31
31
  hex: string;
32
32
  fee: number;
33
33
  }>;
@@ -56,9 +56,10 @@ export declare class BitcoinHDWalletProvider extends BitcoinBaseWalletProvider i
56
56
  private assertExtendedPrivateKey;
57
57
  private resetDerivedState;
58
58
  /**
59
- * Select the address to receive the change output.
60
- * - If change === true: use unused change address if available, otherwise pick randomly from used change addresses.
61
- * - If change === false: pick randomly from used receiving (external) addresses.
59
+ * Select the address to receive the change output according to changeAddressType:
60
+ * - USE_FIRST_RECEIVING_ADDRESS: first receiving address (default).
61
+ * - USE_UNUSED_CHANGE_ADDRESS: unused change address if available; otherwise random from used change addresses.
62
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: random from used receiving addresses.
62
63
  */
63
64
  private selectChangeAddress;
64
65
  }
@@ -106,13 +106,13 @@ class BitcoinHDWalletProvider extends BitcoinBaseWallet_1.BitcoinBaseWalletProvi
106
106
  throw new Error('No credentials available');
107
107
  });
108
108
  }
109
- buildTransaction(targets, feePerByte, fixedUtxos, change = false, addressLimit = BitcoinBaseWallet_1.NUMBER_ADDRESS_LIMIT) {
109
+ buildTransaction(targets, feePerByte, fixedUtxos, useChangeUtxos = false, changeAddressType = types_1.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, addressLimit = BitcoinBaseWallet_1.NUMBER_ADDRESS_LIMIT) {
110
110
  return __awaiter(this, void 0, void 0, function* () {
111
111
  this.ensureCanSign();
112
112
  const network = this._network;
113
- const { inputs, change: changeOutput, fee } = yield this.getInputsForAmount(targets, feePerByte, fixedUtxos, false, addressLimit, change);
113
+ const { inputs, change: changeOutput, fee } = yield this.getInputsForAmount(targets, feePerByte, fixedUtxos, false, addressLimit, useChangeUtxos);
114
114
  if (changeOutput) {
115
- const changeAddress = yield this.selectChangeAddress(change, addressLimit);
115
+ const changeAddress = yield this.selectChangeAddress(changeAddressType, addressLimit);
116
116
  targets.push({
117
117
  address: changeAddress.address,
118
118
  value: changeOutput.value,
@@ -181,7 +181,7 @@ class BitcoinHDWalletProvider extends BitcoinBaseWallet_1.BitcoinBaseWalletProvi
181
181
  }
182
182
  const _outputs = [{ address: externalChangeAddress, value: outputs[0].value }];
183
183
  // TODO: fix the inherited legacy code
184
- return this.buildTransaction(_outputs, feePerByte, inputs, false, BitcoinBaseWallet_1.NUMBER_ADDRESS_LIMIT);
184
+ return this.buildTransaction(_outputs, feePerByte, inputs, true, types_1.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, BitcoinBaseWallet_1.NUMBER_ADDRESS_LIMIT);
185
185
  });
186
186
  }
187
187
  signPSBT(data, inputs) {
@@ -308,34 +308,45 @@ class BitcoinHDWalletProvider extends BitcoinBaseWallet_1.BitcoinBaseWalletProvi
308
308
  this._derivationCache = {};
309
309
  }
310
310
  /**
311
- * Select the address to receive the change output.
312
- * - If change === true: use unused change address if available, otherwise pick randomly from used change addresses.
313
- * - If change === false: pick randomly from used receiving (external) addresses.
311
+ * Select the address to receive the change output according to changeAddressType:
312
+ * - USE_FIRST_RECEIVING_ADDRESS: first receiving address (default).
313
+ * - USE_UNUSED_CHANGE_ADDRESS: unused change address if available; otherwise random from used change addresses.
314
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: random from used receiving addresses.
314
315
  */
315
- selectChangeAddress(change, addressLimit) {
316
+ selectChangeAddress(changeAddressType, addressLimit) {
316
317
  return __awaiter(this, void 0, void 0, function* () {
317
318
  const gapLimit = 1;
318
- if (change) {
319
- const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(BitcoinBaseWallet_1.AddressSearchType.CHANGE, addressLimit, gapLimit, true);
320
- if (unusedAddress.change !== null) {
321
- return unusedAddress.change;
319
+ switch (changeAddressType) {
320
+ case types_1.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS: {
321
+ const [firstExternal] = yield this.getAddresses(0, 1, false);
322
+ return firstExternal;
322
323
  }
323
- if (usedAddresses.change.length > 0) {
324
- return usedAddresses.change[Math.floor(Math.random() * usedAddresses.change.length)];
324
+ case types_1.ChangeAddressType.USE_UNUSED_CHANGE_ADDRESS: {
325
+ const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(BitcoinBaseWallet_1.AddressSearchType.CHANGE, addressLimit, gapLimit, true);
326
+ if (unusedAddress.change !== null) {
327
+ return unusedAddress.change;
328
+ }
329
+ if (usedAddresses.change.length > 0) {
330
+ return usedAddresses.change[Math.floor(Math.random() * usedAddresses.change.length)];
331
+ }
332
+ const [firstChange] = yield this.getAddresses(0, 1, true);
333
+ return firstChange;
325
334
  }
326
- const [firstChange] = yield this.getAddresses(0, 1, true);
327
- return firstChange;
328
- }
329
- else {
330
- const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(BitcoinBaseWallet_1.AddressSearchType.EXTERNAL, addressLimit, gapLimit, true);
331
- if (usedAddresses.external.length > 0) {
332
- return usedAddresses.external[Math.floor(Math.random() * usedAddresses.external.length)];
335
+ case types_1.ChangeAddressType.USE_RANDOM_USED_RECEIVING_ADDRESS: {
336
+ const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(BitcoinBaseWallet_1.AddressSearchType.EXTERNAL, addressLimit, gapLimit, true);
337
+ if (usedAddresses.external.length > 0) {
338
+ return usedAddresses.external[Math.floor(Math.random() * usedAddresses.external.length)];
339
+ }
340
+ if (unusedAddress.external !== null) {
341
+ return unusedAddress.external;
342
+ }
343
+ const [firstExternal] = yield this.getAddresses(0, 1, false);
344
+ return firstExternal;
333
345
  }
334
- if (unusedAddress.external !== null) {
335
- return unusedAddress.external;
346
+ default: {
347
+ const [firstExternal] = yield this.getAddresses(0, 1, false);
348
+ return firstExternal;
336
349
  }
337
- const [firstExternal] = yield this.getAddresses(0, 1, false);
338
- return firstExternal;
339
350
  }
340
351
  });
341
352
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BitcoinHDWallet.js","sourceRoot":"","sources":["../../../lib/wallet/BitcoinHDWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BitcoinHDWallet.js","sourceRoot":"","sources":["../../../lib/wallet/BitcoinHDWallet.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yaswap/bitcoin",
3
- "version": "3.4.3",
3
+ "version": "3.4.4",
4
4
  "description": "",
5
5
  "author": "yaswap",
6
6
  "homepage": "",
@@ -21,10 +21,10 @@
21
21
  "@types/lodash": "^4.14.178",
22
22
  "@types/memoizee": "^0.4.7",
23
23
  "@yaswap/bitcoinselect": "1.0.0",
24
- "@yaswap/client": "3.4.3",
25
- "@yaswap/errors": "3.4.3",
26
- "@yaswap/types": "3.4.3",
27
- "@yaswap/utils": "3.4.3",
24
+ "@yaswap/client": "3.4.4",
25
+ "@yaswap/errors": "3.4.4",
26
+ "@yaswap/types": "3.4.4",
27
+ "@yaswap/utils": "3.4.4",
28
28
  "bip174": "^2.0.1",
29
29
  "bip32": "2.0.6",
30
30
  "bip39": "^3.0.4",