import { html, Component, async, LitElement, property, OnInit, OnDestroy, OnUpdate, queryAll } from '@rxdi/lit-html'; import { timer } from 'rxjs'; import { map } from 'rxjs/operators'; import { RouteParams } from '@rxdi/router'; /** * @customElement '<%= dasherize(name) %>-component' */ @Component({ selector: '<%= dasherize(name) %>-component', template(this: <%= classify(name) %>Component) { return html`

${this.name}

${async(this.timer)} ${JSON.stringify(this.params)}
1
2
`; } }) export class <%= classify(name) %>Component extends LitElement implements OnInit, OnDestroy, OnUpdate { @property() private name: string; @RouteParams() private params: any; @queryAll('div') private divs: HTMLElement[]; private timer = timer(1, 1000).pipe(map(v => v)); OnInit() { console.log('<%= classify(name) %>Component component init'); } OnDestroy() { console.log('<%= classify(name) %>Component component destroyed'); } OnUpdate() { console.log('<%= classify(name) %>Component component updated'); } }