@suiware/kit
Version:
Opinionated React components and hooks for building Sui dApps.
51 lines (48 loc) • 1.18 kB
JavaScript
;
var dappKit = require('@mysten/dapp-kit');
// src/hooks/useTransact.tsx
var useTransact = ({
onBeforeStart,
onSuccess,
onError,
waitForTransactionOptions
} = {}) => {
const client = dappKit.useSuiClient();
const { mutate: signAndExecute } = dappKit.useSignAndExecuteTransaction();
const transact = (tx) => {
if (onBeforeStart != null) {
onBeforeStart();
}
signAndExecute(
{
transaction: tx
},
{
onError: (e) => {
if (onError != null) {
onError(e);
}
},
onSuccess: (data) => {
client.waitForTransaction({
digest: data.digest,
options: waitForTransactionOptions
}).then((response) => {
if (onSuccess != null) {
onSuccess(data, response);
}
}).catch((e) => {
if (onError != null) {
onError(e);
}
});
}
}
);
};
return { transact };
};
var useTransact_default = useTransact;
module.exports = useTransact_default;
//# sourceMappingURL=useTransact.js.map
//# sourceMappingURL=useTransact.js.map