| 1 | import { SourceControlProviderKind } from "@t3tools/contracts"; |
| 2 | /** |
| 3 | * The GitCafe driver: repository operations and discovery through `cafe` and git, and pull |
| 4 | * requests through GitCafe's REST API on git.cafe and staging.git.cafe. |
| 5 | * |
| 6 | * @module source-control-gitcafe/server/driver |
| 7 | */ |
| 8 | import { defineSourceControlDriver } from "@t3tools/source-control-core/server/driver"; |
| 9 | import * as Effect from "effect/Effect"; |
| 10 | |
| 11 | import * as GitCafePullRequestProvider from "./GitCafePullRequestProvider.ts"; |
| 12 | import * as GitCafeSourceControlProvider from "./GitCafeSourceControlProvider.ts"; |
| 13 | |
| 14 | export const driver = defineSourceControlDriver({ |
| 15 | kind: SourceControlProviderKind.make("gitcafe"), |
| 16 | make: Effect.all({ |
| 17 | sourceControl: GitCafeSourceControlProvider.make, |
| 18 | discovery: GitCafeSourceControlProvider.makeDiscovery, |
| 19 | pullRequests: GitCafePullRequestProvider.make, |
| 20 | }), |
| 21 | }); |