diff --git a/src/components/landing/TableLanding.tsx b/src/components/landing/TableLanding.tsx
index a0ab189b..be663944 100644
--- a/src/components/landing/TableLanding.tsx
+++ b/src/components/landing/TableLanding.tsx
@@ -210,31 +210,56 @@ const table = useVueTable({ data, columns, getCoreRowModel: getCoreRowModel() })
},
lit: {
lang: 'ts',
- code: `import { LitElement, customElement, html } from 'lit'
-import { createLitTable, getCoreRowModel, flexRender } from '@tanstack/lit-table'
+ code: `import { html, LitElement } from 'lit'
+import { customElement } from 'lit/decorators.js'
+import {
+ flexRender,
+ getCoreRowModel,
+ TableController,
+} from '@tanstack/lit-table'
const data = [{ id: 1, name: 'Ada' }]
const columns = [{ accessorKey: 'name', header: 'Name' }]
@customElement('simple-table')
export class SimpleTable extends LitElement {
- table = createLitTable({ data, columns, getCoreRowModel: getCoreRowModel() })
-
- render() {
- return html\`
-
- \${this.table.getHeaderGroups().map((hg) => html\`
- \${hg.headers.map((header) => html\`| \${flexRender(header.column.columnDef.header, header.getContext())} | \`)}
-
\`)}
-
-
- \${this.table.getRowModel().rows.map((row) => html\`
- \${row.getVisibleCells().map((cell) => html\`| \${flexRender(cell.column.columnDef.cell, cell.getContext())} | \`)}
-
\`)}
-
-
\`
- }
-}`,
+ private tableController = new TableController(this)
+
+ render() {
+ const table = this.tableController.table({
+ columns,
+ data,
+ getCoreRowModel: getCoreRowModel(),
+ })
+ return html\`
+
+
+ \${table.getHeaderGroups().map((hg) => html\`
+
+ \${hg.headers.map((header) => html\`
+ |
+ \${flexRender(header.column.columnDef.header, header.getContext())}
+ |
+ \`)}
+
+ \`)}
+
+
+ \${table.getRowModel().rows.map((row) => html\`
+
+ \${row.getVisibleCells().map((cell) => html\`
+ |
+ \${flexRender(cell.column.columnDef.cell, cell.getContext())}
+ |
+ \`)}
+
+ \`)}
+
+
+ \`
+ }
+}
+ `,
},
qwik: {
lang: 'tsx',