@semcore/data-table 16.5.3-prerelease.4 → 17.0.0-prerelease.17

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 (72) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/components/AccordionRows/AccordionRows.js +144 -157
  3. package/lib/cjs/components/AccordionRows/AccordionRows.js.map +1 -1
  4. package/lib/cjs/components/Body/Body.js +373 -395
  5. package/lib/cjs/components/Body/Body.js.map +1 -1
  6. package/lib/cjs/components/Body/Cell.js +135 -151
  7. package/lib/cjs/components/Body/Cell.js.map +1 -1
  8. package/lib/cjs/components/Body/LimitOverlay.js +142 -158
  9. package/lib/cjs/components/Body/LimitOverlay.js.map +1 -1
  10. package/lib/cjs/components/Body/MergedCells.js +25 -23
  11. package/lib/cjs/components/Body/MergedCells.js.map +1 -1
  12. package/lib/cjs/components/Body/Row.js +498 -539
  13. package/lib/cjs/components/Body/Row.js.map +1 -1
  14. package/lib/cjs/components/DataTable/DataTable.js +867 -938
  15. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  16. package/lib/cjs/components/Head/Column.js +208 -234
  17. package/lib/cjs/components/Head/Column.js.map +1 -1
  18. package/lib/cjs/components/Head/Group.js +79 -92
  19. package/lib/cjs/components/Head/Group.js.map +1 -1
  20. package/lib/cjs/components/Head/Head.js +229 -263
  21. package/lib/cjs/components/Head/Head.js.map +1 -1
  22. package/lib/cjs/enhancers/focusableCell.js +6 -14
  23. package/lib/cjs/enhancers/focusableCell.js.map +1 -1
  24. package/lib/cjs/index.js +7 -14
  25. package/lib/cjs/index.js.map +1 -1
  26. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +16 -16
  27. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  28. package/lib/es6/components/AccordionRows/AccordionRows.js +142 -156
  29. package/lib/es6/components/AccordionRows/AccordionRows.js.map +1 -1
  30. package/lib/es6/components/Body/Body.js +370 -392
  31. package/lib/es6/components/Body/Body.js.map +1 -1
  32. package/lib/es6/components/Body/Cell.js +131 -147
  33. package/lib/es6/components/Body/Cell.js.map +1 -1
  34. package/lib/es6/components/Body/LimitOverlay.js +138 -154
  35. package/lib/es6/components/Body/LimitOverlay.js.map +1 -1
  36. package/lib/es6/components/Body/MergedCells.js +22 -22
  37. package/lib/es6/components/Body/MergedCells.js.map +1 -1
  38. package/lib/es6/components/Body/Row.js +493 -535
  39. package/lib/es6/components/Body/Row.js.map +1 -1
  40. package/lib/es6/components/DataTable/DataTable.js +861 -932
  41. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  42. package/lib/es6/components/Head/Column.js +201 -228
  43. package/lib/es6/components/Head/Column.js.map +1 -1
  44. package/lib/es6/components/Head/Group.js +74 -88
  45. package/lib/es6/components/Head/Group.js.map +1 -1
  46. package/lib/es6/components/Head/Head.js +228 -262
  47. package/lib/es6/components/Head/Head.js.map +1 -1
  48. package/lib/es6/enhancers/focusableCell.js +6 -14
  49. package/lib/es6/enhancers/focusableCell.js.map +1 -1
  50. package/lib/es6/index.js +3 -9
  51. package/lib/es6/index.js.map +1 -1
  52. package/lib/es6/translations/__intergalactic-dynamic-locales.js +15 -15
  53. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  54. package/lib/esm/components/AccordionRows/AccordionRows.mjs +143 -134
  55. package/lib/esm/components/Body/Body.mjs +377 -343
  56. package/lib/esm/components/Body/Cell.mjs +136 -135
  57. package/lib/esm/components/Body/LimitOverlay.mjs +141 -144
  58. package/lib/esm/components/Body/MergedCells.mjs +22 -22
  59. package/lib/esm/components/Body/Row.mjs +498 -458
  60. package/lib/esm/components/DataTable/DataTable.mjs +866 -842
  61. package/lib/esm/components/Head/Column.mjs +208 -201
  62. package/lib/esm/components/Head/Group.mjs +76 -84
  63. package/lib/esm/components/Head/Head.mjs +231 -216
  64. package/lib/esm/enhancers/focusableCell.mjs +7 -14
  65. package/lib/esm/index.mjs +2 -5
  66. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
  67. package/lib/types/components/Body/Cell.d.ts +1 -3
  68. package/lib/types/components/Body/Row.d.ts +1 -1
  69. package/lib/types/components/Head/Column.d.ts +2 -2
  70. package/lib/types/components/Head/Group.d.ts +1 -1
  71. package/lib/types/index.d.ts +2 -6
  72. package/package.json +20 -22
