@veeqo/ui 9.8.0 → 9.9.1
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/components/ActionMenu/ActionMenu.cjs +1 -0
- package/dist/components/ActionMenu/ActionMenu.cjs.map +1 -1
- package/dist/components/ActionMenu/ActionMenu.js +1 -0
- package/dist/components/ActionMenu/ActionMenu.js.map +1 -1
- package/dist/components/DataGrid/DataGrid.cjs +129 -0
- package/dist/components/DataGrid/DataGrid.cjs.map +1 -0
- package/dist/components/DataGrid/DataGrid.d.ts +21 -0
- package/dist/components/DataGrid/DataGrid.js +123 -0
- package/dist/components/DataGrid/DataGrid.js.map +1 -0
- package/dist/components/DataGrid/DataGrid.module.css.cjs +13 -0
- package/dist/components/DataGrid/DataGrid.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/DataGrid.module.css.js +10 -0
- package/dist/components/DataGrid/DataGrid.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/Body/Body.cjs +21 -0
- package/dist/components/DataGrid/components/Body/Body.cjs.map +1 -0
- package/dist/components/DataGrid/components/Body/Body.d.ts +23 -0
- package/dist/components/DataGrid/components/Body/Body.js +14 -0
- package/dist/components/DataGrid/components/Body/Body.js.map +1 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.cjs +31 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.cjs.map +1 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.d.ts +18 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.js +25 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.js.map +1 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.module.css.cjs +11 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.module.css.js +9 -0
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/Body/BodyCell/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Body/Row/Row.cjs +14 -0
- package/dist/components/DataGrid/components/Body/Row/Row.cjs.map +1 -0
- package/dist/components/DataGrid/components/Body/Row/Row.d.ts +18 -0
- package/dist/components/DataGrid/components/Body/Row/Row.js +8 -0
- package/dist/components/DataGrid/components/Body/Row/Row.js.map +1 -0
- package/dist/components/DataGrid/components/Body/Row/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Body/index.d.ts +1 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.cjs +21 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.cjs.map +1 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.d.ts +15 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.js +15 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.js.map +1 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.module.css.cjs +11 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.module.css.js +9 -0
- package/dist/components/DataGrid/components/CellContent/CellContent.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/CellContent/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Columns/Columns.cjs +56 -0
- package/dist/components/DataGrid/components/Columns/Columns.cjs.map +1 -0
- package/dist/components/DataGrid/components/Columns/Columns.d.ts +17 -0
- package/dist/components/DataGrid/components/Columns/Columns.js +50 -0
- package/dist/components/DataGrid/components/Columns/Columns.js.map +1 -0
- package/dist/components/DataGrid/components/Columns/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Footer/Footer.cjs +18 -0
- package/dist/components/DataGrid/components/Footer/Footer.cjs.map +1 -0
- package/dist/components/DataGrid/components/Footer/Footer.d.ts +15 -0
- package/dist/components/DataGrid/components/Footer/Footer.js +12 -0
- package/dist/components/DataGrid/components/Footer/Footer.js.map +1 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.cjs +33 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.cjs.map +1 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.d.ts +18 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.js +27 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.js.map +1 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.module.css.cjs +11 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.module.css.js +9 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/FooterCell.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/Footer/FooterCell/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Footer/index.d.ts +1 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.cjs +23 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.cjs.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.d.ts +21 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.js +17 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.js.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.module.css.cjs +17 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.module.css.js +12 -0
- package/dist/components/DataGrid/components/GridContainer/Container/Container.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/Container/index.d.ts +1 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.cjs +30 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.cjs.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.d.ts +49 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.js +24 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.js.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.module.css.cjs +11 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.module.css.js +9 -0
- package/dist/components/DataGrid/components/GridContainer/GridContainer.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/GridContainer/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Header/Header.cjs +20 -0
- package/dist/components/DataGrid/components/Header/Header.cjs.map +1 -0
- package/dist/components/DataGrid/components/Header/Header.d.ts +13 -0
- package/dist/components/DataGrid/components/Header/Header.js +14 -0
- package/dist/components/DataGrid/components/Header/Header.js.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.cjs +64 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.cjs.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.d.ts +22 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.js +58 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.js.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.module.css.cjs +19 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.module.css.js +13 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.cjs +29 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.cjs.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.d.ts +10 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.js +23 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.js.map +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/SortIcon/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Header/HeaderCell/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.cjs +25 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.cjs.map +1 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.d.ts +21 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.js +19 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.js.map +1 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.module.css.cjs +11 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.module.css.cjs.map +1 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.module.css.js +9 -0
- package/dist/components/DataGrid/components/Header/Resizer/Resizer.module.css.js.map +1 -0
- package/dist/components/DataGrid/components/Header/Resizer/index.d.ts +1 -0
- package/dist/components/DataGrid/components/Header/index.d.ts +1 -0
- package/dist/components/DataGrid/components/index.d.ts +5 -0
- package/dist/components/DataGrid/constants.cjs +12 -0
- package/dist/components/DataGrid/constants.cjs.map +1 -0
- package/dist/components/DataGrid/constants.d.ts +4 -0
- package/dist/components/DataGrid/constants.js +7 -0
- package/dist/components/DataGrid/constants.js.map +1 -0
- package/dist/components/DataGrid/hooks/index.d.ts +3 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnLayout.cjs +39 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnLayout.cjs.map +1 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnLayout.d.ts +15 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnLayout.js +37 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnLayout.js.map +1 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnStyles.cjs +22 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnStyles.cjs.map +1 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnStyles.d.ts +13 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnStyles.js +20 -0
- package/dist/components/DataGrid/hooks/usePinnedColumnStyles.js.map +1 -0
- package/dist/components/DataGrid/hooks/useSortingState.cjs +40 -0
- package/dist/components/DataGrid/hooks/useSortingState.cjs.map +1 -0
- package/dist/components/DataGrid/hooks/useSortingState.d.ts +23 -0
- package/dist/components/DataGrid/hooks/useSortingState.js +38 -0
- package/dist/components/DataGrid/hooks/useSortingState.js.map +1 -0
- package/dist/components/DataGrid/index.d.ts +1 -0
- package/dist/components/DataGrid/types/AriaRoles.d.ts +4 -0
- package/dist/components/DataGrid/types/ColumnDefinition.d.ts +77 -0
- package/dist/components/DataGrid/types/DataGridProps.d.ts +85 -0
- package/dist/components/DataGrid/types/PinnedColumnState.d.ts +4 -0
- package/dist/components/DataGrid/types/SortState.d.ts +5 -0
- package/dist/components/DataGrid/types/declarations.d.ts +9 -0
- package/dist/components/DataGrid/types/enums.d.ts +3 -0
- package/dist/components/DataGrid/types/index.d.ts +6 -0
- package/dist/components/DataGrid/utils/ColumnMapper.cjs +96 -0
- package/dist/components/DataGrid/utils/ColumnMapper.cjs.map +1 -0
- package/dist/components/DataGrid/utils/ColumnMapper.d.ts +10 -0
- package/dist/components/DataGrid/utils/ColumnMapper.js +94 -0
- package/dist/components/DataGrid/utils/ColumnMapper.js.map +1 -0
- package/dist/components/DataGrid/utils/getAriaRoles.cjs +11 -0
- package/dist/components/DataGrid/utils/getAriaRoles.cjs.map +1 -0
- package/dist/components/DataGrid/utils/getAriaRoles.d.ts +2 -0
- package/dist/components/DataGrid/utils/getAriaRoles.js +9 -0
- package/dist/components/DataGrid/utils/getAriaRoles.js.map +1 -0
- package/dist/components/DataGrid/utils/index.d.ts +4 -0
- package/dist/components/DataGrid/utils/isLastColumn.cjs +11 -0
- package/dist/components/DataGrid/utils/isLastColumn.cjs.map +1 -0
- package/dist/components/DataGrid/utils/isLastColumn.d.ts +2 -0
- package/dist/components/DataGrid/utils/isLastColumn.js +9 -0
- package/dist/components/DataGrid/utils/isLastColumn.js.map +1 -0
- package/dist/components/DataGrid/utils/pinnedColumnUtils.cjs +33 -0
- package/dist/components/DataGrid/utils/pinnedColumnUtils.cjs.map +1 -0
- package/dist/components/DataGrid/utils/pinnedColumnUtils.d.ts +4 -0
- package/dist/components/DataGrid/utils/pinnedColumnUtils.js +30 -0
- package/dist/components/DataGrid/utils/pinnedColumnUtils.js.map +1 -0
- package/dist/components/DataTable/DataTable.cjs +5 -2
- package/dist/components/DataTable/DataTable.cjs.map +1 -1
- package/dist/components/DataTable/DataTable.js +5 -2
- package/dist/components/DataTable/DataTable.js.map +1 -1
- package/dist/components/DataTable/hooks/index.d.ts +0 -1
- package/dist/components/DataTable/index.d.ts +1 -1
- package/dist/components/FilterTag/FilterTag.cjs +1 -0
- package/dist/components/FilterTag/FilterTag.cjs.map +1 -1
- package/dist/components/FilterTag/FilterTag.js +1 -0
- package/dist/components/FilterTag/FilterTag.js.map +1 -1
- package/dist/components/SelectDropdown/ListItem/ListItem.cjs +1 -0
- package/dist/components/SelectDropdown/ListItem/ListItem.cjs.map +1 -1
- package/dist/components/SelectDropdown/ListItem/ListItem.js +1 -0
- package/dist/components/SelectDropdown/ListItem/ListItem.js.map +1 -1
- package/dist/components/VideoModal/VideoModal.cjs +1 -0
- package/dist/components/VideoModal/VideoModal.cjs.map +1 -1
- package/dist/components/VideoModal/VideoModal.js +1 -0
- package/dist/components/VideoModal/VideoModal.js.map +1 -1
- package/dist/components/View/View.cjs +1 -0
- package/dist/components/View/View.cjs.map +1 -1
- package/dist/components/View/View.js +1 -0
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/ViewTab/ViewTab.cjs +1 -0
- package/dist/components/ViewTab/ViewTab.cjs.map +1 -1
- package/dist/components/ViewTab/ViewTab.js +1 -0
- package/dist/components/ViewTab/ViewTab.js.map +1 -1
- package/dist/components/index.d.ts +2 -1
- package/dist/hooks/index.d.ts +3 -0
- package/dist/{components/DataTable/hooks → hooks}/useDragToScroll.cjs +10 -2
- package/dist/hooks/useDragToScroll.cjs.map +1 -0
- package/dist/hooks/useDragToScroll.d.ts +12 -0
- package/dist/{components/DataTable/hooks → hooks}/useDragToScroll.js +10 -2
- package/dist/hooks/useDragToScroll.js.map +1 -0
- package/dist/hooks/useIntersectionObserver.cjs +57 -0
- package/dist/hooks/useIntersectionObserver.cjs.map +1 -0
- package/dist/hooks/useIntersectionObserver.d.ts +15 -0
- package/dist/hooks/useIntersectionObserver.js +51 -0
- package/dist/hooks/useIntersectionObserver.js.map +1 -0
- package/dist/hooks/useResizeObserver.cjs +67 -0
- package/dist/hooks/useResizeObserver.cjs.map +1 -0
- package/dist/hooks/useResizeObserver.d.ts +18 -0
- package/dist/hooks/useResizeObserver.js +61 -0
- package/dist/hooks/useResizeObserver.js.map +1 -0
- package/dist/index.cjs +8 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/theme/index.d.ts +1 -0
- package/dist/theme/modules/layers.cjs +1 -0
- package/dist/theme/modules/layers.cjs.map +1 -1
- package/dist/theme/modules/layers.d.ts +1 -0
- package/dist/theme/modules/layers.js +1 -0
- package/dist/theme/modules/layers.js.map +1 -1
- package/package.json +2 -1
- package/dist/components/DataTable/hooks/useDragToScroll.cjs.map +0 -1
- package/dist/components/DataTable/hooks/useDragToScroll.d.ts +0 -2
- package/dist/components/DataTable/hooks/useDragToScroll.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SortIcon.cjs","sources":["../../../../../../../src/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { SortDirection } from '@tanstack/react-table';\n\nimport { theme } from 'Theme';\n\nimport { ArrowDownIcon, ArrowUpIcon, DoubleArrowIcon } from '../../../../../../tempIcons';\nimport { sortIcon } from '../HeaderCell.module.css';\n\ntype SortIconProps = {\n isSorted?: boolean | SortDirection;\n};\n\n/**\n * Sort icon for a column header.\n */\nexport const SortIcon = ({ isSorted }: SortIconProps) => {\n const icon = useMemo(() => {\n if (!isSorted) {\n return <DoubleArrowIcon size={5} />;\n }\n\n return isSorted === 'asc' ? (\n <ArrowUpIcon color={theme.colors.neutral.ink.dark} size={5} />\n ) : (\n <ArrowDownIcon color={theme.colors.neutral.ink.dark} size={5} />\n );\n }, [isSorted]);\n\n return <span className={sortIcon}>{icon}</span>;\n};\n"],"names":["useMemo","React","DoubleArrowIcon","ArrowUpIcon","theme","ArrowDownIcon","sortIcon"],"mappings":";;;;;;;;;;;;;;AAaA;;AAEG;MACU,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAiB,KAAI;AACtD,IAAA,MAAM,IAAI,GAAGA,aAAO,CAAC,MAAK;QACxB,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,OAAOC,qCAACC,+BAAe,EAAA,EAAC,IAAI,EAAE,CAAC,GAAI;AACpC;QAED,OAAO,QAAQ,KAAK,KAAK,IACvBD,sBAAC,CAAA,aAAA,CAAAE,uBAAW,EAAC,EAAA,KAAK,EAAEC,WAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAI,KAE9DH,sBAAA,CAAA,aAAA,CAACI,2BAAa,EAAC,EAAA,KAAK,EAAED,WAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAI,CAAA,CACjE;AACH,KAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAEd,IAAA,OAAOH,+CAAM,SAAS,EAAEK,0BAAQ,EAAG,EAAA,IAAI,CAAQ;AACjD;;;;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SortDirection } from '@tanstack/react-table';
|
|
3
|
+
type SortIconProps = {
|
|
4
|
+
isSorted?: boolean | SortDirection;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Sort icon for a column header.
|
|
8
|
+
*/
|
|
9
|
+
export declare const SortIcon: ({ isSorted }: SortIconProps) => React.JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React__default, { useMemo } from 'react';
|
|
2
|
+
import { theme } from '../../../../../../theme/index.js';
|
|
3
|
+
import { ArrowDownIcon } from '../../../../../../tempIcons/ArrowDownIcon.js';
|
|
4
|
+
import { ArrowUpIcon } from '../../../../../../tempIcons/ArrowUpIcon.js';
|
|
5
|
+
import { DoubleArrowIcon } from '../../../../../../tempIcons/DoubleArrowIcon.js';
|
|
6
|
+
import '../../../../../../theme/modules/sizes.js';
|
|
7
|
+
import { sortIcon } from '../HeaderCell.module.css.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Sort icon for a column header.
|
|
11
|
+
*/
|
|
12
|
+
const SortIcon = ({ isSorted }) => {
|
|
13
|
+
const icon = useMemo(() => {
|
|
14
|
+
if (!isSorted) {
|
|
15
|
+
return React__default.createElement(DoubleArrowIcon, { size: 5 });
|
|
16
|
+
}
|
|
17
|
+
return isSorted === 'asc' ? (React__default.createElement(ArrowUpIcon, { color: theme.colors.neutral.ink.dark, size: 5 })) : (React__default.createElement(ArrowDownIcon, { color: theme.colors.neutral.ink.dark, size: 5 }));
|
|
18
|
+
}, [isSorted]);
|
|
19
|
+
return React__default.createElement("span", { className: sortIcon }, icon);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export { SortIcon };
|
|
23
|
+
//# sourceMappingURL=SortIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SortIcon.js","sources":["../../../../../../../src/components/DataGrid/components/Header/HeaderCell/SortIcon/SortIcon.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { SortDirection } from '@tanstack/react-table';\n\nimport { theme } from 'Theme';\n\nimport { ArrowDownIcon, ArrowUpIcon, DoubleArrowIcon } from '../../../../../../tempIcons';\nimport { sortIcon } from '../HeaderCell.module.css';\n\ntype SortIconProps = {\n isSorted?: boolean | SortDirection;\n};\n\n/**\n * Sort icon for a column header.\n */\nexport const SortIcon = ({ isSorted }: SortIconProps) => {\n const icon = useMemo(() => {\n if (!isSorted) {\n return <DoubleArrowIcon size={5} />;\n }\n\n return isSorted === 'asc' ? (\n <ArrowUpIcon color={theme.colors.neutral.ink.dark} size={5} />\n ) : (\n <ArrowDownIcon color={theme.colors.neutral.ink.dark} size={5} />\n );\n }, [isSorted]);\n\n return <span className={sortIcon}>{icon}</span>;\n};\n"],"names":["React"],"mappings":";;;;;;;;AAaA;;AAEG;MACU,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAiB,KAAI;AACtD,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAK;QACxB,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,OAAOA,6BAAC,eAAe,EAAA,EAAC,IAAI,EAAE,CAAC,GAAI;AACpC;QAED,OAAO,QAAQ,KAAK,KAAK,IACvBA,cAAC,CAAA,aAAA,CAAA,WAAW,EAAC,EAAA,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAI,KAE9DA,cAAA,CAAA,aAAA,CAAC,aAAa,EAAC,EAAA,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAI,CAAA,CACjE;AACH,KAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAEd,IAAA,OAAOA,uCAAM,SAAS,EAAE,QAAQ,EAAG,EAAA,IAAI,CAAQ;AACjD;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SortIcon } from './SortIcon';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { HeaderCell } from './HeaderCell';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var buildClassnames = require('../../../../../utils/buildClassnames.cjs');
|
|
5
|
+
require('uid/secure');
|
|
6
|
+
var Resizer_module = require('./Resizer.module.css.cjs');
|
|
7
|
+
|
|
8
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
9
|
+
|
|
10
|
+
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
11
|
+
|
|
12
|
+
const resizerClassname = buildClassnames.buildClassnames([Resizer_module.resizer, 'data-grid-column-resizer']);
|
|
13
|
+
const Resizer = ({ resetSize, getResizeHandler, getIsResizing, deltaOffset, }) => {
|
|
14
|
+
const isResizing = getIsResizing();
|
|
15
|
+
const resizerStyle = React.useMemo(() => {
|
|
16
|
+
if (isResizing) {
|
|
17
|
+
return { transform: `translateX(${deltaOffset || 0}px)` };
|
|
18
|
+
}
|
|
19
|
+
return undefined;
|
|
20
|
+
}, [isResizing, deltaOffset]);
|
|
21
|
+
return (React__default.default.createElement("div", { "data-testid": "data-grid-column-resizer", className: resizerClassname, onDoubleClick: resetSize, onMouseDown: getResizeHandler, onTouchStart: getResizeHandler, style: resizerStyle }));
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
exports.Resizer = Resizer;
|
|
25
|
+
//# sourceMappingURL=Resizer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Resizer.cjs","sources":["../../../../../../src/components/DataGrid/components/Header/Resizer/Resizer.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { buildClassnames } from '../../../../../utils';\n\nimport { resizer } from './Resizer.module.css';\n\ntype ResizerProps = {\n /**\n * Handler called when the column size is reset (resize element is double clicked).\n */\n resetSize: () => void;\n\n /**\n * Gets the resize handler to modify column size in the TanStack Table instance.\n */\n getResizeHandler: (event: any) => void;\n\n /**\n * Getter which returns current resize state for the column.\n */\n getIsResizing: () => boolean;\n\n /**\n * Delta offset (how much the resizer bar has been moved).\n */\n deltaOffset: number | null;\n};\n\nconst resizerClassname = buildClassnames([resizer, 'data-grid-column-resizer']);\n\nexport const Resizer = ({\n resetSize,\n getResizeHandler,\n getIsResizing,\n deltaOffset,\n}: ResizerProps) => {\n const isResizing = getIsResizing();\n const resizerStyle = useMemo(() => {\n if (isResizing) {\n return { transform: `translateX(${deltaOffset || 0}px)` };\n }\n\n return undefined;\n }, [isResizing, deltaOffset]);\n\n return (\n <div\n data-testid=\"data-grid-column-resizer\"\n className={resizerClassname}\n onDoubleClick={resetSize}\n onMouseDown={getResizeHandler}\n onTouchStart={getResizeHandler}\n style={resizerStyle}\n />\n );\n};\n"],"names":["buildClassnames","resizer","useMemo","React"],"mappings":";;;;;;;;;;;AA4BA,MAAM,gBAAgB,GAAGA,+BAAe,CAAC,CAACC,sBAAO,EAAE,0BAA0B,CAAC,CAAC;AAExE,MAAM,OAAO,GAAG,CAAC,EACtB,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,WAAW,GACE,KAAI;AACjB,IAAA,MAAM,UAAU,GAAG,aAAa,EAAE;AAClC,IAAA,MAAM,YAAY,GAAGC,aAAO,CAAC,MAAK;AAChC,QAAA,IAAI,UAAU,EAAE;YACd,OAAO,EAAE,SAAS,EAAE,CAAA,WAAA,EAAc,WAAW,IAAI,CAAC,CAAK,GAAA,CAAA,EAAE;AAC1D;AAED,QAAA,OAAO,SAAS;AAClB,KAAC,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAE7B,QACEC,sBACc,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,aAAA,EAAA,0BAA0B,EACtC,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,SAAS,EACxB,WAAW,EAAE,gBAAgB,EAC7B,YAAY,EAAE,gBAAgB,EAC9B,KAAK,EAAE,YAAY,EACnB,CAAA;AAEN;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type ResizerProps = {
|
|
3
|
+
/**
|
|
4
|
+
* Handler called when the column size is reset (resize element is double clicked).
|
|
5
|
+
*/
|
|
6
|
+
resetSize: () => void;
|
|
7
|
+
/**
|
|
8
|
+
* Gets the resize handler to modify column size in the TanStack Table instance.
|
|
9
|
+
*/
|
|
10
|
+
getResizeHandler: (event: any) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Getter which returns current resize state for the column.
|
|
13
|
+
*/
|
|
14
|
+
getIsResizing: () => boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Delta offset (how much the resizer bar has been moved).
|
|
17
|
+
*/
|
|
18
|
+
deltaOffset: number | null;
|
|
19
|
+
};
|
|
20
|
+
export declare const Resizer: ({ resetSize, getResizeHandler, getIsResizing, deltaOffset, }: ResizerProps) => React.JSX.Element;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React__default, { useMemo } from 'react';
|
|
2
|
+
import { buildClassnames } from '../../../../../utils/buildClassnames.js';
|
|
3
|
+
import 'uid/secure';
|
|
4
|
+
import { resizer } from './Resizer.module.css.js';
|
|
5
|
+
|
|
6
|
+
const resizerClassname = buildClassnames([resizer, 'data-grid-column-resizer']);
|
|
7
|
+
const Resizer = ({ resetSize, getResizeHandler, getIsResizing, deltaOffset, }) => {
|
|
8
|
+
const isResizing = getIsResizing();
|
|
9
|
+
const resizerStyle = useMemo(() => {
|
|
10
|
+
if (isResizing) {
|
|
11
|
+
return { transform: `translateX(${deltaOffset || 0}px)` };
|
|
12
|
+
}
|
|
13
|
+
return undefined;
|
|
14
|
+
}, [isResizing, deltaOffset]);
|
|
15
|
+
return (React__default.createElement("div", { "data-testid": "data-grid-column-resizer", className: resizerClassname, onDoubleClick: resetSize, onMouseDown: getResizeHandler, onTouchStart: getResizeHandler, style: resizerStyle }));
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { Resizer };
|
|
19
|
+
//# sourceMappingURL=Resizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Resizer.js","sources":["../../../../../../src/components/DataGrid/components/Header/Resizer/Resizer.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { buildClassnames } from '../../../../../utils';\n\nimport { resizer } from './Resizer.module.css';\n\ntype ResizerProps = {\n /**\n * Handler called when the column size is reset (resize element is double clicked).\n */\n resetSize: () => void;\n\n /**\n * Gets the resize handler to modify column size in the TanStack Table instance.\n */\n getResizeHandler: (event: any) => void;\n\n /**\n * Getter which returns current resize state for the column.\n */\n getIsResizing: () => boolean;\n\n /**\n * Delta offset (how much the resizer bar has been moved).\n */\n deltaOffset: number | null;\n};\n\nconst resizerClassname = buildClassnames([resizer, 'data-grid-column-resizer']);\n\nexport const Resizer = ({\n resetSize,\n getResizeHandler,\n getIsResizing,\n deltaOffset,\n}: ResizerProps) => {\n const isResizing = getIsResizing();\n const resizerStyle = useMemo(() => {\n if (isResizing) {\n return { transform: `translateX(${deltaOffset || 0}px)` };\n }\n\n return undefined;\n }, [isResizing, deltaOffset]);\n\n return (\n <div\n data-testid=\"data-grid-column-resizer\"\n className={resizerClassname}\n onDoubleClick={resetSize}\n onMouseDown={getResizeHandler}\n onTouchStart={getResizeHandler}\n style={resizerStyle}\n />\n );\n};\n"],"names":["React"],"mappings":";;;;;AA4BA,MAAM,gBAAgB,GAAG,eAAe,CAAC,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;AAExE,MAAM,OAAO,GAAG,CAAC,EACtB,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,WAAW,GACE,KAAI;AACjB,IAAA,MAAM,UAAU,GAAG,aAAa,EAAE;AAClC,IAAA,MAAM,YAAY,GAAG,OAAO,CAAC,MAAK;AAChC,QAAA,IAAI,UAAU,EAAE;YACd,OAAO,EAAE,SAAS,EAAE,CAAA,WAAA,EAAc,WAAW,IAAI,CAAC,CAAK,GAAA,CAAA,EAAE;AAC1D;AAED,QAAA,OAAO,SAAS;AAClB,KAAC,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAE7B,QACEA,cACc,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,aAAA,EAAA,0BAA0B,EACtC,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,SAAS,EACxB,WAAW,EAAE,gBAAgB,EAC7B,YAAY,EAAE,gBAAgB,EAC9B,KAAK,EAAE,YAAY,EACnB,CAAA;AAEN;;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const cssContents = `._resizer_1fyg5_1{background:var(--colors-neutral-grey-dark);cursor:col-resize;min-height:50%;position:absolute;right:var(--sizes-none);top:25%;user-select:none;width:var(--sizes-line);&:before{content:"";left:var(--sizes-none);min-height:400%;position:absolute;top:-150%;transform:translateX(calc(var(--sizes-2)*-1));width:var(--sizes-4);z-index:var(--layers-grid-resizer)}}
|
|
4
|
+
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlc2l6ZXIubW9kdWxlLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxrQkFVRSwwQ0FBMkMsQ0FIM0MsaUJBQWtCLENBRmxCLGNBQWUsQ0FKZixpQkFBa0IsQ0FDbEIsdUJBQXdCLENBQ3hCLE9BQVEsQ0FLUixnQkFBaUIsQ0FKakIsdUJBQXdCLENBUXhCLFNBQ0UsVUFBVyxDQUdYLHNCQUF1QixDQUV2QixlQUFnQixDQUpoQixpQkFBa0IsQ0FDbEIsU0FBVSxDQU9WLDZDQUFnRCxDQUxoRCxvQkFBcUIsQ0FFckIsa0NBSUYsQ0FDRiIsImZpbGUiOiJSZXNpemVyLm1vZHVsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucmVzaXplciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IHZhcigtLXNpemVzLW5vbmUpO1xuICB0b3A6IDI1JTtcbiAgd2lkdGg6IHZhcigtLXNpemVzLWxpbmUpO1xuICBtaW4taGVpZ2h0OiA1MCU7XG5cbiAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvcnMtbmV1dHJhbC1ncmV5LWRhcmspO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE1MCU7XG4gICAgbGVmdDogdmFyKC0tc2l6ZXMtbm9uZSk7XG4gICAgd2lkdGg6IHZhcigtLXNpemVzLTQpO1xuICAgIG1pbi1oZWlnaHQ6IDQwMCU7XG4gICAgei1pbmRleDogdmFyKC0tbGF5ZXJzLWdyaWQtcmVzaXplcik7XG5cbiAgICAvKiBTaGlmdCB0aGUgOjpiZWZvcmUgc28gaXQncyBjZW50ZXJlZCBvbiB0aGUgYmFyICovXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGModmFyKC0tc2l6ZXMtMikgKiAtMSkpO1xuICB9XG59XG4iXX0= */`;
|
|
5
|
+
const style = document.createElement('style');
|
|
6
|
+
style.innerHTML = cssContents;
|
|
7
|
+
document.head.appendChild(style);
|
|
8
|
+
const resizer = '_resizer_1fyg5_1';
|
|
9
|
+
|
|
10
|
+
exports.resizer = resizer;
|
|
11
|
+
//# sourceMappingURL=Resizer.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Resizer.module.css.cjs","sources":["../../../../../../src/components/DataGrid/components/Header/Resizer/Resizer.module.css"],"sourcesContent":[".resizer {\n position: absolute;\n right: var(--sizes-none);\n top: 25%;\n width: var(--sizes-line);\n min-height: 50%;\n\n cursor: col-resize;\n user-select: none;\n\n background: var(--colors-neutral-grey-dark);\n\n &::before {\n content: '';\n position: absolute;\n top: -150%;\n left: var(--sizes-none);\n width: var(--sizes-4);\n min-height: 400%;\n z-index: var(--layers-grid-resizer);\n\n /* Shift the ::before so it's centered on the bar */\n transform: translateX(calc(var(--sizes-2) * -1));\n }\n}\n"],"names":[],"mappings":";;AACA,MAAM,WAAW,GAAG,CAAC;AACrB,qsCAAqsC,CAAC;AACtsC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAC7C,KAAK,CAAC,SAAS,GAAG,WAAW;AAC7B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC3B,MAAC,OAAO,GAAG;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const cssContents = `._resizer_1fyg5_1{background:var(--colors-neutral-grey-dark);cursor:col-resize;min-height:50%;position:absolute;right:var(--sizes-none);top:25%;user-select:none;width:var(--sizes-line);&:before{content:"";left:var(--sizes-none);min-height:400%;position:absolute;top:-150%;transform:translateX(calc(var(--sizes-2)*-1));width:var(--sizes-4);z-index:var(--layers-grid-resizer)}}
|
|
2
|
+
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlc2l6ZXIubW9kdWxlLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxrQkFVRSwwQ0FBMkMsQ0FIM0MsaUJBQWtCLENBRmxCLGNBQWUsQ0FKZixpQkFBa0IsQ0FDbEIsdUJBQXdCLENBQ3hCLE9BQVEsQ0FLUixnQkFBaUIsQ0FKakIsdUJBQXdCLENBUXhCLFNBQ0UsVUFBVyxDQUdYLHNCQUF1QixDQUV2QixlQUFnQixDQUpoQixpQkFBa0IsQ0FDbEIsU0FBVSxDQU9WLDZDQUFnRCxDQUxoRCxvQkFBcUIsQ0FFckIsa0NBSUYsQ0FDRiIsImZpbGUiOiJSZXNpemVyLm1vZHVsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucmVzaXplciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IHZhcigtLXNpemVzLW5vbmUpO1xuICB0b3A6IDI1JTtcbiAgd2lkdGg6IHZhcigtLXNpemVzLWxpbmUpO1xuICBtaW4taGVpZ2h0OiA1MCU7XG5cbiAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvcnMtbmV1dHJhbC1ncmV5LWRhcmspO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE1MCU7XG4gICAgbGVmdDogdmFyKC0tc2l6ZXMtbm9uZSk7XG4gICAgd2lkdGg6IHZhcigtLXNpemVzLTQpO1xuICAgIG1pbi1oZWlnaHQ6IDQwMCU7XG4gICAgei1pbmRleDogdmFyKC0tbGF5ZXJzLWdyaWQtcmVzaXplcik7XG5cbiAgICAvKiBTaGlmdCB0aGUgOjpiZWZvcmUgc28gaXQncyBjZW50ZXJlZCBvbiB0aGUgYmFyICovXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGModmFyKC0tc2l6ZXMtMikgKiAtMSkpO1xuICB9XG59XG4iXX0= */`;
|
|
3
|
+
const style = document.createElement('style');
|
|
4
|
+
style.innerHTML = cssContents;
|
|
5
|
+
document.head.appendChild(style);
|
|
6
|
+
const resizer = '_resizer_1fyg5_1';
|
|
7
|
+
|
|
8
|
+
export { resizer };
|
|
9
|
+
//# sourceMappingURL=Resizer.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Resizer.module.css.js","sources":["../../../../../../src/components/DataGrid/components/Header/Resizer/Resizer.module.css"],"sourcesContent":[".resizer {\n position: absolute;\n right: var(--sizes-none);\n top: 25%;\n width: var(--sizes-line);\n min-height: 50%;\n\n cursor: col-resize;\n user-select: none;\n\n background: var(--colors-neutral-grey-dark);\n\n &::before {\n content: '';\n position: absolute;\n top: -150%;\n left: var(--sizes-none);\n width: var(--sizes-4);\n min-height: 400%;\n z-index: var(--layers-grid-resizer);\n\n /* Shift the ::before so it's centered on the bar */\n transform: translateX(calc(var(--sizes-2) * -1));\n }\n}\n"],"names":[],"mappings":"AACA,MAAM,WAAW,GAAG,CAAC;AACrB,qsCAAqsC,CAAC;AACtsC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAC7C,KAAK,CAAC,SAAS,GAAG,WAAW;AAC7B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC3B,MAAC,OAAO,GAAG;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Resizer } from './Resizer';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Header } from './Header';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const DEFAULT_COLUMN_WIDTH = 200;
|
|
4
|
+
const DEFAULT_COLUMN_MINIMUM_WIDTH = 120;
|
|
5
|
+
const DEFAULT_COLUMN_MAXIMUM_WIDTH = Number.MAX_SAFE_INTEGER;
|
|
6
|
+
const DEFAULT_CELL_ALIGN = 'left';
|
|
7
|
+
|
|
8
|
+
exports.DEFAULT_CELL_ALIGN = DEFAULT_CELL_ALIGN;
|
|
9
|
+
exports.DEFAULT_COLUMN_MAXIMUM_WIDTH = DEFAULT_COLUMN_MAXIMUM_WIDTH;
|
|
10
|
+
exports.DEFAULT_COLUMN_MINIMUM_WIDTH = DEFAULT_COLUMN_MINIMUM_WIDTH;
|
|
11
|
+
exports.DEFAULT_COLUMN_WIDTH = DEFAULT_COLUMN_WIDTH;
|
|
12
|
+
//# sourceMappingURL=constants.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.cjs","sources":["../../../src/components/DataGrid/constants.ts"],"sourcesContent":["export const DEFAULT_COLUMN_WIDTH = 200;\nexport const DEFAULT_COLUMN_MINIMUM_WIDTH = 120;\nexport const DEFAULT_COLUMN_MAXIMUM_WIDTH = Number.MAX_SAFE_INTEGER;\n\nexport const DEFAULT_CELL_ALIGN = 'left';\n"],"names":[],"mappings":";;AAAO,MAAM,oBAAoB,GAAG;AAC7B,MAAM,4BAA4B,GAAG;AAC/B,MAAA,4BAA4B,GAAG,MAAM,CAAC;AAE5C,MAAM,kBAAkB,GAAG;;;;;;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const DEFAULT_COLUMN_WIDTH = 200;
|
|
2
|
+
const DEFAULT_COLUMN_MINIMUM_WIDTH = 120;
|
|
3
|
+
const DEFAULT_COLUMN_MAXIMUM_WIDTH = Number.MAX_SAFE_INTEGER;
|
|
4
|
+
const DEFAULT_CELL_ALIGN = 'left';
|
|
5
|
+
|
|
6
|
+
export { DEFAULT_CELL_ALIGN, DEFAULT_COLUMN_MAXIMUM_WIDTH, DEFAULT_COLUMN_MINIMUM_WIDTH, DEFAULT_COLUMN_WIDTH };
|
|
7
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../src/components/DataGrid/constants.ts"],"sourcesContent":["export const DEFAULT_COLUMN_WIDTH = 200;\nexport const DEFAULT_COLUMN_MINIMUM_WIDTH = 120;\nexport const DEFAULT_COLUMN_MAXIMUM_WIDTH = Number.MAX_SAFE_INTEGER;\n\nexport const DEFAULT_CELL_ALIGN = 'left';\n"],"names":[],"mappings":"AAAO,MAAM,oBAAoB,GAAG;AAC7B,MAAM,4BAA4B,GAAG;AAC/B,MAAA,4BAA4B,GAAG,MAAM,CAAC;AAE5C,MAAM,kBAAkB,GAAG;;;;"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
|
|
5
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
|
6
|
+
/**
|
|
7
|
+
* Hook which computes left and right positions for laying out pinned columns, which are then returned as CSS variables
|
|
8
|
+
* to be applied to the table element.
|
|
9
|
+
*
|
|
10
|
+
* We do this so that pinned columns can be resized correctly, whilst avoiding having to re-render the table body and
|
|
11
|
+
* header (since left/right properties must be applied to the <th> and <td> elements rather than the <col>).
|
|
12
|
+
*/
|
|
13
|
+
const usePinnedColumnLayout = ({ table }) => {
|
|
14
|
+
const pinnedColumnLayoutStyles = React.useMemo(() => {
|
|
15
|
+
if (!table.getIsSomeColumnsPinned()) {
|
|
16
|
+
return {};
|
|
17
|
+
}
|
|
18
|
+
const pinnedColumns = [
|
|
19
|
+
...table.getLeftVisibleLeafColumns(),
|
|
20
|
+
...table.getRightVisibleLeafColumns(),
|
|
21
|
+
];
|
|
22
|
+
return pinnedColumns.reduce((styleObj, column) => {
|
|
23
|
+
const pinLocation = column.getIsPinned();
|
|
24
|
+
return {
|
|
25
|
+
...styleObj,
|
|
26
|
+
[`--${column.id}-start`]: pinLocation === 'left' ? `${column.getStart('left')}px` : undefined,
|
|
27
|
+
[`--${column.id}-after`]: pinLocation === 'right' ? `${column.getAfter('right')}px` : undefined,
|
|
28
|
+
};
|
|
29
|
+
}, {});
|
|
30
|
+
}, [
|
|
31
|
+
table.getState().columnSizing,
|
|
32
|
+
table.getState().columnSizingInfo,
|
|
33
|
+
table.getState().columnPinning,
|
|
34
|
+
]);
|
|
35
|
+
return { pinnedColumnLayoutStyles };
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
exports.usePinnedColumnLayout = usePinnedColumnLayout;
|
|
39
|
+
//# sourceMappingURL=usePinnedColumnLayout.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePinnedColumnLayout.cjs","sources":["../../../../src/components/DataGrid/hooks/usePinnedColumnLayout.ts"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\n\nimport { useMemo } from 'react';\n\nimport { Table } from '@tanstack/react-table';\n\ntype UsePinnedColumnLayoutProps = {\n table: Table<any>;\n};\n\n/**\n * Hook which computes left and right positions for laying out pinned columns, which are then returned as CSS variables\n * to be applied to the table element.\n *\n * We do this so that pinned columns can be resized correctly, whilst avoiding having to re-render the table body and\n * header (since left/right properties must be applied to the <th> and <td> elements rather than the <col>).\n */\nexport const usePinnedColumnLayout = ({ table }: UsePinnedColumnLayoutProps) => {\n const pinnedColumnLayoutStyles = useMemo(() => {\n if (!table.getIsSomeColumnsPinned()) {\n return {};\n }\n\n const pinnedColumns = [\n ...table.getLeftVisibleLeafColumns(),\n ...table.getRightVisibleLeafColumns(),\n ];\n\n return pinnedColumns.reduce((styleObj, column) => {\n const pinLocation = column.getIsPinned();\n\n return {\n ...styleObj,\n [`--${column.id}-start`]:\n pinLocation === 'left' ? `${column.getStart('left')}px` : undefined,\n [`--${column.id}-after`]:\n pinLocation === 'right' ? `${column.getAfter('right')}px` : undefined,\n };\n }, {});\n }, [\n table.getState().columnSizing,\n table.getState().columnSizingInfo,\n table.getState().columnPinning,\n ]);\n\n return { pinnedColumnLayoutStyles };\n};\n"],"names":["useMemo"],"mappings":";;;;AAAA;AAUA;;;;;;AAMG;MACU,qBAAqB,GAAG,CAAC,EAAE,KAAK,EAA8B,KAAI;AAC7E,IAAA,MAAM,wBAAwB,GAAGA,aAAO,CAAC,MAAK;AAC5C,QAAA,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE;AACnC,YAAA,OAAO,EAAE;AACV;AAED,QAAA,MAAM,aAAa,GAAG;YACpB,GAAG,KAAK,CAAC,yBAAyB,EAAE;YACpC,GAAG,KAAK,CAAC,0BAA0B,EAAE;SACtC;QAED,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAI;AAC/C,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE;YAExC,OAAO;AACL,gBAAA,GAAG,QAAQ;gBACX,CAAC,CAAA,EAAA,EAAK,MAAM,CAAC,EAAE,CAAA,MAAA,CAAQ,GACrB,WAAW,KAAK,MAAM,GAAG,CAAG,EAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAI,EAAA,CAAA,GAAG,SAAS;gBACrE,CAAC,CAAA,EAAA,EAAK,MAAM,CAAC,EAAE,CAAA,MAAA,CAAQ,GACrB,WAAW,KAAK,OAAO,GAAG,CAAG,EAAA,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAI,EAAA,CAAA,GAAG,SAAS;aACxE;SACF,EAAE,EAAE,CAAC;AACR,KAAC,EAAE;AACD,QAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,YAAY;AAC7B,QAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,gBAAgB;AACjC,QAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,aAAa;AAC/B,KAAA,CAAC;IAEF,OAAO,EAAE,wBAAwB,EAAE;AACrC;;;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Table } from '@tanstack/react-table';
|
|
2
|
+
type UsePinnedColumnLayoutProps = {
|
|
3
|
+
table: Table<any>;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Hook which computes left and right positions for laying out pinned columns, which are then returned as CSS variables
|
|
7
|
+
* to be applied to the table element.
|
|
8
|
+
*
|
|
9
|
+
* We do this so that pinned columns can be resized correctly, whilst avoiding having to re-render the table body and
|
|
10
|
+
* header (since left/right properties must be applied to the <th> and <td> elements rather than the <col>).
|
|
11
|
+
*/
|
|
12
|
+
export declare const usePinnedColumnLayout: ({ table }: UsePinnedColumnLayoutProps) => {
|
|
13
|
+
pinnedColumnLayoutStyles: {};
|
|
14
|
+
};
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
|
|
3
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
|
4
|
+
/**
|
|
5
|
+
* Hook which computes left and right positions for laying out pinned columns, which are then returned as CSS variables
|
|
6
|
+
* to be applied to the table element.
|
|
7
|
+
*
|
|
8
|
+
* We do this so that pinned columns can be resized correctly, whilst avoiding having to re-render the table body and
|
|
9
|
+
* header (since left/right properties must be applied to the <th> and <td> elements rather than the <col>).
|
|
10
|
+
*/
|
|
11
|
+
const usePinnedColumnLayout = ({ table }) => {
|
|
12
|
+
const pinnedColumnLayoutStyles = useMemo(() => {
|
|
13
|
+
if (!table.getIsSomeColumnsPinned()) {
|
|
14
|
+
return {};
|
|
15
|
+
}
|
|
16
|
+
const pinnedColumns = [
|
|
17
|
+
...table.getLeftVisibleLeafColumns(),
|
|
18
|
+
...table.getRightVisibleLeafColumns(),
|
|
19
|
+
];
|
|
20
|
+
return pinnedColumns.reduce((styleObj, column) => {
|
|
21
|
+
const pinLocation = column.getIsPinned();
|
|
22
|
+
return {
|
|
23
|
+
...styleObj,
|
|
24
|
+
[`--${column.id}-start`]: pinLocation === 'left' ? `${column.getStart('left')}px` : undefined,
|
|
25
|
+
[`--${column.id}-after`]: pinLocation === 'right' ? `${column.getAfter('right')}px` : undefined,
|
|
26
|
+
};
|
|
27
|
+
}, {});
|
|
28
|
+
}, [
|
|
29
|
+
table.getState().columnSizing,
|
|
30
|
+
table.getState().columnSizingInfo,
|
|
31
|
+
table.getState().columnPinning,
|
|
32
|
+
]);
|
|
33
|
+
return { pinnedColumnLayoutStyles };
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export { usePinnedColumnLayout };
|
|
37
|
+
//# sourceMappingURL=usePinnedColumnLayout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePinnedColumnLayout.js","sources":["../../../../src/components/DataGrid/hooks/usePinnedColumnLayout.ts"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\n\nimport { useMemo } from 'react';\n\nimport { Table } from '@tanstack/react-table';\n\ntype UsePinnedColumnLayoutProps = {\n table: Table<any>;\n};\n\n/**\n * Hook which computes left and right positions for laying out pinned columns, which are then returned as CSS variables\n * to be applied to the table element.\n *\n * We do this so that pinned columns can be resized correctly, whilst avoiding having to re-render the table body and\n * header (since left/right properties must be applied to the <th> and <td> elements rather than the <col>).\n */\nexport const usePinnedColumnLayout = ({ table }: UsePinnedColumnLayoutProps) => {\n const pinnedColumnLayoutStyles = useMemo(() => {\n if (!table.getIsSomeColumnsPinned()) {\n return {};\n }\n\n const pinnedColumns = [\n ...table.getLeftVisibleLeafColumns(),\n ...table.getRightVisibleLeafColumns(),\n ];\n\n return pinnedColumns.reduce((styleObj, column) => {\n const pinLocation = column.getIsPinned();\n\n return {\n ...styleObj,\n [`--${column.id}-start`]:\n pinLocation === 'left' ? `${column.getStart('left')}px` : undefined,\n [`--${column.id}-after`]:\n pinLocation === 'right' ? `${column.getAfter('right')}px` : undefined,\n };\n }, {});\n }, [\n table.getState().columnSizing,\n table.getState().columnSizingInfo,\n table.getState().columnPinning,\n ]);\n\n return { pinnedColumnLayoutStyles };\n};\n"],"names":[],"mappings":";;AAAA;AAUA;;;;;;AAMG;MACU,qBAAqB,GAAG,CAAC,EAAE,KAAK,EAA8B,KAAI;AAC7E,IAAA,MAAM,wBAAwB,GAAG,OAAO,CAAC,MAAK;AAC5C,QAAA,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE;AACnC,YAAA,OAAO,EAAE;AACV;AAED,QAAA,MAAM,aAAa,GAAG;YACpB,GAAG,KAAK,CAAC,yBAAyB,EAAE;YACpC,GAAG,KAAK,CAAC,0BAA0B,EAAE;SACtC;QAED,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAI;AAC/C,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE;YAExC,OAAO;AACL,gBAAA,GAAG,QAAQ;gBACX,CAAC,CAAA,EAAA,EAAK,MAAM,CAAC,EAAE,CAAA,MAAA,CAAQ,GACrB,WAAW,KAAK,MAAM,GAAG,CAAG,EAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAI,EAAA,CAAA,GAAG,SAAS;gBACrE,CAAC,CAAA,EAAA,EAAK,MAAM,CAAC,EAAE,CAAA,MAAA,CAAQ,GACrB,WAAW,KAAK,OAAO,GAAG,CAAG,EAAA,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAI,EAAA,CAAA,GAAG,SAAS;aACxE;SACF,EAAE,EAAE,CAAC;AACR,KAAC,EAAE;AACD,QAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,YAAY;AAC7B,QAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,gBAAgB;AACjC,QAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,aAAa;AAC/B,KAAA,CAAC;IAEF,OAAO,EAAE,wBAAwB,EAAE;AACrC;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var pinnedColumnUtils = require('../utils/pinnedColumnUtils.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Hook which returns class names, and styles that need to be computed on-the-fly, for pinned column cells.
|
|
7
|
+
*/
|
|
8
|
+
const usePinnedColumnStyles = ({ column }) => {
|
|
9
|
+
if (!column.getIsPinned()) {
|
|
10
|
+
return {
|
|
11
|
+
pinnedCellClassName: '',
|
|
12
|
+
pinnedCellStyles: {},
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
pinnedCellClassName: pinnedColumnUtils.getPinnedColumnClassNames(column),
|
|
17
|
+
pinnedCellStyles: pinnedColumnUtils.getPinnedColumnStyles(column),
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
exports.usePinnedColumnStyles = usePinnedColumnStyles;
|
|
22
|
+
//# sourceMappingURL=usePinnedColumnStyles.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePinnedColumnStyles.cjs","sources":["../../../../src/components/DataGrid/hooks/usePinnedColumnStyles.ts"],"sourcesContent":["import { Column } from '@tanstack/react-table';\n\nimport { getPinnedColumnClassNames, getPinnedColumnStyles } from '../utils/pinnedColumnUtils';\n\ntype UsePinnedColumnStylesProps = {\n column: Column<any, any>;\n};\n\n/**\n * Hook which returns class names, and styles that need to be computed on-the-fly, for pinned column cells.\n */\nexport const usePinnedColumnStyles = ({ column }: UsePinnedColumnStylesProps) => {\n if (!column.getIsPinned()) {\n return {\n pinnedCellClassName: '',\n pinnedCellStyles: {},\n };\n }\n\n return {\n pinnedCellClassName: getPinnedColumnClassNames(column),\n pinnedCellStyles: getPinnedColumnStyles(column),\n };\n};\n"],"names":["getPinnedColumnClassNames","getPinnedColumnStyles"],"mappings":";;;;AAQA;;AAEG;MACU,qBAAqB,GAAG,CAAC,EAAE,MAAM,EAA8B,KAAI;AAC9E,IAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;QACzB,OAAO;AACL,YAAA,mBAAmB,EAAE,EAAE;AACvB,YAAA,gBAAgB,EAAE,EAAE;SACrB;AACF;IAED,OAAO;AACL,QAAA,mBAAmB,EAAEA,2CAAyB,CAAC,MAAM,CAAC;AACtD,QAAA,gBAAgB,EAAEC,uCAAqB,CAAC,MAAM,CAAC;KAChD;AACH;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Column } from '@tanstack/react-table';
|
|
3
|
+
type UsePinnedColumnStylesProps = {
|
|
4
|
+
column: Column<any, any>;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Hook which returns class names, and styles that need to be computed on-the-fly, for pinned column cells.
|
|
8
|
+
*/
|
|
9
|
+
export declare const usePinnedColumnStyles: ({ column }: UsePinnedColumnStylesProps) => {
|
|
10
|
+
pinnedCellClassName: any;
|
|
11
|
+
pinnedCellStyles: import("react").CSSProperties;
|
|
12
|
+
};
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { getPinnedColumnClassNames, getPinnedColumnStyles } from '../utils/pinnedColumnUtils.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Hook which returns class names, and styles that need to be computed on-the-fly, for pinned column cells.
|
|
5
|
+
*/
|
|
6
|
+
const usePinnedColumnStyles = ({ column }) => {
|
|
7
|
+
if (!column.getIsPinned()) {
|
|
8
|
+
return {
|
|
9
|
+
pinnedCellClassName: '',
|
|
10
|
+
pinnedCellStyles: {},
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
return {
|
|
14
|
+
pinnedCellClassName: getPinnedColumnClassNames(column),
|
|
15
|
+
pinnedCellStyles: getPinnedColumnStyles(column),
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { usePinnedColumnStyles };
|
|
20
|
+
//# sourceMappingURL=usePinnedColumnStyles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePinnedColumnStyles.js","sources":["../../../../src/components/DataGrid/hooks/usePinnedColumnStyles.ts"],"sourcesContent":["import { Column } from '@tanstack/react-table';\n\nimport { getPinnedColumnClassNames, getPinnedColumnStyles } from '../utils/pinnedColumnUtils';\n\ntype UsePinnedColumnStylesProps = {\n column: Column<any, any>;\n};\n\n/**\n * Hook which returns class names, and styles that need to be computed on-the-fly, for pinned column cells.\n */\nexport const usePinnedColumnStyles = ({ column }: UsePinnedColumnStylesProps) => {\n if (!column.getIsPinned()) {\n return {\n pinnedCellClassName: '',\n pinnedCellStyles: {},\n };\n }\n\n return {\n pinnedCellClassName: getPinnedColumnClassNames(column),\n pinnedCellStyles: getPinnedColumnStyles(column),\n };\n};\n"],"names":[],"mappings":";;AAQA;;AAEG;MACU,qBAAqB,GAAG,CAAC,EAAE,MAAM,EAA8B,KAAI;AAC9E,IAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;QACzB,OAAO;AACL,YAAA,mBAAmB,EAAE,EAAE;AACvB,YAAA,gBAAgB,EAAE,EAAE;SACrB;AACF;IAED,OAAO;AACL,QAAA,mBAAmB,EAAE,yBAAyB,CAAC,MAAM,CAAC;AACtD,QAAA,gBAAgB,EAAE,qBAAqB,CAAC,MAAM,CAAC;KAChD;AACH;;;;"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Hook which manages interop between sorting props and the internal TanStack sorting state.
|
|
7
|
+
*/
|
|
8
|
+
const useSortingState = ({ columns, sortState, onSortChanged }) => {
|
|
9
|
+
const internalSortState = React.useMemo(() => {
|
|
10
|
+
if (!sortState || !onSortChanged)
|
|
11
|
+
return undefined;
|
|
12
|
+
return [{ id: sortState.columnId, desc: sortState.direction === 'desc' }];
|
|
13
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14
|
+
}, [sortState]);
|
|
15
|
+
const setInternalSortState = React.useCallback((onUpdate) => {
|
|
16
|
+
if (!onSortChanged)
|
|
17
|
+
return;
|
|
18
|
+
// TanStack can either pass us a functional updater method, or the new sort object directly.
|
|
19
|
+
const newSortState = typeof onUpdate === 'function' ? onUpdate(internalSortState) : onUpdate;
|
|
20
|
+
if (!newSortState || newSortState.length === 0)
|
|
21
|
+
return;
|
|
22
|
+
const [{ id, desc }] = newSortState;
|
|
23
|
+
onSortChanged({
|
|
24
|
+
columnId: id,
|
|
25
|
+
direction: desc ? 'desc' : 'asc',
|
|
26
|
+
});
|
|
27
|
+
}, [onSortChanged, internalSortState]);
|
|
28
|
+
const enableSorting = React.useMemo(() => onSortChanged !== undefined && columns.some((column) => column.sortable), [columns, onSortChanged]);
|
|
29
|
+
return {
|
|
30
|
+
enableSorting,
|
|
31
|
+
sorting: internalSortState,
|
|
32
|
+
onSortingChange: setInternalSortState,
|
|
33
|
+
manualSorting: true,
|
|
34
|
+
enableSortingRemoval: false,
|
|
35
|
+
enableMultiRemove: false,
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
exports.useSortingState = useSortingState;
|
|
40
|
+
//# sourceMappingURL=useSortingState.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSortingState.cjs","sources":["../../../../src/components/DataGrid/hooks/useSortingState.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react';\n\nimport { OnChangeFn, SortingState } from '@tanstack/react-table';\n\nimport { ColumnDefinition } from '../types';\nimport { SortState } from '../types/SortState';\n\ntype UseSortingStateProps = {\n columns: ColumnDefinition<any>[];\n\n sortState?: SortState;\n onSortChanged?: (sortState: SortState) => void;\n};\n\n/**\n * Hook which manages interop between sorting props and the internal TanStack sorting state.\n */\nexport const useSortingState = ({ columns, sortState, onSortChanged }: UseSortingStateProps) => {\n const internalSortState = useMemo(() => {\n if (!sortState || !onSortChanged) return undefined;\n\n return [{ id: sortState.columnId, desc: sortState.direction === 'desc' }];\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [sortState]);\n\n const setInternalSortState: OnChangeFn<SortingState> = useCallback(\n (onUpdate) => {\n if (!onSortChanged) return;\n\n // TanStack can either pass us a functional updater method, or the new sort object directly.\n const newSortState =\n typeof onUpdate === 'function' ? onUpdate(internalSortState as SortingState) : onUpdate;\n\n if (!newSortState || newSortState.length === 0) return;\n\n const [{ id, desc }] = newSortState;\n\n onSortChanged({\n columnId: id,\n direction: desc ? 'desc' : 'asc',\n });\n },\n [onSortChanged, internalSortState],\n );\n\n const enableSorting = useMemo(\n () => onSortChanged !== undefined && columns.some((column) => column.sortable),\n [columns, onSortChanged],\n );\n\n return {\n enableSorting,\n sorting: internalSortState,\n onSortingChange: setInternalSortState,\n\n manualSorting: true,\n enableSortingRemoval: false,\n enableMultiRemove: false,\n };\n};\n"],"names":["useMemo","useCallback"],"mappings":";;;;AAcA;;AAEG;AACI,MAAM,eAAe,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAwB,KAAI;AAC7F,IAAA,MAAM,iBAAiB,GAAGA,aAAO,CAAC,MAAK;AACrC,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa;AAAE,YAAA,OAAO,SAAS;AAElD,QAAA,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;;AAE3E,KAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAEf,IAAA,MAAM,oBAAoB,GAA6BC,iBAAW,CAChE,CAAC,QAAQ,KAAI;AACX,QAAA,IAAI,CAAC,aAAa;YAAE;;AAGpB,QAAA,MAAM,YAAY,GAChB,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,iBAAiC,CAAC,GAAG,QAAQ;AAEzF,QAAA,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE;QAEhD,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,YAAY;AAEnC,QAAA,aAAa,CAAC;AACZ,YAAA,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK;AACjC,SAAA,CAAC;AACJ,KAAC,EACD,CAAC,aAAa,EAAE,iBAAiB,CAAC,CACnC;AAED,IAAA,MAAM,aAAa,GAAGD,aAAO,CAC3B,MAAM,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,EAC9E,CAAC,OAAO,EAAE,aAAa,CAAC,CACzB;IAED,OAAO;QACL,aAAa;AACb,QAAA,OAAO,EAAE,iBAAiB;AAC1B,QAAA,eAAe,EAAE,oBAAoB;AAErC,QAAA,aAAa,EAAE,IAAI;AACnB,QAAA,oBAAoB,EAAE,KAAK;AAC3B,QAAA,iBAAiB,EAAE,KAAK;KACzB;AACH;;;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { OnChangeFn, SortingState } from '@tanstack/react-table';
|
|
2
|
+
import { ColumnDefinition } from '../types';
|
|
3
|
+
import { SortState } from '../types/SortState';
|
|
4
|
+
type UseSortingStateProps = {
|
|
5
|
+
columns: ColumnDefinition<any>[];
|
|
6
|
+
sortState?: SortState;
|
|
7
|
+
onSortChanged?: (sortState: SortState) => void;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Hook which manages interop between sorting props and the internal TanStack sorting state.
|
|
11
|
+
*/
|
|
12
|
+
export declare const useSortingState: ({ columns, sortState, onSortChanged }: UseSortingStateProps) => {
|
|
13
|
+
enableSorting: boolean;
|
|
14
|
+
sorting: {
|
|
15
|
+
id: string;
|
|
16
|
+
desc: boolean;
|
|
17
|
+
}[] | undefined;
|
|
18
|
+
onSortingChange: OnChangeFn<SortingState>;
|
|
19
|
+
manualSorting: boolean;
|
|
20
|
+
enableSortingRemoval: boolean;
|
|
21
|
+
enableMultiRemove: boolean;
|
|
22
|
+
};
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { useMemo, useCallback } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Hook which manages interop between sorting props and the internal TanStack sorting state.
|
|
5
|
+
*/
|
|
6
|
+
const useSortingState = ({ columns, sortState, onSortChanged }) => {
|
|
7
|
+
const internalSortState = useMemo(() => {
|
|
8
|
+
if (!sortState || !onSortChanged)
|
|
9
|
+
return undefined;
|
|
10
|
+
return [{ id: sortState.columnId, desc: sortState.direction === 'desc' }];
|
|
11
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
12
|
+
}, [sortState]);
|
|
13
|
+
const setInternalSortState = useCallback((onUpdate) => {
|
|
14
|
+
if (!onSortChanged)
|
|
15
|
+
return;
|
|
16
|
+
// TanStack can either pass us a functional updater method, or the new sort object directly.
|
|
17
|
+
const newSortState = typeof onUpdate === 'function' ? onUpdate(internalSortState) : onUpdate;
|
|
18
|
+
if (!newSortState || newSortState.length === 0)
|
|
19
|
+
return;
|
|
20
|
+
const [{ id, desc }] = newSortState;
|
|
21
|
+
onSortChanged({
|
|
22
|
+
columnId: id,
|
|
23
|
+
direction: desc ? 'desc' : 'asc',
|
|
24
|
+
});
|
|
25
|
+
}, [onSortChanged, internalSortState]);
|
|
26
|
+
const enableSorting = useMemo(() => onSortChanged !== undefined && columns.some((column) => column.sortable), [columns, onSortChanged]);
|
|
27
|
+
return {
|
|
28
|
+
enableSorting,
|
|
29
|
+
sorting: internalSortState,
|
|
30
|
+
onSortingChange: setInternalSortState,
|
|
31
|
+
manualSorting: true,
|
|
32
|
+
enableSortingRemoval: false,
|
|
33
|
+
enableMultiRemove: false,
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export { useSortingState };
|
|
38
|
+
//# sourceMappingURL=useSortingState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSortingState.js","sources":["../../../../src/components/DataGrid/hooks/useSortingState.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react';\n\nimport { OnChangeFn, SortingState } from '@tanstack/react-table';\n\nimport { ColumnDefinition } from '../types';\nimport { SortState } from '../types/SortState';\n\ntype UseSortingStateProps = {\n columns: ColumnDefinition<any>[];\n\n sortState?: SortState;\n onSortChanged?: (sortState: SortState) => void;\n};\n\n/**\n * Hook which manages interop between sorting props and the internal TanStack sorting state.\n */\nexport const useSortingState = ({ columns, sortState, onSortChanged }: UseSortingStateProps) => {\n const internalSortState = useMemo(() => {\n if (!sortState || !onSortChanged) return undefined;\n\n return [{ id: sortState.columnId, desc: sortState.direction === 'desc' }];\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [sortState]);\n\n const setInternalSortState: OnChangeFn<SortingState> = useCallback(\n (onUpdate) => {\n if (!onSortChanged) return;\n\n // TanStack can either pass us a functional updater method, or the new sort object directly.\n const newSortState =\n typeof onUpdate === 'function' ? onUpdate(internalSortState as SortingState) : onUpdate;\n\n if (!newSortState || newSortState.length === 0) return;\n\n const [{ id, desc }] = newSortState;\n\n onSortChanged({\n columnId: id,\n direction: desc ? 'desc' : 'asc',\n });\n },\n [onSortChanged, internalSortState],\n );\n\n const enableSorting = useMemo(\n () => onSortChanged !== undefined && columns.some((column) => column.sortable),\n [columns, onSortChanged],\n );\n\n return {\n enableSorting,\n sorting: internalSortState,\n onSortingChange: setInternalSortState,\n\n manualSorting: true,\n enableSortingRemoval: false,\n enableMultiRemove: false,\n };\n};\n"],"names":[],"mappings":";;AAcA;;AAEG;AACI,MAAM,eAAe,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAwB,KAAI;AAC7F,IAAA,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAK;AACrC,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa;AAAE,YAAA,OAAO,SAAS;AAElD,QAAA,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;;AAE3E,KAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAEf,IAAA,MAAM,oBAAoB,GAA6B,WAAW,CAChE,CAAC,QAAQ,KAAI;AACX,QAAA,IAAI,CAAC,aAAa;YAAE;;AAGpB,QAAA,MAAM,YAAY,GAChB,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,iBAAiC,CAAC,GAAG,QAAQ;AAEzF,QAAA,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE;QAEhD,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,YAAY;AAEnC,QAAA,aAAa,CAAC;AACZ,YAAA,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK;AACjC,SAAA,CAAC;AACJ,KAAC,EACD,CAAC,aAAa,EAAE,iBAAiB,CAAC,CACnC;AAED,IAAA,MAAM,aAAa,GAAG,OAAO,CAC3B,MAAM,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,EAC9E,CAAC,OAAO,EAAE,aAAa,CAAC,CACzB;IAED,OAAO;QACL,aAAa;AACb,QAAA,OAAO,EAAE,iBAAiB;AAC1B,QAAA,eAAe,EAAE,oBAAoB;AAErC,QAAA,aAAa,EAAE,IAAI;AACnB,QAAA,oBAAoB,EAAE,KAAK;AAC3B,QAAA,iBAAiB,EAAE,KAAK;KACzB;AACH;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DataGrid } from './DataGrid';
|