+
{content?.custom ?? (
= Row
+
export type DataTableAction = {
label: string
onClick: (ctx: CellContext) => void
diff --git a/packages/design-system/ui/src/blocks/data-table/use-data-table.tsx b/packages/design-system/ui/src/blocks/data-table/use-data-table.tsx
index 35289b50a4..1b481d13fc 100644
--- a/packages/design-system/ui/src/blocks/data-table/use-data-table.tsx
+++ b/packages/design-system/ui/src/blocks/data-table/use-data-table.tsx
@@ -21,6 +21,7 @@ import {
DataTableFilteringState,
DataTableFilterOption,
DataTablePaginationState,
+ DataTableRow,
DataTableRowSelectionState,
DataTableSortingState,
} from "./types";
@@ -56,6 +57,7 @@ interface DataTableOptions
rowSelection?: {
state: DataTableRowSelectionState
onRowSelectionChange: (state: DataTableRowSelectionState) => void
+ enableRowSelection?: boolean | ((row: DataTableRow) => boolean) | undefined
}
/**
* The state and callback for the sorting.
@@ -170,7 +172,7 @@ const useDataTable = ({
const { state: sortingState, onSortingChange } = sorting ?? {}
const { state: filteringState, onFilteringChange } = filtering ?? {}
const { state: paginationState, onPaginationChange } = pagination ?? {}
- const { state: rowSelectionState, onRowSelectionChange } = rowSelection ?? {}
+ const { state: rowSelectionState, onRowSelectionChange, enableRowSelection } = rowSelection ?? {}
const autoResetPageIndexHandler = React.useCallback(() => {
return autoResetPageIndex
@@ -236,6 +238,7 @@ const useDataTable = ({
),
pagination: paginationState,
},
+ enableRowSelection,
rowCount,
onColumnFiltersChange: filteringStateHandler(),
onRowSelectionChange: rowSelectionStateHandler(),
diff --git a/yarn.lock b/yarn.lock
index 63dd30c3ab..f07dd0a347 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5294,7 +5294,7 @@ __metadata:
languageName: unknown
linkType: soft
-"@medusajs/admin-vite-plugin@2.4.0, @medusajs/admin-vite-plugin@workspace:packages/admin/admin-vite-plugin":
+"@medusajs/admin-vite-plugin@2.4.0, @medusajs/admin-vite-plugin@workspace:packages/admin/admin-vite-plugin, @medusajs/admin-vite-plugin@~2.4.0":
version: 0.0.0-use.local
resolution: "@medusajs/admin-vite-plugin@workspace:packages/admin/admin-vite-plugin"
dependencies:
@@ -5605,12 +5605,12 @@ __metadata:
"@hookform/error-message": ^2.0.1
"@hookform/resolvers": 3.4.2
"@medusajs/admin-shared": ~2.4.0
- "@medusajs/admin-vite-plugin": 2.4.0
- "@medusajs/icons": 2.4.0
- "@medusajs/js-sdk": 2.4.0
- "@medusajs/types": 2.4.0
- "@medusajs/ui": 4.0.4
- "@medusajs/ui-preset": 2.4.0
+ "@medusajs/admin-vite-plugin": ~2.4.0
+ "@medusajs/icons": ~2.4.0
+ "@medusajs/js-sdk": ~2.4.0
+ "@medusajs/types": ~2.4.0
+ "@medusajs/ui": ~4.0.4
+ "@medusajs/ui-preset": ~2.4.0
"@tanstack/react-query": 5.64.2
"@tanstack/react-table": 8.20.5
"@tanstack/react-virtual": ^3.8.3
@@ -5848,7 +5848,7 @@ __metadata:
languageName: unknown
linkType: soft
-"@medusajs/icons@2.4.0, @medusajs/icons@workspace:packages/design-system/icons, @medusajs/icons@~2.4.0":
+"@medusajs/icons@workspace:packages/design-system/icons, @medusajs/icons@~2.4.0":
version: 0.0.0-use.local
resolution: "@medusajs/icons@workspace:packages/design-system/icons"
dependencies:
@@ -5934,7 +5934,7 @@ __metadata:
languageName: unknown
linkType: soft
-"@medusajs/js-sdk@2.4.0, @medusajs/js-sdk@workspace:packages/core/js-sdk":
+"@medusajs/js-sdk@workspace:packages/core/js-sdk, @medusajs/js-sdk@~2.4.0":
version: 0.0.0-use.local
resolution: "@medusajs/js-sdk@workspace:packages/core/js-sdk"
dependencies:
@@ -6631,7 +6631,7 @@ __metadata:
languageName: unknown
linkType: soft
-"@medusajs/types@2.4.0, @medusajs/types@workspace:^, @medusajs/types@workspace:packages/core/types, @medusajs/types@~2.4.0":
+"@medusajs/types@workspace:^, @medusajs/types@workspace:packages/core/types, @medusajs/types@~2.4.0":
version: 0.0.0-use.local
resolution: "@medusajs/types@workspace:packages/core/types"
dependencies:
@@ -6654,7 +6654,7 @@ __metadata:
languageName: unknown
linkType: soft
-"@medusajs/ui-preset@2.4.0, @medusajs/ui-preset@workspace:packages/design-system/ui-preset, @medusajs/ui-preset@~2.4.0":
+"@medusajs/ui-preset@workspace:packages/design-system/ui-preset, @medusajs/ui-preset@~2.4.0":
version: 0.0.0-use.local
resolution: "@medusajs/ui-preset@workspace:packages/design-system/ui-preset"
dependencies:
@@ -6669,7 +6669,7 @@ __metadata:
languageName: unknown
linkType: soft
-"@medusajs/ui@4.0.4, @medusajs/ui@workspace:packages/design-system/ui":
+"@medusajs/ui@workspace:packages/design-system/ui, @medusajs/ui@~4.0.4":
version: 0.0.0-use.local
resolution: "@medusajs/ui@workspace:packages/design-system/ui"
dependencies: