diff --git a/src/factories/data.ts b/src/factories/data.ts index 43f6bcda..46333cff 100644 --- a/src/factories/data.ts +++ b/src/factories/data.ts @@ -27,7 +27,7 @@ export async function dataFactory(runId: string, callback: DataCallback) { // todo: need a global way of stopping this when the graph is stopped function stop(): void { - clearInterval(interval) + clearTimeout(interval) } return { diff --git a/src/factories/eventData.ts b/src/factories/eventData.ts index 536656b4..69d05ae3 100644 --- a/src/factories/eventData.ts +++ b/src/factories/eventData.ts @@ -1,5 +1,4 @@ import { MaybeRefOrGetter, toValue } from 'vue' -import { getIntervalForDataSize } from '@/factories/data' import { RunGraphEvent, RunGraphFetchEventsOptions } from '@/models' import { waitForConfig } from '@/objects/config' import { waitForRunData } from '@/objects/nodes' @@ -28,13 +27,13 @@ export async function eventDataFactory( } if (!runGraphData.end_time) { - interval = setTimeout(() => start(), getIntervalForDataSize(runGraphData)) + interval = setTimeout(() => start(), config.fetchEventsInterval) } } // todo: need a global way of stopping this when the graph is stopped function stop(): void { - clearInterval(interval) + clearTimeout(interval) } return { diff --git a/src/models/RunGraph.ts b/src/models/RunGraph.ts index 31bbf598..1e3a169f 100644 --- a/src/models/RunGraph.ts +++ b/src/models/RunGraph.ts @@ -123,6 +123,7 @@ export type RunGraphConfig = { runId: string, fetch: RunGraphFetch, fetchEvents?: RunGraphFetchEvents, + fetchEventsInterval?: number, animationDuration?: number, styles?: RunGraphStyles, disableAnimationsThreshold?: number, diff --git a/src/objects/config.ts b/src/objects/config.ts index a985989a..19fdf475 100644 --- a/src/objects/config.ts +++ b/src/objects/config.ts @@ -11,6 +11,7 @@ const defaults: Omit = { disableAnimationsThreshold: 500, disableEdgesThreshold: 500, fetchEvents: () => [], + fetchEventsInterval: 30000, styles: { colorMode: 'dark', rowGap: 24,