@semcore/data-table 16.4.0 → 16.4.2-prerelease.3

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 (69) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/cjs/components/AccordionRows/AccordionRows.js +176 -0
  3. package/lib/cjs/components/AccordionRows/AccordionRows.js.map +1 -0
  4. package/lib/cjs/components/Body/Body.js +128 -114
  5. package/lib/cjs/components/Body/Body.js.map +1 -1
  6. package/lib/cjs/components/Body/Body.types.js.map +1 -1
  7. package/lib/cjs/components/Body/Cell.js +63 -104
  8. package/lib/cjs/components/Body/Cell.js.map +1 -1
  9. package/lib/cjs/components/Body/Cell.types.js.map +1 -1
  10. package/lib/cjs/components/Body/LimitOverlay.js +55 -53
  11. package/lib/cjs/components/Body/LimitOverlay.js.map +1 -1
  12. package/lib/cjs/components/Body/Row.js +218 -236
  13. package/lib/cjs/components/Body/Row.js.map +1 -1
  14. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  15. package/lib/cjs/components/Body/style.shadow.css +32 -8
  16. package/lib/cjs/components/DataTable/DataTable.js +41 -31
  17. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  18. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  19. package/lib/cjs/components/Head/Column.js +36 -36
  20. package/lib/cjs/components/Head/Column.types.js.map +1 -1
  21. package/lib/cjs/components/Head/Group.js +36 -36
  22. package/lib/cjs/components/Head/Head.js +36 -36
  23. package/lib/cjs/components/Head/Head.types.js.map +1 -1
  24. package/lib/cjs/enhancers/focusableCell.js +15 -5
  25. package/lib/cjs/enhancers/focusableCell.js.map +1 -1
  26. package/lib/es6/components/AccordionRows/AccordionRows.js +170 -0
  27. package/lib/es6/components/AccordionRows/AccordionRows.js.map +1 -0
  28. package/lib/es6/components/Body/Body.js +128 -114
  29. package/lib/es6/components/Body/Body.js.map +1 -1
  30. package/lib/es6/components/Body/Body.types.js.map +1 -1
  31. package/lib/es6/components/Body/Cell.js +64 -105
  32. package/lib/es6/components/Body/Cell.js.map +1 -1
  33. package/lib/es6/components/Body/Cell.types.js.map +1 -1
  34. package/lib/es6/components/Body/LimitOverlay.js +55 -53
  35. package/lib/es6/components/Body/LimitOverlay.js.map +1 -1
  36. package/lib/es6/components/Body/Row.js +218 -236
  37. package/lib/es6/components/Body/Row.js.map +1 -1
  38. package/lib/es6/components/Body/Row.types.js.map +1 -1
  39. package/lib/es6/components/Body/style.shadow.css +32 -8
  40. package/lib/es6/components/DataTable/DataTable.js +41 -31
  41. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  42. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  43. package/lib/es6/components/Head/Column.js +36 -36
  44. package/lib/es6/components/Head/Column.types.js.map +1 -1
  45. package/lib/es6/components/Head/Group.js +36 -36
  46. package/lib/es6/components/Head/Head.js +36 -36
  47. package/lib/es6/components/Head/Head.types.js.map +1 -1
  48. package/lib/es6/enhancers/focusableCell.js +15 -5
  49. package/lib/es6/enhancers/focusableCell.js.map +1 -1
  50. package/lib/esm/components/AccordionRows/AccordionRows.mjs +155 -0
  51. package/lib/esm/components/Body/Body.mjs +84 -70
  52. package/lib/esm/components/Body/Cell.mjs +58 -88
  53. package/lib/esm/components/Body/LimitOverlay.mjs +56 -54
  54. package/lib/esm/components/Body/Row.mjs +171 -189
  55. package/lib/esm/components/Body/style.shadow.css +32 -8
  56. package/lib/esm/components/DataTable/DataTable.mjs +42 -33
  57. package/lib/esm/components/Head/Column.mjs +37 -37
  58. package/lib/esm/components/Head/Group.mjs +37 -37
  59. package/lib/esm/components/Head/Head.mjs +37 -37
  60. package/lib/esm/enhancers/focusableCell.mjs +15 -5
  61. package/lib/types/components/AccordionRows/AccordionRows.d.ts +39 -0
  62. package/lib/types/components/Body/Body.types.d.ts +5 -4
  63. package/lib/types/components/Body/Cell.types.d.ts +6 -11
  64. package/lib/types/components/Body/Row.d.ts +10 -10
  65. package/lib/types/components/Body/Row.types.d.ts +9 -9
  66. package/lib/types/components/DataTable/DataTable.types.d.ts +6 -1
  67. package/lib/types/components/Head/Column.types.d.ts +2 -2
  68. package/lib/types/components/Head/Head.types.d.ts +2 -2
  69. package/package.json +22 -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","ACCORDION","IS_EMPTY_DATA_ROW","ROW_GROUP","ROW_INDEX","SELECT_ALL","UNIQ_ROW_KEY","RowRoot","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","createRef","expandedForAnimation","calculatedHeight","withAnimation","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","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","_this$asProps4","window","opt","target","handleExpandRow","handleClickRow","bind","_inherits","_createClass","componentDidMount","_this$asProps$compone2","_this$asProps5","componentRef","call","animationExpand","rowElementRef","current","height","calculateRowHeight","componentDidUpdate","prevProps","_this$asProps6","componentWillUnmount","_this$asProps$compone3","_this$asProps7","cellHasAccordion","cellValue","Boolean","_this2","mergedRow","getCellProps","_props$children","_value3","_this3","_this$asProps8","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","SAccordionToggle","dataKey","column","name","undefined","isMergedRows","isMergedColumns","defaultRender","_value","isValidElement","toString","withoutBorder","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","_value$toString","_value2","rowRawData","external","columnName","columnIndex","isReactNode","firstColumnIndex","accordion","_ref2","_value4","expanded","handleClick","colIndex","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","_this$asProps9","limit","rowsLimit","fromRow","columnsLimit","fromColumn","render","_ref","_ref3","_this4","_limit$fromRow","SRow","SCollapseRow","SAccordionRows","SCell","Row","SCheckboxCell","_this$asProps0","columns","gridRowIndex","_this$asProps0$ariaL","ariaLevel","uid","getFixedStyle","sideIndents","hasGroups","scrollAreaRef","_this$state","accordionRows","accordionComponent","accordionType","cells","Object","foundCell","find","_ref6","_ref7","accordionDataGridArea","_row$ROW_GROUP","rowIncrement","concat","rowUniqKey","_objectSpread","_assignProps","includes","isRowHidden","map","withAccordion","isCellHidden","checked","handleClickCheckbox","onChange","handleSelectRow","Value","fixed","_getFixedStyle","_getFixedStyle2","handleBackFromAccordion","subrow","accordionIndex","obj","rowElement","accordionFull","cloneNode","HTMLElement","columnsWidth","from","push","getBoundingClientRect","width","display","position","visibility","gridTemplateColumns","join","child","document","body","appendChild","removeChild"],"sources":["../../../../src/components/Body/Row.tsx"],"sourcesContent":["import { Box, Collapse, Flex } 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, DataTableCellType } 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 { 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 = {\n expandedForAnimation: boolean;\n calculatedHeight: number;\n withAnimation: boolean;\n};\n\nexport class RowRoot<Data extends DataTableData, UniqKeyType> extends Component<DataTableRowProps<Data, UniqKeyType>, {}, State, [], 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\n rowElementRef = React.createRef<HTMLDivElement>();\n\n state: State = {\n expandedForAnimation: false,\n calculatedHeight: 0,\n withAnimation: true,\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 const { animationExpand } = this.asProps;\n\n if (animationExpand && this.rowElementRef.current) {\n const height = this.calculateRowHeight(this.rowElementRef.current);\n\n this.setState({ calculatedHeight: height });\n }\n }\n\n componentDidUpdate(prevProps: DataTableRowProps<Data, UniqKeyType>) {\n const { animationExpand, row } = this.asProps;\n if (animationExpand && prevProps.row !== row && this.rowElementRef.current) {\n const height = this.calculateRowHeight(this.rowElementRef.current);\n\n this.setState({ calculatedHeight: height, withAnimation: false });\n }\n if (prevProps.animationExpand !== animationExpand && animationExpand === false) {\n this.setState({ withAnimation: true });\n }\n }\n\n componentWillUnmount() {\n this.asProps.componentRef?.(null);\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 { accordionDuration, accordionMode, expandedRows, onExpandRow, setRowHeight, rowsHeightMap, calculateAriaRowIndex } = 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 };\n\n closeAccordion = (row: DTRow<UniqKeyType>, closeDuration: number) => {\n const { onExpandRow, calculateAriaRowIndex } = this.asProps;\n\n this.setState({\n expandedForAnimation: true,\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<UniqKeyType>) {\n const {\n use,\n renderCell,\n expandedRows,\n styles,\n getI18nText,\n virtualScroll,\n tableRef,\n accordionDuration,\n onCellClick,\n rawData,\n shadowVertical,\n flatRows,\n variant,\n isAccordionRow,\n accordionRowIndex,\n selectedRows,\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;\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 accordionDuration,\n onClick: onCellClick,\n flatRows: this.asProps.flatRows,\n shadowVertical,\n withoutBorder,\n calculatedHeight: this.state.calculatedHeight,\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 e.stopPropagation();\n onCellClick(e, { colIndex: props.columnIndex, rowIndex, row });\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 SAccordionRows = Box;\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 animationExpand,\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 } = this.asProps;\n\n const { expandedForAnimation, withAnimation } = this.state;\n\n const expanded = expandedRows?.has(row[UNIQ_ROW_KEY]) && !expandedForAnimation;\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 const accordionType = (accordionRows || accordionComponent) && !mergedRow ? 'row' : 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 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 return sstyled(styles)(\n <>\n <SRow\n ref={this.rowElementRef}\n render={Box}\n role='row'\n accordionType={accordionType}\n theme={selectedRows?.includes(rowUniqKey) ? 'info' : undefined}\n use:expanded={expanded && !mergedRow}\n onClick={this.handleClickRow(row)}\n withAnimation={withAnimation}\n aria-hidden={this.isRowHidden}\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 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 withAccordion={withAccordion}\n isAccordionRow={isAccordionRow}\n aria-hidden={isCellHidden}\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={index}\n id={`${uid}_${rowUniqKey}_${index}`}\n accordionId={accordionId}\n data-aria-level={index === 0 ? ariaLevel : undefined}\n row={row}\n rowIndex={rowIndex}\n gridRowIndex={gridRowIndex}\n columnIndex={index}\n style={style}\n column={column}\n expanded={expanded}\n withAccordion={withAccordion}\n isAccordionRow={isAccordionRow}\n animationExpand={animationExpand}\n accordionRowIndex={accordionRowIndex}\n rows={rows}\n aria-hidden={isCellHidden}\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 >\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={1}\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 <SAccordionRows id={accordionId} role='rowgroup' aria-hidden={!expanded}>\n {(expanded || expandedForAnimation) && accordionRows.map((subrow, i) => {\n return (\n <Row\n key={i}\n // @ts-ignore\n row={subrow}\n columns={columns}\n rows={accordionRows}\n rowIndex={rowIndex}\n aria-hidden={!expanded}\n aria-posinset={i + 1}\n aria-level={ariaLevel + 1}\n gridRowIndex={gridRowIndex + 1 + i}\n isAccordionRow={true}\n accordionIndex={i}\n getFixedStyle={getFixedStyle}\n animationExpand={expanded}\n accordionRowIndex={i}\n use={use}\n shadowVertical={shadowVertical}\n accordionDuration={accordionDuration}\n variant={variant}\n flatRows={flatRows}\n sideIndents={sideIndents}\n renderCell={renderCell}\n rawData={rawData}\n limit={limit}\n />\n );\n })}\n </SAccordionRows>\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 private calculateRowHeight(rowElement: HTMLElement): number {\n const accordionFull = rowElement.cloneNode(true);\n\n if (!(accordionFull instanceof HTMLElement)) {\n return 0;\n }\n\n const columnsWidth: number[] = [];\n\n const columns = Array.from(rowElement.children);\n columns.forEach((column) => {\n columnsWidth.push(column.getBoundingClientRect().width);\n });\n\n accordionFull.style.display = 'grid';\n accordionFull.style.position = 'absolute';\n accordionFull.style.visibility = 'hidden';\n accordionFull.style.gridTemplateColumns = columnsWidth.join('px ') + 'px';\n\n Array.from(accordionFull.children).forEach((child) => {\n if (child instanceof HTMLElement) {\n child.style.height = '100%';\n }\n });\n\n document.body.appendChild(accordionFull);\n\n const height = accordionFull.getBoundingClientRect().height;\n\n document.body.removeChild(accordionFull);\n\n return height;\n }\n}\n\nexport const Row = createComponent(RowRoot, {\n Cell,\n}) as DataTableRowType & {\n Cell: DataTableCellType;\n};\n"],"mappings":";;;;;;;;;;AAAA,SAASA,GAAG,EAAEC,QAAQ,QAAc,0BAA0B;AAC9D,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,OAAOC,QAAQ,MAAM,mBAAmB;AACxC,SAASC,SAAS,EAAEC,IAAI,EAAEC,OAAO,EAAEC,eAAe,QAAQ,eAAe;AACzE,SAASC,oBAAoB,QAAQ,qCAAqC;AAC1E,SAASC,oBAAoB,QAAQ,8CAA8C;AACnF,OAAOC,aAAa,MAAM,8BAA8B;AACxD,OAAO,KAAKC,KAAK,MAAM,OAAO;AAE9B,SAASC,IAAI,QAAQ,QAAQ;AAE7B,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,iBAAiB,EAAEC,cAAc,QAAQ,eAAe;AAAC;AAAA,IAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAGlE,SAASC,SAAS,EAAEC,iBAAiB,EAAEC,SAAS,EAAEC,SAAS,EAAEC,UAAU,EAAEC,YAAY,QAAQ,wBAAwB;AASrH,WAAaC,OAAO,0BAAAC,UAAA;EAmBlB,SAAAD,QAAYE,KAA2C,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAJ,OAAA;IACvDG,KAAA,GAAAE,UAAA,OAAAL,OAAA,GAAME,KAAK;IAAEI,eAAA,CAAAH,KAAA,cAZY,EAAE;IAAAG,eAAA,CAAAH,KAAA,2BACG,CAAC;IAAAG,eAAA,CAAAH,KAAA,gCAEjBjB,KAAK,CAACqB,SAAS,CAAiB,CAAC;IAAAD,eAAA,CAAAH,KAAA,WAElC;MACbK,oBAAoB,EAAE,KAAK;MAC3BC,gBAAgB,EAAE,CAAC;MACnBC,aAAa,EAAE;IACjB,CAAC;IAAAJ,eAAA,CAAAH,KAAA,qBA2CiB,UAACQ,KAAc,EAAEC,KAAyC,EAAK;MAC/E,IAAAC,aAAA,GAAuCV,KAAA,CAAKW,OAAO;QAA3CC,GAAG,GAAAF,aAAA,CAAHE,GAAG;QAAEC,QAAQ,GAAAH,aAAA,CAARG,QAAQ;QAAEC,WAAW,GAAAJ,aAAA,CAAXI,WAAW;MAElCA,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAGN,KAAK,EAAEK,QAAQ,EAAED,GAAG,EAAEH,KAAK,CAAC;IAC5C,CAAC;IAAAN,eAAA,CAAAH,KAAA,yBAEqB,UAACQ,KAAc;MAAA,OAAK,UAACC,KAAyC,EAAK;QACvFA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEM,cAAc,CAAC,CAAC;QACvBN,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEO,eAAe,CAAC,CAAC;QACxB,IAAAC,cAAA,GAAuCjB,KAAA,CAAKW,OAAO;UAA3CC,GAAG,GAAAK,cAAA,CAAHL,GAAG;UAAEC,QAAQ,GAAAI,cAAA,CAARJ,QAAQ;UAAEC,WAAW,GAAAG,cAAA,CAAXH,WAAW;QAElCA,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAGN,KAAK,EAAEK,QAAQ,EAAED,GAAG,EAAEH,KAAK,CAAC;MAC5C,CAAC;IAAA;IAAAN,eAAA,CAAAH,KAAA,6BAEyB,UAACkB,CAAsB,EAAK;MACpD,IAAIA,CAAC,CAACC,GAAG,KAAK,QAAQ,EAAE;QACtBnB,KAAA,CAAKW,OAAO,CAACS,mBAAmB,CAACpB,KAAA,CAAKqB,QAAQ,CAAC;MACjD;IACF,CAAC;IAAAlB,eAAA,CAAAH,KAAA,qBAEiB,UAACY,GAAuB,EAAEU,KAAa,EAAK;MAC5D,IAAAC,cAAA,GAA4HvB,KAAA,CAAKW,OAAO;QAAhIa,iBAAiB,GAAAD,cAAA,CAAjBC,iBAAiB;QAAEC,aAAa,GAAAF,cAAA,CAAbE,aAAa;QAAEC,YAAY,GAAAH,cAAA,CAAZG,YAAY;QAAEC,WAAW,GAAAJ,cAAA,CAAXI,WAAW;QAAEC,YAAY,GAAAL,cAAA,CAAZK,YAAY;QAAEC,aAAa,GAAAN,cAAA,CAAbM,aAAa;QAAEC,qBAAqB,GAAAP,cAAA,CAArBO,qBAAqB;MACvH,IAAQzB,oBAAoB,GAAKL,KAAA,CAAK+B,KAAK,CAAnC1B,oBAAoB;MAC5B,IAAM2B,YAAY,GAAGC,KAAK,CAACC,OAAO,CAACV,iBAAiB,CAAC,GACjDA,iBAAiB,CAAC,CAAC,CAAC,GACpBA,iBAAiB,aAAjBA,iBAAiB,cAAjBA,iBAAiB,GAChBS,KAAK,CAACC,OAAO,CAACtB,GAAG,CAACrB,SAAS,CAAC,CAAC,GAAG4C,IAAI,CAACC,GAAG,CAAC,EAAE,GAAGxB,GAAG,CAACrB,SAAS,CAAC,CAAC8C,MAAM,EAAE,GAAG,CAAC,GAAG,GAAI;MACrF,IAAMC,aAAa,GAAGL,KAAK,CAACC,OAAO,CAACV,iBAAiB,CAAC,GAClDA,iBAAiB,CAAC,CAAC,CAAC,GACpBA,iBAAiB,aAAjBA,iBAAiB,cAAjBA,iBAAiB,GAChBS,KAAK,CAACC,OAAO,CAACtB,GAAG,CAACrB,SAAS,CAAC,CAAC,GAAG4C,IAAI,CAACC,GAAG,CAAC,EAAE,GAAGxB,GAAG,CAACrB,SAAS,CAAC,CAAC8C,MAAM,EAAE,GAAG,CAAC,GAAG,GAAI;MAErFE,UAAU,CAAC,YAAM;QACfX,YAAY,CAACN,KAAK,EAAEV,GAAG,CAAC;QACxB,KAAK,IAAI4B,CAAC,GAAGlB,KAAK,EAAEkB,CAAC,GAAGX,aAAa,CAACY,IAAI,EAAED,CAAC,EAAE,EAAE;UAC/CZ,YAAY,CAACY,CAAC,EAAE5B,GAAG,CAAC;QACtB;MACF,CAAC,EAAEoB,YAAY,GAAG,GAAG,CAAC,CAAC,CAAC;;MAExB,IAAIN,YAAY,CAACgB,GAAG,CAAC9B,GAAG,CAAChB,YAAY,CAAC,CAAC,IAAIS,oBAAoB,KAAK,KAAK,EAAE;QACzEL,KAAA,CAAK2C,cAAc,CAAC/B,GAAG,EAAE0B,aAAa,CAAC;MACzC,CAAC,MAAM;QACL,IAAIjC,oBAAoB,KAAK,IAAI,IAAIL,KAAA,CAAK4C,qBAAqB,EAAE;UAC/DC,YAAY,CAAC7C,KAAA,CAAK4C,qBAAqB,CAAC;UACxCjB,WAAW,CAACf,GAAG,CAAC;UAEhBZ,KAAA,CAAK8C,QAAQ,CAAC;YACZzC,oBAAoB,EAAE;UACxB,CAAC,EAAEyB,qBAAqB,CAAC;QAC3B;QAEA,IAAIL,aAAa,KAAK,QAAQ,IAAIC,YAAY,CAACe,IAAI,GAAG,CAAC,EAAE;UACvD,IAAMM,YAAY,GAAG,IAAIC,GAAG,CAAkC,CAAC;UAE/DhD,KAAA,CAAKW,OAAO,CAACsC,QAAQ,CAACC,OAAO,CAAC,UAACtC,GAAG,EAAEU,KAAK,EAAK;YAC5C,IAAII,YAAY,CAACgB,GAAG,CAAC9B,GAAG,CAAChB,YAAY,CAAC,CAAC,EAAE;cACvCmD,YAAY,CAACI,GAAG,CAACvC,GAAG,CAAChB,YAAY,CAAC,EAAEgB,GAAG,CAAC;YAC1C;UACF,CAAC,CAAC;UAEF,IAAImC,YAAY,CAACN,IAAI,GAAG,CAAC,EAAE;YACzBW,kBAAA,CAAIL,YAAY,CAACM,OAAO,CAAC,CAAC,EAAEH,OAAO,CAAC,UAAAI,KAAA,EAA4B;cAAA,IAAAC,KAAA,GAAAC,cAAA,CAAAF,KAAA;gBAA1BG,OAAO,GAAAF,KAAA;gBAAEG,WAAW,GAAAH,KAAA;cACxD,IAAI,CAACvD,KAAA,CAAK+B,KAAK,CAAC1B,oBAAoB,EAAE;gBACpCkC,UAAU,CAAC,YAAM;kBAAA,IAAAoB,qBAAA;kBACf,CAAAA,qBAAA,GAAA3D,KAAA,CAAKW,OAAO,CAACiD,aAAa,CAACC,GAAG,CAACJ,OAAO,CAAC,cAAAE,qBAAA,eAAvCA,qBAAA,CAAyChB,cAAc,CAACe,WAAW,EAAEpB,aAAa,CAAC;gBACrF,CAAC,EAAEN,YAAY,GAAG,CAAC,CAAC;cACtB;YACF,CAAC,CAAC;UACJ;QACF;QACAL,WAAW,CAACf,GAAG,CAAC;QAEhBZ,KAAA,CAAK8D,WAAW,CAAC9D,KAAA,CAAKW,OAAO,CAACmB,qBAAqB,CAAC;MACtD;IACF,CAAC;IAAA3B,eAAA,CAAAH,KAAA,oBAEgB,UAACY,GAAuB,EAAE0B,aAAqB,EAAK;MACnE,IAAAyB,cAAA,GAA+C/D,KAAA,CAAKW,OAAO;QAAnDgB,WAAW,GAAAoC,cAAA,CAAXpC,WAAW;QAAEG,qBAAqB,GAAAiC,cAAA,CAArBjC,qBAAqB;MAE1C9B,KAAA,CAAK8C,QAAQ,CAAC;QACZzC,oBAAoB,EAAE;MACxB,CAAC,EAAEyB,qBAAqB,CAAC;MACzB9B,KAAA,CAAK4C,qBAAqB,GAAGoB,MAAM,CAACzB,UAAU,CAAC,YAAM;QACnDZ,WAAW,CAACf,GAAG,CAAC;QAEhBZ,KAAA,CAAK8C,QAAQ,CAAC;UACZzC,oBAAoB,EAAE;QACxB,CAAC,EAAEyB,qBAAqB,CAAC;MAC3B,CAAC,EAAEQ,aAAa,GAAG,GAAG,CAAC,CAAC,CAAC;IAC3B,CAAC;IAAAnC,eAAA,CAAAH,KAAA,qBAYiB,UAACkB,CAAoC,EAAE+C,GAAkD,EAAK;MAC9G,IAAI,CAACpF,oBAAoB,CAACqC,CAAC,CAACgD,MAAM,CAAC,EAAE;QACnClE,KAAA,CAAKmE,eAAe,CAACF,GAAG,CAACrD,GAAG,EAAEqD,GAAG,CAACpD,QAAQ,CAAC;MAC7C;IACF,CAAC;IA/ICb,KAAA,CAAKoE,cAAc,GAAGpE,KAAA,CAAKoE,cAAc,CAACC,IAAI,CAAArE,KAAK,CAAC;IAAC,OAAAA,KAAA;EACvD;EAACsE,SAAA,CAAAzE,OAAA,EAAAC,UAAA;EAAA,OAAAyE,YAAA,CAAA1E,OAAA;IAAAsB,GAAA;IAAAX,KAAA,EAED,SAAAgE,iBAAiBA,CAAA,EAAG;MAAA,IAAAC,sBAAA,EAAAC,cAAA;MAClB,CAAAD,sBAAA,IAAAC,cAAA,OAAI,CAAC/D,OAAO,EAACgE,YAAY,cAAAF,sBAAA,eAAzBA,sBAAA,CAAAG,IAAA,CAAAF,cAAA,EAA4B,IAAI,CAAC;MAEjC,IAAQG,eAAe,GAAK,IAAI,CAAClE,OAAO,CAAhCkE,eAAe;MAEvB,IAAIA,eAAe,IAAI,IAAI,CAACC,aAAa,CAACC,OAAO,EAAE;QACjD,IAAMC,MAAM,GAAG,IAAI,CAACC,kBAAkB,CAAC,IAAI,CAACH,aAAa,CAACC,OAAO,CAAC;QAElE,IAAI,CAACjC,QAAQ,CAAC;UAAExC,gBAAgB,EAAE0E;QAAO,CAAC,CAAC;MAC7C;IACF;EAAC;IAAA7D,GAAA;IAAAX,KAAA,EAED,SAAA0E,kBAAkBA,CAACC,SAA+C,EAAE;MAClE,IAAAC,cAAA,GAAiC,IAAI,CAACzE,OAAO;QAArCkE,eAAe,GAAAO,cAAA,CAAfP,eAAe;QAAEjE,GAAG,GAAAwE,cAAA,CAAHxE,GAAG;MAC5B,IAAIiE,eAAe,IAAIM,SAAS,CAACvE,GAAG,KAAKA,GAAG,IAAI,IAAI,CAACkE,aAAa,CAACC,OAAO,EAAE;QAC1E,IAAMC,MAAM,GAAG,IAAI,CAACC,kBAAkB,CAAC,IAAI,CAACH,aAAa,CAACC,OAAO,CAAC;QAElE,IAAI,CAACjC,QAAQ,CAAC;UAAExC,gBAAgB,EAAE0E,MAAM;UAAEzE,aAAa,EAAE;QAAM,CAAC,CAAC;MACnE;MACA,IAAI4E,SAAS,CAACN,eAAe,KAAKA,eAAe,IAAIA,eAAe,KAAK,KAAK,EAAE;QAC9E,IAAI,CAAC/B,QAAQ,CAAC;UAAEvC,aAAa,EAAE;QAAK,CAAC,CAAC;MACxC;IACF;EAAC;IAAAY,GAAA;IAAAX,KAAA,EAED,SAAA6E,oBAAoBA,CAAA,EAAG;MAAA,IAAAC,sBAAA,EAAAC,cAAA;MACrB,CAAAD,sBAAA,IAAAC,cAAA,OAAI,CAAC5E,OAAO,EAACgE,YAAY,cAAAW,sBAAA,eAAzBA,sBAAA,CAAAV,IAAA,CAAAW,cAAA,EAA4B,IAAI,CAAC;IACnC;EAAC;IAAApE,GAAA;IAAAX,KAAA,EAED,SAAAgF,gBAAgBA,CAACC,SAAwD,EAAwB;MAC/F,OACE,EAAEA,SAAS,YAAYtG,cAAc,IAAIsG,SAAS,YAAYvG,iBAAiB,CAAC,IAChFwG,OAAO,CAACD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAGlG,SAAS,CAAC,CAAC;IAEnC;EAAC;IAAA4B,GAAA;IAAAX,KAAA,EA6FD,SAAA4D,cAAcA,CAACxD,GAAuB,EAAE;MAAA,IAAA+E,MAAA;MACtC,OAAO,UAACzE,CAAuB,EAAK;QAClC,IAAMI,KAAK,GAAGV,GAAG,CAAClB,SAAS,CAAC;QAE5B,IAAI,CAACb,oBAAoB,CAACqC,CAAC,CAACgD,MAAM,CAAC,IAAItD,GAAG,CAACrB,SAAS,CAAC,IAAI,CAACoG,MAAI,CAAChF,OAAO,CAACiF,SAAS,EAAE;UAChFD,MAAI,CAACxB,eAAe,CAACvD,GAAG,EAAEU,KAAK,CAAC;QAClC;MACF,CAAC;IACH;EAAC;IAAAH,GAAA;IAAAX,KAAA,EAQD,SAAAqF,YAAYA,CAAC9F,KAAsC,EAAE;MAAA,IAAA+F,eAAA;QAAAC,OAAA;QAAAC,MAAA;MACnD,IAAAC,cAAA,GAiBI,IAAI,CAACtF,OAAO;QAhBduF,GAAG,GAAAD,cAAA,CAAHC,GAAG;QACHC,UAAU,GAAAF,cAAA,CAAVE,UAAU;QACVzE,YAAY,GAAAuE,cAAA,CAAZvE,YAAY;QACZ0E,MAAM,GAAAH,cAAA,CAANG,MAAM;QACNC,WAAW,GAAAJ,cAAA,CAAXI,WAAW;QACXC,aAAa,GAAAL,cAAA,CAAbK,aAAa;QACbC,QAAQ,GAAAN,cAAA,CAARM,QAAQ;QACR/E,iBAAiB,GAAAyE,cAAA,CAAjBzE,iBAAiB;QACjBgF,WAAW,GAAAP,cAAA,CAAXO,WAAW;QACXC,OAAO,GAAAR,cAAA,CAAPQ,OAAO;QACPC,cAAc,GAAAT,cAAA,CAAdS,cAAc;QACdzD,QAAQ,GAAAgD,cAAA,CAARhD,QAAQ;QACR0D,OAAO,GAAAV,cAAA,CAAPU,OAAO;QACPC,cAAc,GAAAX,cAAA,CAAdW,cAAc;QACdC,iBAAiB,GAAAZ,cAAA,CAAjBY,iBAAiB;QACjBC,YAAY,GAAAb,cAAA,CAAZa,YAAY;MAEd,IAAMC,gBAAgB,GAAGzI,UAAU;MAEnC,IAAI0I,OAAO,GAAGjH,KAAK,CAACkH,MAAM,CAACC,IAAI;MAC/B,IAAMzB,SAAS,GAAG1F,KAAK,CAACa,GAAG,CAACoG,OAAO,CAAC;MAEpC,IAAIxG,KAA0B,GAAG2G,SAAS;MAC1C,IAAMC,YAAY,GAAG3B,SAAS,YAAYtG,cAAc;MACxD,IAAMkI,eAAe,GAAG5B,SAAS,YAAYvG,iBAAiB;MAE9D,IAAImI,eAAe,IAAID,YAAY,EAAE;QACnC5G,KAAK,GAAGiF,SAAS,CAACjF,KAAK;QACvB,IAAI6G,eAAe,EAAE;UACnBL,OAAO,GAAGvB,SAAS,CAACuB,OAAO;QAC7B;MACF,CAAC,MAAM;QACLxG,KAAK,GAAGiF,SAAS;MACnB;MAEA,IAAM6B,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;QAAA,IAAAC,MAAA;QAC1B,OAAO,aAAAxI,KAAK,CAACyI,cAAc,CAAChH,KAAK,CAAC,GAAGA,KAAK,IAAA+G,MAAA,GAAG/G,KAAK,cAAA+G,MAAA,uBAALA,MAAA,CAAOE,QAAQ,CAAC,CAAC;MAChE,CAAC;MAED,IAAIC,aAAa,GAAG3H,KAAK,CAACa,GAAG,CAACpB,iBAAiB,CAAC;MAEhD,IAAImH,OAAO,KAAK,MAAM,EAAE;QACtB,IAAMgB,SAAS,GAAG1E,QAAQ,CAACZ,MAAM,KAAKtC,KAAK,CAACc,QAAQ,GAAG,CAAC;QACxD,IAAM+G,kBAAkB,GAAG7H,KAAK,CAAC8G,iBAAiB,KAAKM,SAAS,GAAGpH,KAAK,CAAC8G,iBAAiB,GAAG,CAAC,KAAK9G,KAAK,CAAC8H,IAAI,CAACxF,MAAM,GAAG,IAAI;QAE3HqF,aAAa,GAAGC,SAAS,IAAIC,kBAAkB;MACjD;MAEA,IAAME,UAA+B,GAAG;QACtC5B,GAAG,EAAHA,GAAG;QACHI,aAAa,EAAEZ,OAAO,CAACY,aAAa,CAAC;QACrCC,QAAQ,EAARA,QAAQ;QACRwB,QAAQ,GAAAjC,eAAA,GAAE/F,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEgI,QAAQ,cAAAjC,eAAA,cAAAA,eAAA,GAAIwB,aAAa,CAAC,CAAC;QAC5C9F,iBAAiB,EAAjBA,iBAAiB;QACjBwG,OAAO,EAAExB,WAAW;QACpBvD,QAAQ,EAAE,IAAI,CAACtC,OAAO,CAACsC,QAAQ;QAC/ByD,cAAc,EAAdA,cAAc;QACdgB,aAAa,EAAbA,aAAa;QACbpH,gBAAgB,EAAE,IAAI,CAACyB,KAAK,CAACzB;MAC/B,CAAC;MAED,IAAI6F,UAAU,EAAE;QAAA,IAAA8B,eAAA,EAAAC,OAAA;QACd,IAAIC,UAAU,GAAG1B,OAAO,CAAC1G,KAAK,CAACc,QAAQ,CAAC;QAExC,IAAId,KAAK,CAAC8G,iBAAiB,KAAKM,SAAS,IAAIgB,UAAU,CAAC5I,SAAS,CAAC,IAAI0C,KAAK,CAACC,OAAO,CAACiG,UAAU,CAAC5I,SAAS,CAAC,CAAC,EAAE;UAC1G4I,UAAU,GAAGA,UAAU,CAAC5I,SAAS,CAAC,CAACQ,KAAK,CAAC8G,iBAAiB,CAAC;QAC7D;QAEA,IAAMuB,QAAQ,GAAGjC,UAAU,CAAC;UAC1BkC,UAAU,EAAEtI,KAAK,CAACkH,MAAM,CAACC,IAAI;UAC7BtG,GAAG,EAAEb,KAAK,CAACa,GAAG;UACdqG,MAAM,EAAElH,KAAK,CAACkH,MAAM;UACpBpG,QAAQ,EAAEd,KAAK,CAACc,QAAQ;UACxByH,WAAW,EAAEvI,KAAK,CAACuI,WAAW;UAC9BtB,OAAO,EAAPA,OAAO;UACPM,aAAa,EAAbA,aAAa;UACb9G,KAAK,EAAE,aAAAzB,KAAK,CAACyI,cAAc,CAAChH,KAAK,CAAC,GAAGA,KAAK,IAAAyH,eAAA,IAAAC,OAAA,GAAG1H,KAAK,cAAA0H,OAAA,uBAALA,OAAA,CAAOT,QAAQ,CAAC,CAAC,cAAAQ,eAAA,cAAAA,eAAA,GAAI,EAAE;UACpEb,YAAY,EAAZA,YAAY;UACZC,eAAe,EAAfA,eAAe;UACfZ,OAAO,EAAE0B,UAAU;UACnBvB,cAAc,EAAElB,OAAO,CAACkB,cAAc,CAAC;UACvCC,iBAAiB,EAAjBA;QACF,CAAC,CAAC;QAEF,IAAI,IAAI,CAAC0B,WAAW,CAACH,QAAQ,CAAC,IAAInG,KAAK,CAACC,OAAO,CAACkG,QAAQ,CAAC,EAAE;UACzDN,UAAU,CAACC,QAAQ,GAAGK,QAAQ;QAChC,CAAC,MAAM;UACL,KAAK,IAAMjH,GAAG,IAAIiH,QAAQ,EAAE;YAC1B,IAAIjH,GAAG,KAAK,SAAS,EAAE;cACrB2G,UAAU,CAAC3G,GAAG,CAAC,GAAGvC,oBAAoB,CAACwJ,QAAQ,CAACjH,GAAG,CAAC,EAAE2G,UAAU,CAAC3G,GAAG,CAAC,CAAC;YACxE,CAAC,MAAM;cACL2G,UAAU,CAAC3G,GAAG,CAAC,GAAGiH,QAAQ,CAACjH,GAAG,CAAC;YACjC;UACF;QACF;MACF;MAEA,IAAMqH,gBAAgB,GAAG1B,YAAY,GAAG,CAAC,GAAG,CAAC;MAE7C,IACG/G,KAAK,CAACuI,WAAW,KAAKE,gBAAgB,IAAIzI,KAAK,CAACa,GAAG,CAACrB,SAAS,CAAC,KAAAwG,OAAA,GAC/DvF,KAAK,cAAAuF,OAAA,eAALA,OAAA,CAAQxG,SAAS,CAAC,IACjBkG,SAAS,YAAYtG,cAAc,IAAIsG,SAAS,CAACgD,SAAU,EAC5D;QAAA,IAAAC,KAAA,EAAAC,OAAA;QACA,IAAMC,QAAQ,GACN,CAAAlH,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEgB,GAAG,CAAC3C,KAAK,CAACa,GAAG,CAAChB,YAAY,CAAC,CAAC,KAC1C,CAAC,IAAI,CAACmC,KAAK,CAAC1B,oBAAoB;QAExCyH,UAAU,CAACc,QAAQ,GAAGA,QAAQ;QAE9B,IAAIA,QAAQ,EAAE;UACZd,UAAU,CAACJ,aAAa,GAAG,KAAK;QAClC;QAEA,IAAM9G,GAAG,GAAGb,KAAK,CAACa,GAAG;QACrB,IAAMC,QAAQ,GAAGd,KAAK,CAACc,QAAQ;QAE/B,IAAMgI,WAAW,GAAG,SAAdA,WAAWA,CAAI3H,CAA0C,EAAK;UAClEA,CAAC,CAACF,eAAe,CAAC,CAAC;UACnBwF,WAAW,CAACtF,CAAC,EAAE;YAAE4H,QAAQ,EAAE/I,KAAK,CAACuI,WAAW;YAAEzH,QAAQ,EAARA,QAAQ;YAAED,GAAG,EAAHA;UAAI,CAAC,CAAC;UAC9DoF,MAAI,CAAC7B,eAAe,CAACvD,GAAG,EAAEC,QAAQ,CAAC;QACrC,CAAC;QAED,IAAI,CAAA8H,OAAA,GAAAnI,KAAK,cAAAmI,OAAA,eAALA,OAAA,CAAQpJ,SAAS,CAAC,IAAKkG,SAAS,YAAYtG,cAAc,IAAIsG,SAAS,CAACgD,SAAU,EAAE;UACtFX,UAAU,CAACE,OAAO,GAAGpJ,oBAAoB,CACvCkJ,UAAU,CAACE,OAAO,EAClB,IAAI,CAACe,eACP,CAAC;QACH;QAEAjB,UAAU,CAACC,QAAQ,IAAAW,KAAA,GAAGhK,OAAO,CAAC0H,MAAM,CAAC,eACnCrH,KAAA,CAAAiK,aAAA,CAAAjK,KAAA,CAAAkK,QAAA,qBACElK,KAAA,CAAAiK,aAAA,CAACjC,gBAAgB,EAAA2B,KAAA,CAAAQ,EAAA;UAAA,cACH7C,WAAW,CAAC,kDAAkD,CAAC;UAAA,YAEjEuC,QAAQ,IAAI,CAAC,IAAI,CAAC7G,KAAK,CAAC1B,oBAAoB;UAAA,WAC7CwI,WAAW;UAAA,SACd,sCAAsC;UAAA,iBAC7BD,QAAQ;UAAA,oBACL7I,KAAK,CAACoJ,EAAE;UAAA,iBACXP,QAAQ,GAAG7I,KAAK,CAACqJ,WAAW,GAAGjC;QAAS,iBAEvDpI,KAAA,CAAAiK,aAAA,CAACjC,gBAAgB,CAACsC,KAAK;UAACC,GAAG,EAAExK;QAAc,CAAE,CAC7B,CAAC,EAClBgJ,UAAU,CAACC,QACZ,CAAC,CACJ;MACH;MAEA,OAAOD,UAAU;IACnB;EAAC;IAAA3G,GAAA;IAAA0C,GAAA,EAED,SAAAA,IAAA,EAAkB;MAChB,IAAA0F,cAAA,GAA4B,IAAI,CAAC5I,OAAO;QAAhCE,QAAQ,GAAA0I,cAAA,CAAR1I,QAAQ;QAAE2I,KAAK,GAAAD,cAAA,CAALC,KAAK;MACvB,IAAMC,SAAS,GAAGD,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,OAAO;MAChC,IAAMC,YAAY,GAAGH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,UAAU;MAEtC,OAAOH,SAAS,KAAKtC,SAAS,IAAI,CAACwC,YAAY,IAAI9I,QAAQ,GAAG4I,SAAS,GACnE,IAAI,GACJtC,SAAS;IACf;EAAC;IAAAhG,GAAA;IAAAX,KAAA,EAED,SAAAqJ,MAAMA,CAAA,EAAG;MAAA,IAAAC,IAAA,QAAAnJ,OAAA;QAAAoJ,KAAA;QAAAC,MAAA;QAAAC,cAAA;MACP,IAAMC,IAAI,GAuFI9L,GAAG;MAtFjB,IAAM+L,YAAY,GAAG9L,QAAQ;MAC7B,IAAM+L,cAAc,GAAGhM,GAAG;MAC1B,IAAMiM,KAAK,GAAGC,GAAG,CAACtL,IAAI;MACtB,IAAMuL,aAAa,GAAGD,GAAG,CAACtL,IAAI;MAC9B,IAAAwL,cAAA,GA4BI,IAAI,CAAC7J,OAAO;QA3Bd8J,OAAO,GAAAD,cAAA,CAAPC,OAAO;QACP7J,GAAG,GAAA4J,cAAA,CAAH5J,GAAG;QACHiH,IAAI,GAAA2C,cAAA,CAAJ3C,IAAI;QACJzB,MAAM,GAAAoE,cAAA,CAANpE,MAAM;QACNvF,QAAQ,GAAA2J,cAAA,CAAR3J,QAAQ;QACR6J,YAAY,GAAAF,cAAA,CAAZE,YAAY;QAAAC,oBAAA,GAAAH,cAAA,CACZ,YAAY;QAAEI,SAAS,GAAAD,oBAAA,cAAG,CAAC,GAAAA,oBAAA;QAC3B7D,YAAY,GAAA0D,cAAA,CAAZ1D,YAAY;QACZpF,YAAY,GAAA8I,cAAA,CAAZ9I,YAAY;QACZmJ,GAAG,GAAAL,cAAA,CAAHK,GAAG;QACHC,aAAa,GAAAN,cAAA,CAAbM,aAAa;QACblF,SAAS,GAAA4E,cAAA,CAAT5E,SAAS;QACTgB,cAAc,GAAA4D,cAAA,CAAd5D,cAAc;QACd/B,eAAe,GAAA2F,cAAA,CAAf3F,eAAe;QACfgC,iBAAiB,GAAA2D,cAAA,CAAjB3D,iBAAiB;QACjBrF,iBAAiB,GAAAgJ,cAAA,CAAjBhJ,iBAAiB;QACjB0E,GAAG,GAAAsE,cAAA,CAAHtE,GAAG;QACHQ,cAAc,GAAA8D,cAAA,CAAd9D,cAAc;QACdC,OAAO,GAAA6D,cAAA,CAAP7D,OAAO;QACP1D,QAAQ,GAAAuH,cAAA,CAARvH,QAAQ;QACR8H,WAAW,GAAAP,cAAA,CAAXO,WAAW;QACX5E,UAAU,GAAAqE,cAAA,CAAVrE,UAAU;QACVM,OAAO,GAAA+D,cAAA,CAAP/D,OAAO;QACP+C,KAAK,GAAAgB,cAAA,CAALhB,KAAK;QACLwB,SAAS,GAAAR,cAAA,CAATQ,SAAS;QACTzE,QAAQ,GAAAiE,cAAA,CAARjE,QAAQ;QACR0E,aAAa,GAAAT,cAAA,CAAbS,aAAa;MAGf,IAAAC,WAAA,GAAgD,IAAI,CAACnJ,KAAK;QAAlD1B,oBAAoB,GAAA6K,WAAA,CAApB7K,oBAAoB;QAAEE,aAAa,GAAA2K,WAAA,CAAb3K,aAAa;MAE3C,IAAMqI,QAAQ,GAAG,CAAAlH,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEgB,GAAG,CAAC9B,GAAG,CAAChB,YAAY,CAAC,CAAC,KAAI,CAACS,oBAAoB;MAE9E,IAAI8K,aAAa,GAAGlJ,KAAK,CAACC,OAAO,CAACtB,GAAG,CAACrB,SAAS,CAAC,CAAC,GAAGqB,GAAG,CAACrB,SAAS,CAAC,GAAG4H,SAAS;MAC9E,IAAIiE,kBAAmC,GAAG,aAAArM,KAAK,CAACyI,cAAc,CAAC5G,GAAG,CAACrB,SAAS,CAAC,CAAC,GAAGqB,GAAG,CAACrB,SAAS,CAAC,GAAG4H,SAAS;MAE3G,IAAMkE,aAAa,GAAG,CAACF,aAAa,IAAIC,kBAAkB,KAAK,CAACxF,SAAS,GAAG,KAAK,GAAGuB,SAAS;MAE7F,IAAI,CAACgE,aAAa,IAAI,CAACC,kBAAkB,EAAE;QACzC,IAAME,KAAK,GAAGC,MAAM,CAAClI,OAAO,CAACzC,GAAG,CAAC;QACjC,IAAM4K,SAAS,GAAGF,KAAK,CAACG,IAAI,CAAC,UAAAC,KAAA,EAAkB;UAAA,IAAAC,KAAA,GAAAnI,cAAA,CAAAkI,KAAA;YAAhBvK,GAAG,GAAAwK,KAAA;YAAEnL,KAAK,GAAAmL,KAAA;UACvC,OAAO3B,MAAI,CAACxE,gBAAgB,CAAChF,KAAK,CAAC,IAAKA,KAAK,YAAYrB,cAAc,IAAIqB,KAAK,CAACiI,SAAU;QAC7F,CAAC,CAAC;QAEF,IAAI+C,SAAS,EAAE;UACb,IAAI,CAACnK,QAAQ,GAAGmK,SAAS,CAAC,CAAC,CAAC;UAC5B,IAAMhL,KAAK,GAAGgL,SAAS,CAAC,CAAC,CAAC;UAE1B,IAAIhL,KAAK,YAAYrB,cAAc,IAAIqB,KAAK,CAACiI,SAAS,EAAE;YACtD,IAAIxG,KAAK,CAACC,OAAO,CAAC1B,KAAK,CAACiI,SAAS,CAAC,EAAE;cAClC0C,aAAa,GAAG3K,KAAK,CAACiI,SAAS;YACjC,CAAC,MAAM;cACL2C,kBAAkB,GAAG5K,KAAK,CAACiI,SAAS;YACtC;UACF,CAAC,MAAM,IAAI,IAAI,CAACjD,gBAAgB,CAAChF,KAAK,CAAC,EAAE;YACvC4K,kBAAkB,GAAG5K,KAAK,CAACjB,SAAS,CAAC;UACvC;QACF;MACF;MAEA,IAAIqM,qBAAqB,GAAG,EAAE;MAE9B,IAAIT,aAAa,IAAIC,kBAAkB,EAAE;QAAA,IAAAS,cAAA;QACvC,IAAMC,YAAY,GAAG,CAAAD,cAAA,GAAAjL,GAAG,CAACnB,SAAS,CAAC,cAAAoM,cAAA,eAAdA,cAAA,CAAgBpJ,IAAI,GAAG7B,GAAG,CAACnB,SAAS,CAAC,CAACgD,IAAI,GAAG,CAAC,GAAG,CAAC;QACvEmJ,qBAAqB,GAAGT,aAAa,MAAAY,MAAA,CAC9BrB,YAAY,GAAGoB,YAAY,aAAAC,MAAA,CAAUrB,YAAY,GAAGoB,YAAY,GAAGX,aAAa,CAAC9I,MAAM,SAAA0J,MAAA,CAC1FtB,OAAO,CAACpI,MAAM,GAAG,CAAC,OAAA0J,MAAA,CAEfrB,YAAY,GAAGoB,YAAY,aAAAC,MAAA,CAAUrB,YAAY,GAAGoB,YAAY,SAAAC,MAAA,CAAMtB,OAAO,CAACpI,MAAM,GAAG,CAAC,CAAE;MACnG;MAEA,IAAM2J,UAAU,GAAGpL,GAAG,CAAChB,YAAY,CAAC;MACpC,IAAMwJ,WAAW,MAAA2C,MAAA,CAAMlB,GAAG,OAAAkB,MAAA,CAAIC,UAAU,CAAE;MAE1C,IAAMvC,SAAS,GAAGD,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,OAAO;MAChC,IAAMC,YAAY,GAAGH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,UAAU;MAEtC,OAAAG,KAAA,GAAOrL,OAAO,CAAC0H,MAAM,CAAC,eACpBrH,KAAA,CAAAiK,aAAA,CAAAjK,KAAA,CAAAkK,QAAA,qBACElK,KAAA,CAAAiK,aAAA,CAACkB,IAAI,EAAAH,KAAA,CAAAb,EAAA,SAAA+C,aAAA,KAAAC,YAAA;QAAA,OACE,IAAI,CAACpH,aAAa;QAAA,QAElB,KAAK;QAAA,iBACKuG,aAAa;QAAA,SACrBvE,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAEqF,QAAQ,CAACH,UAAU,CAAC,GAAG,MAAM,GAAG7E,SAAS;QAAA,gBAChDyB,QAAQ,IAAI,CAAChD,SAAS;QAAA,WAC3B,IAAI,CAACxB,cAAc,CAACxD,GAAG,CAAC;QAAA,iBAClBL,aAAa;QAAA,eACf,IAAI,CAAC6L;MAAW,GAAAtC,IAAA,KAE5BW,OAAO,CAAC4B,GAAG,CAAC,UAACpF,MAAM,EAAEzE,CAAC,EAAK;QAC1B,IAAMlB,KAAK,GAAGkB,CAAC;QACf,IAAMiD,SAAmE,GACjE7E,GAAG,CAACqG,MAAM,CAACC,IAAI,CAAC;QAExB,IAAMoF,aAAa,GAAG5G,OAAO,CAACD,SAAS,YAAYtG,cAAc,IAAIsG,SAAS,CAACgD,SAAS,CAAC,IACvFuB,MAAI,CAACxE,gBAAgB,CAACC,SAAS,CAAC,IAAI4F,aAAa,KAAK,KAAK;QAE7D,IAAIkB,YAA8B,GAAGpF,SAAS;QAE9C,IAAIqC,KAAK,EAAE;UACT,IAAIC,SAAS,KAAKtC,SAAS,IAAIwC,YAAY,KAAKxC,SAAS,EAAE;YACzDoF,YAAY,GAAG1L,QAAQ,IAAI4I,SAAS,IAAIjH,CAAC,IAAImH,YAAY,GAAG,IAAI,GAAGxC,SAAS;UAC9E,CAAC,MAAM,IAAIsC,SAAS,KAAKtC,SAAS,IAAIwC,YAAY,KAAKxC,SAAS,EAAE;YAChEoF,YAAY,GAAG1L,QAAQ,IAAI,CAAC,IAAI2B,CAAC,IAAImH,YAAY,GAAG,IAAI,GAAGxC,SAAS;UACtE,CAAC,MAAM,IAAIsC,SAAS,KAAKtC,SAAS,IAAIwC,YAAY,KAAKxC,SAAS,EAAE;YAChEoF,YAAY,GAAG1L,QAAQ,IAAI4I,SAAS,GAAG,IAAI,GAAGtC,SAAS;UACzD;QACF;QAEA,IAAIL,YAAY,IAAItE,CAAC,KAAK,CAAC,IAAI5B,GAAG,CAACpB,iBAAiB,CAAC,KAAK,IAAI,EAAE;UAC9D,IAAMgN,OAAO,GAAG1F,YAAY,CAACqF,QAAQ,CAACH,UAAU,CAAC;UACjD,oBACEjN,KAAA,CAAAiK,aAAA,CAACuB,aAAa;YACZpJ,GAAG,EAAEqB,CAAE;YACP5B,GAAG,EAAEA,GAAI;YACTC,QAAQ,EAAEA;YACV;YAAA;YACAoG,MAAM,EAAE;cAAEC,IAAI,EAAEvH,UAAU,CAAC8H,QAAQ,CAAC;YAAE,CAAE;YACxCa,WAAW,EAAE,CAAE;YACfoC,YAAY,EAAEA,YAAa;YAC3B1C,OAAO,EAAEgC,MAAI,CAACyC,mBAAmB,CAAC,CAACD,OAAO,CAAE;YAC5C5D,QAAQ,EAAEA,QAAS;YACnB0D,aAAa,EAAEA,aAAc;YAC7B1F,cAAc,EAAEA,cAAe;YAC/B,eAAa2F;UAAa,gBAE1BxN,KAAA,CAAAiK,aAAA,CAACzK,QAAQ;YACPiO,OAAO,EAAEA,OAAQ;YACjB,sBAAAT,MAAA,CAAoBlB,GAAG,OAAAkB,MAAA,CAAIC,UAAU,OAAK;YAC1CU,QAAQ,EAAE1C,MAAI,CAAC2C;UAAgB,gBAE/B5N,KAAA,CAAAiK,aAAA,CAACzK,QAAQ,CAACqO,KAAK,MAAE,CACT,CACG,CAAC;QAEpB;QAEA,IAAInH,SAAS,KAAK0B,SAAS,EAAE;UAC3B,OAAO,IAAI;QACb;QAEA,IAAM/H,KAA0B,GAAG,CAAC,CAAC;QAErC,IAAI6H,MAAM,CAAC4F,KAAK,EAAE;UAChB,IAAAC,cAAA,GAAsBhC,aAAa,CAAC7D,MAAM,CAAC;YAAA8F,eAAA,GAAAvJ,cAAA,CAAAsJ,cAAA;YAApC5F,IAAI,GAAA6F,eAAA;YAAEvM,OAAK,GAAAuM,eAAA;UAElB,IAAI7F,IAAI,KAAKC,SAAS,IAAI3G,OAAK,KAAK2G,SAAS,EAAE;YAC7C/H,KAAK,CAAC8H,IAAI,CAAC,GAAG1G,OAAK;UACrB;QACF;QAEA,oBACEzB,KAAA,CAAAiK,aAAA,CAACsB,GAAG,CAACtL,IAAI;UACPmC,GAAG,EAAEG,KAAM;UACX6H,EAAE,KAAA4C,MAAA,CAAKlB,GAAG,OAAAkB,MAAA,CAAIC,UAAU,OAAAD,MAAA,CAAIzK,KAAK,CAAG;UACpC8H,WAAW,EAAEA,WAAY;UACzB,mBAAiB9H,KAAK,KAAK,CAAC,GAAGsJ,SAAS,GAAGzD,SAAU;UACrDvG,GAAG,EAAEA,GAAI;UACTC,QAAQ,EAAEA,QAAS;UACnB6J,YAAY,EAAEA,YAAa;UAC3BpC,WAAW,EAAEhH,KAAM;UACnBlC,KAAK,EAAEA,KAAM;UACb6H,MAAM,EAAEA,MAAO;UACf2B,QAAQ,EAAEA,QAAS;UACnB0D,aAAa,EAAEA,aAAc;UAC7B1F,cAAc,EAAEA,cAAe;UAC/B/B,eAAe,EAAEA,eAAgB;UACjCgC,iBAAiB,EAAEA,iBAAkB;UACrCgB,IAAI,EAAEA,IAAK;UACX,eAAa0E;QAAa,CAC3B,CAAC;MAEN,CAAC,CAAC,EACD/C,KAAK,IAAI,EAAAS,cAAA,GAACT,KAAK,CAACE,OAAO,cAAAO,cAAA,cAAAA,cAAA,GAAI,CAAC,MAAMpJ,QAAQ,IAAI,CAAC+F,cAAc,iBAC5D7H,KAAA,CAAAiK,aAAA,CAAC/J,YAAY,EAAA8K,KAAA,CAAAb,EAAA;QAAA,WACFuB,OAAO;QAAA,QACV5C,IAAI;QAAA,SACH2B,KAAK;QAAA,YACFvG,QAAQ;QAAA,aACP+H,SAAS;QAAA,YACVzE,QAAQ;QAAA,iBACH0E;MAAa,EAC7B,CAEC,CAAC,EAEN,aAAAlM,KAAK,CAACyI,cAAc,CAAC4D,kBAAkB,CAAC,iBACvCrM,KAAA,CAAAiK,aAAA,CAACmB,YAAY,EAAAJ,KAAA,CAAAb,EAAA;QAAA,OACNrI,QAAQ;QAAA,QACR,KAAK;QAAA,MACNuI,WAAW;QAAA,WACNR,QAAQ;QAAA,eACJ,CAACA,QAAQ;QAAA;QAAA,YAEZgD,qBAAqB;QAAA,YACrBpK,iBAAiB,aAAjBA,iBAAiB,cAAjBA,iBAAiB,GAAI,GAAG;QAAA,eACrBuJ;MAAW,iBAExBhM,KAAA,CAAAiK,aAAA,CAACqB,KAAK,EAAAN,KAAA,CAAAb,EAAA;QAAA,iBACW,CAAC;QAAA,cACJ0B,SAAS,GAAG,CAAC;QAAA,mBACR,CAAC;QAAA,gBACJ,CAAC;QAAA,iBACA,CAAC;QAAA,qBACG,CAAC;QAAA,YACV/J,QAAQ;QAAA,QACZ,CAACD,GAAG,CAAC;QAAA,OACNA,GAAG;QAAA,eACK,CAAC;QAAA,UAEN;UAAEsG,IAAI,EAAE3H;QAAU,CAAC;QAAA,KACzB,MAAM;QAAA,aACG,IAAI,CAACyN;MAAuB,IAEtC5B,kBACI,CACK,CACf,EAEAnJ,KAAK,CAACC,OAAO,CAACiJ,aAAa,CAAC,iBAC3BpM,KAAA,CAAAiK,aAAA,CAACoB,cAAc,EAAAL,KAAA,CAAAb,EAAA;QAAA,MAAKE,WAAW;QAAA,QAAO,UAAU;QAAA,eAAc,CAACR;MAAQ,IACpE,CAACA,QAAQ,IAAIvI,oBAAoB,KAAK8K,aAAa,CAACkB,GAAG,CAAC,UAACY,MAAM,EAAEzK,CAAC,EAAK;QACtE,oBACEzD,KAAA,CAAAiK,aAAA,CAACsB,GAAG;UACFnJ,GAAG,EAAEqB;UACL;UAAA;UACA5B,GAAG,EAAEqM,MAAO;UACZxC,OAAO,EAAEA,OAAQ;UACjB5C,IAAI,EAAEsD,aAAc;UACpBtK,QAAQ,EAAEA,QAAS;UACnB,eAAa,CAAC+H,QAAS;UACvB,iBAAepG,CAAC,GAAG,CAAE;UACrB,cAAYoI,SAAS,GAAG,CAAE;UAC1BF,YAAY,EAAEA,YAAY,GAAG,CAAC,GAAGlI,CAAE;UACnCoE,cAAc,EAAE,IAAK;UACrBsG,cAAc,EAAE1K,CAAE;UAClBsI,aAAa,EAAEA,aAAc;UAC7BjG,eAAe,EAAE+D,QAAS;UAC1B/B,iBAAiB,EAAErE,CAAE;UACrB0D,GAAG,EAAEA,GAAI;UACTQ,cAAc,EAAEA,cAAe;UAC/BlF,iBAAiB,EAAEA,iBAAkB;UACrCmF,OAAO,EAAEA,OAAQ;UACjB1D,QAAQ,EAAEA,QAAS;UACnB8H,WAAW,EAAEA,WAAY;UACzB5E,UAAU,EAAEA,UAAW;UACvBM,OAAO,EAAEA,OAAQ;UACjB+C,KAAK,EAAEA;QAAM,CACd,CAAC;MAEN,CAAC,CACa,CAElB,CAAC;IAEP;EAAC;IAAArI,GAAA;IAAAX,KAAA,EAED,SAAQ+H,WAAWA,CAAC4E,GAA0C,EAA0B;MACtF,OACE,OAAOA,GAAG,KAAK,QAAQ,IACvB,OAAOA,GAAG,KAAK,QAAQ,iBACvBpO,KAAK,CAACyI,cAAc,CAAC2F,GAAG,CAAC,IACzB,OAAOA,GAAG,KAAK,SAAS,IACxBA,GAAG,KAAKhG,SAAS,IACjBgG,GAAG,KAAK,IAAI;IAEhB;EAAC;IAAAhM,GAAA;IAAAX,KAAA,EAED,SAAQyE,kBAAkBA,CAACmI,UAAuB,EAAU;MAC1D,IAAMC,aAAa,GAAGD,UAAU,CAACE,SAAS,CAAC,IAAI,CAAC;MAEhD,IAAI,EAAED,aAAa,YAAYE,WAAW,CAAC,EAAE;QAC3C,OAAO,CAAC;MACV;MAEA,IAAMC,YAAsB,GAAG,EAAE;MAEjC,IAAM/C,OAAO,GAAGxI,KAAK,CAACwL,IAAI,CAACL,UAAU,CAACrF,QAAQ,CAAC;MAC/C0C,OAAO,CAACvH,OAAO,CAAC,UAAC+D,MAAM,EAAK;QAC1BuG,YAAY,CAACE,IAAI,CAACzG,MAAM,CAAC0G,qBAAqB,CAAC,CAAC,CAACC,KAAK,CAAC;MACzD,CAAC,CAAC;MAEFP,aAAa,CAACjO,KAAK,CAACyO,OAAO,GAAG,MAAM;MACpCR,aAAa,CAACjO,KAAK,CAAC0O,QAAQ,GAAG,UAAU;MACzCT,aAAa,CAACjO,KAAK,CAAC2O,UAAU,GAAG,QAAQ;MACzCV,aAAa,CAACjO,KAAK,CAAC4O,mBAAmB,GAAGR,YAAY,CAACS,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI;MAEzEhM,KAAK,CAACwL,IAAI,CAACJ,aAAa,CAACtF,QAAQ,CAAC,CAAC7E,OAAO,CAAC,UAACgL,KAAK,EAAK;QACpD,IAAIA,KAAK,YAAYX,WAAW,EAAE;UAChCW,KAAK,CAAC9O,KAAK,CAAC4F,MAAM,GAAG,MAAM;QAC7B;MACF,CAAC,CAAC;MAEFmJ,QAAQ,CAACC,IAAI,CAACC,WAAW,CAAChB,aAAa,CAAC;MAExC,IAAMrI,MAAM,GAAGqI,aAAa,CAACM,qBAAqB,CAAC,CAAC,CAAC3I,MAAM;MAE3DmJ,QAAQ,CAACC,IAAI,CAACE,WAAW,CAACjB,aAAa,CAAC;MAExC,OAAOrI,MAAM;IACf;EAAC;AAAA,EA/nBmExG,SAAS;AAgoB9E2B,eAAA,CAhoBYN,OAAO,iBACG,KAAK;AAAAM,eAAA,CADfN,OAAO,WAEHT,KAAK;AAAAe,eAAA,CAFTN,OAAO,kBAII;EACpB,YAAY,EAAEsH;AAChB,CAAC;AA4nBH,OAAO,IAAMmD,GAAG,GAAG3L,eAAe,CAACkB,OAAO,EAAE;EAC1Cb,IAAI,EAAJA;AACF,CAAC,CAEA","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","_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","_this2","componentRef","call","isValidElement","cells","Object","foundCell","find","_ref6","_ref7","cellHasAccordion","accordion","componentDidUpdate","prevProps","componentWillUnmount","_this$asProps$compone3","_this$asProps6","cellValue","Boolean","_this3","mergedRow","getCellProps","_props$children","_value3","_this4","_this$asProps7","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","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","colIndex","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","_objectSpread","_assignProps","rowElementRef","includes","isRowHidden","map","withAccordion","isCellHidden","checked","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 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 componentDidUpdate(prevProps: DataTableRowProps<Data, UniqKeyType>) {\n const { row } = this.asProps;\n\n if (Array.isArray(row[ACCORDION]) && prevProps.row[ACCORDION] !== row[ACCORDION]) {\n this.setState({\n accordionRows: row[ACCORDION],\n });\n }\n }\n\n componentWillUnmount() {\n this.asProps.componentRef?.(null);\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 } = 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;\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 };\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 e.stopPropagation();\n onCellClick(e, { colIndex: props.columnIndex, rowIndex, row });\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 } = 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 return sstyled(styles)(\n <>\n <SRow\n ref={this.rowElementRef}\n render={Box}\n role='row'\n accordionType={accordionType}\n theme={selectedRows?.includes(rowUniqKey) ? 'info' : undefined}\n use:expanded={expanded && !mergedRow}\n onClick={this.handleClickRow(row)}\n aria-hidden={this.isRowHidden}\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 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 >\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 >\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={1}\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 />\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 +1 @@
1
- {"version":3,"file":"Row.types.js","names":[],"sources":["../../../../src/components/Body/Row.types.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type * as React from 'react';\n\nimport type { Body } from './Body';\nimport type { CellRenderProps } from './Body.types';\nimport type { CellPropsInner, DataTableCellProps } from './Cell.types';\nimport type { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport type { RowRoot } from './Row';\nimport type {\n ACCORDION,\n GRID_ROW_INDEX,\n IS_EMPTY_DATA_ROW,\n ROW_GROUP,\n ROW_INDEX,\n UNIQ_ROW_KEY,\n} from '../DataTable/DataTable';\nimport type {\n DTValue,\n DTUse,\n DataTableData,\n VirtualScroll,\n DataRowItem,\n DataTableProps,\n} from '../DataTable/DataTable.types';\nimport type { DTColumn } from '../Head/Column.types';\n\nexport type DTRow<UniqKeyType> = {\n [UNIQ_ROW_KEY]: UniqKeyType;\n [IS_EMPTY_DATA_ROW]?: boolean;\n [GRID_ROW_INDEX]: number;\n [ROW_INDEX]: number;\n [key: string]: DTValue | MergedRowsCell | MergedColumnsCell;\n [ACCORDION]?: React.ReactNode | DTRows<UniqKeyType>;\n [ROW_GROUP]?: Set<UniqKeyType>;\n};\nexport type DTRows<UniqKeyType> = Array<DTRow<UniqKeyType> | DTRow<UniqKeyType>[]>;\n\nexport type DataTableRowProps<Data extends DataTableData, UniqKeyType> = {\n row: DTRow<UniqKeyType>;\n mergedRow?: boolean;\n\n isAccordionRow?: DataTableCellProps<UniqKeyType>['isAccordionRow'];\n animationExpand?: DataTableCellProps<UniqKeyType>['animationExpand'];\n accordionRowIndex?: DataTableCellProps<UniqKeyType>['accordionRowIndex'];\n isNonInteractive?: boolean;\n\n componentRef?: (component: RowRoot<Data, UniqKeyType> | null) => void;\n\n accordionIndex?: number;\n};\n\nexport type RowPropsInner<Data extends DataTableData, UniqKeyType> = JSX.IntrinsicElements['div'] & {\n use: DTUse;\n /**\n * Flag to show is row in a merged list or not.\n */\n mergedRow?: boolean;\n\n columns: DTColumn[];\n row: DTRow<UniqKeyType> | DTRow<UniqKeyType>[];\n rows: DTRows<UniqKeyType>;\n flatRows: DTRow<UniqKeyType>[];\n rowIndex: number; // from 0\n gridRowIndex: number; // from 1 + 1 (or 2 if it has group) header\n\n onExpandRow: (expandedRow: DTRow<UniqKeyType>) => void;\n\n gridTemplateAreas: string[];\n gridTemplateColumns: string[];\n\n selectedRows?: UniqKeyType[];\n onSelectRow?: (\n isSelect: boolean,\n selectedRowIndex: number,\n row: DTRow<UniqKeyType>,\n event?: React.SyntheticEvent<HTMLElement>,\n ) => void;\n\n inert?: '';\n\n accordionDuration?: number | [number, number];\n onBackFromAccordion: (colName: string) => void;\n\n scrollAreaRef: React.RefObject<HTMLDivElement>;\n uid: string;\n sideIndents?: 'wide';\n getFixedStyle: (\n cell: Pick<DTColumn, 'name' | 'fixed'>,\n ) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];\n\n renderCell?: (props: CellRenderProps<Data[number], UniqKeyType>) => React.ReactNode | Record<string, any>;\n getI18nText: (key: string) => string;\n virtualScroll?: VirtualScroll;\n tableRef: React.RefObject<HTMLDivElement>;\n onCellClick: CellPropsInner<Data, UniqKeyType>['onClick'];\n rawData: DataRowItem[];\n shadowVertical?: '' | 'end' | 'start' | 'median';\n expandedRows: Set<UniqKeyType>;\n accordionMode?: DataTableProps<any, any, any>['accordionMode'];\n rowsHeightMap: Map<number, [number, number, HTMLElement]>;\n setRowHeight: (index: number, row: DTRow<UniqKeyType>) => void;\n componentsMap: Map<UniqKeyType, RowRoot<Data, UniqKeyType>>;\n calculateAriaRowIndex: () => void;\n variant?: DataTableProps<any, any, any>['variant'];\n limit?: DataTableProps<any, any, any>['limit'];\n totalRows?: number;\n hasGroups: boolean;\n};\n\nexport type DataTableRowType = (<Data extends DataTableData, UniqKeyType, Tag extends Intergalactic.Tag = 'div'>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableRowProps<Data, UniqKeyType>>\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\nIntergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps<any, any>>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"Row.types.js","names":[],"sources":["../../../../src/components/Body/Row.types.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type * as React from 'react';\n\nimport type { CellRenderProps } from './Body.types';\nimport type { DataTableCellProps } from './Cell.types';\nimport type { MergedColumnsCell, MergedRowsCell } from './MergedCells';\nimport type { RowRoot } from './Row';\nimport type {\n ACCORDION,\n GRID_ROW_INDEX,\n IS_EMPTY_DATA_ROW,\n ROW_GROUP,\n ROW_INDEX,\n UNIQ_ROW_KEY,\n} from '../DataTable/DataTable';\nimport type {\n DTValue,\n DTUse,\n DataTableData,\n VirtualScroll,\n DataRowItem,\n DataTableProps,\n} from '../DataTable/DataTable.types';\nimport type { DTColumn } from '../Head/Column.types';\n\nexport type DTRow<UniqKeyType> = {\n [UNIQ_ROW_KEY]: UniqKeyType;\n [IS_EMPTY_DATA_ROW]?: boolean;\n [GRID_ROW_INDEX]: number;\n [ROW_INDEX]: number;\n [key: string]: DTValue | MergedRowsCell | MergedColumnsCell;\n [ACCORDION]?: React.ReactNode | DTRows<UniqKeyType>;\n [ROW_GROUP]?: Set<UniqKeyType>;\n};\nexport type DTRows<UniqKeyType> = Array<DTRow<UniqKeyType> | DTRow<UniqKeyType>[]>;\n\nexport type DataTableRowProps<Data extends DataTableData, UniqKeyType> = {\n row: DTRow<UniqKeyType>;\n mergedRow?: boolean;\n\n isAccordionRow?: boolean;\n accordionRowIndex?: DataTableCellProps<Data, UniqKeyType>['accordionRowIndex'];\n isNonInteractive?: boolean;\n\n componentRef?: (component: RowRoot<Data, UniqKeyType> | null) => void;\n\n accordionIndex?: number;\n};\n\nexport type RowPropsInner<Data extends DataTableData, UniqKeyType> = JSX.IntrinsicElements['div'] & {\n use: DTUse;\n /**\n * Flag to show is row in a merged list or not.\n */\n mergedRow?: boolean;\n\n columns: DTColumn[];\n row: DTRow<UniqKeyType> | DTRow<UniqKeyType>[];\n rows: DTRows<UniqKeyType>;\n flatRows: DTRow<UniqKeyType>[];\n rowIndex: number; // from 0\n gridRowIndex: number; // from 1 + 1 (or 2 if it has group) header\n\n onExpandRow: (expandedRow: DTRow<UniqKeyType>) => void;\n\n gridTemplateAreas: string[];\n gridTemplateColumns: string[];\n\n selectedRows?: UniqKeyType[];\n onSelectRow?: (\n isSelect: boolean,\n selectedRowIndex: number,\n row: DTRow<UniqKeyType>,\n event?: React.SyntheticEvent<HTMLElement>,\n ) => void;\n\n inert?: '';\n\n accordionDuration: number | [number, number];\n accordionAnimationRows: number;\n onBackFromAccordion: (colName: string) => void;\n\n scrollAreaRef: React.RefObject<HTMLDivElement>;\n uid: string;\n sideIndents?: 'wide';\n getFixedStyle: (\n cell: Pick<DTColumn, 'name' | 'fixed'>,\n ) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];\n\n renderCell?: (props: CellRenderProps<Data[number], UniqKeyType>) => React.ReactNode | Record<string, any>;\n getI18nText: (key: string) => string;\n virtualScroll?: VirtualScroll;\n tableRef: React.RefObject<HTMLDivElement>;\n onCellClick: DataTableCellProps<Data, UniqKeyType>['onClick'];\n rawData: DataRowItem[];\n shadowVertical?: '' | 'end' | 'start' | 'median';\n expandedRows: Set<UniqKeyType>;\n accordionMode?: DataTableProps<any, any, any>['accordionMode'];\n rowsHeightMap: Map<number, [number, number, HTMLElement]>;\n setRowHeight: (index: number, row: DTRow<UniqKeyType>) => void;\n componentsMap: Map<UniqKeyType, RowRoot<Data, UniqKeyType>>;\n calculateAriaRowIndex: () => void;\n variant: DataTableProps<any, any, any>['variant'];\n limit: DataTableProps<any, any, any>['limit'];\n totalRows?: number;\n hasGroups: boolean;\n};\n\nexport type DataTableRowType = (<Data extends DataTableData, UniqKeyType, Tag extends Intergalactic.Tag = 'div'>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableRowProps<Data, UniqKeyType> & Partial<RowPropsInner<Data, UniqKeyType>>>\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\nIntergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps<any, any>>;\n"],"mappings":"","ignoreList":[]}
@@ -1,7 +1,18 @@
1
- SBody, SRow, SRowGroup, SAccordionRows {
1
+ SBody, SRow, SRowGroup {
2
2
  display: contents;
3
3
  }
4
4
 
5
+ SAccordionRows {
6
+ display: grid;
7
+ grid-column: 1 / -1;
8
+ grid-row: var(--gridRow);
9
+ overflow: clip;
10
+ transition-property: max-height;
11
+ transition-duration: var(--duration);
12
+ transition-timing-function: linear;
13
+ grid-template-columns: subgrid;
14
+ }
15
+
5
16
  SBody[compact] {
6
17
  SCell {
7
18
  padding: var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px);
@@ -66,6 +77,26 @@ SCell:not([theme])[expanded][withAccordion] {
66
77
  background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
67
78
  }
68
79
 
80
+ SCell[theme='muted'][expanded][withAccordion] {
81
+ background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
82
+ }
83
+
84
+ SCell[theme='info'][expanded][withAccordion] {
85
+ background-color: var(--intergalactic-table-td-cell-selected-hover, #c4e5fe);
86
+ }
87
+
88
+ SCell[theme='success'][expanded][withAccordion] {
89
+ background-color: var(--intergalactic-table-td-cell-new-hover, #9ef2c9);
90
+ }
91
+
92
+ SCell[theme='warning'][expanded][withAccordion] {
93
+ background-color: var(--intergalactic-table-td-cell-warning-hover, #ffdca2);
94
+ }
95
+
96
+ SCell[theme='danger'][expanded][withAccordion] {
97
+ background-color: var(--intergalactic-table-td-cell-critical-hover, #ffd7df);
98
+ }
99
+
69
100
  SCollapseRow > SCellWrapper > SCell:not([theme]), SRow[isAccordionRow] > SCellWrapper > SCell:not([theme]) {
70
101
  background-color: var(--intergalactic-table-td-cell-accordion, #f4f5f9);
71
102
  }
@@ -339,13 +370,6 @@ SRow[sideIndents='wide'], SCollapseRow[sideIndents='wide'] {
339
370
  }
340
371
  }
341
372
 
342
- SRow[isAccordionRow][withAnimation] > SCellWrapper {
343
- transition-property: height;
344
- transition-delay: var(--delay);
345
- transition-duration: var(--duration);
346
- transition-timing-function: linear;
347
- overflow: clip;
348
- }
349
373
 
350
374
  SCellWrapper[fixed][shadowVertical] {
351
375
  &:after {
@@ -21,38 +21,38 @@ import { isFocusInside, hasFocusableIn } from '@semcore/core/lib/utils/use/useFo
21
21
  import { NoData } from '@semcore/widget-empty';
22
22
  import * as React from 'react';
23
23
  /*!__reshadow-styles__:"./dataTable.shadow.css"*/
24
- var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SDataTable_z1x46_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content;grid-auto-rows:min-content}.___SDataTable_z1x46_gg_.__isDataEmpty_z1x46_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_z1x46_gg_.__gridTemplateColumns_z1x46_gg_{grid-template-columns:var(--gridTemplateColumns_z1x46)}.___SDataTable_z1x46_gg_.__gridTemplateAreas_z1x46_gg_{grid-template-areas:var(--gridTemplateAreas_z1x46)}.___SDataTable_z1x46_gg_.__gridTemplateRows_z1x46_gg_{grid-template-rows:var(--gridTemplateRows_z1x46)}", /*__inner_css_end__*/"z1x46_gg_"),
24
+ var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SDataTable_1iq11_gg_{display:grid;align-items:start;min-width:-moz-fit-content;min-width:fit-content;grid-auto-rows:min-content}.___SDataTable_1iq11_gg_.__isDataEmpty_1iq11_gg_{display:block;align-items:initial;min-width:initial}.___SDataTable_1iq11_gg_.__gridTemplateColumns_1iq11_gg_{grid-template-columns:var(--gridTemplateColumns_1iq11)}.___SDataTable_1iq11_gg_.__gridTemplateAreas_1iq11_gg_{grid-template-areas:var(--gridTemplateAreas_1iq11)}.___SDataTable_1iq11_gg_.__gridTemplateRows_1iq11_gg_{grid-template-rows:var(--gridTemplateRows_1iq11)}", /*__inner_css_end__*/"1iq11_gg_"),
25
25
  /*__reshadow_css_end__*/
26
26
  {
27
- "__SDataTable": "___SDataTable_z1x46_gg_",
28
- "_isDataEmpty": "__isDataEmpty_z1x46_gg_",
29
- "_gridTemplateColumns": "__gridTemplateColumns_z1x46_gg_",
30
- "--gridTemplateColumns": "--gridTemplateColumns_z1x46",
31
- "_gridTemplateAreas": "__gridTemplateAreas_z1x46_gg_",
32
- "--gridTemplateAreas": "--gridTemplateAreas_z1x46",
33
- "_gridTemplateRows": "__gridTemplateRows_z1x46_gg_",
34
- "--gridTemplateRows": "--gridTemplateRows_z1x46"
27
+ "__SDataTable": "___SDataTable_1iq11_gg_",
28
+ "_isDataEmpty": "__isDataEmpty_1iq11_gg_",
29
+ "_gridTemplateColumns": "__gridTemplateColumns_1iq11_gg_",
30
+ "--gridTemplateColumns": "--gridTemplateColumns_1iq11",
31
+ "_gridTemplateAreas": "__gridTemplateAreas_1iq11_gg_",
32
+ "--gridTemplateAreas": "--gridTemplateAreas_1iq11",
33
+ "_gridTemplateRows": "__gridTemplateRows_1iq11_gg_",
34
+ "--gridTemplateRows": "--gridTemplateRows_1iq11"
35
35
  });
36
36
  /*!__reshadow-styles__:"../../style/scroll-shadows.shadow.css"*/
37
- var scrollStyles = (/*__reshadow_css_start__*/_sstyled2.insert(/*__inner_css_start__*/".___SScrollArea_1dxkn_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_{overflow:visible;overflow:initial}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_both_1dxkn_gg_{overflow:auto}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_both_1dxkn_gg_.__loading_1dxkn_gg_,.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_horizontal_1dxkn_gg_.__loading_1dxkn_gg_,.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_vertical_1dxkn_gg_.__loading_1dxkn_gg_{overflow:hidden}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_horizontal_1dxkn_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_._scrollDirection_vertical_1dxkn_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__headerHeight_1dxkn_gg_{scroll-padding-top:var(--headerHeight_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__leftScrollPadding_1dxkn_gg_{scroll-padding-left:var(--leftScrollPadding_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SContainer_1dxkn_gg_.__rightScrollPadding_1dxkn_gg_{scroll-padding-right:var(--rightScrollPadding_1dxkn)}.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_::before,.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_:after,.___SScrollArea_1dxkn_gg_ .___SShadowVertical_1dxkn_gg_::after{z-index:20}.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_.__leftOffset_1dxkn_gg_::before,.___SScrollArea_1dxkn_gg_ .___SShadowHorizontal_1dxkn_gg_.__rightOffset_1dxkn_gg_::after,.___SScrollArea_1dxkn_gg_ .___SShadowVertical_1dxkn_gg_::before{display:none}", /*__inner_css_end__*/"1dxkn_gg_"),
37
+ var scrollStyles = (/*__reshadow_css_start__*/_sstyled2.insert(/*__inner_css_start__*/".___SScrollArea_1ermj_gg_{width:-moz-fit-content;width:fit-content}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_{overflow:visible;overflow:initial}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_._scrollDirection_both_1ermj_gg_{overflow:auto}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_._scrollDirection_both_1ermj_gg_.__loading_1ermj_gg_,.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_._scrollDirection_horizontal_1ermj_gg_.__loading_1ermj_gg_,.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_._scrollDirection_vertical_1ermj_gg_.__loading_1ermj_gg_{overflow:hidden}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_._scrollDirection_horizontal_1ermj_gg_{overflow-x:auto;overflow-y:initial}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_._scrollDirection_vertical_1ermj_gg_{overflow-x:initial;overflow-y:auto}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_.__headerHeight_1ermj_gg_{scroll-padding-top:var(--headerHeight_1ermj)}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_.__leftScrollPadding_1ermj_gg_{scroll-padding-left:var(--leftScrollPadding_1ermj)}.___SScrollArea_1ermj_gg_ .___SContainer_1ermj_gg_.__rightScrollPadding_1ermj_gg_{scroll-padding-right:var(--rightScrollPadding_1ermj)}.___SScrollArea_1ermj_gg_ .___SShadowHorizontal_1ermj_gg_::before,.___SScrollArea_1ermj_gg_ .___SShadowHorizontal_1ermj_gg_:after,.___SScrollArea_1ermj_gg_ .___SShadowVertical_1ermj_gg_::after{z-index:20}.___SScrollArea_1ermj_gg_ .___SShadowHorizontal_1ermj_gg_.__leftOffset_1ermj_gg_::before,.___SScrollArea_1ermj_gg_ .___SShadowHorizontal_1ermj_gg_.__rightOffset_1ermj_gg_::after,.___SScrollArea_1ermj_gg_ .___SShadowVertical_1ermj_gg_::before{display:none}", /*__inner_css_end__*/"1ermj_gg_"),
38
38
  /*__reshadow_css_end__*/
39
39
  {
40
- "__SScrollArea": "___SScrollArea_1dxkn_gg_",
41
- "__SContainer": "___SContainer_1dxkn_gg_",
42
- "_scrollDirection_both": "_scrollDirection_both_1dxkn_gg_",
43
- "_loading": "__loading_1dxkn_gg_",
44
- "_scrollDirection_horizontal": "_scrollDirection_horizontal_1dxkn_gg_",
45
- "_scrollDirection_vertical": "_scrollDirection_vertical_1dxkn_gg_",
46
- "_headerHeight": "__headerHeight_1dxkn_gg_",
47
- "--headerHeight": "--headerHeight_1dxkn",
48
- "_leftScrollPadding": "__leftScrollPadding_1dxkn_gg_",
49
- "--leftScrollPadding": "--leftScrollPadding_1dxkn",
50
- "_rightScrollPadding": "__rightScrollPadding_1dxkn_gg_",
51
- "--rightScrollPadding": "--rightScrollPadding_1dxkn",
52
- "__SShadowVertical": "___SShadowVertical_1dxkn_gg_",
53
- "__SShadowHorizontal": "___SShadowHorizontal_1dxkn_gg_",
54
- "_leftOffset": "__leftOffset_1dxkn_gg_",
55
- "_rightOffset": "__rightOffset_1dxkn_gg_"
40
+ "__SScrollArea": "___SScrollArea_1ermj_gg_",
41
+ "__SContainer": "___SContainer_1ermj_gg_",
42
+ "_scrollDirection_both": "_scrollDirection_both_1ermj_gg_",
43
+ "_loading": "__loading_1ermj_gg_",
44
+ "_scrollDirection_horizontal": "_scrollDirection_horizontal_1ermj_gg_",
45
+ "_scrollDirection_vertical": "_scrollDirection_vertical_1ermj_gg_",
46
+ "_headerHeight": "__headerHeight_1ermj_gg_",
47
+ "--headerHeight": "--headerHeight_1ermj",
48
+ "_leftScrollPadding": "__leftScrollPadding_1ermj_gg_",
49
+ "--leftScrollPadding": "--leftScrollPadding_1ermj",
50
+ "_rightScrollPadding": "__rightScrollPadding_1ermj_gg_",
51
+ "--rightScrollPadding": "--rightScrollPadding_1ermj",
52
+ "__SShadowVertical": "___SShadowVertical_1ermj_gg_",
53
+ "__SShadowHorizontal": "___SShadowHorizontal_1ermj_gg_",
54
+ "_leftOffset": "__leftOffset_1ermj_gg_",
55
+ "_rightOffset": "__rightOffset_1ermj_gg_"
56
56
  });
57
57
  import { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';
58
58
  import { Body } from '../Body/Body';
@@ -228,7 +228,9 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
228
228
  if (headerCell !== cell && describedBy) {
229
229
  cell.setAttribute('aria-describedby', describedBy);
230
230
  }
231
- cell === null || cell === void 0 || cell.focus();
231
+ cell === null || cell === void 0 || cell.focus({
232
+ focusVisible: true
233
+ });
232
234
  if (newRow !== 0) {
233
235
  currentHeaderCell === null || currentHeaderCell === void 0 || currentHeaderCell.setAttribute('inert', '');
234
236
  var _headerCell = headerCells === null || headerCells === void 0 ? void 0 : headerCells.item(newCol);
@@ -394,9 +396,13 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
394
396
  cell === null || cell === void 0 || cell.removeAttribute('inert');
395
397
  if (cell instanceof HTMLElement) {
396
398
  if (hasParent(e.target, cell) && !e.target.dataset.skipTargetFocus) {
397
- e.target.focus();
399
+ e.target.focus({
400
+ focusVisible: true
401
+ });
398
402
  } else {
399
- cell.focus();
403
+ cell.focus({
404
+ focusVisible: true
405
+ });
400
406
  }
401
407
  }
402
408
  if (_this.isDataEmpty) {
@@ -700,13 +706,15 @@ var DataTableRoot = /*#__PURE__*/function (_Component) {
700
706
  renderCellOverlay = _this$asProps8.renderCellOverlay,
701
707
  limit = _this$asProps8.limit,
702
708
  variant = _this$asProps8.variant,
703
- totalRows = _this$asProps8.totalRows;
709
+ totalRows = _this$asProps8.totalRows,
710
+ accordionAnimationRows = _this$asProps8.accordionAnimationRows;
704
711
  var _this$gridSettings2 = this.gridSettings,
705
712
  gridTemplateColumns = _this$gridSettings2.gridTemplateColumns,
706
713
  gridTemplateAreas = _this$gridSettings2.gridTemplateAreas;
707
714
  var shadowVertical = this.state.shadowVertical;
708
715
  return {
709
716
  accordionDuration: accordionDuration,
717
+ accordionAnimationRows: accordionAnimationRows,
710
718
  accordionMode: accordionMode,
711
719
  columns: this.columns,
712
720
  rows: this.getRows(),
@@ -1162,7 +1170,9 @@ _defineProperty(DataTableRoot, "defaultProps", {
1162
1170
  w: "100%"
1163
1171
  });
1164
1172
  },
1165
- variant: 'default'
1173
+ variant: 'default',
1174
+ accordionAnimationRows: 40,
1175
+ accordionDuration: 200
1166
1176
  });
1167
1177
  export var DataTable = createComponent(DataTableRoot, {
1168
1178
  Head: Head,