@@ -1 +1 @@
1
- {"version":3,"file":"Row.js","names":["_core","require","_baseComponents","_button","_checkbox","_interopRequireDefault","_assignProps2","_isInteractiveElement","_m","React","_interopRequireWildcard","_Cell","_LimitOverlay","_MergedCells","_AccordionRows","_DataTable","style","sstyled","insert","RowRoot","exports","_Component","props","_this","_classCallCheck2","_callSuper2","_defineProperty2","createRef","expandedForAnimation","accordionRows","undefined","accordionComponent","value","event","_this$asProps","asProps","row","rowIndex","onSelectRow","preventDefault","stopPropagation","_this$asProps2","e","key","onBackFromAccordion","cellName","index","_this$asProps3","accordionDuration","accordionMode","expandedRows","onExpandRow","setRowHeight","rowsHeightMap","calculateAriaRowIndex","accordionAnimationRows","state","openDuration","Array","isArray","ACCORDION","Math","min","length","closeDuration","setTimeout","i","size","has","UNIQ_ROW_KEY","closeAccordion","closeAccordionTimeout","clearTimeout","setState","previousRows","Map","flatRows","forEach","set","_toConsumableArray2","entries","_ref4","_ref5","_slicedToArray2","uniqKey","previousRow","_this$asProps$compone","componentsMap","get","forceUpdate","changeAccordionRows","openAccordionTimeout","chunk","slice","window","_this$asProps4","prevState","_prevState$accordionR","opt","isInteractiveElement","target","handleExpandRow","handleClickRow","bind","_inherits2","_createClass2","componentDidMount","_this$asProps$compone2","_this$asProps5","componentRef","call","setAccordion","componentDidUpdate","prevProps","componentWillUnmount","_this$asProps$compone3","_this$asProps6","_this2","isValidElement","cells","Object","foundCell","find","_ref6","_ref7","cellHasAccordion","MergedRowsCell","accordion","cellValue","MergedColumnsCell","Boolean","_this3","ROW_INDEX","mergedRow","getCellProps","_props$children","_value3","_this4","_this$asProps7","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","theme","SAccordionToggle","ButtonLink","dataKey","column","name","isMergedRows","isMergedColumns","defaultRender","_value","toString","withoutBorder","IS_EMPTY_DATA_ROW","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","_value$toString","_value2","rowRawData","external","columnName","columnIndex","isReactNode","callAllEventHandlers","firstColumnIndex","_ref2","_value4","expanded","handleClick","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","ChevronRightM","_this$asProps8","limit","rowsLimit","fromRow","columnsLimit","fromColumn","render","_ref","_ref3","_this5","_limit$fromRow","SRow","Box","SCollapseRow","Collapse","SCell","Row","Cell","SCheckboxCell","_this$asProps9","columns","gridRowIndex","_this$asProps9$ariaL","ariaLevel","uid","getFixedStyle","sideIndents","hasGroups","scrollAreaRef","_this$state","accordionType","accordionDataGridArea","_row$ROW_GROUP","rowIncrement","ROW_GROUP","concat","rowUniqKey","filledColumns","reduce","acc","columnsCount","_objectSpread2","assignProps","rowElementRef","isRowHidden","map","withAccordion","isCellHidden","checked","includes","nextColumnName","SELECT_ALL","handleClickCheckbox","onChange","handleSelectRow","Value","fixed","_getFixedStyle","_getFixedStyle2","LimitOverlay","handleBackFromAccordion","AccordionRows","obj","Component","createComponent"],"sources":["../../../../src/components/Body/Row.tsx"],"sourcesContent":["import { Box, Collapse } from '@semcore/base-components';\nimport { ButtonLink } from '@semcore/button';\nimport Checkbox from '@semcore/checkbox';\nimport { Component, Root, sstyled, createComponent } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { isInteractiveElement } from '@semcore/core/lib/utils/isInteractiveElement';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport * as React from 'react';\n\nimport { Cell } from './Cell';\nimport type { DataTableCellProps } from './Cell.types';\nimport { LimitOverlay } from './LimitOverlay';\nimport { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport type { DataTableRowProps, DataTableRowType, DTRow, DTRows, RowPropsInner } from './Row.types';\nimport style from './style.shadow.css';\nimport { AccordionRows } from '../AccordionRows/AccordionRows';\nimport { ACCORDION, IS_EMPTY_DATA_ROW, ROW_GROUP, ROW_INDEX, SELECT_ALL, UNIQ_ROW_KEY } from '../DataTable/DataTable';\nimport type { DataTableData, DTValue } from '../DataTable/DataTable.types';\n\ntype State<UniqKeyType> = {\n expandedForAnimation: boolean;\n accordionRows?: DTRows<UniqKeyType>;\n accordionComponent?: React.ReactNode;\n};\n\nexport class RowRoot<Data extends DataTableData, UniqKeyType> extends Component<DataTableRowProps<Data, UniqKeyType>, {}, State<UniqKeyType>, [], RowPropsInner<Data, UniqKeyType>> {\n static displayName = 'Row';\n static style = style;\n\n static defaultProps = {\n 'aria-level': undefined,\n };\n\n private cellName: string = '';\n private closeAccordionTimeout = 0;\n private openAccordionTimeout = 0;\n\n rowElementRef = React.createRef<HTMLDivElement>();\n\n state: State<UniqKeyType> = {\n expandedForAnimation: false,\n accordionRows: undefined,\n accordionComponent: undefined,\n };\n\n constructor(props: DataTableRowProps<Data, UniqKeyType>) {\n super(props);\n\n this.handleClickRow = this.handleClickRow.bind(this);\n }\n\n componentDidMount() {\n this.asProps.componentRef?.(this);\n\n this.setAccordion();\n }\n\n componentDidUpdate(prevProps: DataTableRowProps<Data, UniqKeyType>) {\n const { row } = this.asProps;\n\n if (prevProps.row !== row) {\n this.setAccordion();\n }\n }\n\n componentWillUnmount() {\n this.asProps.componentRef?.(null);\n }\n\n setAccordion() {\n const { row } = this.asProps;\n\n let accordionRows = Array.isArray(row[ACCORDION]) ? row[ACCORDION] : undefined;\n let accordionComponent: React.ReactNode = React.isValidElement(row[ACCORDION]) ? row[ACCORDION] : undefined;\n\n if (!accordionRows && !accordionComponent) {\n const cells = Object.entries(row);\n const foundCell = cells.find(([key, value]) => {\n return this.cellHasAccordion(value) || (value instanceof MergedRowsCell && value.accordion);\n });\n\n if (foundCell) {\n this.cellName = foundCell[0];\n const value = foundCell[1];\n\n if (value instanceof MergedRowsCell && value.accordion) {\n if (Array.isArray(value.accordion)) {\n accordionRows = value.accordion;\n } else {\n accordionComponent = value.accordion;\n }\n } else if (this.cellHasAccordion(value)) {\n accordionComponent = value[ACCORDION];\n }\n }\n }\n\n this.setState({\n accordionRows,\n accordionComponent,\n });\n }\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.cellName);\n }\n };\n\n handleExpandRow = (row: DTRow<UniqKeyType>, index: number) => {\n const {\n accordionDuration,\n accordionMode,\n expandedRows,\n onExpandRow,\n setRowHeight,\n rowsHeightMap,\n calculateAriaRowIndex,\n accordionAnimationRows,\n } = this.asProps;\n const { expandedForAnimation } = this.state;\n const openDuration = Array.isArray(accordionDuration)\n ? accordionDuration[0]\n : accordionDuration ??\n (Array.isArray(row[ACCORDION]) ? Math.min(50 * row[ACCORDION].length, 200) : 200);\n const closeDuration = Array.isArray(accordionDuration)\n ? accordionDuration[1]\n : accordionDuration ??\n (Array.isArray(row[ACCORDION]) ? Math.min(50 * row[ACCORDION].length, 200) : 200);\n\n setTimeout(() => {\n setRowHeight(index, row);\n for (let i = index; i < rowsHeightMap.size; i++) {\n setRowHeight(i, row);\n }\n }, openDuration + 100); // we need to calculate after expanding animation\n\n if (expandedRows.has(row[UNIQ_ROW_KEY]) && expandedForAnimation === false) {\n this.closeAccordion(row, closeDuration);\n } else {\n if (expandedForAnimation === true && this.closeAccordionTimeout) {\n clearTimeout(this.closeAccordionTimeout);\n onExpandRow(row);\n\n this.setState({\n expandedForAnimation: false,\n }, calculateAriaRowIndex);\n }\n\n if (accordionMode === 'toggle' && expandedRows.size > 0) {\n const previousRows = new Map<UniqKeyType, DTRow<UniqKeyType>>();\n\n this.asProps.flatRows.forEach((row, index) => {\n if (expandedRows.has(row[UNIQ_ROW_KEY])) {\n previousRows.set(row[UNIQ_ROW_KEY], row);\n }\n });\n\n if (previousRows.size > 0) {\n [...previousRows.entries()].forEach(([uniqKey, previousRow]) => {\n if (!this.state.expandedForAnimation) {\n setTimeout(() => {\n this.asProps.componentsMap.get(uniqKey)?.closeAccordion(previousRow, closeDuration);\n }, openDuration / 3);\n }\n });\n }\n }\n onExpandRow(row);\n\n this.forceUpdate(this.asProps.calculateAriaRowIndex);\n\n if (this.state.accordionRows !== undefined) {\n const accordionRows = Array.isArray(row[ACCORDION]) ? row[ACCORDION] : [];\n\n let i = 0;\n\n const changeAccordionRows = () => {\n if (this.openAccordionTimeout) {\n clearTimeout(this.openAccordionTimeout);\n }\n\n const chunk = i === 0 ? accordionAnimationRows : 100;\n\n this.setState({ accordionRows: accordionRows.slice(0, i + chunk) }, () => {\n i = i + chunk;\n if (i < accordionRows.length) {\n this.openAccordionTimeout = window.setTimeout(() => {\n changeAccordionRows();\n }, openDuration);\n } else {\n this.asProps.calculateAriaRowIndex();\n }\n });\n };\n\n changeAccordionRows();\n }\n }\n };\n\n closeAccordion = (row: DTRow<UniqKeyType>, closeDuration: number) => {\n const { onExpandRow, calculateAriaRowIndex, accordionAnimationRows } = this.asProps;\n\n if (this.openAccordionTimeout) {\n clearTimeout(this.openAccordionTimeout);\n }\n\n this.setState((prevState) => {\n return {\n expandedForAnimation: true,\n accordionRows: prevState.accordionRows?.slice(0, accordionAnimationRows),\n };\n }, calculateAriaRowIndex);\n this.closeAccordionTimeout = window.setTimeout(() => {\n onExpandRow(row);\n\n this.setState({\n expandedForAnimation: false,\n }, calculateAriaRowIndex);\n }, closeDuration + 100); // we need to remove it from list of grid calculations after expanding animation\n };\n\n handleClickRow(row: DTRow<UniqKeyType>) {\n return (e: React.SyntheticEvent) => {\n const index = row[ROW_INDEX];\n\n if (!isInteractiveElement(e.target) && row[ACCORDION] && !this.asProps.mergedRow) {\n this.handleExpandRow(row, index);\n }\n };\n }\n\n handleClickCell = (e: React.SyntheticEvent<HTMLElement>, opt: { row: DTRow<UniqKeyType>; rowIndex: number }) => {\n if (!isInteractiveElement(e.target)) {\n this.handleExpandRow(opt.row, opt.rowIndex);\n }\n };\n\n getCellProps(props: DataTableCellProps<Data, UniqKeyType>) {\n const {\n use,\n renderCell,\n expandedRows,\n styles,\n getI18nText,\n virtualScroll,\n tableRef,\n onCellClick,\n rawData,\n shadowVertical,\n flatRows,\n variant,\n isAccordionRow,\n accordionRowIndex,\n selectedRows,\n theme,\n } = this.asProps;\n const SAccordionToggle = ButtonLink;\n\n let dataKey = props.column.name;\n const cellValue = props.row[dataKey];\n\n let value: DTValue | undefined = undefined;\n const isMergedRows = cellValue instanceof MergedRowsCell;\n const isMergedColumns = cellValue instanceof MergedColumnsCell;\n\n if (isMergedColumns || isMergedRows) {\n value = cellValue.value instanceof MergedRowsCell ? cellValue.value.value : cellValue.value;\n if (isMergedColumns) {\n dataKey = cellValue.dataKey;\n }\n } else {\n value = cellValue;\n }\n\n const defaultRender = () => {\n return React.isValidElement(value) ? value : value?.toString();\n };\n\n let withoutBorder = props.row[IS_EMPTY_DATA_ROW];\n\n if (variant === 'card') {\n const isLastRow = flatRows.length === props.rowIndex + 1;\n const isLastAccordionRow = props.accordionRowIndex !== undefined ? props.accordionRowIndex + 1 === props.rows.length : true;\n\n withoutBorder = isLastRow && isLastAccordionRow;\n }\n\n const extraProps: Record<string, any> = {\n use,\n virtualScroll: Boolean(virtualScroll),\n tableRef,\n children: props?.children ?? defaultRender(),\n onClick: onCellClick,\n flatRows: this.asProps.flatRows,\n shadowVertical,\n withoutBorder,\n theme,\n };\n\n if (renderCell) {\n let rowRawData = rawData[props.rowIndex];\n\n if (props.accordionRowIndex !== undefined && rowRawData[ACCORDION] && Array.isArray(rowRawData[ACCORDION])) {\n rowRawData = rowRawData[ACCORDION][props.accordionRowIndex];\n }\n\n const external = renderCell({\n columnName: props.column.name,\n row: props.row,\n column: props.column,\n rowIndex: props.rowIndex,\n columnIndex: props.columnIndex,\n dataKey,\n defaultRender,\n value: React.isValidElement(value) ? value : value?.toString() ?? '',\n isMergedRows,\n isMergedColumns,\n rawData: rowRawData,\n isAccordionRow: Boolean(isAccordionRow),\n accordionRowIndex,\n });\n\n if (this.isReactNode(external) || Array.isArray(external)) {\n extraProps.children = external;\n } else {\n for (const key in external) {\n if (key === 'onClick') {\n extraProps[key] = callAllEventHandlers(external[key], extraProps[key]);\n } else {\n extraProps[key] = external[key];\n }\n }\n }\n }\n\n const firstColumnIndex = selectedRows ? 1 : 0;\n\n if (\n (props.columnIndex === firstColumnIndex && props.row[ACCORDION]) ||\n value?.[ACCORDION] ||\n (cellValue instanceof MergedRowsCell && cellValue.accordion)\n ) {\n const expanded =\n expandedRows?.has(props.row[UNIQ_ROW_KEY]) &&\n !this.state.expandedForAnimation;\n\n extraProps.expanded = expanded;\n\n if (expanded) {\n extraProps.withoutBorder = false;\n }\n\n const row = props.row;\n const rowIndex = props.rowIndex;\n\n const handleClick = (e: React.SyntheticEvent<HTMLButtonElement>) => {\n this.handleExpandRow(row, rowIndex);\n };\n\n if (value?.[ACCORDION] || (cellValue instanceof MergedRowsCell && cellValue.accordion)) {\n extraProps.onClick = callAllEventHandlers(\n extraProps.onClick,\n this.handleClickCell,\n );\n }\n\n extraProps.children = sstyled(styles)(\n <>\n <SAccordionToggle\n aria-label={getI18nText('DataTable.Cell.AccordionToggle.expand:aria-label')}\n // @ts-ignore\n expanded={expanded && !this.state.expandedForAnimation}\n onClick={handleClick}\n color='--intergalactic-icon-primary-neutral'\n aria-expanded={expanded}\n aria-describedby={props.id}\n aria-controls={expanded ? props.accordionId : undefined}\n >\n <SAccordionToggle.Addon tag={ChevronRightM} />\n </SAccordionToggle>\n {extraProps.children}\n </>,\n );\n }\n\n return extraProps;\n }\n\n get isRowHidden() {\n const { rowIndex, limit } = this.asProps;\n const rowsLimit = limit?.fromRow;\n const columnsLimit = limit?.fromColumn;\n\n return rowsLimit !== undefined && !columnsLimit && rowIndex > rowsLimit\n ? true\n : undefined;\n }\n\n render() {\n const SRow = Root;\n const SCollapseRow = Collapse;\n const SCell = Row.Cell;\n const SCheckboxCell = Row.Cell;\n const {\n columns,\n row,\n rows,\n styles,\n rowIndex,\n gridRowIndex,\n 'aria-level': ariaLevel = 1,\n selectedRows,\n expandedRows,\n uid,\n getFixedStyle,\n mergedRow,\n isAccordionRow,\n accordionRowIndex,\n accordionDuration,\n use,\n shadowVertical,\n variant,\n flatRows,\n sideIndents,\n renderCell,\n rawData,\n limit,\n hasGroups,\n tableRef,\n scrollAreaRef,\n accordionAnimationRows,\n onCellClick,\n theme,\n } = this.asProps;\n\n const { expandedForAnimation, accordionRows, accordionComponent } = this.state;\n const expanded = expandedRows?.has(row[UNIQ_ROW_KEY]) && !expandedForAnimation;\n const accordionType = row[ACCORDION] && !mergedRow ? 'row' : undefined;\n\n let accordionDataGridArea = '';\n\n if (accordionRows || accordionComponent) {\n const rowIncrement = row[ROW_GROUP]?.size ? row[ROW_GROUP].size + 1 : 1;\n accordionDataGridArea = accordionRows\n ? `${gridRowIndex + rowIncrement} / 1 / ${gridRowIndex + rowIncrement + accordionRows.length} / ${\n columns.length + 1\n }`\n : `${gridRowIndex + rowIncrement} / 1 / ${gridRowIndex + rowIncrement} / ${columns.length + 1}`;\n }\n\n const rowUniqKey = row[UNIQ_ROW_KEY];\n const accordionId = `${uid}_${rowUniqKey}`;\n\n const rowsLimit = limit?.fromRow;\n const columnsLimit = limit?.fromColumn;\n\n const filledColumns = columns.reduce((acc, column) => {\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined = row[column.name];\n\n if (cellValue instanceof MergedColumnsCell) {\n acc = acc + cellValue.columnsCount;\n } else if (cellValue !== undefined) {\n acc++;\n }\n\n return acc;\n }, 0);\n\n return sstyled(styles)(\n <>\n <SRow\n ref={this.rowElementRef}\n render={Box}\n role='row'\n accordionType={accordionType}\n use:expanded={expanded && !mergedRow}\n onClick={this.handleClickRow(row)}\n aria-hidden={this.isRowHidden}\n data-filled-columns={filledColumns}\n >\n {columns.map((column, i) => {\n const index = i;\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined =\n row[column.name];\n\n const withAccordion = Boolean(cellValue instanceof MergedRowsCell && cellValue.accordion) ||\n this.cellHasAccordion(cellValue) || accordionType === 'row';\n\n let isCellHidden: true | undefined = undefined;\n\n if (limit) {\n if (rowsLimit !== undefined && columnsLimit !== undefined) {\n isCellHidden = rowIndex >= rowsLimit && i >= columnsLimit ? true : undefined;\n } else if (rowsLimit === undefined && columnsLimit !== undefined) {\n isCellHidden = rowIndex >= 0 && i >= columnsLimit ? true : undefined;\n } else if (rowsLimit !== undefined && columnsLimit === undefined) {\n isCellHidden = rowIndex >= rowsLimit ? true : undefined;\n }\n }\n\n if (selectedRows && i === 0 && row[IS_EMPTY_DATA_ROW] !== true) {\n const checked = selectedRows.includes(rowUniqKey);\n\n const nextColumnName = columns[i + 1].name;\n\n if (!(nextColumnName in row)) {\n return null;\n }\n\n return (\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 expanded={expanded}\n isAccordionRow={isAccordionRow}\n aria-hidden={isCellHidden}\n withAccordion={withAccordion}\n theme={theme}\n >\n <Checkbox\n checked={checked}\n aria-labelledby={`${uid}_${rowUniqKey}_1`}\n onChange={this.handleSelectRow}\n >\n <Checkbox.Value />\n </Checkbox>\n </SCheckboxCell>\n );\n }\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 <Row.Cell\n key={`${uid}_${rowUniqKey}_${index}`}\n id={`${uid}_${rowUniqKey}_${index}`}\n accordionId={accordionId}\n row={row}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n columnIndex={index}\n column={column}\n expanded={expanded}\n withAccordion={withAccordion}\n accordionRowIndex={accordionRowIndex}\n rows={rows}\n aria-hidden={isCellHidden}\n style={style}\n data-aria-level={index === 0 ? ariaLevel : undefined}\n />\n );\n })}\n {limit && (limit.fromRow ?? 0) === rowIndex && !isAccordionRow && (\n <LimitOverlay\n columns={columns}\n rows={rows}\n limit={limit}\n flatRows={flatRows}\n hasGroups={hasGroups}\n tableRef={tableRef}\n scrollAreaRef={scrollAreaRef}\n />\n )}\n </SRow>\n\n {React.isValidElement(accordionComponent) && (\n <SCollapseRow\n key={rowIndex}\n role='row'\n id={accordionId}\n visible={expanded}\n aria-hidden={!expanded}\n interactive\n gridArea={accordionDataGridArea}\n duration={accordionDuration ?? 200}\n sideIndents={sideIndents}\n data-filled-columns={filledColumns}\n >\n <SCell\n aria-colindex={1}\n aria-level={ariaLevel + 1}\n data-aria-level={1}\n aria-setsize={1}\n aria-posinset={1}\n accordionRowIndex={0}\n rowIndex={rowIndex}\n rows={[row]}\n row={row}\n columnIndex={0}\n // @ts-ignore\n column={{ name: ACCORDION }}\n w='100%'\n onKeyDown={this.handleBackFromAccordion}\n >\n {accordionComponent}\n </SCell>\n </SCollapseRow>\n )}\n\n {Array.isArray(accordionRows) && (\n <AccordionRows\n accordionId={accordionId}\n expanded={expanded}\n expandedForAnimation={expandedForAnimation}\n use={use}\n columns={columns}\n row={row}\n rows={accordionRows}\n flatRows={flatRows}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n accordionDuration={accordionDuration}\n accordionAnimationRows={accordionAnimationRows}\n getFixedStyle={getFixedStyle}\n rawData={rawData}\n aria-level={ariaLevel}\n tableRef={tableRef}\n shadowVertical={shadowVertical}\n variant={variant}\n limit={limit}\n renderCell={renderCell}\n sideIndents={sideIndents}\n onCellClick={onCellClick}\n />\n )}\n </>,\n );\n }\n\n private isReactNode(obj: React.ReactNode | Record<string, any>): obj is React.ReactNode {\n return (\n typeof obj === 'string' ||\n typeof obj === 'number' ||\n React.isValidElement(obj) ||\n typeof obj === 'boolean' ||\n obj === undefined ||\n obj === null\n );\n }\n}\n\nexport const Row = createComponent(RowRoot, {\n Cell,\n}) as DataTableRowType & {\n Cell: any;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Row.js","names":["_core","require","_baseComponents","_button","_checkbox","_interopRequireDefault","_assignProps2","_isInteractiveElement","_m","React","_interopRequireWildcard","_Cell","_LimitOverlay","_MergedCells","_AccordionRows","_DataTable","style","sstyled","insert","RowRoot","Component","constructor","props","_defineProperty2","default","createRef","expandedForAnimation","accordionRows","undefined","accordionComponent","value","event","row","rowIndex","onSelectRow","asProps","preventDefault","stopPropagation","e","key","onBackFromAccordion","cellName","index","accordionDuration","accordionMode","expandedRows","onExpandRow","setRowHeight","rowsHeightMap","calculateAriaRowIndex","accordionAnimationRows","state","openDuration","Array","isArray","ACCORDION","Math","min","length","closeDuration","setTimeout","i","size","has","UNIQ_ROW_KEY","closeAccordion","closeAccordionTimeout","clearTimeout","setState","previousRows","Map","flatRows","forEach","set","entries","uniqKey","previousRow","componentsMap","get","forceUpdate","changeAccordionRows","openAccordionTimeout","chunk","slice","window","prevState","opt","isInteractiveElement","target","handleExpandRow","handleClickRow","bind","componentDidMount","componentRef","setAccordion","componentDidUpdate","prevProps","componentWillUnmount","isValidElement","cells","Object","foundCell","find","cellHasAccordion","MergedRowsCell","accordion","cellValue","MergedColumnsCell","Boolean","ROW_INDEX","mergedRow","getCellProps","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","theme","SAccordionToggle","ButtonLink","dataKey","column","name","isMergedRows","isMergedColumns","defaultRender","toString","withoutBorder","IS_EMPTY_DATA_ROW","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","rowRawData","external","columnName","columnIndex","isReactNode","callAllEventHandlers","firstColumnIndex","_ref2","expanded","handleClick","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","ChevronRightM","isRowHidden","limit","rowsLimit","fromRow","columnsLimit","fromColumn","render","_ref","_ref3","SRow","Box","SCollapseRow","Collapse","SCell","Row","Cell","SCheckboxCell","columns","gridRowIndex","ariaLevel","uid","getFixedStyle","sideIndents","hasGroups","scrollAreaRef","accordionType","accordionDataGridArea","rowIncrement","ROW_GROUP","rowUniqKey","filledColumns","reduce","acc","columnsCount","assignProps","rowElementRef","map","withAccordion","isCellHidden","checked","includes","nextColumnName","SELECT_ALL","handleClickCheckbox","onChange","handleSelectRow","Value","fixed","LimitOverlay","handleBackFromAccordion","AccordionRows","obj","exports","createComponent"],"sources":["../../../../src/components/Body/Row.tsx"],"sourcesContent":["import { Box, Collapse } from '@semcore/base-components';\nimport { ButtonLink } from '@semcore/button';\nimport Checkbox from '@semcore/checkbox';\nimport { Component, Root, sstyled, createComponent } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { isInteractiveElement } from '@semcore/core/lib/utils/isInteractiveElement';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport * as React from 'react';\n\nimport { Cell } from './Cell';\nimport type { DataTableCellProps } from './Cell.types';\nimport { LimitOverlay } from './LimitOverlay';\nimport { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport type { DataTableRowProps, DataTableRowType, DTRow, DTRows, RowPropsInner } from './Row.types';\nimport style from './style.shadow.css';\nimport { AccordionRows } from '../AccordionRows/AccordionRows';\nimport { ACCORDION, IS_EMPTY_DATA_ROW, ROW_GROUP, ROW_INDEX, SELECT_ALL, UNIQ_ROW_KEY } from '../DataTable/DataTable';\nimport type { DataTableData, DTValue } from '../DataTable/DataTable.types';\n\ntype State<UniqKeyType> = {\n expandedForAnimation: boolean;\n accordionRows?: DTRows<UniqKeyType>;\n accordionComponent?: React.ReactNode;\n};\n\nexport class RowRoot<Data extends DataTableData, UniqKeyType> extends Component<DataTableRowProps<Data, UniqKeyType>, [], {}, RowPropsInner<Data, UniqKeyType>, State<UniqKeyType>> {\n static displayName = 'Row';\n static style = style;\n\n static defaultProps = {\n 'aria-level': undefined,\n };\n\n private cellName: string = '';\n private closeAccordionTimeout = 0;\n private openAccordionTimeout = 0;\n\n rowElementRef = React.createRef<HTMLDivElement>();\n\n state: State<UniqKeyType> = {\n expandedForAnimation: false,\n accordionRows: undefined,\n accordionComponent: undefined,\n };\n\n constructor(props: DataTableRowProps<Data, UniqKeyType>) {\n super(props);\n\n this.handleClickRow = this.handleClickRow.bind(this);\n }\n\n componentDidMount() {\n this.asProps.componentRef?.(this);\n\n this.setAccordion();\n }\n\n componentDidUpdate(prevProps: DataTableRowProps<Data, UniqKeyType>) {\n const { row } = this.asProps;\n\n if (prevProps.row !== row) {\n this.setAccordion();\n }\n }\n\n componentWillUnmount() {\n this.asProps.componentRef?.(null);\n }\n\n setAccordion() {\n const { row } = this.asProps;\n\n let accordionRows = Array.isArray(row[ACCORDION]) ? row[ACCORDION] : undefined;\n let accordionComponent: React.ReactNode = React.isValidElement(row[ACCORDION]) ? row[ACCORDION] : undefined;\n\n if (!accordionRows && !accordionComponent) {\n const cells = Object.entries(row);\n const foundCell = cells.find(([key, value]) => {\n return this.cellHasAccordion(value) || (value instanceof MergedRowsCell && value.accordion);\n });\n\n if (foundCell) {\n this.cellName = foundCell[0];\n const value = foundCell[1];\n\n if (value instanceof MergedRowsCell && value.accordion) {\n if (Array.isArray(value.accordion)) {\n accordionRows = value.accordion;\n } else {\n accordionComponent = value.accordion;\n }\n } else if (this.cellHasAccordion(value)) {\n accordionComponent = value[ACCORDION];\n }\n }\n }\n\n this.setState({\n accordionRows,\n accordionComponent,\n });\n }\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.cellName);\n }\n };\n\n handleExpandRow = (row: DTRow<UniqKeyType>, index: number) => {\n const {\n accordionDuration,\n accordionMode,\n expandedRows,\n onExpandRow,\n setRowHeight,\n rowsHeightMap,\n calculateAriaRowIndex,\n accordionAnimationRows,\n } = this.asProps;\n const { expandedForAnimation } = this.state;\n const openDuration = Array.isArray(accordionDuration)\n ? accordionDuration[0]\n : accordionDuration ??\n (Array.isArray(row[ACCORDION]) ? Math.min(50 * row[ACCORDION].length, 200) : 200);\n const closeDuration = Array.isArray(accordionDuration)\n ? accordionDuration[1]\n : accordionDuration ??\n (Array.isArray(row[ACCORDION]) ? Math.min(50 * row[ACCORDION].length, 200) : 200);\n\n setTimeout(() => {\n setRowHeight(index, row);\n for (let i = index; i < rowsHeightMap.size; i++) {\n setRowHeight(i, row);\n }\n }, openDuration + 100); // we need to calculate after expanding animation\n\n if (expandedRows.has(row[UNIQ_ROW_KEY]) && expandedForAnimation === false) {\n this.closeAccordion(row, closeDuration);\n } else {\n if (expandedForAnimation === true && this.closeAccordionTimeout) {\n clearTimeout(this.closeAccordionTimeout);\n onExpandRow(row);\n\n this.setState({\n expandedForAnimation: false,\n }, calculateAriaRowIndex);\n }\n\n if (accordionMode === 'toggle' && expandedRows.size > 0) {\n const previousRows = new Map<UniqKeyType, DTRow<UniqKeyType>>();\n\n this.asProps.flatRows.forEach((row, index) => {\n if (expandedRows.has(row[UNIQ_ROW_KEY])) {\n previousRows.set(row[UNIQ_ROW_KEY], row);\n }\n });\n\n if (previousRows.size > 0) {\n [...previousRows.entries()].forEach(([uniqKey, previousRow]) => {\n if (!this.state.expandedForAnimation) {\n setTimeout(() => {\n this.asProps.componentsMap.get(uniqKey)?.closeAccordion(previousRow, closeDuration);\n }, openDuration / 3);\n }\n });\n }\n }\n onExpandRow(row);\n\n this.forceUpdate(this.asProps.calculateAriaRowIndex);\n\n if (this.state.accordionRows !== undefined) {\n const accordionRows = Array.isArray(row[ACCORDION]) ? row[ACCORDION] : [];\n\n let i = 0;\n\n const changeAccordionRows = () => {\n if (this.openAccordionTimeout) {\n clearTimeout(this.openAccordionTimeout);\n }\n\n const chunk = i === 0 ? accordionAnimationRows : 100;\n\n this.setState({ accordionRows: accordionRows.slice(0, i + chunk) }, () => {\n i = i + chunk;\n if (i < accordionRows.length) {\n this.openAccordionTimeout = window.setTimeout(() => {\n changeAccordionRows();\n }, openDuration);\n } else {\n this.asProps.calculateAriaRowIndex();\n }\n });\n };\n\n changeAccordionRows();\n }\n }\n };\n\n closeAccordion = (row: DTRow<UniqKeyType>, closeDuration: number) => {\n const { onExpandRow, calculateAriaRowIndex, accordionAnimationRows } = this.asProps;\n\n if (this.openAccordionTimeout) {\n clearTimeout(this.openAccordionTimeout);\n }\n\n this.setState((prevState) => {\n return {\n expandedForAnimation: true,\n accordionRows: prevState.accordionRows?.slice(0, accordionAnimationRows),\n };\n }, calculateAriaRowIndex);\n this.closeAccordionTimeout = window.setTimeout(() => {\n onExpandRow(row);\n\n this.setState({\n expandedForAnimation: false,\n }, calculateAriaRowIndex);\n }, closeDuration + 100); // we need to remove it from list of grid calculations after expanding animation\n };\n\n handleClickRow(row: DTRow<UniqKeyType>) {\n return (e: React.SyntheticEvent) => {\n const index = row[ROW_INDEX];\n\n if (!isInteractiveElement(e.target) && row[ACCORDION] && !this.asProps.mergedRow) {\n this.handleExpandRow(row, index);\n }\n };\n }\n\n handleClickCell = (e: React.SyntheticEvent<HTMLElement>, opt: { row: DTRow<UniqKeyType>; rowIndex: number }) => {\n if (!isInteractiveElement(e.target)) {\n this.handleExpandRow(opt.row, opt.rowIndex);\n }\n };\n\n getCellProps(props: DataTableCellProps<Data, UniqKeyType>) {\n const {\n use,\n renderCell,\n expandedRows,\n styles,\n getI18nText,\n virtualScroll,\n tableRef,\n onCellClick,\n rawData,\n shadowVertical,\n flatRows,\n variant,\n isAccordionRow,\n accordionRowIndex,\n selectedRows,\n theme,\n } = this.asProps;\n const SAccordionToggle = ButtonLink;\n\n let dataKey = props.column.name;\n const cellValue = props.row[dataKey];\n\n let value: DTValue | undefined = undefined;\n const isMergedRows = cellValue instanceof MergedRowsCell;\n const isMergedColumns = cellValue instanceof MergedColumnsCell;\n\n if (isMergedColumns || isMergedRows) {\n value = cellValue.value instanceof MergedRowsCell ? cellValue.value.value : cellValue.value;\n if (isMergedColumns) {\n dataKey = cellValue.dataKey;\n }\n } else {\n value = cellValue;\n }\n\n const defaultRender = () => {\n return React.isValidElement(value) ? value : value?.toString();\n };\n\n let withoutBorder = props.row[IS_EMPTY_DATA_ROW];\n\n if (variant === 'card') {\n const isLastRow = flatRows.length === props.rowIndex + 1;\n const isLastAccordionRow = props.accordionRowIndex !== undefined ? props.accordionRowIndex + 1 === props.rows.length : true;\n\n withoutBorder = isLastRow && isLastAccordionRow;\n }\n\n const extraProps: Record<string, any> = {\n use,\n virtualScroll: Boolean(virtualScroll),\n tableRef,\n children: props?.children ?? defaultRender(),\n onClick: onCellClick,\n flatRows: this.asProps.flatRows,\n shadowVertical,\n withoutBorder,\n theme,\n };\n\n if (renderCell) {\n let rowRawData = rawData[props.rowIndex];\n\n if (props.accordionRowIndex !== undefined && rowRawData[ACCORDION] && Array.isArray(rowRawData[ACCORDION])) {\n rowRawData = rowRawData[ACCORDION][props.accordionRowIndex];\n }\n\n const external = renderCell({\n columnName: props.column.name,\n row: props.row,\n column: props.column,\n rowIndex: props.rowIndex,\n columnIndex: props.columnIndex,\n dataKey,\n defaultRender,\n value: React.isValidElement(value) ? value : value?.toString() ?? '',\n isMergedRows,\n isMergedColumns,\n rawData: rowRawData,\n isAccordionRow: Boolean(isAccordionRow),\n accordionRowIndex,\n });\n\n if (this.isReactNode(external) || Array.isArray(external)) {\n extraProps.children = external;\n } else {\n for (const key in external) {\n if (key === 'onClick') {\n extraProps[key] = callAllEventHandlers(external[key], extraProps[key]);\n } else {\n extraProps[key] = external[key];\n }\n }\n }\n }\n\n const firstColumnIndex = selectedRows ? 1 : 0;\n\n if (\n (props.columnIndex === firstColumnIndex && props.row[ACCORDION]) ||\n value?.[ACCORDION] ||\n (cellValue instanceof MergedRowsCell && cellValue.accordion)\n ) {\n const expanded =\n expandedRows?.has(props.row[UNIQ_ROW_KEY]) &&\n !this.state.expandedForAnimation;\n\n extraProps.expanded = expanded;\n\n if (expanded) {\n extraProps.withoutBorder = false;\n }\n\n const row = props.row;\n const rowIndex = props.rowIndex;\n\n const handleClick = (e: React.SyntheticEvent<HTMLButtonElement>) => {\n this.handleExpandRow(row, rowIndex);\n };\n\n if (value?.[ACCORDION] || (cellValue instanceof MergedRowsCell && cellValue.accordion)) {\n extraProps.onClick = callAllEventHandlers(\n extraProps.onClick,\n this.handleClickCell,\n );\n }\n\n extraProps.children = sstyled(styles)(\n <>\n <SAccordionToggle\n aria-label={getI18nText('DataTable.Cell.AccordionToggle.expand:aria-label')}\n // @ts-ignore\n expanded={expanded && !this.state.expandedForAnimation}\n onClick={handleClick}\n color='--intergalactic-icon-primary-neutral'\n aria-expanded={expanded}\n aria-describedby={props.id}\n aria-controls={expanded ? props.accordionId : undefined}\n >\n <SAccordionToggle.Addon tag={ChevronRightM} />\n </SAccordionToggle>\n {extraProps.children}\n </>,\n );\n }\n\n return extraProps;\n }\n\n get isRowHidden() {\n const { rowIndex, limit } = this.asProps;\n const rowsLimit = limit?.fromRow;\n const columnsLimit = limit?.fromColumn;\n\n return rowsLimit !== undefined && !columnsLimit && rowIndex > rowsLimit\n ? true\n : undefined;\n }\n\n render() {\n const SRow = Root;\n const SCollapseRow = Collapse;\n const SCell = Row.Cell;\n const SCheckboxCell = Row.Cell;\n const {\n columns,\n row,\n rows,\n styles,\n rowIndex,\n gridRowIndex,\n 'aria-level': ariaLevel = 1,\n selectedRows,\n expandedRows,\n uid,\n getFixedStyle,\n mergedRow,\n isAccordionRow,\n accordionRowIndex,\n accordionDuration,\n use,\n shadowVertical,\n variant,\n flatRows,\n sideIndents,\n renderCell,\n rawData,\n limit,\n hasGroups,\n tableRef,\n scrollAreaRef,\n accordionAnimationRows,\n onCellClick,\n theme,\n } = this.asProps;\n\n const { expandedForAnimation, accordionRows, accordionComponent } = this.state;\n const expanded = expandedRows?.has(row[UNIQ_ROW_KEY]) && !expandedForAnimation;\n const accordionType = row[ACCORDION] && !mergedRow ? 'row' : undefined;\n\n let accordionDataGridArea = '';\n\n if (accordionRows || accordionComponent) {\n const rowIncrement = row[ROW_GROUP]?.size ? row[ROW_GROUP].size + 1 : 1;\n accordionDataGridArea = accordionRows\n ? `${gridRowIndex + rowIncrement} / 1 / ${gridRowIndex + rowIncrement + accordionRows.length} / ${\n columns.length + 1\n }`\n : `${gridRowIndex + rowIncrement} / 1 / ${gridRowIndex + rowIncrement} / ${columns.length + 1}`;\n }\n\n const rowUniqKey = row[UNIQ_ROW_KEY];\n const accordionId = `${uid}_${rowUniqKey}`;\n\n const rowsLimit = limit?.fromRow;\n const columnsLimit = limit?.fromColumn;\n\n const filledColumns = columns.reduce((acc, column) => {\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined = row[column.name];\n\n if (cellValue instanceof MergedColumnsCell) {\n acc = acc + cellValue.columnsCount;\n } else if (cellValue !== undefined) {\n acc++;\n }\n\n return acc;\n }, 0);\n\n return sstyled(styles)(\n <>\n <SRow\n ref={this.rowElementRef}\n render={Box}\n role='row'\n accordionType={accordionType}\n use:expanded={expanded && !mergedRow}\n onClick={this.handleClickRow(row)}\n aria-hidden={this.isRowHidden}\n data-filled-columns={filledColumns}\n >\n {columns.map((column, i) => {\n const index = i;\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined =\n row[column.name];\n\n const withAccordion = Boolean(cellValue instanceof MergedRowsCell && cellValue.accordion) ||\n this.cellHasAccordion(cellValue) || accordionType === 'row';\n\n let isCellHidden: true | undefined = undefined;\n\n if (limit) {\n if (rowsLimit !== undefined && columnsLimit !== undefined) {\n isCellHidden = rowIndex >= rowsLimit && i >= columnsLimit ? true : undefined;\n } else if (rowsLimit === undefined && columnsLimit !== undefined) {\n isCellHidden = rowIndex >= 0 && i >= columnsLimit ? true : undefined;\n } else if (rowsLimit !== undefined && columnsLimit === undefined) {\n isCellHidden = rowIndex >= rowsLimit ? true : undefined;\n }\n }\n\n if (selectedRows && i === 0 && row[IS_EMPTY_DATA_ROW] !== true) {\n const checked = selectedRows.includes(rowUniqKey);\n\n const nextColumnName = columns[i + 1].name;\n\n if (!(nextColumnName in row)) {\n return null;\n }\n\n return (\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 expanded={expanded}\n isAccordionRow={isAccordionRow}\n aria-hidden={isCellHidden}\n withAccordion={withAccordion}\n theme={theme}\n >\n <Checkbox\n checked={checked}\n aria-labelledby={`${uid}_${rowUniqKey}_1`}\n onChange={this.handleSelectRow}\n >\n <Checkbox.Value />\n </Checkbox>\n </SCheckboxCell>\n );\n }\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 <Row.Cell\n key={`${uid}_${rowUniqKey}_${index}`}\n id={`${uid}_${rowUniqKey}_${index}`}\n accordionId={accordionId}\n row={row}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n columnIndex={index}\n column={column}\n expanded={expanded}\n withAccordion={withAccordion}\n accordionRowIndex={accordionRowIndex}\n rows={rows}\n aria-hidden={isCellHidden}\n style={style}\n data-aria-level={index === 0 ? ariaLevel : undefined}\n />\n );\n })}\n {limit && (limit.fromRow ?? 0) === rowIndex && !isAccordionRow && (\n <LimitOverlay\n columns={columns}\n rows={rows}\n limit={limit}\n flatRows={flatRows}\n hasGroups={hasGroups}\n tableRef={tableRef}\n scrollAreaRef={scrollAreaRef}\n />\n )}\n </SRow>\n\n {React.isValidElement(accordionComponent) && (\n <SCollapseRow\n key={rowIndex}\n role='row'\n id={accordionId}\n visible={expanded}\n aria-hidden={!expanded}\n // @ts-ignore\n interactive\n gridArea={accordionDataGridArea}\n duration={accordionDuration ?? 200}\n sideIndents={sideIndents}\n data-filled-columns={filledColumns}\n >\n <SCell\n aria-colindex={1}\n aria-level={ariaLevel + 1}\n data-aria-level={1}\n aria-setsize={1}\n aria-posinset={1}\n accordionRowIndex={0}\n rowIndex={rowIndex}\n rows={[row]}\n row={row}\n columnIndex={0}\n // @ts-ignore\n column={{ name: ACCORDION }}\n w='100%'\n onKeyDown={this.handleBackFromAccordion}\n >\n {accordionComponent}\n </SCell>\n </SCollapseRow>\n )}\n\n {Array.isArray(accordionRows) && (\n <AccordionRows\n accordionId={accordionId}\n expanded={expanded}\n expandedForAnimation={expandedForAnimation}\n use={use}\n columns={columns}\n row={row}\n rows={accordionRows}\n flatRows={flatRows}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n accordionDuration={accordionDuration}\n accordionAnimationRows={accordionAnimationRows}\n getFixedStyle={getFixedStyle}\n rawData={rawData}\n aria-level={ariaLevel}\n tableRef={tableRef}\n shadowVertical={shadowVertical}\n variant={variant}\n limit={limit}\n renderCell={renderCell}\n sideIndents={sideIndents}\n onCellClick={onCellClick}\n />\n )}\n </>,\n );\n }\n\n private isReactNode(obj: React.ReactNode | Record<string, any>): obj is React.ReactNode {\n return (\n typeof obj === 'string' ||\n typeof obj === 'number' ||\n React.isValidElement(obj) ||\n typeof obj === 'boolean' ||\n obj === undefined ||\n obj === null\n );\n }\n}\n\nexport const Row = createComponent(RowRoot, {\n Cell,\n}) as unknown as DataTableRowType & {\n Cell: any;\n};\n"],"mappings":"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","ignoreList":[]}