UNPKG

vike

Version:

The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.

65 lines (64 loc) 2.61 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getConfigDefinedAt = getConfigDefinedAt; exports.getConfigDefinedAtOptional = getConfigDefinedAtOptional; exports.getDefinedAtString = getDefinedAtString; exports.getDefinedByString = getDefinedByString; const utils_js_1 = require("../utils.js"); const picocolors_1 = __importDefault(require("@brillout/picocolors")); const getExportPath_js_1 = require("./getExportPath.js"); function getConfigDefinedAt(sentenceBegin, configName, definedAtData) { return `${begin(sentenceBegin, configName)} at ${getDefinedAtString(definedAtData, configName)}`; } function getConfigDefinedAtOptional(sentenceBegin, configName, definedAtData) { if (!definedAtData) { return `${begin(sentenceBegin, configName)} internally`; } else { return `${begin(sentenceBegin, configName)} at ${getDefinedAtString(definedAtData, configName)}`; } } function begin(sentenceBegin, configName) { return `${sentenceBegin} ${picocolors_1.default.cyan(configName)} defined`; } function getDefinedAtString(definedAtData, configName) { let files; if ((0, utils_js_1.isArray)(definedAtData)) { files = definedAtData; } else { files = [definedAtData]; } (0, utils_js_1.assert)(files.length >= 1); const definedAtString = files .map((definedAt) => { if (definedAt.definedBy) return getDefinedByString(definedAt, configName); const { filePathToShowToUser, fileExportPathToShowToUser } = definedAt; let s = filePathToShowToUser; const exportPath = (0, getExportPath_js_1.getExportPath)(fileExportPathToShowToUser, configName); if (exportPath) { s = `${s} > ${picocolors_1.default.cyan(exportPath)}`; } return s; }) .join(' / '); return definedAtString; } function getDefinedByString(definedAt, configName) { if (definedAt.definedBy === 'api') { return `API call ${picocolors_1.default.cyan(`${definedAt.operation}({ vikeConfig: { ${configName} } })`)}`; } const { definedBy } = definedAt; if (definedBy === 'cli') { return `CLI option ${picocolors_1.default.cyan(`--${configName}`)}`; } if (definedBy === 'env') { return `environment variable ${picocolors_1.default.cyan(`VIKE_CONFIG="{${configName}}"`)}`; } (0, utils_js_1.checkType)(definedBy); (0, utils_js_1.assert)(false); }