diff --git a/apps/www/src/content/docs/components/data-table.md b/apps/www/src/content/docs/components/data-table.md
index d36f2104..b43074b4 100644
--- a/apps/www/src/content/docs/components/data-table.md
+++ b/apps/www/src/content/docs/components/data-table.md
@@ -866,11 +866,237 @@ This adds a checkbox to each row and a checkbox in the header to select all rows
You can show the number of selected rows using the `table.getFilteredSelectedRowModel()` API.
-```vue
-
- {{ table.getFilteredSelectedRowModel().rows.length }} of
- {{ table.getFilteredRowModel().rows.length }} row(s) selected.
-
+```vue:line-numbers {8-11}
+
+
+
+
+
+
+ {{ table.getFilteredSelectedRowModel().rows.length }} of
+ {{ table.getFilteredRowModel().rows.length }} row(s) selected.
+
+
+
+
+
+
+```
+
+
+
+
+
+## Expanding
+
+Let's make rows expandable.
+
+### Update ``
+
+```vue:line-numbers {7,30,43,52,57,63,103-116}
+
+
+
+
+
+
+
+
+
+ Columns
+
+
+
+
+ {
+ column.toggleVisibility(!!value)
+ }">
+ {{ column.id }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ JSON.stringify(row.original) }}
+
+
+
+
+
+
+
+ No results.
+
+
+
+
+
+
+
+
+```
+
+### Add the expand action to the `DataTableDropDown.vue` component
+
+```vue:line-numbers {12-14,34-36}
+
+
+
+
+
+
+ Open menu
+
+
+
+
+ Actions
+
+ Copy payment ID
+
+
+ Expand
+
+
+ View customer
+ View payment details
+
+
+
+```
+
+### Make rows expandable
+
+Now we can update the action cell to add the expand control.
+
+```vue:line-numbers {11}
+
+
```
diff --git a/apps/www/src/lib/registry/default/example/DataTableColumnPinningDemo.vue b/apps/www/src/lib/registry/default/example/DataTableColumnPinningDemo.vue
index 16d27c9d..e6cb4617 100644
--- a/apps/www/src/lib/registry/default/example/DataTableColumnPinningDemo.vue
+++ b/apps/www/src/lib/registry/default/example/DataTableColumnPinningDemo.vue
@@ -1,6 +1,7 @@
@@ -201,15 +208,18 @@ const table = useVueTable({
-
-
-
-
-
+
+
+
+
+
+
+
+
+ {{ JSON.stringify(row.original) }}
+
+
+
diff --git a/apps/www/src/lib/registry/default/example/DataTableDemoColumn.vue b/apps/www/src/lib/registry/default/example/DataTableDemoColumn.vue
index 1292cba3..93f7ba71 100644
--- a/apps/www/src/lib/registry/default/example/DataTableDemoColumn.vue
+++ b/apps/www/src/lib/registry/default/example/DataTableDemoColumn.vue
@@ -9,6 +9,10 @@ defineProps<{
}
}>()
+defineEmits<{
+ (e: 'expand'): void
+}>()
+
function copy(id: string) {
navigator.clipboard.writeText(id)
}
@@ -27,6 +31,9 @@ function copy(id: string) {
Copy payment ID
+
+ Expand
+
View customer
View payment details
diff --git a/apps/www/src/lib/registry/new-york/example/DataTableColumnPinningDemo.vue b/apps/www/src/lib/registry/new-york/example/DataTableColumnPinningDemo.vue
index 1f6f129d..7c3e0242 100644
--- a/apps/www/src/lib/registry/new-york/example/DataTableColumnPinningDemo.vue
+++ b/apps/www/src/lib/registry/new-york/example/DataTableColumnPinningDemo.vue
@@ -1,6 +1,7 @@
@@ -201,15 +208,18 @@ const table = useVueTable({
-
-
-
-
-
+
+
+
+
+
+
+
+
+ {{ JSON.stringify(row.original) }}
+
+
+
diff --git a/apps/www/src/lib/registry/new-york/example/DataTableDemoColumn.vue b/apps/www/src/lib/registry/new-york/example/DataTableDemoColumn.vue
index 7031caa8..22c51491 100644
--- a/apps/www/src/lib/registry/new-york/example/DataTableDemoColumn.vue
+++ b/apps/www/src/lib/registry/new-york/example/DataTableDemoColumn.vue
@@ -9,6 +9,10 @@ defineProps<{
}
}>()
+defineEmits<{
+ (e: 'expand'): void
+}>()
+
function copy(id: string) {
navigator.clipboard.writeText(id)
}
@@ -27,6 +31,9 @@ function copy(id: string) {
Copy payment ID
+
+ Expand
+
View customer
View payment details