intergalactic 15.81.0-prerelease.4 → 15.82.0-prerelease.0

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 (143) hide show
  1. package/CHANGELOG.md +39 -33
  2. package/color-picker/lib/cjs/ColorPicker.js +23 -23
  3. package/color-picker/lib/cjs/PaletteManager.js +23 -23
  4. package/color-picker/lib/cjs/components/InputColor.js +23 -23
  5. package/color-picker/lib/es6/ColorPicker.js +23 -23
  6. package/color-picker/lib/es6/PaletteManager.js +23 -23
  7. package/color-picker/lib/es6/components/InputColor.js +23 -23
  8. package/components.json +19 -19
  9. package/d3-chart/lib/cjs/Area.js +11 -11
  10. package/d3-chart/lib/cjs/Axis.js +14 -14
  11. package/d3-chart/lib/cjs/Bar.js +10 -10
  12. package/d3-chart/lib/cjs/Bubble.js +12 -12
  13. package/d3-chart/lib/cjs/Donut.js +9 -9
  14. package/d3-chart/lib/cjs/Dots.js +8 -8
  15. package/d3-chart/lib/cjs/HorizontalBar.js +10 -10
  16. package/d3-chart/lib/cjs/Hover.js +3 -3
  17. package/d3-chart/lib/cjs/Line.js +9 -9
  18. package/d3-chart/lib/cjs/Plot.js +3 -3
  19. package/d3-chart/lib/cjs/Radar.js +19 -19
  20. package/d3-chart/lib/cjs/RadialTree.js +11 -11
  21. package/d3-chart/lib/cjs/ReferenceLine.js +9 -9
  22. package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
  23. package/d3-chart/lib/cjs/Tooltip.js +9 -9
  24. package/d3-chart/lib/cjs/Venn.js +9 -9
  25. package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
  26. package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
  27. package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  28. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  29. package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  30. package/d3-chart/lib/es6/Area.js +11 -11
  31. package/d3-chart/lib/es6/Axis.js +14 -14
  32. package/d3-chart/lib/es6/Bar.js +10 -10
  33. package/d3-chart/lib/es6/Bubble.js +12 -12
  34. package/d3-chart/lib/es6/Donut.js +9 -9
  35. package/d3-chart/lib/es6/Dots.js +8 -8
  36. package/d3-chart/lib/es6/HorizontalBar.js +10 -10
  37. package/d3-chart/lib/es6/Hover.js +3 -3
  38. package/d3-chart/lib/es6/Line.js +9 -9
  39. package/d3-chart/lib/es6/Plot.js +3 -3
  40. package/d3-chart/lib/es6/Radar.js +19 -19
  41. package/d3-chart/lib/es6/RadialTree.js +11 -11
  42. package/d3-chart/lib/es6/ReferenceLine.js +9 -9
  43. package/d3-chart/lib/es6/ScatterPlot.js +9 -9
  44. package/d3-chart/lib/es6/Tooltip.js +9 -9
  45. package/d3-chart/lib/es6/Venn.js +9 -9
  46. package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
  47. package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
  48. package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  49. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  50. package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  51. package/data-table/Body.d.ts +1 -0
  52. package/data-table/DataTable.d.ts +4 -0
  53. package/data-table/Head.d.ts +7 -1
  54. package/data-table/lib/cjs/Body.js +13 -6
  55. package/data-table/lib/cjs/Body.js.map +1 -1
  56. package/data-table/lib/cjs/DataTable.js +70 -53
  57. package/data-table/lib/cjs/DataTable.js.map +1 -1
  58. package/data-table/lib/cjs/Head.js +63 -9
  59. package/data-table/lib/cjs/Head.js.map +1 -1
  60. package/data-table/lib/cjs/style/data-table.shadow.css +19 -6
  61. package/data-table/lib/cjs/types.js.map +1 -1
  62. package/data-table/lib/es6/Body.js +13 -6
  63. package/data-table/lib/es6/Body.js.map +1 -1
  64. package/data-table/lib/es6/DataTable.js +70 -53
  65. package/data-table/lib/es6/DataTable.js.map +1 -1
  66. package/data-table/lib/es6/Head.js +61 -8
  67. package/data-table/lib/es6/Head.js.map +1 -1
  68. package/data-table/lib/es6/style/data-table.shadow.css +19 -6
  69. package/data-table/lib/es6/types.js.map +1 -1
  70. package/data-table/lib/types/Body.d.ts +1 -0
  71. package/data-table/lib/types/DataTable.d.ts +4 -0
  72. package/data-table/lib/types/Head.d.ts +7 -1
  73. package/data-table/lib/types/types.d.ts +2 -4
  74. package/data-table/types.d.ts +2 -4
  75. package/date-picker/index.d.ts +6 -5
  76. package/date-picker/lib/cjs/MonthDateRangeComparator.js +6 -1
  77. package/date-picker/lib/cjs/MonthDateRangeComparator.js.map +1 -1
  78. package/date-picker/lib/cjs/components/Calendar.js +21 -21
  79. package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +29 -29
  80. package/date-picker/lib/cjs/components/InputTrigger.js +48 -39
  81. package/date-picker/lib/cjs/components/InputTrigger.js.map +1 -1
  82. package/date-picker/lib/cjs/components/PickerAbstract.js +29 -29
  83. package/date-picker/lib/cjs/components/RangePickerAbstract.js +29 -29
  84. package/date-picker/lib/cjs/index.d.js.map +1 -1
  85. package/date-picker/lib/es6/MonthDateRangeComparator.js +6 -1
  86. package/date-picker/lib/es6/MonthDateRangeComparator.js.map +1 -1
  87. package/date-picker/lib/es6/components/Calendar.js +21 -21
  88. package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +29 -29
  89. package/date-picker/lib/es6/components/InputTrigger.js +48 -39
  90. package/date-picker/lib/es6/components/InputTrigger.js.map +1 -1
  91. package/date-picker/lib/es6/components/PickerAbstract.js +29 -29
  92. package/date-picker/lib/es6/components/RangePickerAbstract.js +29 -29
  93. package/date-picker/lib/es6/index.d.js.map +1 -1
  94. package/date-picker/lib/types/index.d.ts +6 -5
  95. package/dropdown/lib/cjs/Dropdown.js +2 -2
  96. package/dropdown/lib/es6/Dropdown.js +2 -2
  97. package/dropdown-menu/lib/cjs/DropdownMenu.js +16 -16
  98. package/dropdown-menu/lib/cjs/styleScrollArea.js +6 -6
  99. package/dropdown-menu/lib/es6/DropdownMenu.js +16 -16
  100. package/dropdown-menu/lib/es6/styleScrollArea.js +6 -6
  101. package/feature-popover/lib/cjs/FeaturePopover.js +10 -10
  102. package/feature-popover/lib/es6/FeaturePopover.js +10 -10
  103. package/inline-input/lib/cjs/InlineInput.js +18 -18
  104. package/inline-input/lib/es6/InlineInput.js +18 -18
  105. package/input/index.d.ts +1 -1
  106. package/input/lib/cjs/Input.js +29 -20
  107. package/input/lib/cjs/Input.js.map +1 -1
  108. package/input/lib/cjs/index.d.js.map +1 -1
  109. package/input/lib/es6/Input.js +29 -20
  110. package/input/lib/es6/Input.js.map +1 -1
  111. package/input/lib/es6/index.d.js.map +1 -1
  112. package/input/lib/types/index.d.ts +1 -1
  113. package/input-mask/lib/cjs/InputMask.js +6 -6
  114. package/input-mask/lib/es6/InputMask.js +6 -6
  115. package/input-number/lib/cjs/InputNumber.js +18 -9
  116. package/input-number/lib/cjs/InputNumber.js.map +1 -1
  117. package/input-number/lib/es6/InputNumber.js +18 -9
  118. package/input-number/lib/es6/InputNumber.js.map +1 -1
  119. package/input-tags/lib/cjs/InputTags.js +12 -12
  120. package/input-tags/lib/es6/InputTags.js +12 -12
  121. package/package.json +4 -4
  122. package/pagination/lib/cjs/Pagination.js +10 -10
  123. package/pagination/lib/es6/Pagination.js +10 -10
  124. package/popper/lib/cjs/Popper.js +21 -11
  125. package/popper/lib/cjs/Popper.js.map +1 -1
  126. package/popper/lib/es6/Popper.js +21 -11
  127. package/popper/lib/es6/Popper.js.map +1 -1
  128. package/select/lib/cjs/InputSearch.js +6 -6
  129. package/select/lib/cjs/Select.js +8 -8
  130. package/select/lib/es6/InputSearch.js +6 -6
  131. package/select/lib/es6/Select.js +8 -8
  132. package/tab-line/lib/cjs/TabLine.js +13 -14
  133. package/tab-line/lib/cjs/TabLine.js.map +1 -1
  134. package/tab-line/lib/es6/TabLine.js +13 -14
  135. package/tab-line/lib/es6/TabLine.js.map +1 -1
  136. package/tab-panel/lib/cjs/TabPanel.js +8 -9
  137. package/tab-panel/lib/cjs/TabPanel.js.map +1 -1
  138. package/tab-panel/lib/es6/TabPanel.js +8 -9
  139. package/tab-panel/lib/es6/TabPanel.js.map +1 -1
  140. package/time-picker/lib/cjs/TimePicker.js +12 -12
  141. package/time-picker/lib/es6/TimePicker.js +12 -12
  142. package/tooltip/lib/cjs/Tooltip.js +9 -9
  143. package/tooltip/lib/es6/Tooltip.js +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"Head.js","names":["_core","require","_react","_interopRequireDefault","_flexBox","_scrollArea","_m","_m2","_assignProps2","_utils","_logger","_ref4","SORTING_ICON","desc","SortDesc","asc","SortAsc","ariaSort","displayContents","display","Head","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","name","event","asProps","$onSortClick","key","preventDefault","props","ref","setRef","forwardRef","_createClass2","value","renderColumns","columns","width","_this2","map","column","renderColumn","_ref2","_column$columns","_this$asProps","styles","use","hidden","uid","SColumn","Flex","SHead","Box","SSortWrapper","SSortIcon","sortDirection","ariaSortValue","sortable","active","undefined","isGroup","cSize","flattenColumns","_getFixedStyle","getFixedStyle","_getFixedStyle2","_slicedToArray2","style","_objectSpread2","flexBasis","flex","setVar","varWidth","sstyled","createElement","cn","fixed","resizable","borderLeft","borderRight","refColumn","callAllEventHandlers","onClick","bindHandlerSortClick","onKeyDown","bindHandlerKeyDown","Fragment","children","render","_ref","_ref3","SHeadWrapper","_this$asProps2","Children","columnsChildren","onResize","$scrollRef","sticky","withScrollBar","_getScrollOffsetValue","getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","logger","warn","displayName","Container","role","tabIndex","zIndex","assignProps","Boolean","Bar","orientation","origin","Component","_default","exports"],"sources":["../../src/Head.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport SortDesc from '@semcore/icon/SortDesc/m';\nimport SortAsc from '@semcore/icon/SortAsc/m';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport { flattenColumns, getFixedStyle, getScrollOffsetValue } from './utils';\nimport type { Column } from './types';\nimport logger from '@semcore/utils/lib/logger';\nimport { setRef } from '@semcore/utils/lib/ref';\n\nconst SORTING_ICON = {\n desc: SortDesc,\n asc: SortAsc,\n} as const;\nconst ariaSort = {\n desc: 'descending',\n asc: 'ascending',\n} as const;\nconst displayContents = { display: 'contents' };\n\ntype AsProps = {\n $onSortClick: (name: string, event: React.MouseEvent | React.KeyboardEvent) => void;\n $scrollRef: (instance: unknown) => void;\n use: 'primary' | 'secondary';\n columnsChildren: Column[];\n onResize: ResizeObserverCallback;\n sticky: boolean;\n ['data-ui-name']: string;\n uid?: string;\n withScrollBar?: boolean;\n};\n\nclass Head extends Component<AsProps> {\n columns: Column[] = [];\n\n static displayName: string;\n\n bindHandlerSortClick = (name: string) => (event: React.MouseEvent) => {\n this.asProps.$onSortClick(name, event);\n };\n\n bindHandlerKeyDown = (name: string) => (event: React.KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.asProps.$onSortClick(name, event);\n }\n };\n\n refColumn = (props: Column['props']) => (ref: HTMLElement) => {\n setRef(props.ref, ref);\n if (props.forwardRef) {\n setRef(props.forwardRef, ref);\n }\n };\n\n renderColumns(columns: Column[], width: number) {\n return columns.map((column) => this.renderColumn(column, width));\n }\n\n renderColumn(column: Column, width: number) {\n const { styles, use, hidden, uid } = this.asProps;\n const SColumn = Flex as any;\n const SHead = Box;\n const SSortWrapper = 'div';\n const SSortIcon = SORTING_ICON[column.sortDirection];\n const ariaSortValue =\n column.sortable && column.active ? ariaSort[column.sortDirection] : undefined;\n const isGroup = column.columns?.length > 0;\n const cSize = isGroup ? flattenColumns(column.columns).length : 1;\n const [name, value] = getFixedStyle(column, this.columns);\n\n const style = {\n flexBasis: column.props.flex === undefined && `${width * cSize}%`,\n ...column.props.style,\n };\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n\n if (!column.setVar) {\n style['flexBasis'] = `var(${column.varWidth})`;\n }\n\n return sstyled(styles)(\n <SColumn\n role={isGroup ? undefined : 'columnheader'}\n scope={isGroup ? 'colgroup' : 'col'}\n key={column.name}\n id={`igc-table-${uid}-${column.name}`}\n use={use}\n fixed={column.fixed}\n resizable={column.resizable}\n sortable={column.sortable}\n borderLeft={isGroup ? false : column.borderLeft}\n borderRight={isGroup ? false : column.borderRight}\n active={isGroup ? false : column.active}\n group={isGroup}\n tabIndex={column.sortable ? 0 : undefined}\n __excludeProps={['hidden']}\n {...column.props}\n ref={this.refColumn(column.props)}\n onClick={callAllEventHandlers(\n column.props.onClick,\n column.sortable ? this.bindHandlerSortClick(column.name) : undefined,\n )}\n onKeyDown={callAllEventHandlers(\n column.props.onKeyDown,\n column.sortable ? this.bindHandlerKeyDown(column.name) : undefined,\n )}\n style={style}\n hidden={hidden}\n aria-sort={ariaSortValue}\n >\n {isGroup ? (\n <>\n <SColumn\n role='columnheader'\n groupHead\n use={use}\n active={column.active}\n borderLeft={column.borderLeft}\n borderRight={column.borderRight}\n >\n <div>{column.props.children}</div>\n </SColumn>\n <SHead>{this.renderColumns(column.columns, 100 / cSize)}</SHead>\n </>\n ) : (\n <>\n {column.props.children}\n {column.sortable ? (\n <SSortWrapper>\n <SSortIcon active={column.active} />\n </SSortWrapper>\n ) : null}\n </>\n )}\n </SColumn>,\n );\n }\n\n render() {\n const SHead = Root;\n const SHeadWrapper = Box as any;\n const {\n Children,\n styles,\n columnsChildren,\n onResize,\n $scrollRef,\n sticky,\n withScrollBar,\n hidden,\n } = this.asProps;\n\n this.columns = flattenColumns(columnsChildren);\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(this.columns);\n\n logger.warn(\n sticky,\n \"'sticky' property is deprecated, use '<Sticky/>' wrapper\",\n this.asProps['data-ui-name'] || Head.displayName,\n );\n\n return sstyled(styles)(\n <SHeadWrapper sticky={sticky}>\n <ScrollArea\n leftOffset={offsetLeftSum}\n rightOffset={offsetRightSum}\n shadow\n onResize={onResize}\n >\n <ScrollArea.Container ref={$scrollRef} role='rowgroup' tabIndex={-1} zIndex={2}>\n <SHead render={Box} role='row' aria-rowindex='1' __excludeProps={['hidden']}>\n {this.renderColumns(columnsChildren, 100 / this.columns.length)}\n </SHead>\n </ScrollArea.Container>\n {Boolean(withScrollBar) && (\n <div style={displayContents} role='rowgroup'>\n <div style={displayContents} role='row'>\n <div style={displayContents} role='cell'>\n <ScrollArea.Bar orientation='horizontal' />\n </div>\n </div>\n </div>\n )}\n </ScrollArea>\n {Children.origin}\n </SHeadWrapper>,\n );\n }\n}\n\nexport default Head;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Head.js","names":["_core","require","_react","_interopRequireDefault","_flexBox","_scrollArea","_m","_m2","_assignProps2","_utils","_logger","_ref4","_cssToIntDefault","SORT_ICON_WIDTH","exports","SORTING_ICON","desc","SortDesc","asc","SortAsc","ariaSort","displayContents","display","Head","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","Map","name","event","asProps","$onSortClick","key","preventDefault","active","ref","sortWrapperRefs","set","column","setRef","props","forwardRef","getAttribute","calculateMinWidth","node","defaultMinWidths","has","wMin","wMax","w","computedStyle","window","getComputedStyle","cssToIntDefault","getPropertyValue","_this$defaultMinWidth","clonedColumn","document","createElement","childNodes","forEach","get","append","cloneNode","style","setProperty","styles","getPropertyPriority","body","appendChild","computedWidth","Math","floor","getBoundingClientRect","width","removeChild","defaultNodeWidth","freeSpace","_createClass2","value","renderColumns","columns","_this2","map","renderColumn","_ref2","_column$columns","_this$asProps","use","hidden","uid","SColumn","Flex","SHead","Box","SSortWrapper","SSortIcon","sortDirection","ariaSortValue","sortable","undefined","isGroup","cSize","flattenColumns","_getFixedStyle","getFixedStyle","_getFixedStyle2","_slicedToArray2","_objectSpread2","flexBasis","flex","setVar","varWidth","sstyled","cn","fixed","resizable","borderLeft","borderRight","makeColumnRefHandler","callAllEventHandlers","onClick","bindHandlerSortClick","onKeyDown","bindHandlerKeyDown","Fragment","children","makeSortRefHandler","render","_ref","_ref3","SHeadWrapper","_this$asProps2","Children","columnsChildren","onResize","$scrollRef","sticky","withScrollBar","animationsDisabled","_getScrollOffsetValue","getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","logger","warn","displayName","Container","role","tabIndex","zIndex","assignProps","Boolean","Bar","orientation","origin","Component","_default"],"sources":["../../src/Head.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport SortDesc from '@semcore/icon/SortDesc/m';\nimport SortAsc from '@semcore/icon/SortAsc/m';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport { flattenColumns, getFixedStyle, getScrollOffsetValue } from './utils';\nimport type { Column } from './types';\nimport logger from '@semcore/utils/lib/logger';\nimport { setRef } from '@semcore/utils/lib/ref';\nimport cssToIntDefault from '@semcore/utils/lib/cssToIntDefault';\n\nexport const SORT_ICON_WIDTH = 20;\n\nconst SORTING_ICON = {\n desc: SortDesc,\n asc: SortAsc,\n} as const;\nconst ariaSort = {\n desc: 'descending',\n asc: 'ascending',\n} as const;\nconst displayContents = { display: 'contents' };\n\ntype AsProps = {\n $onSortClick: (name: string, event: React.MouseEvent | React.KeyboardEvent) => void;\n $scrollRef: (instance: unknown) => void;\n use: 'primary' | 'secondary';\n columnsChildren: Column[];\n onResize: ResizeObserverCallback;\n sticky: boolean;\n ['data-ui-name']: string;\n uid?: string;\n withScrollBar?: boolean;\n animationsDisabled?: boolean;\n};\n\nclass Head extends Component<AsProps> {\n columns: Column[] = [];\n\n static displayName: string;\n\n sortWrapperRefs = new Map<Node, boolean>();\n defaultMinWidths = new Map<Node, number>();\n\n bindHandlerSortClick = (name: string) => (event: React.MouseEvent) => {\n this.asProps.$onSortClick(name, event);\n };\n\n bindHandlerKeyDown = (name: string) => (event: React.KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.asProps.$onSortClick(name, event);\n }\n };\n\n makeSortRefHandler = (active: boolean) => (ref: HTMLElement | null) => {\n if (ref) {\n this.sortWrapperRefs.set(ref, active);\n }\n };\n\n makeColumnRefHandler = (column: Column) => (ref: HTMLElement | null) => {\n setRef(column.props.ref, ref);\n if (column.props.forwardRef) {\n setRef(column.props.forwardRef, ref);\n }\n\n if (ref && ref.getAttribute('scope') === 'col') {\n this.calculateMinWidth(ref, column);\n }\n };\n\n calculateMinWidth = (node: HTMLElement, column: Column) => {\n if (\n !this.defaultMinWidths.has(node) &&\n (column.props.wMin || column.props.wMax || column.props.w)\n ) {\n const computedStyle = window.getComputedStyle(node);\n\n this.defaultMinWidths.set(node, cssToIntDefault(computedStyle.getPropertyValue('width')));\n }\n\n if (column.active) {\n const clonedColumn = document.createElement('div');\n const computedStyle = window.getComputedStyle(node);\n\n node.childNodes.forEach((node) => {\n if (!this.sortWrapperRefs.get(node)) {\n clonedColumn.append(node.cloneNode(true));\n }\n });\n\n clonedColumn.style.setProperty('visibility', 'hidden', 'important');\n\n const styles = [\n 'display',\n 'flex',\n 'margin',\n 'padding',\n 'background',\n 'font-style',\n 'font-width',\n 'font-size',\n 'font-weight',\n ];\n\n styles.forEach((key) => {\n clonedColumn.style.setProperty(\n key,\n computedStyle.getPropertyValue(key),\n computedStyle.getPropertyPriority(key),\n );\n });\n\n clonedColumn.style.setProperty('width', 'fit-content', 'important');\n\n document.body.appendChild(clonedColumn);\n\n const computedWidth = Math.floor(clonedColumn.getBoundingClientRect().width);\n\n document.body.removeChild(clonedColumn);\n\n const defaultNodeWidth = this.defaultMinWidths.get(node) ?? 0;\n\n if (computedWidth >= defaultNodeWidth) {\n node.style.setProperty('min-width', defaultNodeWidth + SORT_ICON_WIDTH + 'px');\n } else {\n const freeSpace = defaultNodeWidth - computedWidth;\n\n if (freeSpace < SORT_ICON_WIDTH) {\n node.style.setProperty('min-width', computedWidth + SORT_ICON_WIDTH + 'px');\n }\n }\n } else if (this.defaultMinWidths.has(node)) {\n node.style.setProperty('min-width', this.defaultMinWidths.get(node) + 'px');\n }\n };\n\n renderColumns(columns: Column[], width: number) {\n return columns.map((column) => this.renderColumn(column, width));\n }\n\n renderColumn(column: Column, width: number) {\n const { styles, use, hidden, uid } = this.asProps;\n const SColumn = Flex as any;\n const SHead = Box;\n const SSortWrapper = 'div';\n const SSortIcon = SORTING_ICON[column.sortDirection];\n const ariaSortValue =\n column.sortable && column.active ? ariaSort[column.sortDirection] : undefined;\n const isGroup = column.columns?.length > 0;\n const cSize = isGroup ? flattenColumns(column.columns).length : 1;\n const [name, value] = getFixedStyle(column, this.columns);\n\n const style = {\n flexBasis: column.props.flex === undefined && `${width * cSize}%`,\n ...column.props.style,\n };\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n\n if (!column.setVar) {\n style['flexBasis'] = `var(${column.varWidth})`;\n }\n\n return sstyled(styles)(\n <SColumn\n role={isGroup ? undefined : 'columnheader'}\n scope={isGroup ? 'colgroup' : 'col'}\n key={column.name}\n id={`igc-table-${uid}-${column.name}`}\n use={use}\n fixed={column.fixed}\n resizable={column.resizable}\n sortable={column.sortable}\n borderLeft={isGroup ? false : column.borderLeft}\n borderRight={isGroup ? false : column.borderRight}\n active={isGroup ? false : column.active}\n group={isGroup}\n tabIndex={column.sortable ? 0 : undefined}\n __excludeProps={['hidden']}\n {...column.props}\n ref={this.makeColumnRefHandler(column)}\n onClick={callAllEventHandlers(\n column.props.onClick,\n column.sortable ? this.bindHandlerSortClick(column.name) : undefined,\n )}\n onKeyDown={callAllEventHandlers(\n column.props.onKeyDown,\n column.sortable ? this.bindHandlerKeyDown(column.name) : undefined,\n )}\n style={style}\n hidden={hidden}\n aria-sort={ariaSortValue}\n >\n {isGroup ? (\n <>\n <SColumn\n role='columnheader'\n groupHead\n use={use}\n active={column.active}\n borderLeft={column.borderLeft}\n borderRight={column.borderRight}\n >\n <div>{column.props.children}</div>\n </SColumn>\n <SHead>{this.renderColumns(column.columns, 100 / cSize)}</SHead>\n </>\n ) : (\n <>\n {column.props.children}\n {column.sortable ? (\n <SSortWrapper ref={this.makeSortRefHandler(column.active)}>\n <SSortIcon active={column.active} />\n </SSortWrapper>\n ) : null}\n </>\n )}\n </SColumn>,\n );\n }\n\n render() {\n const SHead = Root;\n const SHeadWrapper = Box as any;\n const {\n Children,\n styles,\n columnsChildren,\n onResize,\n $scrollRef,\n sticky,\n withScrollBar,\n animationsDisabled,\n } = this.asProps;\n\n this.columns = flattenColumns(columnsChildren);\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(this.columns);\n\n logger.warn(\n sticky,\n \"'sticky' property is deprecated, use '<Sticky/>' wrapper\",\n this.asProps['data-ui-name'] || Head.displayName,\n );\n\n return sstyled(styles)(\n <SHeadWrapper sticky={sticky} animationsDisabled={animationsDisabled}>\n <ScrollArea\n leftOffset={offsetLeftSum}\n rightOffset={offsetRightSum}\n shadow\n onResize={onResize}\n >\n <ScrollArea.Container ref={$scrollRef} role='rowgroup' tabIndex={-1} zIndex={2}>\n <SHead render={Box} role='row' aria-rowindex='1' __excludeProps={['hidden']}>\n {this.renderColumns(columnsChildren, 100 / this.columns.length)}\n </SHead>\n </ScrollArea.Container>\n {Boolean(withScrollBar) && (\n <div style={displayContents} role='rowgroup'>\n <div style={displayContents} role='row'>\n <div style={displayContents} role='cell'>\n <ScrollArea.Bar orientation='horizontal' />\n </div>\n </div>\n </div>\n )}\n </ScrollArea>\n {Children.origin}\n </SHeadWrapper>,\n );\n }\n}\n\nexport default Head;\n"],"mappings":";;;;;;;;;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AADA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,EAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,GAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,aAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AAEA,IAAAS,OAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,KAAA,GAAAV,OAAA;AACA,IAAAW,gBAAA,GAAAT,sBAAA,CAAAF,OAAA;AAEO,IAAMY,eAAe,GAAG,EAAE;AAACC,OAAA,CAAAD,eAAA,GAAAA,eAAA;AAElC,IAAME,YAAY,GAAG;EACnBC,IAAI,EAAEC,aAAQ;EACdC,GAAG,EAAEC;AACP,CAAU;AACV,IAAMC,QAAQ,GAAG;EACfJ,IAAI,EAAE,YAAY;EAClBE,GAAG,EAAE;AACP,CAAU;AACV,IAAMG,eAAe,GAAG;EAAEC,OAAO,EAAE;AAAW,CAAC;AAAC,IAe1CC,IAAI,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,IAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,IAAA;EAAA,SAAAA,KAAA;IAAA,IAAAK,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,IAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,cACY,EAAE;IAAA,IAAAW,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,sBAIJ,IAAIa,GAAG,EAAiB;IAAA,IAAAF,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,uBACvB,IAAIa,GAAG,EAAgB;IAAA,IAAAF,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,2BAEnB,UAACc,IAAY;MAAA,OAAK,UAACC,KAAuB,EAAK;QACpEf,KAAA,CAAKgB,OAAO,CAACC,YAAY,CAACH,IAAI,EAAEC,KAAK,CAAC;MACxC,CAAC;IAAA;IAAA,IAAAJ,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,yBAEoB,UAACc,IAAY;MAAA,OAAK,UAACC,KAA0B,EAAK;QACrE,IAAIA,KAAK,CAACG,GAAG,KAAK,OAAO,IAAIH,KAAK,CAACG,GAAG,KAAK,GAAG,EAAE;UAC9CH,KAAK,CAACI,cAAc,EAAE;UACtBnB,KAAA,CAAKgB,OAAO,CAACC,YAAY,CAACH,IAAI,EAAEC,KAAK,CAAC;QACxC;MACF,CAAC;IAAA;IAAA,IAAAJ,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,yBAEoB,UAACoB,MAAe;MAAA,OAAK,UAACC,GAAuB,EAAK;QACrE,IAAIA,GAAG,EAAE;UACPrB,KAAA,CAAKsB,eAAe,CAACC,GAAG,CAACF,GAAG,EAAED,MAAM,CAAC;QACvC;MACF,CAAC;IAAA;IAAA,IAAAT,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,2BAEsB,UAACwB,MAAc;MAAA,OAAK,UAACH,GAAuB,EAAK;QACtE,IAAAI,YAAM,EAACD,MAAM,CAACE,KAAK,CAACL,GAAG,EAAEA,GAAG,CAAC;QAC7B,IAAIG,MAAM,CAACE,KAAK,CAACC,UAAU,EAAE;UAC3B,IAAAF,YAAM,EAACD,MAAM,CAACE,KAAK,CAACC,UAAU,EAAEN,GAAG,CAAC;QACtC;QAEA,IAAIA,GAAG,IAAIA,GAAG,CAACO,YAAY,CAAC,OAAO,CAAC,KAAK,KAAK,EAAE;UAC9C5B,KAAA,CAAK6B,iBAAiB,CAACR,GAAG,EAAEG,MAAM,CAAC;QACrC;MACF,CAAC;IAAA;IAAA,IAAAb,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,wBAEmB,UAAC8B,IAAiB,EAAEN,MAAc,EAAK;MACzD,IACE,CAACxB,KAAA,CAAK+B,gBAAgB,CAACC,GAAG,CAACF,IAAI,CAAC,KAC/BN,MAAM,CAACE,KAAK,CAACO,IAAI,IAAIT,MAAM,CAACE,KAAK,CAACQ,IAAI,IAAIV,MAAM,CAACE,KAAK,CAACS,CAAC,CAAC,EAC1D;QACA,IAAMC,aAAa,GAAGC,MAAM,CAACC,gBAAgB,CAACR,IAAI,CAAC;QAEnD9B,KAAA,CAAK+B,gBAAgB,CAACR,GAAG,CAACO,IAAI,EAAE,IAAAS,2BAAe,EAACH,aAAa,CAACI,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;MAC3F;MAEA,IAAIhB,MAAM,CAACJ,MAAM,EAAE;QAAA,IAAAqB,qBAAA;QACjB,IAAMC,YAAY,GAAGC,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;QAClD,IAAMR,cAAa,GAAGC,MAAM,CAACC,gBAAgB,CAACR,IAAI,CAAC;QAEnDA,IAAI,CAACe,UAAU,CAACC,OAAO,CAAC,UAAChB,IAAI,EAAK;UAChC,IAAI,CAAC9B,KAAA,CAAKsB,eAAe,CAACyB,GAAG,CAACjB,IAAI,CAAC,EAAE;YACnCY,YAAY,CAACM,MAAM,CAAClB,IAAI,CAACmB,SAAS,CAAC,IAAI,CAAC,CAAC;UAC3C;QACF,CAAC,CAAC;QAEFP,YAAY,CAACQ,KAAK,CAACC,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC;QAEnE,IAAMC,MAAM,GAAG,CACb,SAAS,EACT,MAAM,EACN,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,CACd;QAEDA,MAAM,CAACN,OAAO,CAAC,UAAC5B,GAAG,EAAK;UACtBwB,YAAY,CAACQ,KAAK,CAACC,WAAW,CAC5BjC,GAAG,EACHkB,cAAa,CAACI,gBAAgB,CAACtB,GAAG,CAAC,EACnCkB,cAAa,CAACiB,mBAAmB,CAACnC,GAAG,CAAC,CACvC;QACH,CAAC,CAAC;QAEFwB,YAAY,CAACQ,KAAK,CAACC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC;QAEnER,QAAQ,CAACW,IAAI,CAACC,WAAW,CAACb,YAAY,CAAC;QAEvC,IAAMc,aAAa,GAAGC,IAAI,CAACC,KAAK,CAAChB,YAAY,CAACiB,qBAAqB,EAAE,CAACC,KAAK,CAAC;QAE5EjB,QAAQ,CAACW,IAAI,CAACO,WAAW,CAACnB,YAAY,CAAC;QAEvC,IAAMoB,gBAAgB,IAAArB,qBAAA,GAAGzC,KAAA,CAAK+B,gBAAgB,CAACgB,GAAG,CAACjB,IAAI,CAAC,cAAAW,qBAAA,cAAAA,qBAAA,GAAI,CAAC;QAE7D,IAAIe,aAAa,IAAIM,gBAAgB,EAAE;UACrChC,IAAI,CAACoB,KAAK,CAACC,WAAW,CAAC,WAAW,EAAEW,gBAAgB,GAAG7E,eAAe,GAAG,IAAI,CAAC;QAChF,CAAC,MAAM;UACL,IAAM8E,SAAS,GAAGD,gBAAgB,GAAGN,aAAa;UAElD,IAAIO,SAAS,GAAG9E,eAAe,EAAE;YAC/B6C,IAAI,CAACoB,KAAK,CAACC,WAAW,CAAC,WAAW,EAAEK,aAAa,GAAGvE,eAAe,GAAG,IAAI,CAAC;UAC7E;QACF;MACF,CAAC,MAAM,IAAIe,KAAA,CAAK+B,gBAAgB,CAACC,GAAG,CAACF,IAAI,CAAC,EAAE;QAC1CA,IAAI,CAACoB,KAAK,CAACC,WAAW,CAAC,WAAW,EAAEnD,KAAA,CAAK+B,gBAAgB,CAACgB,GAAG,CAACjB,IAAI,CAAC,GAAG,IAAI,CAAC;MAC7E;IACF,CAAC;IAAA,OAAA9B,KAAA;EAAA;EAAA,IAAAgE,aAAA,aAAArE,IAAA;IAAAuB,GAAA;IAAA+C,KAAA,EAED,SAAAC,cAAcC,OAAiB,EAAEP,KAAa,EAAE;MAAA,IAAAQ,MAAA;MAC9C,OAAOD,OAAO,CAACE,GAAG,CAAC,UAAC7C,MAAM;QAAA,OAAK4C,MAAI,CAACE,YAAY,CAAC9C,MAAM,EAAEoC,KAAK,CAAC;MAAA,EAAC;IAClE;EAAC;IAAA1C,GAAA;IAAA+C,KAAA,EAED,SAAAK,aAAa9C,MAAc,EAAEoC,KAAa,EAAE;MAAA,IAAAW,KAAA,EAAAC,eAAA;MAC1C,IAAAC,aAAA,GAAqC,IAAI,CAACzD,OAAO;QAAzCoC,MAAM,GAAAqB,aAAA,CAANrB,MAAM;QAAEsB,GAAG,GAAAD,aAAA,CAAHC,GAAG;QAAEC,MAAM,GAAAF,aAAA,CAANE,MAAM;QAAEC,GAAG,GAAAH,aAAA,CAAHG,GAAG;MAChC,IAAMC,OAAO,GAAGC,aAAW;MAC3B,IAAMC,KAAK,GAAGC,YAAG;MACjB,IAAMC,YAAY,GAAG,KAAK;MAC1B,IAAMC,SAAS,GAAG/F,YAAY,CAACqC,MAAM,CAAC2D,aAAa,CAAC;MACpD,IAAMC,aAAa,GACjB5D,MAAM,CAAC6D,QAAQ,IAAI7D,MAAM,CAACJ,MAAM,GAAG5B,QAAQ,CAACgC,MAAM,CAAC2D,aAAa,CAAC,GAAGG,SAAS;MAC/E,IAAMC,OAAO,GAAG,EAAAf,eAAA,GAAAhD,MAAM,CAAC2C,OAAO,cAAAK,eAAA,uBAAdA,eAAA,CAAgBpE,MAAM,IAAG,CAAC;MAC1C,IAAMoF,KAAK,GAAGD,OAAO,GAAG,IAAAE,qBAAc,EAACjE,MAAM,CAAC2C,OAAO,CAAC,CAAC/D,MAAM,GAAG,CAAC;MACjE,IAAAsF,cAAA,GAAsB,IAAAC,oBAAa,EAACnE,MAAM,EAAE,IAAI,CAAC2C,OAAO,CAAC;QAAAyB,eAAA,OAAAC,eAAA,aAAAH,cAAA;QAAlD5E,IAAI,GAAA8E,eAAA;QAAE3B,KAAK,GAAA2B,eAAA;MAElB,IAAM1C,KAAK,OAAA4C,cAAA;QACTC,SAAS,EAAEvE,MAAM,CAACE,KAAK,CAACsE,IAAI,KAAKV,SAAS,OAAA5E,MAAA,CAAOkD,KAAK,GAAG4B,KAAK;MAAG,GAC9DhE,MAAM,CAACE,KAAK,CAACwB,KAAK,CACtB;MAED,IAAIpC,IAAI,KAAKwE,SAAS,IAAIrB,KAAK,KAAKqB,SAAS,EAAE;QAC7CpC,KAAK,CAACpC,IAAI,CAAC,GAAGmD,KAAK;MACrB;MAEA,IAAI,CAACzC,MAAM,CAACyE,MAAM,EAAE;QAClB/C,KAAK,CAAC,WAAW,CAAC,UAAAxC,MAAA,CAAUc,MAAM,CAAC0E,QAAQ,MAAG;MAChD;MAEA,OAAA3B,KAAA,GAAO,IAAA4B,aAAO,EAAC/C,MAAM,CAAC,eACpB9E,MAAA,YAAAsE,aAAA,CAACiC,OAAO,EAAAN,KAAA,CAAA6B,EAAA,gBAAAN,cAAA,iBAAAA,cAAA;QAAA,QACAP,OAAO,GAAGD,SAAS,GAAG,cAAc;QAAA,SACnCC,OAAO,GAAG,UAAU,GAAG,KAAK;QAAA,OAC9B/D,MAAM,CAACV,IAAI;QAAA,mBAAAJ,MAAA,CACCkE,GAAG,OAAAlE,MAAA,CAAIc,MAAM,CAACV,IAAI;QAAA,OAC9B4D,GAAG;QAAA,SACDlD,MAAM,CAAC6E,KAAK;QAAA,aACR7E,MAAM,CAAC8E,SAAS;QAAA,YACjB9E,MAAM,CAAC6D,QAAQ;QAAA,cACbE,OAAO,GAAG,KAAK,GAAG/D,MAAM,CAAC+E,UAAU;QAAA,eAClChB,OAAO,GAAG,KAAK,GAAG/D,MAAM,CAACgF,WAAW;QAAA,UACzCjB,OAAO,GAAG,KAAK,GAAG/D,MAAM,CAACJ,MAAM;QAAA,SAChCmE,OAAO;QAAA,YACJ/D,MAAM,CAAC6D,QAAQ,GAAG,CAAC,GAAGC,SAAS;QAAA,kBACzB,CAAC,QAAQ;MAAC,GACtB9D,MAAM,CAACE,KAAK;QAAA,OACX,IAAI,CAAC+E,oBAAoB,CAACjF,MAAM,CAAC;QAAA,WAC7B,IAAAkF,kCAAoB,EAC3BlF,MAAM,CAACE,KAAK,CAACiF,OAAO,EACpBnF,MAAM,CAAC6D,QAAQ,GAAG,IAAI,CAACuB,oBAAoB,CAACpF,MAAM,CAACV,IAAI,CAAC,GAAGwE,SAAS,CACrE;QAAA,aACU,IAAAoB,kCAAoB,EAC7BlF,MAAM,CAACE,KAAK,CAACmF,SAAS,EACtBrF,MAAM,CAAC6D,QAAQ,GAAG,IAAI,CAACyB,kBAAkB,CAACtF,MAAM,CAACV,IAAI,CAAC,GAAGwE,SAAS,CACnE;QAAA,SACMpC,KAAK;QAAA,UACJyB,MAAM;QAAA,aACHS;MAAa,KAEvBG,OAAO,gBACNjH,MAAA,YAAAsE,aAAA,CAAAtE,MAAA,YAAAyI,QAAA,qBACEzI,MAAA,YAAAsE,aAAA,CAACiC,OAAO,EAAAN,KAAA,CAAA6B,EAAA;QAAA,QACD,cAAc;QAAA;QAAA,OAEd1B,GAAG;QAAA,UACAlD,MAAM,CAACJ,MAAM;QAAA,cACTI,MAAM,CAAC+E,UAAU;QAAA,eAChB/E,MAAM,CAACgF;MAAW,iBAE/BlI,MAAA,YAAAsE,aAAA,QAAA2B,KAAA,CAAA6B,EAAA,aAAM5E,MAAM,CAACE,KAAK,CAACsF,QAAQ,CAAO,CAC1B,eACV1I,MAAA,YAAAsE,aAAA,CAACmC,KAAK,EAAAR,KAAA,CAAA6B,EAAA,eAAE,IAAI,CAAClC,aAAa,CAAC1C,MAAM,CAAC2C,OAAO,EAAE,GAAG,GAAGqB,KAAK,CAAC,CAAS,CAC/D,gBAEHlH,MAAA,YAAAsE,aAAA,CAAAtE,MAAA,YAAAyI,QAAA,QACGvF,MAAM,CAACE,KAAK,CAACsF,QAAQ,EACrBxF,MAAM,CAAC6D,QAAQ,gBACd/G,MAAA,YAAAsE,aAAA,CAACqC,YAAY,EAAAV,KAAA,CAAA6B,EAAA;QAAA,OAAM,IAAI,CAACa,kBAAkB,CAACzF,MAAM,CAACJ,MAAM;MAAC,iBACvD9C,MAAA,YAAAsE,aAAA,CAACsC,SAAS,EAAAX,KAAA,CAAA6B,EAAA;QAAA,UAAS5E,MAAM,CAACJ;MAAM,GAAI,CACvB,GACb,IAAI,CAEX,CACO;IAEd;EAAC;IAAAF,GAAA;IAAA+C,KAAA,EAED,SAAAiD,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAAnG,OAAA;QAAAoG,KAAA;MACP,IAAMrC,KAAK,GAgCYC,YAAG;MA/B1B,IAAMqC,YAAY,GAAGrC,YAAU;MAC/B,IAAAsC,cAAA,GASI,IAAI,CAACtG,OAAO;QARduG,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QACRnE,MAAM,GAAAkE,cAAA,CAANlE,MAAM;QACNoE,eAAe,GAAAF,cAAA,CAAfE,eAAe;QACfC,QAAQ,GAAAH,cAAA,CAARG,QAAQ;QACRC,UAAU,GAAAJ,cAAA,CAAVI,UAAU;QACVC,MAAM,GAAAL,cAAA,CAANK,MAAM;QACNC,aAAa,GAAAN,cAAA,CAAbM,aAAa;QACbC,kBAAkB,GAAAP,cAAA,CAAlBO,kBAAkB;MAGpB,IAAI,CAAC1D,OAAO,GAAG,IAAAsB,qBAAc,EAAC+B,eAAe,CAAC;MAE9C,IAAAM,qBAAA,GAAwC,IAAAC,2BAAoB,EAAC,IAAI,CAAC5D,OAAO,CAAC;QAAA6D,sBAAA,OAAAnC,eAAA,aAAAiC,qBAAA;QAAnEG,aAAa,GAAAD,sBAAA;QAAEE,cAAc,GAAAF,sBAAA;MAEpCG,kBAAM,CAACC,IAAI,CACTT,MAAM,EACN,0DAA0D,EAC1D,IAAI,CAAC3G,OAAO,CAAC,cAAc,CAAC,IAAIrB,IAAI,CAAC0I,WAAW,CACjD;MAED,OAAAjB,KAAA,GAAO,IAAAjB,aAAO,EAAC/C,MAAM,CAAC,eACpB9E,MAAA,YAAAsE,aAAA,CAACyE,YAAY,EAAAD,KAAA,CAAAhB,EAAA;QAAA,UAASuB,MAAM;QAAA,sBAAsBE;MAAkB,iBAClEvJ,MAAA,YAAAsE,aAAA,CAACnE,WAAA,WAAU,EAAA2I,KAAA,CAAAhB,EAAA;QAAA,cACG6B,aAAa;QAAA,eACZC,cAAc;QAAA;QAAA,YAEjBT;MAAQ,iBAElBnJ,MAAA,YAAAsE,aAAA,CAACnE,WAAA,WAAU,CAAC6J,SAAS;QAACjH,GAAG,EAAEqG,UAAW;QAACa,IAAI,EAAC,UAAU;QAACC,QAAQ,EAAE,CAAC,CAAE;QAACC,MAAM,EAAE;MAAE,gBAC7EnK,MAAA,YAAAsE,aAAA,CAACmC,KAAK,EAAAqC,KAAA,CAAAhB,EAAA,cAAAN,cAAA,qBAAA1H,KAAA,CAAAsK,WAAA;QAAA,QAAmB,KAAK;QAAA,iBAAe,GAAG;QAAA,kBAAiB,CAAC,QAAQ;MAAC,GAAAvB,IAAA,KACxE,IAAI,CAACjD,aAAa,CAACsD,eAAe,EAAE,GAAG,GAAG,IAAI,CAACrD,OAAO,CAAC/D,MAAM,CAAC,CACzD,CACa,EACtBuI,OAAO,CAACf,aAAa,CAAC,iBACrBtJ,MAAA,YAAAsE,aAAA,QAAAwE,KAAA,CAAAhB,EAAA;QAAA,SAAY3G,eAAe;QAAA,QAAO;MAAU,iBAC1CnB,MAAA,YAAAsE,aAAA,QAAAwE,KAAA,CAAAhB,EAAA;QAAA,SAAY3G,eAAe;QAAA,QAAO;MAAK,iBACrCnB,MAAA,YAAAsE,aAAA,QAAAwE,KAAA,CAAAhB,EAAA;QAAA,SAAY3G,eAAe;QAAA,QAAO;MAAM,iBACtCnB,MAAA,YAAAsE,aAAA,CAACnE,WAAA,WAAU,CAACmK,GAAG;QAACC,WAAW,EAAC;MAAY,EAAG,CACvC,CACF,CAET,CACU,EACZtB,QAAQ,CAACuB,MAAM,CACH;IAEnB;EAAC;EAAA,OAAAnJ,IAAA;AAAA,EA/OgBoJ,eAAS;AAAA,IAAApI,gBAAA,aAAtBhB,IAAI;AAAA,IAAAqJ,QAAA,GAkPKrJ,IAAI;AAAAT,OAAA,cAAA8J,QAAA"}
