()
| 179 | |
| 180 | let isMounted = true; |
| 181 | const refreshOpenFiles = async () => { |
| 182 | if (!isMounted) return; |
| 183 | |
| 184 | const openFiles = await ideMessenger.ide.getOpenFiles(); |
| 185 | const workspaceDirs = await ideMessenger.ide.getWorkspaceDirs(); |
| 186 | const withUniquePaths = getShortestUniqueRelativeUriPaths( |
| 187 | openFiles, |
| 188 | workspaceDirs, |
| 189 | ); |
| 190 | const openFileItems = withUniquePaths.map((file) => ({ |
| 191 | id: file.uri, |
| 192 | title: getUriPathBasename(file.uri), |
| 193 | description: file.uniquePath, |
| 194 | providerTitle: "file", |
| 195 | })); |
| 196 | |
| 197 | if (hasOpenFilesChanged(openFileItems, lastOpenFilesRef.current)) { |
| 198 | setFallbackResults((prev) => ({ |
| 199 | ...prev, |
| 200 | file: deduplicateArray( |
| 201 | [...openFileItems, ...(prev.file ?? [])], |
| 202 | (a, b) => a.id === b.id, |
| 203 | ), |
| 204 | })); |
| 205 | } |
| 206 | lastOpenFilesRef.current = openFileItems; |
| 207 | }; |
| 208 | |
| 209 | const interval = setInterval(refreshOpenFiles, 2000); |
| 210 |
no test coverage detected