@effectai/sdk
Version:
Effect Network Javscript/Typescript SDK (for [https://effect.network](https://effect.network))
36 lines • 1.38 kB
JavaScript
import { UInt32 } from "@wharfkit/antelope";
import { SessionNotFoundError } from "../../errors";
import { useEFXContracts } from "../../utils/state";
import { uploadIpfsResource, ipfsCIDToHex } from "../ipfs/uploadIpfsResource";
export const submitTask = async ({ client, reservation, data, }) => {
try {
if (!client.session) {
throw new SessionNotFoundError("Session is required for this method.");
}
const { authorization, transact, actor } = client.session;
const { tasks } = useEFXContracts(client);
const ipfsData = await uploadIpfsResource({ client, data });
const ipfsHex = ipfsCIDToHex(ipfsData);
const response = await transact({
action: {
account: tasks,
name: "submittask",
authorization,
data: {
campaign_id: UInt32.from(reservation.campaign_id),
account_id: UInt32.from(reservation.account_id),
task_idx: UInt32.from(reservation.task_idx),
data: { first: 1, second: ipfsHex },
payer: actor,
sig: null,
},
},
});
return response;
}
catch (error) {
console.error(error);
throw error;
}
};
//# sourceMappingURL=submitTask.js.map