Browse Source

tshield now is full implemented

gdias 3 tuần trước cách đây
mục cha
commit
fb5ad41c1c
1 tập tin đã thay đổi với 19 bổ sung33 xóa
  1. 19 33
      src/routes/+page.svelte

+ 19 - 33
src/routes/+page.svelte

@@ -13,10 +13,9 @@
   let success = '';
   let successTimeout;
 
-  const kycStatusEndpoint = `${apiUrl}/company/user/kyc/status`;
+  const kycStatusEndpoint = `${apiUrl}/user/kyc/status`;
   const KYC_POLL_INTERVAL_MS = 10_000;
-  const LOGIN_KYC_PENDING_KEY = 'login_kyc_pending_state';
-  const LOGIN_KYC_PENDING_TTL_MS = 1000 * 60 * 30;
+  const LOGIN_KYC_PENDING_KEY = 'login_kyc_pending_number_token';
 
   let kycMode = null;
   let kycLink = '';
@@ -39,30 +38,26 @@
     }, 4000);
   }
 
-  function savePendingState(state) {
+  function savePendingNumberToken(token) {
     if (!browser) return;
     try {
-      const payload = { ...state, savedAt: Date.now() };
-      localStorage.setItem(LOGIN_KYC_PENDING_KEY, JSON.stringify(payload));
+      if (!token) {
+        localStorage.removeItem(LOGIN_KYC_PENDING_KEY);
+        return;
+      }
+      localStorage.setItem(LOGIN_KYC_PENDING_KEY, token);
     } catch (err) {
       console.warn('Não foi possível salvar o estado de pendência de KYC:', err);
     }
   }
 
-  function loadPendingState() {
-    if (!browser) return null;
+  function loadPendingNumberToken() {
+    if (!browser) return '';
     try {
-      const raw = localStorage.getItem(LOGIN_KYC_PENDING_KEY);
-      if (!raw) return null;
-      const data = JSON.parse(raw);
-      if (data?.savedAt && Date.now() - data.savedAt > LOGIN_KYC_PENDING_TTL_MS) {
-        localStorage.removeItem(LOGIN_KYC_PENDING_KEY);
-        return null;
-      }
-      return data;
+      return localStorage.getItem(LOGIN_KYC_PENDING_KEY) ?? '';
     } catch (err) {
       console.warn('Não foi possível restaurar o estado de pendência de KYC:', err);
-      return null;
+      return '';
     }
   }
 
@@ -244,12 +239,7 @@
     error = '';
     success = '';
     if (persist) {
-      savePendingState({
-        mode: 'PF_PENDING',
-        link,
-        numberToken,
-        message: kycStatusMessage
-      });
+      savePendingNumberToken(numberToken);
     }
     await renderQrCode(link);
     startKycPolling();
@@ -314,16 +304,12 @@
       console.warn('Falha ao recuperar mensagem de sucesso:', err);
     }
 
-    const restorePendingState = async () => {
-      const pending = loadPendingState();
-      if (!pending) return;
-      if (pending.mode === 'PF_PENDING' && pending.link && pending.numberToken) {
-        await enterPfPending(pending.link, pending.numberToken, pending.message, { persist: false });
-      } else if (pending.mode === 'PJ_PENDING') {
-        enterPjPending(pending.message, { persist: false });
-      }
-    };
-    void restorePendingState();
+    const pendingToken = loadPendingNumberToken();
+    if (pendingToken) {
+      kycNumberToken = pendingToken;
+      kycStatusMessage = 'KYC pendente. Aguarde a validação ou refaça o login para gerar um novo link.';
+      startKycPolling();
+    }
 
     return () => {
       if (browser) window.removeEventListener('storage', onStorage);