Pinafore-Web-Client-Frontend/routes/_components/Layout.html

37 lines
936 B
HTML
Raw Normal View History

<Nav {page} />
2018-01-07 00:51:25 +01:00
<div class="container" tabindex="0" ref:container>
<main>
<slot></slot>
</main>
{#if !$isUserLoggedIn && page === 'home'}
<InformationalFooter />
{/if}
</div>
2018-01-07 00:51:25 +01:00
<script>
2018-04-20 06:38:01 +02:00
import Nav from './Nav.html'
2018-01-28 22:09:39 +01:00
import { store } from '../_store/store'
import InformationalFooter from './InformationalFooter.html'
2018-01-07 00:51:25 +01:00
2018-04-20 06:38:01 +02:00
// Only focus the `.container` div on first load so it does not intefere
// with other desired behaviours (e.g. you click a toot, you navigate from
// a timeline view to a thread view, you press the back button, and now
// you're still focused on the toot).
let firstTime = true
2018-04-20 06:38:01 +02:00
export default {
components: {
Nav,
InformationalFooter
},
oncreate () {
if (firstTime) {
firstTime = false
this.refs.container.focus()
}
let { page } = this.get()
this.store.set({currentPage: page})
},
store: () => store
2018-04-20 06:38:01 +02:00
}
2018-01-07 00:51:25 +01:00
</script>