UNPKG

@issue-linker/core

Version:
22 lines 1.15 kB
// Application layer - Get pull request commits use case import * as v from "valibot"; import { GetPullRequestCommitsArgsSchema, } from "../domain/validation-schemas.js"; import { getGitHubToken } from "../infrastructure/env-accessor.js"; import { fetchPullRequestCommits } from "../infrastructure/github-client.js"; import { parseRepositoryString } from "../infrastructure/repository-parser.js"; /** * Get commits from a pull request * @param args Arguments for getting pull request commits * @returns Array of pull request commits */ export async function getPullRequestCommits(args) { // Validate args const validatedArgs = v.parse(GetPullRequestCommitsArgsSchema, args); // Parse repository string const { owner, repo } = parseRepositoryString(validatedArgs.repo); // Get GitHub token const githubToken = validatedArgs.githubToken ?? getGitHubToken(); // Fetch commits from GitHub API (already transformed to PullRequestCommit[]) return await fetchPullRequestCommits(owner, repo, validatedArgs.prNumber, githubToken, validatedArgs.hostname); } //# sourceMappingURL=get-pull-request-commits-use-case.js.map