2020-05-29 14:28:12 +02:00
|
|
|
<script>
|
|
|
|
import { store, backendUiStore } from "builderStore"
|
|
|
|
import ComponentsHierarchy from "components/userInterface/ComponentsHierarchy.svelte"
|
|
|
|
import PageLayout from "components/userInterface/PageLayout.svelte"
|
|
|
|
import PagesList from "components/userInterface/PagesList.svelte"
|
|
|
|
import NewScreen from "components/userInterface/NewScreen.svelte"
|
|
|
|
|
|
|
|
const newScreen = () => {
|
|
|
|
newScreenPicker.show()
|
|
|
|
}
|
|
|
|
|
|
|
|
let newScreenPicker
|
|
|
|
</script>
|
|
|
|
|
2020-05-29 19:31:47 +02:00
|
|
|
<PagesList />
|
2020-05-29 14:28:12 +02:00
|
|
|
|
2020-05-29 19:31:47 +02:00
|
|
|
<button
|
|
|
|
class="newscreen"
|
|
|
|
on:click={newScreen}>
|
|
|
|
Create New Screen
|
|
|
|
</button>
|
2020-05-29 14:28:12 +02:00
|
|
|
|
|
|
|
<PageLayout layout={$store.pages[$store.currentPageName]} />
|
|
|
|
|
2020-05-29 19:31:47 +02:00
|
|
|
|
|
|
|
<div class="nav-items-container">
|
|
|
|
<ComponentsHierarchy screens={$store.screens} />
|
2020-05-29 14:28:12 +02:00
|
|
|
</div>
|
|
|
|
|
|
|
|
<NewScreen bind:this={newScreenPicker} />
|
|
|
|
|
|
|
|
<style>
|
|
|
|
|
2020-05-29 19:31:47 +02:00
|
|
|
.newscreen {
|
2020-05-29 14:28:12 +02:00
|
|
|
cursor: pointer;
|
2020-05-29 19:31:47 +02:00
|
|
|
border: 1px solid var(--grey-dark);
|
|
|
|
border-radius: 3px;
|
|
|
|
width: 100%;
|
|
|
|
padding: 8px 16px;
|
|
|
|
margin: 12px 0px;
|
2020-05-29 14:28:12 +02:00
|
|
|
display: flex;
|
|
|
|
justify-content: center;
|
|
|
|
align-items: center;
|
2020-05-29 19:31:47 +02:00
|
|
|
background: white;
|
|
|
|
color: var(--ink);
|
|
|
|
font-size: 14px;
|
|
|
|
font-weight: 500;
|
|
|
|
transition: all 2ms;
|
2020-05-29 14:28:12 +02:00
|
|
|
}
|
|
|
|
|
2020-05-29 19:31:47 +02:00
|
|
|
.newscreen:hover {
|
|
|
|
background: var(--grey-light);
|
2020-05-29 14:28:12 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
.components-nav-header {
|
|
|
|
font-size: 13px;
|
|
|
|
color: var(--ink);
|
|
|
|
margin-top: 20px;
|
|
|
|
font-weight: 600;
|
|
|
|
opacity: 0.4;
|
|
|
|
letter-spacing: 1px;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.nav-group-header {
|
|
|
|
display: flex;
|
|
|
|
font-size: 0.9rem;
|
|
|
|
font-weight: bold;
|
|
|
|
justify-content: space-between;
|
|
|
|
align-items: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.nav-group-header > span:nth-child(3) {
|
|
|
|
margin-left: 5px;
|
|
|
|
vertical-align: bottom;
|
|
|
|
grid-column-start: title;
|
|
|
|
margin-top: auto;
|
|
|
|
}
|
|
|
|
|
|
|
|
.border-line {
|
|
|
|
border-bottom: 1px solid #d8d8d8;
|
|
|
|
}
|
|
|
|
|
|
|
|
.components-list-container {
|
|
|
|
padding: 20px 0px 0 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
</style>
|