docs: add documentation for DataTable (#11095)

* docs: add documentation for DataTable

* update package versions
This commit is contained in:
Shahed Nasser
2025-01-27 11:04:46 +02:00
committed by GitHub
parent 956a50e934
commit c8fc5edadd
55 changed files with 3453 additions and 1549 deletions
@@ -0,0 +1,23 @@
{
"description": "",
"methods": [],
"displayName": "DataTable.ActionCell",
"props": {
"ctx": {
"required": true,
"tsType": {
"name": "CellContext",
"elements": [
{
"name": "TData"
},
{
"name": "unknown"
}
],
"raw": "CellContext<TData, unknown>"
},
"description": ""
}
}
}
@@ -0,0 +1,23 @@
{
"description": "This component adds a command bar to the data table, which is used\nto show commands that can be executed on the selected rows.",
"methods": [],
"displayName": "DataTable.CommandBar",
"props": {
"selectedLabel": {
"required": false,
"tsType": {
"name": "union",
"raw": "((count: number) => string) | string",
"elements": [
{
"name": "unknown"
},
{
"name": "string"
}
]
},
"description": "The label to show when items are selected. If a function is passed, \nit will be called with the count of selected items."
}
}
}
@@ -0,0 +1,21 @@
{
"description": "",
"methods": [],
"displayName": "DataTable.Filter",
"props": {
"id": {
"required": true,
"tsType": {
"name": "string"
},
"description": ""
},
"filter": {
"required": true,
"tsType": {
"name": "unknown"
},
"description": ""
}
}
}
@@ -0,0 +1,18 @@
{
"description": "",
"methods": [],
"displayName": "DataTable.FilterBar",
"props": {
"clearAllFiltersLabel": {
"required": false,
"tsType": {
"name": "string"
},
"description": "",
"defaultValue": {
"value": "\"Clear all\"",
"computed": false
}
}
}
}
@@ -0,0 +1,14 @@
{
"description": "This component adds a filter menu to the data table, allowing users\nto filter the table's data.",
"methods": [],
"displayName": "DataTable.FilterMenu",
"props": {
"tooltip": {
"required": false,
"tsType": {
"name": "string"
},
"description": "The tooltip to show when hovering over the filter menu."
}
}
}
@@ -0,0 +1,15 @@
{
"description": "This component adds a pagination component and functionality to the data table.",
"methods": [],
"displayName": "DataTable.Pagination",
"props": {
"translations": {
"required": false,
"tsType": {
"name": "ReactComponentProps[\"translations\"]",
"raw": "React.ComponentProps<typeof Table.Pagination>[\"translations\"]"
},
"description": "The translations for strings in the pagination component."
}
}
}
@@ -0,0 +1,28 @@
{
"description": "This component adds a search input to the data table, allowing users\nto search through the table's data.",
"methods": [],
"displayName": "DataTable.Search",
"props": {
"autoFocus": {
"required": false,
"tsType": {
"name": "boolean"
},
"description": "If true, the search input will be focused on mount."
},
"className": {
"required": false,
"tsType": {
"name": "string"
},
"description": "Additional classes to pass to the search input."
},
"placeholder": {
"required": false,
"tsType": {
"name": "string"
},
"description": "The placeholder text to show in the search input."
}
}
}
@@ -0,0 +1,23 @@
{
"description": "",
"methods": [],
"displayName": "DataTable.SelectCell",
"props": {
"ctx": {
"required": true,
"tsType": {
"name": "DataTableCellContext",
"elements": [
{
"name": "TData"
},
{
"name": "unknown"
}
],
"raw": "DataTableCellContext<TData, unknown>"
},
"description": ""
}
}
}
@@ -0,0 +1,24 @@
{
"description": "",
"methods": [],
"displayName": "DataTable.SortingIcon",
"props": {
"direction": {
"required": true,
"tsType": {
"name": "union",
"raw": "DataTableSortDirection | false",
"elements": [
{
"name": "DataTableSortDirection"
},
{
"name": "literal",
"value": "false"
}
]
},
"description": ""
}
}
}
@@ -0,0 +1,14 @@
{
"description": "This component adds a sorting menu to the data table, allowing users\nto sort the table's data.",
"methods": [],
"displayName": "DataTable.SortingMenu",
"props": {
"tooltip": {
"required": false,
"tsType": {
"name": "string"
},
"description": "The tooltip to show when hovering over the sorting menu."
}
}
}
@@ -0,0 +1,98 @@
{
"description": "This component renders the table in a data table, supporting advanced features.\nIt's useful to create tables similar to those in the Medusa Admin dashboard.",
"methods": [],
"displayName": "DataTable.Table",
"props": {
"emptyState": {
"required": false,
"tsType": {
"name": "signature",
"type": "object",
"raw": "{\n /**\n * The empty state to display when the table is filtered, but no rows are found.\n */\n filtered?: DataTableEmptyStateContent\n /**\n * The empty state to display when the table is empty.\n */\n empty?: DataTableEmptyStateContent\n}",
"signature": {
"properties": [
{
"key": "filtered",
"value": {
"name": "signature",
"type": "object",
"raw": "{\n /**\n * The heading to display in the empty state.\n */\n heading?: string\n /**\n * The description to display in the empty state.\n */\n description?: string\n /**\n * A custom component to display in the empty state, if provided it will override the heading and description.\n */\n custom?: React.ReactNode\n}",
"signature": {
"properties": [
{
"key": "heading",
"value": {
"name": "string",
"required": false
},
"description": "The heading to display in the empty state."
},
{
"key": "description",
"value": {
"name": "string",
"required": false
},
"description": "The description to display in the empty state."
},
{
"key": "custom",
"value": {
"name": "ReactReactNode",
"raw": "React.ReactNode",
"required": false
},
"description": "A custom component to display in the empty state, if provided it will override the heading and description."
}
]
},
"required": false
},
"description": "The empty state to display when the table is filtered, but no rows are found."
},
{
"key": "empty",
"value": {
"name": "signature",
"type": "object",
"raw": "{\n /**\n * The heading to display in the empty state.\n */\n heading?: string\n /**\n * The description to display in the empty state.\n */\n description?: string\n /**\n * A custom component to display in the empty state, if provided it will override the heading and description.\n */\n custom?: React.ReactNode\n}",
"signature": {
"properties": [
{
"key": "heading",
"value": {
"name": "string",
"required": false
},
"description": "The heading to display in the empty state."
},
{
"key": "description",
"value": {
"name": "string",
"required": false
},
"description": "The description to display in the empty state."
},
{
"key": "custom",
"value": {
"name": "ReactReactNode",
"raw": "React.ReactNode",
"required": false
},
"description": "A custom component to display in the empty state, if provided it will override the heading and description."
}
]
},
"required": false
},
"description": "The empty state to display when the table is empty."
}
]
}
},
"description": "The empty state to display when the table is empty."
}
}
}
@@ -0,0 +1,35 @@
{
"description": "This component creates a data table with filters, pagination, sorting, and more.\nIt's built on top of the `Table` component while expanding its functionality.",
"methods": [],
"displayName": "DataTable",
"props": {
"instance": {
"required": true,
"tsType": {
"name": "UseDataTableReturn",
"elements": [
{
"name": "TData"
}
],
"raw": "UseDataTableReturn<TData>"
},
"description": "The instance returned by the `useDataTable` hook."
},
"children": {
"required": false,
"tsType": {
"name": "ReactReactNode",
"raw": "React.ReactNode"
},
"description": "The children of the component."
},
"className": {
"required": false,
"tsType": {
"name": "string"
},
"description": "Additional classes to pass to the wrapper `div` of the component."
}
}
}
@@ -0,0 +1,28 @@
{
"description": "",
"methods": [],
"displayName": "DataTableContextProvider",
"props": {
"instance": {
"required": true,
"tsType": {
"name": "UseDataTableReturn",
"elements": [
{
"name": "TData"
}
],
"raw": "UseDataTableReturn<TData>"
},
"description": ""
},
"children": {
"required": true,
"tsType": {
"name": "ReactReactNode",
"raw": "React.ReactNode"
},
"description": ""
}
}
}
@@ -0,0 +1,105 @@
{
"description": "",
"methods": [],
"displayName": "DataTableEmptyStateDisplay",
"props": {
"state": {
"required": true,
"tsType": {
"name": "DataTableEmptyState"
},
"description": ""
},
"props": {
"required": false,
"tsType": {
"name": "signature",
"type": "object",
"raw": "{\n /**\n * The empty state to display when the table is filtered, but no rows are found.\n */\n filtered?: DataTableEmptyStateContent\n /**\n * The empty state to display when the table is empty.\n */\n empty?: DataTableEmptyStateContent\n}",
"signature": {
"properties": [
{
"key": "filtered",
"value": {
"name": "signature",
"type": "object",
"raw": "{\n /**\n * The heading to display in the empty state.\n */\n heading?: string\n /**\n * The description to display in the empty state.\n */\n description?: string\n /**\n * A custom component to display in the empty state, if provided it will override the heading and description.\n */\n custom?: React.ReactNode\n}",
"signature": {
"properties": [
{
"key": "heading",
"value": {
"name": "string",
"required": false
},
"description": "The heading to display in the empty state."
},
{
"key": "description",
"value": {
"name": "string",
"required": false
},
"description": "The description to display in the empty state."
},
{
"key": "custom",
"value": {
"name": "ReactReactNode",
"raw": "React.ReactNode",
"required": false
},
"description": "A custom component to display in the empty state, if provided it will override the heading and description."
}
]
},
"required": false
},
"description": "The empty state to display when the table is filtered, but no rows are found."
},
{
"key": "empty",
"value": {
"name": "signature",
"type": "object",
"raw": "{\n /**\n * The heading to display in the empty state.\n */\n heading?: string\n /**\n * The description to display in the empty state.\n */\n description?: string\n /**\n * A custom component to display in the empty state, if provided it will override the heading and description.\n */\n custom?: React.ReactNode\n}",
"signature": {
"properties": [
{
"key": "heading",
"value": {
"name": "string",
"required": false
},
"description": "The heading to display in the empty state."
},
{
"key": "description",
"value": {
"name": "string",
"required": false
},
"description": "The description to display in the empty state."
},
{
"key": "custom",
"value": {
"name": "ReactReactNode",
"raw": "React.ReactNode",
"required": false
},
"description": "A custom component to display in the empty state, if provided it will override the heading and description."
}
]
},
"required": false
},
"description": "The empty state to display when the table is empty."
}
]
}
},
"description": ""
}
}
}
@@ -0,0 +1,14 @@
{
"description": "",
"methods": [],
"displayName": "DataTableFilterBarSkeleton",
"props": {
"filterCount": {
"required": true,
"tsType": {
"name": "number"
},
"description": ""
}
}
}
@@ -0,0 +1,135 @@
{
"description": "",
"methods": [],
"displayName": "DataTableFilterDateContent",
"props": {
"id": {
"required": true,
"tsType": {
"name": "string"
},
"description": ""
},
"filter": {
"required": true,
"tsType": {
"name": "unknown"
},
"description": ""
},
"options": {
"required": true,
"tsType": {
"name": "Array",
"elements": [
{
"name": "DataTableFilterOption",
"elements": [
{
"name": "DataTableDateComparisonOperator"
}
],
"raw": "DataTableFilterOption<DataTableDateComparisonOperator>"
}
],
"raw": "DataTableFilterOption<DataTableDateComparisonOperator>[]"
},
"description": ""
},
"isCustom": {
"required": true,
"tsType": {
"name": "boolean"
},
"description": ""
},
"setIsCustom": {
"required": true,
"tsType": {
"name": "signature",
"type": "function",
"raw": "(isCustom: boolean) => void",
"signature": {
"arguments": [
{
"type": {
"name": "boolean"
},
"name": "isCustom"
}
],
"return": {
"name": "void"
}
}
},
"description": ""
},
"format": {
"defaultValue": {
"value": "\"date\"",
"computed": false
},
"description": "",
"tsType": {
"name": "union",
"raw": "\"date\" \\| \"date-time\"",
"elements": [
{
"name": "literal",
"value": "\"date\""
},
{
"name": "literal",
"value": "\"date-time\""
}
]
},
"required": false
},
"rangeOptionLabel": {
"defaultValue": {
"value": "\"Custom\"",
"computed": false
},
"description": "",
"tsType": {
"name": "string"
},
"required": false
},
"rangeOptionStartLabel": {
"defaultValue": {
"value": "\"Starting\"",
"computed": false
},
"description": "",
"tsType": {
"name": "string"
},
"required": false
},
"rangeOptionEndLabel": {
"defaultValue": {
"value": "\"Ending\"",
"computed": false
},
"description": "",
"tsType": {
"name": "string"
},
"required": false
},
"disableRangeOption": {
"defaultValue": {
"value": "false",
"computed": false
},
"description": "",
"tsType": {
"name": "boolean"
},
"required": false
}
}
}
@@ -0,0 +1,6 @@
{
"description": "",
"methods": [],
"displayName": "DataTableFilterMenuSkeleton",
"props": {}
}
@@ -0,0 +1,40 @@
{
"description": "",
"methods": [],
"displayName": "DataTableFilterRadioContent",
"props": {
"id": {
"required": true,
"tsType": {
"name": "string"
},
"description": ""
},
"filter": {
"required": true,
"tsType": {
"name": "unknown"
},
"description": ""
},
"options": {
"required": true,
"tsType": {
"name": "Array",
"elements": [
{
"name": "DataTableFilterOption",
"elements": [
{
"name": "string"
}
],
"raw": "DataTableFilterOption<string>"
}
],
"raw": "DataTableFilterOption<string>[]"
},
"description": ""
}
}
}
@@ -0,0 +1,50 @@
{
"description": "",
"methods": [],
"displayName": "DataTableFilterSelectContent",
"props": {
"id": {
"required": true,
"tsType": {
"name": "string"
},
"description": ""
},
"filter": {
"required": false,
"tsType": {
"name": "Array",
"elements": [
{
"name": "string"
}
],
"raw": "string[]"
},
"description": "",
"defaultValue": {
"value": "[]",
"computed": false
}
},
"options": {
"required": true,
"tsType": {
"name": "Array",
"elements": [
{
"name": "DataTableFilterOption",
"elements": [
{
"name": "string"
}
],
"raw": "DataTableFilterOption<string>"
}
],
"raw": "DataTableFilterOption<string>[]"
},
"description": ""
}
}
}
@@ -0,0 +1,6 @@
{
"description": "",
"methods": [],
"displayName": "DataTablePaginationSkeleton",
"props": {}
}
@@ -0,0 +1,6 @@
{
"description": "",
"methods": [],
"displayName": "DataTableSearchSkeleton",
"props": {}
}
@@ -0,0 +1,23 @@
{
"description": "",
"methods": [],
"displayName": "DataTableSelectHeader",
"props": {
"ctx": {
"required": true,
"tsType": {
"name": "DataTableHeaderContext",
"elements": [
{
"name": "TData"
},
{
"name": "unknown"
}
],
"raw": "DataTableHeaderContext<TData, unknown>"
},
"description": ""
}
}
}
@@ -0,0 +1,6 @@
{
"description": "",
"methods": [],
"displayName": "DataTableSortingMenuSkeleton",
"props": {}
}
@@ -0,0 +1,18 @@
{
"description": "",
"methods": [],
"displayName": "DataTableTableSkeleton",
"props": {
"pageSize": {
"required": false,
"tsType": {
"name": "number"
},
"description": "",
"defaultValue": {
"value": "10",
"computed": false
}
}
}
}
@@ -0,0 +1,29 @@
{
"description": "Toolbar shown for the data table.",
"methods": [],
"displayName": "DataTableToolbar",
"props": {
"className": {
"required": false,
"tsType": {
"name": "string"
},
"description": "Additional classes to pass to the wrapper `div` of the component."
},
"children": {
"required": false,
"tsType": {
"name": "ReactReactNode",
"raw": "React.ReactNode"
},
"description": "The children to show in the toolbar."
},
"translations": {
"required": false,
"tsType": {
"name": "DataTableToolbarTranslations"
},
"description": "The translations of strings in the toolbar."
}
}
}
@@ -0,0 +1,29 @@
{
"description": "",
"methods": [],
"displayName": "DefaultEmptyStateContent",
"props": {
"heading": {
"required": false,
"tsType": {
"name": "string"
},
"description": "The heading to display in the empty state."
},
"description": {
"required": false,
"tsType": {
"name": "string"
},
"description": "The description to display in the empty state."
},
"custom": {
"required": false,
"tsType": {
"name": "ReactReactNode",
"raw": "React.ReactNode"
},
"description": "A custom component to display in the empty state, if provided it will override the heading and description."
}
}
}
@@ -0,0 +1,95 @@
{
"description": "",
"methods": [],
"displayName": "OptionButton",
"props": {
"index": {
"required": true,
"tsType": {
"name": "number"
},
"description": ""
},
"option": {
"required": true,
"tsType": {
"name": "DataTableFilterOption",
"elements": [
{
"name": "union",
"raw": "string | DataTableDateComparisonOperator",
"elements": [
{
"name": "string"
},
{
"name": "DataTableDateComparisonOperator"
}
]
}
],
"raw": "DataTableFilterOption<string | DataTableDateComparisonOperator>"
},
"description": ""
},
"isSelected": {
"required": true,
"tsType": {
"name": "boolean"
},
"description": ""
},
"isFocused": {
"required": true,
"tsType": {
"name": "boolean"
},
"description": ""
},
"onClick": {
"required": true,
"tsType": {
"name": "signature",
"type": "function",
"raw": "() => void",
"signature": {
"arguments": [],
"return": {
"name": "void"
}
}
},
"description": ""
},
"onMouseEvent": {
"required": true,
"tsType": {
"name": "signature",
"type": "function",
"raw": "(idx: number) => void",
"signature": {
"arguments": [
{
"type": {
"name": "number"
},
"name": "idx"
}
],
"return": {
"name": "void"
}
}
},
"description": ""
},
"icon": {
"required": true,
"tsType": {
"name": "ReactElementType",
"raw": "React.ElementType"
},
"description": ""
}
}
}
@@ -0,0 +1,6 @@
{
"description": "",
"methods": [],
"displayName": "Skeleton",
"props": {}
}