@semcore/data-table 16.5.3 → 17.0.0-prerelease.18

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":["Box","Collapse","ButtonLink","Checkbox","Component","Root","sstyled","createComponent","callAllEventHandlers","isInteractiveElement","ChevronRightM","React","Cell","LimitOverlay","MergedColumnsCell","MergedRowsCell","style","_sstyled","insert","AccordionRows","ACCORDION","IS_EMPTY_DATA_ROW","ROW_GROUP","ROW_INDEX","SELECT_ALL","UNIQ_ROW_KEY","RowRoot","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","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","Math","min","length","closeDuration","setTimeout","i","size","has","closeAccordion","closeAccordionTimeout","clearTimeout","setState","previousRows","Map","flatRows","forEach","set","_toConsumableArray","entries","_ref4","_ref5","_slicedToArray","uniqKey","previousRow","_this$asProps$compone","componentsMap","get","forceUpdate","changeAccordionRows","openAccordionTimeout","chunk","slice","window","_this$asProps4","prevState","_prevState$accordionR","opt","target","handleExpandRow","handleClickRow","bind","_inherits","_createClass","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","accordion","cellValue","Boolean","_this3","mergedRow","getCellProps","_props$children","_value3","_this4","_this$asProps7","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","theme","SAccordionToggle","dataKey","column","name","isMergedRows","isMergedColumns","defaultRender","_value","toString","withoutBorder","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","_value$toString","_value2","rowRawData","external","columnName","columnIndex","isReactNode","firstColumnIndex","_ref2","_value4","expanded","handleClick","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","_this$asProps8","limit","rowsLimit","fromRow","columnsLimit","fromColumn","render","_ref","_ref3","_this5","_limit$fromRow","SRow","SCollapseRow","SCell","Row","SCheckboxCell","_this$asProps9","columns","gridRowIndex","_this$asProps9$ariaL","ariaLevel","uid","getFixedStyle","sideIndents","hasGroups","scrollAreaRef","_this$state","accordionType","accordionDataGridArea","_row$ROW_GROUP","rowIncrement","concat","rowUniqKey","filledColumns","reduce","acc","columnsCount","_objectSpread","_assignProps","rowElementRef","isRowHidden","map","withAccordion","isCellHidden","checked","includes","nextColumnName","handleClickCheckbox","onChange","handleSelectRow","Value","fixed","_getFixedStyle","_getFixedStyle2","handleBackFromAccordion","obj"],"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":["Box","Collapse","ButtonLink","Checkbox","Component","Root","sstyled","createComponent","callAllEventHandlers","isInteractiveElement","ChevronRightM","React","Cell","LimitOverlay","MergedColumnsCell","MergedRowsCell","style","_sstyled","insert","AccordionRows","ACCORDION","IS_EMPTY_DATA_ROW","ROW_GROUP","ROW_INDEX","SELECT_ALL","UNIQ_ROW_KEY","RowRoot","constructor","props","_defineProperty","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","Math","min","length","closeDuration","setTimeout","i","size","has","closeAccordion","closeAccordionTimeout","clearTimeout","setState","previousRows","Map","flatRows","forEach","set","entries","uniqKey","previousRow","componentsMap","get","forceUpdate","changeAccordionRows","openAccordionTimeout","chunk","slice","window","prevState","opt","target","handleExpandRow","handleClickRow","bind","componentDidMount","componentRef","setAccordion","componentDidUpdate","prevProps","componentWillUnmount","isValidElement","cells","Object","foundCell","find","cellHasAccordion","accordion","cellValue","Boolean","mergedRow","getCellProps","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","theme","SAccordionToggle","dataKey","column","name","isMergedRows","isMergedColumns","defaultRender","toString","withoutBorder","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","rowRawData","external","columnName","columnIndex","isReactNode","firstColumnIndex","_ref2","expanded","handleClick","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","isRowHidden","limit","rowsLimit","fromRow","columnsLimit","fromColumn","render","_ref","_ref3","SRow","SCollapseRow","SCell","Row","SCheckboxCell","columns","gridRowIndex","ariaLevel","uid","getFixedStyle","sideIndents","hasGroups","scrollAreaRef","accordionType","accordionDataGridArea","rowIncrement","rowUniqKey","filledColumns","reduce","acc","columnsCount","_assignProps","rowElementRef","map","withAccordion","isCellHidden","checked","includes","nextColumnName","handleClickCheckbox","onChange","handleSelectRow","Value","fixed","handleBackFromAccordion","obj"],"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":[]}