vite.config.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements. See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License. You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. import { defineConfig, loadEnv } from 'vite'
  18. import vue from '@vitejs/plugin-vue'
  19. import vueJsx from '@vitejs/plugin-vue-jsx'
  20. import viteCompression from 'vite-plugin-compression'
  21. import path from 'path'
  22. export default defineConfig({
  23. base: process.env.NODE_ENV === 'production' ? '/dolphinscheduler/ui/' : '/',
  24. plugins: [
  25. vue(),
  26. vueJsx(),
  27. viteCompression({
  28. verbose: true,
  29. disable: false,
  30. threshold: 10240,
  31. algorithm: 'gzip',
  32. ext: '.gz',
  33. deleteOriginFile: false
  34. })
  35. ],
  36. resolve: {
  37. alias: {
  38. '@': path.resolve(__dirname, 'src')
  39. // resolve vue-i18n warning: You are running the esm-bundler build of vue-i18n.
  40. }
  41. },
  42. server: {
  43. proxy: {
  44. '/dolphinscheduler': {
  45. target: loadEnv('development', './').VITE_APP_DEV_WEB_URL,
  46. changeOrigin: true
  47. }
  48. }
  49. }
  50. })