change attach download

This commit is contained in:
PhilReact 2024-12-19 05:51:23 +02:00
parent 98785e0571
commit 9af3def127
3 changed files with 30 additions and 6 deletions

View File

@ -1567,7 +1567,7 @@ function App() {
showTutorial('qapps', true)
} else {
showTutorial('create-account', true)
showTutorial('getting-started', true)
}
}} >

View File

@ -1,10 +1,11 @@
import React, { useCallback } from 'react';
import React, { useCallback, useRef } from 'react';
import { useRecoilState } from 'recoil';
import { resourceDownloadControllerAtom } from '../atoms/global';
import { getBaseApiReact } from '../App';
export const useFetchResources = () => {
const [resources, setResources] = useRecoilState(resourceDownloadControllerAtom);
const intervalId = useRef(null)
const downloadResource = useCallback(({ service, name, identifier }, build) => {
setResources((prev) => ({
@ -21,9 +22,11 @@ export const useFetchResources = () => {
let isCalling = false;
let percentLoaded = 0;
let timer = 24;
let tries = 26;
let calledFirstTime = false
const intervalId = setInterval(async () => {
const callFunction = async ()=> {
console.log('calledFirstTime', calledFirstTime)
if (isCalling) return;
isCalling = true;
@ -40,6 +43,22 @@ export const useFetchResources = () => {
},
});
res = await resCall.json()
if(tries === 5 && intervalId?.current){
clearInterval(intervalId?.current)
setResources((prev) => ({
...prev,
[`${service}-${name}-${identifier}`]: {
...(prev[`${service}-${name}-${identifier}`] || {}),
status: {
...res,
status: 'FAILED_TO_DOWNLOAD',
},
},
}));
return
}
tries = tries + 1
}
@ -103,7 +122,7 @@ export const useFetchResources = () => {
// Check if progress is 100% and clear interval if true
if (res?.status === 'READY') {
clearInterval(intervalId);
clearInterval(intervalId.current);
// Update Recoil state for completion
setResources((prev) => ({
@ -114,7 +133,12 @@ export const useFetchResources = () => {
},
}));
}
}, !calledFirstTime ? 100 :5000);
}
callFunction()
intervalId.current = setInterval(async () => {
callFunction()
}, 5000);
} catch (error) {
console.error('Error during resource fetch:', error);
}

View File

@ -271,7 +271,7 @@ export const AttachmentCard = ({
</>
)}
{resourceDetails && resourceDetails?.status?.status !== 'READY' && (
{resourceDetails && resourceDetails?.status?.status !== 'READY' && resourceDetails?.status?.status !== 'FAILED_TO_DOWNLOAD' && (
<>
<CircularProgress sx={{
color: 'white'