@semcore/data-table 16.3.2 → 16.4.0-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 (66) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/cjs/components/Body/Body.js +58 -53
  3. package/lib/cjs/components/Body/Body.js.map +1 -1
  4. package/lib/cjs/components/Body/Body.types.js.map +1 -1
  5. package/lib/cjs/components/Body/Cell.js +62 -107
  6. package/lib/cjs/components/Body/Cell.js.map +1 -1
  7. package/lib/cjs/components/Body/LimitOverlay.js +190 -0
  8. package/lib/cjs/components/Body/LimitOverlay.js.map +1 -0
  9. package/lib/cjs/components/Body/Row.js +161 -109
  10. package/lib/cjs/components/Body/Row.js.map +1 -1
  11. package/lib/cjs/components/Body/Row.types.js.map +1 -1
  12. package/lib/cjs/components/Body/style.shadow.css +94 -42
  13. package/lib/cjs/components/DataTable/DataTable.js +61 -41
  14. package/lib/cjs/components/DataTable/DataTable.js.map +1 -1
  15. package/lib/cjs/components/DataTable/DataTable.types.js.map +1 -1
  16. package/lib/cjs/components/DataTable/dataTable.shadow.css +1 -0
  17. package/lib/cjs/components/Head/Column.js +45 -92
  18. package/lib/cjs/components/Head/Column.js.map +1 -1
  19. package/lib/cjs/components/Head/Group.js +38 -41
  20. package/lib/cjs/components/Head/Group.js.map +1 -1
  21. package/lib/cjs/components/Head/Head.js +38 -41
  22. package/lib/cjs/components/Head/Head.js.map +1 -1
  23. package/lib/cjs/enhancers/focusableCell.js +63 -0
  24. package/lib/cjs/enhancers/focusableCell.js.map +1 -0
  25. package/lib/es6/components/Body/Body.js +57 -52
  26. package/lib/es6/components/Body/Body.js.map +1 -1
  27. package/lib/es6/components/Body/Body.types.js.map +1 -1
  28. package/lib/es6/components/Body/Cell.js +61 -106
  29. package/lib/es6/components/Body/Cell.js.map +1 -1
  30. package/lib/es6/components/Body/LimitOverlay.js +183 -0
  31. package/lib/es6/components/Body/LimitOverlay.js.map +1 -0
  32. package/lib/es6/components/Body/Row.js +160 -108
  33. package/lib/es6/components/Body/Row.js.map +1 -1
  34. package/lib/es6/components/Body/Row.types.js.map +1 -1
  35. package/lib/es6/components/Body/style.shadow.css +94 -42
  36. package/lib/es6/components/DataTable/DataTable.js +60 -40
  37. package/lib/es6/components/DataTable/DataTable.js.map +1 -1
  38. package/lib/es6/components/DataTable/DataTable.types.js.map +1 -1
  39. package/lib/es6/components/DataTable/dataTable.shadow.css +1 -0
  40. package/lib/es6/components/Head/Column.js +44 -91
  41. package/lib/es6/components/Head/Column.js.map +1 -1
  42. package/lib/es6/components/Head/Group.js +37 -40
  43. package/lib/es6/components/Head/Group.js.map +1 -1
  44. package/lib/es6/components/Head/Head.js +37 -40
  45. package/lib/es6/components/Head/Head.js.map +1 -1
  46. package/lib/es6/enhancers/focusableCell.js +56 -0
  47. package/lib/es6/enhancers/focusableCell.js.map +1 -0
  48. package/lib/esm/components/Body/Body.mjs +58 -56
  49. package/lib/esm/components/Body/Cell.mjs +62 -109
  50. package/lib/esm/components/Body/LimitOverlay.mjs +178 -0
  51. package/lib/esm/components/Body/Row.mjs +125 -85
  52. package/lib/esm/components/Body/style.shadow.css +94 -42
  53. package/lib/esm/components/DataTable/DataTable.mjs +59 -42
  54. package/lib/esm/components/DataTable/dataTable.shadow.css +1 -0
  55. package/lib/esm/components/Head/Column.mjs +45 -94
  56. package/lib/esm/components/Head/Group.mjs +38 -43
  57. package/lib/esm/components/Head/Head.mjs +38 -43
  58. package/lib/esm/enhancers/focusableCell.mjs +59 -0
  59. package/lib/types/components/Body/Body.types.d.ts +2 -1
  60. package/lib/types/components/Body/LimitOverlay.d.ts +17 -0
  61. package/lib/types/components/Body/Row.d.ts +1 -0
  62. package/lib/types/components/Body/Row.types.d.ts +3 -0
  63. package/lib/types/components/DataTable/DataTable.types.d.ts +19 -0
  64. package/lib/types/components/Head/Column.d.ts +5 -4
  65. package/lib/types/enhancers/focusableCell.d.ts +9 -0
  66. package/package.json +22 -22
@@ -1 +1 @@
1
- {"version":3,"file":"Row.js","names":["_core","require","_baseComponents","_button","_checkbox","_interopRequireDefault","_assignProps2","_isInteractiveElement","_m","React","_interopRequireWildcard","_Cell","_MergedCells","_DataTable","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct2","Reflect","construct","constructor","apply","style","sstyled","insert","RowRoot","exports","_Component","props","_this","_classCallCheck2","_defineProperty2","createRef","expandedForAnimation","calculatedHeight","withAnimation","value","event","_this$asProps","asProps","row","rowIndex","onSelectRow","preventDefault","stopPropagation","_this$asProps2","key","onBackFromAccordion","cellName","index","_this$asProps3","accordionDuration","accordionMode","expandedRows","onExpandRow","setRowHeight","rowsHeightMap","calculateAriaRowIndex","state","openDuration","Array","isArray","ACCORDION","Math","min","length","closeDuration","setTimeout","i","size","has","UNIQ_ROW_KEY","closeAccordion","closeAccordionTimeout","clearTimeout","setState","previousRows","Map","flatRows","forEach","set","_toConsumableArray2","entries","_ref5","_ref6","_slicedToArray2","uniqKey","previousRow","_this$asProps$compone","componentsMap","get","forceUpdate","_this$asProps4","window","opt","isInteractiveElement","target","handleExpandRow","handleClickRow","bind","_inherits2","_createClass2","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","MergedRowsCell","MergedColumnsCell","Boolean","_this2","ROW_INDEX","mergedRow","getCellProps","_props$children","_value3","_this3","_this$asProps8","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","SAccordionToggle","ButtonLink","dataKey","column","name","undefined","isMergedRows","isMergedColumns","defaultRender","_value","isValidElement","toString","withoutBorder","IS_EMPTY_DATA_ROW","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","_value$toString","_value2","rowRawData","external","columnName","columnIndex","isReactNode","callAllEventHandlers","accordion","_ref2","_value4","expanded","handleClick","colIndex","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","ChevronRightM","render","_ref","_ref3","_this4","SRow","Box","SCollapseRow","Collapse","SAccordionRows","SCell","Row","Cell","SCheckboxCell","_this$asProps9","columns","gridRowIndex","_this$asProps9$ariaL","ariaLevel","selectedRows","uid","getFixedStyle","sideIndents","_this$state","accordionRows","accordionComponent","accordionType","cells","Object","foundCell","find","_ref7","_ref8","accordionDataGridArea","_row$ROW_GROUP","rowIncrement","ROW_GROUP","concat","rowUniqKey","_objectSpread2","assignProps","includes","map","_ref4","checked","SELECT_ALL","handleClickCheckbox","handleSelectRow","Value","fixed","_getFixedStyle","_getFixedStyle2","withAccordion","handleBackFromAccordion","subrow","accordionIndex","obj","rowElement","accordionFull","cloneNode","HTMLElement","columnsWidth","from","push","getBoundingClientRect","width","display","position","visibility","gridTemplateColumns","join","child","document","body","appendChild","removeChild","Component","createComponent"],"sources":["../../../../src/components/Body/Row.tsx"],"sourcesContent":["import { Box, Collapse } from '@semcore/base-components';\nimport { ButtonLink } from '@semcore/button';\nimport Checkbox from '@semcore/checkbox';\nimport { Component, Root, sstyled, createComponent } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport { isInteractiveElement } from '@semcore/core/lib/utils/isInteractiveElement';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport * as React from 'react';\n\nimport { Cell } from './Cell';\nimport type { DataTableCellProps, DataTableCellType } from './Cell.types';\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 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 } = 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 if (\n (props.columnIndex === 0 && 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 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 } = 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 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 >\n {columns.map((column, i) => {\n if (selectedRows && i === 0 && row[IS_EMPTY_DATA_ROW] !== true) {\n const checked = selectedRows.includes(rowUniqKey);\n return sstyled(styles)(\n <SCheckboxCell\n key={i}\n row={row}\n rowIndex={rowIndex}\n // @ts-ignore\n column={{ name: SELECT_ALL.toString() }}\n columnIndex={0}\n gridRowIndex={gridRowIndex}\n onClick={this.handleClickCheckbox(!checked)}\n >\n <Checkbox\n checked={checked}\n aria-labelledby={`${uid}_${rowUniqKey}_1`}\n onChange={this.handleSelectRow}\n >\n <Checkbox.Value />\n </Checkbox>\n </SCheckboxCell>,\n );\n }\n\n const index = i;\n const cellValue: DTValue | MergedRowsCell | MergedColumnsCell | undefined =\n row[column.name];\n\n if (cellValue === undefined) {\n return null;\n }\n\n const style: React.CSSProperties = {};\n\n if (column.fixed) {\n const [name, value] = getFixedStyle(column);\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n }\n\n return (\n <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 withAccordion={\n Boolean(cellValue instanceof MergedRowsCell && cellValue.accordion) ||\n this.cellHasAccordion(cellValue)\n }\n isAccordionRow={isAccordionRow}\n animationExpand={animationExpand}\n accordionRowIndex={accordionRowIndex}\n rows={rows}\n />\n );\n })}\n </SRow>\n\n {React.isValidElement(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 >\n <SCell\n aria-colindex={1}\n aria-level={ariaLevel + 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 />\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":"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","ignoreList":[]}
1
+ {"version":3,"file":"Row.js","names":["_core","require","_baseComponents","_button","_checkbox","_interopRequireDefault","_assignProps2","_isInteractiveElement","_m","React","_interopRequireWildcard","_Cell","_LimitOverlay","_MergedCells","_DataTable","style","sstyled","insert","RowRoot","exports","_Component","props","_this","_classCallCheck2","_callSuper2","_defineProperty2","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","ACCORDION","Math","min","length","closeDuration","setTimeout","i","size","has","UNIQ_ROW_KEY","closeAccordion","closeAccordionTimeout","clearTimeout","setState","previousRows","Map","flatRows","forEach","set","_toConsumableArray2","entries","_ref4","_ref5","_slicedToArray2","uniqKey","previousRow","_this$asProps$compone","componentsMap","get","forceUpdate","_this$asProps4","window","opt","isInteractiveElement","target","handleExpandRow","handleClickRow","bind","_inherits2","_createClass2","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","MergedRowsCell","MergedColumnsCell","Boolean","_this2","ROW_INDEX","mergedRow","getCellProps","_props$children","_value3","_this3","_this$asProps8","use","renderCell","styles","getI18nText","virtualScroll","tableRef","onCellClick","rawData","shadowVertical","variant","isAccordionRow","accordionRowIndex","selectedRows","SAccordionToggle","ButtonLink","dataKey","column","name","undefined","isMergedRows","isMergedColumns","defaultRender","_value","isValidElement","toString","withoutBorder","IS_EMPTY_DATA_ROW","isLastRow","isLastAccordionRow","rows","extraProps","children","onClick","_value$toString","_value2","rowRawData","external","columnName","columnIndex","isReactNode","callAllEventHandlers","firstColumnIndex","accordion","_ref2","_value4","expanded","handleClick","colIndex","handleClickCell","createElement","Fragment","cn","id","accordionId","Addon","tag","ChevronRightM","_this$asProps9","limit","rowsLimit","fromRow","columnsLimit","fromColumn","render","_ref","_ref3","_this4","_limit$fromRow","SRow","Box","SCollapseRow","Collapse","SAccordionRows","SCell","Row","Cell","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","ROW_GROUP","concat","rowUniqKey","_objectSpread2","assignProps","includes","isRowHidden","map","withAccordion","isCellHidden","checked","SELECT_ALL","handleClickCheckbox","onChange","handleSelectRow","Value","fixed","_getFixedStyle","_getFixedStyle2","LimitOverlay","handleBackFromAccordion","subrow","accordionIndex","obj","rowElement","accordionFull","cloneNode","HTMLElement","columnsWidth","from","push","getBoundingClientRect","width","display","position","visibility","gridTemplateColumns","join","child","document","body","appendChild","removeChild","Component","createComponent"],"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":"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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};\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 { 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":[]}
@@ -21,6 +21,11 @@ SBody[compact] {
21
21
  padding-left: calc(var(--intergalactic-spacing-5x, 20px) + ((var(--intergalactic-spacing-4x, 16px) + var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) * (var(--data-aria-level) - 1)));
22
22
  }
23
23
  }
24
+ SCollapseRow[sideIndents='wide'] {
25
+ SCellWrapper:first-child SCell[data-aria-level] {
26
+ padding-left: calc(var(--intergalactic-spacing-5x, 20px) + ((var(--intergalactic-spacing-4x, 16px) + var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) * (var(--data-aria-level) - 1)));
27
+ }
28
+ }
24
29
 
25
30
  SCell SAccordionToggle {
26
31
  margin-right: var(--intergalactic-spacing-2x, 8px);
@@ -67,59 +72,59 @@ SCollapseRow > SCellWrapper > SCell:not([theme]), SRow[isAccordionRow] > SCellWr
67
72
 
68
73
  /* we need a media query here because of the postcssHoverMediaFeature plugin. it doesn't handle this type of selectors correctly */
69
74
  @media (hover: hover) {
70
- SRow:not([accordionType='row'][expanded]):hover:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
71
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
72
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]) {
75
+ SRow:not([accordionType='row'][expanded]):hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
76
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
77
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]):not([aria-hidden]) {
73
78
  background-color: var(--intergalactic-table-td-cell-hover, #f0f0f4);
74
79
  }
75
80
 
76
81
  /* MUTED THEME */
77
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='muted'],
78
- SRow[theme='muted']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
79
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='muted'],
80
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='muted']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
81
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='muted'],
82
- SRowGroup:has(SCell:hover) > SRow[theme='muted']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
83
- background-color: var(--intergalactic-table-td-cell-hover, #f0f0f4);
82
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='muted']:not([aria-hidden]),
83
+ SRow[theme='muted']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
84
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='muted']:not([aria-hidden]),
85
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='muted']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
86
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='muted']:not([aria-hidden]),
87
+ SRowGroup:has(SCell:hover) > SRow[theme='muted']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
88
+ background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
84
89
  }
