(header) back button if app installed

This commit is contained in:
Julien Calixte
2019-11-28 23:05:40 +01:00
parent 87fab8f7c3
commit b5d3baaf24
7 changed files with 43 additions and 30 deletions

27
package-lock.json generated
View File

@@ -1021,15 +1021,6 @@
"integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==",
"dev": true "dev": true
}, },
"@pwabuilder/pwainstall": {
"version": "0.9.4",
"resolved": "https://registry.npmjs.org/@pwabuilder/pwainstall/-/pwainstall-0.9.4.tgz",
"integrity": "sha512-yJLS4AVMmmvENLlqnaB3d4s+j7MD0k9cmWr9kJuXCBer6b2yVLfDqUlyZjYijJNPxKd6tbbeN9JrecZ8WxKsbg==",
"requires": {
"infinite-carousel-wc": "^0.4.1",
"lit-element": "^2.2.1"
}
},
"@soda/friendly-errors-webpack-plugin": { "@soda/friendly-errors-webpack-plugin": {
"version": "1.7.1", "version": "1.7.1",
"resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.1.tgz", "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.1.tgz",
@@ -7515,11 +7506,6 @@
"integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==",
"dev": true "dev": true
}, },
"infinite-carousel-wc": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/infinite-carousel-wc/-/infinite-carousel-wc-0.4.1.tgz",
"integrity": "sha512-d0U/zdPXZxMzIFEtMHlQ4iGGwe3BchOi4y5RC3ZMjVW7oXdSOdE0CChTtEBcnjgHvovQXcld31kTFMsMv3emcQ=="
},
"infinity-x": { "infinity-x": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/infinity-x/-/infinity-x-1.0.2.tgz", "resolved": "https://registry.npmjs.org/infinity-x/-/infinity-x-1.0.2.tgz",
@@ -9499,19 +9485,6 @@
"integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
"dev": true "dev": true
}, },
"lit-element": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/lit-element/-/lit-element-2.2.1.tgz",
"integrity": "sha512-ipDcgQ1EpW6Va2Z6dWm79jYdimVepO5GL0eYkZrFvdr0OD/1N260Q9DH+K5HXHFrRoC7dOg+ZpED2XE0TgGdXw==",
"requires": {
"lit-html": "^1.0.0"
}
},
"lit-html": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/lit-html/-/lit-html-1.1.2.tgz",
"integrity": "sha512-FFlUMKHKi+qG1x1iHNZ1hrtc/zHmfYTyrSvs3/wBTvaNtpZjOZGWzU7efGYVpgp6KvWeKF6ql9/KsCq6Z/mEDA=="
},
"load-json-file": { "load-json-file": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",

View File

@@ -12,7 +12,6 @@
"@fortawesome/fontawesome-svg-core": "^1.2.25", "@fortawesome/fontawesome-svg-core": "^1.2.25",
"@fortawesome/free-solid-svg-icons": "^5.11.2", "@fortawesome/free-solid-svg-icons": "^5.11.2",
"@fortawesome/vue-fontawesome": "^0.1.7", "@fortawesome/vue-fontawesome": "^0.1.7",
"@pwabuilder/pwainstall": "^0.9.4",
"@xkeshi/vue-qrcode": "^1.0.0", "@xkeshi/vue-qrcode": "^1.0.0",
"axios": "^0.19.0", "axios": "^0.19.0",
"bulma": "^0.7.5", "bulma": "^0.7.5",

View File

@@ -20,6 +20,17 @@
</div> </div>
</online-view> </online-view>
</router-link> </router-link>
<app-installed class="navbar-item">
<template v-slot:app-installed>
<a href="#" @click="back">
<img
class="back-icon"
src="./assets/icons/baseline_arrow_back_white_48dp.png"
alt="back"
/>
</a>
</template>
</app-installed>
<span class="vaquant-title" :class="{ visible: shadow }">{{ <span class="vaquant-title" :class="{ visible: shadow }">{{
title title
}}</span> }}</span>
@@ -73,13 +84,15 @@ import { Action, Getter } from 'vuex-class'
import IUser from '@/models/IUser' import IUser from '@/models/IUser'
import { COFFEE_LINK } from '@/utils/constants' import { COFFEE_LINK } from '@/utils/constants'
import OnlineView from '@/components/OnlineView.vue' import OnlineView from '@/components/OnlineView.vue'
import AppInstalled from '@/components/AppInstalled.vue'
@Component({ @Component({
directives: { directives: {
ClickOutside ClickOutside
}, },
components: { components: {
'online-view': OnlineView 'online-view': OnlineView,
'app-installed': AppInstalled
} }
}) })
export default class App extends Vue { export default class App extends Vue {
@@ -114,6 +127,10 @@ export default class App extends Vue {
public hideMenu(): void { public hideMenu(): void {
this.menuOpen = false this.menuOpen = false
} }
public back(): void {
window.history.back()
}
} }
</script> </script>

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

View File

@@ -0,0 +1,21 @@
<template>
<span>
<slot v-if="isInstalled" name="app-installed"></slot>
<slot v-else name="app-not-installed"></slot>
</span>
</template>
<script lang="ts">
import { Component, Vue } from 'vue-property-decorator'
@Component
export default class AppInstalled extends Vue {
private isInstalled: boolean = false
private mounted() {
this.isInstalled =
window.matchMedia &&
window.matchMedia('(display-mode: standalone)').matches
}
}
</script>

View File

@@ -81,6 +81,10 @@ img {
width: 50px; width: 50px;
} }
.back-icon {
vertical-align: middle;
}
.breadcrumb { .breadcrumb {
font-size: 16pt; font-size: 16pt;
text-align: center; text-align: center;

View File

@@ -476,7 +476,6 @@ export default class AccountItem extends BaseAccount {
color: var(--primary-font-color); color: var(--primary-font-color);
} }
.account-title { .account-title {
margin: 10px 0;
span, span,
a { a {
padding: 0 10px; padding: 0 10px;