From d0f91c5f4335c68e55359b0df635dfd03a4ca1ab Mon Sep 17 00:00:00 2001 From: Proddy Date: Thu, 9 Feb 2023 22:41:47 +0100 Subject: [PATCH] add hosted for online demo --- .gitignore | 1 + interface/package.json | 3 +- interface/vite.config.ts | 60 ++++++++++++++++++++++------------------ 3 files changed, 36 insertions(+), 28 deletions(-) diff --git a/.gitignore b/.gitignore index 985f7ae33..fc5c783c4 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ # build build/ +dist/ .clang_complete .gcc-flags.json cppcheck.out.xml diff --git a/interface/package.json b/interface/package.json index 20aba74a7..69c43c494 100644 --- a/interface/package.json +++ b/interface/package.json @@ -5,8 +5,9 @@ "scripts": { "dev": "vite", "build": "tsc && vite build", + "build-hosted": "tsc && vite build --mode hosted", "preview": "vite preview", - "preview_standalone": "npm-run-all -p preview typesafe-i18n mock-api", + "preview-standalone": "npm-run-all -p preview typesafe-i18n mock-api", "mock-api": "nodemon --watch ../mock-api ../mock-api/server.js", "standalone": "npm-run-all -p dev typesafe-i18n mock-api", "typesafe-i18n": "typesafe-i18n", diff --git a/interface/vite.config.ts b/interface/vite.config.ts index c26bcf404..7b54f9975 100644 --- a/interface/vite.config.ts +++ b/interface/vite.config.ts @@ -5,33 +5,39 @@ import svgrPlugin from 'vite-plugin-svgr'; import { visualizer } from 'rollup-plugin-visualizer'; import ProgmemGenerator from './progmem-generator'; -export default defineConfig({ - plugins: [ - react({ plugins: [['@swc/plugin-styled-components', {}]] }), - viteTsconfigPaths(), - svgrPlugin(), - ProgmemGenerator({ outputPath: '../lib/framework/WWWData.h', bytesPerLine: 20 }), - visualizer({ gzipSize: true }) as PluginOption - ], - // root: 'src', - base: '/', - // publicDir: "./public", - build: { - // Relative to the root - outDir: 'build', - chunkSizeWarningLimit: 1024 - }, - server: { - open: true, - port: 3000, - proxy: { - '/rest': 'http://localhost:3080', - '/api': { - target: 'http://localhost:3080', - changeOrigin: true, - secure: false, - ws: true +export default defineConfig(({ command, mode }) => { + if (mode === 'hosted') { + return { + // hosted, ignore all errors, output to dist + plugins: [react({ plugins: [['@swc/plugin-styled-components', {}]] }), viteTsconfigPaths(), svgrPlugin()] + }; + } else { + // normal build + return { + plugins: [ + react({ plugins: [['@swc/plugin-styled-components', {}]] }), + viteTsconfigPaths(), + svgrPlugin(), + ProgmemGenerator({ outputPath: '../lib/framework/WWWData.h', bytesPerLine: 20 }), + visualizer({ gzipSize: true }) as PluginOption + ], + build: { + outDir: 'build', + chunkSizeWarningLimit: 1024 + }, + server: { + open: true, + port: 3000, + proxy: { + '/rest': 'http://localhost:3080', + '/api': { + target: 'http://localhost:3080', + changeOrigin: true, + secure: false, + ws: true + } + } } - } + }; } });