Skip to main content

useSetAccountNameByAddress

Hook to set the name for an account by its address.

Usage

import { useAccounts, useSetAccountNameByAddress } from '@kibisis/katavault-react';

function Accounts() {
const accounts = useAccounts();
const setAccountNameByAddress = useSetAccountNameByAddress();
const handleOnUpdateAccountClick = useCallback((address: string) => () => {
setAccountNameByAddress({
address,
name: 'New name',
}, {
onError: (error) => {
console.error(error);
},
onSuccess: ({ name }) => {
console.log(`updated account ${address} with name ${name}`);
},
});
}, [setAccountNameByAddress]);

return (
<div>
{accounts.map(({ address, name }) => (
<div>
<p>Address: {address}</p>
<p>Name: {name ?? '-'}</p>
<button onClick={handleOnUpdateAccountClick(address)}>Update</button>
</div>
))}
</div>
);
}

Returns

(params: SetAccountNameByAddressParameters, options?: { onError, onSuccess }) => void

The function can be called with callbacks that are invoked on error/success.

onError

(error: BaseError, params: SetAccountNameByAddressParameters) => void | Promimse<void>

This will be invoked if there was an error.

onSuccess

(result: undefined, params: SetAccountNameByAddressParameters) => void | Promimse<void>

This will be invoked if the account update was successful.

See also