UNPKG

@astro-paper/cli

Version:

A comprehensive CLI tool for AstroPaper blog theme management

34 lines (33 loc) 1.05 kB
import { z } from 'zod'; import { highlighter } from './highlighter.js'; import { logger } from './logger.js'; export function handleError(error) { logger.error(`Something went wrong. Please check the error below for more details.`); logger.error(`If the problem persists, please open an issue on GitHub.`); logger.error(''); if (typeof error === 'string') { logger.error(error); logger.break(); process.exit(1); } if (error instanceof z.ZodError) { logger.error('Validation failed:'); for (const [key, value] of Object.entries(error.flatten().fieldErrors)) { logger.error(`- ${highlighter.info(key)}: ${value}`); } logger.break(); process.exit(1); } if (error instanceof Error) { logger.error(error.message); logger.break(); process.exit(1); } if (error instanceof Error) { logger.error(error.message); logger.break(); process.exit(1); } logger.break(); process.exit(1); }