@raystack/apsara 0.32.0 → 0.33.1-alpha
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/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs +92 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +89 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
- package/dist/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 +1 -0
- package/dist/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.map +1 -1
- package/dist/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 +1 -1
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs +20 -0
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js +20 -1
- package/dist/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js.map +1 -1
- package/dist/sidebar/sidebar.cjs +6 -6
- package/dist/sidebar/sidebar.cjs.map +1 -1
- package/dist/sidebar/sidebar.d.ts +4 -4
- package/dist/sidebar/sidebar.js +6 -6
- package/dist/sidebar/sidebar.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/v1/_virtual/isSameOrAfter.cjs +6 -0
- package/dist/v1/_virtual/isSameOrAfter.cjs.map +1 -0
- package/dist/v1/_virtual/isSameOrAfter.js +4 -0
- package/dist/v1/_virtual/isSameOrAfter.js.map +1 -0
- package/dist/v1/_virtual/isSameOrBefore.cjs +6 -0
- package/dist/v1/_virtual/isSameOrBefore.cjs.map +1 -0
- package/dist/v1/_virtual/isSameOrBefore.js +4 -0
- package/dist/v1/_virtual/isSameOrBefore.js.map +1 -0
- package/dist/v1/components/calendar/calendar.cjs +1 -1
- package/dist/v1/components/calendar/calendar.cjs.map +1 -1
- package/dist/v1/components/calendar/calendar.js +1 -1
- package/dist/v1/components/calendar/calendar.js.map +1 -1
- package/dist/v1/components/calendar/date-picker.cjs +26 -17
- package/dist/v1/components/calendar/date-picker.cjs.map +1 -1
- package/dist/v1/components/calendar/date-picker.d.ts.map +1 -1
- package/dist/v1/components/calendar/date-picker.js +26 -17
- package/dist/v1/components/calendar/date-picker.js.map +1 -1
- package/dist/v1/components/chip/chip.cjs +3 -3
- package/dist/v1/components/chip/chip.cjs.map +1 -1
- package/dist/v1/components/chip/chip.d.ts +2 -1
- package/dist/v1/components/chip/chip.d.ts.map +1 -1
- package/dist/v1/components/chip/chip.js +3 -3
- package/dist/v1/components/chip/chip.js.map +1 -1
- package/dist/v1/components/data-table/components/content.cjs +81 -0
- package/dist/v1/components/data-table/components/content.cjs.map +1 -0
- package/dist/v1/components/data-table/components/content.d.ts +3 -0
- package/dist/v1/components/data-table/components/content.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/content.js +79 -0
- package/dist/v1/components/data-table/components/content.js.map +1 -0
- package/dist/v1/components/data-table/components/display-properties.cjs +14 -0
- package/dist/v1/components/data-table/components/display-properties.cjs.map +1 -0
- package/dist/v1/components/data-table/components/display-properties.d.ts +5 -0
- package/dist/v1/components/data-table/components/display-properties.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/display-properties.js +12 -0
- package/dist/v1/components/data-table/components/display-properties.js.map +1 -0
- package/dist/v1/components/data-table/components/display-settings.cjs +51 -0
- package/dist/v1/components/data-table/components/display-settings.cjs.map +1 -0
- package/dist/v1/components/data-table/components/display-settings.d.ts +2 -0
- package/dist/v1/components/data-table/components/display-settings.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/display-settings.js +49 -0
- package/dist/v1/components/data-table/components/display-settings.js.map +1 -0
- package/dist/v1/components/data-table/components/filters.cjs +44 -0
- package/dist/v1/components/data-table/components/filters.cjs.map +1 -0
- package/dist/v1/components/data-table/components/filters.d.ts +2 -0
- package/dist/v1/components/data-table/components/filters.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/filters.js +42 -0
- package/dist/v1/components/data-table/components/filters.js.map +1 -0
- package/dist/v1/components/data-table/components/grouping.cjs +31 -0
- package/dist/v1/components/data-table/components/grouping.cjs.map +1 -0
- package/dist/v1/components/data-table/components/grouping.d.ts +9 -0
- package/dist/v1/components/data-table/components/grouping.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/grouping.js +29 -0
- package/dist/v1/components/data-table/components/grouping.js.map +1 -0
- package/dist/v1/components/data-table/components/ordering.cjs +24 -0
- package/dist/v1/components/data-table/components/ordering.cjs.map +1 -0
- package/dist/v1/components/data-table/components/ordering.d.ts +8 -0
- package/dist/v1/components/data-table/components/ordering.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/ordering.js +22 -0
- package/dist/v1/components/data-table/components/ordering.js.map +1 -0
- package/dist/v1/components/data-table/components/search.cjs +30 -0
- package/dist/v1/components/data-table/components/search.cjs.map +1 -0
- package/dist/v1/components/data-table/components/search.d.ts +3 -0
- package/dist/v1/components/data-table/components/search.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/search.js +28 -0
- package/dist/v1/components/data-table/components/search.js.map +1 -0
- package/dist/v1/components/data-table/components/toolbar.cjs +15 -0
- package/dist/v1/components/data-table/components/toolbar.cjs.map +1 -0
- package/dist/v1/components/data-table/components/toolbar.d.ts +4 -0
- package/dist/v1/components/data-table/components/toolbar.d.ts.map +1 -0
- package/dist/v1/components/data-table/components/toolbar.js +13 -0
- package/dist/v1/components/data-table/components/toolbar.js.map +1 -0
- package/dist/v1/components/data-table/context.cjs +8 -0
- package/dist/v1/components/data-table/context.cjs.map +1 -0
- package/dist/v1/components/data-table/context.d.ts +3 -0
- package/dist/v1/components/data-table/context.d.ts.map +1 -0
- package/dist/v1/components/data-table/context.js +6 -0
- package/dist/v1/components/data-table/context.js.map +1 -0
- package/dist/v1/components/data-table/data-table.cjs +87 -0
- package/dist/v1/components/data-table/data-table.cjs.map +1 -0
- package/dist/v1/components/data-table/data-table.d.ts +12 -0
- package/dist/v1/components/data-table/data-table.d.ts.map +1 -0
- package/dist/v1/components/data-table/data-table.js +85 -0
- package/dist/v1/components/data-table/data-table.js.map +1 -0
- package/dist/v1/components/data-table/data-table.module.css.cjs +8 -0
- package/dist/v1/components/data-table/data-table.module.css.cjs.map +1 -0
- package/dist/v1/components/data-table/data-table.module.css.js +4 -0
- package/dist/v1/components/data-table/data-table.module.css.js.map +1 -0
- package/dist/v1/components/data-table/data-table.types.cjs +9 -0
- package/dist/v1/components/data-table/data-table.types.cjs.map +1 -0
- package/dist/v1/components/data-table/data-table.types.d.ts +102 -0
- package/dist/v1/components/data-table/data-table.types.d.ts.map +1 -0
- package/dist/v1/components/data-table/data-table.types.js +7 -0
- package/dist/v1/components/data-table/data-table.types.js.map +1 -0
- package/dist/v1/components/data-table/hooks/useDataTable.cjs +15 -0
- package/dist/v1/components/data-table/hooks/useDataTable.cjs.map +1 -0
- package/dist/v1/components/data-table/hooks/useDataTable.d.ts +2 -0
- package/dist/v1/components/data-table/hooks/useDataTable.d.ts.map +1 -0
- package/dist/v1/components/data-table/hooks/useDataTable.js +13 -0
- package/dist/v1/components/data-table/hooks/useDataTable.js.map +1 -0
- package/dist/v1/components/data-table/hooks/useFilters.cjs +78 -0
- package/dist/v1/components/data-table/hooks/useFilters.cjs.map +1 -0
- package/dist/v1/components/data-table/hooks/useFilters.d.ts +9 -0
- package/dist/v1/components/data-table/hooks/useFilters.d.ts.map +1 -0
- package/dist/v1/components/data-table/hooks/useFilters.js +76 -0
- package/dist/v1/components/data-table/hooks/useFilters.js.map +1 -0
- package/dist/v1/components/data-table/index.d.ts +4 -0
- package/dist/v1/components/data-table/index.d.ts.map +1 -0
- package/dist/v1/components/data-table/utils/filter-operations.cjs +83 -0
- package/dist/v1/components/data-table/utils/filter-operations.cjs.map +1 -0
- package/dist/v1/components/data-table/utils/filter-operations.d.ts +11 -0
- package/dist/v1/components/data-table/utils/filter-operations.d.ts.map +1 -0
- package/dist/v1/components/data-table/utils/filter-operations.js +80 -0
- package/dist/v1/components/data-table/utils/filter-operations.js.map +1 -0
- package/dist/v1/components/data-table/utils/index.cjs +156 -0
- package/dist/v1/components/data-table/utils/index.cjs.map +1 -0
- package/dist/v1/components/data-table/utils/index.d.ts +14 -0
- package/dist/v1/components/data-table/utils/index.d.ts.map +1 -0
- package/dist/v1/components/data-table/utils/index.js +147 -0
- package/dist/v1/components/data-table/utils/index.js.map +1 -0
- package/dist/v1/components/dialog/dialog.cjs +4 -3
- package/dist/v1/components/dialog/dialog.cjs.map +1 -1
- package/dist/v1/components/dialog/dialog.d.ts +9 -2
- package/dist/v1/components/dialog/dialog.d.ts.map +1 -1
- package/dist/v1/components/dialog/dialog.js +5 -4
- package/dist/v1/components/dialog/dialog.js.map +1 -1
- package/dist/v1/components/dialog/dialog.module.css.cjs +1 -1
- package/dist/v1/components/dialog/dialog.module.css.js +1 -1
- package/dist/v1/components/filter-chip/filter-chip.cjs +28 -19
- package/dist/v1/components/filter-chip/filter-chip.cjs.map +1 -1
- package/dist/v1/components/filter-chip/filter-chip.d.ts +3 -7
- package/dist/v1/components/filter-chip/filter-chip.d.ts.map +1 -1
- package/dist/v1/components/filter-chip/filter-chip.js +28 -19
- package/dist/v1/components/filter-chip/filter-chip.js.map +1 -1
- package/dist/v1/components/icons/assets/filter.svg.cjs +41 -0
- package/dist/v1/components/icons/assets/filter.svg.cjs.map +1 -0
- package/dist/v1/components/icons/assets/filter.svg.js +20 -0
- package/dist/v1/components/icons/assets/filter.svg.js.map +1 -0
- package/dist/v1/components/icons/icons.d.ts +3 -0
- package/dist/v1/components/icons/icons.d.ts.map +1 -0
- package/dist/v1/components/icons/index.d.ts +2 -0
- package/dist/v1/components/icons/index.d.ts.map +1 -0
- package/dist/v1/components/input-field/input-field.cjs +1 -1
- package/dist/v1/components/input-field/input-field.cjs.map +1 -1
- package/dist/v1/components/input-field/input-field.js +1 -1
- package/dist/v1/components/input-field/input-field.js.map +1 -1
- package/dist/v1/components/sidebar/index.d.ts +2 -0
- package/dist/v1/components/sidebar/index.d.ts.map +1 -0
- package/dist/v1/components/sidebar/sidebar.cjs +46 -0
- package/dist/v1/components/sidebar/sidebar.cjs.map +1 -0
- package/dist/v1/components/sidebar/sidebar.d.ts +61 -0
- package/dist/v1/components/sidebar/sidebar.d.ts.map +1 -0
- package/dist/v1/components/sidebar/sidebar.js +44 -0
- package/dist/v1/components/sidebar/sidebar.js.map +1 -0
- package/dist/v1/components/sidebar/sidebar.module.css.cjs +8 -0
- package/dist/v1/components/sidebar/sidebar.module.css.cjs.map +1 -0
- package/dist/v1/components/sidebar/sidebar.module.css.js +4 -0
- package/dist/v1/components/sidebar/sidebar.module.css.js.map +1 -0
- package/dist/v1/components/table/table.cjs.map +1 -1
- package/dist/v1/components/table/table.d.ts +2 -2
- package/dist/v1/components/table/table.js.map +1 -1
- package/dist/v1/components/tooltip/tooltip.cjs +2 -2
- package/dist/v1/components/tooltip/tooltip.cjs.map +1 -1
- package/dist/v1/components/tooltip/tooltip.d.ts +1 -1
- package/dist/v1/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/v1/components/tooltip/tooltip.js +2 -2
- package/dist/v1/components/tooltip/tooltip.js.map +1 -1
- package/dist/v1/index.cjs +6 -2
- package/dist/v1/index.cjs.map +1 -1
- package/dist/v1/index.d.ts +2 -1
- package/dist/v1/index.d.ts.map +1 -1
- package/dist/v1/index.js +4 -1
- package/dist/v1/index.js.map +1 -1
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs +92 -0
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs.map +1 -1
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +89 -1
- package/dist/v1/node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
- package/dist/v1/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 +131 -0
- package/dist/v1/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.map +1 -0
- package/dist/v1/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 +72 -0
- package/dist/v1/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.map +1 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs +3338 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js +3299 -0
- package/dist/v1/node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.js.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.cjs +16 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.js +12 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrAfter.js.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.cjs +16 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.cjs.map +1 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.js +12 -0
- package/dist/v1/node_modules/.pnpm/dayjs@1.11.11/node_modules/dayjs/plugin/isSameOrBefore.js.map +1 -0
- package/dist/v1/style.css +1 -1
- package/dist/v1/types/filters.cjs +39 -0
- package/dist/v1/types/filters.cjs.map +1 -0
- package/dist/v1/types/filters.d.ts +42 -0
- package/dist/v1/types/filters.d.ts.map +1 -0
- package/dist/v1/types/filters.js +36 -0
- package/dist/v1/types/filters.js.map +1 -0
- package/package.json +2 -1
- package/dist/v1/components/sidepanel/index.d.ts +0 -2
- package/dist/v1/components/sidepanel/index.d.ts.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.cjs +0 -44
- package/dist/v1/components/sidepanel/sidepanel.cjs.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.d.ts +0 -51
- package/dist/v1/components/sidepanel/sidepanel.d.ts.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.js +0 -42
- package/dist/v1/components/sidepanel/sidepanel.js.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.module.css.cjs +0 -8
- package/dist/v1/components/sidepanel/sidepanel.module.css.cjs.map +0 -1
- package/dist/v1/components/sidepanel/sidepanel.module.css.js +0 -4
- package/dist/v1/components/sidepanel/sidepanel.module.css.js.map +0 -1
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
|
+
var flex = require('../../flex/flex.cjs');
|
|
5
|
+
var dataTable_module = require('../data-table.module.css.cjs');
|
|
6
|
+
var text = require('../../text/text.cjs');
|
|
7
|
+
var select = require('../../select/select.cjs');
|
|
8
|
+
var dataTable_types = require('../data-table.types.cjs');
|
|
9
|
+
var index = require('../utils/index.cjs');
|
|
10
|
+
|
|
11
|
+
function Grouping({ columns = [], onChange, value, }) {
|
|
12
|
+
const columnList = columns
|
|
13
|
+
.filter((column) => column.columnDef.enableGrouping)
|
|
14
|
+
?.map((column) => {
|
|
15
|
+
const id = column.id;
|
|
16
|
+
return {
|
|
17
|
+
label: column.columnDef.header || id,
|
|
18
|
+
id: id,
|
|
19
|
+
};
|
|
20
|
+
});
|
|
21
|
+
const handleGroupChange = (columnId) => {
|
|
22
|
+
const column = columns.find((col) => col.id === columnId);
|
|
23
|
+
if (column) {
|
|
24
|
+
onChange(column.id, column.columnDef.groupSortOrder || dataTable_types.SortOrders.ASC);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
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: index.defaultGroupOption.id, children: index.defaultGroupOption.label }), columnList.map((column) => (jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value: column.id, children: column.label }, column.id)))] })] }) })] }));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
exports.Grouping = Grouping;
|
|
31
|
+
//# sourceMappingURL=grouping.cjs.map
|
|
@@ -0,0 +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\";\nimport { defaultGroupOption } from \"../utils\";\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,wBAAkB,CAAC,EAAE,EAAA,QAAA,EACtCA,wBAAkB,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;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { DataTableColumn, SortOrdersValues } from "../data-table.types";
|
|
2
|
+
interface GroupingProps<TData, TValue> {
|
|
3
|
+
columns: DataTableColumn<TData, TValue>[];
|
|
4
|
+
onChange: (columnId: string, order: SortOrdersValues) => void;
|
|
5
|
+
value: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function Grouping<TData, TValue>({ columns, onChange, value, }: GroupingProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=grouping.d.ts.map
|
|
@@ -0,0 +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,EACjB,MAAM,qBAAqB,CAAC;AAG7B,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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { j as jsxRuntimeExports } from '../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
|
|
2
|
+
import { Flex } from '../../flex/flex.js';
|
|
3
|
+
import styles from '../data-table.module.css.js';
|
|
4
|
+
import { Text } from '../../text/text.js';
|
|
5
|
+
import { Select } from '../../select/select.js';
|
|
6
|
+
import { SortOrders } from '../data-table.types.js';
|
|
7
|
+
import { defaultGroupOption } from '../utils/index.js';
|
|
8
|
+
|
|
9
|
+
function Grouping({ columns = [], onChange, value, }) {
|
|
10
|
+
const columnList = columns
|
|
11
|
+
.filter((column) => column.columnDef.enableGrouping)
|
|
12
|
+
?.map((column) => {
|
|
13
|
+
const id = column.id;
|
|
14
|
+
return {
|
|
15
|
+
label: column.columnDef.header || id,
|
|
16
|
+
id: id,
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
const handleGroupChange = (columnId) => {
|
|
20
|
+
const column = columns.find((col) => col.id === columnId);
|
|
21
|
+
if (column) {
|
|
22
|
+
onChange(column.id, column.columnDef.groupSortOrder || SortOrders.ASC);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
return (jsxRuntimeExports.jsxs(Flex, { justify: "between", align: "center", children: [jsxRuntimeExports.jsx(Text, { size: 2, weight: 500, className: styles["flex-1"], children: "Grouping" }), jsxRuntimeExports.jsx(Flex, { className: styles["flex-1"], children: jsxRuntimeExports.jsxs(Select, { onValueChange: handleGroupChange, value: value, children: [jsxRuntimeExports.jsx(Select.Trigger, { size: "small", className: styles["display-popover-properties-select"], children: jsxRuntimeExports.jsx(Select.Value, { placeholder: "Select value" }) }), jsxRuntimeExports.jsxs(Select.Content, { "data-variant": "filter", children: [jsxRuntimeExports.jsx(Select.Item, { value: defaultGroupOption.id, children: defaultGroupOption.label }), columnList.map((column) => (jsxRuntimeExports.jsx(Select.Item, { value: column.id, children: column.label }, column.id)))] })] }) })] }));
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { Grouping };
|
|
29
|
+
//# sourceMappingURL=grouping.js.map
|
|
@@ -0,0 +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\";\nimport { defaultGroupOption } from \"../utils\";\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;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
|
+
var flex = require('../../flex/flex.cjs');
|
|
5
|
+
var dataTable_module = require('../data-table.module.css.cjs');
|
|
6
|
+
var reactIcons_esm = require('../../../node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs');
|
|
7
|
+
var text = require('../../text/text.cjs');
|
|
8
|
+
var select = require('../../select/select.cjs');
|
|
9
|
+
var iconButton = require('../../icon-button/icon-button.cjs');
|
|
10
|
+
var dataTable_types = require('../data-table.types.cjs');
|
|
11
|
+
|
|
12
|
+
function Ordering({ columnList, onChange, value }) {
|
|
13
|
+
function handleColumnChange(columnId) {
|
|
14
|
+
onChange(columnId, value.order);
|
|
15
|
+
}
|
|
16
|
+
function handleOrderChange() {
|
|
17
|
+
const newOrder = value.order === dataTable_types.SortOrders.ASC ? dataTable_types.SortOrders.DESC : dataTable_types.SortOrders.ASC;
|
|
18
|
+
onChange(value.name, newOrder);
|
|
19
|
+
}
|
|
20
|
+
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: "Ordering" }), jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { gap: "extra-small", className: dataTable_module.default["flex-1"], children: [jsxRuntime.jsxRuntimeExports.jsxs(select.Select, { onValueChange: handleColumnChange, value: value.name, disabled: columnList.length === 0, children: [jsxRuntime.jsxRuntimeExports.jsx(select.Select.Trigger, { size: "small", className: dataTable_module.default["display-popover-properties-select"], "with-icon-button": "true", children: jsxRuntime.jsxRuntimeExports.jsx(select.Select.Value, { placeholder: "Select value" }) }), jsxRuntime.jsxRuntimeExports.jsx(select.Select.Content, { "data-variant": "filter", children: columnList.map((column) => (jsxRuntime.jsxRuntimeExports.jsx(select.Select.Item, { value: column.id, children: column.label }, column.id))) })] }), jsxRuntime.jsxRuntimeExports.jsx(iconButton.IconButton, { onClick: handleOrderChange, size: 4, disabled: columnList.length === 0, children: value.order === dataTable_types.SortOrders?.ASC ? (jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.TextAlignBottomIcon, { className: dataTable_module.default["display-popover-sort-icon"] })) : (jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.TextAlignTopIcon, { className: dataTable_module.default["display-popover-sort-icon"] })) })] })] }));
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports.Ordering = Ordering;
|
|
24
|
+
//# sourceMappingURL=ordering.cjs.map
|
|
@@ -0,0 +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 Sort,\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: Sort;\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;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ColumnData, Sort, SortOrdersValues } from "../data-table.types";
|
|
2
|
+
export interface OrderingProps {
|
|
3
|
+
columnList: ColumnData[];
|
|
4
|
+
onChange: (columnId: string, order: SortOrdersValues) => void;
|
|
5
|
+
value: Sort;
|
|
6
|
+
}
|
|
7
|
+
export declare function Ordering({ columnList, onChange, value }: OrderingProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=ordering.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ordering.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/ordering.tsx"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EACV,IAAI,EAEJ,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,IAAI,CAAC;CACb;AAED,wBAAgB,QAAQ,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,2CAqDtE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { j as jsxRuntimeExports } from '../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
|
|
2
|
+
import { Flex } from '../../flex/flex.js';
|
|
3
|
+
import styles from '../data-table.module.css.js';
|
|
4
|
+
import { TextAlignBottomIcon, TextAlignTopIcon } from '../../../node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js';
|
|
5
|
+
import { Text } from '../../text/text.js';
|
|
6
|
+
import { Select } from '../../select/select.js';
|
|
7
|
+
import { IconButton } from '../../icon-button/icon-button.js';
|
|
8
|
+
import { SortOrders } from '../data-table.types.js';
|
|
9
|
+
|
|
10
|
+
function Ordering({ columnList, onChange, value }) {
|
|
11
|
+
function handleColumnChange(columnId) {
|
|
12
|
+
onChange(columnId, value.order);
|
|
13
|
+
}
|
|
14
|
+
function handleOrderChange() {
|
|
15
|
+
const newOrder = value.order === SortOrders.ASC ? SortOrders.DESC : SortOrders.ASC;
|
|
16
|
+
onChange(value.name, newOrder);
|
|
17
|
+
}
|
|
18
|
+
return (jsxRuntimeExports.jsxs(Flex, { justify: "between", align: "center", children: [jsxRuntimeExports.jsx(Text, { size: 2, weight: 500, className: styles["flex-1"], children: "Ordering" }), jsxRuntimeExports.jsxs(Flex, { gap: "extra-small", className: styles["flex-1"], children: [jsxRuntimeExports.jsxs(Select, { onValueChange: handleColumnChange, value: value.name, disabled: columnList.length === 0, children: [jsxRuntimeExports.jsx(Select.Trigger, { size: "small", className: styles["display-popover-properties-select"], "with-icon-button": "true", children: jsxRuntimeExports.jsx(Select.Value, { placeholder: "Select value" }) }), jsxRuntimeExports.jsx(Select.Content, { "data-variant": "filter", children: columnList.map((column) => (jsxRuntimeExports.jsx(Select.Item, { value: column.id, children: column.label }, column.id))) })] }), jsxRuntimeExports.jsx(IconButton, { onClick: handleOrderChange, size: 4, disabled: columnList.length === 0, children: value.order === SortOrders?.ASC ? (jsxRuntimeExports.jsx(TextAlignBottomIcon, { className: styles["display-popover-sort-icon"] })) : (jsxRuntimeExports.jsx(TextAlignTopIcon, { className: styles["display-popover-sort-icon"] })) })] })] }));
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { Ordering };
|
|
22
|
+
//# sourceMappingURL=ordering.js.map
|
|
@@ -0,0 +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 Sort,\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: Sort;\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;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
|
+
var search = require('../../search/search.cjs');
|
|
5
|
+
var useDataTable = require('../hooks/useDataTable.cjs');
|
|
6
|
+
|
|
7
|
+
function TableSearch({ ...props }) {
|
|
8
|
+
const { updateTableQuery, tableQuery } = useDataTable.useDataTable();
|
|
9
|
+
const handleSearch = (e) => {
|
|
10
|
+
const value = e.target.value;
|
|
11
|
+
updateTableQuery((query) => {
|
|
12
|
+
return {
|
|
13
|
+
...query,
|
|
14
|
+
search: value,
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
const handleClear = () => {
|
|
19
|
+
updateTableQuery((query) => {
|
|
20
|
+
return {
|
|
21
|
+
...query,
|
|
22
|
+
search: "",
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
return (jsxRuntime.jsxRuntimeExports.jsx(search.Search, { ...props, onChange: handleSearch, value: tableQuery?.search, onClear: handleClear }));
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
exports.TableSearch = TableSearch;
|
|
30
|
+
//# sourceMappingURL=search.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.cjs","sources":["../../../../../v1/components/data-table/components/search.tsx"],"sourcesContent":["import { Search } from \"../../search\";\nimport { SearchProps } from \"../../search/search\";\nimport { useDataTable } from \"../hooks/useDataTable\";\n\nexport function TableSearch({ ...props }: SearchProps) {\n const { updateTableQuery, tableQuery } = useDataTable();\n\n const handleSearch = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n updateTableQuery((query) => {\n return {\n ...query,\n search: value,\n };\n });\n };\n\n const handleClear = () => {\n updateTableQuery((query) => {\n return {\n ...query,\n search: \"\",\n };\n });\n };\n\n return (\n <Search\n {...props}\n onChange={handleSearch}\n value={tableQuery?.search}\n onClear={handleClear}\n />\n );\n}\n"],"names":["useDataTable","_jsx","Search"],"mappings":";;;;;;SAIgB,WAAW,CAAC,EAAE,GAAG,KAAK,EAAe,EAAA;IACnD,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAGA,yBAAY,EAAE,CAAC;AAExD,IAAA,MAAM,YAAY,GAAG,CAAC,CAAsC,KAAI;AAC9D,QAAA,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;AAC7B,QAAA,gBAAgB,CAAC,CAAC,KAAK,KAAI;YACzB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,MAAM,EAAE,KAAK;aACd,CAAC;AACJ,SAAC,CAAC,CAAC;AACL,KAAC,CAAC;IAEF,MAAM,WAAW,GAAG,MAAK;AACvB,QAAA,gBAAgB,CAAC,CAAC,KAAK,KAAI;YACzB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,MAAM,EAAE,EAAE;aACX,CAAC;AACJ,SAAC,CAAC,CAAC;AACL,KAAC,CAAC;IAEF,QACEC,iCAACC,aAAM,EAAA,EAAA,GACD,KAAK,EACT,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,UAAU,EAAE,MAAM,EACzB,OAAO,EAAE,WAAW,EACpB,CAAA,EACF;AACJ;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/search.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,wBAAgB,WAAW,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,2CA8BpD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { j as jsxRuntimeExports } from '../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
|
|
2
|
+
import { Search } from '../../search/search.js';
|
|
3
|
+
import { useDataTable } from '../hooks/useDataTable.js';
|
|
4
|
+
|
|
5
|
+
function TableSearch({ ...props }) {
|
|
6
|
+
const { updateTableQuery, tableQuery } = useDataTable();
|
|
7
|
+
const handleSearch = (e) => {
|
|
8
|
+
const value = e.target.value;
|
|
9
|
+
updateTableQuery((query) => {
|
|
10
|
+
return {
|
|
11
|
+
...query,
|
|
12
|
+
search: value,
|
|
13
|
+
};
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
const handleClear = () => {
|
|
17
|
+
updateTableQuery((query) => {
|
|
18
|
+
return {
|
|
19
|
+
...query,
|
|
20
|
+
search: "",
|
|
21
|
+
};
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
return (jsxRuntimeExports.jsx(Search, { ...props, onChange: handleSearch, value: tableQuery?.search, onClear: handleClear }));
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export { TableSearch };
|
|
28
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.js","sources":["../../../../../v1/components/data-table/components/search.tsx"],"sourcesContent":["import { Search } from \"../../search\";\nimport { SearchProps } from \"../../search/search\";\nimport { useDataTable } from \"../hooks/useDataTable\";\n\nexport function TableSearch({ ...props }: SearchProps) {\n const { updateTableQuery, tableQuery } = useDataTable();\n\n const handleSearch = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n updateTableQuery((query) => {\n return {\n ...query,\n search: value,\n };\n });\n };\n\n const handleClear = () => {\n updateTableQuery((query) => {\n return {\n ...query,\n search: \"\",\n };\n });\n };\n\n return (\n <Search\n {...props}\n onChange={handleSearch}\n value={tableQuery?.search}\n onClear={handleClear}\n />\n );\n}\n"],"names":["_jsx"],"mappings":";;;;SAIgB,WAAW,CAAC,EAAE,GAAG,KAAK,EAAe,EAAA;IACnD,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,YAAY,EAAE,CAAC;AAExD,IAAA,MAAM,YAAY,GAAG,CAAC,CAAsC,KAAI;AAC9D,QAAA,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;AAC7B,QAAA,gBAAgB,CAAC,CAAC,KAAK,KAAI;YACzB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,MAAM,EAAE,KAAK;aACd,CAAC;AACJ,SAAC,CAAC,CAAC;AACL,KAAC,CAAC;IAEF,MAAM,WAAW,GAAG,MAAK;AACvB,QAAA,gBAAgB,CAAC,CAAC,KAAK,KAAI;YACzB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,MAAM,EAAE,EAAE;aACX,CAAC;AACJ,SAAC,CAAC,CAAC;AACL,KAAC,CAAC;IAEF,QACEA,sBAAC,MAAM,EAAA,EAAA,GACD,KAAK,EACT,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,UAAU,EAAE,MAAM,EACzB,OAAO,EAAE,WAAW,EACpB,CAAA,EACF;AACJ;;;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
|
+
var clsx = require('../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
|
|
5
|
+
var flex = require('../../flex/flex.cjs');
|
|
6
|
+
var dataTable_module = require('../data-table.module.css.cjs');
|
|
7
|
+
var displaySettings = require('./display-settings.cjs');
|
|
8
|
+
var filters = require('./filters.cjs');
|
|
9
|
+
|
|
10
|
+
function Toolbar({ className }) {
|
|
11
|
+
return (jsxRuntime.jsxRuntimeExports.jsxs(flex.Flex, { className: clsx.clsx(dataTable_module.default["toolbar"], className), justify: "between", align: "center", children: [jsxRuntime.jsxRuntimeExports.jsx(filters.Filters, {}), jsxRuntime.jsxRuntimeExports.jsx(displaySettings.DisplaySettings, {})] }));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
exports.Toolbar = Toolbar;
|
|
15
|
+
//# sourceMappingURL=toolbar.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.cjs","sources":["../../../../../v1/components/data-table/components/toolbar.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\n\nimport { DisplaySettings } from \"./display-settings\";\nimport { Filters } from \"./filters\";\n\nexport function Toolbar<TData, TValue>({ className }: { className?: string }) {\n return (\n <Flex\n className={clsx(styles[\"toolbar\"], className)}\n justify={\"between\"}\n align={\"center\"}\n >\n <Filters<TData, TValue> />\n <DisplaySettings />\n </Flex>\n );\n}\n"],"names":["_jsxs","Flex","clsx","styles","_jsx","Filters","DisplaySettings"],"mappings":";;;;;;;;;AAOgB,SAAA,OAAO,CAAgB,EAAE,SAAS,EAA0B,EAAA;AAC1E,IAAA,QACEA,iCAAA,CAACC,SAAI,EAAA,EACH,SAAS,EAAEC,SAAI,CAACC,wBAAM,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAC7C,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,QAAQ,EAEf,QAAA,EAAA,CAAAC,gCAAA,CAACC,eAAO,EAAA,EAAA,CAAkB,EAC1BD,gCAAC,CAAAE,+BAAe,EAAG,EAAA,CAAA,CAAA,EAAA,CACd,EACP;AACJ;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../../../v1/components/data-table/components/toolbar.tsx"],"names":[],"mappings":"AAOA,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,2CAW3E"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { j as jsxRuntimeExports } from '../../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
|
|
2
|
+
import { clsx } from '../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js';
|
|
3
|
+
import { Flex } from '../../flex/flex.js';
|
|
4
|
+
import styles from '../data-table.module.css.js';
|
|
5
|
+
import { DisplaySettings } from './display-settings.js';
|
|
6
|
+
import { Filters } from './filters.js';
|
|
7
|
+
|
|
8
|
+
function Toolbar({ className }) {
|
|
9
|
+
return (jsxRuntimeExports.jsxs(Flex, { className: clsx(styles["toolbar"], className), justify: "between", align: "center", children: [jsxRuntimeExports.jsx(Filters, {}), jsxRuntimeExports.jsx(DisplaySettings, {})] }));
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { Toolbar };
|
|
13
|
+
//# sourceMappingURL=toolbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.js","sources":["../../../../../v1/components/data-table/components/toolbar.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { Flex } from \"../../flex\";\nimport styles from \"../data-table.module.css\";\n\nimport { DisplaySettings } from \"./display-settings\";\nimport { Filters } from \"./filters\";\n\nexport function Toolbar<TData, TValue>({ className }: { className?: string }) {\n return (\n <Flex\n className={clsx(styles[\"toolbar\"], className)}\n justify={\"between\"}\n align={\"center\"}\n >\n <Filters<TData, TValue> />\n <DisplaySettings />\n </Flex>\n );\n}\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAOgB,SAAA,OAAO,CAAgB,EAAE,SAAS,EAA0B,EAAA;AAC1E,IAAA,QACEA,sBAAA,CAAC,IAAI,EAAA,EACH,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAC7C,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,QAAQ,EAEf,QAAA,EAAA,CAAAC,qBAAA,CAAC,OAAO,EAAA,EAAA,CAAkB,EAC1BA,qBAAC,CAAA,eAAe,EAAG,EAAA,CAAA,CAAA,EAAA,CACd,EACP;AACJ;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.cjs","sources":["../../../../v1/components/data-table/context.tsx"],"sourcesContent":["import { createContext } from \"react\";\nimport { TableContextType } from \"./data-table.types\";\n\nexport const TableContext = createContext<TableContextType<any, any> | null>(\n null\n);\n"],"names":["createContext"],"mappings":";;;;MAGa,YAAY,GAAGA,mBAAa,CACvC,IAAI;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../v1/components/data-table/context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,eAAO,MAAM,YAAY,4DAExB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../../../v1/components/data-table/context.tsx"],"sourcesContent":["import { createContext } from \"react\";\nimport { TableContextType } from \"./data-table.types\";\n\nexport const TableContext = createContext<TableContextType<any, any> | null>(\n null\n);\n"],"names":[],"mappings":";;MAGa,YAAY,GAAG,aAAa,CACvC,IAAI;;;;"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var context = require('./context.cjs');
|
|
6
|
+
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
|
+
var index = require('./utils/index.cjs');
|
|
8
|
+
var content = require('./components/content.cjs');
|
|
9
|
+
var toolbar = require('./components/toolbar.cjs');
|
|
10
|
+
var search = require('./components/search.cjs');
|
|
11
|
+
var index$2 = require('../../node_modules/.pnpm/@tanstack_table-core@8.9.2/node_modules/@tanstack/table-core/build/lib/index.cjs');
|
|
12
|
+
|
|
13
|
+
function DataTableRoot({ data = [], columns, query, mode = "client", isLoading = false, loadingRowCount = 3, defaultSort, children, onTableQueryChange, onLoadMore, }) {
|
|
14
|
+
const defaultTableQuery = index.getDefaultTableQuery(defaultSort, query);
|
|
15
|
+
const initialColumnVisibility = index.getInitialColumnVisibility(columns);
|
|
16
|
+
const [columnVisibility, setColumnVisibility] = React.useState(initialColumnVisibility);
|
|
17
|
+
const [tableQuery, setTableQuery] = React.useState(defaultTableQuery);
|
|
18
|
+
const oldQueryRef = React.useRef(null);
|
|
19
|
+
const reactTableState = React.useMemo(() => index.queryToTableState(tableQuery), [tableQuery]);
|
|
20
|
+
function onDisplaySettingsReset() {
|
|
21
|
+
setTableQuery((prev) => ({ ...prev, ...defaultTableQuery }));
|
|
22
|
+
setColumnVisibility(initialColumnVisibility);
|
|
23
|
+
}
|
|
24
|
+
const group_by = tableQuery.group_by?.[0];
|
|
25
|
+
const columnsWithFilters = React.useMemo(() => index.getColumnsWithFilterFn(columns, tableQuery.filters), [columns, tableQuery.filters]);
|
|
26
|
+
const groupedData = React.useMemo(() => index.groupData(data, group_by, columns), [data, group_by, columns]);
|
|
27
|
+
React.useEffect(() => {
|
|
28
|
+
if (tableQuery &&
|
|
29
|
+
onTableQueryChange &&
|
|
30
|
+
index.hasQueryChanged(oldQueryRef.current, tableQuery) &&
|
|
31
|
+
mode === "server") {
|
|
32
|
+
onTableQueryChange(index.sanitizeTableQuery(tableQuery));
|
|
33
|
+
oldQueryRef.current = tableQuery;
|
|
34
|
+
}
|
|
35
|
+
}, [tableQuery, onTableQueryChange]);
|
|
36
|
+
const table = index$1.useReactTable({
|
|
37
|
+
data: groupedData,
|
|
38
|
+
columns: columnsWithFilters,
|
|
39
|
+
getCoreRowModel: index$2.getCoreRowModel(),
|
|
40
|
+
getExpandedRowModel: index$2.getExpandedRowModel(),
|
|
41
|
+
getSubRows: (row) => row?.subRows || [],
|
|
42
|
+
getSortedRowModel: mode === "server" ? undefined : index$2.getSortedRowModel(),
|
|
43
|
+
getFilteredRowModel: mode === "server" ? undefined : index$2.getFilteredRowModel(),
|
|
44
|
+
manualSorting: mode === "server",
|
|
45
|
+
manualFiltering: mode === "server",
|
|
46
|
+
onColumnVisibilityChange: setColumnVisibility,
|
|
47
|
+
globalFilterFn: mode === "server" ? undefined : "auto",
|
|
48
|
+
initialState: {
|
|
49
|
+
columnVisibility: initialColumnVisibility,
|
|
50
|
+
},
|
|
51
|
+
filterFromLeafRows: true,
|
|
52
|
+
state: {
|
|
53
|
+
...reactTableState,
|
|
54
|
+
columnVisibility: columnVisibility,
|
|
55
|
+
expanded: group_by && group_by !== index.defaultGroupOption.id ? true : undefined,
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
function updateTableQuery(fn) {
|
|
59
|
+
setTableQuery((prev) => fn(prev));
|
|
60
|
+
}
|
|
61
|
+
function loadMoreData() {
|
|
62
|
+
if (mode === "server" && onLoadMore) {
|
|
63
|
+
onLoadMore();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const contextValue = {
|
|
67
|
+
table,
|
|
68
|
+
columns,
|
|
69
|
+
mode,
|
|
70
|
+
isLoading,
|
|
71
|
+
loadMoreData,
|
|
72
|
+
tableQuery,
|
|
73
|
+
updateTableQuery,
|
|
74
|
+
onDisplaySettingsReset,
|
|
75
|
+
defaultSort,
|
|
76
|
+
loadingRowCount,
|
|
77
|
+
};
|
|
78
|
+
return (jsxRuntime.jsxRuntimeExports.jsx(context.TableContext.Provider, { value: contextValue, children: children }));
|
|
79
|
+
}
|
|
80
|
+
const DataTable = Object.assign(DataTableRoot, {
|
|
81
|
+
Content: content.Content,
|
|
82
|
+
Toolbar: toolbar.Toolbar,
|
|
83
|
+
Search: search.TableSearch,
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
exports.DataTable = DataTable;
|
|
87
|
+
//# sourceMappingURL=data-table.cjs.map
|
|
@@ -0,0 +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 defaultGroupOption,\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}: 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 };\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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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DataTableProps } from "./data-table.types";
|
|
2
|
+
import { Content } from "./components/content";
|
|
3
|
+
import { Toolbar } from "./components/toolbar";
|
|
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;
|
|
6
|
+
export declare const DataTable: typeof DataTableRoot & {
|
|
7
|
+
Content: typeof Content;
|
|
8
|
+
Toolbar: typeof Toolbar;
|
|
9
|
+
Search: typeof TableSearch;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=data-table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../../v1/components/data-table/data-table.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EAKf,MAAM,oBAAoB,CAAC;AAmB5B,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,GACX,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,2CAkGxD;AAED,eAAO,MAAM,SAAS;;;;CAIpB,CAAC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js';
|
|
2
|
+
import { useState, useRef, useMemo, useEffect } from 'react';
|
|
3
|
+
import { TableContext } from './context.js';
|
|
4
|
+
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, defaultGroupOption } from './utils/index.js';
|
|
6
|
+
import { Content } from './components/content.js';
|
|
7
|
+
import { Toolbar } from './components/toolbar.js';
|
|
8
|
+
import { TableSearch } from './components/search.js';
|
|
9
|
+
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
|
+
function DataTableRoot({ data = [], columns, query, mode = "client", isLoading = false, loadingRowCount = 3, defaultSort, children, onTableQueryChange, onLoadMore, }) {
|
|
12
|
+
const defaultTableQuery = getDefaultTableQuery(defaultSort, query);
|
|
13
|
+
const initialColumnVisibility = getInitialColumnVisibility(columns);
|
|
14
|
+
const [columnVisibility, setColumnVisibility] = useState(initialColumnVisibility);
|
|
15
|
+
const [tableQuery, setTableQuery] = useState(defaultTableQuery);
|
|
16
|
+
const oldQueryRef = useRef(null);
|
|
17
|
+
const reactTableState = useMemo(() => queryToTableState(tableQuery), [tableQuery]);
|
|
18
|
+
function onDisplaySettingsReset() {
|
|
19
|
+
setTableQuery((prev) => ({ ...prev, ...defaultTableQuery }));
|
|
20
|
+
setColumnVisibility(initialColumnVisibility);
|
|
21
|
+
}
|
|
22
|
+
const group_by = tableQuery.group_by?.[0];
|
|
23
|
+
const columnsWithFilters = useMemo(() => getColumnsWithFilterFn(columns, tableQuery.filters), [columns, tableQuery.filters]);
|
|
24
|
+
const groupedData = useMemo(() => groupData(data, group_by, columns), [data, group_by, columns]);
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
if (tableQuery &&
|
|
27
|
+
onTableQueryChange &&
|
|
28
|
+
hasQueryChanged(oldQueryRef.current, tableQuery) &&
|
|
29
|
+
mode === "server") {
|
|
30
|
+
onTableQueryChange(sanitizeTableQuery(tableQuery));
|
|
31
|
+
oldQueryRef.current = tableQuery;
|
|
32
|
+
}
|
|
33
|
+
}, [tableQuery, onTableQueryChange]);
|
|
34
|
+
const table = useReactTable({
|
|
35
|
+
data: groupedData,
|
|
36
|
+
columns: columnsWithFilters,
|
|
37
|
+
getCoreRowModel: getCoreRowModel(),
|
|
38
|
+
getExpandedRowModel: getExpandedRowModel(),
|
|
39
|
+
getSubRows: (row) => row?.subRows || [],
|
|
40
|
+
getSortedRowModel: mode === "server" ? undefined : getSortedRowModel(),
|
|
41
|
+
getFilteredRowModel: mode === "server" ? undefined : getFilteredRowModel(),
|
|
42
|
+
manualSorting: mode === "server",
|
|
43
|
+
manualFiltering: mode === "server",
|
|
44
|
+
onColumnVisibilityChange: setColumnVisibility,
|
|
45
|
+
globalFilterFn: mode === "server" ? undefined : "auto",
|
|
46
|
+
initialState: {
|
|
47
|
+
columnVisibility: initialColumnVisibility,
|
|
48
|
+
},
|
|
49
|
+
filterFromLeafRows: true,
|
|
50
|
+
state: {
|
|
51
|
+
...reactTableState,
|
|
52
|
+
columnVisibility: columnVisibility,
|
|
53
|
+
expanded: group_by && group_by !== defaultGroupOption.id ? true : undefined,
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
function updateTableQuery(fn) {
|
|
57
|
+
setTableQuery((prev) => fn(prev));
|
|
58
|
+
}
|
|
59
|
+
function loadMoreData() {
|
|
60
|
+
if (mode === "server" && onLoadMore) {
|
|
61
|
+
onLoadMore();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
const contextValue = {
|
|
65
|
+
table,
|
|
66
|
+
columns,
|
|
67
|
+
mode,
|
|
68
|
+
isLoading,
|
|
69
|
+
loadMoreData,
|
|
70
|
+
tableQuery,
|
|
71
|
+
updateTableQuery,
|
|
72
|
+
onDisplaySettingsReset,
|
|
73
|
+
defaultSort,
|
|
74
|
+
loadingRowCount,
|
|
75
|
+
};
|
|
76
|
+
return (jsxRuntimeExports.jsx(TableContext.Provider, { value: contextValue, children: children }));
|
|
77
|
+
}
|
|
78
|
+
const DataTable = Object.assign(DataTableRoot, {
|
|
79
|
+
Content: Content,
|
|
80
|
+
Toolbar: Toolbar,
|
|
81
|
+
Search: TableSearch,
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
export { DataTable };
|
|
85
|
+
//# sourceMappingURL=data-table.js.map
|
|
@@ -0,0 +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 defaultGroupOption,\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}: 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 };\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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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
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-"};
|
|
6
|
+
|
|
7
|
+
exports.default = styles;
|
|
8
|
+
//# sourceMappingURL=data-table.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|