Skip to content
Snippets Groups Projects
Commit a13b340b authored by Remi  PLANEL's avatar Remi PLANEL
Browse files

add loading indicator for analaysis

parent eb80d1fe
No related branches found
No related tags found
No related merge requests found
Pipeline #130795 passed
<template>
<div>
<NuxtLoadingIndicator />
<NuxtLayout>
<NuxtPage />
</NuxtLayout>
......
......@@ -12,11 +12,11 @@ const sanitizedAnalyses = computed(() => {
const createTimeDate = new Date(a.create_time)
return {
...a,
create_time: createTimeDate.toLocaleString()
create_time: createTimeDate.toLocaleString(),
}
}) ?? [] : []
})
const analysisPendings = ref<Record<string, boolean>>({"1": false})
function getResultArchiveUrl(analysisId: number) {
return joinURL(runtimeConfig.public.dfApiPrefix, `/analysis/${analysisId}/results-archive`)
}
......@@ -62,8 +62,16 @@ function cancelEdit() {
toEdit.value = null
newTitle.value = null
}
async function goToAnalysis(analysisId: number) {
await navigateTo(`/analyses/${analysisId}/systems`)
const analysisPendingsVal = toValue(analysisPendings)
try {
analysisPendingsVal[analysisId] = true
await navigateTo(`/analyses/${analysisId}/systems`)
} catch (error) {
throw createError("Unable to get analysis data")
}
}
const options = computed(() => {
return {
......@@ -81,7 +89,6 @@ const { data, refresh, pending, error } = await useAPI<Analysis[]>('/analysis/',
usePolling(options)
if (error.value) {
console.log(error.value)
const toValError = toValue(error)
if (toValError?.data) {
......@@ -92,7 +99,6 @@ if (error.value) {
data: toValError?.data ?? ""
})
} else {
console.log(error.value)
throw createError("Unable to get the analysis")
}
......@@ -181,7 +187,7 @@ if (sessionError.value) {
</v-list>
</v-menu>
<v-divider vertical inset class="mx-1"></v-divider>
<v-btn variant="text" append-icon="md:navigate_next" @click="goToAnalysis(analysis.raw.id)">Results
<v-btn variant="text" append-icon="md:navigate_next" :loading="analysisPendings?.[analysis.raw.id] ?? false" @click="goToAnalysis(analysis.raw.id)">Results
</v-btn>
</div>
</template>
......
......@@ -9,7 +9,6 @@ export function useAnalysisPolling(options: MaybeRef<AnalysisPollingOptions> = {
const { interval, refresh, pending, data } = toValue(options)
const { pause, resume, isActive } = useIntervalFn(() => {
console.log("je suis dans le polling")
if (!pending.value) {
console.log(
`pending ${pending.value
......@@ -25,7 +24,6 @@ export function useAnalysisPolling(options: MaybeRef<AnalysisPollingOptions> = {
watchEffect(() => {
if (data.value?.status !== undefined) {
console.log(data.value.status)
if (terminalStates.value.has(data.value.status) && pause != null) {
pause();
}
......
......@@ -5,7 +5,6 @@ export default defineNuxtPlugin(() => {
const $api = $fetch.create({
baseURL: "/dfapi",
async onRequest({ request, options, error }) {
console.log("dans le on request du create")
const { data } = await useFetch("/api/auth", { headers })
const toValToken = toValue(csrfToken)
if (toValToken !== undefined) {
......
......@@ -10,10 +10,6 @@ const sessionExpiryDate = useState('sessionExpiryDate')
export default defineEventHandler(async (event) => {
console.log("je suis dans le point api auth du server nuxt")
const loginUrl = joinURL(
runtimeConfig.serverSideApiBaseUrl,
runtimeConfig.dfApiPrefix,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment