Skip to content

Commit 802e568

Browse files
authored
fix: loading import account sismo connect flow (#59)
1 parent 36d0075 commit 802e568

3 files changed

Lines changed: 12 additions & 10 deletions

File tree

src/hooks/vault/index.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,6 @@ export default function SismoVaultProvider({
188188
console.log("No vault synchronizer");
189189
return;
190190
}
191-
console.log("Sync vaults");
192191
vaultSynchronizer
193192
.sync(vaultState.connectedOwner, vaultState.connectedOwner)
194193
.then(async (res) => {
@@ -216,9 +215,9 @@ export default function SismoVaultProvider({
216215
return await vaultClient.create();
217216
};
218217

219-
const getVaultSecret = async (): Promise<string> => {
218+
const getVaultSecret = useCallback(async (): Promise<string> => {
220219
return await vaultClient.getVaultSecret();
221-
};
220+
}, [vaultClient]);
222221

223222
const getVaultId = async ({
224223
appId,

src/pages/Connect/Flow/DataRequests/index.tsx

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ export default function DataRequests({
9999
const [loadingEligible, setLoadingEligible] = useState(true);
100100
const { getClaimRequestEligibilities, getAuthRequestEligibilities } =
101101
useSismo();
102-
const vault = useVault();
102+
const { importedAccounts, getVaultSecret } = useVault();
103103

104104
/* ************************************************************* */
105105
/* ********************* SET DEFAULT VALUE ********************* */
@@ -203,7 +203,7 @@ export default function DataRequests({
203203
return;
204204
}
205205

206-
if (!vault) return;
206+
if (!importedAccounts || !getVaultSecret) return;
207207
if (claims && !requestGroupsMetadata) return;
208208

209209
const getEligibilities = async () => {
@@ -214,7 +214,7 @@ export default function DataRequests({
214214
if (auths?.length) {
215215
const _authRequestEligibilities = await getAuthRequestEligibilities(
216216
sismoConnectRequest,
217-
vault?.importedAccounts || []
217+
importedAccounts || []
218218
);
219219
setAuthRequestEligibilities(_authRequestEligibilities);
220220
_selectedSismoConnectRequest = getSelectedSismoConnectRequest({
@@ -224,14 +224,14 @@ export default function DataRequests({
224224
onSelectedSismoRequest(_selectedSismoConnectRequest);
225225
}
226226
if (claims?.length) {
227-
const vaultSecret = await vault.getVaultSecret();
227+
const vaultSecret = await getVaultSecret();
228228
const groupsMetadata = requestGroupsMetadata.map(
229229
(el) => el.groupMetadata
230230
);
231231
const identifiers = await getAllVaultIdentifiers(
232232
groupsMetadata,
233233
vaultSecret,
234-
vault.importedAccounts
234+
importedAccounts
235235
);
236236
const _claimRequestEligibilities = await getClaimRequestEligibilities(
237237
sismoConnectRequest,
@@ -253,7 +253,8 @@ export default function DataRequests({
253253
};
254254
getEligibilities();
255255
}, [
256-
vault,
256+
importedAccounts,
257+
getVaultSecret,
257258
getClaimRequestEligibilities,
258259
getAuthRequestEligibilities,
259260
requestGroupsMetadata,

src/pages/Connect/Flow/index.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import DataRequests from "./DataRequests";
2121
import ProofModal from "./components/ProofModal";
2222
import { SignatureRequest } from "./components/SignatureRequest";
2323
import SignInButton from "../../../components/SignInButton";
24+
import { useImportAccount } from "../../Modals/ImportAccount/provider";
2425

2526
const Container = styled.div`
2627
position: relative;
@@ -169,6 +170,7 @@ export default function ConnectFlow({
169170
const [isEligible, setIsEligible] = useState(false);
170171
const [selectedSismoConnectRequest, setSelectedSismoConnectRequest] =
171172
useState<SelectedSismoConnectRequest | null>(null);
173+
const importAccount = useImportAccount();
172174

173175
const { getRegistryTreeRoot, generateResponse } = useSismo();
174176
const vault = useVault();
@@ -319,7 +321,7 @@ export default function ConnectFlow({
319321
style={{ width: 252 }}
320322
onClick={() => generate()}
321323
loading={loadingProof}
322-
disabled={!isEligible}
324+
disabled={!isEligible || Boolean(importAccount.importing)}
323325
>
324326
Generate ZK proof
325327
</Button>

0 commit comments

Comments
 (0)