/* * This file runs in a Node context (it's NOT transpiled by Babel), so use only * the ES6 features that are supported by your Node version. https://node.green/ */ // Configuration for your app // https://quasar.dev/quasar-cli/quasar-conf-js /* eslint-env node */ const webpack = require('webpack') const ESLintPlugin = require('eslint-webpack-plugin') const {configure} = require('quasar/wrappers') const customize = require('./customize.json') module.exports = configure(function (ctx) { return { // https://quasar.dev/quasar-cli/supporting-ts supportTS: false, // https://quasar.dev/quasar-cli/prefetch-feature // preFetch: true, // app boot file (/src/boot) // --> boot files are part of "main.js" // https://quasar.dev/quasar-cli/boot-files boot: ['global-components'], // https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css css: ['add-tailwind.css'], // https://github.com/quasarframework/quasar/tree/dev/extras extras: [ // 'ionicons-v4', // 'mdi-v5', // 'fontawesome-v5', // 'eva-icons', // 'themify', // 'line-awesome', // 'roboto-font-latin-ext', // this or either 'roboto-font', NEVER both! 'roboto-font', // optional, you are not bound to it 'material-icons' // optional, you are not bound to it ], // Full list of options: https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-build build: { vueRouterMode: 'history', // available values: 'hash', 'history' // transpile: false, publicPath: '/', // Add dependencies for transpiling with Babel (Array of string/regex) // (from node_modules, which are by default not transpiled). // Applies only if "transpile" is set to true. // transpileDependencies: [], // rtl: true, // https://quasar.dev/options/rtl-support // preloadChunks: true, // showProgress: false, // gzip: true, // analyze: true, // Options below are automatically set depending on the env, set them if you want to override // extractCSS: false, // https://quasar.dev/quasar-cli/handling-webpack // "chain" is a webpack-chain object https://github.com/neutrinojs/webpack-chain chainWebpack(chain) { chain .plugin('eslint-webpack-plugin') .use(ESLintPlugin, [{extensions: ['js', 'vue']}]) }, // blergh extendWebpack(cfg) { cfg.plugins.push( new webpack.ProvidePlugin({Buffer: ['buffer', 'Buffer']}) ) cfg.resolve.alias = cfg.resolve.alias || {} cfg.resolve.alias.stream = 'readable-stream' cfg.resolve.fallback = cfg.resolve.fallback || {} cfg.resolve.fallback.buffer = require.resolve('buffer/') cfg.resolve.fallback.stream = require.resolve('readable-stream') cfg.resolve.fallback.crypto = false cfg.experiments = cfg.experiments || {} cfg.experiments.asyncWebAssembly = true } }, // Full list of options: https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-devServer devServer: { server: { type: 'http' }, port: 8080, open: true // opens browser window automatically }, // https://quasar.dev/quasar-cli/quasar-conf-js#Property%3A-framework framework: { config: { dark: customize.useDarkTheme, brand: customize.colors }, // iconSet: 'material-icons', // Quasar icon set // lang: 'en-US', // Quasar language pack // For special cases outside of where the auto-import strategy can have an impact // (like functional components as one of the examples), // you can manually specify Quasar components/directives to be available everywhere: // // components: [], // directives: [], // Quasar plugins plugins: ['Notify', 'Dialog'] }, htmlVariables: { name: customize.name, icon: customize.icon } } })