@@ -3,10 +3,10 @@ import {
33 queryOptions ,
44 type QueryObserverResult ,
55} from '@tanstack/svelte-query' ;
6- import type { ResourceName } from '@viamrobotics/sdk' ;
6+ import { MachineConnectionEvent , type ResourceName } from '@viamrobotics/sdk' ;
77import { getContext , setContext } from 'svelte' ;
88import { fromStore , toStore } from 'svelte/store' ;
9- import { useRobotClients } from './robot-clients.svelte' ;
9+ import { useConnectionStatuses , useRobotClients } from './robot-clients.svelte' ;
1010import type { PartID } from '../part' ;
1111import { useMachineStatuses } from './machine-status.svelte' ;
1212
@@ -72,6 +72,7 @@ const sortResourceNames = (resourceNames: ResourceName[]) => {
7272} ;
7373
7474export const provideResourceNamesContext = ( ) => {
75+ const connectionStatuses = useConnectionStatuses ( ) ;
7576 const machineStatuses = useMachineStatuses ( ) ;
7677 const clients = useRobotClients ( ) ;
7778
@@ -124,8 +125,15 @@ export const provideResourceNamesContext = () => {
124125 */
125126 $effect ( ( ) => {
126127 for ( const partID of partIDs ) {
128+ const status = connectionStatuses . current [ partID ] ;
127129 const query = queries . current [ partID ] ;
128- if ( query ?. isFetched && ! query . isLoading && query . data ?. length === 0 ) {
130+ const connected = status === MachineConnectionEvent . CONNECTED ;
131+ if (
132+ connected &&
133+ query ?. isFetched &&
134+ ! query . isLoading &&
135+ query . data ?. length === 0
136+ ) {
129137 query . refetch ( ) ;
130138 }
131139 }
0 commit comments