(
url: string,
)
| 2070 | ); |
| 2071 | |
| 2072 | const integrationsDetect = ( |
| 2073 | url: string, |
| 2074 | ): Effect.Effect<readonly IntegrationDetectionResult[], StorageFailure> => |
| 2075 | Effect.gen(function* () { |
| 2076 | const results: IntegrationDetectionResult[] = []; |
| 2077 | for (const runtime of runtimes.values()) { |
| 2078 | if (!runtime.plugin.detect) continue; |
| 2079 | const result = yield* runtime.plugin |
| 2080 | .detect({ ctx: runtime.ctx, url }) |
| 2081 | .pipe( |
| 2082 | Effect.mapError((cause) => pluginStorageFailure(runtime.plugin.id, "detect", cause)), |
| 2083 | ); |
| 2084 | if (result) results.push(result); |
| 2085 | } |
| 2086 | return results; |
| 2087 | }); |
| 2088 | |
| 2089 | // ------------------------------------------------------------------ |
| 2090 | // Health checks: dispatch to the owning plugin's hooks. |
no test coverage detected