@1sat/actions 0.0.36 → 0.0.38
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/inscriptions/index.d.ts.map +1 -1
- package/dist/inscriptions/index.js +15 -25
- package/dist/inscriptions/index.js.map +1 -1
- package/dist/locks/index.js +1 -1
- package/dist/opns/index.d.ts +1 -1
- package/dist/opns/index.d.ts.map +1 -1
- package/dist/opns/index.js +21 -39
- package/dist/opns/index.js.map +1 -1
- package/dist/ordinals/index.d.ts.map +1 -1
- package/dist/ordinals/index.js +84 -132
- package/dist/ordinals/index.js.map +1 -1
- package/dist/sweep/index.d.ts.map +1 -1
- package/dist/sweep/index.js +72 -117
- package/dist/sweep/index.js.map +1 -1
- package/dist/tokens/index.d.ts.map +1 -1
- package/dist/tokens/index.js +33 -57
- package/dist/tokens/index.js.map +1 -1
- package/dist/utils/completeSignedAction.d.ts +2 -4
- package/dist/utils/completeSignedAction.d.ts.map +1 -1
- package/dist/utils/completeSignedAction.js +1 -1
- package/dist/utils/completeSignedAction.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/inscriptions/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/inscriptions/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,UAAU,CAAA;AAQrD,MAAM,WAAW,eAAe;IAC/B,6BAA6B;IAC7B,aAAa,EAAE,MAAM,CAAA;IACrB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,4BAA4B;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,8CAA8C;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAiKD;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAoH9D,CAAA;AAMD,2CAA2C;AAC3C,eAAO,MAAM,mBAAmB,6CAAa,CAAA"}
|
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* Actions for creating inscriptions.
|
|
5
5
|
*/
|
|
6
6
|
import { Inscription, MAP as MAPTemplate } from '@bopen-io/templates';
|
|
7
|
-
import { P2PKH, PublicKey, Script,
|
|
7
|
+
import { P2PKH, PublicKey, Script, Utils } from '@bsv/sdk';
|
|
8
8
|
import { MAX_INSCRIPTION_BYTES, ONESAT_PROTOCOL, ORDINALS_BASKET, SIGMA_BASKET, } from '../constants';
|
|
9
9
|
import { applySigma } from '../signing/sigma';
|
|
10
|
+
import { completeSignedAction } from '../utils/completeSignedAction';
|
|
10
11
|
import { signP2PKHInput } from '../utils/signP2PKH';
|
|
11
12
|
// ============================================================================
|
|
12
13
|
// Internal helpers
|
|
@@ -101,40 +102,29 @@ async function inscribeWithSigma(ctx, lockingScript, keyID, tags, input) {
|
|
|
101
102
|
trustSelf: 'known',
|
|
102
103
|
},
|
|
103
104
|
});
|
|
104
|
-
if (
|
|
105
|
-
return { error:
|
|
105
|
+
if ('error' in inscribeResult && inscribeResult.error) {
|
|
106
|
+
return { error: String(inscribeResult.error) };
|
|
106
107
|
}
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
return unlocking;
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
reference: inscribeResult.signableTransaction.reference,
|
|
116
|
-
options: {
|
|
117
|
-
acceptDelayedBroadcast: true,
|
|
118
|
-
sendWith: [anchorResult.txid],
|
|
119
|
-
},
|
|
108
|
+
const result = await completeSignedAction(ctx.wallet, inscribeResult, anchorResult.tx, async (tx) => {
|
|
109
|
+
const unlocking = await signP2PKHInput(ctx, tx, 0, ONESAT_PROTOCOL, anchorKeyID);
|
|
110
|
+
if (typeof unlocking !== 'string')
|
|
111
|
+
throw new Error(unlocking.error);
|
|
112
|
+
return { 0: { unlockingScript: unlocking } };
|
|
113
|
+
}, {
|
|
114
|
+
acceptDelayedBroadcast: true,
|
|
115
|
+
sendWith: [anchorResult.txid],
|
|
120
116
|
});
|
|
121
|
-
if (!signResult.txid) {
|
|
122
|
-
return { error: 'sign-no-txid' };
|
|
123
|
-
}
|
|
124
117
|
if (ctx.debug && ctx.log) {
|
|
125
118
|
ctx.log({
|
|
126
119
|
timestamp: new Date().toISOString(),
|
|
127
120
|
action: 'inscribe',
|
|
128
121
|
input: { contentType: input.contentType, map: input.map, signWithBAP: true, anchorTxid: anchorResult.txid },
|
|
129
|
-
txid:
|
|
130
|
-
rawtx:
|
|
122
|
+
txid: result.txid,
|
|
123
|
+
rawtx: result.rawtx,
|
|
131
124
|
outputs: [{ index: 0, protocolID: ONESAT_PROTOCOL, keyID, basket: ORDINALS_BASKET, satoshis: 1 }],
|
|
132
125
|
});
|
|
133
126
|
}
|
|
134
|
-
return
|
|
135
|
-
txid: signResult.txid,
|
|
136
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
137
|
-
};
|
|
127
|
+
return result;
|
|
138
128
|
}
|
|
139
129
|
// ============================================================================
|
|
140
130
|
// Actions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/inscriptions/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/inscriptions/index.ts"],"names":[],"mappings":"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"}
|
package/dist/locks/index.js
CHANGED
package/dist/opns/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Actions for managing OpNS name identity bindings.
|
|
5
5
|
* Registers/deregisters identity public keys on OpNS tokens via MAP metadata.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import type { WalletOutput } from '@bsv/sdk';
|
|
8
8
|
import type { Action } from '../types';
|
|
9
9
|
export interface OpnsRegisterRequest {
|
|
10
10
|
/** The OpNS ordinal output to register (from listOutputs) */
|
package/dist/opns/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/opns/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/opns/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAG5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAQtC,MAAM,WAAW,mBAAmB;IACnC,6DAA6D;IAC7D,OAAO,EAAE,YAAY,CAAA;IACrB,kEAAkE;IAClE,SAAS,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,qBAAqB;IACrC,+DAA+D;IAC/D,OAAO,EAAE,YAAY,CAAA;IACrB,kEAAkE;IAClE,SAAS,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,qBAAqB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAMD;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAChC,mBAAmB,EACnB,qBAAqB,CA6GrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAClC,qBAAqB,EACrB,qBAAqB,CAmGrB,CAAA;AAMD,oCAAoC;AACpC,eAAO,MAAM,WAAW,sDAAiC,CAAA"}
|
package/dist/opns/index.js
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
* Actions for managing OpNS name identity bindings.
|
|
5
5
|
* Registers/deregisters identity public keys on OpNS tokens via MAP metadata.
|
|
6
6
|
*/
|
|
7
|
-
import { Transaction, Utils, } from '@bsv/sdk';
|
|
8
7
|
import { buildTransferOrdinals } from '../ordinals';
|
|
9
8
|
import { ONESAT_PROTOCOL, OPNS_BASKET } from '../constants';
|
|
9
|
+
import { completeSignedAction } from '../utils/completeSignedAction';
|
|
10
10
|
import { signP2PKHInput } from '../utils/signP2PKH';
|
|
11
11
|
// ============================================================================
|
|
12
12
|
// Actions
|
|
@@ -68,39 +68,30 @@ export const opnsRegister = {
|
|
|
68
68
|
...params,
|
|
69
69
|
options: { signAndProcess: false, randomizeOutputs: false },
|
|
70
70
|
});
|
|
71
|
-
if (
|
|
72
|
-
return { error:
|
|
71
|
+
if ('error' in createResult && createResult.error) {
|
|
72
|
+
return { error: String(createResult.error) };
|
|
73
73
|
}
|
|
74
74
|
if (!ordinal.customInstructions) {
|
|
75
75
|
return { error: 'missing-custom-instructions' };
|
|
76
76
|
}
|
|
77
|
-
const tx = Transaction.fromBEEF(createResult.signableTransaction.tx);
|
|
78
77
|
const { protocolID, keyID } = JSON.parse(ordinal.customInstructions);
|
|
79
|
-
const
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
spends: { 0: { unlockingScript: unlocking } },
|
|
85
|
-
options: { acceptDelayedBroadcast: false },
|
|
78
|
+
const result = await completeSignedAction(ctx.wallet, createResult, inputBEEF, async (tx) => {
|
|
79
|
+
const unlocking = await signP2PKHInput(ctx, tx, 0, protocolID, keyID);
|
|
80
|
+
if (typeof unlocking !== 'string')
|
|
81
|
+
throw new Error(unlocking.error);
|
|
82
|
+
return { 0: { unlockingScript: unlocking } };
|
|
86
83
|
});
|
|
87
|
-
if ('error' in signResult) {
|
|
88
|
-
return { error: String(signResult.error) };
|
|
89
|
-
}
|
|
90
84
|
if (ctx.debug && ctx.log) {
|
|
91
85
|
ctx.log({
|
|
92
86
|
timestamp: new Date().toISOString(),
|
|
93
87
|
action: 'opnsRegister',
|
|
94
88
|
input: { outpoint: ordinal.outpoint },
|
|
95
|
-
txid:
|
|
96
|
-
rawtx:
|
|
89
|
+
txid: result.txid,
|
|
90
|
+
rawtx: result.rawtx,
|
|
97
91
|
outputs: [{ index: 0, protocolID: ONESAT_PROTOCOL, keyID: ordinal.outpoint, basket: OPNS_BASKET, satoshis: 1 }],
|
|
98
92
|
});
|
|
99
93
|
}
|
|
100
|
-
return
|
|
101
|
-
txid: signResult.txid,
|
|
102
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
103
|
-
};
|
|
94
|
+
return result;
|
|
104
95
|
}
|
|
105
96
|
catch (error) {
|
|
106
97
|
console.error('[opnsRegister]', error);
|
|
@@ -167,39 +158,30 @@ export const opnsDeregister = {
|
|
|
167
158
|
...params,
|
|
168
159
|
options: { signAndProcess: false, randomizeOutputs: false },
|
|
169
160
|
});
|
|
170
|
-
if (
|
|
171
|
-
return { error:
|
|
161
|
+
if ('error' in createResult && createResult.error) {
|
|
162
|
+
return { error: String(createResult.error) };
|
|
172
163
|
}
|
|
173
164
|
if (!ordinal.customInstructions) {
|
|
174
165
|
return { error: 'missing-custom-instructions' };
|
|
175
166
|
}
|
|
176
|
-
const tx = Transaction.fromBEEF(createResult.signableTransaction.tx);
|
|
177
167
|
const { protocolID, keyID } = JSON.parse(ordinal.customInstructions);
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
spends: { 0: { unlockingScript: unlocking } },
|
|
184
|
-
options: { acceptDelayedBroadcast: false },
|
|
168
|
+
const result = await completeSignedAction(ctx.wallet, createResult, inputBEEF, async (tx) => {
|
|
169
|
+
const unlocking = await signP2PKHInput(ctx, tx, 0, protocolID, keyID);
|
|
170
|
+
if (typeof unlocking !== 'string')
|
|
171
|
+
throw new Error(unlocking.error);
|
|
172
|
+
return { 0: { unlockingScript: unlocking } };
|
|
185
173
|
});
|
|
186
|
-
if ('error' in signResult) {
|
|
187
|
-
return { error: String(signResult.error) };
|
|
188
|
-
}
|
|
189
174
|
if (ctx.debug && ctx.log) {
|
|
190
175
|
ctx.log({
|
|
191
176
|
timestamp: new Date().toISOString(),
|
|
192
177
|
action: 'opnsDeregister',
|
|
193
178
|
input: { outpoint: ordinal.outpoint },
|
|
194
|
-
txid:
|
|
195
|
-
rawtx:
|
|
179
|
+
txid: result.txid,
|
|
180
|
+
rawtx: result.rawtx,
|
|
196
181
|
outputs: [{ index: 0, protocolID: ONESAT_PROTOCOL, keyID: ordinal.outpoint, basket: OPNS_BASKET, satoshis: 1 }],
|
|
197
182
|
});
|
|
198
183
|
}
|
|
199
|
-
return
|
|
200
|
-
txid: signResult.txid,
|
|
201
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
202
|
-
};
|
|
184
|
+
return result;
|
|
203
185
|
}
|
|
204
186
|
catch (error) {
|
|
205
187
|
console.error('[opnsDeregister]', error);
|
package/dist/opns/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/opns/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/opns/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ordinals/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACN,KAAK,IAAI,EAGT,KAAK,gBAAgB,EAWrB,KAAK,YAAY,EACjB,MAAM,UAAU,CAAA;AAQjB,OAAO,KAAK,EAAE,MAAM,EAAkB,aAAa,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ordinals/index.ts"],"names":[],"mappings":"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"}
|
package/dist/ordinals/index.js
CHANGED
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { MAP as MAPTemplate } from '@bopen-io/templates';
|
|
8
8
|
import { OrdLock } from '@bopen-io/templates';
|
|
9
|
-
import { Beef, BigNumber, Hash, LockingScript, OP, P2PKH, PublicKey, Script,
|
|
9
|
+
import { Beef, BigNumber, Hash, LockingScript, OP, P2PKH, PublicKey, Script, TransactionSignature, UnlockingScript, Utils, } from '@bsv/sdk';
|
|
10
10
|
import { ONESAT_PROTOCOL, OPNS_BASKET, ORDINALS_BASKET, ORD_LOCK_PREFIX, ORD_LOCK_SUFFIX, } from '../constants';
|
|
11
|
+
import { completeSignedAction } from '../utils/completeSignedAction';
|
|
11
12
|
import { signP2PKHInput } from '../utils/signP2PKH';
|
|
12
13
|
import { parseOutpoint } from '@1sat/utils';
|
|
13
14
|
// ============================================================================
|
|
@@ -427,34 +428,24 @@ export const transferOrdinals = {
|
|
|
427
428
|
...params,
|
|
428
429
|
options: { signAndProcess: false, randomizeOutputs: false },
|
|
429
430
|
});
|
|
430
|
-
if (
|
|
431
|
-
return { error:
|
|
431
|
+
if ('error' in createResult && createResult.error) {
|
|
432
|
+
return { error: String(createResult.error) };
|
|
432
433
|
}
|
|
433
|
-
const
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
434
|
+
const result = await completeSignedAction(ctx.wallet, createResult, input.inputBEEF, async (tx) => {
|
|
435
|
+
const spends = {};
|
|
436
|
+
for (let i = 0; i < input.transfers.length; i++) {
|
|
437
|
+
const { ordinal } = input.transfers[i];
|
|
438
|
+
if (!ordinal.customInstructions) {
|
|
439
|
+
throw new Error(`missing-custom-instructions-for-${ordinal.outpoint}`);
|
|
440
|
+
}
|
|
441
|
+
const { protocolID, keyID } = JSON.parse(ordinal.customInstructions);
|
|
442
|
+
const unlocking = await signP2PKHInput(ctx, tx, i, protocolID, keyID);
|
|
443
|
+
if (typeof unlocking !== 'string')
|
|
444
|
+
throw new Error(unlocking.error);
|
|
445
|
+
spends[i] = { unlockingScript: unlocking };
|
|
442
446
|
}
|
|
443
|
-
|
|
444
|
-
console.log(`[transferOrdinals] Input ${i}: protocolID=${JSON.stringify(protocolID)}, keyID=${keyID}`);
|
|
445
|
-
const unlocking = await signP2PKHInput(ctx, tx, i, protocolID, keyID);
|
|
446
|
-
if (typeof unlocking !== 'string')
|
|
447
|
-
return unlocking;
|
|
448
|
-
spends[i] = { unlockingScript: unlocking };
|
|
449
|
-
}
|
|
450
|
-
const signResult = await ctx.wallet.signAction({
|
|
451
|
-
reference: createResult.signableTransaction.reference,
|
|
452
|
-
spends,
|
|
453
|
-
options: { acceptDelayedBroadcast: false },
|
|
447
|
+
return spends;
|
|
454
448
|
});
|
|
455
|
-
if ('error' in signResult) {
|
|
456
|
-
return { error: String(signResult.error) };
|
|
457
|
-
}
|
|
458
449
|
if (ctx.debug && ctx.log) {
|
|
459
450
|
const logOutputs = input.transfers.map((t, i) => ({
|
|
460
451
|
index: i,
|
|
@@ -467,15 +458,12 @@ export const transferOrdinals = {
|
|
|
467
458
|
timestamp: new Date().toISOString(),
|
|
468
459
|
action: 'transferOrdinals',
|
|
469
460
|
input: { transfers: input.transfers.map(t => ({ outpoint: t.ordinal.outpoint, counterparty: t.counterparty, address: t.address })) },
|
|
470
|
-
txid:
|
|
471
|
-
rawtx:
|
|
461
|
+
txid: result.txid,
|
|
462
|
+
rawtx: result.rawtx,
|
|
472
463
|
outputs: logOutputs,
|
|
473
464
|
});
|
|
474
465
|
}
|
|
475
|
-
return
|
|
476
|
-
txid: signResult.txid,
|
|
477
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
478
|
-
};
|
|
466
|
+
return result;
|
|
479
467
|
}
|
|
480
468
|
catch (error) {
|
|
481
469
|
console.error('[transferOrdinals]', error);
|
|
@@ -531,39 +519,30 @@ export const listOrdinal = {
|
|
|
531
519
|
...params,
|
|
532
520
|
options: { signAndProcess: false, randomizeOutputs: false },
|
|
533
521
|
});
|
|
534
|
-
if (
|
|
535
|
-
return { error:
|
|
522
|
+
if ('error' in createResult && createResult.error) {
|
|
523
|
+
return { error: String(createResult.error) };
|
|
536
524
|
}
|
|
537
525
|
if (!input.ordinal.customInstructions) {
|
|
538
526
|
return { error: 'missing-custom-instructions' };
|
|
539
527
|
}
|
|
540
528
|
const { protocolID, keyID } = JSON.parse(input.ordinal.customInstructions);
|
|
541
|
-
const
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
reference: createResult.signableTransaction.reference,
|
|
547
|
-
spends: { 0: { unlockingScript: unlocking } },
|
|
548
|
-
options: { acceptDelayedBroadcast: false },
|
|
529
|
+
const result = await completeSignedAction(ctx.wallet, createResult, input.inputBEEF, async (tx) => {
|
|
530
|
+
const unlocking = await signP2PKHInput(ctx, tx, 0, protocolID, keyID);
|
|
531
|
+
if (typeof unlocking !== 'string')
|
|
532
|
+
throw new Error(unlocking.error);
|
|
533
|
+
return { 0: { unlockingScript: unlocking } };
|
|
549
534
|
});
|
|
550
|
-
if ('error' in signResult) {
|
|
551
|
-
return { error: String(signResult.error) };
|
|
552
|
-
}
|
|
553
535
|
if (ctx.debug && ctx.log) {
|
|
554
536
|
ctx.log({
|
|
555
537
|
timestamp: new Date().toISOString(),
|
|
556
538
|
action: 'listOrdinal',
|
|
557
539
|
input: { outpoint: input.ordinal.outpoint, price: input.price },
|
|
558
|
-
txid:
|
|
559
|
-
rawtx:
|
|
540
|
+
txid: result.txid,
|
|
541
|
+
rawtx: result.rawtx,
|
|
560
542
|
outputs: [{ index: 0, protocolID: ONESAT_PROTOCOL, keyID: input.ordinal.outpoint, basket: ORDINALS_BASKET, satoshis: 1 }],
|
|
561
543
|
});
|
|
562
544
|
}
|
|
563
|
-
return
|
|
564
|
-
txid: signResult.txid,
|
|
565
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
566
|
-
};
|
|
545
|
+
return result;
|
|
567
546
|
}
|
|
568
547
|
catch (error) {
|
|
569
548
|
console.error('[listOrdinal]', error);
|
|
@@ -644,75 +623,61 @@ export const cancelListing = {
|
|
|
644
623
|
if ('error' in createResult && createResult.error) {
|
|
645
624
|
return { error: String(createResult.error) };
|
|
646
625
|
}
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
.
|
|
690
|
-
.writeBin(Utils.toArray(publicKey, 'hex'))
|
|
691
|
-
.writeOpCode(OP.OP_1);
|
|
692
|
-
const signResult = await ctx.wallet.signAction({
|
|
693
|
-
reference: createResult.signableTransaction.reference,
|
|
694
|
-
spends: {
|
|
695
|
-
0: { unlockingScript: unlockingScript.toHex() },
|
|
696
|
-
},
|
|
697
|
-
options: { acceptDelayedBroadcast: false },
|
|
626
|
+
const result = await completeSignedAction(ctx.wallet, createResult, inputBEEF, async (tx) => {
|
|
627
|
+
const txInput = tx.inputs[0];
|
|
628
|
+
const lockScript = txInput.sourceTransaction?.outputs[txInput.sourceOutputIndex]
|
|
629
|
+
?.lockingScript;
|
|
630
|
+
if (!lockScript) {
|
|
631
|
+
throw new Error('missing-locking-script');
|
|
632
|
+
}
|
|
633
|
+
const sourceTXID = txInput.sourceTXID ?? txInput.sourceTransaction?.id('hex');
|
|
634
|
+
if (!sourceTXID) {
|
|
635
|
+
throw new Error('missing-source-txid');
|
|
636
|
+
}
|
|
637
|
+
const preimage = TransactionSignature.format({
|
|
638
|
+
sourceTXID,
|
|
639
|
+
sourceOutputIndex: txInput.sourceOutputIndex,
|
|
640
|
+
sourceSatoshis: listing.satoshis,
|
|
641
|
+
transactionVersion: tx.version,
|
|
642
|
+
otherInputs: [],
|
|
643
|
+
inputIndex: 0,
|
|
644
|
+
outputs: tx.outputs,
|
|
645
|
+
inputSequence: txInput.sequence ?? 0xffffffff,
|
|
646
|
+
subscript: lockScript,
|
|
647
|
+
lockTime: tx.lockTime,
|
|
648
|
+
scope: TransactionSignature.SIGHASH_ALL |
|
|
649
|
+
TransactionSignature.SIGHASH_ANYONECANPAY |
|
|
650
|
+
TransactionSignature.SIGHASH_FORKID,
|
|
651
|
+
});
|
|
652
|
+
const sighash = Hash.sha256(Hash.sha256(preimage));
|
|
653
|
+
const { signature } = await ctx.wallet.createSignature({
|
|
654
|
+
protocolID,
|
|
655
|
+
keyID,
|
|
656
|
+
counterparty: 'self',
|
|
657
|
+
hashToDirectlySign: Array.from(sighash),
|
|
658
|
+
});
|
|
659
|
+
const { publicKey } = await ctx.wallet.getPublicKey({
|
|
660
|
+
protocolID,
|
|
661
|
+
keyID,
|
|
662
|
+
forSelf: true,
|
|
663
|
+
});
|
|
664
|
+
const unlockingScript = new UnlockingScript()
|
|
665
|
+
.writeBin(signature)
|
|
666
|
+
.writeBin(Utils.toArray(publicKey, 'hex'))
|
|
667
|
+
.writeOpCode(OP.OP_1);
|
|
668
|
+
return { 0: { unlockingScript: unlockingScript.toHex() } };
|
|
698
669
|
});
|
|
699
|
-
if ('error' in signResult) {
|
|
700
|
-
return { error: String(signResult.error) };
|
|
701
|
-
}
|
|
702
670
|
if (ctx.debug && ctx.log) {
|
|
703
671
|
ctx.log({
|
|
704
672
|
timestamp: new Date().toISOString(),
|
|
705
673
|
action: 'cancelListing',
|
|
706
674
|
input: { outpoint, keyID },
|
|
707
|
-
txid:
|
|
708
|
-
rawtx:
|
|
675
|
+
txid: result.txid,
|
|
676
|
+
rawtx: result.rawtx,
|
|
709
677
|
outputs: [{ index: 0, protocolID, keyID, customInstructions: listing.customInstructions, satoshis: 1 }],
|
|
710
678
|
});
|
|
711
679
|
}
|
|
712
|
-
return
|
|
713
|
-
txid: signResult.txid,
|
|
714
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
715
|
-
};
|
|
680
|
+
return result;
|
|
716
681
|
}
|
|
717
682
|
catch (error) {
|
|
718
683
|
console.error('[cancelListing]', error);
|
|
@@ -832,9 +797,10 @@ export const purchaseOrdinal = {
|
|
|
832
797
|
});
|
|
833
798
|
}
|
|
834
799
|
}
|
|
800
|
+
const beefBinary = beef.toBinary();
|
|
835
801
|
const createResult = await ctx.wallet.createAction({
|
|
836
802
|
description: `Purchase ordinal for ${payoutSatoshis} sats`,
|
|
837
|
-
inputBEEF:
|
|
803
|
+
inputBEEF: beefBinary,
|
|
838
804
|
inputs: [
|
|
839
805
|
{
|
|
840
806
|
outpoint,
|
|
@@ -848,35 +814,21 @@ export const purchaseOrdinal = {
|
|
|
848
814
|
if ('error' in createResult && createResult.error) {
|
|
849
815
|
return { error: String(createResult.error) };
|
|
850
816
|
}
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
const tx = Transaction.fromBEEF(createResult.signableTransaction.tx);
|
|
855
|
-
const unlockingScript = await buildPurchaseUnlockingScript(tx, 0, listingOutput.satoshis ?? 1, listingOutput.lockingScript);
|
|
856
|
-
const signResult = await ctx.wallet.signAction({
|
|
857
|
-
reference: createResult.signableTransaction.reference,
|
|
858
|
-
spends: {
|
|
859
|
-
0: { unlockingScript: unlockingScript.toHex() },
|
|
860
|
-
},
|
|
861
|
-
options: { acceptDelayedBroadcast: false },
|
|
817
|
+
const result = await completeSignedAction(ctx.wallet, createResult, beefBinary, async (tx) => {
|
|
818
|
+
const unlockingScript = await buildPurchaseUnlockingScript(tx, 0, listingOutput.satoshis ?? 1, listingOutput.lockingScript);
|
|
819
|
+
return { 0: { unlockingScript: unlockingScript.toHex() } };
|
|
862
820
|
});
|
|
863
|
-
if ('error' in signResult) {
|
|
864
|
-
return { error: String(signResult.error) };
|
|
865
|
-
}
|
|
866
821
|
if (ctx.debug && ctx.log) {
|
|
867
822
|
ctx.log({
|
|
868
823
|
timestamp: new Date().toISOString(),
|
|
869
824
|
action: 'purchaseOrdinal',
|
|
870
825
|
input: { outpoint },
|
|
871
|
-
txid:
|
|
872
|
-
rawtx:
|
|
826
|
+
txid: result.txid,
|
|
827
|
+
rawtx: result.rawtx,
|
|
873
828
|
outputs: [{ index: 0, protocolID: ONESAT_PROTOCOL, keyID: outpoint, basket: basket, satoshis: 1 }],
|
|
874
829
|
});
|
|
875
830
|
}
|
|
876
|
-
return
|
|
877
|
-
txid: signResult.txid,
|
|
878
|
-
rawtx: signResult.tx ? Utils.toHex(signResult.tx) : undefined,
|
|
879
|
-
};
|
|
831
|
+
return result;
|
|
880
832
|
}
|
|
881
833
|
catch (error) {
|
|
882
834
|
console.error('[purchaseOrdinal]', error);
|