From 186347c0c421eb15687016214b806407a111a55d Mon Sep 17 00:00:00 2001 From: siandreev Date: Tue, 16 Jul 2024 14:57:10 +0200 Subject: [PATCH] fix: rename wallet while creating or importing --- packages/uikit/src/components/create/WalletName.tsx | 13 +++++++++++-- packages/uikit/src/pages/import/Create.tsx | 13 +++++++++++-- packages/uikit/src/pages/import/Import.tsx | 13 +++++++++++-- 3 files changed, 33 insertions(+), 6 deletions(-) diff --git a/packages/uikit/src/components/create/WalletName.tsx b/packages/uikit/src/components/create/WalletName.tsx index a134c1d45..708c0db45 100644 --- a/packages/uikit/src/components/create/WalletName.tsx +++ b/packages/uikit/src/components/create/WalletName.tsx @@ -24,7 +24,8 @@ export const UpdateWalletName: FC<{ walletEmoji: string; name?: string; submitHandler: ({ name, emoji }: { name: string; emoji: string }) => void; -}> = ({ walletEmoji, submitHandler, name: nameProp }) => { + isLoading?: boolean; +}> = ({ walletEmoji, submitHandler, name: nameProp, isLoading }) => { const { t } = useTranslation(); const ref = useRef(null); @@ -67,7 +68,15 @@ export const UpdateWalletName: FC<{ /> - diff --git a/packages/uikit/src/pages/import/Create.tsx b/packages/uikit/src/pages/import/Create.tsx index c2c17f12b..12ba3eb4b 100644 --- a/packages/uikit/src/pages/import/Create.tsx +++ b/packages/uikit/src/pages/import/Create.tsx @@ -16,7 +16,11 @@ import { useTranslation } from '../../hooks/translation'; import { FinalView } from './Password'; import { Subscribe } from './Subscribe'; import { StandardTonWalletState } from '@tonkeeper/core/dist/entries/wallet'; -import { useCreateStandardTonWalletsByMnemonic, useWalletsState } from '../../state/wallet'; +import { + useCreateStandardTonWalletsByMnemonic, + useMutateRenameWallet, + useWalletsState +} from '../../state/wallet'; const Create = () => { const sdk = useAppSdk(); @@ -27,6 +31,7 @@ const Create = () => { isLoading: isCreateWalletLoading, reset: resetCreateWallets } = useCreateStandardTonWalletsByMnemonic(); + const { mutateAsync: renameWallet, isLoading: renameLoading } = useMutateRenameWallet(); const existingWallets = useWalletsState(); const [mnemonic, setMnemonic] = useState(); @@ -157,9 +162,13 @@ const Create = () => { ...w!, ...val })); - setPassName(true); + renameWallet({ + id: wallet.id, + ...val + }).then(() => setPassName(true)); }} walletEmoji={wallet.emoji} + isLoading={renameLoading} /> ); } diff --git a/packages/uikit/src/pages/import/Import.tsx b/packages/uikit/src/pages/import/Import.tsx index 5157f32ee..8232d9fb0 100644 --- a/packages/uikit/src/pages/import/Import.tsx +++ b/packages/uikit/src/pages/import/Import.tsx @@ -5,7 +5,11 @@ import { ImportWords } from '../../components/create/Words'; import { useAppSdk } from '../../hooks/appSdk'; import { FinalView } from './Password'; import { Subscribe } from './Subscribe'; -import { useCreateStandardTonWalletsByMnemonic, useWalletsState } from '../../state/wallet'; +import { + useCreateStandardTonWalletsByMnemonic, + useMutateRenameWallet, + useWalletsState +} from '../../state/wallet'; import { StandardTonWalletState, WalletVersion } from '@tonkeeper/core/dist/entries/wallet'; import { ChoseWalletVersions } from '../../components/create/ChoseWalletVersions'; @@ -22,6 +26,7 @@ const Import = () => { const [passName, setPassName] = useState(false); const [passNotifications, setPassNotification] = useState(false); const existingWallets = useWalletsState(); + const { mutateAsync: renameWallet, isLoading: renameLoading } = useMutateRenameWallet(); const { mutateAsync: createWalletsAsync, @@ -89,9 +94,13 @@ const Import = () => { name={wallets[0].name} submitHandler={val => { setWallets(w => [{ ...w![0], ...val }]); - setPassName(true); + renameWallet({ + id: wallets![0].id, + ...val + }).then(() => setPassName(true)); }} walletEmoji={wallets[0].emoji} + isLoading={renameLoading} /> ); }