sourcebot/packages/web/src/app/[domain]/connections/quickActions.ts
2025-02-12 13:51:44 -08:00

82 lines
2 KiB
TypeScript

import { GithubConnectionConfig } from "@sourcebot/schemas/v3/github.type"
import { GitLabConnectionConfig } from "@sourcebot/schemas/v3/gitlab.type";
import { QuickAction } from "./components/configEditor";
export const githubQuickActions: QuickAction<GithubConnectionConfig>[] = [
{
fn: (previous: GithubConnectionConfig) => ({
...previous,
orgs: [
...(previous.orgs ?? []),
""
]
}),
name: "Add an organization",
},
{
fn: (previous: GithubConnectionConfig) => ({
...previous,
url: previous.url ?? "",
}),
name: "Set a custom url",
},
{
fn: (previous: GithubConnectionConfig) => ({
...previous,
repos: [
...(previous.repos ?? []),
""
]
}),
name: "Add a repo",
},
{
fn: (previous: GithubConnectionConfig) => ({
...previous,
token: previous.token ?? {
secret: "",
},
}),
name: "Add a secret",
}
];
export const gitlabQuickActions: QuickAction<GitLabConnectionConfig>[] = [
{
fn: (previous: GitLabConnectionConfig) => ({
...previous,
groups: [
...previous.groups ?? [],
""
]
}),
name: "Add a group",
},
{
fn: (previous: GitLabConnectionConfig) => ({
...previous,
url: previous.url ?? "",
}),
name: "Set a custom url",
},
{
fn: (previous: GitLabConnectionConfig) => ({
...previous,
token: previous.token ?? {
secret: "",
},
}),
name: "Add a secret",
},
{
fn: (previous: GitLabConnectionConfig) => ({
...previous,
projects: [
...previous.projects ?? [],
""
]
}),
name: "Add a project",
}
]