| 25 | } |
| 26 | |
| 27 | class LitQueryApp extends LitElement { |
| 28 | private readonly query = createQueryController(this, { |
| 29 | queryKey: ['test'], |
| 30 | queryFn: async () => { |
| 31 | await new Promise((resolve) => setTimeout(resolve, 100)) |
| 32 | return 'Success' |
| 33 | }, |
| 34 | }) |
| 35 | |
| 36 | protected override createRenderRoot(): HTMLElement | DocumentFragment { |
| 37 | return this |
| 38 | } |
| 39 | |
| 40 | render() { |
| 41 | const query = this.query() |
| 42 | |
| 43 | if (query.isPending) { |
| 44 | return html`<div>Loading...</div>` |
| 45 | } |
| 46 | |
| 47 | if (query.isError) { |
| 48 | return html`<div>An error has occurred!</div>` |
| 49 | } |
| 50 | |
| 51 | return html`<div>${query.data}</div>` |
| 52 | } |
| 53 | } |
| 54 | |
| 55 | customElements.define('lit-query-provider', LitQueryProvider) |
| 56 | customElements.define('lit-query-app', LitQueryApp) |
nothing calls this directly
no test coverage detected