Large amount of changes. Successfully broadcasts txs

This commit is contained in:
2026-03-08 15:53:50 +00:00
parent 66e9918e04
commit 9ef1720e1f
19 changed files with 1374 additions and 352 deletions

View File

@@ -323,8 +323,6 @@ export function useActionWizard() {
actionIdentifier,
});
console.log(xoInvitation)
// Wrap and track
const invitationInstance =
await appService.createInvitation(xoInvitation);
@@ -333,6 +331,8 @@ export function useActionWizard() {
const invId = inv.invitationIdentifier;
setInvitationId(invId);
setStatus('Adding variables...');
// Persist variable values
if (variables.length > 0) {
const variableData = variables.map((v) => {
@@ -359,14 +359,24 @@ export function useActionWizard() {
if (transaction?.outputs && transaction.outputs.length > 0) {
setStatus('Adding required outputs...');
const outputsToAdd = transaction.outputs.map(
(output: XOTemplateTransactionOutput) => ({
outputIdentifier: output.output,
roleIdentifier: roleIdentifier,
})
);
const outputsToAdd = await Promise.all(transaction.outputs.map(
async (output: XOTemplateTransactionOutput) => ({
// TODO: Fix this. Currently, there is a type mismatch due to branches/versions of the libraries
outputIdentifier: output as unknown as string,
// roleIdentifier: roleIdentifier,
// TODO: This feels like an odd requirement? Shouldnt this be handled in the engine?
lockingBytecode: await invitationInstance.generateLockingBytecode(output as unknown as string, roleIdentifier),
})
));
// TODO: Clean this up. Suggestions: 1. Convert to bytes above. 2. Have addOuputs accept a hex string. 3. Have addOutputs handling the lockscript generation
await invitationInstance.addOutputs(outputsToAdd.map((output) => ({
outputIdentifier: output.outputIdentifier,
// roleIdentifier: output.roleIdentifier,
lockingBytecode: new Uint8Array(Buffer.from(output.lockingBytecode, 'hex')),
})));
await invitationInstance.addOutputs(outputsToAdd);
inv = invitationInstance.data;
}