aboutsummaryrefslogtreecommitdiff
path: root/vite.config.js
blob: 17d30fac96496d9b906c9762e93e2afc9374a3e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import {defineConfig } from 'vite';
import path from 'path'
import {processAssetFileNames, entryFileNames, chunkFileNames, assetDir} from "./configAssets";
import vue from '@vitejs/plugin-vue2'
import requireTransform from 'vite-plugin-require-transform';

const fullAssetsDir = path.resolve(__dirname, "resources/assets");
export default defineConfig({
    resolve: {
        alias: {
            '@img': path.resolve(__dirname, 'public/assets/images'),
            '@fonts': path.resolve(__dirname, 'public/assets/fonts'),
            '@vue$': 'vue/dist/vue.esm.js',
            '@jquery-ui/data': 'jquery-ui/ui/data',
            '@jquery-ui/disable-selection': 'jquery-ui/ui/disable-selection',
            '@jquery-ui/focusable': 'jquery-ui/ui/focusable',
            '@jquery-ui/form': 'jquery-ui/ui/form',
            '@jquery-ui/ie': 'jquery-ui/ui/ie',
            '@jquery-ui/keycode': 'jquery-ui/ui/keycode',
            '@jquery-ui/labels': 'jquery-ui/ui/labels',
            '@jquery-ui/jquery-1-7': 'jquery-ui/ui/jquery-1-7',
            '@jquery-ui/plugin': 'jquery-ui/ui/plugin',
            '@jquery-ui/safe-active-element': 'jquery-ui/ui/safe-active-element',
            '@jquery-ui/safe-blur': 'jquery-ui/ui/safe-blur',
            '@jquery-ui/scroll-parent': 'jquery-ui/ui/scroll-parent',
            '@jquery-ui/tabbable': 'jquery-ui/ui/tabbable',
            '@jquery-ui/unique-id': 'jquery-ui/ui/unique-id',
            '@jquery-ui/version': 'jquery-ui/ui/version',
            '@jquery-ui/widget': 'jquery-ui/ui/widget',
            '@jquery-ui/widgets/mouse': 'jquery-ui/ui/widgets/mouse',
            '@jquery-ui/widgets/draggable': 'jquery-ui/ui/widgets/draggable',
            '@jquery-ui/widgets/droppable': 'jquery-ui/ui/widgets/droppable',
            '@jquery-ui/widgets/resizable': 'jquery-ui/ui/widgets/resizable',
            './components/vue-resizable': 'node_modules/vrp-vue-resizable/src/components/vue-resizable.vue',
            '@': path.resolve(__dirname, 'resources'),
            "~@": path.resolve(__dirname, "/resources"),
        }
    },
    plugins: [
        vue(),
        requireTransform({}),
    ],
    build: {
        cssCodeSplit: true,
        assetsDir: assetDir,
        minify: true,
        modulePreload: false,
        outDir: './',
        emptyOutDir: false,
        copyPublicDir: false,
        target: "es2015",
        rollupOptions: {
            output: {
                entryFileNames: entryFileNames,
                assetFileNames: processAssetFileNames,
                chunkFileNames: chunkFileNames,
            },
            input: {
                "studip-base": fullAssetsDir + "/javascripts/entry-base.js",
                "studip-admission": fullAssetsDir + "/javascripts/entry-admission.js",
                "studip-statusgroups": fullAssetsDir + "/javascripts/entry-statusgroups.js",
                "studip-wysiwyg": fullAssetsDir + "/javascripts/entry-wysiwyg.js",
                "studip-installer": fullAssetsDir + "/javascripts/entry-installer.js",
                "print": path.resolve(__dirname, "resources/assets/stylesheets") + "/print.less",
                "webservices": path.resolve(__dirname, "resources/assets/stylesheets") + "/webservices.scss",
                "accessibility": path.resolve(__dirname, "resources/assets/stylesheets") + "/highcontrast.scss"
            },
        }
    }
})