@bsv/message-box-client 2.0.5 → 2.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/package.json +2 -2
- package/dist/cjs/src/PeerPayClient.js +58 -57
- package/dist/cjs/src/PeerPayClient.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/src/PeerPayClient.js +59 -57
- package/dist/esm/src/PeerPayClient.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/src/PeerPayClient.d.ts +1 -0
- package/dist/types/src/PeerPayClient.d.ts.map +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/dist/umd/bundle.js +1 -1
- package/package.json +2 -2
- package/src/PeerPayClient.ts +69 -63
package/dist/cjs/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bsv/message-box-client",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.6",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -72,6 +72,6 @@
|
|
|
72
72
|
},
|
|
73
73
|
"dependencies": {
|
|
74
74
|
"@bsv/authsocket-client": "^2.0.2",
|
|
75
|
-
"@bsv/sdk": "^2.0.
|
|
75
|
+
"@bsv/sdk": "^2.0.11"
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -48,6 +48,9 @@ exports.PeerPayClient = exports.STANDARD_PAYMENT_MESSAGEBOX = void 0;
|
|
|
48
48
|
const MessageBoxClient_js_1 = require("./MessageBoxClient.js");
|
|
49
49
|
const sdk_1 = require("@bsv/sdk");
|
|
50
50
|
const Logger = __importStar(require("./Utils/logger.js"));
|
|
51
|
+
function toNumberArray(tx) {
|
|
52
|
+
return Array.isArray(tx) ? tx : Array.from(tx);
|
|
53
|
+
}
|
|
51
54
|
function safeParse(input) {
|
|
52
55
|
try {
|
|
53
56
|
return typeof input === 'string' ? JSON.parse(input) : input;
|
|
@@ -73,6 +76,15 @@ class PeerPayClient extends MessageBoxClient_js_1.MessageBoxClient {
|
|
|
73
76
|
this.messageBox = (_a = config.messageBox) !== null && _a !== void 0 ? _a : exports.STANDARD_PAYMENT_MESSAGEBOX;
|
|
74
77
|
this.peerPayWalletClient = walletClient;
|
|
75
78
|
this.originator = originator;
|
|
79
|
+
this.settlementModule = new sdk_1.Brc29RemittanceModule({
|
|
80
|
+
protocolID: [2, '3241645161d8'],
|
|
81
|
+
labels: ['peerpay'],
|
|
82
|
+
description: 'PeerPay payment',
|
|
83
|
+
outputDescription: 'Payment for PeerPay transaction',
|
|
84
|
+
internalizeProtocol: 'wallet payment',
|
|
85
|
+
refundFeeSatoshis: 1000,
|
|
86
|
+
minRefundSatoshis: 1000
|
|
87
|
+
});
|
|
76
88
|
}
|
|
77
89
|
get authFetchInstance() {
|
|
78
90
|
if (this._authFetchInstance === null || this._authFetchInstance === undefined) {
|
|
@@ -97,53 +109,34 @@ class PeerPayClient extends MessageBoxClient_js_1.MessageBoxClient {
|
|
|
97
109
|
throw new Error('Invalid payment details: recipient and valid amount are required');
|
|
98
110
|
}
|
|
99
111
|
;
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
Logger.log(`[PP CLIENT] Locking Script: ${lockingScript}`);
|
|
118
|
-
// Create the payment action
|
|
119
|
-
const paymentAction = await this.peerPayWalletClient.createAction({
|
|
120
|
-
description: 'PeerPay payment',
|
|
121
|
-
labels: ['peerpay'],
|
|
122
|
-
outputs: [{
|
|
123
|
-
satoshis: payment.amount,
|
|
124
|
-
lockingScript,
|
|
125
|
-
customInstructions: JSON.stringify({
|
|
126
|
-
derivationPrefix,
|
|
127
|
-
derivationSuffix,
|
|
128
|
-
payee: payment.recipient
|
|
129
|
-
}),
|
|
130
|
-
outputDescription: 'Payment for PeerPay transaction'
|
|
131
|
-
}],
|
|
132
|
-
options: {
|
|
133
|
-
randomizeOutputs: false
|
|
112
|
+
const result = await this.settlementModule.buildSettlement({
|
|
113
|
+
threadId: 'peerpay',
|
|
114
|
+
option: {
|
|
115
|
+
amountSatoshis: payment.amount,
|
|
116
|
+
payee: payment.recipient,
|
|
117
|
+
labels: ['peerpay'],
|
|
118
|
+
description: 'PeerPay payment'
|
|
119
|
+
}
|
|
120
|
+
}, {
|
|
121
|
+
wallet: this.peerPayWalletClient,
|
|
122
|
+
originator: this.originator,
|
|
123
|
+
now: () => Date.now(),
|
|
124
|
+
logger: Logger
|
|
125
|
+
});
|
|
126
|
+
if (result.action === 'terminate') {
|
|
127
|
+
if (result.termination.code === 'brc29.public_key_missing') {
|
|
128
|
+
throw new Error('Failed to derive recipient’s public key');
|
|
134
129
|
}
|
|
135
|
-
|
|
136
|
-
if (paymentAction.tx === undefined) {
|
|
137
|
-
throw new Error('Transaction creation failed!');
|
|
130
|
+
throw new Error(result.termination.message);
|
|
138
131
|
}
|
|
139
|
-
Logger.log('[PP CLIENT] Payment Action:',
|
|
132
|
+
Logger.log('[PP CLIENT] Payment Action Settlement Artifact:', result.artifact);
|
|
140
133
|
return {
|
|
141
134
|
customInstructions: {
|
|
142
|
-
derivationPrefix,
|
|
143
|
-
derivationSuffix
|
|
135
|
+
derivationPrefix: result.artifact.customInstructions.derivationPrefix,
|
|
136
|
+
derivationSuffix: result.artifact.customInstructions.derivationSuffix
|
|
144
137
|
},
|
|
145
|
-
transaction:
|
|
146
|
-
amount:
|
|
138
|
+
transaction: result.artifact.transaction,
|
|
139
|
+
amount: result.artifact.amountSatoshis
|
|
147
140
|
};
|
|
148
141
|
}
|
|
149
142
|
/**
|
|
@@ -246,23 +239,31 @@ class PeerPayClient extends MessageBoxClient_js_1.MessageBoxClient {
|
|
|
246
239
|
* @throws {Error} If payment processing fails.
|
|
247
240
|
*/
|
|
248
241
|
async acceptPayment(payment) {
|
|
249
|
-
var _a;
|
|
242
|
+
var _a, _b;
|
|
250
243
|
try {
|
|
251
244
|
Logger.log(`[PP CLIENT] Processing payment: ${JSON.stringify(payment, null, 2)}`);
|
|
252
|
-
const
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
245
|
+
const acceptResult = await this.settlementModule.acceptSettlement({
|
|
246
|
+
threadId: 'peerpay',
|
|
247
|
+
sender: payment.sender,
|
|
248
|
+
settlement: {
|
|
249
|
+
customInstructions: {
|
|
250
|
+
derivationPrefix: payment.token.customInstructions.derivationPrefix,
|
|
251
|
+
derivationSuffix: payment.token.customInstructions.derivationSuffix
|
|
252
|
+
},
|
|
253
|
+
transaction: toNumberArray(payment.token.transaction),
|
|
254
|
+
amountSatoshis: payment.token.amount,
|
|
255
|
+
outputIndex: (_a = payment.token.outputIndex) !== null && _a !== void 0 ? _a : STANDARD_PAYMENT_OUTPUT_INDEX
|
|
256
|
+
}
|
|
257
|
+
}, {
|
|
258
|
+
wallet: this.peerPayWalletClient,
|
|
259
|
+
originator: this.originator,
|
|
260
|
+
now: () => Date.now(),
|
|
261
|
+
logger: Logger
|
|
262
|
+
});
|
|
263
|
+
if (acceptResult.action === 'terminate') {
|
|
264
|
+
throw new Error(acceptResult.termination.message);
|
|
265
|
+
}
|
|
266
|
+
const paymentResult = (_b = acceptResult.receiptData) === null || _b === void 0 ? void 0 : _b.internalizeResult;
|
|
266
267
|
Logger.log(`[PP CLIENT] Payment internalized successfully: ${JSON.stringify(paymentResult, null, 2)}`);
|
|
267
268
|
Logger.log(`[PP CLIENT] Acknowledging payment with messageId: ${payment.messageId}`);
|
|
268
269
|
await this.acknowledgeMessage({ messageIds: [payment.messageId] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeerPayClient.js","sourceRoot":"","sources":["../../../src/PeerPayClient.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,+DAAwD;AAExD,
|
|
1
|
+
{"version":3,"file":"PeerPayClient.js","sourceRoot":"","sources":["../../../src/PeerPayClient.ts"],"names":[],"mappings":"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"}
|