Upgrade to Vue CLI 3 / Webpack 4 #22

Merged
danieljsummers merged 5 commits from vue-cli-3 into master 2018-08-22 01:39:42 +00:00
5 changed files with 76 additions and 30 deletions
Showing only changes of commit d332e1e701 - Show all commits

4
.gitignore vendored
View File

@ -254,8 +254,10 @@ paket-files/
# Compiled files / application # Compiled files / application
src/api/build src/api/build
src/api/MyPrayerJournal.Api/wwwroot/favicon.ico
src/api/MyPrayerJournal.Api/wwwroot/index.html src/api/MyPrayerJournal.Api/wwwroot/index.html
src/api/MyPrayerJournal.Api/wwwroot/static src/api/MyPrayerJournal.Api/wwwroot/css
src/api/MyPrayerJournal.Api/wwwroot/js
src/api/MyPrayerJournal.Api/appsettings.development.json src/api/MyPrayerJournal.Api/appsettings.development.json
/build /build
src/*.exe src/*.exe

View File

@ -11,6 +11,9 @@
"apistart": "cd ../api/MyPrayerJournal.Api && dotnet run", "apistart": "cd ../api/MyPrayerJournal.Api && dotnet run",
"vue": "vue-cli-service build && cd ../api/MyPrayerJournal.Api && dotnet run" "vue": "vue-cli-service build && cd ../api/MyPrayerJournal.Api && dotnet run"
}, },
"sideEffects": [
"**/*.css"
],
"dependencies": { "dependencies": {
"auth0-js": "^9.7.3", "auth0-js": "^9.7.3",
"axios": "^0.18.0", "axios": "^0.18.0",

View File

@ -1,31 +1,69 @@
<template> <template lang="pug">
<div id="app"> #app
<div id="nav"> navigation
<router-link to="/">Home</router-link> | #content.container
<router-link to="/about">About</router-link> router-view
</div> vue-progress-bar
<router-view/> toast(ref='toast')
</div> footer
p.text-right.text-muted
| myPrayerJournal v{{ version }}
br
em: small.
#[router-link(:to="{ name: 'PrivacyPolicy' }") Privacy Policy] &bull;
#[router-link(:to="{ name: 'TermsOfService' }") Terms of Service] &bull;
#[a(href='https://github.com/bit-badger/myprayerjournal') Developed] and hosted by
#[a(href='https://bitbadger.solutions') Bit Badger Solutions]
</template> </template>
<script>
'use strict'
import Navigation from './components/Navigation.vue'
import { version } from '../package.json'
export default {
name: 'app',
components: {
Navigation
},
data () {
return { version }
},
mounted () {
this.$refs.toast.setOptions({ position: 'bottom right' })
},
computed: {
toast () {
return this.$refs.toast
}
}
}
</script>
<style> <style>
#app { html, body {
font-family: 'Avenir', Helvetica, Arial, sans-serif; background-color: whitesmoke;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
} }
#nav { body {
padding: 30px; padding-top: 60px;
} }
footer {
#nav a { border-top: solid 1px lightgray;
font-weight: bold; margin-top: 1rem;
color: #2c3e50; padding: 0 1rem;
} }
footer p {
#nav a.router-link-exact-active { margin: 0;
color: #42b983; }
a:link, a:visited {
color: #050;
}
.mpj-request-text {
white-space: pre-line;
}
.bg-mpj {
background-image: -webkit-gradient(linear, left top, left bottom, from(#050), to(whitesmoke));
background-image: -webkit-linear-gradient(top, #050, whitesmoke);
background-image: -moz-linear-gradient(top, #050, whitesmoke);
background-image: linear-gradient(to bottom, #050, whitesmoke);
} }
</style> </style>

View File

@ -9,7 +9,7 @@ import actions from './action-types'
Vue.use(Vuex) Vue.use(Vuex)
this.auth0 = new AuthService() const auth0 = new AuthService()
const logError = function (error) { const logError = function (error) {
if (error.response) { if (error.response) {
@ -34,11 +34,11 @@ export default new Vuex.Store({
state: { state: {
user: JSON.parse(localStorage.getItem('user_profile') || '{}'), user: JSON.parse(localStorage.getItem('user_profile') || '{}'),
isAuthenticated: (() => { isAuthenticated: (() => {
this.auth0.scheduleRenewal() auth0.scheduleRenewal()
if (this.auth0.isAuthenticated()) { if (auth0.isAuthenticated()) {
api.setBearer(localStorage.getItem('id_token')) api.setBearer(localStorage.getItem('id_token'))
} }
return this.auth0.isAuthenticated() return auth0.isAuthenticated()
})(), })(),
journal: {}, journal: {},
isLoadingJournal: false isLoadingJournal: false

View File

@ -1,3 +1,6 @@
module.exports = { module.exports = {
outputDir: '../api/MyPrayerJournal.Api/wwwroot' outputDir: '../api/MyPrayerJournal.Api/wwwroot',
css: {
modules: true
}
} }