@raystack/apsara 0.33.1-alpha → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/style.css +1 -1
- package/dist/v1/components/calendar/calendar.cjs +2 -2
- package/dist/v1/components/calendar/calendar.cjs.map +1 -1
- package/dist/v1/components/calendar/calendar.d.ts.map +1 -1
- package/dist/v1/components/calendar/calendar.js +2 -2
- package/dist/v1/components/calendar/calendar.js.map +1 -1
- package/dist/v1/components/data-table/components/content.cjs +10 -5
- package/dist/v1/components/data-table/components/content.cjs.map +1 -1
- package/dist/v1/components/data-table/components/content.d.ts.map +1 -1
- package/dist/v1/components/data-table/components/content.js +10 -5
- package/dist/v1/components/data-table/components/content.js.map +1 -1
- package/dist/v1/components/data-table/components/display-properties.cjs +1 -1
- package/dist/v1/components/data-table/components/display-properties.cjs.map +1 -1
- package/dist/v1/components/data-table/components/display-properties.js +1 -1
- package/dist/v1/components/data-table/components/display-properties.js.map +1 -1
- package/dist/v1/components/data-table/components/display-settings.cjs +2 -2
- package/dist/v1/components/data-table/components/display-settings.cjs.map +1 -1
- package/dist/v1/components/data-table/components/display-settings.d.ts.map +1 -1
- package/dist/v1/components/data-table/components/display-settings.js +1 -1
- package/dist/v1/components/data-table/components/display-settings.js.map +1 -1
- package/dist/v1/components/data-table/components/filters.cjs +3 -2
- package/dist/v1/components/data-table/components/filters.cjs.map +1 -1
- package/dist/v1/components/data-table/components/filters.js +3 -2
- package/dist/v1/components/data-table/components/filters.js.map +1 -1
- package/dist/v1/components/data-table/components/grouping.cjs +1 -2
- package/dist/v1/components/data-table/components/grouping.cjs.map +1 -1
- package/dist/v1/components/data-table/components/grouping.d.ts.map +1 -1
- package/dist/v1/components/data-table/components/grouping.js +1 -2
- package/dist/v1/components/data-table/components/grouping.js.map +1 -1
- package/dist/v1/components/data-table/components/ordering.cjs.map +1 -1
- package/dist/v1/components/data-table/components/ordering.d.ts +2 -2
- package/dist/v1/components/data-table/components/ordering.d.ts.map +1 -1
- package/dist/v1/components/data-table/components/ordering.js.map +1 -1
- package/dist/v1/components/data-table/data-table.cjs +4 -2
- package/dist/v1/components/data-table/data-table.cjs.map +1 -1
- package/dist/v1/components/data-table/data-table.d.ts +1 -1
- package/dist/v1/components/data-table/data-table.d.ts.map +1 -1
- package/dist/v1/components/data-table/data-table.js +4 -2
- package/dist/v1/components/data-table/data-table.js.map +1 -1
- package/dist/v1/components/data-table/data-table.module.css.cjs +1 -1
- package/dist/v1/components/data-table/data-table.module.css.js +1 -1
- package/dist/v1/components/data-table/data-table.types.cjs +7 -0
- package/dist/v1/components/data-table/data-table.types.cjs.map +1 -1
- package/dist/v1/components/data-table/data-table.types.d.ts +24 -9
- package/dist/v1/components/data-table/data-table.types.d.ts.map +1 -1
- package/dist/v1/components/data-table/data-table.types.js +6 -1
- package/dist/v1/components/data-table/data-table.types.js.map +1 -1
- package/dist/v1/components/data-table/hooks/useFilters.cjs +8 -5
- package/dist/v1/components/data-table/hooks/useFilters.cjs.map +1 -1
- package/dist/v1/components/data-table/hooks/useFilters.d.ts.map +1 -1
- package/dist/v1/components/data-table/hooks/useFilters.js +9 -6
- package/dist/v1/components/data-table/hooks/useFilters.js.map +1 -1
- package/dist/v1/components/data-table/index.d.ts +1 -1
- package/dist/v1/components/data-table/index.d.ts.map +1 -1
- package/dist/v1/components/data-table/utils/filter-operations.cjs +50 -1
- package/dist/v1/components/data-table/utils/filter-operations.cjs.map +1 -1
- package/dist/v1/components/data-table/utils/filter-operations.d.ts +12 -2
- package/dist/v1/components/data-table/utils/filter-operations.d.ts.map +1 -1
- package/dist/v1/components/data-table/utils/filter-operations.js +49 -2
- package/dist/v1/components/data-table/utils/filter-operations.js.map +1 -1
- package/dist/v1/components/data-table/utils/index.cjs +13 -15
- package/dist/v1/components/data-table/utils/index.cjs.map +1 -1
- package/dist/v1/components/data-table/utils/index.d.ts +2 -6
- package/dist/v1/components/data-table/utils/index.d.ts.map +1 -1
- package/dist/v1/components/data-table/utils/index.js +11 -12
- package/dist/v1/components/data-table/utils/index.js.map +1 -1
- package/dist/v1/components/filter-chip/filter-chip.cjs +2 -2
- package/dist/v1/components/filter-chip/filter-chip.cjs.map +1 -1
- package/dist/v1/components/filter-chip/filter-chip.js +2 -2
- package/dist/v1/components/filter-chip/filter-chip.js.map +1 -1
- package/dist/v1/components/select/select.cjs +8 -2
- package/dist/v1/components/select/select.cjs.map +1 -1
- package/dist/v1/components/select/select.d.ts +1 -0
- package/dist/v1/components/select/select.d.ts.map +1 -1
- package/dist/v1/components/select/select.js +8 -2
- package/dist/v1/components/select/select.js.map +1 -1
- package/dist/v1/components/table/table.cjs.map +1 -1
- package/dist/v1/components/table/table.d.ts +1 -1
- package/dist/v1/components/table/table.js.map +1 -1
- package/dist/v1/index.cjs +4 -2
- package/dist/v1/index.cjs.map +1 -1
- package/dist/v1/index.d.ts +1 -1
- package/dist/v1/index.d.ts.map +1 -1
- package/dist/v1/index.js +2 -2
- package/dist/v1/style.css +1 -1
- package/dist/v1/types/filters.cjs +2 -2
- package/dist/v1/types/filters.cjs.map +1 -1
- package/dist/v1/types/filters.d.ts +5 -5
- package/dist/v1/types/filters.d.ts.map +1 -1
- package/dist/v1/types/filters.js +2 -2
- package/dist/v1/types/filters.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filters.cjs","sources":["../../../../../v1/components/data-table/components/filters.tsx"],"sourcesContent":["import { FilterChip } from \"../../filter-chip\";\nimport { DataTableColumn } from \"../data-table.types\";\nimport { IconButton } from \"../../icon-button\";\nimport { Button } from \"../../button\";\nimport { FilterIcon } from \"../../icons\";\nimport { DropdownMenu } from \"../../dropdown-menu\";\nimport { useDataTable } from \"../hooks/useDataTable\";\nimport { Flex } from \"../../flex\";\nimport { FilterOperatorTypes } from \"~/v1/types/filters\";\nimport { useFilters } from \"../hooks/useFilters\";\n\ninterface AddFilterProps<TData, TValue> {\n columnList: DataTableColumn<TData, TValue>[];\n appliedFiltersSet: Set<string>;\n onAddFilter: (column: DataTableColumn<TData, TValue>) => void;\n}\n\nfunction AddFilter<TData, TValue>({\n columnList = [],\n appliedFiltersSet,\n onAddFilter,\n}: AddFilterProps<TData, TValue>) {\n const availableFilters = columnList?.filter(\n (col) => !appliedFiltersSet.has(col.id)\n );\n\n return availableFilters.length > 0 ? (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild>\n {appliedFiltersSet.size > 0 ? (\n <IconButton size={4}>\n <FilterIcon />\n </IconButton>\n ) : (\n <Button variant={\"text\"} size={\"small\"} leadingIcon={<FilterIcon />}>\n Filter\n </Button>\n )}\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\">\n {availableFilters?.map((column) => {\n const columnDef = column.columnDef;\n const id = columnDef.accessorKey || column.id;\n return (\n <DropdownMenu.Item key={id} onSelect={() => onAddFilter(column)}>\n {columnDef.header || id}\n </DropdownMenu.Item>\n );\n })}\n </DropdownMenu.Content>\n </DropdownMenu>\n ) : null;\n}\n\nexport function Filters<TData, TValue>() {\n const { table, tableQuery } = useDataTable();\n const columns = table?.getAllColumns() as DataTableColumn<TData, TValue>[];\n\n const {\n onAddFilter,\n handleRemoveFilter,\n handleFilterValueChange,\n handleFilterOperationChange,\n } = useFilters<TData, TValue>();\n\n const columnList = columns?.filter(\n (column) => column.columnDef.enableColumnFilter\n );\n\n const appliedFiltersSet = new Set(\n tableQuery?.filters?.map((filter) => filter.name)\n );\n\n const appliedFilters =\n tableQuery?.filters?.map((filter) => {\n const columnDef = columns?.find((col) => {\n const columnDef = col.columnDef;\n const id = columnDef.accessorKey || col.id;\n return id === filter.name;\n })?.columnDef;\n return {\n
|
|
1
|
+
{"version":3,"file":"filters.cjs","sources":["../../../../../v1/components/data-table/components/filters.tsx"],"sourcesContent":["import { FilterChip } from \"../../filter-chip\";\nimport { DataTableColumn } from \"../data-table.types\";\nimport { IconButton } from \"../../icon-button\";\nimport { Button } from \"../../button\";\nimport { FilterIcon } from \"../../icons\";\nimport { DropdownMenu } from \"../../dropdown-menu\";\nimport { useDataTable } from \"../hooks/useDataTable\";\nimport { Flex } from \"../../flex\";\nimport { FilterOperatorTypes, FilterType } from \"~/v1/types/filters\";\nimport { useFilters } from \"../hooks/useFilters\";\n\ninterface AddFilterProps<TData, TValue> {\n columnList: DataTableColumn<TData, TValue>[];\n appliedFiltersSet: Set<string>;\n onAddFilter: (column: DataTableColumn<TData, TValue>) => void;\n}\n\nfunction AddFilter<TData, TValue>({\n columnList = [],\n appliedFiltersSet,\n onAddFilter,\n}: AddFilterProps<TData, TValue>) {\n const availableFilters = columnList?.filter(\n (col) => !appliedFiltersSet.has(col.id)\n );\n\n return availableFilters.length > 0 ? (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild>\n {appliedFiltersSet.size > 0 ? (\n <IconButton size={4}>\n <FilterIcon />\n </IconButton>\n ) : (\n <Button variant={\"text\"} size={\"small\"} leadingIcon={<FilterIcon />}>\n Filter\n </Button>\n )}\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\">\n {availableFilters?.map((column) => {\n const columnDef = column.columnDef;\n const id = columnDef.accessorKey || column.id;\n return (\n <DropdownMenu.Item key={id} onSelect={() => onAddFilter(column)}>\n {columnDef.header || id}\n </DropdownMenu.Item>\n );\n })}\n </DropdownMenu.Content>\n </DropdownMenu>\n ) : null;\n}\n\nexport function Filters<TData, TValue>() {\n const { table, tableQuery } = useDataTable();\n const columns = table?.getAllColumns() as DataTableColumn<TData, TValue>[];\n\n const {\n onAddFilter,\n handleRemoveFilter,\n handleFilterValueChange,\n handleFilterOperationChange,\n } = useFilters<TData, TValue>();\n\n const columnList = columns?.filter(\n (column) => column.columnDef.enableColumnFilter\n );\n\n const appliedFiltersSet = new Set(\n tableQuery?.filters?.map((filter) => filter.name)\n );\n\n const appliedFilters =\n tableQuery?.filters?.map((filter) => {\n const columnDef = columns?.find((col) => {\n const columnDef = col.columnDef;\n const id = columnDef.accessorKey || col.id;\n return id === filter.name;\n })?.columnDef;\n return {\n filterType: columnDef?.filterType || FilterType.string,\n label: (columnDef?.header as string) || \"\",\n options: columnDef?.filterOptions || [],\n ...filter,\n };\n }) || [];\n\n return (\n <Flex gap={3}>\n <Flex gap={3}>\n {appliedFilters.map((filter) => (\n <FilterChip\n key={filter.name}\n label={filter.label}\n value={filter.value}\n onRemove={() => handleRemoveFilter(filter.name)}\n onValueChange={(value) =>\n handleFilterValueChange(filter.name, value)\n }\n onOperationChange={(operator) =>\n handleFilterOperationChange(\n filter.name,\n operator as FilterOperatorTypes\n )\n }\n columnType={filter.filterType}\n options={filter.options}\n />\n ))}\n </Flex>\n <AddFilter\n columnList={columnList}\n appliedFiltersSet={appliedFiltersSet}\n onAddFilter={onAddFilter}\n />\n </Flex>\n );\n}\n"],"names":["_jsxs","DropdownMenu","_jsx","IconButton","FilterIcon","Button","useDataTable","useFilters","FilterType","Flex","FilterChip"],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { ReactComponent as SvgFilter } from '../../icons/assets/filter.svg.js';
|
|
|
6
6
|
import { DropdownMenu } from '../../dropdown-menu/dropdown-menu.js';
|
|
7
7
|
import { useDataTable } from '../hooks/useDataTable.js';
|
|
8
8
|
import { Flex } from '../../flex/flex.js';
|
|
9
|
+
import { FilterType } from '../../../types/filters.js';
|
|
9
10
|
import { useFilters } from '../hooks/useFilters.js';
|
|
10
11
|
|
|
11
12
|
function AddFilter({ columnList = [], appliedFiltersSet, onAddFilter, }) {
|
|
@@ -29,13 +30,13 @@ function Filters() {
|
|
|
29
30
|
return id === filter.name;
|
|
30
31
|
})?.columnDef;
|
|
31
32
|
return {
|
|
32
|
-
|
|
33
|
+
filterType: columnDef?.filterType || FilterType.string,
|
|
33
34
|
label: columnDef?.header || "",
|
|
34
35
|
options: columnDef?.filterOptions || [],
|
|
35
36
|
...filter,
|
|
36
37
|
};
|
|
37
38
|
}) || [];
|
|
38
|
-
return (jsxRuntimeExports.jsxs(Flex, { gap: 3, children: [jsxRuntimeExports.jsx(Flex, { gap: 3, children: appliedFilters.map((filter) => (jsxRuntimeExports.jsx(FilterChip, { label: filter.label, value: filter.value, onRemove: () => handleRemoveFilter(filter.name), onValueChange: (value) => handleFilterValueChange(filter.name, value), onOperationChange: (operator) => handleFilterOperationChange(filter.name, operator), columnType: filter.
|
|
39
|
+
return (jsxRuntimeExports.jsxs(Flex, { gap: 3, children: [jsxRuntimeExports.jsx(Flex, { gap: 3, children: appliedFilters.map((filter) => (jsxRuntimeExports.jsx(FilterChip, { label: filter.label, value: filter.value, onRemove: () => handleRemoveFilter(filter.name), onValueChange: (value) => handleFilterValueChange(filter.name, value), onOperationChange: (operator) => handleFilterOperationChange(filter.name, operator), columnType: filter.filterType, options: filter.options }, filter.name))) }), jsxRuntimeExports.jsx(AddFilter, { columnList: columnList, appliedFiltersSet: appliedFiltersSet, onAddFilter: onAddFilter })] }));
|
|
39
40
|
}
|
|
40
41
|
|
|
41
42
|
export { Filters };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filters.js","sources":["../../../../../v1/components/data-table/components/filters.tsx"],"sourcesContent":["import { FilterChip } from \"../../filter-chip\";\nimport { DataTableColumn } from \"../data-table.types\";\nimport { IconButton } from \"../../icon-button\";\nimport { Button } from \"../../button\";\nimport { FilterIcon } from \"../../icons\";\nimport { DropdownMenu } from \"../../dropdown-menu\";\nimport { useDataTable } from \"../hooks/useDataTable\";\nimport { Flex } from \"../../flex\";\nimport { FilterOperatorTypes } from \"~/v1/types/filters\";\nimport { useFilters } from \"../hooks/useFilters\";\n\ninterface AddFilterProps<TData, TValue> {\n columnList: DataTableColumn<TData, TValue>[];\n appliedFiltersSet: Set<string>;\n onAddFilter: (column: DataTableColumn<TData, TValue>) => void;\n}\n\nfunction AddFilter<TData, TValue>({\n columnList = [],\n appliedFiltersSet,\n onAddFilter,\n}: AddFilterProps<TData, TValue>) {\n const availableFilters = columnList?.filter(\n (col) => !appliedFiltersSet.has(col.id)\n );\n\n return availableFilters.length > 0 ? (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild>\n {appliedFiltersSet.size > 0 ? (\n <IconButton size={4}>\n <FilterIcon />\n </IconButton>\n ) : (\n <Button variant={\"text\"} size={\"small\"} leadingIcon={<FilterIcon />}>\n Filter\n </Button>\n )}\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\">\n {availableFilters?.map((column) => {\n const columnDef = column.columnDef;\n const id = columnDef.accessorKey || column.id;\n return (\n <DropdownMenu.Item key={id} onSelect={() => onAddFilter(column)}>\n {columnDef.header || id}\n </DropdownMenu.Item>\n );\n })}\n </DropdownMenu.Content>\n </DropdownMenu>\n ) : null;\n}\n\nexport function Filters<TData, TValue>() {\n const { table, tableQuery } = useDataTable();\n const columns = table?.getAllColumns() as DataTableColumn<TData, TValue>[];\n\n const {\n onAddFilter,\n handleRemoveFilter,\n handleFilterValueChange,\n handleFilterOperationChange,\n } = useFilters<TData, TValue>();\n\n const columnList = columns?.filter(\n (column) => column.columnDef.enableColumnFilter\n );\n\n const appliedFiltersSet = new Set(\n tableQuery?.filters?.map((filter) => filter.name)\n );\n\n const appliedFilters =\n tableQuery?.filters?.map((filter) => {\n const columnDef = columns?.find((col) => {\n const columnDef = col.columnDef;\n const id = columnDef.accessorKey || col.id;\n return id === filter.name;\n })?.columnDef;\n return {\n
|
|
1
|
+
{"version":3,"file":"filters.js","sources":["../../../../../v1/components/data-table/components/filters.tsx"],"sourcesContent":["import { FilterChip } from \"../../filter-chip\";\nimport { DataTableColumn } from \"../data-table.types\";\nimport { IconButton } from \"../../icon-button\";\nimport { Button } from \"../../button\";\nimport { FilterIcon } from \"../../icons\";\nimport { DropdownMenu } from \"../../dropdown-menu\";\nimport { useDataTable } from \"../hooks/useDataTable\";\nimport { Flex } from \"../../flex\";\nimport { FilterOperatorTypes, FilterType } from \"~/v1/types/filters\";\nimport { useFilters } from \"../hooks/useFilters\";\n\ninterface AddFilterProps<TData, TValue> {\n columnList: DataTableColumn<TData, TValue>[];\n appliedFiltersSet: Set<string>;\n onAddFilter: (column: DataTableColumn<TData, TValue>) => void;\n}\n\nfunction AddFilter<TData, TValue>({\n columnList = [],\n appliedFiltersSet,\n onAddFilter,\n}: AddFilterProps<TData, TValue>) {\n const availableFilters = columnList?.filter(\n (col) => !appliedFiltersSet.has(col.id)\n );\n\n return availableFilters.length > 0 ? (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild>\n {appliedFiltersSet.size > 0 ? (\n <IconButton size={4}>\n <FilterIcon />\n </IconButton>\n ) : (\n <Button variant={\"text\"} size={\"small\"} leadingIcon={<FilterIcon />}>\n Filter\n </Button>\n )}\n </DropdownMenu.Trigger>\n <DropdownMenu.Content align=\"start\">\n {availableFilters?.map((column) => {\n const columnDef = column.columnDef;\n const id = columnDef.accessorKey || column.id;\n return (\n <DropdownMenu.Item key={id} onSelect={() => onAddFilter(column)}>\n {columnDef.header || id}\n </DropdownMenu.Item>\n );\n })}\n </DropdownMenu.Content>\n </DropdownMenu>\n ) : null;\n}\n\nexport function Filters<TData, TValue>() {\n const { table, tableQuery } = useDataTable();\n const columns = table?.getAllColumns() as DataTableColumn<TData, TValue>[];\n\n const {\n onAddFilter,\n handleRemoveFilter,\n handleFilterValueChange,\n handleFilterOperationChange,\n } = useFilters<TData, TValue>();\n\n const columnList = columns?.filter(\n (column) => column.columnDef.enableColumnFilter\n );\n\n const appliedFiltersSet = new Set(\n tableQuery?.filters?.map((filter) => filter.name)\n );\n\n const appliedFilters =\n tableQuery?.filters?.map((filter) => {\n const columnDef = columns?.find((col) => {\n const columnDef = col.columnDef;\n const id = columnDef.accessorKey || col.id;\n return id === filter.name;\n })?.columnDef;\n return {\n filterType: columnDef?.filterType || FilterType.string,\n label: (columnDef?.header as string) || \"\",\n options: columnDef?.filterOptions || [],\n ...filter,\n };\n }) || [];\n\n return (\n <Flex gap={3}>\n <Flex gap={3}>\n {appliedFilters.map((filter) => (\n <FilterChip\n key={filter.name}\n label={filter.label}\n value={filter.value}\n onRemove={() => handleRemoveFilter(filter.name)}\n onValueChange={(value) =>\n handleFilterValueChange(filter.name, value)\n }\n onOperationChange={(operator) =>\n handleFilterOperationChange(\n filter.name,\n operator as FilterOperatorTypes\n )\n }\n columnType={filter.filterType}\n options={filter.options}\n />\n ))}\n </Flex>\n <AddFilter\n columnList={columnList}\n appliedFiltersSet={appliedFiltersSet}\n onAddFilter={onAddFilter}\n />\n </Flex>\n );\n}\n"],"names":["_jsxs","_jsx","FilterIcon"],"mappings":"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"}
|
|
@@ -6,7 +6,6 @@ var dataTable_module = require('../data-table.module.css.cjs');
|
|
|
6
6
|
var text = require('../../text/text.cjs');
|
|
7
7
|
var select = require('../../select/select.cjs');
|
|
8
8
|
var dataTable_types = require('../data-table.types.cjs');
|
|
9
|
-
var index = require('../utils/index.cjs');
|
|
10
9
|
|
|
11
10
|
function Grouping({ columns = [], onChange, value, }) {
|
|
12
11
|
const columnList = columns
|
|
@@ -24,7 +23,7 @@ function Grouping({ columns = [], onChange, value, }) {
|
|
|
24
23
|
onChange(column.id, column.columnDef.groupSortOrder || dataTable_types.SortOrders.ASC);
|
|
25
24
|
}
|
|
26
25
|
};
|
|
27
|
-
return (jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { justify: "between", align: "center", children: [jsxRuntime.jsxRuntimeExports.jsx(text.Text, { size: 2, weight: 500, className: dataTable_module.default["flex-1"], children: "Grouping" }), jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { className: dataTable_module.default["flex-1"], children: jsxRuntime.jsxRuntimeExports.jsxs(select.Select, { onValueChange: handleGroupChange, value: value, children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Trigger, { size: "small", className: dataTable_module.default["display-popover-properties-select"], children: jsxRuntime.jsxRuntimeExports.jsx(select.Select.Value, { placeholder: "Select value" }) }), jsxRuntime.jsxRuntimeExports.jsxs(select.Select.Content, { "data-variant": "filter", children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value:
|
|
26
|
+
return (jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { justify: "between", align: "center", children: [jsxRuntime.jsxRuntimeExports.jsx(text.Text, { size: 2, weight: 500, className: dataTable_module.default["flex-1"], children: "Grouping" }), jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { className: dataTable_module.default["flex-1"], children: jsxRuntime.jsxRuntimeExports.jsxs(select.Select, { onValueChange: handleGroupChange, value: value, children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Trigger, { size: "small", className: dataTable_module.default["display-popover-properties-select"], children: jsxRuntime.jsxRuntimeExports.jsx(select.Select.Value, { placeholder: "Select value" }) }), jsxRuntime.jsxRuntimeExports.jsxs(select.Select.Content, { "data-variant": "filter", children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value: dataTable_types.defaultGroupOption.id, children: dataTable_types.defaultGroupOption.label }), columnList.map((column) => (jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value: column.id, children: column.label }, column.id)))] })] }) })] }));
|
|
28
27
|
}
|
|
29
28
|
|
|
30
29
|
exports.Grouping = Grouping;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grouping.cjs","sources":["../../../../../v1/components/data-table/components/grouping.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport {\n DataTableColumn,\n SortOrders,\n SortOrdersValues,\n} from \"../data-table.types\";\
|
|
1
|
+
{"version":3,"file":"grouping.cjs","sources":["../../../../../v1/components/data-table/components/grouping.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport {\n DataTableColumn,\n SortOrders,\n SortOrdersValues,\n defaultGroupOption,\n} from \"../data-table.types\";\n\ninterface GroupingProps<TData, TValue> {\n columns: DataTableColumn<TData, TValue>[];\n onChange: (columnId: string, order: SortOrdersValues) => void;\n value: string;\n}\n\nexport function Grouping<TData, TValue>({\n columns = [],\n onChange,\n value,\n}: GroupingProps<TData, TValue>) {\n const columnList = columns\n .filter((column) => column.columnDef.enableGrouping)\n ?.map((column) => {\n const id = column.id;\n return {\n label: column.columnDef.header || id,\n id: id,\n };\n });\n\n const handleGroupChange = (columnId: string) => {\n const column = columns.find((col) => col.id === columnId);\n if (column) {\n onChange(column.id, column.columnDef.groupSortOrder || SortOrders.ASC);\n }\n };\n\n return (\n <Flex justify=\"between\" align=\"center\">\n <Text size={2} weight={500} className={styles[\"flex-1\"]}>\n Grouping\n </Text>\n <Flex className={styles[\"flex-1\"]}>\n <Select onValueChange={handleGroupChange} value={value}>\n <Select.Trigger\n size={\"small\"}\n className={styles[\"display-popover-properties-select\"]}\n >\n <Select.Value placeholder=\"Select value\" />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n <Select.Item value={defaultGroupOption.id}>\n {defaultGroupOption.label}\n </Select.Item>\n {columnList.map((column) => (\n <Select.Item key={column.id} value={column.id}>\n {column.label}\n </Select.Item>\n ))}\n </Select.Content>\n </Select>\n </Flex>\n </Flex>\n );\n}\n"],"names":["SortOrders","_jsxs","Flex","_jsx","Text","styles","Select","defaultGroupOption"],"mappings":";;;;;;;;;AAiBM,SAAU,QAAQ,CAAgB,EACtC,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,KAAK,GACwB,EAAA;IAC7B,MAAM,UAAU,GAAG,OAAO;SACvB,MAAM,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACpD,UAAE,GAAG,CAAC,CAAC,MAAM,KAAI;AACf,QAAA,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,OAAO;AACL,YAAA,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE;AACpC,YAAA,EAAE,EAAE,EAAE;SACP,CAAC;AACJ,KAAC,CAAC,CAAC;AAEL,IAAA,MAAM,iBAAiB,GAAG,CAAC,QAAgB,KAAI;AAC7C,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;QAC1D,IAAI,MAAM,EAAE;AACV,YAAA,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,cAAc,IAAIA,0BAAU,CAAC,GAAG,CAAC,CAAC;SACxE;AACH,KAAC,CAAC;AAEF,IAAA,QACEC,iCAAA,CAACC,SAAI,EAAA,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EAAA,QAAA,EAAA,CACpCC,iCAACC,SAAI,EAAA,EAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAEC,wBAAM,CAAC,QAAQ,CAAC,EAAA,QAAA,EAAA,UAAA,EAAA,CAEhD,EACPF,gCAAC,CAAAD,SAAI,EAAC,EAAA,SAAS,EAAEG,wBAAM,CAAC,QAAQ,CAAC,EAC/B,QAAA,EAAAJ,iCAAA,CAACK,aAAM,EAAA,EAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,EACpD,QAAA,EAAA,CAAAH,gCAAA,CAACG,aAAM,CAAC,OAAO,EAAA,EACb,IAAI,EAAE,OAAO,EACb,SAAS,EAAED,wBAAM,CAAC,mCAAmC,CAAC,EAEtD,QAAA,EAAAF,gCAAA,CAACG,aAAM,CAAC,KAAK,EAAA,EAAC,WAAW,EAAC,cAAc,EAAA,CAAG,EAC5B,CAAA,EACjBL,iCAAC,CAAAK,aAAM,CAAC,OAAO,oBAAc,QAAQ,EAAA,QAAA,EAAA,CACnCH,gCAAC,CAAAG,aAAM,CAAC,IAAI,EAAC,EAAA,KAAK,EAAEC,kCAAkB,CAAC,EAAE,EAAA,QAAA,EACtCA,kCAAkB,CAAC,KAAK,EAAA,CACb,EACb,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,MACrBJ,gCAAA,CAACG,aAAM,CAAC,IAAI,EAAA,EAAiB,KAAK,EAAE,MAAM,CAAC,EAAE,EAC1C,QAAA,EAAA,MAAM,CAAC,KAAK,EADG,EAAA,MAAM,CAAC,EAAE,CAEb,CACf,CAAC,CACa,EAAA,CAAA,CAAA,EAAA,CACV,EACJ,CAAA,CAAA,EAAA,CACF,EACP;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grouping.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/grouping.tsx"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EAEf,gBAAgB,
|
|
1
|
+
{"version":3,"file":"grouping.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/grouping.tsx"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EAEf,gBAAgB,EAEjB,MAAM,qBAAqB,CAAC;AAE7B,UAAU,aAAa,CAAC,KAAK,EAAE,MAAM;IACnC,OAAO,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IAC1C,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC9D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,EACtC,OAAY,EACZ,QAAQ,EACR,KAAK,GACN,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,2CA6C9B"}
|
|
@@ -3,8 +3,7 @@ import { Flex } from '../../flex/flex.js';
|
|
|
3
3
|
import styles from '../data-table.module.css.js';
|
|
4
4
|
import { Text } from '../../text/text.js';
|
|
5
5
|
import { Select } from '../../select/select.js';
|
|
6
|
-
import { SortOrders } from '../data-table.types.js';
|
|
7
|
-
import { defaultGroupOption } from '../utils/index.js';
|
|
6
|
+
import { defaultGroupOption, SortOrders } from '../data-table.types.js';
|
|
8
7
|
|
|
9
8
|
function Grouping({ columns = [], onChange, value, }) {
|
|
10
9
|
const columnList = columns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grouping.js","sources":["../../../../../v1/components/data-table/components/grouping.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport {\n DataTableColumn,\n SortOrders,\n SortOrdersValues,\n} from \"../data-table.types\";\
|
|
1
|
+
{"version":3,"file":"grouping.js","sources":["../../../../../v1/components/data-table/components/grouping.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport {\n DataTableColumn,\n SortOrders,\n SortOrdersValues,\n defaultGroupOption,\n} from \"../data-table.types\";\n\ninterface GroupingProps<TData, TValue> {\n columns: DataTableColumn<TData, TValue>[];\n onChange: (columnId: string, order: SortOrdersValues) => void;\n value: string;\n}\n\nexport function Grouping<TData, TValue>({\n columns = [],\n onChange,\n value,\n}: GroupingProps<TData, TValue>) {\n const columnList = columns\n .filter((column) => column.columnDef.enableGrouping)\n ?.map((column) => {\n const id = column.id;\n return {\n label: column.columnDef.header || id,\n id: id,\n };\n });\n\n const handleGroupChange = (columnId: string) => {\n const column = columns.find((col) => col.id === columnId);\n if (column) {\n onChange(column.id, column.columnDef.groupSortOrder || SortOrders.ASC);\n }\n };\n\n return (\n <Flex justify=\"between\" align=\"center\">\n <Text size={2} weight={500} className={styles[\"flex-1\"]}>\n Grouping\n </Text>\n <Flex className={styles[\"flex-1\"]}>\n <Select onValueChange={handleGroupChange} value={value}>\n <Select.Trigger\n size={\"small\"}\n className={styles[\"display-popover-properties-select\"]}\n >\n <Select.Value placeholder=\"Select value\" />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n <Select.Item value={defaultGroupOption.id}>\n {defaultGroupOption.label}\n </Select.Item>\n {columnList.map((column) => (\n <Select.Item key={column.id} value={column.id}>\n {column.label}\n </Select.Item>\n ))}\n </Select.Content>\n </Select>\n </Flex>\n </Flex>\n );\n}\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAiBM,SAAU,QAAQ,CAAgB,EACtC,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,KAAK,GACwB,EAAA;IAC7B,MAAM,UAAU,GAAG,OAAO;SACvB,MAAM,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACpD,UAAE,GAAG,CAAC,CAAC,MAAM,KAAI;AACf,QAAA,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,OAAO;AACL,YAAA,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE;AACpC,YAAA,EAAE,EAAE,EAAE;SACP,CAAC;AACJ,KAAC,CAAC,CAAC;AAEL,IAAA,MAAM,iBAAiB,GAAG,CAAC,QAAgB,KAAI;AAC7C,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;QAC1D,IAAI,MAAM,EAAE;AACV,YAAA,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,cAAc,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;SACxE;AACH,KAAC,CAAC;AAEF,IAAA,QACEA,sBAAA,CAAC,IAAI,EAAA,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EAAA,QAAA,EAAA,CACpCC,sBAAC,IAAI,EAAA,EAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAA,QAAA,EAAA,UAAA,EAAA,CAEhD,EACPA,qBAAC,CAAA,IAAI,EAAC,EAAA,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,EAC/B,QAAA,EAAAD,sBAAA,CAAC,MAAM,EAAA,EAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,EACpD,QAAA,EAAA,CAAAC,qBAAA,CAAC,MAAM,CAAC,OAAO,EAAA,EACb,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,MAAM,CAAC,mCAAmC,CAAC,EAEtD,QAAA,EAAAA,qBAAA,CAAC,MAAM,CAAC,KAAK,EAAA,EAAC,WAAW,EAAC,cAAc,EAAA,CAAG,EAC5B,CAAA,EACjBD,sBAAC,CAAA,MAAM,CAAC,OAAO,oBAAc,QAAQ,EAAA,QAAA,EAAA,CACnCC,qBAAC,CAAA,MAAM,CAAC,IAAI,EAAC,EAAA,KAAK,EAAE,kBAAkB,CAAC,EAAE,EAAA,QAAA,EACtC,kBAAkB,CAAC,KAAK,EAAA,CACb,EACb,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,MACrBA,qBAAA,CAAC,MAAM,CAAC,IAAI,EAAA,EAAiB,KAAK,EAAE,MAAM,CAAC,EAAE,EAC1C,QAAA,EAAA,MAAM,CAAC,KAAK,EADG,EAAA,MAAM,CAAC,EAAE,CAEb,CACf,CAAC,CACa,EAAA,CAAA,CAAA,EAAA,CACV,EACJ,CAAA,CAAA,EAAA,CACF,EACP;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ordering.cjs","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { TextAlignTopIcon, TextAlignBottomIcon } from \"@radix-ui/react-icons\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport { IconButton } from \"../../icon-button\";\nimport {\n ColumnData,\n
|
|
1
|
+
{"version":3,"file":"ordering.cjs","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { TextAlignTopIcon, TextAlignBottomIcon } from \"@radix-ui/react-icons\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport { IconButton } from \"../../icon-button\";\nimport {\n ColumnData,\n DataTableSort,\n SortOrders,\n SortOrdersValues,\n} from \"../data-table.types\";\n\nexport interface OrderingProps {\n columnList: ColumnData[];\n onChange: (columnId: string, order: SortOrdersValues) => void;\n value: DataTableSort;\n}\n\nexport function Ordering({ columnList, onChange, value }: OrderingProps) {\n function handleColumnChange(columnId: string) {\n onChange(columnId, value.order);\n }\n\n function handleOrderChange() {\n const newOrder =\n value.order === SortOrders.ASC ? SortOrders.DESC : SortOrders.ASC;\n onChange(value.name, newOrder);\n }\n\n return (\n <Flex justify=\"between\" align=\"center\">\n <Text size={2} weight={500} className={styles[\"flex-1\"]}>\n Ordering\n </Text>\n <Flex gap={\"extra-small\"} className={styles[\"flex-1\"]}>\n <Select\n onValueChange={handleColumnChange}\n value={value.name}\n disabled={columnList.length === 0}\n >\n <Select.Trigger\n size={\"small\"}\n className={styles[\"display-popover-properties-select\"]}\n with-icon-button=\"true\"\n >\n <Select.Value placeholder=\"Select value\" />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n {columnList.map((column) => (\n <Select.Item key={column.id} value={column.id}>\n {column.label}\n </Select.Item>\n ))}\n </Select.Content>\n </Select>\n <IconButton\n onClick={handleOrderChange}\n size={4}\n disabled={columnList.length === 0}\n >\n {value.order === SortOrders?.ASC ? (\n <TextAlignBottomIcon\n className={styles[\"display-popover-sort-icon\"]}\n />\n ) : (\n <TextAlignTopIcon className={styles[\"display-popover-sort-icon\"]} />\n )}\n </IconButton>\n </Flex>\n </Flex>\n );\n}\n"],"names":["SortOrders","_jsxs","Flex","_jsx","Text","styles","Select","IconButton","TextAlignBottomIcon","TextAlignTopIcon"],"mappings":";;;;;;;;;;;AAmBM,SAAU,QAAQ,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAiB,EAAA;IACrE,SAAS,kBAAkB,CAAC,QAAgB,EAAA;AAC1C,QAAA,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;KACjC;AAED,IAAA,SAAS,iBAAiB,GAAA;QACxB,MAAM,QAAQ,GACZ,KAAK,CAAC,KAAK,KAAKA,0BAAU,CAAC,GAAG,GAAGA,0BAAU,CAAC,IAAI,GAAGA,0BAAU,CAAC,GAAG,CAAC;AACpE,QAAA,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KAChC;IAED,QACEC,kCAACC,SAAI,EAAA,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EACpC,QAAA,EAAA,CAAAC,gCAAA,CAACC,SAAI,EAAC,EAAA,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAEC,wBAAM,CAAC,QAAQ,CAAC,yBAEhD,EACPJ,iCAAA,CAACC,SAAI,EAAC,EAAA,GAAG,EAAE,aAAa,EAAE,SAAS,EAAEG,wBAAM,CAAC,QAAQ,CAAC,EACnD,QAAA,EAAA,CAAAJ,iCAAA,CAACK,aAAM,EAAA,EACL,aAAa,EAAE,kBAAkB,EACjC,KAAK,EAAE,KAAK,CAAC,IAAI,EACjB,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAA,QAAA,EAAA,CAEjCH,iCAACG,aAAM,CAAC,OAAO,EAAA,EACb,IAAI,EAAE,OAAO,EACb,SAAS,EAAED,wBAAM,CAAC,mCAAmC,CAAC,EAAA,kBAAA,EACrC,MAAM,EAEvB,QAAA,EAAAF,gCAAA,CAACG,aAAM,CAAC,KAAK,IAAC,WAAW,EAAC,cAAc,EAAG,CAAA,EAAA,CAC5B,EACjBH,gCAAA,CAACG,aAAM,CAAC,OAAO,EAAc,EAAA,cAAA,EAAA,QAAQ,YAClC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,MACrBH,gCAAA,CAACG,aAAM,CAAC,IAAI,IAAiB,KAAK,EAAE,MAAM,CAAC,EAAE,EAAA,QAAA,EAC1C,MAAM,CAAC,KAAK,IADG,MAAM,CAAC,EAAE,CAEb,CACf,CAAC,EACa,CAAA,CAAA,EAAA,CACV,EACTH,gCAAC,CAAAI,qBAAU,IACT,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,YAEhC,KAAK,CAAC,KAAK,KAAKP,0BAAU,EAAE,GAAG,IAC9BG,iCAACK,kCAAmB,EAAA,EAClB,SAAS,EAAEH,wBAAM,CAAC,2BAA2B,CAAC,EAAA,CAC9C,KAEFF,gCAAA,CAACM,+BAAgB,EAAC,EAAA,SAAS,EAAEJ,wBAAM,CAAC,2BAA2B,CAAC,EAAA,CAAI,CACrE,EACU,CAAA,CAAA,EAAA,CACR,CACF,EAAA,CAAA,EACP;AACJ;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ColumnData,
|
|
1
|
+
import { ColumnData, DataTableSort, SortOrdersValues } from "../data-table.types";
|
|
2
2
|
export interface OrderingProps {
|
|
3
3
|
columnList: ColumnData[];
|
|
4
4
|
onChange: (columnId: string, order: SortOrdersValues) => void;
|
|
5
|
-
value:
|
|
5
|
+
value: DataTableSort;
|
|
6
6
|
}
|
|
7
7
|
export declare function Ordering({ columnList, onChange, value }: OrderingProps): import("react/jsx-runtime").JSX.Element;
|
|
8
8
|
//# sourceMappingURL=ordering.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ordering.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EACV,
|
|
1
|
+
{"version":3,"file":"ordering.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EACV,aAAa,EAEb,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC9D,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,wBAAgB,QAAQ,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,2CAqDtE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ordering.js","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { TextAlignTopIcon, TextAlignBottomIcon } from \"@radix-ui/react-icons\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport { IconButton } from \"../../icon-button\";\nimport {\n ColumnData,\n
|
|
1
|
+
{"version":3,"file":"ordering.js","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"sourcesContent":["import { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\nimport { TextAlignTopIcon, TextAlignBottomIcon } from \"@radix-ui/react-icons\";\nimport { Text } from \"../../text\";\nimport { Select } from \"../../select\";\nimport { IconButton } from \"../../icon-button\";\nimport {\n ColumnData,\n DataTableSort,\n SortOrders,\n SortOrdersValues,\n} from \"../data-table.types\";\n\nexport interface OrderingProps {\n columnList: ColumnData[];\n onChange: (columnId: string, order: SortOrdersValues) => void;\n value: DataTableSort;\n}\n\nexport function Ordering({ columnList, onChange, value }: OrderingProps) {\n function handleColumnChange(columnId: string) {\n onChange(columnId, value.order);\n }\n\n function handleOrderChange() {\n const newOrder =\n value.order === SortOrders.ASC ? SortOrders.DESC : SortOrders.ASC;\n onChange(value.name, newOrder);\n }\n\n return (\n <Flex justify=\"between\" align=\"center\">\n <Text size={2} weight={500} className={styles[\"flex-1\"]}>\n Ordering\n </Text>\n <Flex gap={\"extra-small\"} className={styles[\"flex-1\"]}>\n <Select\n onValueChange={handleColumnChange}\n value={value.name}\n disabled={columnList.length === 0}\n >\n <Select.Trigger\n size={\"small\"}\n className={styles[\"display-popover-properties-select\"]}\n with-icon-button=\"true\"\n >\n <Select.Value placeholder=\"Select value\" />\n </Select.Trigger>\n <Select.Content data-variant=\"filter\">\n {columnList.map((column) => (\n <Select.Item key={column.id} value={column.id}>\n {column.label}\n </Select.Item>\n ))}\n </Select.Content>\n </Select>\n <IconButton\n onClick={handleOrderChange}\n size={4}\n disabled={columnList.length === 0}\n >\n {value.order === SortOrders?.ASC ? (\n <TextAlignBottomIcon\n className={styles[\"display-popover-sort-icon\"]}\n />\n ) : (\n <TextAlignTopIcon className={styles[\"display-popover-sort-icon\"]} />\n )}\n </IconButton>\n </Flex>\n </Flex>\n );\n}\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;AAmBM,SAAU,QAAQ,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAiB,EAAA;IACrE,SAAS,kBAAkB,CAAC,QAAgB,EAAA;AAC1C,QAAA,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;KACjC;AAED,IAAA,SAAS,iBAAiB,GAAA;QACxB,MAAM,QAAQ,GACZ,KAAK,CAAC,KAAK,KAAK,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC;AACpE,QAAA,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KAChC;IAED,QACEA,uBAAC,IAAI,EAAA,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EACpC,QAAA,EAAA,CAAAC,qBAAA,CAAC,IAAI,EAAC,EAAA,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,yBAEhD,EACPD,sBAAA,CAAC,IAAI,EAAC,EAAA,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,EACnD,QAAA,EAAA,CAAAA,sBAAA,CAAC,MAAM,EAAA,EACL,aAAa,EAAE,kBAAkB,EACjC,KAAK,EAAE,KAAK,CAAC,IAAI,EACjB,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAA,QAAA,EAAA,CAEjCC,sBAAC,MAAM,CAAC,OAAO,EAAA,EACb,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,MAAM,CAAC,mCAAmC,CAAC,EAAA,kBAAA,EACrC,MAAM,EAEvB,QAAA,EAAAA,qBAAA,CAAC,MAAM,CAAC,KAAK,IAAC,WAAW,EAAC,cAAc,EAAG,CAAA,EAAA,CAC5B,EACjBA,qBAAA,CAAC,MAAM,CAAC,OAAO,EAAc,EAAA,cAAA,EAAA,QAAQ,YAClC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,MACrBA,qBAAA,CAAC,MAAM,CAAC,IAAI,IAAiB,KAAK,EAAE,MAAM,CAAC,EAAE,EAAA,QAAA,EAC1C,MAAM,CAAC,KAAK,IADG,MAAM,CAAC,EAAE,CAEb,CACf,CAAC,EACa,CAAA,CAAA,EAAA,CACV,EACTA,qBAAC,CAAA,UAAU,IACT,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,YAEhC,KAAK,CAAC,KAAK,KAAK,UAAU,EAAE,GAAG,IAC9BA,sBAAC,mBAAmB,EAAA,EAClB,SAAS,EAAE,MAAM,CAAC,2BAA2B,CAAC,EAAA,CAC9C,KAEFA,qBAAA,CAAC,gBAAgB,EAAC,EAAA,SAAS,EAAE,MAAM,CAAC,2BAA2B,CAAC,EAAA,CAAI,CACrE,EACU,CAAA,CAAA,EAAA,CACR,CACF,EAAA,CAAA,EACP;AACJ;;;;"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var context = require('./context.cjs');
|
|
6
|
+
var dataTable_types = require('./data-table.types.cjs');
|
|
6
7
|
var index$1 = require('../../node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.cjs');
|
|
7
8
|
var index = require('./utils/index.cjs');
|
|
8
9
|
var content = require('./components/content.cjs');
|
|
@@ -10,7 +11,7 @@ var toolbar = require('./components/toolbar.cjs');
|
|
|
10
11
|
var search = require('./components/search.cjs');
|
|
11
12
|
var index$2 = require('../../node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs');
|
|
12
13
|
|
|
13
|
-
function DataTableRoot({ data = [], columns, query, mode = "client", isLoading = false, loadingRowCount = 3, defaultSort, children, onTableQueryChange, onLoadMore, }) {
|
|
14
|
+
function DataTableRoot({ data = [], columns, query, mode = "client", isLoading = false, loadingRowCount = 3, defaultSort, children, onTableQueryChange, onLoadMore, onRowClick, }) {
|
|
14
15
|
const defaultTableQuery = index.getDefaultTableQuery(defaultSort, query);
|
|
15
16
|
const initialColumnVisibility = index.getInitialColumnVisibility(columns);
|
|
16
17
|
const [columnVisibility, setColumnVisibility] = React.useState(initialColumnVisibility);
|
|
@@ -52,7 +53,7 @@ function DataTableRoot({ data = [], columns, query, mode = "client", isLoading =
|
|
|
52
53
|
state: {
|
|
53
54
|
...reactTableState,
|
|
54
55
|
columnVisibility: columnVisibility,
|
|
55
|
-
expanded: group_by && group_by !==
|
|
56
|
+
expanded: group_by && group_by !== dataTable_types.defaultGroupOption.id ? true : undefined,
|
|
56
57
|
},
|
|
57
58
|
});
|
|
58
59
|
function updateTableQuery(fn) {
|
|
@@ -74,6 +75,7 @@ function DataTableRoot({ data = [], columns, query, mode = "client", isLoading =
|
|
|
74
75
|
onDisplaySettingsReset,
|
|
75
76
|
defaultSort,
|
|
76
77
|
loadingRowCount,
|
|
78
|
+
onRowClick,
|
|
77
79
|
};
|
|
78
80
|
return (jsxRuntime.jsxRuntimeExports.jsx(context.TableContext.Provider, { value: contextValue, children: children }));
|
|
79
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.cjs","sources":["../../../../v1/components/data-table/data-table.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from \"react\";\nimport { TableContext } from \"./context\";\nimport {\n DataTableProps,\n DataTableQuery,\n GroupedData,\n TableContextType,\n TableQueryUpdateFn,\n} from \"./data-table.types\";\nimport {\n VisibilityState,\n getCoreRowModel,\n getFilteredRowModel,\n getSortedRowModel,\n useReactTable,\n getExpandedRowModel,\n} from \"@tanstack/react-table\";\nimport {\n
|
|
1
|
+
{"version":3,"file":"data-table.cjs","sources":["../../../../v1/components/data-table/data-table.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from \"react\";\nimport { TableContext } from \"./context\";\nimport {\n DataTableProps,\n DataTableQuery,\n GroupedData,\n TableContextType,\n TableQueryUpdateFn,\n defaultGroupOption,\n} from \"./data-table.types\";\nimport {\n VisibilityState,\n getCoreRowModel,\n getFilteredRowModel,\n getSortedRowModel,\n useReactTable,\n getExpandedRowModel,\n} from \"@tanstack/react-table\";\nimport {\n getColumnsWithFilterFn,\n getDefaultTableQuery,\n getInitialColumnVisibility,\n groupData,\n hasQueryChanged,\n queryToTableState,\n sanitizeTableQuery,\n} from \"./utils\";\nimport { Content } from \"./components/content\";\nimport { Toolbar } from \"./components/toolbar\";\nimport { TableSearch } from \"./components/search\";\n\nfunction DataTableRoot<TData, TValue>({\n data = [],\n columns,\n query,\n mode = \"client\",\n isLoading = false,\n loadingRowCount = 3,\n defaultSort,\n children,\n onTableQueryChange,\n onLoadMore,\n onRowClick,\n}: React.PropsWithChildren<DataTableProps<TData, TValue>>) {\n const defaultTableQuery = getDefaultTableQuery(defaultSort, query);\n const initialColumnVisibility = getInitialColumnVisibility(columns);\n\n const [columnVisibility, setColumnVisibility] = useState<VisibilityState>(\n initialColumnVisibility\n );\n const [tableQuery, setTableQuery] =\n useState<DataTableQuery>(defaultTableQuery);\n\n const oldQueryRef = useRef<DataTableQuery | null>(null);\n\n const reactTableState = useMemo(\n () => queryToTableState(tableQuery),\n [tableQuery]\n );\n\n function onDisplaySettingsReset() {\n setTableQuery((prev) => ({ ...prev, ...defaultTableQuery }));\n setColumnVisibility(initialColumnVisibility);\n }\n\n const group_by = tableQuery.group_by?.[0];\n\n const columnsWithFilters = useMemo(\n () => getColumnsWithFilterFn<TData, TValue>(columns, tableQuery.filters),\n [columns, tableQuery.filters]\n );\n\n const groupedData = useMemo(\n () => groupData(data, group_by, columns),\n [data, group_by, columns]\n );\n\n useEffect(() => {\n if (\n tableQuery &&\n onTableQueryChange &&\n hasQueryChanged(oldQueryRef.current, tableQuery) &&\n mode === \"server\"\n ) {\n onTableQueryChange(sanitizeTableQuery(tableQuery));\n oldQueryRef.current = tableQuery;\n }\n }, [tableQuery, onTableQueryChange]);\n\n const table = useReactTable({\n data: groupedData as TData[],\n columns: columnsWithFilters,\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getSubRows: (row) => (row as GroupedData<TData>)?.subRows || [],\n getSortedRowModel: mode === \"server\" ? undefined : getSortedRowModel(),\n getFilteredRowModel: mode === \"server\" ? undefined : getFilteredRowModel(),\n manualSorting: mode === \"server\",\n manualFiltering: mode === \"server\",\n onColumnVisibilityChange: setColumnVisibility,\n globalFilterFn: mode === \"server\" ? undefined : \"auto\",\n initialState: {\n columnVisibility: initialColumnVisibility,\n },\n filterFromLeafRows: true,\n state: {\n ...reactTableState,\n columnVisibility: columnVisibility,\n expanded:\n group_by && group_by !== defaultGroupOption.id ? true : undefined,\n },\n });\n\n function updateTableQuery(fn: TableQueryUpdateFn) {\n setTableQuery((prev) => fn(prev));\n }\n\n function loadMoreData() {\n if (mode === \"server\" && onLoadMore) {\n onLoadMore();\n }\n }\n\n const contextValue: TableContextType<TData, TValue> = {\n table,\n columns,\n mode,\n isLoading,\n loadMoreData,\n tableQuery,\n updateTableQuery,\n onDisplaySettingsReset,\n defaultSort,\n loadingRowCount,\n onRowClick,\n };\n\n return (\n <TableContext.Provider value={contextValue}>\n {children}\n </TableContext.Provider>\n );\n}\n\nexport const DataTable = Object.assign(DataTableRoot, {\n Content: Content,\n Toolbar: Toolbar,\n Search: TableSearch,\n});\n"],"names":["getDefaultTableQuery","getInitialColumnVisibility","useState","useRef","useMemo","queryToTableState","getColumnsWithFilterFn","groupData","useEffect","hasQueryChanged","sanitizeTableQuery","useReactTable","getCoreRowModel","getExpandedRowModel","getSortedRowModel","getFilteredRowModel","defaultGroupOption","_jsx","TableContext","Content","Toolbar","TableSearch"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { DataTableProps } from "./data-table.types";
|
|
|
2
2
|
import { Content } from "./components/content";
|
|
3
3
|
import { Toolbar } from "./components/toolbar";
|
|
4
4
|
import { TableSearch } from "./components/search";
|
|
5
|
-
declare function DataTableRoot<TData, TValue>({ data, columns, query, mode, isLoading, loadingRowCount, defaultSort, children, onTableQueryChange, onLoadMore, }: React.PropsWithChildren<DataTableProps<TData, TValue>>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function DataTableRoot<TData, TValue>({ data, columns, query, mode, isLoading, loadingRowCount, defaultSort, children, onTableQueryChange, onLoadMore, onRowClick, }: React.PropsWithChildren<DataTableProps<TData, TValue>>): import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export declare const DataTable: typeof DataTableRoot & {
|
|
7
7
|
Content: typeof Content;
|
|
8
8
|
Toolbar: typeof Toolbar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../../v1/components/data-table/data-table.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,
|
|
1
|
+
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../../v1/components/data-table/data-table.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EAMf,MAAM,oBAAoB,CAAC;AAkB5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,iBAAS,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EACpC,IAAS,EACT,OAAO,EACP,KAAK,EACL,IAAe,EACf,SAAiB,EACjB,eAAmB,EACnB,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,UAAU,EACV,UAAU,GACX,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,2CAmGxD;AAED,eAAO,MAAM,SAAS;;;;CAIpB,CAAC"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
|
|
2
2
|
import { useState, useRef, useMemo, useEffect } from 'react';
|
|
3
3
|
import { TableContext } from './context.js';
|
|
4
|
+
import { defaultGroupOption } from './data-table.types.js';
|
|
4
5
|
import { useReactTable } from '../../node_modules/.pnpm/@tanstack_react-table@8.9.2_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@tanstack/react-table/build/lib/index.js';
|
|
5
|
-
import { getDefaultTableQuery, getInitialColumnVisibility, queryToTableState, getColumnsWithFilterFn, groupData, hasQueryChanged, sanitizeTableQuery
|
|
6
|
+
import { getDefaultTableQuery, getInitialColumnVisibility, queryToTableState, getColumnsWithFilterFn, groupData, hasQueryChanged, sanitizeTableQuery } from './utils/index.js';
|
|
6
7
|
import { Content } from './components/content.js';
|
|
7
8
|
import { Toolbar } from './components/toolbar.js';
|
|
8
9
|
import { TableSearch } from './components/search.js';
|
|
9
10
|
import { getCoreRowModel, getExpandedRowModel, getSortedRowModel, getFilteredRowModel } from '../../node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js';
|
|
10
11
|
|
|
11
|
-
function DataTableRoot({ data = [], columns, query, mode = "client", isLoading = false, loadingRowCount = 3, defaultSort, children, onTableQueryChange, onLoadMore, }) {
|
|
12
|
+
function DataTableRoot({ data = [], columns, query, mode = "client", isLoading = false, loadingRowCount = 3, defaultSort, children, onTableQueryChange, onLoadMore, onRowClick, }) {
|
|
12
13
|
const defaultTableQuery = getDefaultTableQuery(defaultSort, query);
|
|
13
14
|
const initialColumnVisibility = getInitialColumnVisibility(columns);
|
|
14
15
|
const [columnVisibility, setColumnVisibility] = useState(initialColumnVisibility);
|
|
@@ -72,6 +73,7 @@ function DataTableRoot({ data = [], columns, query, mode = "client", isLoading =
|
|
|
72
73
|
onDisplaySettingsReset,
|
|
73
74
|
defaultSort,
|
|
74
75
|
loadingRowCount,
|
|
76
|
+
onRowClick,
|
|
75
77
|
};
|
|
76
78
|
return (jsxRuntimeExports.jsx(TableContext.Provider, { value: contextValue, children: children }));
|
|
77
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.js","sources":["../../../../v1/components/data-table/data-table.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from \"react\";\nimport { TableContext } from \"./context\";\nimport {\n DataTableProps,\n DataTableQuery,\n GroupedData,\n TableContextType,\n TableQueryUpdateFn,\n} from \"./data-table.types\";\nimport {\n VisibilityState,\n getCoreRowModel,\n getFilteredRowModel,\n getSortedRowModel,\n useReactTable,\n getExpandedRowModel,\n} from \"@tanstack/react-table\";\nimport {\n
|
|
1
|
+
{"version":3,"file":"data-table.js","sources":["../../../../v1/components/data-table/data-table.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from \"react\";\nimport { TableContext } from \"./context\";\nimport {\n DataTableProps,\n DataTableQuery,\n GroupedData,\n TableContextType,\n TableQueryUpdateFn,\n defaultGroupOption,\n} from \"./data-table.types\";\nimport {\n VisibilityState,\n getCoreRowModel,\n getFilteredRowModel,\n getSortedRowModel,\n useReactTable,\n getExpandedRowModel,\n} from \"@tanstack/react-table\";\nimport {\n getColumnsWithFilterFn,\n getDefaultTableQuery,\n getInitialColumnVisibility,\n groupData,\n hasQueryChanged,\n queryToTableState,\n sanitizeTableQuery,\n} from \"./utils\";\nimport { Content } from \"./components/content\";\nimport { Toolbar } from \"./components/toolbar\";\nimport { TableSearch } from \"./components/search\";\n\nfunction DataTableRoot<TData, TValue>({\n data = [],\n columns,\n query,\n mode = \"client\",\n isLoading = false,\n loadingRowCount = 3,\n defaultSort,\n children,\n onTableQueryChange,\n onLoadMore,\n onRowClick,\n}: React.PropsWithChildren<DataTableProps<TData, TValue>>) {\n const defaultTableQuery = getDefaultTableQuery(defaultSort, query);\n const initialColumnVisibility = getInitialColumnVisibility(columns);\n\n const [columnVisibility, setColumnVisibility] = useState<VisibilityState>(\n initialColumnVisibility\n );\n const [tableQuery, setTableQuery] =\n useState<DataTableQuery>(defaultTableQuery);\n\n const oldQueryRef = useRef<DataTableQuery | null>(null);\n\n const reactTableState = useMemo(\n () => queryToTableState(tableQuery),\n [tableQuery]\n );\n\n function onDisplaySettingsReset() {\n setTableQuery((prev) => ({ ...prev, ...defaultTableQuery }));\n setColumnVisibility(initialColumnVisibility);\n }\n\n const group_by = tableQuery.group_by?.[0];\n\n const columnsWithFilters = useMemo(\n () => getColumnsWithFilterFn<TData, TValue>(columns, tableQuery.filters),\n [columns, tableQuery.filters]\n );\n\n const groupedData = useMemo(\n () => groupData(data, group_by, columns),\n [data, group_by, columns]\n );\n\n useEffect(() => {\n if (\n tableQuery &&\n onTableQueryChange &&\n hasQueryChanged(oldQueryRef.current, tableQuery) &&\n mode === \"server\"\n ) {\n onTableQueryChange(sanitizeTableQuery(tableQuery));\n oldQueryRef.current = tableQuery;\n }\n }, [tableQuery, onTableQueryChange]);\n\n const table = useReactTable({\n data: groupedData as TData[],\n columns: columnsWithFilters,\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getSubRows: (row) => (row as GroupedData<TData>)?.subRows || [],\n getSortedRowModel: mode === \"server\" ? undefined : getSortedRowModel(),\n getFilteredRowModel: mode === \"server\" ? undefined : getFilteredRowModel(),\n manualSorting: mode === \"server\",\n manualFiltering: mode === \"server\",\n onColumnVisibilityChange: setColumnVisibility,\n globalFilterFn: mode === \"server\" ? undefined : \"auto\",\n initialState: {\n columnVisibility: initialColumnVisibility,\n },\n filterFromLeafRows: true,\n state: {\n ...reactTableState,\n columnVisibility: columnVisibility,\n expanded:\n group_by && group_by !== defaultGroupOption.id ? true : undefined,\n },\n });\n\n function updateTableQuery(fn: TableQueryUpdateFn) {\n setTableQuery((prev) => fn(prev));\n }\n\n function loadMoreData() {\n if (mode === \"server\" && onLoadMore) {\n onLoadMore();\n }\n }\n\n const contextValue: TableContextType<TData, TValue> = {\n table,\n columns,\n mode,\n isLoading,\n loadMoreData,\n tableQuery,\n updateTableQuery,\n onDisplaySettingsReset,\n defaultSort,\n loadingRowCount,\n onRowClick,\n };\n\n return (\n <TableContext.Provider value={contextValue}>\n {children}\n </TableContext.Provider>\n );\n}\n\nexport const DataTable = Object.assign(DataTableRoot, {\n Content: Content,\n Toolbar: Toolbar,\n Search: TableSearch,\n});\n"],"names":["_jsx"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var styles = {"toolbar":"data-table-module_toolbar__qdolw","display-popover-content":"data-table-module_display-popover-content__A7AAg","display-popover-properties-container":"data-table-module_display-popover-properties-container__kxNzW","display-popover-properties-select":"data-table-module_display-popover-properties-select__oX7TC","display-popover-reset-container":"data-table-module_display-popover-reset-container__xEaUH","display-popover-sort-icon":"data-table-module_display-popover-sort-icon__8pk8D","flex-1":"data-table-module_flex-1__Cnet-","display___popover___content":"data-table-module_display-popover-content__A7AAg","display___popover___properties___container":"data-table-module_display-popover-properties-container__kxNzW","display___popover___properties___select":"data-table-module_display-popover-properties-select__oX7TC","display___popover___reset___container":"data-table-module_display-popover-reset-container__xEaUH","display___popover___sort___icon":"data-table-module_display-popover-sort-icon__8pk8D","flex___1":"data-table-module_flex-1__Cnet-"};
|
|
5
|
+
var styles = {"toolbar":"data-table-module_toolbar__qdolw","display-popover-content":"data-table-module_display-popover-content__A7AAg","display-popover-properties-container":"data-table-module_display-popover-properties-container__kxNzW","display-popover-properties-select":"data-table-module_display-popover-properties-select__oX7TC","display-popover-reset-container":"data-table-module_display-popover-reset-container__xEaUH","display-popover-sort-icon":"data-table-module_display-popover-sort-icon__8pk8D","flex-1":"data-table-module_flex-1__Cnet-","row":"data-table-module_row__OlLft","clickable":"data-table-module_clickable__qutr6","cell":"data-table-module_cell__RZ0kF","display___popover___content":"data-table-module_display-popover-content__A7AAg","display___popover___properties___container":"data-table-module_display-popover-properties-container__kxNzW","display___popover___properties___select":"data-table-module_display-popover-properties-select__oX7TC","display___popover___reset___container":"data-table-module_display-popover-reset-container__xEaUH","display___popover___sort___icon":"data-table-module_display-popover-sort-icon__8pk8D","flex___1":"data-table-module_flex-1__Cnet-"};
|
|
6
6
|
|
|
7
7
|
exports.default = styles;
|
|
8
8
|
//# sourceMappingURL=data-table.module.css.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var styles = {"toolbar":"data-table-module_toolbar__qdolw","display-popover-content":"data-table-module_display-popover-content__A7AAg","display-popover-properties-container":"data-table-module_display-popover-properties-container__kxNzW","display-popover-properties-select":"data-table-module_display-popover-properties-select__oX7TC","display-popover-reset-container":"data-table-module_display-popover-reset-container__xEaUH","display-popover-sort-icon":"data-table-module_display-popover-sort-icon__8pk8D","flex-1":"data-table-module_flex-1__Cnet-","display___popover___content":"data-table-module_display-popover-content__A7AAg","display___popover___properties___container":"data-table-module_display-popover-properties-container__kxNzW","display___popover___properties___select":"data-table-module_display-popover-properties-select__oX7TC","display___popover___reset___container":"data-table-module_display-popover-reset-container__xEaUH","display___popover___sort___icon":"data-table-module_display-popover-sort-icon__8pk8D","flex___1":"data-table-module_flex-1__Cnet-"};
|
|
1
|
+
var styles = {"toolbar":"data-table-module_toolbar__qdolw","display-popover-content":"data-table-module_display-popover-content__A7AAg","display-popover-properties-container":"data-table-module_display-popover-properties-container__kxNzW","display-popover-properties-select":"data-table-module_display-popover-properties-select__oX7TC","display-popover-reset-container":"data-table-module_display-popover-reset-container__xEaUH","display-popover-sort-icon":"data-table-module_display-popover-sort-icon__8pk8D","flex-1":"data-table-module_flex-1__Cnet-","row":"data-table-module_row__OlLft","clickable":"data-table-module_clickable__qutr6","cell":"data-table-module_cell__RZ0kF","display___popover___content":"data-table-module_display-popover-content__A7AAg","display___popover___properties___container":"data-table-module_display-popover-properties-container__kxNzW","display___popover___properties___select":"data-table-module_display-popover-properties-select__oX7TC","display___popover___reset___container":"data-table-module_display-popover-reset-container__xEaUH","display___popover___sort___icon":"data-table-module_display-popover-sort-icon__8pk8D","flex___1":"data-table-module_flex-1__Cnet-"};
|
|
2
2
|
|
|
3
3
|
export { styles as default };
|
|
4
4
|
//# sourceMappingURL=data-table.module.css.js.map
|
|
@@ -4,6 +4,13 @@ const SortOrders = {
|
|
|
4
4
|
ASC: "asc",
|
|
5
5
|
DESC: "desc",
|
|
6
6
|
};
|
|
7
|
+
const defaultGroupOption = {
|
|
8
|
+
id: "--",
|
|
9
|
+
label: "No grouping",
|
|
10
|
+
};
|
|
11
|
+
const EmptyFilterValue = "--empty--";
|
|
7
12
|
|
|
13
|
+
exports.EmptyFilterValue = EmptyFilterValue;
|
|
8
14
|
exports.SortOrders = SortOrders;
|
|
15
|
+
exports.defaultGroupOption = defaultGroupOption;
|
|
9
16
|
//# sourceMappingURL=data-table.types.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.types.cjs","sources":["../../../../v1/components/data-table/data-table.types.tsx"],"sourcesContent":["import type { Column, ColumnDef, Table } from \"@tanstack/table-core\";\nimport type {\n FilterOperatorTypes,\n FilterSelectOption,\n FilterTypes,\n} from \"~/v1/types/filters\";\n\nexport type DataTableMode = \"client\" | \"server\";\n\nexport const SortOrders = {\n ASC: \"asc\",\n DESC: \"desc\",\n} as const;\n\nexport interface RQLFilter {\n _type
|
|
1
|
+
{"version":3,"file":"data-table.types.cjs","sources":["../../../../v1/components/data-table/data-table.types.tsx"],"sourcesContent":["import type { Column, ColumnDef, Table } from \"@tanstack/table-core\";\nimport type {\n FilterOperatorTypes,\n FilterSelectOption,\n FilterTypes,\n FilterValueType,\n} from \"~/v1/types/filters\";\n\nexport type DataTableMode = \"client\" | \"server\";\n\nexport const SortOrders = {\n ASC: \"asc\",\n DESC: \"desc\",\n} as const;\n\nexport interface RQLFilterValues {\n value: any;\n // Only one of these value fields should be present at a time\n boolValue?: boolean;\n stringValue?: string;\n numberValue?: number;\n}\nexport interface RQLFilter extends RQLFilterValues {\n _type?: FilterTypes;\n _dataType?: FilterValueType;\n name: string;\n operator: FilterOperatorTypes;\n}\n\ntype SortOrdersKeys = keyof typeof SortOrders;\nexport type SortOrdersValues = typeof SortOrders[SortOrdersKeys];\n\nexport interface DataTableSort {\n name: string;\n order: SortOrdersValues;\n}\n\nexport interface DataTableQuery {\n filters?: RQLFilter[];\n sort?: DataTableSort[];\n group_by?: string[];\n offset?: number;\n limit?: number;\n search?: string;\n __group_by_sort?: SortOrdersValues;\n}\n\nexport type DataTableColumn<TData, TValue> = Omit<\n Column<TData, TValue>,\n \"columnDef\"\n> & {\n columnDef: DataTableColumnDef<TData, TValue>;\n};\n\nexport type DataTableColumnDef<TData, TValue> = ColumnDef<TData, TValue> & {\n accessorKey: string;\n header: string;\n filterType?: FilterTypes;\n dataType?: FilterValueType;\n enableColumnFilter?: boolean;\n enableSorting?: boolean;\n enableHiding?: boolean;\n defaultHidden?: boolean;\n filterOptions?: FilterSelectOption[];\n classNames?: {\n cell?: string;\n header?: string;\n };\n styles?: {\n cell?: React.CSSProperties;\n header?: React.CSSProperties;\n };\n enableGrouping?: boolean;\n groupSortOrder?: SortOrdersValues;\n showGroupCount?: boolean;\n groupCountMap?: Record<string, number>;\n // TODO: implement these\n icon?: React.ReactNode;\n};\n\nexport interface DataTableProps<TData, TValue> {\n columns: DataTableColumnDef<TData, TValue>[];\n data: TData[];\n query?: DataTableQuery;\n mode?: DataTableMode;\n isLoading?: boolean;\n loadingRowCount?: number;\n tableQuery?: DataTableQuery;\n onTableQueryChange?: (query: DataTableQuery) => void;\n defaultSort: DataTableSort;\n onLoadMore?: () => Promise<void>;\n onRowClick?: (row: TData) => void;\n}\n\nexport type DataTableContentProps = {\n emptyState?: React.ReactNode;\n classNames?: {\n table?: string;\n header?: string;\n body?: string;\n row?: string;\n };\n};\n\nexport type TableQueryUpdateFn = (query: DataTableQuery) => DataTableQuery;\n\nexport type TableContextType<TData, TValue> = {\n table: Table<TData>;\n columns: DataTableColumnDef<TData, TValue>[];\n isLoading?: boolean;\n loadMoreData: () => void;\n mode: DataTableMode;\n defaultSort: DataTableSort;\n tableQuery?: DataTableQuery;\n loadingRowCount?: number;\n onDisplaySettingsReset: () => void;\n updateTableQuery: (fn: TableQueryUpdateFn) => void;\n onRowClick?: (row: TData) => void;\n};\n\nexport interface ColumnData {\n label: string;\n id: string;\n isVisible?: boolean;\n}\n\ninterface SubRows<T> {}\n\nexport interface GroupedData<T> extends SubRows<T> {\n group_key: string;\n subRows: T[];\n count?: number;\n showGroupCount?: boolean;\n}\n\nexport const defaultGroupOption = {\n id: \"--\",\n label: \"No grouping\",\n};\n\nexport const EmptyFilterValue = \"--empty--\";\n"],"names":[],"mappings":";;AAUa,MAAA,UAAU,GAAG;AACxB,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,IAAI,EAAE,MAAM;EACH;AA0HE,MAAA,kBAAkB,GAAG;AAChC,IAAA,EAAE,EAAE,IAAI;AACR,IAAA,KAAK,EAAE,aAAa;EACpB;AAEK,MAAM,gBAAgB,GAAG;;;;;;"}
|
|
@@ -1,25 +1,31 @@
|
|
|
1
1
|
import type { Column, ColumnDef, Table } from "@tanstack/table-core";
|
|
2
|
-
import type { FilterOperatorTypes, FilterSelectOption, FilterTypes } from "~/v1/types/filters";
|
|
2
|
+
import type { FilterOperatorTypes, FilterSelectOption, FilterTypes, FilterValueType } from "~/v1/types/filters";
|
|
3
3
|
export type DataTableMode = "client" | "server";
|
|
4
4
|
export declare const SortOrders: {
|
|
5
5
|
readonly ASC: "asc";
|
|
6
6
|
readonly DESC: "desc";
|
|
7
7
|
};
|
|
8
|
-
export interface
|
|
9
|
-
|
|
8
|
+
export interface RQLFilterValues {
|
|
9
|
+
value: any;
|
|
10
|
+
boolValue?: boolean;
|
|
11
|
+
stringValue?: string;
|
|
12
|
+
numberValue?: number;
|
|
13
|
+
}
|
|
14
|
+
export interface RQLFilter extends RQLFilterValues {
|
|
15
|
+
_type?: FilterTypes;
|
|
16
|
+
_dataType?: FilterValueType;
|
|
10
17
|
name: string;
|
|
11
18
|
operator: FilterOperatorTypes;
|
|
12
|
-
value: any;
|
|
13
19
|
}
|
|
14
20
|
type SortOrdersKeys = keyof typeof SortOrders;
|
|
15
21
|
export type SortOrdersValues = typeof SortOrders[SortOrdersKeys];
|
|
16
|
-
export interface
|
|
22
|
+
export interface DataTableSort {
|
|
17
23
|
name: string;
|
|
18
24
|
order: SortOrdersValues;
|
|
19
25
|
}
|
|
20
26
|
export interface DataTableQuery {
|
|
21
27
|
filters?: RQLFilter[];
|
|
22
|
-
sort?:
|
|
28
|
+
sort?: DataTableSort[];
|
|
23
29
|
group_by?: string[];
|
|
24
30
|
offset?: number;
|
|
25
31
|
limit?: number;
|
|
@@ -32,7 +38,8 @@ export type DataTableColumn<TData, TValue> = Omit<Column<TData, TValue>, "column
|
|
|
32
38
|
export type DataTableColumnDef<TData, TValue> = ColumnDef<TData, TValue> & {
|
|
33
39
|
accessorKey: string;
|
|
34
40
|
header: string;
|
|
35
|
-
|
|
41
|
+
filterType?: FilterTypes;
|
|
42
|
+
dataType?: FilterValueType;
|
|
36
43
|
enableColumnFilter?: boolean;
|
|
37
44
|
enableSorting?: boolean;
|
|
38
45
|
enableHiding?: boolean;
|
|
@@ -61,8 +68,9 @@ export interface DataTableProps<TData, TValue> {
|
|
|
61
68
|
loadingRowCount?: number;
|
|
62
69
|
tableQuery?: DataTableQuery;
|
|
63
70
|
onTableQueryChange?: (query: DataTableQuery) => void;
|
|
64
|
-
defaultSort:
|
|
71
|
+
defaultSort: DataTableSort;
|
|
65
72
|
onLoadMore?: () => Promise<void>;
|
|
73
|
+
onRowClick?: (row: TData) => void;
|
|
66
74
|
}
|
|
67
75
|
export type DataTableContentProps = {
|
|
68
76
|
emptyState?: React.ReactNode;
|
|
@@ -70,6 +78,7 @@ export type DataTableContentProps = {
|
|
|
70
78
|
table?: string;
|
|
71
79
|
header?: string;
|
|
72
80
|
body?: string;
|
|
81
|
+
row?: string;
|
|
73
82
|
};
|
|
74
83
|
};
|
|
75
84
|
export type TableQueryUpdateFn = (query: DataTableQuery) => DataTableQuery;
|
|
@@ -79,11 +88,12 @@ export type TableContextType<TData, TValue> = {
|
|
|
79
88
|
isLoading?: boolean;
|
|
80
89
|
loadMoreData: () => void;
|
|
81
90
|
mode: DataTableMode;
|
|
82
|
-
defaultSort:
|
|
91
|
+
defaultSort: DataTableSort;
|
|
83
92
|
tableQuery?: DataTableQuery;
|
|
84
93
|
loadingRowCount?: number;
|
|
85
94
|
onDisplaySettingsReset: () => void;
|
|
86
95
|
updateTableQuery: (fn: TableQueryUpdateFn) => void;
|
|
96
|
+
onRowClick?: (row: TData) => void;
|
|
87
97
|
};
|
|
88
98
|
export interface ColumnData {
|
|
89
99
|
label: string;
|
|
@@ -98,5 +108,10 @@ export interface GroupedData<T> extends SubRows<T> {
|
|
|
98
108
|
count?: number;
|
|
99
109
|
showGroupCount?: boolean;
|
|
100
110
|
}
|
|
111
|
+
export declare const defaultGroupOption: {
|
|
112
|
+
id: string;
|
|
113
|
+
label: string;
|
|
114
|
+
};
|
|
115
|
+
export declare const EmptyFilterValue = "--empty--";
|
|
101
116
|
export {};
|
|
102
117
|
//# sourceMappingURL=data-table.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.types.d.ts","sourceRoot":"","sources":["../../../../v1/components/data-table/data-table.types.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,
|
|
1
|
+
{"version":3,"file":"data-table.types.d.ts","sourceRoot":"","sources":["../../../../v1/components/data-table/data-table.types.tsx"],"names":[],"mappings":"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"}
|