| 1 | import { SourceControlProviderKind } from "@t3tools/contracts"; |
| 2 | /** |
| 3 | * The GitHub driver: repository operations and discovery through `gh` and git, and pull requests |
| 4 | * through the GitHub REST and GraphQL APIs. |
| 5 | * |
| 6 | * @module source-control-github/server/driver |
| 7 | */ |
| 8 | import { defineSourceControlDriver } from "@t3tools/source-control-core/server/driver"; |
| 9 | import * as Effect from "effect/Effect"; |
| 10 | |
| 11 | import * as GitHubPullRequestProvider from "./GitHubPullRequestProvider.ts"; |
| 12 | import * as GitHubSourceControlProvider from "./GitHubSourceControlProvider.ts"; |
| 13 | |
| 14 | export const driver = defineSourceControlDriver({ |
| 15 | kind: SourceControlProviderKind.make("github"), |
| 16 | make: Effect.all({ |
| 17 | sourceControl: GitHubSourceControlProvider.make, |
| 18 | discovery: GitHubSourceControlProvider.makeDiscovery, |
| 19 | pullRequests: GitHubPullRequestProvider.make, |
| 20 | }), |
| 21 | }); |