@vant/cli
Version:
Vant CLI is a tool for building vue component library. You can quickly build a full-featured Vue component library with vant-cli.
46 lines (45 loc) • 1.6 kB
JavaScript
import { getVantConfig, isDev } from '../common/index.js';
function getSiteConfig(vantConfig) {
const siteConfig = vantConfig.site;
if (siteConfig.locales) {
return siteConfig.locales[siteConfig.defaultLang || 'en-US'];
}
return siteConfig;
}
function getTitle(config) {
let { title } = config;
if (config.description) {
title += ` - ${config.description}`;
}
return title;
}
function getHTMLMeta(vantConfig) {
var _a;
const meta = (_a = vantConfig.site) === null || _a === void 0 ? void 0 : _a.htmlMeta;
if (meta) {
return Object.keys(meta)
.map((key) => `<meta name="${key}" content="${meta[key]}">`)
.join('\n');
}
return '';
}
export function getTemplateParams() {
var _a, _b, _c;
const vantConfig = getVantConfig();
const siteConfig = getSiteConfig(vantConfig);
const title = getTitle(siteConfig);
const headHtml = (_a = vantConfig.site) === null || _a === void 0 ? void 0 : _a.headHtml;
const baiduAnalytics = (_b = vantConfig.site) === null || _b === void 0 ? void 0 : _b.baiduAnalytics;
const enableVConsole = isDev() && ((_c = vantConfig.site) === null || _c === void 0 ? void 0 : _c.enableVConsole);
return {
...siteConfig,
title,
// `description` is used by the HTML ejs template,
// so it needs to be written explicitly here to avoid error: description is not defined
description: siteConfig.description,
headHtml,
baiduAnalytics,
enableVConsole,
meta: getHTMLMeta(vantConfig),
};
}