view client/src/App.vue @ 904:e4b72a199258

New default bottleneck colors Mainly to make the stroke color one actually selectable in the ui. In addition the pink does better match the collors used on the ECDIS layer.
author Sascha Wilde <wilde@intevation.de>
date Tue, 02 Oct 2018 13:34:59 +0200
parents d7ae7338872d
children d7f34791b18d
line wrap: on
line source

<template>
    <div id="app" class="main">
        <div v-if="isAuthenticated" class="d-flex flex-column userinterface">
            <div class="topcontainer">
                <Topbar :routeName="routeName"></Topbar>
            </div>
            <div class="midcontainer d-flex flex-row">
                <div class="leftcontainer">
                    <Sidebar></Sidebar>
                </div>
                <div class="middle">

                </div>
                <div class="rightcontainer">

                </div>
            </div>
            <div class="bottomcontainer d-flex flex-row align-items-end">
                <Userbar></Userbar>
                <Morphtool v-if="routeName == 'mainview'"></Morphtool>
                <Linetool v-if="routeName == 'mainview'"></Linetool>
            </div>
        </div>
        <div class="d-flex flex-column">
            <router-view/>
        </div>
    </div>
</template>

<style lang="scss">
html {
  height: 100%;
  width: 100%;
  margin: 0 auto;
}
body {
  height: 100%;
  width: 100%;
  background-color: #efefef !important;
}

.topcontainer {
  height: 10vh;
}

.bottomcontainer {
  height: 10vh;
}

.midcontainer {
  height: 80vh;
}

.rightcontainer {
  width: 20vw;
}

.leftcontainer {
  width: 20vw;
}

.middle {
  width: 60vw;
}

.userinterface {
  position: absolute;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  z-index: 4;
  pointer-events: none;
}

#app {
  height: 100vh;
  width: 100vw;
  font-family: "Avenir", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
}
</style>

<script>
import Sidebar from "./application/Sidebar";
import Topbar from "./application/Topbar";
import { mapGetters } from "vuex";
import Userbar from "./application/Userbar";
import Linetool from "./application/Linetool";
import Morphtool from "./application/Morphtool";

export default {
  name: "app",
  computed: {
    ...mapGetters("user", ["isAuthenticated"]),
    routeName() {
      const routeName = this.$route.name;
      return routeName;
    }
  },
  components: {
    Sidebar,
    Topbar,
    Userbar,
    Linetool,
    Morphtool
  }
};
</script>