2020-04-30 17:48:53 +02:00
|
|
|
<template>
|
2020-05-07 17:45:04 +02:00
|
|
|
<div id="wrapper">
|
2020-05-08 18:02:18 +02:00
|
|
|
<TheSettingBar />
|
|
|
|
<div id="main-content" class="container">
|
2020-05-13 18:40:49 +02:00
|
|
|
<TheAppWelcome v-if="!connections.length" @newConn="showNewConnModal" />
|
2020-05-14 15:21:57 +02:00
|
|
|
<div v-else class="columns col-gapless">
|
|
|
|
<DatabaseWorkspace
|
|
|
|
v-for="connection in connections"
|
|
|
|
:key="connection.uid"
|
|
|
|
:connection="connection"
|
|
|
|
/>
|
|
|
|
</div>
|
2020-05-07 17:45:04 +02:00
|
|
|
</div>
|
2020-05-08 18:02:18 +02:00
|
|
|
<TheFooter />
|
2020-05-15 17:52:59 +02:00
|
|
|
<TheNotificationsBoard />
|
2020-05-12 18:27:31 +02:00
|
|
|
<ModalNewConnection v-if="isNewConnModal" />
|
2020-05-23 22:02:09 +02:00
|
|
|
<ModalEditConnection v-if="isEditModal" />
|
2020-04-30 17:48:53 +02:00
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
2020-05-12 18:27:31 +02:00
|
|
|
import { mapActions, mapGetters } from 'vuex';
|
2020-05-08 18:02:18 +02:00
|
|
|
import TheSettingBar from '@/components/TheSettingBar';
|
|
|
|
import TheFooter from '@/components/TheFooter';
|
2020-05-15 17:52:59 +02:00
|
|
|
import TheNotificationsBoard from '@/components/TheNotificationsBoard';
|
2020-05-08 18:02:18 +02:00
|
|
|
import TheAppWelcome from '@/components/TheAppWelcome';
|
2020-05-14 15:21:57 +02:00
|
|
|
import DatabaseWorkspace from '@/components/DatabaseWorkspace';
|
2020-05-12 18:27:31 +02:00
|
|
|
import ModalNewConnection from '@/components/ModalNewConnection';
|
2020-05-23 22:02:09 +02:00
|
|
|
import ModalEditConnection from '@/components/ModalEditConnection';
|
2020-04-30 17:48:53 +02:00
|
|
|
|
|
|
|
export default {
|
|
|
|
name: 'App',
|
|
|
|
components: {
|
2020-05-08 18:02:18 +02:00
|
|
|
TheSettingBar,
|
|
|
|
TheFooter,
|
2020-05-15 17:52:59 +02:00
|
|
|
TheNotificationsBoard,
|
2020-05-08 18:02:18 +02:00
|
|
|
TheAppWelcome,
|
2020-05-14 15:21:57 +02:00
|
|
|
DatabaseWorkspace,
|
2020-05-23 22:02:09 +02:00
|
|
|
ModalNewConnection,
|
|
|
|
ModalEditConnection
|
2020-05-07 17:45:04 +02:00
|
|
|
},
|
|
|
|
data () {
|
|
|
|
return {
|
|
|
|
};
|
|
|
|
},
|
|
|
|
computed: {
|
2020-05-12 18:27:31 +02:00
|
|
|
...mapGetters({
|
|
|
|
isLoading: 'application/isLoading',
|
2020-05-13 18:40:49 +02:00
|
|
|
isNewConnModal: 'connections/isNewModal',
|
2020-05-23 22:02:09 +02:00
|
|
|
isEditModal: 'connections/isEditModal',
|
2020-05-13 18:40:49 +02:00
|
|
|
connections: 'connections/getConnections'
|
2020-05-08 18:02:18 +02:00
|
|
|
})
|
2020-05-07 17:45:04 +02:00
|
|
|
},
|
|
|
|
methods: {
|
2020-05-08 18:02:18 +02:00
|
|
|
...mapActions({
|
|
|
|
showNewConnModal: 'connections/showNewConnModal'
|
|
|
|
})
|
2020-04-30 17:48:53 +02:00
|
|
|
}
|
|
|
|
};
|
|
|
|
</script>
|
|
|
|
|
2020-05-14 15:21:57 +02:00
|
|
|
<style lang="scss">
|
2020-05-07 17:45:04 +02:00
|
|
|
html,
|
|
|
|
body{
|
|
|
|
height: 100%;
|
2020-05-08 18:02:18 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
#wrapper{
|
|
|
|
display: flex;
|
|
|
|
height: 100vh;
|
|
|
|
position: relative;
|
|
|
|
}
|
|
|
|
|
2020-05-14 15:21:57 +02:00
|
|
|
#main-content {
|
|
|
|
padding: 0;
|
|
|
|
justify-content: flex-start;
|
|
|
|
|
|
|
|
> .columns{
|
|
|
|
height: 100vh;
|
|
|
|
}
|
|
|
|
}
|
2020-04-30 17:48:53 +02:00
|
|
|
</style>
|