85
90
 
86
91
  /* INFO THEME */
87
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='info'],
88
- SRow[theme='info']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
89
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='info'],
90
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='info']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
91
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='info'],
92
- SRowGroup:has(SCell:hover) > SRow[theme='info']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
92
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='info']:not([aria-hidden]),
93
+ SRow[theme='info']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
94
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='info']:not([aria-hidden]),
95
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='info']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
96
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='info']:not([aria-hidden]),
97
+ SRowGroup:has(SCell:hover) > SRow[theme='info']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
93
98
  background-color: var(--intergalactic-table-td-cell-selected-hover, #c4e5fe);
94
99
  }
95
100
 
96
101
  /* SUCCESS THEME */
97
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='success'],
98
- SRow[theme='success']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
99
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='success'],
100
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='success']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
101
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='success'],
102
- SRowGroup:has(SCell:hover) > SRow[theme='success']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]) {
102
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='success']:not([aria-hidden]),
103
+ SRow[theme='success']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
104
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='success']:not([aria-hidden]),
105
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='success']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
106
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='success']:not([aria-hidden]),
107
+ SRowGroup:has(SCell:hover) > SRow[theme='success']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([expanded][withAccordion]):not([aria-hidden]) {
103
108
  background-color: var(--intergalactic-table-td-cell-new-hover, #9ef2c9);
104
109
  }
105
110
 
106
111
  /* WARNING THEME */
107
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='warning'],
108
- SRow[theme='warning']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
109
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='warning'],
110
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='warning']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
111
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='warning'],
112
- SRowGroup:has(SCell:hover) > SRow[theme='warning']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
112
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='warning']:not([aria-hidden]),
113
+ SRow[theme='warning']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
114
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='warning']:not([aria-hidden]),
115
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='warning']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
116
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='warning']:not([aria-hidden]),
117
+ SRowGroup:has(SCell:hover) > SRow[theme='warning']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
113
118
  background-color: var(--intergalactic-table-td-cell-warning-hover, #ffdca2);
114
119
  }
