UNPKG

@curvenote/cli

Version:
42 lines (41 loc) 1.51 kB
import inquirer from 'inquirer'; import path from 'node:path'; import { writeFileToFolder } from 'myst-cli-utils'; import { OxaTransformer, transformOxalinkStore } from '../transforms/links.js'; export function resolvePath(optionalPath, filename) { if (optionalPath) return path.join(optionalPath, filename); if (path.isAbsolute(filename)) return filename; return path.join('.', filename); } export function versionIdToURL(versionId) { return `/blocks/${versionId.project}/${versionId.block}/versions/${versionId.version}`; } export async function confirmOrExit(message, opts) { if (opts === null || opts === void 0 ? void 0 : opts.yes) return; const question = await inquirer.prompt([ { name: 'confirm', message, type: 'confirm', default: false, }, ]); if (!question.confirm) { process.exit(); } } /** Add oxa link transformers to options */ export function addOxaTransformersToOpts(session, opts) { var _a, _b; return { ...opts, extraLinkTransformers: [...((_a = opts.extraLinkTransformers) !== null && _a !== void 0 ? _a : []), new OxaTransformer(session)], extraTransforms: [...((_b = opts.extraTransforms) !== null && _b !== void 0 ? _b : []), transformOxalinkStore], }; } export function writeJsonLogs(session, name, logData) { writeFileToFolder(path.join(session.buildPath(), 'logs', name), JSON.stringify(logData, null, 2)); }