@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.
Files changed (48) hide show
  1. package/dist/identity/index.d.ts +1 -1
  2. package/dist/identity/index.d.ts.map +1 -1
  3. package/dist/identity/index.js +4 -4
  4. package/dist/identity/index.js.map +1 -1
  5. package/dist/inscriptions/index.d.ts +1 -1
  6. package/dist/inscriptions/index.d.ts.map +1 -1
  7. package/dist/inscriptions/index.js +5 -13
  8. package/dist/inscriptions/index.js.map +1 -1
  9. package/dist/locks/index.d.ts +1 -1
  10. package/dist/locks/index.d.ts.map +1 -1
  11. package/dist/locks/index.js +4 -10
  12. package/dist/locks/index.js.map +1 -1
  13. package/dist/opns/index.d.ts +1 -1
  14. package/dist/opns/index.d.ts.map +1 -1
  15. package/dist/opns/index.js +8 -17
  16. package/dist/opns/index.js.map +1 -1
  17. package/dist/ordinals/index.d.ts +1 -1
  18. package/dist/ordinals/index.d.ts.map +1 -1
  19. package/dist/ordinals/index.js +25 -44
  20. package/dist/ordinals/index.js.map +1 -1
  21. package/dist/payments/index.d.ts +1 -1
  22. package/dist/payments/index.d.ts.map +1 -1
  23. package/dist/payments/index.js +2 -2
  24. package/dist/payments/index.js.map +1 -1
  25. package/dist/social/index.d.ts +1 -1
  26. package/dist/social/index.d.ts.map +1 -1
  27. package/dist/social/index.js +1 -2
  28. package/dist/social/index.js.map +1 -1
  29. package/dist/sweep/index.d.ts.map +1 -1
  30. package/dist/sweep/index.js +20 -52
  31. package/dist/sweep/index.js.map +1 -1
  32. package/dist/sweep/transfer.d.ts +1 -1
  33. package/dist/sweep/transfer.d.ts.map +1 -1
  34. package/dist/sweep/transfer.js +3 -3
  35. package/dist/sweep/transfer.js.map +1 -1
  36. package/dist/tokens/index.d.ts +1 -1
  37. package/dist/tokens/index.d.ts.map +1 -1
  38. package/dist/tokens/index.js +12 -21
  39. package/dist/tokens/index.js.map +1 -1
  40. package/dist/utils/completeSignedAction.d.ts +4 -3
  41. package/dist/utils/completeSignedAction.d.ts.map +1 -1
  42. package/dist/utils/completeSignedAction.js +13 -7
  43. package/dist/utils/completeSignedAction.js.map +1 -1
  44. package/dist/utils/createTrackedAction.d.ts +15 -10
  45. package/dist/utils/createTrackedAction.d.ts.map +1 -1
  46. package/dist/utils/createTrackedAction.js +48 -42
  47. package/dist/utils/createTrackedAction.js.map +1 -1
  48. 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
- * Uses two-phase flow (createAction + signAction) so the wallet's
29
- * permission system can intercept between creation and signing.
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
- if (!createResult.signableTransaction) {
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 with optional external funding.
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
- * If a fundingProvider is supplied, the full args are passed to the provider
62
- * to build, fund, and broadcast the transaction. The result is then
63
- * internalized into the wallet so it tracks the outputs.
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 (e.g. Droplit)
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 (!fundingProvider) {
73
- return createTrackedAction(wallet, args);
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 actionId = randomActionId();
76
- applyTrackingTags(args, actionId);
77
- const funded = await fundingProvider.fund(args);
78
- const internalizeOutputs = (args.outputs ?? []).map((o, i) => ({
79
- outputIndex: i,
80
- protocol: 'basket insertion',
81
- insertionRemittance: {
82
- basket: o.basket ?? 'default',
83
- customInstructions: o.customInstructions,
84
- tags: o.tags ?? [],
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;AAGjB;;GAEG;AACH,MAAM,UAAU,cAAc;IAC7B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;IAC/B,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IAC7B,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;AACtC,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,IAAsB,EAAE,QAAgB;IAClE,MAAM,GAAG,GAAG,MAAM,QAAQ,EAAE,CAAA;IAC5B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;YAC5C,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,MAAuB,EACvB,IAAsB;IAEtB,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAA;IACjC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAEjC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAA;IACjC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC;QAC9C,GAAG,IAAI;QACP,OAAO,EAAE;YACR,GAAG,OAAO;YACV,cAAc,EAAE,KAAK;SACrB;KACD,CAAC,CAAA;IAEF,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;QACvC,OAAO,EAAE,GAAG,YAAY,EAAE,QAAQ,EAAE,CAAA;IACrC,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC;QAC1C,SAAS,EAAE,YAAY,CAAC,mBAAmB,CAAC,SAAS;QACrD,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACR,sBAAsB,EAAE,OAAO,EAAE,sBAAsB,IAAI,KAAK;SAChE;KACD,CAAC,CAAA;IAEF,OAAO,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,CAAA;AACnC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,MAAuB,EACvB,IAAsB,EACtB,eAAiC;IAEjC,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,OAAO,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAA;IACjC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAEjC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAE/C,MAAM,kBAAkB,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,kBAA2B;QACrC,mBAAmB,EAAE;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,SAAS;YAC7B,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;YACxC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE;SAClB;KACD,CAAC,CAAC,CAAA;IAEH,MAAM,MAAM,CAAC,iBAAiB,CAAC;QAC9B,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;KACnB,CAAC,CAAA;IAEF,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAA;AACvC,CAAC"}
1
+ {"version":3,"file":"createTrackedAction.js","sourceRoot":"","sources":["../../src/utils/createTrackedAction.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1sat/actions",
3
- "version": "0.0.67",
3
+ "version": "0.0.69",
4
4
  "description": "Action definitions for the 1Sat SDK",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",