115
120
 
116
121
  /* DANGER THEME */
117
- SRow:hover:not([isNonInteractive]) > SCellWrapper > SCell[theme='danger'],
118
- SRow[theme='danger']:hover:not([expanded][isNonInteractive]) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]),
119
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[theme='danger'],
120
- SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='danger']:not([isNonInteractive]) > SCellWrapper > SCell:not([theme]),
121
- SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='danger'],
122
- SRowGroup:has(SCell:hover) > SRow[theme='danger']:not([isNonInteractive]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]) {
122
+ SRow:hover:not([isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell[theme='danger']:not([aria-hidden]),
123
+ SRow[theme='danger']:hover:not([expanded][isNonInteractive]):not([aria-hidden]):not(:has(SLimitOverlayCellWrapper:hover)) > SCellWrapper > SCell:not([theme]):not([expanded][withAccordion]):not([aria-hidden]),
124
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[theme='danger']:not([aria-hidden]),
125
+ SRowGroup:has(SCell[data-grouped-by='rowgroup']:hover) > SRow[theme='danger']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell:not([theme]):not([aria-hidden]),
126
+ SRowGroup:has(SCell:hover) > SRow:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup'][theme='danger']:not([aria-hidden]),
127
+ SRowGroup:has(SCell:hover) > SRow[theme='danger']:not([isNonInteractive]):not([aria-hidden]) > SCellWrapper > SCell[data-grouped-by='rowgroup']:not([theme]):not([aria-hidden]) {
123
128
  background-color: var(--intergalactic-table-td-cell-critical-hover, #ffd7df);
124
129
  }
125
130
  }
@@ -127,7 +132,12 @@ SCollapseRow > SCellWrapper > SCell:not([theme]), SRow[isAccordionRow] > SCellWr
127
132
  /* MUTED THEME */
128
133
 
129
134
  SRow[theme='muted'] SCell:not([theme]) {
130
- background-color: var(--intergalactic-table-td-cell-unread, #f4f5f9);
135
+ &:not([expanded][withAccordion]) {
136
+ background-color: var(--intergalactic-table-td-cell-unread, #f4f5f9);
137
+ }
138
+ &[expanded][withAccordion] {
139
+ background-color: var(--intergalactic-table-td-cell-active, #e6e7ed);
140
+ }
131
141
  }
132
142
 
133
143
  SRow[theme='muted'][active] > SCellWrapper > SCell:not([theme]) {
@@ -137,7 +147,12 @@ SRow[theme='muted'][active] > SCellWrapper > SCell:not([theme]) {
137
147
  /* INFO THEME */
138
148
 
139
149
  SRow[theme='info'] SCell:not([theme]) {
140
- background-color: var(--intergalactic-table-td-cell-selected, #e9f7ff);
150
+ &:not([expanded][withAccordion]) {
151
+ background-color: var(--intergalactic-table-td-cell-selected, #e9f7ff);
152
+ }
153
+ &[expanded][withAccordion] {
154
+ background-color: var(--intergalactic-table-td-cell-selected-active, #c4e5fe);
155
+ }
141
156
  }
142
157
 
143
158
  SRow[theme='info'][active] > SCellWrapper > SCell:not([theme]) {
@@ -147,7 +162,12 @@ SRow[theme='info'][active] > SCellWrapper > SCell:not([theme]) {
147
162
  /* SUCCESS THEME */
148
163
 
149
164
  SRow[theme='success'] SCell:not([theme]) {
150
- background-color: var(--intergalactic-table-td-cell-new, #dbfee8);
165
+ &:not([expanded][withAccordion]) {
166
+ background-color: var(--intergalactic-table-td-cell-new, #dbfee8);
167
+ }
168
+ &[expanded][withAccordion] {
169
+ background-color: var(--intergalactic-table-td-cell-new-active, #9ef2c9);
170
+ }
151
171
  }
152
172
 
153
173
  SRow[theme='success'][active] > SCellWrapper > SCell:not([theme]) {
@@ -157,7 +177,12 @@ SRow[theme='success'][active] > SCellWrapper > SCell:not([theme]) {
157
177
  /* WARNING THEME */
158
178
 
159
179
  SRow[theme='warning'] SCell:not([theme]) {
160
- background-color: var(--intergalactic-table-td-cell-warning, #fff3d9);
180
+ &:not([expanded][withAccordion]) {
181
+ background-color: var(--intergalactic-table-td-cell-warning, #fff3d9);
182
+ }
183
+ &[expanded][withAccordion] {
184
+ background-color: var(--intergalactic-table-td-cell-warning-active, #ffdca2);
185
+ }
161
186
  }
162
187
 
163
188
  SRow[theme='warning'][active] > SCellWrapper > SCell:not([theme]) {
@@ -167,7 +192,12 @@ SRow[theme='warning'][active] > SCellWrapper > SCell:not([theme]) {
167
192
  /* DANGER THEME */
168
193
 
169
194
  SRow[theme='danger'] SCell:not([theme]) {
170
- background-color: var(--intergalactic-table-td-cell-critical, #fff0f7);
195
+ &:not([expanded][withAccordion]) {
196
+ background-color: var(--intergalactic-table-td-cell-critical, #fff0f7);
197
+ }
198
+ &[expanded][withAccordion] {
199
+ background-color: var(--intergalactic-table-td-cell-critical-active, #ffd7df);
200
+ }
171
201
  }
172
202
 
173
203
  SRow[theme='danger'][active] > SCellWrapper > SCell:not([theme]) {
@@ -209,10 +239,15 @@ SCell {
209
239
  }
210
240
  }
211
241
 
212
- SRow[accordionType='row'] > SCellWrapper > SCell, SCell[withAccordion], SCheckboxCell {
242
+ SRow[accordionType='row'] > SCellWrapper > SCell, SCell[withAccordion], SCell[name='Symbol(SELECT_ALL)'] {
213
243
  cursor: pointer;
214
244
  }
215
245
 
246
+ SCheckboxCell[aria-hidden] {
247
+ filter: blur(3px);
248
+ pointer-events: none;
249
+ }
250
+
216
251
  SCell[use='primary'] {
217
252
  padding: var(--intergalactic-spacing-3x, 12px);
218
253
  min-height: 45px;
@@ -290,13 +325,12 @@ SEmptyData {
290
325
  grid-column: 1 / -1;
291
326
  }
292
327
 
293
- SRow[sideIndents='wide'] {
328
+ SRow[sideIndents='wide'], SCollapseRow[sideIndents='wide'] {
294
329
  SCellWrapper:first-child SCell {
295
330
  padding-left: var(--intergalactic-spacing-5x, 20px);
296
331
 
297
332
  &[data-aria-level] {
298
333
  padding-left: calc(var(--intergalactic-spacing-5x, 20px) + ((var(--intergalactic-spacing-5x, 20px) + var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) * (var(--data-aria-level) - 1)));
299
-
300
334
  }
301
335
  }
302
336
 
@@ -355,3 +389,21 @@ SCellWrapper[fixed='right'][shadowVertical='end'] {
355
389
  }
356
390
  }
357
391
 
392
+ SLimitOverlayCellWrapper[gridArea] {
393
+ width: 100%;
394
+ height: 100%;
395
+ align-items: center;
396
+ justify-content: center;
397
+ z-index: 16;
398
+ grid-area: var(--gridArea);
399
+ backdrop-filter: blur(6px);
400
+ }
401
+
402
+ SLimitOverlayCellWrapper[left] {
403
+ position: sticky;
404
+ left: var(---left);
405
+ }
406
+
407
+ SCell[innerOutline]:focus-visible {
408
+ transition: none;
409
+ }