Skip to content

Commit

Permalink
Get config on burn
Browse files Browse the repository at this point in the history
  • Loading branch information
KuznetsovNikita committed May 15, 2024
1 parent 2d30f54 commit dd4b8c2
Showing 1 changed file with 19 additions and 16 deletions.
35 changes: 19 additions & 16 deletions packages/uikit/src/desktop-pages/notcoin/NotcoinPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -188,27 +188,29 @@ const sendNftMultiTransfer = async (
return true;
};

const useBurnMutation = (config: TonendpointConfig) => {
const useBurnMutation = () => {
const wallet = useWalletContext();
const { api } = useAppContext();

return useMutation<boolean, Error, { signer: Signer | null; chunk: NftItem[] }>(
async ({ signer, chunk }) => {
if (signer === null) {
throw new Error('Unable to sign transaction.');
}
return useMutation<
boolean,
Error,
{ signer: Signer | null; chunk: NftItem[]; config: TonendpointConfig }
>(async ({ signer, chunk, config }) => {
if (signer === null) {
throw new Error('Unable to sign transaction.');
}

const seqno = await getWalletSeqNo(api, wallet.active.rawAddress);
const seqno = await getWalletSeqNo(api, wallet.active.rawAddress);

console.log('send', chunk);
console.log('send', chunk);

await sendNftMultiTransfer(api, wallet, chunk, config, signer as CellSigner);
await sendNftMultiTransfer(api, wallet, chunk, config, signer as CellSigner);

await confirmWalletSeqNo(wallet.active.rawAddress, api, seqno);
await confirmWalletSeqNo(wallet.active.rawAddress, api, seqno);

return true;
}
);
return true;
});
};

const NotFound = styled.div`
Expand Down Expand Up @@ -258,13 +260,13 @@ const BodyCenter = styled(Body2)`
`;

const BurnBlock: FC<{ data: NftItem[] | undefined }> = ({ data }) => {
const { api, config } = useAppContext();
const { api, tonendpoint } = useAppContext();

const [burning, setBurning] = useState(false);
const [ok, setIsOk] = useState(false);
const [left, setLeft] = useState(0);

const mutation = useBurnMutation(config);
const mutation = useBurnMutation();
const toast = useToast();

const { mutateAsync: checkTouchId } = useCheckTouchId();
Expand All @@ -283,6 +285,7 @@ const BurnBlock: FC<{ data: NftItem[] | undefined }> = ({ data }) => {
}, []);

const onBurn = async () => {
const config = await tonendpoint.boot();
const [allow, time] = await checkBurnDate(api, config);
if (!allow) {
toast(
Expand All @@ -309,7 +312,7 @@ const BurnBlock: FC<{ data: NftItem[] | undefined }> = ({ data }) => {
const chunk = data.slice(i, i + chunkSize);
try {
if (process.current) {
await mutation.mutateAsync({ signer, chunk });
await mutation.mutateAsync({ signer, chunk, config });
setLeft(l => l - chunkSize);
}
} catch (e) {
Expand Down

0 comments on commit dd4b8c2

Please sign in to comment.