| 1 | import { SourceControlProviderKind } from "@t3tools/contracts"; |
| 2 | /** |
| 3 | * The GitLab driver: repository operations, discovery, and merge requests through `glab`. |
| 4 | * |
| 5 | * @module source-control-gitlab/server/driver |
| 6 | */ |
| 7 | import { defineSourceControlDriver } from "@t3tools/source-control-core/server/driver"; |
| 8 | import * as Effect from "effect/Effect"; |
| 9 | |
| 10 | import * as GitLabPullRequestProvider from "./GitLabPullRequestProvider.ts"; |
| 11 | import * as GitLabSourceControlProvider from "./GitLabSourceControlProvider.ts"; |
| 12 | |
| 13 | export const driver = defineSourceControlDriver({ |
| 14 | kind: SourceControlProviderKind.make("gitlab"), |
| 15 | make: Effect.all({ |
| 16 | sourceControl: GitLabSourceControlProvider.make, |
| 17 | discovery: Effect.succeed(GitLabSourceControlProvider.discovery), |
| 18 | pullRequests: GitLabPullRequestProvider.make, |
| 19 | }), |
| 20 | }); |