UNPKG

grt

Version:

grt command-line interface — test, diff, preview APIs

36 lines (28 loc) • 1.14 kB
import axios from 'axios'; import { getToken } from './config.js'; import chalk from 'chalk'; export async function runDiff({ owner, repo, base, head }) { const token = getToken(); console.log(`šŸ” Comparing ${base} → ${head} in ${owner}/${repo}`); try { const res = await axios.get(`http://localhost:3000/changelog/${owner}/${repo}/${base}/${head}`, { headers: { Authorization: `Bearer ${token}` } }); const diff = res.data; if (diff.message) { console.log(chalk.gray(diff.message)); return; } console.log(chalk.green('\nāœ… Added Paths:')); diff.addedPaths.forEach(p => console.log(chalk.green(`+ ${p}`))); console.log(chalk.red('\nāŒ Removed Paths:')); diff.removedPaths.forEach(p => console.log(chalk.red(`- ${p}`))); console.log(chalk.yellow('\nāš ļø Changed Paths:')); diff.changedPaths.forEach(c => { console.log(chalk.yellow(`~ ${c.method} ${c.path} (${Object.keys(c.changes).join(', ')})`)); }); } catch (err) { console.error('āŒ Failed to fetch diff:', err.message); process.exit(1); } }