Skip to content
Source
Sign inSign up
Open History to see the last commit

driver.ts

25 lines792 Bytes

1import {
2 defineSourceControlDriver,
3 withOwnServices,
4} from "@t3tools/source-control-core/server/driver";
5import * as Effect from "effect/Effect";
6​
7import { definition } from "../shared/definition.ts";
8​
9import * as ForgejoCli from "./ForgejoCli.ts";
10import * as ForgejoPullRequestProvider from "./ForgejoPullRequestProvider.ts";
11import * as ForgejoSourceControlProvider from "./ForgejoSourceControlProvider.ts";
12​
13const services = ForgejoCli.layer;
14​
15const makeInstance = Effect.all({
16 sourceControl: ForgejoSourceControlProvider.make,
17 discovery: ForgejoSourceControlProvider.makeDiscovery,
18 pullRequests: ForgejoPullRequestProvider.make,
19});
20​
21export const driver = defineSourceControlDriver({
22 kind: definition.kind,
23 definition,
24 make: withOwnServices(makeInstance, services),
25});