UNPKG

@favware/rollup-type-bundler

Version:

A small CLI tool to bundle types with rollup

46 lines 1.72 kB
import { isNullishOrEmpty } from '@sapphire/utilities'; import { cyan, green, red } from 'colorette'; import { load } from 'js-yaml'; import { readFile } from 'node:fs/promises'; /** * Parsed a YAML file into an `Object` of type `T` * @param pathLike The {@link PathLike} to read with {@link readFile} */ export async function readYaml(pathLike) { return load(await readFile(pathLike, { encoding: 'utf-8' })); } /** * Parses a JSON file into an `Object` of type `T` * @param pathLike The {@link PathLike} to read with {@link readFile} */ export async function readJson(pathLike) { return JSON.parse(await readFile(pathLike, { encoding: 'utf-8' })); } export async function doActionAndLog(preActionLog, action) { process.stdout.write(cyan(`${preActionLog}... `)); try { const returnValue = (await action); console.log(green('✅ Done')); return returnValue; } catch (error) { console.log(red('❌ Error')); console.error(error.message); process.exit(1); } } export function getTypingsInputFileName(options) { return isNullishOrEmpty(options.typingsFileExtension) ? 'index.d.ts' : options.typingsFileExtension.startsWith('.') ? `index.d${options.typingsFileExtension}` : `index.d.${options.typingsFileExtension}`; } export function getOutputTypingsInputFileName(options) { return isNullishOrEmpty(options.outputTypingsFileExtension) ? getTypingsInputFileName(options) : options.outputTypingsFileExtension.startsWith('.') ? `index.d${options.outputTypingsFileExtension}` : `index.d.${options.outputTypingsFileExtension}`; } //# sourceMappingURL=utils.js.map