import {LitElement, html, customElement, property, css} from 'lit-element';
import {TextField} from '@material/mwc-textfield';
import '@material/mwc-textfield';
import {TopAppBarFixed} from '@material/mwc-top-app-bar-fixed';
import '../pdf-viewer.js';
import '@material/mwc-switch';
import {Switch} from '@material/mwc-switch';
@customElement('pdf-viewer-app-bar')
export class TopAppBar extends TopAppBarFixed {
static styles = [TopAppBarFixed.styles, css`
.mdc-top-app-bar--fixed-adjust {
height: 100%;
box-sizing: border-box;
}
`] as any;
}
@customElement('pdf-viewer-demo')
export class PDFViewerDemo extends LitElement {
@property() src: string = './f1040.pdf';
@property({attribute: 'multi-page', type: Boolean}) multiPage = false;
@property({type: Number}) page = 1;
static styles = css`
pdf-viewer-app-bar {
height: 100vh;
background: #efefef;
}
#content {
display: flex;
flex-direction: column;
height: 100%;
}
#controls {
background: white;
display: flex;
flex-direction: row;
align-items: baseline;
padding: 16px;
}
#demo-container {
flex: auto;
display: flex;
align-items: center;
justify-content: center;
}
pdf-viewer {
width: 800px;
height: 800px;
}
`;
render() {
console.log('demo render', this.multiPage);
return html`
<pdf-viewer> Demo
`;
}
_srcChanged(e: Event) {
this.src = (e.target as TextField).value;
}
_pageChanged(e: Event) {
this.page = Number((e.target as TextField).value);
}
_multiPageChanged(e: Event) {
this.multiPage = (e.target as Switch).checked;
}
}