@1sat/actions 0.0.67 → 0.0.69
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/identity/index.d.ts +1 -1
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +4 -4
- package/dist/identity/index.js.map +1 -1
- package/dist/inscriptions/index.d.ts +1 -1
- package/dist/inscriptions/index.d.ts.map +1 -1
- package/dist/inscriptions/index.js +5 -13
- package/dist/inscriptions/index.js.map +1 -1
- package/dist/locks/index.d.ts +1 -1
- package/dist/locks/index.d.ts.map +1 -1
- package/dist/locks/index.js +4 -10
- package/dist/locks/index.js.map +1 -1
- package/dist/opns/index.d.ts +1 -1
- package/dist/opns/index.d.ts.map +1 -1
- package/dist/opns/index.js +8 -17
- package/dist/opns/index.js.map +1 -1
- package/dist/ordinals/index.d.ts +1 -1
- package/dist/ordinals/index.d.ts.map +1 -1
- package/dist/ordinals/index.js +25 -44
- package/dist/ordinals/index.js.map +1 -1
- package/dist/payments/index.d.ts +1 -1
- package/dist/payments/index.d.ts.map +1 -1
- package/dist/payments/index.js +2 -2
- package/dist/payments/index.js.map +1 -1
- package/dist/social/index.d.ts +1 -1
- package/dist/social/index.d.ts.map +1 -1
- package/dist/social/index.js +1 -2
- package/dist/social/index.js.map +1 -1
- package/dist/sweep/index.d.ts.map +1 -1
- package/dist/sweep/index.js +20 -52
- package/dist/sweep/index.js.map +1 -1
- package/dist/sweep/transfer.d.ts +1 -1
- package/dist/sweep/transfer.d.ts.map +1 -1
- package/dist/sweep/transfer.js +3 -3
- package/dist/sweep/transfer.js.map +1 -1
- package/dist/tokens/index.d.ts +1 -1
- package/dist/tokens/index.d.ts.map +1 -1
- package/dist/tokens/index.js +12 -21
- package/dist/tokens/index.js.map +1 -1
- package/dist/utils/completeSignedAction.d.ts +4 -3
- package/dist/utils/completeSignedAction.d.ts.map +1 -1
- package/dist/utils/completeSignedAction.js +13 -7
- package/dist/utils/completeSignedAction.js.map +1 -1
- package/dist/utils/createTrackedAction.d.ts +15 -10
- package/dist/utils/createTrackedAction.d.ts.map +1 -1
- package/dist/utils/createTrackedAction.js +48 -42
- package/dist/utils/createTrackedAction.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Utils, } from '@bsv/sdk';
|
|
2
|
+
import { completeSignedAction, } from './completeSignedAction';
|
|
2
3
|
/**
|
|
3
4
|
* Generate a random hex string for action tracking.
|
|
4
5
|
*/
|
|
@@ -25,12 +26,12 @@ function applyTrackingTags(args, actionId) {
|
|
|
25
26
|
* into every output that has a basket. All outputs in the same action
|
|
26
27
|
* share the same ID, allowing targeted lookups via listOutputs tag filter.
|
|
27
28
|
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
29
|
+
* Only calls createAction(signAndProcess: false). Does NOT call signAction.
|
|
30
|
+
* All signAction calls go through completeSignedAction for abort protection.
|
|
30
31
|
*
|
|
31
32
|
* @param wallet - BRC-100 wallet
|
|
32
33
|
* @param args - Standard createAction args
|
|
33
|
-
* @returns The createAction result, plus the generated actionId
|
|
34
|
+
* @returns The createAction result with signableTransaction, plus the generated actionId
|
|
34
35
|
*/
|
|
35
36
|
export async function createTrackedAction(wallet, args) {
|
|
36
37
|
const actionId = randomActionId();
|
|
@@ -43,53 +44,58 @@ export async function createTrackedAction(wallet, args) {
|
|
|
43
44
|
signAndProcess: false,
|
|
44
45
|
},
|
|
45
46
|
});
|
|
46
|
-
|
|
47
|
-
return { ...createResult, actionId };
|
|
48
|
-
}
|
|
49
|
-
const signResult = await wallet.signAction({
|
|
50
|
-
reference: createResult.signableTransaction.reference,
|
|
51
|
-
spends: {},
|
|
52
|
-
options: {
|
|
53
|
-
acceptDelayedBroadcast: options?.acceptDelayedBroadcast ?? false,
|
|
54
|
-
},
|
|
55
|
-
});
|
|
56
|
-
return { ...signResult, actionId };
|
|
47
|
+
return { ...createResult, actionId };
|
|
57
48
|
}
|
|
49
|
+
const noOpSign = async () => ({});
|
|
58
50
|
/**
|
|
59
|
-
* Execute a tracked action
|
|
51
|
+
* Execute a tracked action end-to-end.
|
|
52
|
+
*
|
|
53
|
+
* If a fundingProvider is supplied, the provider builds, funds, and broadcasts
|
|
54
|
+
* the transaction externally. The result is then internalized into the wallet.
|
|
60
55
|
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* Otherwise, delegates to createTrackedAction (wallet funds the transaction).
|
|
56
|
+
* Otherwise, creates the action via createTrackedAction then completes it
|
|
57
|
+
* via completeSignedAction (which handles signing, script verification,
|
|
58
|
+
* signAction, and abort on failure).
|
|
65
59
|
*
|
|
66
60
|
* @param wallet - BRC-100 wallet
|
|
67
61
|
* @param args - Standard createAction args
|
|
68
|
-
* @param fundingProvider - Optional external funder
|
|
62
|
+
* @param fundingProvider - Optional external funder
|
|
63
|
+
* @param inputBEEF - Optional BEEF for external inputs (merged with signable BEEF for verification)
|
|
64
|
+
* @param sign - Optional signing callback for caller-signed inputs. When omitted, no external spends are provided.
|
|
69
65
|
* @returns The action result, plus the generated actionId
|
|
70
66
|
*/
|
|
71
|
-
export async function executeTrackedAction(wallet, args, fundingProvider) {
|
|
72
|
-
if (
|
|
73
|
-
|
|
67
|
+
export async function executeTrackedAction(wallet, args, fundingProvider, inputBEEF, sign) {
|
|
68
|
+
if (fundingProvider) {
|
|
69
|
+
const actionId = randomActionId();
|
|
70
|
+
applyTrackingTags(args, actionId);
|
|
71
|
+
const funded = await fundingProvider.fund(args);
|
|
72
|
+
const internalizeOutputs = (args.outputs ?? []).map((o, i) => ({
|
|
73
|
+
outputIndex: i,
|
|
74
|
+
protocol: 'basket insertion',
|
|
75
|
+
insertionRemittance: {
|
|
76
|
+
basket: o.basket ?? 'default',
|
|
77
|
+
customInstructions: o.customInstructions,
|
|
78
|
+
tags: o.tags ?? [],
|
|
79
|
+
},
|
|
80
|
+
}));
|
|
81
|
+
await wallet.internalizeAction({
|
|
82
|
+
tx: funded.tx,
|
|
83
|
+
outputs: internalizeOutputs,
|
|
84
|
+
description: args.description,
|
|
85
|
+
labels: args.labels,
|
|
86
|
+
});
|
|
87
|
+
return { txid: funded.txid, actionId };
|
|
74
88
|
}
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}));
|
|
87
|
-
await wallet.internalizeAction({
|
|
88
|
-
tx: funded.tx,
|
|
89
|
-
outputs: internalizeOutputs,
|
|
90
|
-
description: args.description,
|
|
91
|
-
labels: args.labels,
|
|
92
|
-
});
|
|
93
|
-
return { txid: funded.txid, actionId };
|
|
89
|
+
const createResult = await createTrackedAction(wallet, args);
|
|
90
|
+
if (!createResult.signableTransaction) {
|
|
91
|
+
return {
|
|
92
|
+
txid: createResult.txid,
|
|
93
|
+
tx: createResult.tx ? Array.from(createResult.tx) : undefined,
|
|
94
|
+
noSendChange: createResult.noSendChange,
|
|
95
|
+
actionId: createResult.actionId,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
const result = await completeSignedAction(wallet, createResult, inputBEEF, sign ?? noOpSign);
|
|
99
|
+
return { ...result, actionId: createResult.actionId };
|
|
94
100
|
}
|
|
95
101
|
//# sourceMappingURL=createTrackedAction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTrackedAction.js","sourceRoot":"","sources":["../../src/utils/createTrackedAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,GAEL,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"createTrackedAction.js","sourceRoot":"","sources":["../../src/utils/createTrackedAction.ts"],"names":[],"mappings":"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"}
|