@@ -13,6 +13,12 @@ SHeadWrapper {
13
13
  position: relative;
14
14
  }
15
15
 
16
+ SHeadWrapper[animationsDisabled] {
17
+ SColumn {
18
+ transition: none;
19
+ }
20
+ }
21
+
16
22
  SHeadWrapper[sticky] {
17
23
  position: sticky;
18
24
  top: 0;
@@ -41,6 +47,8 @@ SColumn {
41
47
  outline: none;
42
48
  box-shadow: inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
43
49
  }
50
+
51
+ transition: width calc(var(--intergalactic-duration-extra-fast, 100) * 1ms) ease-in-out, min-width calc(var(--intergalactic-duration-extra-fast, 100) * 1ms) ease-in-out, max-width calc(var(--intergalactic-duration-extra-fast, 100) * 1ms) ease-in-out;
44
52
  }
45
53
 
46
54
  SColumn[hidden] {
@@ -90,11 +98,11 @@ SColumn[sortable] {
90
98
  background-color: var(--intergalactic-table-th-primary-cell-hover, #e0e1e9);
91
99
  }
92
100
 
93
- &[justifyContent='right'] SSortWrapper {
94
- position: absolute;
95
- right: calc(var(--intergalactic-spacing-1x, 4px) + 16px);
101
+ &[justifyContent='right'][active] SSortWrapper {
102
+ position: relative;
96
103
  }
97
- &[justifyContent='right']:hover SSortWrapper, &[justifyContent='right']:focus SSortWrapper, &[justifyContent='right'][active] SSortWrapper {
104
+ &[justifyContent='right'][active='false']:hover SSortWrapper, &[justifyContent='right'][active='false']:focus SSortWrapper {
105
+ position: absolute;
98
106
  right: var(--intergalactic-spacing-3x, 12px);
99
107
  }
100
108
 
@@ -161,12 +169,12 @@ SCell[borderRight] {
161
169
  }
162
170
 
163
171
  SSortWrapper {
164
- flex-shrink: 99999;
172
+ flex-shrink: 1;
165
173
  position: relative;
166
174
  flex-basis: 0;
167
175
  min-height: 16px;
168
176
  opacity: 0;
169
- transition: all calc(var(--intergalactic-duration-medium, 300) * 1ms) ease;
177
+ transition: all calc(var(--intergalactic-duration-extra-fast, 100) * 1ms) ease-in-out;
170
178
  }
171
179
 
172
180
  SSortWrapper:before {
@@ -322,6 +330,10 @@ SRow[positioned] {
322
330
  position: absolute;
323
331
  }
324
332
 
333
+ SBody[animationsDisabled] SCell {
334
+ transition: none;
335
+ }
336
+
325
337
  SCell {
326
338
  display: flex;
327
339
  flex: 1;
@@ -334,6 +346,7 @@ SCell {
334
346
  overflow: hidden;
335
347
  white-space: nowrap;
336
348
  font-variant-numeric: tabular-nums;
349
+ transition: width calc(var(--intergalactic-duration-extra-fast, 100) * 1ms) ease-in-out;
337
350
  }
338
351
 
339
352
  SCell[use='primary'] {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["_DataTable","require"],"sources":["../../src/types.ts"],"sourcesContent":["import React from 'react';\nimport { ROW_GROUP } from './DataTable';\nimport { Property } from 'csstype';\n\nexport type PseudoChildPropsGetter = (\n props: { [propName: string]: unknown },\n rowData: { [columnName: string]: unknown },\n index: number,\n) => { [propName: string]: unknown };\nexport type PropsLayer = {\n childrenPropsGetter?: PseudoChildPropsGetter;\n [propName: string]: unknown;\n};\n\nexport type SortDirection = 'asc' | 'desc';\nexport type Column<\n Props extends { [propName: string]: unknown } = { [propName: string]: unknown },\n> = {\n name: string;\n active: boolean;\n width: number;\n fixed?: 'left' | 'right';\n resizable?: boolean;\n sortable?: boolean | SortDirection;\n sortDirection: SortDirection;\n varWidth: string;\n setVar: boolean;\n data?: unknown;\n vBorders?: boolean;\n borderLeft?: boolean;\n borderRight?: boolean;\n props: {\n name: string;\n ref: React.RefObject<HTMLElement>;\n } & Partial<{\n flex: Property.Flex;\n justifyContent: Property.JustifyContent;\n alignItems: Property.AlignItems;\n onClick: (event: React.MouseEvent) => void;\n onKeyDown: (event: React.KeyboardEvent) => void;\n forwardRef: React.Ref<HTMLElement>;\n style: React.CSSProperties;\n fixed: 'left' | 'right';\n children: React.ReactNode[];\n resizable: boolean;\n sortable: boolean | SortDirection;\n sortDirection: SortDirection;\n vBorders: boolean;\n borderLeft: Property.BorderLeft;\n borderRight: Property.BorderLeft;\n }> &\n Props;\n columns: Column[];\n parentColumns: Column[];\n};\nexport type Cell = Pick<Column, 'name' | 'fixed' | 'data'> & {\n cssVar: string | string[];\n cellPropsLayers: PropsLayer[];\n};\nexport type RowData<\n Data extends { [columnName: string]: unknown } = { [columnName: string]: unknown },\n> = Data &\n Partial<{\n name: string;\n [ROW_GROUP]: RowData[];\n }>;\nexport type NestedCells = (Cell | NestedCells)[] & { flatRowData?: RowData };\n"],"mappings":";;AACA,IAAAA,UAAA,GAAAC,OAAA"}
1
+ {"version":3,"file":"types.js","names":["_DataTable","require"],"sources":["../../src/types.ts"],"sourcesContent":["import React from 'react';\nimport { ROW_GROUP } from './DataTable';\nimport { Property } from 'csstype';\nimport { FlexProps } from '@semcore/flex-box';\n\nexport type PseudoChildPropsGetter = (\n props: { [propName: string]: unknown },\n rowData: { [columnName: string]: unknown },\n index: number,\n) => { [propName: string]: unknown };\nexport type PropsLayer = {\n childrenPropsGetter?: PseudoChildPropsGetter;\n [propName: string]: unknown;\n};\n\nexport type SortDirection = 'asc' | 'desc';\nexport type Column<\n Props extends { [propName: string]: unknown } = { [propName: string]: unknown },\n> = {\n name: string;\n active: boolean;\n width: number;\n fixed?: 'left' | 'right';\n resizable?: boolean;\n sortable?: boolean | SortDirection;\n sortDirection: SortDirection;\n varWidth: string;\n setVar: boolean;\n data?: unknown;\n vBorders?: boolean;\n borderLeft?: boolean;\n borderRight?: boolean;\n props: {\n name: string;\n ref: React.RefObject<HTMLElement>;\n } & FlexProps &\n Partial<{\n flex: Property.Flex;\n onClick: (event: React.MouseEvent) => void;\n onKeyDown: (event: React.KeyboardEvent) => void;\n forwardRef: React.Ref<HTMLElement>;\n style: React.CSSProperties;\n fixed: 'left' | 'right';\n resizable: boolean;\n sortable: boolean | SortDirection;\n sortDirection: SortDirection;\n vBorders: boolean;\n borderLeft: Property.BorderLeft;\n borderRight: Property.BorderLeft;\n }> &\n Props;\n columns: Column[];\n parentColumns: Column[];\n};\nexport type Cell = Pick<Column, 'name' | 'fixed' | 'data'> & {\n cssVar: string | string[];\n cellPropsLayers: PropsLayer[];\n};\nexport type RowData<\n Data extends { [columnName: string]: unknown } = { [columnName: string]: unknown },\n> = Data &\n Partial<{\n name: string;\n [ROW_GROUP]: RowData[];\n }>;\nexport type NestedCells = (Cell | NestedCells)[] & { flatRowData?: RowData };\n"],"mappings":";;AACA,IAAAA,UAAA,GAAAC,OAAA"}
@@ -21,6 +21,8 @@ import { getFixedStyle, getScrollOffsetValue } from './utils';
21
21
  import assignProps, { callAllEventHandlers } from 'intergalactic/utils/lib/assignProps';
22
22
  import trottle from 'intergalactic/utils/lib/rafTrottle';
23
23
  import canUseDOM from 'intergalactic/utils/lib/canUseDOM';
24
+ import { SORT_ICON_WIDTH } from './Head';
25
+ import cssToIntDefault from 'intergalactic/utils/lib/cssToIntDefault';
24
26
  var testEnv = process.env.NODE_ENV === 'test';
25
27
  var getCellsByColumn = function getCellsByColumn(cells) {
26
28
  var flattenCells = cells.flat(20);
@@ -140,17 +142,19 @@ var Body = /*#__PURE__*/function (_Component) {
140
142
  var vars = (Array.isArray(cell.cssVar) ? cell.cssVar : [cell.cssVar]).map(function (name) {
141
143
  return "var(".concat(name, ")");
142
144
  });
145
+ var columnWMin = column === null || column === void 0 ? void 0 : (_column$props = column.props) === null || _column$props === void 0 ? void 0 : _column$props.wMin;
146
+ var columnWMax = column === null || column === void 0 ? void 0 : (_column$props2 = column.props) === null || _column$props2 === void 0 ? void 0 : _column$props2.wMax;
143
147
  var _props = {
144
148
  name: cell.name,
145
149
  children: /*#__PURE__*/React.createElement(React.Fragment, null, cell.data),
146
- justifyContent: column === null || column === void 0 ? void 0 : (_column$props = column.props) === null || _column$props === void 0 ? void 0 : _column$props.justifyContent,
147
- alignItems: column === null || column === void 0 ? void 0 : (_column$props2 = column.props) === null || _column$props2 === void 0 ? void 0 : _column$props2.alignItems,
150
+ justifyContent: column === null || column === void 0 ? void 0 : (_column$props3 = column.props) === null || _column$props3 === void 0 ? void 0 : _column$props3.justifyContent,
151
+ alignItems: column === null || column === void 0 ? void 0 : (_column$props4 = column.props) === null || _column$props4 === void 0 ? void 0 : _column$props4.alignItems,
148
152
  borderLeft: firstColumn === null || firstColumn === void 0 ? void 0 : firstColumn.borderLeft,
149
153
  borderRight: lastColumn === null || lastColumn === void 0 ? void 0 : lastColumn.borderRight,
150
154
  style: {
151
155
  width: vars.length === 1 ? vars[0] : "calc(".concat(vars.join(' + '), ")"),
152
- minWidth: column === null || column === void 0 ? void 0 : (_column$props3 = column.props) === null || _column$props3 === void 0 ? void 0 : _column$props3.wMin,
153
- maxWidth: column === null || column === void 0 ? void 0 : (_column$props4 = column.props) === null || _column$props4 === void 0 ? void 0 : _column$props4.wMax
156
+ minWidth: columnWMin,
157
+ maxWidth: columnWMax && column !== null && column !== void 0 && column.sortable ? "calc(".concat(SORT_ICON_WIDTH, "px + ").concat(cssToIntDefault(columnWMax.toString()), "px)") : columnWMax
154
158
  }
155
159
  };
156
160
  if (name !== undefined && value !== undefined) {
@@ -323,7 +327,8 @@ var Body = /*#__PURE__*/function (_Component) {
323
327
  onResize = _this$asProps3.onResize,
324
328
  onScroll = _this$asProps3.onScroll,
325
329
  disabledScroll = _this$asProps3.disabledScroll,
326
- renderRows = _this$asProps3.renderRows;
330
+ renderRows = _this$asProps3.renderRows,
331
+ animationsDisabled = _this$asProps3.animationsDisabled;
327
332
  var columnsInitialized = columns.reduce(function (sum, _ref10) {
328
333
  var width = _ref10.width;
329
334
  return sum + width;
@@ -337,7 +342,9 @@ var Body = /*#__PURE__*/function (_Component) {
337
342
  if (virtualScroll && columnsInitialized && !rowHeight) {
338
343
  requestAnimationFrame(this.setupRowSizeObserver);
339
344
  }
340
- var body = (_ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SBody, _ref5.cn("SBody", _objectSpread({}, _assignProps({}, _ref))), renderRows ? renderRows({
345
+ var body = (_ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SBody, _ref5.cn("SBody", _objectSpread({}, _assignProps({
346
+ "animationsDisabled": animationsDisabled
347
+ }, _ref))), renderRows ? renderRows({
341
348
  rows: rows,
342
349
  columns: columns,
343
350
  renderRow: this.renderRow.bind(this)
@@ -1 +1 @@
1
- {"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","trottle","canUseDOM","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","displayContents","display","Body","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","rowHeight","undefined","scrollAreaHeight","scrollOffset","createRef","virtualScroll","asProps","rowHeightFromProps","_typeof","state","entries","contentRect","height","setState","oldState","event","_ref6","target","scrollTop","firstRowRef","current","firstRowResizeObserver","ResizeObserver","handleFirstRowResize","observe","_createClass","key","value","renderCells","rowData","dataIndex","_this2","SCell","_this$asProps","styles","columns","use","uid","cellIndex","isArray","_ref2","SGroupCell","createElement","cn","renderRows","_ref3","_column$parentColumns","_column$props","_column$props2","_column$props3","_column$props4","nameParts","split","firstName","lastName","firstColumn","find","c","lastColumn","column","_getFixedStyle","_getFixedStyle2","_slicedToArray","parentColumnNames","parentColumns","vars","cssVar","props","children","Fragment","justifyContent","alignItems","borderLeft","borderRight","style","width","join","minWidth","wMin","maxWidth","wMax","_iterator","_createForOfIteratorHelper","cellPropsLayers","_step","s","n","done","cellPropLayer","_cellPropLayer$childr","childrenPropsGetter","p","other","_objectWithoutProperties","_excluded","propsCell","err","e","f","headerIds","_toConsumableArray","filter","Boolean","_objectSpread","fixed","theme","renderRow","_ref7","_ref4","topOffset","_ref7$nested","nested","SRow","_this$asProps2","rowPropsLayers","uniqueKey","flatRowData","String","needToMeasureHeight","active","positioned","top","ref","_iterator2","_step2","rowPropsLayer","_rowPropsLayer$childr","_excluded2","propsRow","toString","rows","_this3","renderVirtualizedRows","_ref8","_this4","_this$state","getRowHeight","tollerance","startIndex","Math","max","floor","lastIndex","min","ceil","needToMeasureFirstRowHeight","firstRow","visibleRows","slice","processedVisibleRows","index","unshift","_ref9","componentWillUnmount","_this$firstRowResizeO","disconnect","render","_ref","_ref5","SBody","SBodyWrapper","SHeightHold","_this$asProps3","Children","$scrollRef","onResize","onScroll","disabledScroll","columnsInitialized","reduce","sum","_ref10","_getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","holdHeight","requestAnimationFrame","setupRowSizeObserver","body","_assignProps","bind","handleScrollAreaResize","handleScrollAreaScroll","Container","role","focusRingTopOffset","Bar","orientation","position","bottom","w","zIndex","origin"],"sources":["../../src/Body.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport { getFixedStyle, getScrollOffsetValue } from './utils';\nimport { RowData, Column, NestedCells, PropsLayer, Cell } from './types';\nimport assignProps, { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\n\nconst testEnv = process.env.NODE_ENV === 'test';\n\nconst getCellsByColumn = (cells: NestedCells): RowData => {\n const flattenCells = cells.flat(20) as Cell[];\n return Object.fromEntries(flattenCells.map((cell) => [cell.name, cell.data]));\n};\nconst displayContents = { display: 'contents' };\n\ntype AsProps = {\n rows: NestedCells[][];\n columns: Column[];\n $scrollRef: ReturnType<ReturnType<typeof syncScroll>>;\n onResize: ResizeObserverCallback;\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n rowPropsLayers: PropsLayer[];\n use: 'primary' | 'secondary';\n uniqueKey: string;\n virtualScroll?: boolean | { tollerance?: number; rowHeight?: number };\n renderRows?: (props: {\n rows: NestedCells[][];\n columns: Column[];\n renderRow: (row: Cell[], details: { dataIndex: number; nested: boolean }) => React.ReactNode;\n }) => React.ReactNode;\n disabledScroll?: boolean;\n uid?: string;\n};\n\ntype State = {\n rowHeight: number | undefined;\n scrollAreaHeight: undefined | number;\n scrollOffset: number;\n};\n\nclass Body extends Component<AsProps, State> {\n state: State = {\n rowHeight: undefined,\n scrollAreaHeight: undefined,\n scrollOffset: 0,\n };\n\n firstRowRef = React.createRef<HTMLDivElement>();\n firstRowResizeObserver: ResizeObserver | null = null;\n\n getRowHeight = () => {\n const { virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n return rowHeightFromProps || this.state.rowHeight;\n };\n\n renderCells(cells: NestedCells, rowData: RowData, dataIndex: number) {\n const SCell = Flex;\n const { styles, columns, use, uid } = this.asProps;\n return cells.map((cell, cellIndex) => {\n if (Array.isArray(cell)) {\n const SGroupCell = 'div';\n return sstyled(styles)(\n <SGroupCell key={`${cellIndex}`} data-ui-name='group-cell'>\n {this.renderRows(cell as NestedCells[], true)}\n </SGroupCell>,\n );\n } else {\n const nameParts = cell.name.split('/');\n const firstName = nameParts[0];\n const lastName = nameParts[nameParts.length - 1];\n const firstColumn = columns.find((c) => c.name === firstName);\n const lastColumn = columns.find((c) => c.name === lastName);\n const column = columns.find((c) => c.name === cell.name);\n const [name, value] = getFixedStyle(cell, columns);\n const parentColumnNames = column?.parentColumns.map((column) => column.name) ?? [];\n const vars = (Array.isArray(cell.cssVar) ? cell.cssVar : [cell.cssVar]).map(\n (name) => `var(${name})`,\n );\n type CellProps = any & {\n name: string;\n children: React.ReactNode;\n style: React.CSSProperties;\n };\n\n let props: CellProps = {\n name: cell.name,\n children: <>{cell.data}</>,\n justifyContent: column?.props?.justifyContent,\n alignItems: column?.props?.alignItems,\n borderLeft: firstColumn?.borderLeft,\n borderRight: lastColumn?.borderRight,\n style: {\n width: vars.length === 1 ? vars[0] : `calc(${vars.join(' + ')})`,\n minWidth: column?.props?.wMin,\n maxWidth: column?.props?.wMax,\n },\n };\n if (name !== undefined && value !== undefined) {\n props.style[name] = value;\n }\n\n for (const cellPropLayer of cell.cellPropsLayers || []) {\n const { childrenPropsGetter = (p) => p, ...other } = cellPropLayer;\n const propsCell = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsCell, rowData, dataIndex), propsCell);\n }\n\n const headerIds = [cell.name, ...parentColumnNames]\n .filter(Boolean)\n .map((name) => `igc-table-${uid}-${name}`);\n\n return sstyled(styles)(\n <SCell\n key={cell.name}\n role='cell'\n headers={headerIds.join(' ')}\n __excludeProps={['data']}\n {...props}\n fixed={cell.fixed}\n theme={props.theme}\n use={use}\n borderLeft={props.borderLeft}\n borderRight={props.borderRight}\n />,\n ) as React.ReactElement;\n }\n }, [] as React.ReactElement[]);\n }\n\n renderRow(\n cells: NestedCells,\n {\n dataIndex,\n topOffset,\n nested = false,\n }: { dataIndex: number; topOffset?: number; nested: boolean },\n ) {\n const SRow = Box;\n const { styles, rowPropsLayers, uniqueKey, virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n\n const rowData = cells.flatRowData || getCellsByColumn(cells);\n const key = rowData[uniqueKey] ? String(rowData[uniqueKey]) : `row_${dataIndex}`;\n const needToMeasureHeight = dataIndex === 0 && !rowHeightFromProps;\n\n let props = {\n children: this.renderCells(cells, rowData, dataIndex),\n theme: undefined,\n active: undefined,\n positioned: topOffset !== undefined,\n top: topOffset,\n ref: needToMeasureHeight ? this.firstRowRef : undefined,\n key,\n 'aria-rowindex': !nested ? dataIndex + 2 : undefined,\n };\n\n for (const rowPropsLayer of rowPropsLayers) {\n const { childrenPropsGetter = (p) => p, ...other } = rowPropsLayer;\n const propsRow = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsRow, rowData, dataIndex), propsRow);\n }\n\n return sstyled(styles)(\n <SRow\n data-nested={nested.toString()}\n role={!nested ? 'row' : undefined}\n __excludeProps={['data']}\n {...props}\n />,\n );\n }\n\n renderRows(rows: NestedCells[], nested = false) {\n return rows.map((cells, dataIndex) => this.renderRow(cells, { dataIndex, nested }));\n }\n\n renderVirtualizedRows(rows: NestedCells[]) {\n if (rows.length === 0) return [];\n\n const { virtualScroll } = this.asProps;\n const { scrollOffset, scrollAreaHeight } = this.state;\n const rowHeight = this.getRowHeight();\n\n const tollerance = (typeof virtualScroll === 'object' ? virtualScroll?.tollerance : 2) ?? 2;\n const startIndex = Math.max(Math.floor(scrollOffset / rowHeight!) - tollerance, 0);\n const lastIndex = Math.min(\n Math.ceil((scrollOffset + scrollAreaHeight!) / rowHeight!) + tollerance,\n rows.length,\n );\n\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n const needToMeasureFirstRowHeight = !rowHeightFromProps;\n\n const firstRow = { cells: rows[0], dataIndex: 0, topOffset: 0 };\n const visibleRows = rowHeight !== undefined ? rows.slice(startIndex, lastIndex) : [];\n const processedVisibleRows = visibleRows.map((cells, index) => ({\n cells,\n dataIndex: startIndex + index,\n topOffset: rowHeight! * (startIndex + index),\n }));\n if (needToMeasureFirstRowHeight && startIndex !== 0) {\n processedVisibleRows.unshift(firstRow);\n }\n\n return processedVisibleRows.map(({ cells, dataIndex, topOffset }) =>\n this.renderRow(cells, { dataIndex, topOffset, nested: false }),\n );\n }\n\n handleFirstRowResize = trottle((entries: ResizeObserverEntry[]) => {\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.rowHeight === height) return oldState;\n return { rowHeight: height };\n });\n });\n\n handleScrollAreaResize = trottle((entries: ResizeObserverEntry[]) => {\n const { virtualScroll } = this.asProps;\n if (!virtualScroll) return;\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.scrollAreaHeight === height) return oldState;\n return { scrollAreaHeight: height };\n });\n });\n\n handleScrollAreaScroll = (event: React.SyntheticEvent<HTMLElement>) => {\n const { scrollTop } = event.target as HTMLElement;\n const { virtualScroll } = this.asProps;\n if (virtualScroll) {\n this.setState((oldState: State) => {\n if (oldState.scrollOffset === scrollTop) return oldState;\n return { scrollOffset: scrollTop };\n });\n }\n };\n\n setupRowSizeObserver = () => {\n if (!this.firstRowRef.current) return;\n if (!this.asProps.virtualScroll) return;\n if (canUseDOM()) {\n this.firstRowResizeObserver = new ResizeObserver(this.handleFirstRowResize);\n this.firstRowResizeObserver.observe(this.firstRowRef.current);\n }\n };\n\n componentWillUnmount() {\n this.firstRowResizeObserver?.disconnect();\n }\n\n render() {\n const SBody = Root;\n const SBodyWrapper = Box;\n const SHeightHold = Box;\n const {\n Children,\n styles,\n rows,\n columns,\n $scrollRef,\n virtualScroll,\n onResize,\n onScroll,\n disabledScroll,\n renderRows,\n } = this.asProps;\n\n const columnsInitialized = columns.reduce((sum, { width }) => sum + width, 0) > 0 || testEnv;\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(columns);\n\n const rowHeight = this.getRowHeight();\n const holdHeight =\n rowHeight !== undefined && virtualScroll ? rowHeight * rows.length : undefined;\n\n if (virtualScroll && columnsInitialized && !rowHeight) {\n requestAnimationFrame(this.setupRowSizeObserver);\n }\n\n const body = sstyled(styles)(\n <SBody render={Box}>\n {renderRows ? (\n renderRows({ rows, columns, renderRow: this.renderRow.bind(this) }) || null\n ) : (\n <>\n {holdHeight ? <SHeightHold hMin={holdHeight} aria-hidden={true} /> : null}\n {virtualScroll ? this.renderVirtualizedRows(rows) : this.renderRows(rows)}\n </>\n )}\n </SBody>,\n );\n\n if (disabledScroll) {\n return <SBodyWrapper>{body}</SBodyWrapper>;\n }\n\n return (\n <SBodyWrapper>\n <ScrollArea\n shadow\n leftOffset={offsetLeftSum}\n rightOffset={offsetRightSum}\n onResize={callAllEventHandlers(onResize, this.handleScrollAreaResize)}\n onScroll={callAllEventHandlers(onScroll, this.handleScrollAreaScroll)}\n >\n <ScrollArea.Container ref={$scrollRef} role='rowgroup' focusRingTopOffset={'3px'}>\n {body}\n </ScrollArea.Container>\n <div style={displayContents} role='rowgroup'>\n <div style={displayContents} role='row'>\n <div style={displayContents} role='cell'>\n <ScrollArea.Bar orientation='horizontal' position={'sticky'} bottom={0} />\n <ScrollArea.Bar orientation='vertical' w={'12px'} zIndex={2} />\n </div>\n </div>\n </div>\n </ScrollArea>\n {Children.origin}\n </SBodyWrapper>\n );\n }\n}\n\nexport default Body;\n"],"mappings":";;;;;;;;;;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,eAAe;AACxD,SAASC,GAAG,EAAEC,IAAI,QAAQ,mBAAmB;AAC7C,OAAOC,UAAU,MAAM,sBAAsB;AAC7C,SAASC,aAAa,EAAEC,oBAAoB,QAAQ,SAAS;AAE7D,OAAOC,WAAW,IAAIC,oBAAoB,QAAQ,gCAAgC;AAElF,OAAOC,OAAO,MAAM,+BAA+B;AACnD,OAAOC,SAAS,MAAM,8BAA8B;AAEpD,IAAMC,OAAO,GAAGC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM;AAE/C,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,KAAkB,EAAc;EACxD,IAAMC,YAAY,GAAGD,KAAK,CAACE,IAAI,CAAC,EAAE,CAAW;EAC7C,OAAOC,MAAM,CAACC,WAAW,CAACH,YAAY,CAACI,GAAG,CAAC,UAACC,IAAI;IAAA,OAAK,CAACA,IAAI,CAACC,IAAI,EAAED,IAAI,CAACE,IAAI,CAAC;EAAA,EAAC,CAAC;AAC/E,CAAC;AACD,IAAMC,eAAe,GAAG;EAAEC,OAAO,EAAE;AAAW,CAAC;AAAC,IA2B1CC,IAAI,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,IAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,IAAA;EAAA,SAAAA,KAAA;IAAA,IAAAK,KAAA;IAAAC,eAAA,OAAAN,IAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAAM,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,YACO;MACba,SAAS,EAAEC,SAAS;MACpBC,gBAAgB,EAAED,SAAS;MAC3BE,YAAY,EAAE;IAChB,CAAC;IAAAL,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,+BAEalC,KAAK,CAACmD,SAAS,EAAkB;IAAAN,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,6BACC,IAAI;IAAAW,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,mBAErC,YAAM;MACnB,IAAQkB,aAAa,GAAKlB,KAAA,CAAKmB,OAAO,CAA9BD,aAAa;MACrB,IAAME,kBAAkB,GAAGC,OAAA,CAAOH,aAAa,MAAK,QAAQ,KAAIA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEL,SAAS;MACxF,OAAOO,kBAAkB,IAAIpB,KAAA,CAAKsB,KAAK,CAACT,SAAS;IACnD,CAAC;IAAAF,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,2BA4JsBvB,OAAO,CAAC,UAAC8C,OAA8B,EAAK;MACjE,IAAQC,WAAW,GAAKD,OAAO,CAAC,CAAC,CAAC,CAA1BC,WAAW;MACnB,IAAQC,MAAM,GAAKD,WAAW,CAAtBC,MAAM;MACdzB,KAAA,CAAK0B,QAAQ,CAAC,UAACC,QAAe,EAAK;QACjC,IAAIA,QAAQ,CAACd,SAAS,KAAKY,MAAM,EAAE,OAAOE,QAAQ;QAClD,OAAO;UAAEd,SAAS,EAAEY;QAAO,CAAC;MAC9B,CAAC,CAAC;IACJ,CAAC,CAAC;IAAAd,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,6BAEuBvB,OAAO,CAAC,UAAC8C,OAA8B,EAAK;MACnE,IAAQL,aAAa,GAAKlB,KAAA,CAAKmB,OAAO,CAA9BD,aAAa;MACrB,IAAI,CAACA,aAAa,EAAE;MACpB,IAAQM,WAAW,GAAKD,OAAO,CAAC,CAAC,CAAC,CAA1BC,WAAW;MACnB,IAAQC,MAAM,GAAKD,WAAW,CAAtBC,MAAM;MACdzB,KAAA,CAAK0B,QAAQ,CAAC,UAACC,QAAe,EAAK;QACjC,IAAIA,QAAQ,CAACZ,gBAAgB,KAAKU,MAAM,EAAE,OAAOE,QAAQ;QACzD,OAAO;UAAEZ,gBAAgB,EAAEU;QAAO,CAAC;MACrC,CAAC,CAAC;IACJ,CAAC,CAAC;IAAAd,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,6BAEuB,UAAC4B,KAAwC,EAAK;MACrE,IAAAC,KAAA,GAAsBD,KAAK,CAACE,MAAM;QAA1BC,SAAS,GAAAF,KAAA,CAATE,SAAS;MACjB,IAAQb,aAAa,GAAKlB,KAAA,CAAKmB,OAAO,CAA9BD,aAAa;MACrB,IAAIA,aAAa,EAAE;QACjBlB,KAAA,CAAK0B,QAAQ,CAAC,UAACC,QAAe,EAAK;UACjC,IAAIA,QAAQ,CAACX,YAAY,KAAKe,SAAS,EAAE,OAAOJ,QAAQ;UACxD,OAAO;YAAEX,YAAY,EAAEe;UAAU,CAAC;QACpC,CAAC,CAAC;MACJ;IACF,CAAC;IAAApB,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,2BAEsB,YAAM;MAC3B,IAAI,CAACA,KAAA,CAAKgC,WAAW,CAACC,OAAO,EAAE;MAC/B,IAAI,CAACjC,KAAA,CAAKmB,OAAO,CAACD,aAAa,EAAE;MACjC,IAAIxC,SAAS,EAAE,EAAE;QACfsB,KAAA,CAAKkC,sBAAsB,GAAG,IAAIC,cAAc,CAACnC,KAAA,CAAKoC,oBAAoB,CAAC;QAC3EpC,KAAA,CAAKkC,sBAAsB,CAACG,OAAO,CAACrC,KAAA,CAAKgC,WAAW,CAACC,OAAO,CAAC;MAC/D;IACF,CAAC;IAAA,OAAAjC,KAAA;EAAA;EAAAsC,YAAA,CAAA3C,IAAA;IAAA4C,GAAA;IAAAC,KAAA,EAhMD,SAAAC,YAAYzD,KAAkB,EAAE0D,OAAgB,EAAEC,SAAiB,EAAE;MAAA,IAAAC,MAAA;MACnE,IAAMC,KAAK,GAAG1E,IAAI;MAClB,IAAA2E,aAAA,GAAsC,IAAI,CAAC3B,OAAO;QAA1C4B,MAAM,GAAAD,aAAA,CAANC,MAAM;QAAEC,OAAO,GAAAF,aAAA,CAAPE,OAAO;QAAEC,GAAG,GAAAH,aAAA,CAAHG,GAAG;QAAEC,GAAG,GAAAJ,aAAA,CAAHI,GAAG;MACjC,OAAOlE,KAAK,CAACK,GAAG,CAAC,UAACC,IAAI,EAAE6D,SAAS,EAAK;QACpC,IAAI7C,KAAK,CAAC8C,OAAO,CAAC9D,IAAI,CAAC,EAAE;UAAA,IAAA+D,KAAA;UACvB,IAAMC,UAAU,GAAG,KAAK;UACxB,OAAAD,KAAA,GAAOrF,OAAO,CAAC+E,MAAM,CAAC,eACpBjF,KAAA,CAAAyF,aAAA,CAACD,UAAU,EAAAD,KAAA,CAAAG,EAAA;YAAA,UAAA9C,MAAA,CAASyC,SAAS;YAAA,gBAAiB;UAAY,IACvDP,MAAI,CAACa,UAAU,CAACnE,IAAI,EAAmB,IAAI,CAAC,CAClC;QAEjB,CAAC,MAAM;UAAA,IAAAoE,KAAA,EAAAC,qBAAA,EAAAC,aAAA,EAAAC,cAAA,EAAAC,cAAA,EAAAC,cAAA;UACL,IAAMC,SAAS,GAAG1E,IAAI,CAACC,IAAI,CAAC0E,KAAK,CAAC,GAAG,CAAC;UACtC,IAAMC,SAAS,GAAGF,SAAS,CAAC,CAAC,CAAC;UAC9B,IAAMG,QAAQ,GAAGH,SAAS,CAACA,SAAS,CAAC5D,MAAM,GAAG,CAAC,CAAC;UAChD,IAAMgE,WAAW,GAAGpB,OAAO,CAACqB,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAC/E,IAAI,KAAK2E,SAAS;UAAA,EAAC;UAC7D,IAAMK,UAAU,GAAGvB,OAAO,CAACqB,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAC/E,IAAI,KAAK4E,QAAQ;UAAA,EAAC;UAC3D,IAAMK,MAAM,GAAGxB,OAAO,CAACqB,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAC/E,IAAI,KAAKD,IAAI,CAACC,IAAI;UAAA,EAAC;UACxD,IAAAkF,cAAA,GAAsBpG,aAAa,CAACiB,IAAI,EAAE0D,OAAO,CAAC;YAAA0B,eAAA,GAAAC,cAAA,CAAAF,cAAA;YAA3ClF,IAAI,GAAAmF,eAAA;YAAElC,KAAK,GAAAkC,eAAA;UAClB,IAAME,iBAAiB,IAAAjB,qBAAA,GAAGa,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEK,aAAa,CAACxF,GAAG,CAAC,UAACmF,MAAM;YAAA,OAAKA,MAAM,CAACjF,IAAI;UAAA,EAAC,cAAAoE,qBAAA,cAAAA,qBAAA,GAAI,EAAE;UAClF,IAAMmB,IAAI,GAAG,CAACxE,KAAK,CAAC8C,OAAO,CAAC9D,IAAI,CAACyF,MAAM,CAAC,GAAGzF,IAAI,CAACyF,MAAM,GAAG,CAACzF,IAAI,CAACyF,MAAM,CAAC,EAAE1F,GAAG,CACzE,UAACE,IAAI;YAAA,cAAAmB,MAAA,CAAYnB,IAAI;UAAA,CAAG,CACzB;UAOD,IAAIyF,MAAgB,GAAG;YACrBzF,IAAI,EAAED,IAAI,CAACC,IAAI;YACf0F,QAAQ,eAAEnH,KAAA,CAAAyF,aAAA,CAAAzF,KAAA,CAAAoH,QAAA,QAAG5F,IAAI,CAACE,IAAI,CAAI;YAC1B2F,cAAc,EAAEX,MAAM,aAANA,MAAM,wBAAAZ,aAAA,GAANY,MAAM,CAAEQ,KAAK,cAAApB,aAAA,uBAAbA,aAAA,CAAeuB,cAAc;YAC7CC,UAAU,EAAEZ,MAAM,aAANA,MAAM,wBAAAX,cAAA,GAANW,MAAM,CAAEQ,KAAK,cAAAnB,cAAA,uBAAbA,cAAA,CAAeuB,UAAU;YACrCC,UAAU,EAAEjB,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEiB,UAAU;YACnCC,WAAW,EAAEf,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEe,WAAW;YACpCC,KAAK,EAAE;cACLC,KAAK,EAAEV,IAAI,CAAC1E,MAAM,KAAK,CAAC,GAAG0E,IAAI,CAAC,CAAC,CAAC,WAAApE,MAAA,CAAWoE,IAAI,CAACW,IAAI,CAAC,KAAK,CAAC,MAAG;cAChEC,QAAQ,EAAElB,MAAM,aAANA,MAAM,wBAAAV,cAAA,GAANU,MAAM,CAAEQ,KAAK,cAAAlB,cAAA,uBAAbA,cAAA,CAAe6B,IAAI;cAC7BC,QAAQ,EAAEpB,MAAM,aAANA,MAAM,wBAAAT,cAAA,GAANS,MAAM,CAAEQ,KAAK,cAAAjB,cAAA,uBAAbA,cAAA,CAAe8B;YAC3B;UACF,CAAC;UACD,IAAItG,IAAI,KAAKuB,SAAS,IAAI0B,KAAK,KAAK1B,SAAS,EAAE;YAC7CkE,MAAK,CAACO,KAAK,CAAChG,IAAI,CAAC,GAAGiD,KAAK;UAC3B;UAAC,IAAAsD,SAAA,GAAAC,0BAAA,CAE2BzG,IAAI,CAAC0G,eAAe,IAAI,EAAE;YAAAC,KAAA;UAAA;YAAtD,KAAAH,SAAA,CAAAI,CAAA,MAAAD,KAAA,GAAAH,SAAA,CAAAK,CAAA,IAAAC,IAAA,GAAwD;cAAA,IAA7CC,aAAa,GAAAJ,KAAA,CAAAzD,KAAA;cACtB,IAAA8D,qBAAA,GAAqDD,aAAa,CAA1DE,mBAAmB;gBAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,UAACE,CAAC;kBAAA,OAAKA,CAAC;gBAAA,IAAAF,qBAAA;gBAAKG,KAAK,GAAAC,wBAAA,CAAKL,aAAa,EAAAM,SAAA;cAClE,IAAMC,SAAS,GAAGrI,WAAW,CAACkI,KAAK,EAAEzB,MAAK,CAAC;cAC3CA,MAAK,GAAGzG,WAAW,CAACgI,mBAAmB,CAACK,SAAS,EAAElE,OAAO,EAAEC,SAAS,CAAC,EAAEiE,SAAS,CAAC;YACpF;UAAC,SAAAC,GAAA;YAAAf,SAAA,CAAAgB,CAAA,CAAAD,GAAA;UAAA;YAAAf,SAAA,CAAAiB,CAAA;UAAA;UAED,IAAMC,SAAS,GAAG,CAAC1H,IAAI,CAACC,IAAI,EAAAmB,MAAA,CAAAuG,kBAAA,CAAKrC,iBAAiB,GAC/CsC,MAAM,CAACC,OAAO,CAAC,CACf9H,GAAG,CAAC,UAACE,IAAI;YAAA,oBAAAmB,MAAA,CAAkBwC,GAAG,OAAAxC,MAAA,CAAInB,IAAI;UAAA,CAAE,CAAC;UAE5C,OAAAmE,KAAA,GAAO1F,OAAO,CAAC+E,MAAM,CAAC,eACpBjF,KAAA,CAAAyF,aAAA,CAACV,KAAK,EAAAa,KAAA,CAAAF,EAAA,UAAA4D,aAAA,CAAAA,aAAA;YAAA,OACC9H,IAAI,CAACC,IAAI;YAAA,QACT,MAAM;YAAA,WACFyH,SAAS,CAACvB,IAAI,CAAC,GAAG,CAAC;YAAA,kBACZ,CAAC,MAAM;UAAC,GACpBT,MAAK;YAAA,SACF1F,IAAI,CAAC+H,KAAK;YAAA,SACVrC,MAAK,CAACsC,KAAK;YAAA,OACbrE,GAAG;YAAA,cACI+B,MAAK,CAACK,UAAU;YAAA,eACfL,MAAK,CAACM;UAAW,IAC9B;QAEN;MACF,CAAC,EAAE,EAAE,CAAyB;IAChC;EAAC;IAAA/C,GAAA;IAAAC,KAAA,EAED,SAAA+E,UACEvI,KAAkB,EAAAwI,KAAA,EAMlB;MAAA,IAAAC,KAAA;MAAA,IAJE9E,SAAS,GAAA6E,KAAA,CAAT7E,SAAS;QACT+E,SAAS,GAAAF,KAAA,CAATE,SAAS;QAAAC,YAAA,GAAAH,KAAA,CACTI,MAAM;QAANA,MAAM,GAAAD,YAAA,cAAG,KAAK,GAAAA,YAAA;MAGhB,IAAME,IAAI,GAAG3J,GAAG;MAChB,IAAA4J,cAAA,GAA6D,IAAI,CAAC3G,OAAO;QAAjE4B,MAAM,GAAA+E,cAAA,CAAN/E,MAAM;QAAEgF,cAAc,GAAAD,cAAA,CAAdC,cAAc;QAAEC,SAAS,GAAAF,cAAA,CAATE,SAAS;QAAE9G,aAAa,GAAA4G,cAAA,CAAb5G,aAAa;MACxD,IAAME,kBAAkB,GAAGC,OAAA,CAAOH,aAAa,MAAK,QAAQ,KAAIA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEL,SAAS;MAExF,IAAM6B,OAAO,GAAG1D,KAAK,CAACiJ,WAAW,IAAIlJ,gBAAgB,CAACC,KAAK,CAAC;MAC5D,IAAMuD,GAAG,GAAGG,OAAO,CAACsF,SAAS,CAAC,GAAGE,MAAM,CAACxF,OAAO,CAACsF,SAAS,CAAC,CAAC,UAAAtH,MAAA,CAAUiC,SAAS,CAAE;MAChF,IAAMwF,mBAAmB,GAAGxF,SAAS,KAAK,CAAC,IAAI,CAACvB,kBAAkB;MAElE,IAAI4D,KAAK,GAAG;QACVC,QAAQ,EAAE,IAAI,CAACxC,WAAW,CAACzD,KAAK,EAAE0D,OAAO,EAAEC,SAAS,CAAC;QACrD2E,KAAK,EAAExG,SAAS;QAChBsH,MAAM,EAAEtH,SAAS;QACjBuH,UAAU,EAAEX,SAAS,KAAK5G,SAAS;QACnCwH,GAAG,EAAEZ,SAAS;QACda,GAAG,EAAEJ,mBAAmB,GAAG,IAAI,CAACnG,WAAW,GAAGlB,SAAS;QACvDyB,GAAG,EAAHA,GAAG;QACH,eAAe,EAAE,CAACqF,MAAM,GAAGjF,SAAS,GAAG,CAAC,GAAG7B;MAC7C,CAAC;MAAC,IAAA0H,UAAA,GAAAzC,0BAAA,CAE0BgC,cAAc;QAAAU,MAAA;MAAA;QAA1C,KAAAD,UAAA,CAAAtC,CAAA,MAAAuC,MAAA,GAAAD,UAAA,CAAArC,CAAA,IAAAC,IAAA,GAA4C;UAAA,IAAjCsC,aAAa,GAAAD,MAAA,CAAAjG,KAAA;UACtB,IAAAmG,qBAAA,GAAqDD,aAAa,CAA1DnC,mBAAmB;YAAnBA,mBAAmB,GAAAoC,qBAAA,cAAG,UAACnC,CAAC;cAAA,OAAKA,CAAC;YAAA,IAAAmC,qBAAA;YAAKlC,KAAK,GAAAC,wBAAA,CAAKgC,aAAa,EAAAE,UAAA;UAClE,IAAMC,QAAQ,GAAGtK,WAAW,CAACkI,KAAK,EAAEzB,KAAK,CAAC;UAC1CA,KAAK,GAAGzG,WAAW,CAACgI,mBAAmB,CAACsC,QAAQ,EAAEnG,OAAO,EAAEC,SAAS,CAAC,EAAEkG,QAAQ,CAAC;QAClF;MAAC,SAAAhC,GAAA;QAAA2B,UAAA,CAAA1B,CAAA,CAAAD,GAAA;MAAA;QAAA2B,UAAA,CAAAzB,CAAA;MAAA;MAED,OAAAU,KAAA,GAAOzJ,OAAO,CAAC+E,MAAM,CAAC,eACpBjF,KAAA,CAAAyF,aAAA,CAACsE,IAAI,EAAAJ,KAAA,CAAAjE,EAAA,SAAA4D,aAAA;QAAA,eACUQ,MAAM,CAACkB,QAAQ,EAAE;QAAA,QACxB,CAAClB,MAAM,GAAG,KAAK,GAAG9G,SAAS;QAAA,kBACjB,CAAC,MAAM;MAAC,GACpBkE,KAAK,GACT;IAEN;EAAC;IAAAzC,GAAA;IAAAC,KAAA,EAED,SAAAiB,WAAWsF,IAAmB,EAAkB;MAAA,IAAAC,MAAA;MAAA,IAAhBpB,MAAM,GAAAzH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAW,SAAA,GAAAX,SAAA,MAAG,KAAK;MAC5C,OAAO4I,IAAI,CAAC1J,GAAG,CAAC,UAACL,KAAK,EAAE2D,SAAS;QAAA,OAAKqG,MAAI,CAACzB,SAAS,CAACvI,KAAK,EAAE;UAAE2D,SAAS,EAATA,SAAS;UAAEiF,MAAM,EAANA;QAAO,CAAC,CAAC;MAAA,EAAC;IACrF;EAAC;IAAArF,GAAA;IAAAC,KAAA,EAED,SAAAyG,sBAAsBF,IAAmB,EAAE;MAAA,IAAAG,KAAA;QAAAC,MAAA;MACzC,IAAIJ,IAAI,CAAC3I,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;MAEhC,IAAQc,aAAa,GAAK,IAAI,CAACC,OAAO,CAA9BD,aAAa;MACrB,IAAAkI,WAAA,GAA2C,IAAI,CAAC9H,KAAK;QAA7CN,YAAY,GAAAoI,WAAA,CAAZpI,YAAY;QAAED,gBAAgB,GAAAqI,WAAA,CAAhBrI,gBAAgB;MACtC,IAAMF,SAAS,GAAG,IAAI,CAACwI,YAAY,EAAE;MAErC,IAAMC,UAAU,IAAAJ,KAAA,GAAI7H,OAAA,CAAOH,aAAa,MAAK,QAAQ,GAAGA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEoI,UAAU,GAAG,CAAC,cAAAJ,KAAA,cAAAA,KAAA,GAAK,CAAC;MAC3F,IAAMK,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,KAAK,CAAC1I,YAAY,GAAGH,SAAU,CAAC,GAAGyI,UAAU,EAAE,CAAC,CAAC;MAClF,IAAMK,SAAS,GAAGH,IAAI,CAACI,GAAG,CACxBJ,IAAI,CAACK,IAAI,CAAC,CAAC7I,YAAY,GAAGD,gBAAiB,IAAIF,SAAU,CAAC,GAAGyI,UAAU,EACvEP,IAAI,CAAC3I,MAAM,CACZ;MAED,IAAMgB,kBAAkB,GAAGC,OAAA,CAAOH,aAAa,MAAK,QAAQ,KAAIA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEL,SAAS;MACxF,IAAMiJ,2BAA2B,GAAG,CAAC1I,kBAAkB;MAEvD,IAAM2I,QAAQ,GAAG;QAAE/K,KAAK,EAAE+J,IAAI,CAAC,CAAC,CAAC;QAAEpG,SAAS,EAAE,CAAC;QAAE+E,SAAS,EAAE;MAAE,CAAC;MAC/D,IAAMsC,WAAW,GAAGnJ,SAAS,KAAKC,SAAS,GAAGiI,IAAI,CAACkB,KAAK,CAACV,UAAU,EAAEI,SAAS,CAAC,GAAG,EAAE;MACpF,IAAMO,oBAAoB,GAAGF,WAAW,CAAC3K,GAAG,CAAC,UAACL,KAAK,EAAEmL,KAAK;QAAA,OAAM;UAC9DnL,KAAK,EAALA,KAAK;UACL2D,SAAS,EAAE4G,UAAU,GAAGY,KAAK;UAC7BzC,SAAS,EAAE7G,SAAS,IAAK0I,UAAU,GAAGY,KAAK;QAC7C,CAAC;MAAA,CAAC,CAAC;MACH,IAAIL,2BAA2B,IAAIP,UAAU,KAAK,CAAC,EAAE;QACnDW,oBAAoB,CAACE,OAAO,CAACL,QAAQ,CAAC;MACxC;MAEA,OAAOG,oBAAoB,CAAC7K,GAAG,CAAC,UAAAgL,KAAA;QAAA,IAAGrL,KAAK,GAAAqL,KAAA,CAALrL,KAAK;UAAE2D,SAAS,GAAA0H,KAAA,CAAT1H,SAAS;UAAE+E,SAAS,GAAA2C,KAAA,CAAT3C,SAAS;QAAA,OAC5DyB,MAAI,CAAC5B,SAAS,CAACvI,KAAK,EAAE;UAAE2D,SAAS,EAATA,SAAS;UAAE+E,SAAS,EAATA,SAAS;UAAEE,MAAM,EAAE;QAAM,CAAC,CAAC;MAAA,EAC/D;IACH;EAAC;IAAArF,GAAA;IAAAC,KAAA,EA0CD,SAAA8H,qBAAA,EAAuB;MAAA,IAAAC,qBAAA;MACrB,CAAAA,qBAAA,OAAI,CAACrI,sBAAsB,cAAAqI,qBAAA,uBAA3BA,qBAAA,CAA6BC,UAAU,EAAE;IAC3C;EAAC;IAAAjI,GAAA;IAAAC,KAAA,EAED,SAAAiI,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAAvJ,OAAA;QAAAwJ,KAAA;MACP,IAAMC,KAAK,GA6BM1M,GAAG;MA5BpB,IAAM2M,YAAY,GAAG3M,GAAG;MACxB,IAAM4M,WAAW,GAAG5M,GAAG;MACvB,IAAA6M,cAAA,GAWI,IAAI,CAAC5J,OAAO;QAVd6J,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QACRjI,MAAM,GAAAgI,cAAA,CAANhI,MAAM;QACNgG,IAAI,GAAAgC,cAAA,CAAJhC,IAAI;QACJ/F,OAAO,GAAA+H,cAAA,CAAP/H,OAAO;QACPiI,UAAU,GAAAF,cAAA,CAAVE,UAAU;QACV/J,aAAa,GAAA6J,cAAA,CAAb7J,aAAa;QACbgK,QAAQ,GAAAH,cAAA,CAARG,QAAQ;QACRC,QAAQ,GAAAJ,cAAA,CAARI,QAAQ;QACRC,cAAc,GAAAL,cAAA,CAAdK,cAAc;QACd3H,UAAU,GAAAsH,cAAA,CAAVtH,UAAU;MAGZ,IAAM4H,kBAAkB,GAAGrI,OAAO,CAACsI,MAAM,CAAC,UAACC,GAAG,EAAAC,MAAA;QAAA,IAAIhG,KAAK,GAAAgG,MAAA,CAALhG,KAAK;QAAA,OAAO+F,GAAG,GAAG/F,KAAK;MAAA,GAAE,CAAC,CAAC,GAAG,CAAC,IAAI7G,OAAO;MAE5F,IAAA8M,qBAAA,GAAwCnN,oBAAoB,CAAC0E,OAAO,CAAC;QAAA0I,sBAAA,GAAA/G,cAAA,CAAA8G,qBAAA;QAA9DE,aAAa,GAAAD,sBAAA;QAAEE,cAAc,GAAAF,sBAAA;MAEpC,IAAM7K,SAAS,GAAG,IAAI,CAACwI,YAAY,EAAE;MACrC,IAAMwC,UAAU,GACdhL,SAAS,KAAKC,SAAS,IAAII,aAAa,GAAGL,SAAS,GAAGkI,IAAI,CAAC3I,MAAM,GAAGU,SAAS;MAEhF,IAAII,aAAa,IAAImK,kBAAkB,IAAI,CAACxK,SAAS,EAAE;QACrDiL,qBAAqB,CAAC,IAAI,CAACC,oBAAoB,CAAC;MAClD;MAEA,IAAMC,IAAI,IAAArB,KAAA,GAAG3M,OAAO,CAAC+E,MAAM,CAAC,eAC1BjF,KAAA,CAAAyF,aAAA,CAACqH,KAAK,EAAAD,KAAA,CAAAnH,EAAA,UAAA4D,aAAA,KAAA6E,YAAA,KAAAvB,IAAA,KACHjH,UAAU,GACTA,UAAU,CAAC;QAAEsF,IAAI,EAAJA,IAAI;QAAE/F,OAAO,EAAPA,OAAO;QAAEuE,SAAS,EAAE,IAAI,CAACA,SAAS,CAAC2E,IAAI,CAAC,IAAI;MAAE,CAAC,CAAC,IAAI,IAAI,gBAE3EpO,KAAA,CAAAyF,aAAA,CAAAzF,KAAA,CAAAoH,QAAA,QACG2G,UAAU,gBAAG/N,KAAA,CAAAyF,aAAA,CAACuH,WAAW,EAAAH,KAAA,CAAAnH,EAAA;QAAA,QAAOqI,UAAU;QAAA,eAAe;MAAI,GAAI,GAAG,IAAI,EACxE3K,aAAa,GAAG,IAAI,CAAC+H,qBAAqB,CAACF,IAAI,CAAC,GAAG,IAAI,CAACtF,UAAU,CAACsF,IAAI,CAAC,CAE5E,CACK,CACT;MAED,IAAIqC,cAAc,EAAE;QAClB,oBAAOtN,KAAA,CAAAyF,aAAA,CAACsH,YAAY,QAAEmB,IAAI,CAAgB;MAC5C;MAEA,oBACElO,KAAA,CAAAyF,aAAA,CAACsH,YAAY,EAAAF,KAAA,CAAAnH,EAAA,mCACX1F,KAAA,CAAAyF,aAAA,CAACnF,UAAU,EAAAuM,KAAA,CAAAnH,EAAA;QAAA;QAAA,cAEGmI,aAAa;QAAA,eACZC,cAAc;QAAA,YACjBpN,oBAAoB,CAAC0M,QAAQ,EAAE,IAAI,CAACiB,sBAAsB,CAAC;QAAA,YAC3D3N,oBAAoB,CAAC2M,QAAQ,EAAE,IAAI,CAACiB,sBAAsB;MAAC,iBAErEtO,KAAA,CAAAyF,aAAA,CAACnF,UAAU,CAACiO,SAAS;QAAC9D,GAAG,EAAE0C,UAAW;QAACqB,IAAI,EAAC,UAAU;QAACC,kBAAkB,EAAE;MAAM,GAC9EP,IAAI,CACgB,eACvBlO,KAAA,CAAAyF,aAAA,QAAAoH,KAAA,CAAAnH,EAAA;QAAA,SAAY/D,eAAe;QAAA,QAAO;MAAU,iBAC1C3B,KAAA,CAAAyF,aAAA,QAAAoH,KAAA,CAAAnH,EAAA;QAAA,SAAY/D,eAAe;QAAA,QAAO;MAAK,iBACrC3B,KAAA,CAAAyF,aAAA,QAAAoH,KAAA,CAAAnH,EAAA;QAAA,SAAY/D,eAAe;QAAA,QAAO;MAAM,iBACtC3B,KAAA,CAAAyF,aAAA,CAACnF,UAAU,CAACoO,GAAG;QAACC,WAAW,EAAC,YAAY;QAACC,QAAQ,EAAE,QAAS;QAACC,MAAM,EAAE;MAAE,EAAG,eAC1E7O,KAAA,CAAAyF,aAAA,CAACnF,UAAU,CAACoO,GAAG;QAACC,WAAW,EAAC,UAAU;QAACG,CAAC,EAAE,MAAO;QAACC,MAAM,EAAE;MAAE,EAAG,CAC3D,CACF,CACF,CACK,EACZ7B,QAAQ,CAAC8B,MAAM,CACH;IAEnB;EAAC;EAAA,OAAAnN,IAAA;AAAA,EA5RgB5B,SAAS;AA+R5B,eAAe4B,IAAI"}
1
+ {"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","trottle","canUseDOM","SORT_ICON_WIDTH","cssToIntDefault","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","displayContents","display","Body","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","rowHeight","undefined","scrollAreaHeight","scrollOffset","createRef","virtualScroll","asProps","rowHeightFromProps","_typeof","state","entries","contentRect","height","setState","oldState","event","_ref6","target","scrollTop","firstRowRef","current","firstRowResizeObserver","ResizeObserver","handleFirstRowResize","observe","_createClass","key","value","renderCells","rowData","dataIndex","_this2","SCell","_this$asProps","styles","columns","use","uid","cellIndex","isArray","_ref2","SGroupCell","createElement","cn","renderRows","_ref3","_column$parentColumns","_column$props","_column$props2","_column$props3","_column$props4","nameParts","split","firstName","lastName","firstColumn","find","c","lastColumn","column","_getFixedStyle","_getFixedStyle2","_slicedToArray","parentColumnNames","parentColumns","vars","cssVar","columnWMin","props","wMin","columnWMax","wMax","children","Fragment","justifyContent","alignItems","borderLeft","borderRight","style","width","join","minWidth","maxWidth","sortable","toString","_iterator","_createForOfIteratorHelper","cellPropsLayers","_step","s","n","done","cellPropLayer","_cellPropLayer$childr","childrenPropsGetter","p","other","_objectWithoutProperties","_excluded","propsCell","err","e","f","headerIds","_toConsumableArray","filter","Boolean","_objectSpread","fixed","theme","renderRow","_ref7","_ref4","topOffset","_ref7$nested","nested","SRow","_this$asProps2","rowPropsLayers","uniqueKey","flatRowData","String","needToMeasureHeight","active","positioned","top","ref","_iterator2","_step2","rowPropsLayer","_rowPropsLayer$childr","_excluded2","propsRow","rows","_this3","renderVirtualizedRows","_ref8","_this4","_this$state","getRowHeight","tollerance","startIndex","Math","max","floor","lastIndex","min","ceil","needToMeasureFirstRowHeight","firstRow","visibleRows","slice","processedVisibleRows","index","unshift","_ref9","componentWillUnmount","_this$firstRowResizeO","disconnect","render","_ref","_ref5","SBody","SBodyWrapper","SHeightHold","_this$asProps3","Children","$scrollRef","onResize","onScroll","disabledScroll","animationsDisabled","columnsInitialized","reduce","sum","_ref10","_getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","holdHeight","requestAnimationFrame","setupRowSizeObserver","body","_assignProps","bind","handleScrollAreaResize","handleScrollAreaScroll","Container","role","focusRingTopOffset","Bar","orientation","position","bottom","w","zIndex","origin"],"sources":["../../src/Body.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport { getFixedStyle, getScrollOffsetValue } from './utils';\nimport { RowData, Column, NestedCells, PropsLayer, Cell } from './types';\nimport assignProps, { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport trottle from '@semcore/utils/lib/rafTrottle';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { SORT_ICON_WIDTH } from './Head';\nimport cssToIntDefault from '@semcore/utils/lib/cssToIntDefault';\n\nconst testEnv = process.env.NODE_ENV === 'test';\n\nconst getCellsByColumn = (cells: NestedCells): RowData => {\n const flattenCells = cells.flat(20) as Cell[];\n return Object.fromEntries(flattenCells.map((cell) => [cell.name, cell.data]));\n};\nconst displayContents = { display: 'contents' };\n\ntype AsProps = {\n rows: NestedCells[][];\n columns: Column[];\n $scrollRef: ReturnType<ReturnType<typeof syncScroll>>;\n onResize: ResizeObserverCallback;\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n rowPropsLayers: PropsLayer[];\n use: 'primary' | 'secondary';\n uniqueKey: string;\n virtualScroll?: boolean | { tollerance?: number; rowHeight?: number };\n renderRows?: (props: {\n rows: NestedCells[][];\n columns: Column[];\n renderRow: (row: Cell[], details: { dataIndex: number; nested: boolean }) => React.ReactNode;\n }) => React.ReactNode;\n disabledScroll?: boolean;\n uid?: string;\n animationsDisabled?: boolean;\n};\n\ntype State = {\n rowHeight: number | undefined;\n scrollAreaHeight: undefined | number;\n scrollOffset: number;\n};\n\nclass Body extends Component<AsProps, State> {\n state: State = {\n rowHeight: undefined,\n scrollAreaHeight: undefined,\n scrollOffset: 0,\n };\n\n firstRowRef = React.createRef<HTMLDivElement>();\n firstRowResizeObserver: ResizeObserver | null = null;\n\n getRowHeight = () => {\n const { virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n return rowHeightFromProps || this.state.rowHeight;\n };\n\n renderCells(cells: NestedCells, rowData: RowData, dataIndex: number) {\n const SCell = Flex;\n const { styles, columns, use, uid } = this.asProps;\n return cells.map((cell, cellIndex) => {\n if (Array.isArray(cell)) {\n const SGroupCell = 'div';\n return sstyled(styles)(\n <SGroupCell key={`${cellIndex}`} data-ui-name='group-cell'>\n {this.renderRows(cell as NestedCells[], true)}\n </SGroupCell>,\n );\n } else {\n const nameParts = cell.name.split('/');\n const firstName = nameParts[0];\n const lastName = nameParts[nameParts.length - 1];\n const firstColumn = columns.find((c) => c.name === firstName);\n const lastColumn = columns.find((c) => c.name === lastName);\n const column = columns.find((c) => c.name === cell.name);\n const [name, value] = getFixedStyle(cell, columns);\n const parentColumnNames = column?.parentColumns.map((column) => column.name) ?? [];\n const vars = (Array.isArray(cell.cssVar) ? cell.cssVar : [cell.cssVar]).map(\n (name) => `var(${name})`,\n );\n type CellProps = any & {\n name: string;\n children: React.ReactNode;\n style: React.CSSProperties;\n };\n\n const columnWMin = column?.props?.wMin;\n const columnWMax = column?.props?.wMax;\n\n let props: CellProps = {\n name: cell.name,\n children: <>{cell.data}</>,\n justifyContent: column?.props?.justifyContent,\n alignItems: column?.props?.alignItems,\n borderLeft: firstColumn?.borderLeft,\n borderRight: lastColumn?.borderRight,\n style: {\n width: vars.length === 1 ? vars[0] : `calc(${vars.join(' + ')})`,\n minWidth: columnWMin,\n maxWidth:\n columnWMax && column?.sortable\n ? `calc(${SORT_ICON_WIDTH}px + ${cssToIntDefault(columnWMax.toString())}px)`\n : columnWMax,\n },\n };\n if (name !== undefined && value !== undefined) {\n props.style[name] = value;\n }\n\n for (const cellPropLayer of cell.cellPropsLayers || []) {\n const { childrenPropsGetter = (p) => p, ...other } = cellPropLayer;\n const propsCell = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsCell, rowData, dataIndex), propsCell);\n }\n\n const headerIds = [cell.name, ...parentColumnNames]\n .filter(Boolean)\n .map((name) => `igc-table-${uid}-${name}`);\n\n return sstyled(styles)(\n <SCell\n key={cell.name}\n role='cell'\n headers={headerIds.join(' ')}\n __excludeProps={['data']}\n {...props}\n fixed={cell.fixed}\n theme={props.theme}\n use={use}\n borderLeft={props.borderLeft}\n borderRight={props.borderRight}\n />,\n ) as React.ReactElement;\n }\n }, [] as React.ReactElement[]);\n }\n\n renderRow(\n cells: NestedCells,\n {\n dataIndex,\n topOffset,\n nested = false,\n }: { dataIndex: number; topOffset?: number; nested: boolean },\n ) {\n const SRow = Box;\n const { styles, rowPropsLayers, uniqueKey, virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n\n const rowData = cells.flatRowData || getCellsByColumn(cells);\n const key = rowData[uniqueKey] ? String(rowData[uniqueKey]) : `row_${dataIndex}`;\n const needToMeasureHeight = dataIndex === 0 && !rowHeightFromProps;\n\n let props = {\n children: this.renderCells(cells, rowData, dataIndex),\n theme: undefined,\n active: undefined,\n positioned: topOffset !== undefined,\n top: topOffset,\n ref: needToMeasureHeight ? this.firstRowRef : undefined,\n key,\n 'aria-rowindex': !nested ? dataIndex + 2 : undefined,\n };\n\n for (const rowPropsLayer of rowPropsLayers) {\n const { childrenPropsGetter = (p) => p, ...other } = rowPropsLayer;\n const propsRow = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsRow, rowData, dataIndex), propsRow);\n }\n\n return sstyled(styles)(\n <SRow\n data-nested={nested.toString()}\n role={!nested ? 'row' : undefined}\n __excludeProps={['data']}\n {...props}\n />,\n );\n }\n\n renderRows(rows: NestedCells[], nested = false) {\n return rows.map((cells, dataIndex) => this.renderRow(cells, { dataIndex, nested }));\n }\n\n renderVirtualizedRows(rows: NestedCells[]) {\n if (rows.length === 0) return [];\n\n const { virtualScroll } = this.asProps;\n const { scrollOffset, scrollAreaHeight } = this.state;\n const rowHeight = this.getRowHeight();\n\n const tollerance = (typeof virtualScroll === 'object' ? virtualScroll?.tollerance : 2) ?? 2;\n const startIndex = Math.max(Math.floor(scrollOffset / rowHeight!) - tollerance, 0);\n const lastIndex = Math.min(\n Math.ceil((scrollOffset + scrollAreaHeight!) / rowHeight!) + tollerance,\n rows.length,\n );\n\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n const needToMeasureFirstRowHeight = !rowHeightFromProps;\n\n const firstRow = { cells: rows[0], dataIndex: 0, topOffset: 0 };\n const visibleRows = rowHeight !== undefined ? rows.slice(startIndex, lastIndex) : [];\n const processedVisibleRows = visibleRows.map((cells, index) => ({\n cells,\n dataIndex: startIndex + index,\n topOffset: rowHeight! * (startIndex + index),\n }));\n if (needToMeasureFirstRowHeight && startIndex !== 0) {\n processedVisibleRows.unshift(firstRow);\n }\n\n return processedVisibleRows.map(({ cells, dataIndex, topOffset }) =>\n this.renderRow(cells, { dataIndex, topOffset, nested: false }),\n );\n }\n\n handleFirstRowResize = trottle((entries: ResizeObserverEntry[]) => {\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.rowHeight === height) return oldState;\n return { rowHeight: height };\n });\n });\n\n handleScrollAreaResize = trottle((entries: ResizeObserverEntry[]) => {\n const { virtualScroll } = this.asProps;\n if (!virtualScroll) return;\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.scrollAreaHeight === height) return oldState;\n return { scrollAreaHeight: height };\n });\n });\n\n handleScrollAreaScroll = (event: React.SyntheticEvent<HTMLElement>) => {\n const { scrollTop } = event.target as HTMLElement;\n const { virtualScroll } = this.asProps;\n if (virtualScroll) {\n this.setState((oldState: State) => {\n if (oldState.scrollOffset === scrollTop) return oldState;\n return { scrollOffset: scrollTop };\n });\n }\n };\n\n setupRowSizeObserver = () => {\n if (!this.firstRowRef.current) return;\n if (!this.asProps.virtualScroll) return;\n if (canUseDOM()) {\n this.firstRowResizeObserver = new ResizeObserver(this.handleFirstRowResize);\n this.firstRowResizeObserver.observe(this.firstRowRef.current);\n }\n };\n\n componentWillUnmount() {\n this.firstRowResizeObserver?.disconnect();\n }\n\n render() {\n const SBody = Root;\n const SBodyWrapper = Box;\n const SHeightHold = Box;\n const {\n Children,\n styles,\n rows,\n columns,\n $scrollRef,\n virtualScroll,\n onResize,\n onScroll,\n disabledScroll,\n renderRows,\n animationsDisabled,\n } = this.asProps;\n\n const columnsInitialized = columns.reduce((sum, { width }) => sum + width, 0) > 0 || testEnv;\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(columns);\n\n const rowHeight = this.getRowHeight();\n const holdHeight =\n rowHeight !== undefined && virtualScroll ? rowHeight * rows.length : undefined;\n\n if (virtualScroll && columnsInitialized && !rowHeight) {\n requestAnimationFrame(this.setupRowSizeObserver);\n }\n\n const body = sstyled(styles)(\n <SBody render={Box} animationsDisabled={animationsDisabled}>\n {renderRows ? (\n renderRows({ rows, columns, renderRow: this.renderRow.bind(this) }) || null\n ) : (\n <>\n {holdHeight ? <SHeightHold hMin={holdHeight} aria-hidden={true} /> : null}\n {virtualScroll ? this.renderVirtualizedRows(rows) : this.renderRows(rows)}\n </>\n )}\n </SBody>,\n );\n\n if (disabledScroll) {\n return <SBodyWrapper>{body}</SBodyWrapper>;\n }\n\n return (\n <SBodyWrapper>\n <ScrollArea\n shadow\n leftOffset={offsetLeftSum}\n rightOffset={offsetRightSum}\n onResize={callAllEventHandlers(onResize, this.handleScrollAreaResize)}\n onScroll={callAllEventHandlers(onScroll, this.handleScrollAreaScroll)}\n >\n <ScrollArea.Container ref={$scrollRef} role='rowgroup' focusRingTopOffset={'3px'}>\n {body}\n </ScrollArea.Container>\n <div style={displayContents} role='rowgroup'>\n <div style={displayContents} role='row'>\n <div style={displayContents} role='cell'>\n <ScrollArea.Bar orientation='horizontal' position={'sticky'} bottom={0} />\n <ScrollArea.Bar orientation='vertical' w={'12px'} zIndex={2} />\n </div>\n </div>\n </div>\n </ScrollArea>\n {Children.origin}\n </SBodyWrapper>\n );\n }\n}\n\nexport default Body;\n"],"mappings":"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"}
@@ -22,41 +22,43 @@ import Head from './Head';
22
22
  import Body from './Body';
23
23
  import uniqueIDEnhancement from 'intergalactic/utils/lib/uniqueID';
24
24
  /*__reshadow-styles__:"./style/data-table.shadow.css"*/
25
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDataTable_wr25x_gg_,.___SHeadWrapper_wr25x_gg_{position:relative}.___SDataTable_wr25x_gg_.__compact_wr25x_gg_ .___SCell_wr25x_gg_,.___SDataTable_wr25x_gg_.__compact_wr25x_gg_ .___SColumn_wr25x_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_wr25x_gg_.__sticky_wr25x_gg_{position:sticky;top:0;z-index:2}.___SHead_wr25x_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_wr25x_gg_{display:flex;align-items:flex-start;flex-grow:1;font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;position:relative}.___SColumn_wr25x_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_wr25x_gg_.__hidden_wr25x_gg_{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border-width:0!important}.___SColumn_wr25x_gg_._use_primary_wr25x_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_wr25x_gg_._use_secondary_wr25x_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_wr25x_gg_.__group_wr25x_gg_.__use_wr25x_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_wr25x_gg_.__groupHead_wr25x_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_wr25x_gg_.__sortable_wr25x_gg_{cursor:pointer}.___SColumn_wr25x_gg_.__sortable_wr25x_gg_._use_primary_wr25x_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_wr25x_gg_.__sortable_wr25x_gg_._use_primary_wr25x_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_wr25x_gg_.__sortable_wr25x_gg_._justifyContent_right_wr25x_gg_ .___SSortWrapper_wr25x_gg_{position:absolute;right:calc(var(--intergalactic-spacing-1x, 4px) + 16px)}.___SColumn_wr25x_gg_.__sortable_wr25x_gg_._justifyContent_right_wr25x_gg_.__active_wr25x_gg_ .___SSortWrapper_wr25x_gg_,.___SColumn_wr25x_gg_.__sortable_wr25x_gg_._justifyContent_right_wr25x_gg_:focus .___SSortWrapper_wr25x_gg_{right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_wr25x_gg_.__sortable_wr25x_gg_._justifyContent_right_wr25x_gg_:hover .___SSortWrapper_wr25x_gg_{right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_wr25x_gg_.__sortable_wr25x_gg_.__active_wr25x_gg_ .___SSortWrapper_wr25x_gg_,.___SColumn_wr25x_gg_.__sortable_wr25x_gg_:focus .___SSortWrapper_wr25x_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_wr25x_gg_.__sortable_wr25x_gg_:hover .___SSortWrapper_wr25x_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_wr25x_gg_.__sortable_wr25x_gg_.__active_wr25x_gg_ .___SSortWrapper_wr25x_gg_:before,.___SColumn_wr25x_gg_.__sortable_wr25x_gg_:focus .___SSortIcon_wr25x_gg_,.___SColumn_wr25x_gg_.__sortable_wr25x_gg_:focus .___SSortWrapper_wr25x_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_wr25x_gg_.__sortable_wr25x_gg_:hover .___SSortWrapper_wr25x_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_wr25x_gg_.__sortable_wr25x_gg_:hover .___SSortIcon_wr25x_gg_{display:block;opacity:1}}.___SColumn_wr25x_gg_._use_primary_wr25x_gg_.__active_wr25x_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_wr25x_gg_.__active_wr25x_gg_ .___SSortIcon_wr25x_gg_{display:block;opacity:1}.___SColumn_wr25x_gg_.__resizable_wr25x_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_wr25x_gg_.__resizable_wr25x_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_wr25x_gg_.__resizable_wr25x_gg_:after{content:\"\";position:absolute;bottom:0;right:-1px;height:100%;width:5px;background:0 0;cursor:col-resize;border-right:1px solid transparent}.___SColumn_wr25x_gg_.__fixed_wr25x_gg_{position:sticky;z-index:2}.___SCell_wr25x_gg_.__borderLeft_wr25x_gg_,.___SColumn_wr25x_gg_.__borderLeft_wr25x_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_wr25x_gg_.__borderRight_wr25x_gg_,.___SColumn_wr25x_gg_.__borderRight_wr25x_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_wr25x_gg_{flex-shrink:99999;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-medium, 300)*1ms) ease}.___SSortIcon_wr25x_gg_,.___SSortWrapper_wr25x_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_wr25x_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_wr25x_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_wr25x_gg_._use_primary_wr25x_gg_ .___SSortWrapper_wr25x_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_wr25x_gg_._use_secondary_wr25x_gg_ .___SSortWrapper_wr25x_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_wr25x_gg_{position:relative}.___SBody_wr25x_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_wr25x_gg_{display:flex;flex-direction:row;position:relative}.___SRow_wr25x_gg_.__active_wr25x_gg_>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_._theme_muted_wr25x_gg_.__active_wr25x_gg_>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_wr25x_gg_ .___SCell_wr25x_gg_:hover+.___SGroupCell_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_:hover>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_wr25x_gg_._theme_muted_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_wr25x_gg_._theme_muted_wr25x_gg_ .___SCell_wr25x_gg_:hover+.___SGroupCell_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_._theme_muted_wr25x_gg_:hover>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_:hover>.___SCell_wr25x_gg_._theme_muted_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_wr25x_gg_._theme_info_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_wr25x_gg_._theme_info_wr25x_gg_.__active_wr25x_gg_>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_wr25x_gg_._theme_info_wr25x_gg_ .___SCell_wr25x_gg_:hover+.___SGroupCell_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_._theme_info_wr25x_gg_:hover>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_:hover>.___SCell_wr25x_gg_._theme_info_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_wr25x_gg_._theme_success_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_wr25x_gg_._theme_success_wr25x_gg_.__active_wr25x_gg_>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_wr25x_gg_._theme_success_wr25x_gg_ .___SCell_wr25x_gg_:hover+.___SGroupCell_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_._theme_success_wr25x_gg_:hover>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_:hover>.___SCell_wr25x_gg_._theme_success_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_wr25x_gg_._theme_warning_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_wr25x_gg_._theme_warning_wr25x_gg_.__active_wr25x_gg_>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_wr25x_gg_._theme_warning_wr25x_gg_ .___SCell_wr25x_gg_:hover+.___SGroupCell_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_._theme_warning_wr25x_gg_:hover>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_:hover>.___SCell_wr25x_gg_._theme_warning_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_wr25x_gg_._theme_danger_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_wr25x_gg_._theme_danger_wr25x_gg_.__active_wr25x_gg_>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_wr25x_gg_._theme_danger_wr25x_gg_ .___SCell_wr25x_gg_:hover+.___SGroupCell_wr25x_gg_ .___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_._theme_danger_wr25x_gg_:hover>.___SCell_wr25x_gg_:not(.__theme_wr25x_gg_),.___SRow_wr25x_gg_:hover>.___SCell_wr25x_gg_._theme_danger_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_wr25x_gg_.__positioned_wr25x_gg_{position:absolute}.___SCell_wr25x_gg_{display:flex;flex:1;flex-basis:auto;font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);overflow:hidden;white-space:nowrap;font-feature-settings:\"tnum\";font-variant-numeric:tabular-nums}.___SCell_wr25x_gg_._use_primary_wr25x_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_wr25x_gg_._use_secondary_wr25x_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_wr25x_gg_.__fixed_wr25x_gg_{position:sticky;z-index:1}.___SCell_wr25x_gg_._theme_muted_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_wr25x_gg_._theme_info_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_wr25x_gg_._theme_success_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_wr25x_gg_._theme_warning_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_wr25x_gg_._theme_danger_wr25x_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SHeightHold_wr25x_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "wr25x_gg_") /*__reshadow_css_end__*/, {
26
- "__SDataTable": "___SDataTable_wr25x_gg_",
27
- "__SHeadWrapper": "___SHeadWrapper_wr25x_gg_",
28
- "_sticky": "__sticky_wr25x_gg_",
29
- "__SHead": "___SHead_wr25x_gg_",
30
- "__SColumn": "___SColumn_wr25x_gg_",
31
- "_hidden": "__hidden_wr25x_gg_",
32
- "_use_primary": "_use_primary_wr25x_gg_",
33
- "_use_secondary": "_use_secondary_wr25x_gg_",
34
- "_group": "__group_wr25x_gg_",
35
- "_use": "__use_wr25x_gg_",
36
- "_groupHead": "__groupHead_wr25x_gg_",
37
- "_active": "__active_wr25x_gg_",
38
- "__SSortIcon": "___SSortIcon_wr25x_gg_",
39
- "_fixed": "__fixed_wr25x_gg_",
40
- "_borderLeft": "__borderLeft_wr25x_gg_",
41
- "__SCell": "___SCell_wr25x_gg_",
42
- "_borderRight": "__borderRight_wr25x_gg_",
43
- "__SSortWrapper": "___SSortWrapper_wr25x_gg_",
44
- "__SBodyWrapper": "___SBodyWrapper_wr25x_gg_",
45
- "__SBody": "___SBody_wr25x_gg_",
46
- "__SRow": "___SRow_wr25x_gg_",
47
- "_theme": "__theme_wr25x_gg_",
48
- "__SGroupCell": "___SGroupCell_wr25x_gg_",
49
- "_theme_muted": "_theme_muted_wr25x_gg_",
50
- "_theme_info": "_theme_info_wr25x_gg_",
51
- "_theme_success": "_theme_success_wr25x_gg_",
52
- "_theme_warning": "_theme_warning_wr25x_gg_",
53
- "_theme_danger": "_theme_danger_wr25x_gg_",
54
- "_positioned": "__positioned_wr25x_gg_",
55
- "__SHeightHold": "___SHeightHold_wr25x_gg_",
56
- "_compact": "__compact_wr25x_gg_",
57
- "_sortable": "__sortable_wr25x_gg_",
58
- "_justifyContent_right": "_justifyContent_right_wr25x_gg_",
59
- "_resizable": "__resizable_wr25x_gg_"
25
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SColumn_1cobc_gg_.__sortable_1cobc_gg_._justifyContent_right_1cobc_gg_.__active_1cobc_gg_ .___SSortWrapper_1cobc_gg_,.___SDataTable_1cobc_gg_,.___SHeadWrapper_1cobc_gg_{position:relative}.___SDataTable_1cobc_gg_.__compact_1cobc_gg_ .___SCell_1cobc_gg_,.___SDataTable_1cobc_gg_.__compact_1cobc_gg_ .___SColumn_1cobc_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_1cobc_gg_.__animationsDisabled_1cobc_gg_ .___SColumn_1cobc_gg_{transition:none}.___SHeadWrapper_1cobc_gg_.__sticky_1cobc_gg_{position:sticky;top:0;z-index:2}.___SHead_1cobc_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_1cobc_gg_{display:flex;align-items:flex-start;flex-grow:1;font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;position:relative;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,min-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out,max-width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SColumn_1cobc_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_1cobc_gg_.__hidden_1cobc_gg_{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border-width:0!important}.___SColumn_1cobc_gg_._use_primary_1cobc_gg_{padding:var(--intergalactic-spacing-3x, 12px);border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);background-color:var(--intergalactic-table-th-primary-cell, #f4f5f9)}.___SColumn_1cobc_gg_._use_secondary_1cobc_gg_{padding:var(--intergalactic-spacing-2x, 8px);border-bottom:1px solid var(--intergalactic-border-table-accent, #a9abb6);background-color:var(--intergalactic-table-th-secondary-cell, #ffffff)}.___SColumn_1cobc_gg_.__group_1cobc_gg_.__use_1cobc_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_1cobc_gg_.__groupHead_1cobc_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_1cobc_gg_.__sortable_1cobc_gg_{cursor:pointer}.___SColumn_1cobc_gg_.__sortable_1cobc_gg_._use_primary_1cobc_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_1cobc_gg_.__sortable_1cobc_gg_._use_primary_1cobc_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_1cobc_gg_.__sortable_1cobc_gg_._justifyContent_right_1cobc_gg_._active_false_1cobc_gg_:focus .___SSortWrapper_1cobc_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_1cobc_gg_.__sortable_1cobc_gg_._justifyContent_right_1cobc_gg_._active_false_1cobc_gg_:hover .___SSortWrapper_1cobc_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_1cobc_gg_.__sortable_1cobc_gg_.__active_1cobc_gg_ .___SSortWrapper_1cobc_gg_,.___SColumn_1cobc_gg_.__sortable_1cobc_gg_:focus .___SSortWrapper_1cobc_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_1cobc_gg_.__sortable_1cobc_gg_:hover .___SSortWrapper_1cobc_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_1cobc_gg_.__sortable_1cobc_gg_.__active_1cobc_gg_ .___SSortWrapper_1cobc_gg_:before,.___SColumn_1cobc_gg_.__sortable_1cobc_gg_:focus .___SSortIcon_1cobc_gg_,.___SColumn_1cobc_gg_.__sortable_1cobc_gg_:focus .___SSortWrapper_1cobc_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_1cobc_gg_.__sortable_1cobc_gg_:hover .___SSortWrapper_1cobc_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_1cobc_gg_.__sortable_1cobc_gg_:hover .___SSortIcon_1cobc_gg_{display:block;opacity:1}}.___SColumn_1cobc_gg_._use_primary_1cobc_gg_.__active_1cobc_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_1cobc_gg_.__active_1cobc_gg_ .___SSortIcon_1cobc_gg_{display:block;opacity:1}.___SColumn_1cobc_gg_.__resizable_1cobc_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_1cobc_gg_.__resizable_1cobc_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_1cobc_gg_.__resizable_1cobc_gg_:after{content:\"\";position:absolute;bottom:0;right:-1px;height:100%;width:5px;background:0 0;cursor:col-resize;border-right:1px solid transparent}.___SColumn_1cobc_gg_.__fixed_1cobc_gg_{position:sticky;z-index:2}.___SCell_1cobc_gg_.__borderLeft_1cobc_gg_,.___SColumn_1cobc_gg_.__borderLeft_1cobc_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_1cobc_gg_.__borderRight_1cobc_gg_,.___SColumn_1cobc_gg_.__borderRight_1cobc_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_1cobc_gg_{flex-shrink:1;position:relative;flex-basis:0;min-height:16px;opacity:0;transition:all calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SSortIcon_1cobc_gg_,.___SSortWrapper_1cobc_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_1cobc_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_1cobc_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_1cobc_gg_._use_primary_1cobc_gg_ .___SSortWrapper_1cobc_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_1cobc_gg_._use_secondary_1cobc_gg_ .___SSortWrapper_1cobc_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_1cobc_gg_{position:relative}.___SBody_1cobc_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_1cobc_gg_{display:flex;flex-direction:row;position:relative}.___SRow_1cobc_gg_.__active_1cobc_gg_>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_._theme_muted_1cobc_gg_.__active_1cobc_gg_>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_1cobc_gg_ .___SCell_1cobc_gg_:hover+.___SGroupCell_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_:hover>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_1cobc_gg_._theme_muted_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_1cobc_gg_._theme_muted_1cobc_gg_ .___SCell_1cobc_gg_:hover+.___SGroupCell_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_._theme_muted_1cobc_gg_:hover>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_:hover>.___SCell_1cobc_gg_._theme_muted_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_1cobc_gg_._theme_info_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_1cobc_gg_._theme_info_1cobc_gg_.__active_1cobc_gg_>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_1cobc_gg_._theme_info_1cobc_gg_ .___SCell_1cobc_gg_:hover+.___SGroupCell_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_._theme_info_1cobc_gg_:hover>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_:hover>.___SCell_1cobc_gg_._theme_info_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_1cobc_gg_._theme_success_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_1cobc_gg_._theme_success_1cobc_gg_.__active_1cobc_gg_>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_1cobc_gg_._theme_success_1cobc_gg_ .___SCell_1cobc_gg_:hover+.___SGroupCell_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_._theme_success_1cobc_gg_:hover>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_:hover>.___SCell_1cobc_gg_._theme_success_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_1cobc_gg_._theme_warning_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_1cobc_gg_._theme_warning_1cobc_gg_.__active_1cobc_gg_>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_1cobc_gg_._theme_warning_1cobc_gg_ .___SCell_1cobc_gg_:hover+.___SGroupCell_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_._theme_warning_1cobc_gg_:hover>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_:hover>.___SCell_1cobc_gg_._theme_warning_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_1cobc_gg_._theme_danger_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_1cobc_gg_._theme_danger_1cobc_gg_.__active_1cobc_gg_>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_1cobc_gg_._theme_danger_1cobc_gg_ .___SCell_1cobc_gg_:hover+.___SGroupCell_1cobc_gg_ .___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_._theme_danger_1cobc_gg_:hover>.___SCell_1cobc_gg_:not(.__theme_1cobc_gg_),.___SRow_1cobc_gg_:hover>.___SCell_1cobc_gg_._theme_danger_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_1cobc_gg_.__positioned_1cobc_gg_{position:absolute}.___SBody_1cobc_gg_.__animationsDisabled_1cobc_gg_ .___SCell_1cobc_gg_{transition:none}.___SCell_1cobc_gg_{display:flex;flex:1;flex-basis:auto;font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);color:var(--intergalactic-text-primary, #191b23);box-sizing:border-box;border-bottom:1px solid var(--intergalactic-border-secondary, #e0e1e9);overflow:hidden;white-space:nowrap;font-feature-settings:\"tnum\";font-variant-numeric:tabular-nums;transition:width calc(var(--intergalactic-duration-extra-fast, 100)*1ms) ease-in-out}.___SCell_1cobc_gg_._use_primary_1cobc_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_1cobc_gg_._use_secondary_1cobc_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_1cobc_gg_.__fixed_1cobc_gg_{position:sticky;z-index:1}.___SCell_1cobc_gg_._theme_muted_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_1cobc_gg_._theme_info_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_1cobc_gg_._theme_success_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_1cobc_gg_._theme_warning_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_1cobc_gg_._theme_danger_1cobc_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SHeightHold_1cobc_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "1cobc_gg_") /*__reshadow_css_end__*/, {
26
+ "__SDataTable": "___SDataTable_1cobc_gg_",
27
+ "__SHeadWrapper": "___SHeadWrapper_1cobc_gg_",
28
+ "_sticky": "__sticky_1cobc_gg_",
29
+ "__SHead": "___SHead_1cobc_gg_",
30
+ "__SColumn": "___SColumn_1cobc_gg_",
31
+ "_hidden": "__hidden_1cobc_gg_",
32
+ "_use_primary": "_use_primary_1cobc_gg_",
33
+ "_use_secondary": "_use_secondary_1cobc_gg_",
34
+ "_group": "__group_1cobc_gg_",
35
+ "_use": "__use_1cobc_gg_",
36
+ "_groupHead": "__groupHead_1cobc_gg_",
37
+ "_active": "__active_1cobc_gg_",
38
+ "__SSortIcon": "___SSortIcon_1cobc_gg_",
39
+ "_fixed": "__fixed_1cobc_gg_",
40
+ "_borderLeft": "__borderLeft_1cobc_gg_",
41
+ "__SCell": "___SCell_1cobc_gg_",
42
+ "_borderRight": "__borderRight_1cobc_gg_",
43
+ "__SSortWrapper": "___SSortWrapper_1cobc_gg_",
44
+ "__SBodyWrapper": "___SBodyWrapper_1cobc_gg_",
45
+ "__SBody": "___SBody_1cobc_gg_",
46
+ "__SRow": "___SRow_1cobc_gg_",
47
+ "_theme": "__theme_1cobc_gg_",
48
+ "__SGroupCell": "___SGroupCell_1cobc_gg_",
49
+ "_theme_muted": "_theme_muted_1cobc_gg_",
50
+ "_theme_info": "_theme_info_1cobc_gg_",
51
+ "_theme_success": "_theme_success_1cobc_gg_",
52
+ "_theme_warning": "_theme_warning_1cobc_gg_",
53
+ "_theme_danger": "_theme_danger_1cobc_gg_",
54
+ "_positioned": "__positioned_1cobc_gg_",
55
+ "_animationsDisabled": "__animationsDisabled_1cobc_gg_",
56
+ "__SHeightHold": "___SHeightHold_1cobc_gg_",
57
+ "_compact": "__compact_1cobc_gg_",
58
+ "_sortable": "__sortable_1cobc_gg_",
59
+ "_justifyContent_right": "_justifyContent_right_1cobc_gg_",
60
+ "_active_false": "_active_false_1cobc_gg_",
61
+ "_resizable": "__resizable_1cobc_gg_"
60
62
  });
61
63
  var reversedSortDirection = {
62
64
  desc: 'asc',
@@ -121,26 +123,41 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
121
123
  _createClass(RootDefinitionTable, [{
122
124
  key: "setVarStyle",
123
125
  value: function setVarStyle(columns) {
124
- var _iterator = _createForOfIteratorHelper(columns),
125
- _step;
126
- try {
127
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
128
- var column = _step.value;
129
- if (column.setVar) {
130
- var _this$tableRef$curren2;
131
- (_this$tableRef$curren2 = this.tableRef.current) === null || _this$tableRef$curren2 === void 0 ? void 0 : _this$tableRef$curren2.style.setProperty(column.varWidth, "".concat(column.width, "px"));
126
+ var _this2 = this;
127
+ var animations = columns.flatMap(function (column) {
128
+ var _column$props$ref$cur, _column$props$ref$cur2;
129
+ return (_column$props$ref$cur = column.props.ref.current) === null || _column$props$ref$cur === void 0 ? void 0 : (_column$props$ref$cur2 = _column$props$ref$cur.getAnimations) === null || _column$props$ref$cur2 === void 0 ? void 0 : _column$props$ref$cur2.call(_column$props$ref$cur);
130
+ }).filter(function (a) {
131
+ return a !== undefined;
132
+ });
133
+ var animationPromise = Promise.resolve();
134
+ if (animations.length > 0) {
135
+ animationPromise = Promise.all(animations.map(function (animation) {
136
+ return animation.finished;
137
+ }));
138
+ }
139
+ animationPromise.then(function () {
140
+ var _iterator = _createForOfIteratorHelper(columns),
141
+ _step;
142
+ try {
143
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
144
+ var column = _step.value;
145
+ if (column.setVar) {
146
+ var _this2$tableRef$curre;
147
+ (_this2$tableRef$curre = _this2.tableRef.current) === null || _this2$tableRef$curre === void 0 ? void 0 : _this2$tableRef$curre.style.setProperty(column.varWidth, "".concat(column.width, "px"));
148
+ }
132
149
  }
150
+ } catch (err) {
151
+ _iterator.e(err);
152
+ } finally {
153
+ _iterator.f();
133
154
  }
134
- } catch (err) {
135
- _iterator.e(err);
136
- } finally {
137
- _iterator.f();
138
- }
155
+ });
139
156
  }
140
157
  }, {
141
158
  key: "childrenToColumns",
142
159
  value: function childrenToColumns(children) {
143
- var _this2 = this;
160
+ var _this3 = this;
144
161
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
145
162
  fixed: undefined
146
163
  };
@@ -165,7 +182,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
165
182
  var isGroup = !name;
166
183
  var columns;
167
184
  if (isGroup) {
168
- columns = _this2.childrenToColumns(children, {
185
+ columns = _this3.childrenToColumns(children, {
169
186
  fixed: fixed
170
187
  });
171
188
  active = typeof active === 'boolean' ? active : columns.some(function (c) {
@@ -183,7 +200,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
183
200
  return !( /*#__PURE__*/React.isValidElement(child) && child.type === DefinitionTable.Column);
184
201
  });
185
202
  }
186
- var column = _this2.columns.find(function (column) {
203
+ var column = _this3.columns.find(function (column) {
187
204
  return column.name === name;
188
205
  });
189
206
  var columnChildren = {
@@ -284,7 +301,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
284
301
  }, {
285
302
  key: "dataToRows",
286
303
  value: function dataToRows(data, cellPropsLayers) {
287
- var _this3 = this;
304
+ var _this4 = this;
288
305
  var parseData = function parseData(data, exclude) {
289
306
  return data.map(function (row) {
290
307
  var groupByName = {};
@@ -321,7 +338,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
321
338
  return [key, true];
322
339
  }));
323
340
  var isGroup = false;
324
- var cells = _this3.columns.map(function (column) {
341
+ var cells = _this4.columns.map(function (column) {
325
342
  if (groupByName[column.name]) {
326
343
  var _groupByName$column$n = groupByName[column.name],
327
344
  groupedColumns = _groupByName$column$n.groupedColumns,