|
- import * as codeCore from '@modal/code-core';
-
- export interface GitService {
- createRepo(options: codeCore.git.CreateRepoData, user?: codeCore.common.User): Promise<codeCore.git.Repo>;
- deleteRepo(repoId: codeCore.git.Repo['id'], user?: codeCore.common.User): Promise<void>
- }
-
- export class GitServiceImpl implements GitService {
- private readonly coreGitService: codeCore.git.GitService;
-
- constructor() {
- this.coreGitService = new codeCore.git.GitServiceImpl();
- }
-
- async createRepo(options: codeCore.git.CreateRepoData, user?: codeCore.common.User): Promise<codeCore.git.Repo> {
- if (user) {
- return this.coreGitService.create(options, user);
- }
- throw new Error('Unauthorized');
- }
-
- async deleteRepo(repoId: codeCore.git.Repo['id'], user?: codeCore.common.User): Promise<void> {
- if (user) {
- await this.coreGitService.delete(repoId, user);
- }
- throw new Error('Unauthorized');
- }
- }
|