diff --git a/package-lock.json b/package-lock.json
index 9421c224..2fd46b14 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1205,18 +1205,6 @@
"long": "^3.2.0"
}
},
- "@websanova/vue-dot": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/@websanova/vue-dot/-/vue-dot-0.1.1.tgz",
- "integrity": "sha512-xOroPXFJPs8HpGWHgX4yAk7y7Fce+w7omnGUrzowMI9P5JWTFftE1uBXA5Pm+wdp8nK9E1vgV7gWWrh8llohNA==",
- "dev": true
- },
- "@websanova/vue-env": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/@websanova/vue-env/-/vue-env-0.6.2.tgz",
- "integrity": "sha512-ExigiAGJlr7C+U0Y2Y3MmCQ7lJIeMvAjnkzJ1b7X9xBTTUyJQ7M8ReLVZJREZcZx2+NGurpLJE/wJQgBpmn2XQ==",
- "dev": true
- },
"abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
@@ -4031,12 +4019,6 @@
"is-obj": "^1.0.0"
}
},
- "dotenv": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-6.0.0.tgz",
- "integrity": "sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg==",
- "dev": true
- },
"duplexer": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
@@ -12491,7 +12473,8 @@
"vue-notification": {
"version": "1.3.13",
"resolved": "https://registry.npmjs.org/vue-notification/-/vue-notification-1.3.13.tgz",
- "integrity": "sha512-GBCpsd+usRF2EhLWl2/rzNWErYnlo+HoKV7G0LL6c/Iy2eo2ikpwVXlDAUepOQaeq0hJoDu0oyUfhKBRL1AosA=="
+ "integrity": "sha512-GBCpsd+usRF2EhLWl2/rzNWErYnlo+HoKV7G0LL6c/Iy2eo2ikpwVXlDAUepOQaeq0hJoDu0oyUfhKBRL1AosA==",
+ "dev": true
},
"vue-router": {
"version": "3.0.1",
diff --git a/package.json b/package.json
index a20a66b5..b2cad824 100644
--- a/package.json
+++ b/package.json
@@ -9,8 +9,7 @@
},
"dependencies": {
"bulma": "^0.7.1",
- "vue": "^2.5.17",
- "vue-notification": "^1.3.13"
+ "vue": "^2.5.17"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.0.1",
@@ -19,6 +18,7 @@
"axios": "^0.18.0",
"node-sass": "^4.9.3",
"sass-loader": "^7.1.0",
+ "vue-notification": "^1.3.13",
"vue-router": "^3.0.1",
"vue-template-compiler": "^2.5.17"
},
diff --git a/src/App.vue b/src/App.vue
index d5180afb..0f729a05 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -33,12 +33,14 @@
+
diff --git a/src/main.js b/src/main.js
index 5e315dac..6e582134 100644
--- a/src/main.js
+++ b/src/main.js
@@ -7,6 +7,10 @@ import '../node_modules/bulma/bulma.sass'
Vue.config.productionTip = false
+// Notifications
+import Notifications from 'vue-notification'
+Vue.use(Notifications)
+
// Check the user's auth status when the app starts
auth.checkAuth()
diff --git a/src/message/index.js b/src/message/index.js
new file mode 100644
index 00000000..56124274
--- /dev/null
+++ b/src/message/index.js
@@ -0,0 +1,16 @@
+export default {
+ error(e, context) {
+ // Build the notification text from error response
+ let err = e.message
+ if (e.response && e.response.data && e.response.data.message) {
+ err += '
' + e.response.data.message
+ }
+
+ // Fire a notification
+ context.$notify({
+ type: 'error',
+ title: 'Error',
+ text: err
+ })
+ }
+}
\ No newline at end of file