changeset 1671:89b38d7e7b6a

included bundleanalyzer buildstep
author Thomas Junk <thomas.junk@intevation.de>
date Mon, 24 Dec 2018 13:58:01 +0100
parents c344849538c0
children 5af8c82c3d21
files client/package.json client/src/router.js client/vue.config.js
diffstat 3 files changed, 14 insertions(+), 22 deletions(-) [+]
line wrap: on
line diff
--- a/client/package.json	Mon Dec 24 13:30:57 2018 +0100
+++ b/client/package.json	Mon Dec 24 13:58:01 2018 +0100
@@ -11,6 +11,7 @@
     "run:both": "concurrently \"../cmd/gemma/gemma\" \"vue-cli-service serve\"",
     "serve": "VUE_APP_HGREV=$(hg log -r . --template \"{data|shortdate}-{node|short}\") vue-cli-service serve",
     "build": "VUE_APP_HGREV=$(hg log -r . --template \"{data|shortdate}-{node|short}\") vue-cli-service build",
+    "analyze": "ANALYZE=true vue-cli-service serve",
     "lint": "vue-cli-service lint",
     "test:unit": "vue-cli-service test:unit",
     "test:e2e": "vue-cli-service test:e2e"
--- a/client/src/router.js	Mon Dec 24 13:30:57 2018 +0100
+++ b/client/src/router.js	Mon Dec 24 13:58:01 2018 +0100
@@ -20,19 +20,6 @@
 
 /*  facilitate codesplitting */
 const Login = () => import("./components/Login.vue");
-const Main = () => import("./components/Main.vue");
-const Usermanagement = () =>
-  import("./components/usermanagement/Usermanagement.vue");
-const Logs = () => import("./components/Logs.vue");
-const Importqueue = () => import("./components/importqueue/Importqueue.vue");
-const Importschedule = () =>
-  import("./components/importschedule/Importschedule.vue");
-const Systemconfiguration = () =>
-  import("./components/Systemconfiguration.vue");
-const Importsoundingresults = () =>
-  import("./components/ImportSoundingresults.vue");
-
-const Importstretches = () => import("./components/ImportStretches.vue");
 
 Vue.use(Router);
 
@@ -46,7 +33,7 @@
     {
       path: "/usermanagement",
       name: "usermanagement",
-      component: Usermanagement,
+      component: () => import("./components/usermanagement/Usermanagement.vue"),
       meta: {
         requiresAuth: true
       },
@@ -62,7 +49,7 @@
     {
       path: "/logs",
       name: "logs",
-      component: Logs,
+      component: () => import("./components/Logs.vue"),
       meta: {
         requiresAuth: true
       },
@@ -78,7 +65,7 @@
     {
       path: "/systemconfiguration",
       name: "systemconfiguration",
-      component: Systemconfiguration,
+      component: () => import("./components/Systemconfiguration.vue"),
       meta: {
         requiresAuth: true
       },
@@ -94,7 +81,7 @@
     {
       path: "/importqueue",
       name: "importqueue",
-      component: Importqueue,
+      component: () => import("./components/importqueue/Importqueue.vue"),
       meta: {
         requiresAuth: true
       },
@@ -110,7 +97,7 @@
     {
       path: "/importsoundingresults",
       name: "importsoundingresults",
-      component: Importsoundingresults,
+      component: () => import("./components/ImportSoundingresults.vue"),
       meta: {
         requiresAuth: true
       },
@@ -126,7 +113,7 @@
     {
       path: "/importstretches",
       name: "importstretches",
-      component: Importstretches,
+      component: () => import("./components/ImportStretches.vue"),
       meta: {
         requiresAuth: true
       },
@@ -142,7 +129,7 @@
     {
       path: "/importschedule",
       name: "importschedule",
-      component: Importschedule,
+      component: () => import("./components/importschedule/Importschedule.vue"),
       meta: {
         requiresAuth: true
       },
@@ -158,7 +145,7 @@
     {
       path: "/",
       name: "mainview",
-      component: Main,
+      component: () => import("./components/Main.vue"),
       meta: {
         requiresAuth: true
       },
--- a/client/vue.config.js	Mon Dec 24 13:30:57 2018 +0100
+++ b/client/vue.config.js	Mon Dec 24 13:58:01 2018 +0100
@@ -1,5 +1,4 @@
 const CopyWebpackPlugin = require("copy-webpack-plugin");
-
 module.exports = {
   outputDir: "../web",
   configureWebpack: {
@@ -13,6 +12,11 @@
       .use(CopyWebpackPlugin, [[{ from: vendorImgPath, to: "img" }]], {
         copyUnmodified: true
       });
+    if (process.env.ANALYZE) {
+      var BundleAnalyzerPlugin = require("webpack-bundle-analyzer")
+        .BundleAnalyzerPlugin;
+      config.plugin("BundleAnalyzerPlugin").use(BundleAnalyzerPlugin, []);
+    }
   },
   css: {
     loaderOptions: {