53 lines · 2.1 KB · TypeScript
RawDownload
import * as Schema from "effect/Schema";import { TrimmedNonEmptyString } from "./baseSchemas.ts";import { GitCommandError } from "./git.ts";import { VcsError } from "./vcs.ts"; export const ReviewDiffPreviewInput = Schema.Struct({  cwd: TrimmedNonEmptyString,  baseRef: Schema.optional(TrimmedNonEmptyString),  ignoreWhitespace: Schema.optionalKey(Schema.Boolean),});export type ReviewDiffPreviewInput = typeof ReviewDiffPreviewInput.Type; export const ReviewDiffPreviewSourceKind = Schema.Literals(["working-tree", "branch-range"]);export type ReviewDiffPreviewSourceKind = typeof ReviewDiffPreviewSourceKind.Type; export const ReviewDiffPreviewSource = Schema.Struct({  id: TrimmedNonEmptyString,  kind: ReviewDiffPreviewSourceKind,  title: TrimmedNonEmptyString,  baseRef: Schema.NullOr(TrimmedNonEmptyString),  headRef: Schema.NullOr(TrimmedNonEmptyString),  diff: Schema.String,  diffHash: TrimmedNonEmptyString,  truncated: Schema.Boolean,});export type ReviewDiffPreviewSource = typeof ReviewDiffPreviewSource.Type; export const ReviewDiffFileContentsInput = Schema.Struct({  cwd: TrimmedNonEmptyString,  sourceKind: ReviewDiffPreviewSourceKind,  changeType: Schema.Literals(["change", "rename-pure", "rename-changed", "new", "deleted"]),  baseRef: Schema.NullOr(TrimmedNonEmptyString),  headRef: Schema.NullOr(TrimmedNonEmptyString),  oldPath: TrimmedNonEmptyString,  newPath: TrimmedNonEmptyString,});export type ReviewDiffFileContentsInput = typeof ReviewDiffFileContentsInput.Type; export const ReviewDiffFileContentsResult = Schema.Struct({  oldContents: Schema.String,  newContents: Schema.String,});export type ReviewDiffFileContentsResult = typeof ReviewDiffFileContentsResult.Type; export const ReviewDiffPreviewResult = Schema.Struct({  cwd: TrimmedNonEmptyString,  generatedAt: Schema.DateTimeUtc,  sources: Schema.Array(ReviewDiffPreviewSource),});export type ReviewDiffPreviewResult = typeof ReviewDiffPreviewResult.Type; export const ReviewDiffPreviewError = Schema.Union([VcsError, GitCommandError]);export type ReviewDiffPreviewError = typeof ReviewDiffPreviewError.Type;