20 lines
890 B
TypeScript
20 lines
890 B
TypeScript
import { Result } from "../../core/helper/result";
|
|
import { DatabaseModel } from "../../core/model/database_model";
|
|
import { ITriggerModel } from "../../core/model/trigger_model";
|
|
import { HttpMethod, CoreHttpRepository } from "../../core/repository/http_repository";
|
|
import { UUID } from "../all_projects/data/project_repository";
|
|
import { ICreateProjectViewModel } from "./project_model";
|
|
|
|
export interface PipelineModel extends DatabaseModel {
|
|
process: any;
|
|
trigger: ITriggerModel;
|
|
}
|
|
|
|
export class CreateProjectRepository extends CoreHttpRepository {
|
|
async saveProject(model: ICreateProjectViewModel): Promise<Result<Error, UUID>> {
|
|
return await this._jsonRequest<UUID>(HttpMethod.POST, "/projects", model);
|
|
}
|
|
async setProjectRootFile(file: File, projectId: string) {
|
|
return await this._formDataRequest(HttpMethod.POST, `/projects/upload?id=${projectId}`, file);
|
|
}
|
|
}
|