From 431ccd58652f3d2f00c0ab5be22a80a36b7bd193 Mon Sep 17 00:00:00 2001 From: "Phyks (Lucas Verney)" Date: Fri, 27 Jul 2018 14:40:42 +0200 Subject: [PATCH] Spare 30kb in production-ready JS --- package.json | 2 ++ src/main.js | 19 ++++++-------- src/vuetify.js | 39 +++++++++++++++++++++++++++++ yarn.lock | 68 +++++++++++++++++++++++++++++++++++++++++++++----- 4 files changed, 111 insertions(+), 17 deletions(-) create mode 100644 src/vuetify.js diff --git a/package.json b/package.json index df41fab..9a16f55 100644 --- a/package.json +++ b/package.json @@ -66,6 +66,8 @@ "rimraf": "^2.6.0", "semver": "^5.3.0", "shelljs": "^0.7.6", + "stylus": "^0.54.5", + "stylus-loader": "^3.0.2", "svg2png": "^4.1.1", "uglifyjs-webpack-plugin": "^1.1.1", "url-loader": "^0.5.8", diff --git a/src/main.js b/src/main.js index 1163b0d..7fb0f77 100644 --- a/src/main.js +++ b/src/main.js @@ -1,26 +1,23 @@ // The Vue build version to load with the `import` command // (runtime-only or standalone) has been set in webpack.base.conf with an alias. import Vue from 'vue'; -import Vuetify from 'vuetify'; import Vue2Leaflet from 'vue2-leaflet'; import Vue2LeafletTracksymbol from 'vue2-leaflet-tracksymbol'; -import './css/roboto-fontface.css'; -import './css/material-icons.css'; +import '@/css/roboto-fontface.css'; +import '@/css/material-icons.css'; import 'leaflet/dist/leaflet.css'; // eslint-disable-line import/first -import 'vuetify/dist/vuetify.min.css'; // eslint-disable-line import/first +import 'vuetify/src/stylus/app.styl'; - -import App from './App.vue'; -import i18n from './i18n'; -import router from './router'; -import store from './store'; +import App from '@/App.vue'; +import i18n from '@/i18n'; +import router from '@/router'; +import store from '@/store'; +import '@/vuetify'; // Ensure locale is correctly set from the store value store.dispatch('setLocale', { locale: store.state.settings.locale }); -Vue.use(Vuetify); - Vue.component('v-lmap', Vue2Leaflet.LMap); Vue.component('v-ltilelayer', Vue2Leaflet.LTileLayer); Vue.component('v-lmarker', Vue2Leaflet.LMarker); diff --git a/src/vuetify.js b/src/vuetify.js new file mode 100644 index 0000000..05a2436 --- /dev/null +++ b/src/vuetify.js @@ -0,0 +1,39 @@ +import Vue from 'vue'; +import Vuetify from 'vuetify/es5/components/Vuetify'; +import VApp from 'vuetify/es5/components/VApp'; +import VBadge from 'vuetify/es5/components/VBadge'; +import VBottomSheet from 'vuetify/es5/components/VBottomSheet'; +import VBtn from 'vuetify/es5/components/VBtn'; +import VCard from 'vuetify/es5/components/VCard'; +import VCheckbox from 'vuetify/es5/components/VCheckbox'; +import VCombobox from 'vuetify/es5/components/VCombobox'; +import VDialog from 'vuetify/es5/components/VDialog'; +import VGrid from 'vuetify/es5/components/VGrid'; +import VIcon from 'vuetify/es5/components/VIcon'; +import VList from 'vuetify/es5/components/VList'; +import VMenu from 'vuetify/es5/components/VMenu'; +import VProgressLinear from 'vuetify/es5/components/VProgressLinear'; +import VSelect from 'vuetify/es5/components/VSelect'; +import VTextField from 'vuetify/es5/components/VTextField'; +import VToolbar from 'vuetify/es5/components/VToolbar'; + +Vue.use(Vuetify, { + components: { + VApp, + VBadge, + VBottomSheet, + VBtn, + VCard, + VCheckbox, + VCombobox, + VDialog, + VGrid, + VIcon, + VList, + VMenu, + VProgressLinear, + VSelect, + VTextField, + VToolbar, + }, +}); diff --git a/yarn.lock b/yarn.lock index f83a4ae..1ae7ae2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -89,6 +89,10 @@ alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + ansi-escapes@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" @@ -1868,6 +1872,10 @@ css-loader@^0.28.0: postcss-value-parser "^3.3.0" source-list-map "^2.0.0" +css-parse@1.7.x: + version "1.7.0" + resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" + css-select-base-adapter@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.0.tgz#0102b3d14630df86c3eb9fa9f5456270106cf990" @@ -2033,15 +2041,15 @@ de-indent@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" -debug@2.6.9, debug@^2.1.1, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" +debug@*, debug@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" dependencies: ms "2.0.0" -debug@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" +debug@2.6.9, debug@^2.1.1, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: ms "2.0.0" @@ -3498,6 +3506,17 @@ glob-stream@^5.3.2: to-absolute-glob "^0.1.1" unique-stream "^2.0.2" +glob@7.0.x: + version "7.0.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + glob@^5.0.3: version "5.0.15" resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" @@ -4871,6 +4890,10 @@ lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + lodash.escape@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" @@ -6854,6 +6877,10 @@ safe-regex@^1.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" +sax@0.5.x: + version "0.5.8" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" + sax@>=0.6.0, sax@^1.2.4, sax@~1.2.1, sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -7108,6 +7135,12 @@ source-map-url@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" +source-map@0.1.x: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + dependencies: + amdefine ">=0.0.4" + source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -7371,6 +7404,25 @@ strip-outer@^1.0.0: dependencies: escape-string-regexp "^1.0.2" +stylus-loader@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-3.0.2.tgz#27a706420b05a38e038e7cacb153578d450513c6" + dependencies: + loader-utils "^1.0.2" + lodash.clonedeep "^4.5.0" + when "~3.6.x" + +stylus@^0.54.5: + version "0.54.5" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" + dependencies: + css-parse "1.7.x" + debug "*" + glob "7.0.x" + mkdirp "0.5.x" + sax "0.5.x" + source-map "0.1.x" + sum-up@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/sum-up/-/sum-up-1.0.3.tgz#1c661f667057f63bcb7875aa1438bc162525156e" @@ -8226,6 +8278,10 @@ whatwg-fetch@>=0.10.0: version "2.0.4" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" +when@~3.6.x: + version "3.6.4" + resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" + whet.extend@~0.9.9: version "0.9.9" resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"