diff --git a/package-lock.json b/package-lock.json index 909437d..9e14ef8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,6 +23,7 @@ "@typescript-eslint/eslint-plugin": "^7.16.0", "@typescript-eslint/parser": "^7.16.0", "autoprefixer": "^10.4.2", + "dotenv": "^16.4.5", "eslint": "^8.57.0", "eslint-config-prettier": "^8.1.0", "eslint-plugin-vue": "^9.0.0", @@ -2761,6 +2762,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/earcut": { "version": "2.2.4", "resolved": "https://registry.npmmirror.com/earcut/-/earcut-2.2.4.tgz", diff --git a/package.json b/package.json index ce24e29..3a4b1f7 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,8 @@ "@types/node": "^12.20.21", "@quasar/app-vite": "^1.9.0", "autoprefixer": "^10.4.2", - "typescript": "~5.5.4" + "typescript": "~5.5.4", + "dotenv": "^16.4.5" }, "engines": { "node": "^20 || ^18 || ^16", diff --git a/quasar.config.js b/quasar.config.js index 460fb9c..544d1c2 100644 --- a/quasar.config.js +++ b/quasar.config.js @@ -7,28 +7,33 @@ // Configuration for your app // https://v2.quasar.dev/quasar-cli-vite/quasar-config-js - - +require('dotenv').config(); const { configure } = require('quasar/wrappers'); +const BasePath = ''; module.exports = configure(function (/* ctx */) { return { + eslint: { + // fix: true, + // include: [], + // exclude: [], + // rawOptions: {}, + warnings: true, + errors: true, + exclude: ['src/protos/*'], + }, + // https://v2.quasar.dev/quasar-cli-vite/prefetch-feature // preFetch: true, // app boot file (/src/boot) // --> boot files are part of "main.js" // https://v2.quasar.dev/quasar-cli-vite/boot-files - boot: [ - - - ], + boot: ['axios', '@pixi/graphics-extras'], // https://v2.quasar.dev/quasar-cli-vite/quasar-config-js#css - css: [ - 'app.scss' - ], + css: ['app.scss'], // https://github.com/quasarframework/quasar/tree/dev/extras extras: [ @@ -42,58 +47,67 @@ module.exports = configure(function (/* ctx */) { 'roboto-font', // optional, you are not bound to it 'material-icons', // optional, you are not bound to it + 'material-symbols-outlined', ], // Full list of options: https://v2.quasar.dev/quasar-cli-vite/quasar-config-js#build build: { + env: { + // test:测试服务器;publish:正式服务器;其他本地 + ENV_MODE: process.env.NODE_ENV, + URL_ENV: process.env.URL_ENV, + }, target: { - browser: [ 'es2019', 'edge88', 'firefox78', 'chrome87', 'safari13.1' ], - node: 'node20' + browser: ['es2020'], + node: 'node20', }, - vueRouterMode: 'hash', // available values: 'hash', 'history' - // vueRouterBase, + vueRouterMode: 'history', // available values: 'hash', 'history' + vueRouterBase: BasePath, // vueDevtools, // vueOptionsAPI: false, // rebuildCache: true, // rebuilds Vite/linter/etc cache on startup - // publicPath: '/', + publicPath: BasePath, // analyze: true, // env: {}, // rawDefine: {} // ignorePublicFolder: true, - // minify: false, + minify: false, // polyfillModulePreload: true, // distDir + // distDir: `dist/${BasePath}`, + distDir: 'dist', // extendViteConf (viteConf) {}, // viteVuePluginOptions: {}, - - vitePlugins: [ - ['vite-plugin-checker', { - vueTsc: { - tsconfigPath: 'tsconfig.vue-tsc.json' - }, - eslint: { - lintCommand: 'eslint "./**/*.{js,ts,mjs,cjs,vue}"' - } - }, { server: false }] - ] + alias: { 'protobufjs/light': 'protobufjs/dist/light/protobuf.min.js' }, + // vitePlugins: [ + // [ 'package-name', { ..options.. } ] + // ] }, // Full list of options: https://v2.quasar.dev/quasar-cli-vite/quasar-config-js#devServer devServer: { // https: true - open: true // opens browser window automatically + open: true, // opens browser window automatically + base: BasePath, }, // https://v2.quasar.dev/quasar-cli-vite/quasar-config-js#framework framework: { - config: {}, + config: { + notify: { + position: 'top', + timeout: 2000, + progress: true, + }, + }, // iconSet: 'material-icons', // Quasar icon set // lang: 'en-US', // Quasar language pack + lang: 'zh-CN', // For special cases outside of where the auto-import strategy can have an impact // (like functional components as one of the examples), @@ -102,8 +116,10 @@ module.exports = configure(function (/* ctx */) { // components: [], // directives: [], + autoImportComponentCase: 'combined', + // Quasar plugins - plugins: [] + plugins: ['Notify', 'Dialog', 'Dark', 'AppFullscreen', 'Loading'], }, // animations: 'all', // --- includes all animations @@ -125,7 +141,7 @@ module.exports = configure(function (/* ctx */) { // https://v2.quasar.dev/quasar-cli-vite/developing-ssr/configuring-ssr ssr: { // ssrPwaHtmlFilename: 'offline.html', // do NOT use index.html as name! - // will mess up SSR + // will mess up SSR // extendSSRWebserverConf (esbuildConf) {}, // extendPackageJson (json) {}, @@ -136,11 +152,11 @@ module.exports = configure(function (/* ctx */) { // manualPostHydrationTrigger: true, prodPort: 3000, // The default port that the production server should use - // (gets superseded if process.env.PORT is specified at runtime) + // (gets superseded if process.env.PORT is specified at runtime) middlewares: [ - 'render' // keep this as last one - ] + 'render', // keep this as last one + ], }, // https://v2.quasar.dev/quasar-cli-vite/developing-pwa/configuring-pwa @@ -164,7 +180,7 @@ module.exports = configure(function (/* ctx */) { // Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-capacitor-apps/configuring-capacitor capacitor: { - hideSplashscreen: true + hideSplashscreen: true, }, // Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-electron-apps/configuring-electron @@ -178,13 +194,11 @@ module.exports = configure(function (/* ctx */) { packager: { // https://github.com/electron-userland/electron-packager/blob/master/docs/api.md#options - // OS X / Mac App Store // appBundleId: '', // appCategoryType: '', // osxSign: '', // protocol: 'myapp://path', - // Windows only // win32metadata: { ... } }, @@ -192,18 +206,16 @@ module.exports = configure(function (/* ctx */) { builder: { // https://www.electron.build/configuration/configuration - appId: 'rtss-simulation-app-client' - } + appId: 'rtss-simulation-app-client', + }, }, // Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-browser-extensions/configuring-bex bex: { - contentScripts: [ - 'my-content-script' - ], + contentScripts: ['my-content-script'], // extendBexScriptsConf (esbuildConf) {} // extendBexManifestJson (json) {} - } - } + }, + }; }); diff --git a/tsconfig.json b/tsconfig.json index d4d337f..23ef349 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,12 +5,5 @@ "strict": false }, "include": ["src/**/*"], - "exclude": [ - "./dist", - "./.quasar", - "./node_modules", - "./src-capacitor", - "./src-cordova", - "./quasar.config.*.temporary.compiled*" - ] + "exclude": ["/graphic-pixi/*/**.ts"] }