(
url: string,
)
| 2418 | ); |
| 2419 | |
| 2420 | const integrationsDetect = ( |
| 2421 | url: string, |
| 2422 | ): Effect.Effect<readonly IntegrationDetectionResult[], StorageFailure> => |
| 2423 | Effect.gen(function* () { |
| 2424 | const results: IntegrationDetectionResult[] = []; |
| 2425 | for (const runtime of runtimes.values()) { |
| 2426 | if (!runtime.plugin.detect) continue; |
| 2427 | const result = yield* runtime.plugin |
| 2428 | .detect({ ctx: runtime.ctx, url }) |
| 2429 | .pipe( |
| 2430 | Effect.mapError((cause) => pluginStorageFailure(runtime.plugin.id, "detect", cause)), |
| 2431 | ); |
| 2432 | if (result) results.push(result); |
| 2433 | } |
| 2434 | return results; |
| 2435 | }); |
| 2436 | |
| 2437 | // ------------------------------------------------------------------ |
| 2438 | // Health checks: dispatch to the owning plugin's hooks. |
no test coverage detected