This commit is contained in:
2025-11-23 13:22:00 +01:00
parent 85afff2c19
commit 71f9330c67
6 changed files with 92 additions and 12 deletions
+16 -1
View File
@@ -1,5 +1,5 @@
import React, { useContext, useEffect, useMemo, useReducer } from 'react';
import { clearAuthToken, setAuthToken } from '../lib/apiClient';
import { clearAuthToken, setAuthToken, setAuthRefreshHandlers } from '../lib/apiClient';
import { ApiProvider } from './ApiContext';
import { listTenants } from '../lib/apiClient';
@@ -209,6 +209,21 @@ const AppStateProvider: React.FC<{ children?: React.ReactNode }> = ({ children }
}
}, [state.tenant]);
useEffect(() => {
setAuthRefreshHandlers({
onRefreshSuccess: (token, payload) => {
dispatch({ type: 'TOKEN_REFRESH_SUCCESS', token, tenant: payload?.tenant ?? null });
},
onRefreshFailure: (error) => {
dispatch({ type: 'TOKEN_REFRESH_FAILURE', error: (error as Error)?.message || null });
},
});
return () => {
setAuthRefreshHandlers({});
};
}, [dispatch]);
useEffect(() => {
let abort = false;
+1 -1
View File
@@ -104,7 +104,7 @@ const useDocumentPreview = ({
const existing = documentLinks.get(documentId);
const now = Date.now();
const expiresAt = Number.isFinite(existing?.expiresAt) ? Number(existing?.expiresAt) : null;
const expiresAt = existing?.expiresAt ?? null;
if (!force && existing && (!expiresAt || expiresAt > now)) {
return existing;
}