Newer
Older
Sébastien DA ROCHA
committed
<template>
Sébastien DA ROCHA
committed
<div id="content">
<transition name="fadeDownUp">
<div
v-if="messages && messages.length > 0"
class="row over-content"
>
<div class="fourteen wide column">
Sébastien DA ROCHA
committed
<div
v-for="(message, index) in messages"
:key="'message-' + index"
:class="['ui', message.level ? message.level : 'info', 'message']"
Sébastien DA ROCHA
committed
>
Sébastien DA ROCHA
committed
</div>
</div>
:class="{ active: loader.isLoading }"
class="ui inverted dimmer"
Sébastien DA ROCHA
committed
</div>
<!-- //* Les views sont injectées ici -->
<router-view class="page" />
</div>
<AppFooter />
Sébastien DA ROCHA
committed
</div>
</template>
<script
type="application/javascript"
:src="
baseUrl +
'resources/leaflet-control-geocoder-1.13.0/Control.Geocoder.js'
"
/>
Sébastien DA ROCHA
committed
<script>
import { mapMutations, mapState } from 'vuex';
Sébastien DA ROCHA
committed
import AppHeader from '@/components/AppHeader';
import AppFooter from '@/components/AppFooter';
Sébastien DA ROCHA
committed
export default {
Sébastien DA ROCHA
committed
Sébastien DA ROCHA
committed
},
data() {
return {
menuIsOpen: false,
rightMenuIsOpen: true,
width: window.innerWidth > 0 ? window.innerWidth : screen.width,
Sébastien DA ROCHA
committed
};
},
computed: {
'user',
'USER_LEVEL_PROJECTS',
'configuration',
'messages',
'loader',
'projects',
'project',
Sébastien DA ROCHA
committed
},
Sébastien DA ROCHA
committed
methods: {
...mapMutations(['DISCARD_MESSAGE']),
Sébastien DA ROCHA
committed
},
};
</script>
<style>
@import "./assets/styles/base.css";
@import "./assets/resources/semantic-ui-2.4.2/semantic.min.css";
.vertical {
flex-direction: column;
justify-content: center;
}
.leaflet-container {
background: white !important;
}
.flex {
display: flex;
}
/* keep above loader */
#menu-dropdown {
z-index: 1001;
}
@media screen and (max-width: 985px) {
.abstract{
display: none !important;
}
}
.mobile {
display: none !important;
}
min-width: 560px;
}
.menu.container {
width: auto !important;
}
.push-right-desktop {
margin-left: auto;
}
}
.desktop {
display: none !important;
}
div.dropdown-list {
width: 100vw;
left: -70px !important; /* should be the same than belows */
.menu.container a.header {
width: 70px;
}
.menu.container a.header > img {
margin: 0;
}
#menu-dropdown {
width: calc(100vw - 70px);
justify-content: space-between;
}
#menu-dropdown > span {
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.ui.grid > .row.over-content {
position: absolute;
z-index: 99;
opacity: 0.95;
animation: fadeInDown .5s;
}
animation: fadeOutUp .5s;
}
@keyframes fadeOutUp {
0% {
opacity: 1;
}
100% {
opacity: 0;
transform: translate3d(0, -100%, 0);
}
}
@keyframes fadeInDown {
from {
opacity: 0;
transform: translate3d(0, -100%, 0);
}
to {
opacity: 1;
transform: translate3d(0, 0, 0);
}
}
.ui.message > .close.icon {
cursor: pointer;
position: absolute;
margin: 0em;
top: 0.78575em;
right: 0.5em;
opacity: 0.7;
-webkit-transition: opacity 0.1s ease;
transition: opacity 0.1s ease;
}