@semcore/data-table 16.0.1 → 16.0.2-prerelease.2

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.
Files changed (50) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/components/Body/Body.js +73 -43
  3. package/lib/cjs/components/Body/Body.js.map +1 -1
  4. package/lib/cjs/components/Body/Body.types.js.map +1 -1
  5. package/lib/cjs/components/Body/Cell.js +95 -45
  6. package/lib/cjs/components/Body/Cell.js.map +1 -1
  7. package/lib/cjs/components/Body/Cell.types.js.map +1 -1
  8. package/lib/cjs/components/Body/Row.js +61 -45
  9. package/lib/cjs/components/Body/Row.js.map +1 -1
  10. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  11. package/lib/cjs/components/Body/style.shadow.css +56 -47
  12. package/lib/cjs/components/DataTable/DataTable.js +30 -28
  13. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  14. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  15. package/lib/cjs/components/Head/Column.js +22 -22
  16. package/lib/cjs/components/Head/Column.types.js.map +1 -1
  17. package/lib/cjs/components/Head/Group.js +22 -22
  18. package/lib/cjs/components/Head/Head.js +22 -22
  19. package/lib/es6/components/Body/Body.js +73 -43
  20. package/lib/es6/components/Body/Body.js.map +1 -1
  21. package/lib/es6/components/Body/Body.types.js.map +1 -1
  22. package/lib/es6/components/Body/Cell.js +96 -46
  23. package/lib/es6/components/Body/Cell.js.map +1 -1
  24. package/lib/es6/components/Body/Cell.types.js.map +1 -1
  25. package/lib/es6/components/Body/Row.js +61 -45
  26. package/lib/es6/components/Body/Row.js.map +1 -1
  27. package/lib/es6/components/Body/Row.types.js.map +1 -1
  28. package/lib/es6/components/Body/style.shadow.css +56 -47
  29. package/lib/es6/components/DataTable/DataTable.js +30 -28
  30. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  31. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  32. package/lib/es6/components/Head/Column.js +22 -22
  33. package/lib/es6/components/Head/Column.types.js.map +1 -1
  34. package/lib/es6/components/Head/Group.js +22 -22
  35. package/lib/es6/components/Head/Head.js +22 -22
  36. package/lib/esm/components/Body/Body.mjs +73 -45
  37. package/lib/esm/components/Body/Cell.mjs +80 -41
  38. package/lib/esm/components/Body/Row.mjs +57 -46
  39. package/lib/esm/components/Body/style.shadow.css +56 -47
  40. package/lib/esm/components/DataTable/DataTable.mjs +31 -30
  41. package/lib/esm/components/Head/Column.mjs +23 -23
  42. package/lib/esm/components/Head/Group.mjs +23 -23
  43. package/lib/esm/components/Head/Head.mjs +23 -23
  44. package/lib/types/components/Body/Body.types.d.ts +1 -0
  45. package/lib/types/components/Body/Cell.types.d.ts +6 -1
  46. package/lib/types/components/Body/Row.types.d.ts +5 -0
  47. package/lib/types/components/DataTable/DataTable.types.d.ts +5 -0
  48. package/lib/types/components/Head/Column.types.d.ts +1 -1
  49. package/package.json +12 -12
  50. package/vite.config.ts +10 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Row.js","names":["_core","require","React","_interopRequireWildcard","_baseComponents","_Body","_DataTable","_MergedCells","_checkbox","_interopRequireDefault","style","sstyled","insert","RowRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","value","event","_this$asProps","asProps","row","rowIndex","onSelectRow","preventDefault","stopPropagation","_this$asProps2","e","key","onBackFromAccordion","cellIndex","_createClass2","cellHasAccordion","cellValue","MergedRowsCell","MergedColumnsCell","Boolean","ACCORDION","render","_ref","_ref2","_this2","_scrollAreaRef$curren","_row$ACCORDION","SRow","Box","SCollapseRow","Collapse","SCell","Body","Cell","SCheckboxCell","_this$asProps3","columns","styles","ariaRowIndex","gridRowIndex","expanded","accordionDataGridArea","expandedRows","onExpandRow","_this$asProps3$ariaL","ariaLevel","scrollAreaRef","selectedRows","uid","getFixedStyle","mergedRow","accordion","accordionType","undefined","cells","Object","values","cellWithAccordionIndex","findIndex","cellWithAccordion","createElement","Fragment","cn","_objectSpread2","assignProps","includes","map","column","i","_ref3","checked","name","SELECT_ALL","toString","handleClickCheckbox","handleSelectRow","index","fixed","_getFixedStyle","_getFixedStyle2","_slicedToArray2","id","accordionId","columnIndex","withAccordion","isValidElement","current","clientWidth","handleBackFromAccordion","isArray","subrow","Row","rows","isAccordionRow","Component","createComponent","parent","exports"],"sources":["../../../../src/components/Body/Row.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Component, Root, sstyled, createComponent } from '@semcore/core';\nimport { DataTableRowProps, RowPropsInner } from './Row.types';\nimport { Box, Collapse } from '@semcore/base-components';\nimport style from './style.shadow.css';\nimport { Body } from './Body';\nimport { ACCORDION, SELECT_ALL } from '../DataTable/DataTable';\nimport { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport { DTValue } from '../DataTable/DataTable.types';\nimport Checkbox from '@semcore/checkbox';\n\nclass RowRoot extends Component<DataTableRowProps, {}, {}, [], RowPropsInner> {\n static displayName = 'Row';\n static style = style;\n\n static defaultProps = {\n 'aria-level': undefined,\n };\n\n private cellIndex = -1;\n\n cellHasAccordion(cellValue?: DTValue | MergedColumnsCell | MergedRowsCell): cellValue is DTValue {\n return (\n !(cellValue instanceof MergedRowsCell || cellValue instanceof MergedColumnsCell) &&\n Boolean(cellValue?.[ACCORDION])\n );\n }\n\n handleSelectRow = (value: boolean, event?: React.SyntheticEvent<HTMLElement>) => {\n const { row, rowIndex, onSelectRow } = this.asProps;\n\n onSelectRow?.(value, rowIndex, row, event);\n };\n\n handleClickCheckbox = (value: boolean) => (event?: React.SyntheticEvent<HTMLElement>) => {\n event?.preventDefault();\n event?.stopPropagation();\n const { row, rowIndex, onSelectRow } = this.asProps;\n\n onSelectRow?.(value, rowIndex, row, event);\n };\n\n handleBackFromAccordion = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n this.asProps.onBackFromAccordion(this.cellIndex);\n }\n };\n\n render() {\n const SRow = Root;\n const SCollapseRow = Collapse;\n const SCell = Body.Cell;\n const SCheckboxCell = Body.Cell;\n const {\n columns,\n row,\n styles,\n rowIndex,\n ariaRowIndex,\n gridRowIndex,\n expanded,\n accordionDataGridArea,\n expandedRows,\n onExpandRow,\n 'aria-level': ariaLevel = 1,\n scrollAreaRef,\n selectedRows,\n uid,\n getFixedStyle,\n mergedRow,\n } = this.asProps;\n\n let accordion = row[ACCORDION];\n const accordionType = accordion && !mergedRow ? 'row' : undefined;\n\n if (!accordion) {\n const cells = Object.values(row);\n const cellWithAccordionIndex = cells.findIndex((value) => {\n return this.cellHasAccordion(value);\n });\n\n this.cellIndex = cellWithAccordionIndex;\n\n const cellWithAccordion = cells[cellWithAccordionIndex] as DTValue | undefined;\n\n accordion = cellWithAccordion?.[ACCORDION];\n }\n\n return sstyled(styles)(\n <>\n <SRow\n render={Box}\n role={'row'}\n aria-rowindex={ariaRowIndex}\n accordionType={accordionType}\n theme={selectedRows?.includes(rowIndex) ? 'info' : undefined}\n use:expanded={expanded && !mergedRow}\n >\n {columns.map((column, i) => {\n if (selectedRows && i === 0) {\n const checked = selectedRows.includes(rowIndex);\n return sstyled(styles)(\n <SCheckboxCell\n key={i}\n row={row}\n rowIndex={rowIndex}\n // @ts-ignore\n column={{ name: SELECT_ALL.toString() }}\n columnIndex={0}\n gridRowIndex={gridRowIndex}\n onClick={this.handleClickCheckbox(!checked)}\n >\n <Checkbox\n checked={checked}\n aria-labelledby={`${uid}_${ariaRowIndex}_1`}\n onChange={this.handleSelectRow}\n />\n </SCheckboxCell>,\n );\n }\n\n const index = i;\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined =\n row[column.name];\n\n if (cellValue === undefined) {\n return null;\n }\n\n const style: React.CSSProperties = {};\n\n if (column.fixed) {\n const [name, value] = getFixedStyle(column);\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n\n return (\n <Body.Cell\n key={index}\n id={`${uid}_${ariaRowIndex}_${index}`}\n accordionId={`${uid}_${ariaRowIndex + 1}`}\n data-aria-level={index === 0 ? ariaLevel : undefined}\n row={row}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n columnIndex={index}\n style={style}\n column={column}\n withAccordion={\n Boolean(cellValue instanceof MergedRowsCell && cellValue.accordion) ||\n this.cellHasAccordion(cellValue)\n }\n />\n );\n })}\n </SRow>\n\n {React.isValidElement(accordion) && (\n <SCollapseRow\n key={rowIndex}\n role={'row'}\n aria-rowindex={ariaRowIndex + 1}\n id={`${uid}_${ariaRowIndex + 1}`}\n visible={expanded}\n interactive\n gridArea={accordionDataGridArea}\n duration={200}\n zIndex={5}\n >\n <SCell\n aria-colindex={1}\n aria-level={ariaLevel + 1}\n aria-setsize={1}\n aria-posinset={1}\n row={row}\n rowIndex={rowIndex + 1}\n columnIndex={1}\n // @ts-ignore\n column={{ name: ACCORDION }}\n position={'sticky'}\n left={0}\n w={scrollAreaRef.current?.clientWidth}\n onKeyDown={this.handleBackFromAccordion}\n >\n {accordion}\n </SCell>\n </SCollapseRow>\n )}\n\n {row[ACCORDION] &&\n Array.isArray(row[ACCORDION]) &&\n expanded &&\n row[ACCORDION]?.map((subrow, i) => {\n return (\n <Row\n key={i}\n row={subrow}\n columns={columns}\n rows={row[ACCORDION]}\n rowIndex={rowIndex}\n aria-posinset={i + 1}\n aria-level={ariaLevel + 1}\n ariaRowIndex={ariaRowIndex + 1 + i}\n gridRowIndex={gridRowIndex + 1 + i}\n isAccordionRow={true}\n getFixedStyle={getFixedStyle}\n />\n );\n })}\n </>,\n );\n }\n}\n\n// @ts-ignore\nexport const Row = createComponent(RowRoot, {}, { parent: Body });\n"],"mappings":"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"}
1
+ {"version":3,"file":"Row.js","names":["_core","require","React","_interopRequireWildcard","_baseComponents","_Body","_DataTable","_MergedCells","_checkbox","_interopRequireDefault","style","sstyled","insert","RowRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","value","event","_this$asProps","asProps","row","rowIndex","onSelectRow","preventDefault","stopPropagation","_this$asProps2","e","key","onBackFromAccordion","cellIndex","_createClass2","cellHasAccordion","cellValue","MergedRowsCell","MergedColumnsCell","Boolean","ACCORDION","render","_ref","_ref2","_this2","_scrollAreaRef$curren","SRow","Box","SCollapseRow","Collapse","SAccordionRows","SCell","Body","Cell","SCheckboxCell","_this$asProps3","columns","rows","styles","ariaRowIndex","gridRowIndex","expanded","accordionDataGridArea","_this$asProps3$ariaL","ariaLevel","scrollAreaRef","selectedRows","uid","getFixedStyle","mergedRow","isAccordionRow","animationExpand","accordionRowIndex","accordionDuration","accordion","accordionType","undefined","cells","Object","values","cellWithAccordionIndex","findIndex","cellWithAccordion","accordionId","createElement","Fragment","cn","_objectSpread2","assignProps","includes","map","column","i","_ref3","checked","name","SELECT_ALL","toString","handleClickCheckbox","handleSelectRow","index","fixed","_getFixedStyle","_getFixedStyle2","_slicedToArray2","id","columnIndex","withAccordion","isValidElement","current","clientWidth","handleBackFromAccordion","isArray","subrow","Row","Component","createComponent","parent","exports"],"sources":["../../../../src/components/Body/Row.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Component, Root, sstyled, createComponent } from '@semcore/core';\nimport { DataTableRowProps, RowPropsInner } from './Row.types';\nimport { Box, Collapse } from '@semcore/base-components';\nimport style from './style.shadow.css';\nimport { Body } from './Body';\nimport { ACCORDION, SELECT_ALL } from '../DataTable/DataTable';\nimport { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport { DTValue } from '../DataTable/DataTable.types';\nimport Checkbox from '@semcore/checkbox';\n\nclass RowRoot extends Component<DataTableRowProps, {}, {}, [], RowPropsInner> {\n static displayName = 'Row';\n static style = style;\n\n static defaultProps = {\n 'aria-level': undefined,\n };\n\n private cellIndex = -1;\n\n cellHasAccordion(cellValue?: DTValue | MergedColumnsCell | MergedRowsCell): cellValue is DTValue {\n return (\n !(cellValue instanceof MergedRowsCell || cellValue instanceof MergedColumnsCell) &&\n Boolean(cellValue?.[ACCORDION])\n );\n }\n\n handleSelectRow = (value: boolean, event?: React.SyntheticEvent<HTMLElement>) => {\n const { row, rowIndex, onSelectRow } = this.asProps;\n\n onSelectRow?.(value, rowIndex, row, event);\n };\n\n handleClickCheckbox = (value: boolean) => (event?: React.SyntheticEvent<HTMLElement>) => {\n event?.preventDefault();\n event?.stopPropagation();\n const { row, rowIndex, onSelectRow } = this.asProps;\n\n onSelectRow?.(value, rowIndex, row, event);\n };\n\n handleBackFromAccordion = (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n this.asProps.onBackFromAccordion(this.cellIndex);\n }\n };\n\n render() {\n const SRow = Root;\n const SCollapseRow = Collapse;\n const SAccordionRows = Box;\n const SCell = Body.Cell;\n const SCheckboxCell = Body.Cell;\n const {\n columns,\n row,\n rows,\n styles,\n rowIndex,\n ariaRowIndex,\n gridRowIndex,\n expanded,\n accordionDataGridArea,\n 'aria-level': ariaLevel = 1,\n scrollAreaRef,\n selectedRows,\n uid,\n getFixedStyle,\n mergedRow,\n isAccordionRow,\n animationExpand,\n accordionRowIndex,\n accordionDuration,\n } = this.asProps;\n\n let accordion = row[ACCORDION];\n const accordionType = accordion && !mergedRow ? 'row' : undefined;\n\n if (!accordion) {\n const cells = Object.values(row);\n const cellWithAccordionIndex = cells.findIndex((value) => {\n return this.cellHasAccordion(value);\n });\n\n this.cellIndex = cellWithAccordionIndex;\n\n const cellWithAccordion = cells[cellWithAccordionIndex] as DTValue | undefined;\n\n accordion = cellWithAccordion?.[ACCORDION];\n }\n\n const accordionId = `${uid}_${ariaRowIndex + 1}`;\n\n return sstyled(styles)(\n <>\n <SRow\n render={Box}\n role={'row'}\n aria-rowindex={ariaRowIndex}\n accordionType={accordionType}\n theme={selectedRows?.includes(rowIndex) ? 'info' : undefined}\n use:expanded={expanded && !mergedRow}\n >\n {columns.map((column, i) => {\n if (selectedRows && i === 0) {\n const checked = selectedRows.includes(rowIndex);\n return sstyled(styles)(\n <SCheckboxCell\n key={i}\n row={row}\n rowIndex={rowIndex}\n // @ts-ignore\n column={{ name: SELECT_ALL.toString() }}\n columnIndex={0}\n gridRowIndex={gridRowIndex}\n onClick={this.handleClickCheckbox(!checked)}\n >\n <Checkbox\n checked={checked}\n aria-labelledby={`${uid}_${ariaRowIndex}_1`}\n onChange={this.handleSelectRow}\n />\n </SCheckboxCell>,\n );\n }\n\n const index = i;\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined =\n row[column.name];\n\n if (cellValue === undefined) {\n return null;\n }\n\n const style: React.CSSProperties = {};\n\n if (column.fixed) {\n const [name, value] = getFixedStyle(column);\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n\n return (\n <Body.Cell\n key={index}\n id={`${uid}_${ariaRowIndex}_${index}`}\n accordionId={accordionId}\n data-aria-level={index === 0 ? ariaLevel : undefined}\n row={row}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n columnIndex={index}\n style={style}\n column={column}\n withAccordion={\n Boolean(cellValue instanceof MergedRowsCell && cellValue.accordion) ||\n this.cellHasAccordion(cellValue)\n }\n isAccordionRow={isAccordionRow}\n animationExpand={animationExpand}\n accordionRowIndex={accordionRowIndex}\n rows={rows}\n />\n );\n })}\n </SRow>\n\n {React.isValidElement(accordion) && (\n <SCollapseRow\n key={rowIndex}\n role={'row'}\n aria-rowindex={ariaRowIndex + 1}\n id={accordionId}\n visible={expanded}\n interactive\n gridArea={accordionDataGridArea}\n duration={accordionDuration ?? 200}\n zIndex={5}\n >\n <SCell\n aria-colindex={1}\n aria-level={ariaLevel + 1}\n aria-setsize={1}\n aria-posinset={1}\n row={row}\n rowIndex={rowIndex + 1}\n columnIndex={1}\n // @ts-ignore\n column={{ name: ACCORDION }}\n position={'sticky'}\n left={0}\n w={scrollAreaRef.current?.clientWidth}\n onKeyDown={this.handleBackFromAccordion}\n >\n {accordion}\n </SCell>\n </SCollapseRow>\n )}\n\n {row[ACCORDION] && Array.isArray(row[ACCORDION]) && (\n <SAccordionRows id={accordionId} role='rowgroup'>\n {row[ACCORDION].map((subrow, i) => {\n return (\n <Row\n key={i}\n row={subrow}\n columns={columns}\n rows={row[ACCORDION]}\n rowIndex={rowIndex}\n aria-hidden={!expanded}\n aria-posinset={i + 1}\n aria-level={ariaLevel + 1}\n ariaRowIndex={ariaRowIndex + 1 + i}\n gridRowIndex={gridRowIndex + 1 + i}\n isAccordionRow={true}\n getFixedStyle={getFixedStyle}\n animationExpand={expanded}\n accordionRowIndex={i}\n />\n );\n })}\n </SAccordionRows>\n )}\n </>,\n );\n }\n}\n\n// @ts-ignore\nexport const Row = createComponent(RowRoot, {}, { parent: Body });\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Row.types.js","names":["_DataTable","require"],"sources":["../../../../src/components/Body/Row.types.ts"],"sourcesContent":["import { DTValue, DTUse, DataTableData } from '../DataTable/DataTable.types';\nimport { DTColumn } from '../Head/Column.types';\nimport { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport { ACCORDION, ROW_GROUP, ROW_INDEX, UNIQ_ROW_KEY } from '../DataTable/DataTable';\n\nexport type UniqRowKey = string;\n\nexport type DTRow = {\n [UNIQ_ROW_KEY]: UniqRowKey;\n [ROW_INDEX]: number;\n [key: string]: DTValue | MergedRowsCell | MergedColumnsCell;\n [ACCORDION]?: React.ReactNode | DataTableData | undefined;\n [ROW_GROUP]?: Set<UniqRowKey>;\n};\nexport type DTRows = Array<DTRow | DTRow[]>;\n\nexport type DataTableRowProps = {\n row: DTRow;\n mergedRow?: boolean;\n};\n\nexport type RowPropsInner = JSX.IntrinsicElements['div'] & {\n use: DTUse;\n /**\n * Expanded flag for rows with accordion\n * @default false\n */\n expanded?: boolean;\n\n /**\n * Flag to show is row in a merged list or not.\n */\n mergedRow?: boolean;\n\n columns: DTColumn[];\n row: DTRow | DTRow[];\n rows: DTRows;\n rowIndex: number; // from 0\n ariaRowIndex: number; // from 1 + 1 header\n gridRowIndex: number; // from 1 + 1 (or 2 if it has group) header\n\n expandedRows: Set<string>;\n onExpandRow: (expandedRow: DTRow) => void;\n\n gridTemplateAreas: string[];\n gridTemplateColumns: string[];\n accordionDataGridArea: string;\n\n selectedRows?: number[];\n onSelectRow?: (\n isSelect: boolean,\n selectedRowIndex: number,\n row: DTRow,\n event?: React.SyntheticEvent<HTMLElement>,\n ) => void;\n\n inert?: '';\n\n onBackFromAccordion: (colIndex: number) => void;\n\n scrollAreaRef: React.RefObject<HTMLDivElement>;\n uid: string;\n sideIndents?: 'wide';\n getFixedStyle: (\n cell: Pick<DTColumn, 'name' | 'fixed'>,\n ) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];\n};\n"],"mappings":";;AAGA,IAAAA,UAAA,GAAAC,OAAA"}
1
+ {"version":3,"file":"Row.types.js","names":["_DataTable","require"],"sources":["../../../../src/components/Body/Row.types.ts"],"sourcesContent":["import { DTValue, DTUse, DataTableData } from '../DataTable/DataTable.types';\nimport { DTColumn } from '../Head/Column.types';\nimport { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport { ACCORDION, ROW_GROUP, ROW_INDEX, UNIQ_ROW_KEY } from '../DataTable/DataTable';\nimport { DataTableCellProps } from './Cell.types';\n\nexport type UniqRowKey = string;\n\nexport type DTRow = {\n [UNIQ_ROW_KEY]: UniqRowKey;\n [ROW_INDEX]: number;\n [key: string]: DTValue | MergedRowsCell | MergedColumnsCell;\n [ACCORDION]?: React.ReactNode | DataTableData | undefined;\n [ROW_GROUP]?: Set<UniqRowKey>;\n};\nexport type DTRows = Array<DTRow | DTRow[]>;\n\nexport type DataTableRowProps = {\n row: DTRow;\n mergedRow?: boolean;\n\n isAccordionRow?: DataTableCellProps['isAccordionRow'];\n animationExpand?: DataTableCellProps['animationExpand'];\n accordionRowIndex?: DataTableCellProps['accordionRowIndex'];\n};\n\nexport type RowPropsInner = JSX.IntrinsicElements['div'] & {\n use: DTUse;\n /**\n * Expanded flag for rows with accordion\n * @default false\n */\n expanded?: boolean;\n\n /**\n * Flag to show is row in a merged list or not.\n */\n mergedRow?: boolean;\n\n columns: DTColumn[];\n row: DTRow | DTRow[];\n rows: DTRows;\n rowIndex: number; // from 0\n ariaRowIndex: number; // from 1 + 1 header\n gridRowIndex: number; // from 1 + 1 (or 2 if it has group) header\n\n expandedRows: Set<string>;\n onExpandRow: (expandedRow: DTRow) => void;\n\n gridTemplateAreas: string[];\n gridTemplateColumns: string[];\n accordionDataGridArea: string;\n\n selectedRows?: number[];\n onSelectRow?: (\n isSelect: boolean,\n selectedRowIndex: number,\n row: DTRow,\n event?: React.SyntheticEvent<HTMLElement>,\n ) => void;\n\n inert?: '';\n\n accordionDuration?: number | [number, number];\n onBackFromAccordion: (colIndex: number) => void;\n\n scrollAreaRef: React.RefObject<HTMLDivElement>;\n uid: string;\n sideIndents?: 'wide';\n getFixedStyle: (\n cell: Pick<DTColumn, 'name' | 'fixed'>,\n ) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];\n};\n"],"mappings":";;AAGA,IAAAA,UAAA,GAAAC,OAAA"}
@@ -1,4 +1,4 @@
1
- SBody, SRow, SRowGroup {
1
+ SBody, SRow, SRowGroup, SAccordionRows {
2
2
  display: contents;
3
3
  }
4
4
 
@@ -12,87 +12,96 @@ SBody[compact] {
12
12
  }
13
13
  }
14
14
 
15
- SRow[gridArea], SCell[gridArea], SCollapseRow[gridArea] {
15
+ SRow[gridArea], SCellWrapper[gridArea], SCollapseRow[gridArea] {
16
16
  grid-area: var(--gridArea);
17
17
  }
18
18
 
19
+ SCellWrapper {
20
+ height: 100%;
21
+ }
22
+
23
+ SCollapseRow[gridArea] > SCellWrapper > SCell,
24
+ SAccordionRows > SRow[isAccordionRow]:last-child > SCellWrapper > SCell {
25
+ border-bottom: 1px solid var(--intergalactic-border-table-accent, #a9abb6);
26
+ }
27
+
19
28
  SCollapseRow SCell {
20
29
  display: block;
21
30
  }
22
31
 
23
32
  /* DEFAULT THEME */
24
- SRow[active] > SCell:not([theme]) {
33
+ SRow[active] > SCellWrapper > SCell:not([theme]) {
25
34
  /* The color is hardcoded because need hex(in figma rgba) */
26
35
  /* disable-tokens-validator */
27
36
  background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
28
37
  }
29
38
 
30
- SRow[accordionType='row'][expanded] > SCell:not([theme]),
39
+ SRow[accordionType='row'][expanded] > SCellWrapper > SCell:not([theme]),
31
40
  SCell:not([theme])[expanded][withAccordion] {
32
41
  background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
33
42
  }
34
43
 
35
- SCollapseRow > SCell:not([theme]), SRow[isAccordionRow] > SCell:not([theme]) {
44
+ SCollapseRow > SCellWrapper > SCell:not([theme]), SRow[isAccordionRow] > SCellWrapper > SCell:not([theme]) {
36
45
  background-color: var(--intergalactic-table-td-cell-accordion, #f4f5f9);
37
46
  }
38
47
 
39
48
  /* we need a media query here because of the postcssHoverMediaFeature plugin. it doesn't handle this type of selectors correctly */
40
49
  @media (hover: hover) {
41
- SRow:not([accordionType='row'][expanded]):hover > SCell:not([theme]):not([expanded][withAccordion]),
42
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCell:not([theme]):not([expanded][withAccordion]),
43
- SRowGroup:has(SCell:hover) > SRow > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]) {
50
+ SRow:not([accordionType='row'][expanded]):hover > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
51
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
52
+ SRowGroup:has(SCell:hover) > SRow > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]) {
44
53
  background-color: var(--intergalactic-table-td-cell-hover, #f0f0f4);
45
54
  }
46
55
 
47
56
  /* MUTED THEME */
48
- SRow:hover > SCell[theme='muted'],
49
- SRow[theme='muted']:hover > SCell:not([theme]),
50
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCell[theme='muted'],
51
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='muted'] > SCell:not([theme]),
52
- SRowGroup:has(SCell:hover) > SRow > SCell[data-grouped-by='rowgroup'][theme='muted'],
53
- SRowGroup:has(SCell:hover) > SRow[theme='muted'] > SCell[data-grouped-by='rowgroup']:not([theme]) {
57
+ SRow:hover > SCellWrapper > SCell[theme='muted'],
58
+ SRow[theme='muted']:hover > SCellWrapper > SCell:not([theme]),
59
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCellWrapper > SCell[theme='muted'],
60
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='muted'] > SCellWrapper > SCell:not([theme]),
61
+ SRowGroup:has(SCell:hover) > SRow > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='muted'],
62
+ SRowGroup:has(SCell:hover) > SRow[theme='muted'] > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
54
63
  /* The color is hardcoded because need hex(in figma rgba) */
55
64
  /* disable-tokens-validator */
56
65
  background-color: var(--intergalactic-table-td-cell-hover, #f0f0f4);
57
66
  }
58
67
 
59
68
  /* INFO THEME */
60
- SRow:hover > SCell[theme='info'],
61
- SRow[theme='info']:hover > SCell:not([theme]),
62
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCell[theme='info'],
63
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='info'] > SCell:not([theme]),
64
- SRowGroup:has(SCell:hover) > SRow > SCell[data-grouped-by='rowgroup'][theme='info'],
65
- SRowGroup:has(SCell:hover) > SRow[theme='info'] > SCell[data-grouped-by='rowgroup']:not([theme]) {
69
+ SRow:hover > SCellWrapper > SCell[theme='info'],
70
+ SRow[theme='info']:hover > SCellWrapper > SCell:not([theme]),
71
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCellWrapper > SCell[theme='info'],
72
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='info'] > SCellWrapper > SCell:not([theme]),
73
+ SRowGroup:has(SCell:hover) > SRow > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='info'],
74
+ SRowGroup:has(SCell:hover) > SRow[theme='info'] > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
66
75
  background-color: var(--intergalactic-table-td-cell-selected-hover, #c4e5fe);
67
76
  }
68
77
 
69
78
  /* SUCCESS THEME */
70
- SRow:hover > SCell[theme='success'],
71
- SRow[theme='success']:hover > SCell:not([theme]),
72
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCell[theme='success'],
73
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='success'] > SCell:not([theme]),
74
- SRowGroup:has(SCell:hover) > SRow > SCell[data-grouped-by='rowgroup'][theme='success'],
75
- SRowGroup:has(SCell:hover) > SRow[theme='success'] > SCell[data-grouped-by='rowgroup']:not([theme]) {
79
+ SRow:hover > SCellWrapper > SCell[theme='success'],
80
+ SRow[theme='success']:hover > SCellWrapper > SCell:not([theme]),
81
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCellWrapper > SCell[theme='success'],
82
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='success'] > SCellWrapper > SCell:not([theme]),
83
+ SRowGroup:has(SCell:hover) > SRow > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='success'],
84
+ SRowGroup:has(SCell:hover) > SRow[theme='success'] > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
76
85
  background-color: var(--intergalactic-table-td-cell-new-hover, #9ef2c9);
77
86
  }
78
87
 
79
88
  /* WARNING THEME */
80
- SRow:hover > SCell[theme='warning'],
81
- SRow[theme='warning']:hover > SCell:not([theme]),
82
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCell[theme='warning'],
83
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='warning'] > SCell:not([theme]),
84
- SRowGroup:has(SCell:hover) > SRow > SCell[data-grouped-by='rowgroup'][theme='warning'],
85
- SRowGroup:has(SCell:hover) > SRow[theme='warning'] > SCell[data-grouped-by='rowgroup']:not([theme]) {
89
+ SRow:hover > SCellWrapper > SCell[theme='warning'],
90
+ SRow[theme='warning']:hover > SCellWrapper > SCell:not([theme]),
91
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCellWrapper > SCell[theme='warning'],
92
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='warning'] > SCellWrapper > SCell:not([theme]),
93
+ SRowGroup:has(SCell:hover) > SRow > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='warning'],
94
+ SRowGroup:has(SCell:hover) > SRow[theme='warning'] > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
86
95
  background-color: var(--intergalactic-table-td-cell-warning-hover, #ffdca2);
87
96
  }
88
97
 
89
98
  /* DANGER THEME */
90
- SRow:hover > SCell[theme='danger'],
91
- SRow[theme='danger']:hover > SCell:not([theme]),
92
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCell[theme='danger'],
93
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='danger'] > SCell:not([theme]),
94
- SRowGroup:has(SCell:hover) > SRow > SCell[data-grouped-by='rowgroup'][theme='danger'],
95
- SRowGroup:has(SCell:hover) > SRow[theme='danger'] > SCell[data-grouped-by='rowgroup']:not([theme]) {
99
+ SRow:hover > SCellWrapper > SCell[theme='danger'],
100
+ SRow[theme='danger']:hover > SCellWrapper > SCell:not([theme]),
101
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow > SCellWrapper > SCell[theme='danger'],
102
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='danger'] > SCellWrapper > SCell:not([theme]),
103
+ SRowGroup:has(SCell:hover) > SRow > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='danger'],
104
+ SRowGroup:has(SCell:hover) > SRow[theme='danger'] > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
96
105
  background-color: var(--intergalactic-table-td-cell-critical-hover, #ffd7df);
97
106
  }
98
107
  }
@@ -102,7 +111,7 @@ SRow[theme='muted'] SCell:not([theme]) {
102
111
  background-color: var(--intergalactic-table-td-cell-unread, #f4f5f9);
103
112
  }
104
113
 
105
- SRow[theme='muted'][active] > SCell:not([theme]) {
114
+ SRow[theme='muted'][active] > SCellWrapper > SCell:not([theme]) {
106
115
  /* The color is hardcoded because need hex(in figma rgba) */
107
116
  /* disable-tokens-validator */
108
117
  background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
@@ -113,7 +122,7 @@ SRow[theme='info'] SCell:not([theme]) {
113
122
  background-color: var(--intergalactic-table-td-cell-selected, #e9f7ff);
114
123
  }
115
124
 
116
- SRow[theme='info'][active] > SCell:not([theme]) {
125
+ SRow[theme='info'][active] > SCellWrapper > SCell:not([theme]) {
117
126
  background-color: var(--intergalactic-table-td-cell-selected-active, #c4e5fe);
118
127
  }
119
128
 
@@ -122,7 +131,7 @@ SRow[theme='success'] SCell:not([theme]) {
122
131
  background-color: var(--intergalactic-table-td-cell-new, #dbfee8);
123
132
  }
124
133
 
125
- SRow[theme='success'][active] > SCell:not([theme]) {
134
+ SRow[theme='success'][active] > SCellWrapper > SCell:not([theme]) {
126
135
  background-color: var(--intergalactic-table-td-cell-new-active, #9ef2c9);
127
136
  }
128
137
 
@@ -131,7 +140,7 @@ SRow[theme='warning'] SCell:not([theme]) {
131
140
  background-color: var(--intergalactic-table-td-cell-warning, #fff3d9);
132
141
  }
133
142
 
134
- SRow[theme='warning'][active] > SCell:not([theme]) {
143
+ SRow[theme='warning'][active] > SCellWrapper > SCell:not([theme]) {
135
144
  background-color: var(--intergalactic-table-td-cell-warning-active, #ffdca2);
136
145
  }
137
146
 
@@ -140,7 +149,7 @@ SRow[theme='danger'] SCell:not([theme]) {
140
149
  background-color: var(--intergalactic-table-td-cell-critical, #fff0f7);
141
150
  }
142
151
 
143
- SRow[theme='danger'][active] > SCell:not([theme]) {
152
+ SRow[theme='danger'][active] > SCellWrapper > SCell:not([theme]) {
144
153
  background-color: var(--intergalactic-table-td-cell-critical-active, #ffd7df);
145
154
  }
146
155
 
@@ -174,7 +183,7 @@ SCell {
174
183
  }
175
184
  }
176
185
 
177
- SRow[accordionType='row'] > SCell, SCell[withAccordion], SCheckboxCell {
186
+ SRow[accordionType='row'] > SCellWrapper > SCell, SCell[withAccordion], SCheckboxCell {
178
187
  cursor: pointer;
179
188
  }
180
189
 
@@ -206,7 +215,7 @@ SCell[borders='both'], SCell[borders='right'] {
206
215
  border-right: 1px solid var(--intergalactic-border-secondary, #e0e1e9);
207
216
  }
208
217
 
209
- SCell[fixed] {
218
+ SCellWrapper[fixed] {
210
219
  position: sticky;
211
220
  z-index: 2;
212
221
  }
@@ -251,10 +260,10 @@ SEmptyData {
251
260
  }
252
261
 
253
262
  SRow[sideIndents='wide'] {
254
- SCell:first-child {
263
+ SCellWrapper:first-child SCell {
255
264
  padding-left: var(--intergalactic-spacing-5x, 20px);
256
265
  }
257
- SCell:last-child {
266
+ SCellWrapper:last-child SCell {
258
267
  padding-right: var(--intergalactic-spacing-5x, 20px);
259
268
  }
260
269
  }
@@ -31,35 +31,35 @@ var _rafTrottle = _interopRequireDefault(require("@semcore/core/lib/utils/rafTro
31
31
  var _MergedCells = require("../Body/MergedCells");
32
32
  var _widgetEmpty = require("@semcore/widget-empty");
33
33
  /*!__reshadow-styles__:"./dataTable.shadow.css"*/
34
- var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SDataTable_133z6_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_133z6_gg_.__gridTemplateColumns_133z6_gg_{grid-template-columns:var(--gridTemplateColumns_133z6)}.___SDataTable_133z6_gg_.__gridTemplateAreas_133z6_gg_{grid-template-areas:var(--gridTemplateAreas_133z6)}.___SDataTable_133z6_gg_.__gridTemplateRows_133z6_gg_{grid-template-rows:var(--gridTemplateRows_133z6)}", /*__inner_css_end__*/"133z6_gg_"),
34
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SDataTable_x73f6_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content}.___SDataTable_x73f6_gg_.__gridTemplateColumns_x73f6_gg_{grid-template-columns:var(--gridTemplateColumns_x73f6)}.___SDataTable_x73f6_gg_.__gridTemplateAreas_x73f6_gg_{grid-template-areas:var(--gridTemplateAreas_x73f6)}.___SDataTable_x73f6_gg_.__gridTemplateRows_x73f6_gg_{grid-template-rows:var(--gridTemplateRows_x73f6)}", /*__inner_css_end__*/"x73f6_gg_"),
35
35
  /*__reshadow_css_end__*/
36
36
  {
37
- "__SDataTable": "___SDataTable_133z6_gg_",
38
- "_gridTemplateColumns": "__gridTemplateColumns_133z6_gg_",
39
- "--gridTemplateColumns": "--gridTemplateColumns_133z6",
40
- "_gridTemplateAreas": "__gridTemplateAreas_133z6_gg_",
41
- "--gridTemplateAreas": "--gridTemplateAreas_133z6",
42
- "_gridTemplateRows": "__gridTemplateRows_133z6_gg_",
43
- "--gridTemplateRows": "--gridTemplateRows_133z6"
37
+ "__SDataTable": "___SDataTable_x73f6_gg_",
38
+ "_gridTemplateColumns": "__gridTemplateColumns_x73f6_gg_",
39
+ "--gridTemplateColumns": "--gridTemplateColumns_x73f6",
40
+ "_gridTemplateAreas": "__gridTemplateAreas_x73f6_gg_",
41
+ "--gridTemplateAreas": "--gridTemplateAreas_x73f6",
42
+ "_gridTemplateRows": "__gridTemplateRows_x73f6_gg_",
43
+ "--gridTemplateRows": "--gridTemplateRows_x73f6"
44
44
  });
45
45
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
46
- var scrollStyles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SScrollArea_1p4fc_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_{overflow:visible;overflow:initial}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_._scrollDirection_both_1p4fc_gg_{overflow:auto}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_._scrollDirection_horizontal_1p4fc_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_._scrollDirection_vertical_1p4fc_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_.__loading_1p4fc_gg_{overflow:hidden}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_.__headerHeight_1p4fc_gg_{scroll-padding-top:var(--headerHeight_1p4fc)}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_.__leftScrollPadding_1p4fc_gg_{scroll-padding-left:var(--leftScrollPadding_1p4fc)}.___SScrollArea_1p4fc_gg_ .___SContainer_1p4fc_gg_.__rightScrollPadding_1p4fc_gg_{scroll-padding-right:var(--rightScrollPadding_1p4fc)}.___SScrollArea_1p4fc_gg_ .___SShadowVertical_1p4fc_gg_:before{display:none}.___SScrollArea_1p4fc_gg_ .___SShadowHorizontal_1p4fc_gg_:after,.___SScrollArea_1p4fc_gg_ .___SShadowHorizontal_1p4fc_gg_:before,.___SScrollArea_1p4fc_gg_ .___SShadowVertical_1p4fc_gg_:after{z-index:2}", /*__inner_css_end__*/"1p4fc_gg_"),
46
+ var scrollStyles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SScrollArea_fq5cd_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_{overflow:visible;overflow:initial}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_._scrollDirection_both_fq5cd_gg_{overflow:auto}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_._scrollDirection_horizontal_fq5cd_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_._scrollDirection_vertical_fq5cd_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_.__loading_fq5cd_gg_{overflow:hidden}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_.__headerHeight_fq5cd_gg_{scroll-padding-top:var(--headerHeight_fq5cd)}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_.__leftScrollPadding_fq5cd_gg_{scroll-padding-left:var(--leftScrollPadding_fq5cd)}.___SScrollArea_fq5cd_gg_ .___SContainer_fq5cd_gg_.__rightScrollPadding_fq5cd_gg_{scroll-padding-right:var(--rightScrollPadding_fq5cd)}.___SScrollArea_fq5cd_gg_ .___SShadowVertical_fq5cd_gg_:before{display:none}.___SScrollArea_fq5cd_gg_ .___SShadowHorizontal_fq5cd_gg_:after,.___SScrollArea_fq5cd_gg_ .___SShadowHorizontal_fq5cd_gg_:before,.___SScrollArea_fq5cd_gg_ .___SShadowVertical_fq5cd_gg_:after{z-index:2}", /*__inner_css_end__*/"fq5cd_gg_"),
47
47
  /*__reshadow_css_end__*/
48
48
  {
49
- "__SScrollArea": "___SScrollArea_1p4fc_gg_",
50
- "__SContainer": "___SContainer_1p4fc_gg_",
51
- "_scrollDirection_both": "_scrollDirection_both_1p4fc_gg_",
52
- "_scrollDirection_horizontal": "_scrollDirection_horizontal_1p4fc_gg_",
53
- "_scrollDirection_vertical": "_scrollDirection_vertical_1p4fc_gg_",
54
- "_loading": "__loading_1p4fc_gg_",
55
- "_headerHeight": "__headerHeight_1p4fc_gg_",
56
- "--headerHeight": "--headerHeight_1p4fc",
57
- "_leftScrollPadding": "__leftScrollPadding_1p4fc_gg_",
58
- "--leftScrollPadding": "--leftScrollPadding_1p4fc",
59
- "_rightScrollPadding": "__rightScrollPadding_1p4fc_gg_",
60
- "--rightScrollPadding": "--rightScrollPadding_1p4fc",
61
- "__SShadowVertical": "___SShadowVertical_1p4fc_gg_",
62
- "__SShadowHorizontal": "___SShadowHorizontal_1p4fc_gg_"
49
+ "__SScrollArea": "___SScrollArea_fq5cd_gg_",
50
+ "__SContainer": "___SContainer_fq5cd_gg_",
51
+ "_scrollDirection_both": "_scrollDirection_both_fq5cd_gg_",
52
+ "_scrollDirection_horizontal": "_scrollDirection_horizontal_fq5cd_gg_",
53
+ "_scrollDirection_vertical": "_scrollDirection_vertical_fq5cd_gg_",
54
+ "_loading": "__loading_fq5cd_gg_",
55
+ "_headerHeight": "__headerHeight_fq5cd_gg_",
56
+ "--headerHeight": "--headerHeight_fq5cd",
57
+ "_leftScrollPadding": "__leftScrollPadding_fq5cd_gg_",
58
+ "--leftScrollPadding": "--leftScrollPadding_fq5cd",
59
+ "_rightScrollPadding": "__rightScrollPadding_fq5cd_gg_",
60
+ "--rightScrollPadding": "--rightScrollPadding_fq5cd",
61
+ "__SShadowVertical": "___SShadowVertical_fq5cd_gg_",
62
+ "__SShadowHorizontal": "___SShadowHorizontal_fq5cd_gg_"
63
63
  });
64
64
  var ACCORDION = Symbol('accordion');
65
65
  exports.ACCORDION = ACCORDION;
@@ -135,7 +135,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
135
135
  });
136
136
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getRow", function (index) {
137
137
  var _this$tableRef$curren;
138
- return (_this$tableRef$curren = _this.tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.querySelector("[aria-rowindex=\"".concat(index + 1, "\"]"));
138
+ return (_this$tableRef$curren = _this.tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.querySelector("[aria-rowindex=\"".concat(index + 1, "\"]:not([aria-hidden=\"true\"])"));
139
139
  });
140
140
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "hasFocusableInHeader", function () {
141
141
  return _this.headerRef.current && (0, _useFocusLock.hasFocusableIn)(_this.headerRef.current);
@@ -172,7 +172,7 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
172
172
  }
173
173
  if (!changed) return;
174
174
  var row = _this.getRow(newRow);
175
- var cell = row === null || row === void 0 ? void 0 : row.querySelector(":scope > [role=gridcell][aria-colindex=\"".concat(newCol + 1, "\"], :scope > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"], :scope > div > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"]"));
175
+ var cell = row === null || row === void 0 ? void 0 : row.querySelector(":scope > div > [role=gridcell][aria-colindex=\"".concat(newCol + 1, "\"], :scope > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"], :scope > div > [role=columnheader][aria-colindex=\"").concat(newCol + 1, "\"]"));
176
176
  if (cell instanceof HTMLElement && currentCell !== cell) {
177
177
  _this.focusedCell = [newRow, newCol];
178
178
  currentCell === null || currentCell === void 0 ? void 0 : currentCell.setAttribute('inert', '');
@@ -195,14 +195,14 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
195
195
  var rowI = rowIndex;
196
196
  var colI = colIndex;
197
197
  if (direction === 'left' || direction === 'right') {
198
- var _currentCell$parentEl, _currentCell$parentEl2, _row$children;
198
+ var _currentCell$parentEl, _currentCell$parentEl2, _currentCell$parentEl3, _row$children;
199
199
  // we need to skip Collapse Element with one big component from keyboard left/right pressing
200
200
  if (((_currentCell$parentEl = currentCell.parentElement) === null || _currentCell$parentEl === void 0 ? void 0 : _currentCell$parentEl.dataset.uiName) === 'Collapse') {
201
201
  return;
202
202
  }
203
203
 
204
204
  // left/right
205
- if (currentCell.dataset.groupedBy === 'colgroup' || Number((_currentCell$parentEl2 = currentCell.parentElement) === null || _currentCell$parentEl2 === void 0 ? void 0 : _currentCell$parentEl2.getAttribute('aria-rowindex')) === 2 || Array.from((_row$children = row === null || row === void 0 ? void 0 : row.children) !== null && _row$children !== void 0 ? _row$children : []).indexOf(currentCell) > 0) {
205
+ if (currentCell.dataset.groupedBy === 'colgroup' || Number((_currentCell$parentEl2 = currentCell.parentElement) === null || _currentCell$parentEl2 === void 0 ? void 0 : (_currentCell$parentEl3 = _currentCell$parentEl2.parentElement) === null || _currentCell$parentEl3 === void 0 ? void 0 : _currentCell$parentEl3.getAttribute('aria-rowindex')) === 2 || currentCell.parentElement && Array.from((_row$children = row === null || row === void 0 ? void 0 : row.children) !== null && _row$children !== void 0 ? _row$children : []).indexOf(currentCell.parentElement) > 0) {
206
206
  colI = direction === 'left' ? colI - 1 : colI + 1;
207
207
  } else {
208
208
  rowI = rowI - 1;
@@ -559,11 +559,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
559
559
  headerProps = _this$asProps6.headerProps,
560
560
  renderEmptyData = _this$asProps6.renderEmptyData,
561
561
  sideIndents = _this$asProps6.sideIndents,
562
- selectedRows = _this$asProps6.selectedRows;
562
+ selectedRows = _this$asProps6.selectedRows,
563
+ accordionDuration = _this$asProps6.accordionDuration;
563
564
  var _this$gridSettings2 = this.gridSettings,
564
565
  gridTemplateColumns = _this$gridSettings2.gridTemplateColumns,
565
566
  gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
566
567
  return {
568
+ accordionDuration: accordionDuration,
567
569
  columns: this.columns,
568
570
  rows: this.rows,
569
571
  flatRows: this.flatRows,