line_push/node_modules/@nuxtjs/vuetify/dist/font.js
2022-07-17 13:16:16 +08:00

28 lines
1.3 KiB
JavaScript

export default function setupFont(options) {
const family = `${options.family}:100,300,400,500,700,900&display=swap`;
if (this.options.modules.some(mod => mod === 'nuxt-webfontloader')) {
this.options.webfontloader = this.options.webfontloader || {};
this.options.webfontloader.google = this.options.webfontloader.google || {};
this.options.webfontloader.google.families = [...this.options.webfontloader.google.families || [], family];
}
else {
this.options.head.link.push({
rel: 'stylesheet',
type: 'text/css',
href: `https://fonts.googleapis.com/css?family=${family}`
});
}
const sass = this.options.build.loaders.sass;
// Add font-family custom variable (only if not Roboto, cause already default in Vuetify styles)
if (options.family !== 'Roboto') {
const userFontFamily = Array.isArray(options.family)
? options.family.map(x => `'${x}'`).join(', ')
: `'${options.family}'`;
sass.prependData = [`$body-font-family: ${userFontFamily}, sans-serif`, sass.prependData].join('\n');
}
// Add font-size custom variable
if (options.size) {
sass.prependData = [`$font-size-root: ${options.size}px`, sass.prependData].join('\n');
}
}
//# sourceMappingURL=font.js.map