|
- import { h, Component } from 'preact';
- import { Router, route } from 'preact-router';
- import WBBrowse from 'wb-browse';
- import WBSignIn from 'wb-sign-in';
- import WBLandingPage from 'wb-landing-page';
-
- class WBApp extends Component {
- constructor(...args) {
- super(...args);
- this.state.arvHost = window.localStorage['arvHost'];
- this.state.arvToken = window.localStorage['arvToken'];
- this.appCallbacks = {
- 'navbarItemClicked': this.navbarItemClicked
- };
- }
-
- navbarItemClicked(item) {
- if (item['id'] === 'sign-out') {
- delete window.localStorage['arvHost'];
- delete window.localStorage['arvToken'];
- delete window.localStorage['currentUser'];
- route('/sign-in');
- }
- }
-
- render({}, { activePage, arvHost, arvToken }) {
- return (
- <Router>
- <WBLandingPage path="/" />
-
- <WBSignIn path="/sign-in" />
-
- <WBBrowse path="/browse/:ownerUuid?" appCallbacks={ this.appCallbacks } />
- </Router>
- );
- }
- }
-
- export default WBApp;
|