(filePath)
| 417 | } |
| 418 | |
| 419 | function schedulePluginUpdate(filePath) { |
| 420 | // Extract top-level plugin dir name from path |
| 421 | const relative = path.relative(PLUGINS, filePath); |
| 422 | const pluginDir = relative.split(path.sep)[0]; |
| 423 | if (!pluginDir || pluginDir === "tsconfig.tsbuildinfo") return; |
| 424 | |
| 425 | pluginUpdates.add(pluginDir); |
| 426 | |
| 427 | if (pluginUpdateTimer) clearTimeout(pluginUpdateTimer); |
| 428 | pluginUpdateTimer = setTimeout(applyPluginUpdates, 2000); |
| 429 | } |
| 430 | |
| 431 | async function applyPluginUpdates() { |
| 432 | if (pluginUpdates.size === 0) return; |
no test coverage detected