@semcore/data-table 3.8.2 → 3.8.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","ResizeObserver","scrollStyles","_sstyled","insert","trottle","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","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","handleFirstRowResize","observe","_createClass","key","value","renderCells","rowData","index","_this2","SCell","_this$asProps","styles","columns","use","isArray","_ref2","SGroupCell","createElement","cn","renderRows","_ref3","_column$props","_column$props2","nameParts","split","firstName","lastName","firstColumn","find","c","lastColumn","column","_getFixedStyle","_getFixedStyle2","_slicedToArray","vars","cssVar","props","children","Fragment","justifyContent","alignItems","borderLeft","borderRight","style","width","join","_iterator","_createForOfIteratorHelper","cellPropsLayers","_step","s","n","done","cellPropLayer","_cellPropLayer$childr","childrenPropsGetter","p","other","_objectWithoutProperties","_excluded","propsCell","err","e","f","_objectSpread","fixed","theme","renderRow","_ref7","_ref4","dataIndex","topOffset","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","unshift","_ref9","componentWillUnmount","_this$firstRowResizeO","disconnect","render","_ref","_ref5","_this5","SBody","SBodyWrapper","SScrollAreaBar","Bar","SHeightHold","_this$asProps3","Children","$scrollRef","onResize","onScroll","disabledScroll","columnsInitialized","reduce","sum","_ref10","_getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","offsetSum","holdHeight","Promise","setupRowSizeObserver","handleScrollAreaResize","handleScrollAreaScroll","Container","_assignProps","origin"],"sources":["../../src/Body.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex, IBoxProps } 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 ResizeObserver from 'resize-observer-polyfill';\nimport scrollStyles from './style/scroll-area.shadow.css';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport trottle from '@semcore/utils/lib/rafTrottle';\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};\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 disabledScroll?: 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<HTMLElement>();\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, index: number) {\n const SCell = Flex;\n const { styles, columns, use } = this.asProps;\n return cells.map((cell) => {\n if (Array.isArray(cell)) {\n const SGroupCell = 'div';\n return sstyled(styles)(\n <SGroupCell role=\"rowgroup\" data-ui-name=\"group-cell\">\n {this.renderRows(cell as NestedCells[])}\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 vars = (Array.isArray(cell.cssVar) ? cell.cssVar : [cell.cssVar]).map(\n (name) => `var(${name})`,\n );\n type CellProps = IBoxProps & {\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 },\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, index), propsCell);\n }\n\n return sstyled(styles)(\n <SCell\n key={cell.name}\n role=\"cell\"\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 { dataIndex, topOffset, nested }: { 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 && !nested && !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': dataIndex + 1,\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)(<SRow role=\"row\" {...props} />);\n }\n\n renderRows(rows: NestedCells[]) {\n return rows.map((cells, dataIndex) => this.renderRow(cells, { dataIndex, nested: false }));\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 this.firstRowResizeObserver = new ResizeObserver(this.handleFirstRowResize);\n this.firstRowResizeObserver.observe(this.firstRowRef.current);\n };\n\n componentWillUnmount() {\n this.firstRowResizeObserver?.disconnect();\n }\n\n render() {\n const SBody = Root;\n const SBodyWrapper = Box;\n const SScrollAreaBar = ScrollArea.Bar;\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 } = this.asProps;\n\n const columnsInitialized = columns.reduce((sum, { width }) => sum + width, 0) > 0 || testEnv;\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(columns);\n const offsetSum = offsetLeftSum + offsetRightSum;\n\n const rowHeight = this.getRowHeight();\n const holdHeight =\n rowHeight !== undefined && virtualScroll ? rowHeight * rows.length : undefined;\n\n if (virtualScroll && columnsInitialized && !rowHeight) {\n new Promise(() => this.setupRowSizeObserver());\n }\n\n return sstyled(styles)(\n <SBodyWrapper>\n <ScrollArea\n shadow\n styles={scrollStyles}\n use:left={`${offsetLeftSum}px`}\n use:right={`${offsetRightSum}px`}\n onResize={callAllEventHandlers(onResize, this.handleScrollAreaResize)}\n onScroll={callAllEventHandlers(onScroll, this.handleScrollAreaScroll)}\n >\n <ScrollArea.Container ref={$scrollRef} disabledScroll={disabledScroll}>\n <SBody render={Box} role=\"rowgroup\">\n {holdHeight ? <SHeightHold hMin={holdHeight} aria-hidden={true} /> : null}\n {columnsInitialized && !virtualScroll ? this.renderRows(rows) : null}\n {columnsInitialized && virtualScroll ? this.renderVirtualizedRows(rows) : null}\n </SBody>\n </ScrollArea.Container>\n <SScrollAreaBar\n orientation=\"horizontal\"\n left={`${offsetLeftSum}px`}\n right={`${offsetRightSum}px`}\n offsetSum={`${offsetSum}px`}\n />\n <SScrollAreaBar orientation=\"vertical\" />\n </ScrollArea>\n {Children.origin}\n </SBodyWrapper>,\n );\n }\n}\n\nexport default Body;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","ResizeObserver","scrollStyles","_sstyled","insert","trottle","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","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","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","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","_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","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","_this5","SBody","SBodyWrapper","SScrollAreaBar","Bar","SHeightHold","_this$asProps3","Children","$scrollRef","onResize","onScroll","disabledScroll","columnsInitialized","reduce","sum","_ref10","_getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","offsetSum","holdHeight","Promise","setupRowSizeObserver","handleScrollAreaResize","handleScrollAreaScroll","Container","_assignProps","origin"],"sources":["../../src/Body.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex, IBoxProps } 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 ResizeObserver from 'resize-observer-polyfill';\nimport scrollStyles from './style/scroll-area.shadow.css';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport trottle from '@semcore/utils/lib/rafTrottle';\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};\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 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<HTMLElement>();\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} role=\"rowgroup\" data-ui-name=\"group-cell\">\n {this.renderRows(cell as NestedCells[])}\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 = IBoxProps & {\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 },\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 {...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 { dataIndex, topOffset }: { dataIndex: number; topOffset?: number },\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': dataIndex + 2,\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)(<SRow role=\"row\" {...props} />);\n }\n\n renderRows(rows: NestedCells[]) {\n return rows.map((cells, dataIndex) => this.renderRow(cells, { dataIndex }));\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 }),\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 this.firstRowResizeObserver = new ResizeObserver(this.handleFirstRowResize);\n this.firstRowResizeObserver.observe(this.firstRowRef.current);\n };\n\n componentWillUnmount() {\n this.firstRowResizeObserver?.disconnect();\n }\n\n render() {\n const SBody = Root;\n const SBodyWrapper = Box;\n const SScrollAreaBar = ScrollArea.Bar;\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 } = this.asProps;\n\n const columnsInitialized = columns.reduce((sum, { width }) => sum + width, 0) > 0 || testEnv;\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(columns);\n const offsetSum = offsetLeftSum + offsetRightSum;\n\n const rowHeight = this.getRowHeight();\n const holdHeight =\n rowHeight !== undefined && virtualScroll ? rowHeight * rows.length : undefined;\n\n if (virtualScroll && columnsInitialized && !rowHeight) {\n new Promise(() => this.setupRowSizeObserver());\n }\n\n return sstyled(styles)(\n <SBodyWrapper>\n <ScrollArea\n shadow\n styles={scrollStyles}\n use:left={`${offsetLeftSum}px`}\n use:right={`${offsetRightSum}px`}\n onResize={callAllEventHandlers(onResize, this.handleScrollAreaResize)}\n onScroll={callAllEventHandlers(onScroll, this.handleScrollAreaScroll)}\n >\n <ScrollArea.Container ref={$scrollRef} disabledScroll={disabledScroll}>\n <SBody render={Box} role=\"rowgroup\">\n {holdHeight ? <SHeightHold hMin={holdHeight} aria-hidden={true} /> : null}\n {columnsInitialized && !virtualScroll ? this.renderRows(rows) : null}\n {columnsInitialized && virtualScroll ? this.renderVirtualizedRows(rows) : null}\n </SBody>\n </ScrollArea.Container>\n <SScrollAreaBar\n orientation=\"horizontal\"\n left={`${offsetLeftSum}px`}\n right={`${offsetRightSum}px`}\n offsetSum={`${offsetSum}px`}\n />\n <SScrollAreaBar orientation=\"vertical\" />\n </ScrollArea>\n {Children.origin}\n </SBodyWrapper>,\n );\n }\n}\n\nexport default Body;\n"],"mappings":"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"}
@@ -20,47 +20,48 @@ import fire from '@semcore/utils/lib/fire';
20
20
  import { flattenColumns } from './utils';
21
21
  import Head from './Head';
22
22
  import Body from './Body';
23
+ import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
23
24
  /*__reshadow-styles__:"./style/data-table.shadow.css"*/
24
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDataTable_15xws_gg_,.___SHeadWrapper_15xws_gg_{position:relative}.___SDataTable_15xws_gg_.__compact_15xws_gg_ .___SCell_15xws_gg_,.___SDataTable_15xws_gg_.__compact_15xws_gg_ .___SColumn_15xws_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_15xws_gg_.__sticky_15xws_gg_{position:sticky;top:0;z-index:2}.___SHead_15xws_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_15xws_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_15xws_gg_.focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.3))}.___SColumn_15xws_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.3))}.___SColumn_15xws_gg_.__hidden_15xws_gg_{height:0!important;padding:0!important;overflow:hidden!important;border:0!important}.___SColumn_15xws_gg_._use_primary_15xws_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_15xws_gg_._use_secondary_15xws_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_15xws_gg_.__group_15xws_gg_.__use_15xws_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_15xws_gg_.__groupHead_15xws_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_15xws_gg_.__sortable_15xws_gg_{cursor:pointer}@media (hover:hover){.___SColumn_15xws_gg_.__sortable_15xws_gg_._use_primary_15xws_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SColumn_15xws_gg_.__sortable_15xws_gg_:hover .___SSortWrapper_15xws_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_15xws_gg_.__sortable_15xws_gg_:hover .___SSortIcon_15xws_gg_,.___SColumn_15xws_gg_.__sortable_15xws_gg_:hover .___SSortWrapper_15xws_gg_:before{display:block;opacity:1}}.___SColumn_15xws_gg_._use_primary_15xws_gg_.__active_15xws_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_15xws_gg_.__active_15xws_gg_ .___SSortWrapper_15xws_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_15xws_gg_.__active_15xws_gg_ .___SSortIcon_15xws_gg_{display:block;position:relative;opacity:1}.___SColumn_15xws_gg_.__resizable_15xws_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_15xws_gg_.__resizable_15xws_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_15xws_gg_.__resizable_15xws_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_15xws_gg_.__fixed_15xws_gg_{position:sticky;z-index:2}.___SCell_15xws_gg_.__borderLeft_15xws_gg_,.___SColumn_15xws_gg_.__borderLeft_15xws_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_15xws_gg_.__borderRight_15xws_gg_,.___SColumn_15xws_gg_.__borderRight_15xws_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_15xws_gg_{flex-shrink:99999;position:relative;flex-basis:0;height:100%;min-height:16px;opacity:0;transition:all .3s ease}.___SSortIcon_15xws_gg_,.___SSortWrapper_15xws_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_15xws_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_15xws_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #8a8e9b);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_15xws_gg_._use_primary_15xws_gg_ .___SSortWrapper_15xws_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_15xws_gg_._use_secondary_15xws_gg_ .___SSortWrapper_15xws_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_15xws_gg_{position:relative}.___SBody_15xws_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_15xws_gg_{display:flex;flex-direction:row;position:relative}.___SRow_15xws_gg_.__active_15xws_gg_>.___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_._theme_muted_15xws_gg_.__active_15xws_gg_>.___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}@media (hover:hover){.___SRow_15xws_gg_ .___SCell_15xws_gg_:hover+.___SGroupCell_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_:hover>.___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_15xws_gg_._theme_muted_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_15xws_gg_._theme_muted_15xws_gg_ .___SCell_15xws_gg_:hover+.___SGroupCell_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_._theme_muted_15xws_gg_:hover>.___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_:hover>.___SCell_15xws_gg_._theme_muted_15xws_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_15xws_gg_._theme_info_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_15xws_gg_._theme_info_15xws_gg_.__active_15xws_gg_>.___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}@media (hover:hover){.___SRow_15xws_gg_._theme_info_15xws_gg_ .___SCell_15xws_gg_:hover+.___SGroupCell_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_._theme_info_15xws_gg_:hover>.___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_:hover>.___SCell_15xws_gg_._theme_info_15xws_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_15xws_gg_._theme_success_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_15xws_gg_._theme_success_15xws_gg_.__active_15xws_gg_>.___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}@media (hover:hover){.___SRow_15xws_gg_._theme_success_15xws_gg_ .___SCell_15xws_gg_:hover+.___SGroupCell_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_._theme_success_15xws_gg_:hover>.___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_:hover>.___SCell_15xws_gg_._theme_success_15xws_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_15xws_gg_._theme_warning_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_15xws_gg_._theme_warning_15xws_gg_.__active_15xws_gg_>.___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}@media (hover:hover){.___SRow_15xws_gg_._theme_warning_15xws_gg_ .___SCell_15xws_gg_:hover+.___SGroupCell_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_._theme_warning_15xws_gg_:hover>.___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_:hover>.___SCell_15xws_gg_._theme_warning_15xws_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_15xws_gg_._theme_danger_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_15xws_gg_._theme_danger_15xws_gg_.__active_15xws_gg_>.___SCell_15xws_gg_:not(.__theme_15xws_gg_){background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}@media (hover:hover){.___SRow_15xws_gg_._theme_danger_15xws_gg_ .___SCell_15xws_gg_:hover+.___SGroupCell_15xws_gg_ .___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_._theme_danger_15xws_gg_:hover>.___SCell_15xws_gg_:not(.__theme_15xws_gg_),.___SRow_15xws_gg_:hover>.___SCell_15xws_gg_._theme_danger_15xws_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_15xws_gg_.__positioned_15xws_gg_{position:absolute}.___SCell_15xws_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}.___SCell_15xws_gg_._use_primary_15xws_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_15xws_gg_._use_secondary_15xws_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_15xws_gg_.__fixed_15xws_gg_{position:sticky;z-index:1}.___SCell_15xws_gg_._theme_muted_15xws_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_15xws_gg_._theme_info_15xws_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_15xws_gg_._theme_success_15xws_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_15xws_gg_._theme_warning_15xws_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_15xws_gg_._theme_danger_15xws_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SScrollAreaBar_15xws_gg_._orientation_horizontal_15xws_gg_{position:sticky;bottom:0;left:0;margin-top:calc(-1*var(--intergalactic-spacing-3x, 12px));z-index:2}.___SScrollAreaBar_15xws_gg_._orientation_vertical_15xws_gg_{width:12px}.___SScrollAreaBar_15xws_gg_._orientation_horizontal_15xws_gg_{margin-left:calc(var(--left_15xws) + var(--intergalactic-spacing-1x, 4px));margin-right:calc(var(--right_15xws) + var(--intergalactic-spacing-1x, 4px));width:calc(100% - var(--offsetSum_15xws) - 8px)}.___SHeightHold_15xws_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "15xws_gg_") /*__reshadow_css_end__*/, {
25
- "__SDataTable": "___SDataTable_15xws_gg_",
26
- "_compact": "__compact_15xws_gg_",
27
- "__SColumn": "___SColumn_15xws_gg_",
28
- "__SCell": "___SCell_15xws_gg_",
29
- "__SHeadWrapper": "___SHeadWrapper_15xws_gg_",
30
- "_sticky": "__sticky_15xws_gg_",
31
- "__SHead": "___SHead_15xws_gg_",
32
- "_hidden": "__hidden_15xws_gg_",
33
- "_use_primary": "_use_primary_15xws_gg_",
34
- "_use_secondary": "_use_secondary_15xws_gg_",
35
- "_group": "__group_15xws_gg_",
36
- "_use": "__use_15xws_gg_",
37
- "_groupHead": "__groupHead_15xws_gg_",
38
- "_sortable": "__sortable_15xws_gg_",
39
- "__SSortWrapper": "___SSortWrapper_15xws_gg_",
40
- "__SSortIcon": "___SSortIcon_15xws_gg_",
41
- "_active": "__active_15xws_gg_",
42
- "_resizable": "__resizable_15xws_gg_",
43
- "_fixed": "__fixed_15xws_gg_",
44
- "_borderLeft": "__borderLeft_15xws_gg_",
45
- "_borderRight": "__borderRight_15xws_gg_",
46
- "__SBodyWrapper": "___SBodyWrapper_15xws_gg_",
47
- "__SBody": "___SBody_15xws_gg_",
48
- "__SRow": "___SRow_15xws_gg_",
49
- "_theme": "__theme_15xws_gg_",
50
- "__SGroupCell": "___SGroupCell_15xws_gg_",
51
- "_theme_muted": "_theme_muted_15xws_gg_",
52
- "_theme_info": "_theme_info_15xws_gg_",
53
- "_theme_success": "_theme_success_15xws_gg_",
54
- "_theme_warning": "_theme_warning_15xws_gg_",
55
- "_theme_danger": "_theme_danger_15xws_gg_",
56
- "_positioned": "__positioned_15xws_gg_",
57
- "__SScrollAreaBar": "___SScrollAreaBar_15xws_gg_",
58
- "_orientation_horizontal": "_orientation_horizontal_15xws_gg_",
59
- "_orientation_vertical": "_orientation_vertical_15xws_gg_",
60
- "--left": "--left_15xws",
61
- "--right": "--right_15xws",
62
- "--offsetSum": "--offsetSum_15xws",
63
- "__SHeightHold": "___SHeightHold_15xws_gg_"
25
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDataTable_17vnv_gg_,.___SHeadWrapper_17vnv_gg_{position:relative}.___SDataTable_17vnv_gg_.__compact_17vnv_gg_ .___SCell_17vnv_gg_,.___SDataTable_17vnv_gg_.__compact_17vnv_gg_ .___SColumn_17vnv_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_17vnv_gg_.__sticky_17vnv_gg_{position:sticky;top:0;z-index:2}.___SHead_17vnv_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_17vnv_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_17vnv_gg_.focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.3))}.___SColumn_17vnv_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.3))}.___SColumn_17vnv_gg_.__hidden_17vnv_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_17vnv_gg_._use_primary_17vnv_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_17vnv_gg_._use_secondary_17vnv_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_17vnv_gg_.__group_17vnv_gg_.__use_17vnv_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_17vnv_gg_.__groupHead_17vnv_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_17vnv_gg_.__sortable_17vnv_gg_{cursor:pointer}@media (hover:hover){.___SColumn_17vnv_gg_.__sortable_17vnv_gg_._use_primary_17vnv_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}.___SColumn_17vnv_gg_.__sortable_17vnv_gg_:hover .___SSortWrapper_17vnv_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_17vnv_gg_.__sortable_17vnv_gg_:hover .___SSortIcon_17vnv_gg_,.___SColumn_17vnv_gg_.__sortable_17vnv_gg_:hover .___SSortWrapper_17vnv_gg_:before{display:block;opacity:1}}.___SColumn_17vnv_gg_._use_primary_17vnv_gg_.__active_17vnv_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_17vnv_gg_.__active_17vnv_gg_ .___SSortWrapper_17vnv_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}.___SColumn_17vnv_gg_.__active_17vnv_gg_ .___SSortIcon_17vnv_gg_{display:block;position:relative;opacity:1}.___SColumn_17vnv_gg_.__resizable_17vnv_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_17vnv_gg_.__resizable_17vnv_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_17vnv_gg_.__resizable_17vnv_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_17vnv_gg_.__fixed_17vnv_gg_{position:sticky;z-index:2}.___SCell_17vnv_gg_.__borderLeft_17vnv_gg_,.___SColumn_17vnv_gg_.__borderLeft_17vnv_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_17vnv_gg_.__borderRight_17vnv_gg_,.___SColumn_17vnv_gg_.__borderRight_17vnv_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_17vnv_gg_{flex-shrink:99999;position:relative;flex-basis:0;height:100%;min-height:16px;opacity:0;transition:all .3s ease}.___SSortIcon_17vnv_gg_,.___SSortWrapper_17vnv_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_17vnv_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_17vnv_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #8a8e9b);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_17vnv_gg_._use_primary_17vnv_gg_ .___SSortWrapper_17vnv_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_17vnv_gg_._use_secondary_17vnv_gg_ .___SSortWrapper_17vnv_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_17vnv_gg_{position:relative}.___SBody_17vnv_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_17vnv_gg_{display:flex;flex-direction:row;position:relative}.___SRow_17vnv_gg_.__active_17vnv_gg_>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_._theme_muted_17vnv_gg_.__active_17vnv_gg_>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}@media (hover:hover){.___SRow_17vnv_gg_ .___SCell_17vnv_gg_:hover+.___SGroupCell_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_:hover>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_17vnv_gg_._theme_muted_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_17vnv_gg_._theme_muted_17vnv_gg_ .___SCell_17vnv_gg_:hover+.___SGroupCell_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_._theme_muted_17vnv_gg_:hover>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_:hover>.___SCell_17vnv_gg_._theme_muted_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_17vnv_gg_._theme_info_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_17vnv_gg_._theme_info_17vnv_gg_.__active_17vnv_gg_>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}@media (hover:hover){.___SRow_17vnv_gg_._theme_info_17vnv_gg_ .___SCell_17vnv_gg_:hover+.___SGroupCell_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_._theme_info_17vnv_gg_:hover>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_:hover>.___SCell_17vnv_gg_._theme_info_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_17vnv_gg_._theme_success_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_17vnv_gg_._theme_success_17vnv_gg_.__active_17vnv_gg_>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}@media (hover:hover){.___SRow_17vnv_gg_._theme_success_17vnv_gg_ .___SCell_17vnv_gg_:hover+.___SGroupCell_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_._theme_success_17vnv_gg_:hover>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_:hover>.___SCell_17vnv_gg_._theme_success_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_17vnv_gg_._theme_warning_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_17vnv_gg_._theme_warning_17vnv_gg_.__active_17vnv_gg_>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}@media (hover:hover){.___SRow_17vnv_gg_._theme_warning_17vnv_gg_ .___SCell_17vnv_gg_:hover+.___SGroupCell_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_._theme_warning_17vnv_gg_:hover>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_:hover>.___SCell_17vnv_gg_._theme_warning_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_17vnv_gg_._theme_danger_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_17vnv_gg_._theme_danger_17vnv_gg_.__active_17vnv_gg_>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_){background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}@media (hover:hover){.___SRow_17vnv_gg_._theme_danger_17vnv_gg_ .___SCell_17vnv_gg_:hover+.___SGroupCell_17vnv_gg_ .___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_._theme_danger_17vnv_gg_:hover>.___SCell_17vnv_gg_:not(.__theme_17vnv_gg_),.___SRow_17vnv_gg_:hover>.___SCell_17vnv_gg_._theme_danger_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_17vnv_gg_.__positioned_17vnv_gg_{position:absolute}.___SCell_17vnv_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}.___SCell_17vnv_gg_._use_primary_17vnv_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_17vnv_gg_._use_secondary_17vnv_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_17vnv_gg_.__fixed_17vnv_gg_{position:sticky;z-index:1}.___SCell_17vnv_gg_._theme_muted_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_17vnv_gg_._theme_info_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_17vnv_gg_._theme_success_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_17vnv_gg_._theme_warning_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_17vnv_gg_._theme_danger_17vnv_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SScrollAreaBar_17vnv_gg_._orientation_horizontal_17vnv_gg_{position:sticky;bottom:0;left:0;margin-top:calc(-1*var(--intergalactic-spacing-3x, 12px));z-index:2}.___SScrollAreaBar_17vnv_gg_._orientation_vertical_17vnv_gg_{width:12px}.___SScrollAreaBar_17vnv_gg_._orientation_horizontal_17vnv_gg_{margin-left:calc(var(--left_17vnv) + var(--intergalactic-spacing-1x, 4px));margin-right:calc(var(--right_17vnv) + var(--intergalactic-spacing-1x, 4px));width:calc(100% - var(--offsetSum_17vnv) - 8px)}.___SHeightHold_17vnv_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "17vnv_gg_") /*__reshadow_css_end__*/, {
26
+ "__SDataTable": "___SDataTable_17vnv_gg_",
27
+ "_compact": "__compact_17vnv_gg_",
28
+ "__SColumn": "___SColumn_17vnv_gg_",
29
+ "__SCell": "___SCell_17vnv_gg_",
30
+ "__SHeadWrapper": "___SHeadWrapper_17vnv_gg_",
31
+ "_sticky": "__sticky_17vnv_gg_",
32
+ "__SHead": "___SHead_17vnv_gg_",
33
+ "_hidden": "__hidden_17vnv_gg_",
34
+ "_use_primary": "_use_primary_17vnv_gg_",
35
+ "_use_secondary": "_use_secondary_17vnv_gg_",
36
+ "_group": "__group_17vnv_gg_",
37
+ "_use": "__use_17vnv_gg_",
38
+ "_groupHead": "__groupHead_17vnv_gg_",
39
+ "_sortable": "__sortable_17vnv_gg_",
40
+ "__SSortWrapper": "___SSortWrapper_17vnv_gg_",
41
+ "__SSortIcon": "___SSortIcon_17vnv_gg_",
42
+ "_active": "__active_17vnv_gg_",
43
+ "_resizable": "__resizable_17vnv_gg_",
44
+ "_fixed": "__fixed_17vnv_gg_",
45
+ "_borderLeft": "__borderLeft_17vnv_gg_",
46
+ "_borderRight": "__borderRight_17vnv_gg_",
47
+ "__SBodyWrapper": "___SBodyWrapper_17vnv_gg_",
48
+ "__SBody": "___SBody_17vnv_gg_",
49
+ "__SRow": "___SRow_17vnv_gg_",
50
+ "_theme": "__theme_17vnv_gg_",
51
+ "__SGroupCell": "___SGroupCell_17vnv_gg_",
52
+ "_theme_muted": "_theme_muted_17vnv_gg_",
53
+ "_theme_info": "_theme_info_17vnv_gg_",
54
+ "_theme_success": "_theme_success_17vnv_gg_",
55
+ "_theme_warning": "_theme_warning_17vnv_gg_",
56
+ "_theme_danger": "_theme_danger_17vnv_gg_",
57
+ "_positioned": "__positioned_17vnv_gg_",
58
+ "__SScrollAreaBar": "___SScrollAreaBar_17vnv_gg_",
59
+ "_orientation_horizontal": "_orientation_horizontal_17vnv_gg_",
60
+ "_orientation_vertical": "_orientation_vertical_17vnv_gg_",
61
+ "--left": "--left_17vnv",
62
+ "--right": "--right_17vnv",
63
+ "--offsetSum": "--offsetSum_17vnv",
64
+ "__SHeightHold": "___SHeightHold_17vnv_gg_"
64
65
  });
65
66
  var REVERSED_SORT_DIRECTION = {
66
67
  desc: 'asc',
@@ -214,10 +215,14 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
214
215
  forwardRef: child.ref,
215
216
  children: children,
216
217
  ref: (column === null || column === void 0 ? void 0 : (_column$props = column.props) === null || _column$props === void 0 ? void 0 : _column$props.ref) || /*#__PURE__*/React.createRef()
217
- })
218
+ }),
219
+ parentColumns: []
218
220
  };
219
221
  if (columns) {
220
222
  columnChildren.columns = columns;
223
+ columns.forEach(function (column) {
224
+ return column.parentColumns.unshift(columnChildren);
225
+ });
221
226
  }
222
227
  columnsChildren.push(columnChildren);
223
228
  });
@@ -226,7 +231,9 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
226
231
  }, {
227
232
  key: "getHeadProps",
228
233
  value: function getHeadProps(props) {
229
- var use = this.asProps.use;
234
+ var _this$asProps = this.asProps,
235
+ use = _this$asProps.use,
236
+ uid = _this$asProps.uid;
230
237
  var columnsChildren = this.childrenToColumns(props.children);
231
238
  this.columns = flattenColumns(columnsChildren);
232
239
  return {
@@ -234,16 +241,18 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
234
241
  columnsChildren: columnsChildren,
235
242
  use: use,
236
243
  onResize: this.handlerResize,
237
- $scrollRef: this.scrollHeadRef
244
+ $scrollRef: this.scrollHeadRef,
245
+ uid: uid
238
246
  };
239
247
  }
240
248
  }, {
241
249
  key: "getBodyProps",
242
250
  value: function getBodyProps(props) {
243
- var _this$asProps = this.asProps,
244
- data = _this$asProps.data,
245
- use = _this$asProps.use,
246
- uniqueKey = _this$asProps.uniqueKey;
251
+ var _this$asProps2 = this.asProps,
252
+ data = _this$asProps2.data,
253
+ use = _this$asProps2.use,
254
+ uniqueKey = _this$asProps2.uniqueKey,
255
+ uid = _this$asProps2.uid;
247
256
  var cellPropsLayers = {};
248
257
  var rowPropsLayers = [];
249
258
  React.Children.forEach(props.children, function (child) {
@@ -273,7 +282,8 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
273
282
  uniqueKey: uniqueKey,
274
283
  use: use,
275
284
  rowPropsLayers: rowPropsLayers,
276
- $scrollRef: this.scrollBodyRef
285
+ $scrollRef: this.scrollBodyRef,
286
+ uid: uid
277
287
  };
278
288
  }
279
289
  }, {
@@ -374,14 +384,14 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
374
384
  var _ref = this.asProps,
375
385
  _ref2;
376
386
  var SDataTable = Box;
377
- var _this$asProps2 = this.asProps,
378
- Children = _this$asProps2.Children,
379
- styles = _this$asProps2.styles,
380
- data = _this$asProps2.data;
387
+ var _this$asProps3 = this.asProps,
388
+ Children = _this$asProps3.Children,
389
+ styles = _this$asProps3.styles,
390
+ data = _this$asProps3.data;
381
391
  return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SDataTable, _ref2.cn("SDataTable", _objectSpread({}, _assignProps({
382
392
  "__excludeProps": ['data'],
383
393
  "ref": this.tableRef,
384
- "role": 'table',
394
+ "role": "table",
385
395
  "aria-rowcount": (data !== null && data !== void 0 ? data : []).length
386
396
  }, _ref))), /*#__PURE__*/React.createElement(Children, _ref2.cn("Children", {})));
387
397
  }
@@ -390,6 +400,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
390
400
  }(Component);
391
401
  _defineProperty(RootDefinitionTable, "displayName", 'DefinitionTable');
392
402
  _defineProperty(RootDefinitionTable, "style", style);
403
+ _defineProperty(RootDefinitionTable, "enhance", [uniqueIDEnhancement()]);
393
404
  _defineProperty(RootDefinitionTable, "defaultProps", {
394
405
  use: 'primary',
395
406
  uniqueKey: 'id',
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.js","names":["React","createComponent","Component","Root","sstyled","Box","syncScroll","callAllEventHandlers","fire","flattenColumns","Head","Body","style","_sstyled","insert","REVERSED_SORT_DIRECTION","desc","asc","DEFAULT_SORT_DIRECTION","ROW_GROUP","Symbol","cssVarReg","createCssVarForWidth","name","concat","replace","setBorderGroupColumns","columns","side","firstColumn","lastColumn","length","borderLeft","borderRight","RootDefinitionTable","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","event","column","find","active","sortDirection","forceUpdate","_this$tableRef","_this$tableRef$curren","tableRef","current","scrollIntoView","block","inline","behavior","scrollBodyRef","scrollHeadRef","_createClass","key","value","setVarStyle","_iterator","_createForOfIteratorHelper","_step","s","n","done","setVar","_this$tableRef$curren2","setProperty","varWidth","width","err","e","f","childrenToColumns","children","_this2","options","arguments","undefined","fixed","sort","asProps","columnsChildren","Children","forEach","child","_column$props","isValidElement","type","DefinitionTable","Column","_ref3","_ref3$fixed","resizable","sortable","flex","vBorders","_objectWithoutProperties","_excluded","lastColumnChildren","isGroup","some","c","map","_ref4","join","toArray","filter","columnChildren","_this$props$ref$curre","ref","getBoundingClientRect","_objectSpread","forwardRef","push","getHeadProps","use","$onSortClick","handlerSortClick","scrollToUp","onResize","handlerResize","$scrollRef","getBodyProps","_this$asProps","data","uniqueKey","cellPropsLayers","rowPropsLayers","_ref5","other","_excluded2","Cell","split","childrenPropsGetter","Row","rows","dataToRows","_this3","parseData","exclude","row","groupByName","columnsWithoutRowGroup","rowKey","columnNames","_iterator2","_step2","groupedColumns","groupData","rowsGroup","rowsGroupedNames","Object","fromEntries","subRow","keys","flat","cells","_groupByName$column$n","cssVar","flatRowData","componentDidUpdate","render","_ref","_ref2","SDataTable","_this$asProps2","styles","createElement","cn","_assignProps","ComponentDefinition"],"sources":["../../src/DataTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Property } from 'csstype';\nimport createComponent, { Component, PropGetterFn, Root, sstyled } from '@semcore/core';\nimport { Box, IBoxProps, IFlexProps } from '@semcore/flex-box';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport fire from '@semcore/utils/lib/fire';\nimport { flattenColumns } from './utils';\nimport type {\n Column,\n NestedCells,\n PropsLayer,\n PseudoChildPropsGetter,\n RowData,\n SortDirection,\n} from './types';\nimport Head from './Head';\nimport Body from './Body';\n\nimport style from './style/data-table.shadow.css';\n\nconst REVERSED_SORT_DIRECTION: { [direction in SortDirection]: SortDirection } = {\n desc: 'asc',\n asc: 'desc',\n};\nconst DEFAULT_SORT_DIRECTION: SortDirection = 'desc';\n\nconst ROW_GROUP = Symbol('ROW_GROUP');\n\nconst cssVarReg = /[:;]/g;\n\nconst createCssVarForWidth = (name: string) => {\n return `--${name.replace(cssVarReg, '_')}_width`;\n};\n\ntype AsProps = {\n use: 'primary' | 'secondary';\n sort: SortDirection[];\n data: RowData[];\n uniqueKey: string;\n};\n\ntype HeadAsProps = {\n children: React.ReactChild;\n};\ntype BodyAsProps = {\n children: React.ReactChild;\n};\n\n/* utils type */\ntype CProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?: ((props: Props & Ctx, handlers: UCProps) => React.ReactNode) | React.ReactNode;\n};\ntype ReturnEl = React.ReactElement | null;\ntype ChildRenderFn<Props> = Props & {\n children?: (props: Props, column: DataTableData, index: number) => { [key: string]: unknown };\n};\n/* utils type */\n\nexport type DataTableData = { [key: string]: unknown };\nexport type DataTableSort = [string, 'desc' | 'asc'];\nexport type DataTableTheme = 'muted' | 'info' | 'success' | 'warning' | 'danger';\nexport type DataTableUse = 'primary' | 'secondary';\nexport type DataTableRow = DataTableCell[];\nexport type DataTableCell = {\n /** Name of column */\n name: string;\n /** Data of column */\n data: React.ReactNode;\n [key: string]: unknown;\n};\n\nexport interface IDataTableProps extends IBoxProps {\n /** Theme for table\n * @default primary\n * */\n use?: DataTableUse;\n /** Data for table */\n data?: DataTableData[];\n /** Active sort object */\n sort?: DataTableSort;\n /** Handler call when will request change sort */\n onSortChange?: (sort: DataTableSort, e?: React.SyntheticEvent) => void;\n /** Field name in one data entity that is unique accross all set of data\n * @default id\n */\n uniqueKey?: string;\n}\n\nexport interface IDataTableHeadProps extends IBoxProps {\n /** Sticky header table\n * @deprecated\n * */\n sticky?: boolean;\n\n /** Hidden header */\n hidden?: boolean;\n\n /** Disabled scroll */\n disabledScroll?: boolean;\n}\n\nexport interface IDataTableColumnProps extends IFlexProps {\n /** Unique name column */\n name?: string;\n /** Enable sort for column also if you pass string you can set default sort */\n sortable?: boolean | 'desc' | 'asc';\n /** Enable resize for column\n * @ignore */\n resizable?: boolean;\n /** Fixed column on the left/right */\n fixed?: 'left' | 'right';\n /** Fields to control the size of the column. */\n flex?: Property.Flex | 'inherit';\n /** Add vertical borders */\n vBorders?: boolean;\n /** Add vertical border to the right side */\n borderRight?: boolean;\n /** Add vertical border to the left side */\n borderLeft?: boolean;\n /** Make cells less */\n compact?: boolean;\n}\n\nexport interface IDataTableBodyProps extends IBoxProps {\n /** Rows table */\n rows?: DataTableRow[];\n /** When enabled, only visually acessable rows are rendered.\n * `tollerance` property controls how many rows outside of viewport are render.\n * `rowHeight` fixes the rows height if it has known. If not provided, first row node height is measured.\n * @default { tollerance: 2 }\n */\n virtualScroll?: boolean | { tollerance?: number; rowHeight?: number };\n /**\n * Called every time user scrolls area\n */\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /** Disabled scroll */\n disabledScroll?: boolean;\n}\n\nexport interface IDataTableRowProps extends IBoxProps {\n /** Theme for row */\n theme?: DataTableTheme;\n /** Displays row as active/hover */\n active?: boolean;\n}\n\nexport interface IDataTableCellProps extends IFlexProps {\n /** Unique name column or columns separated by / */\n name: string;\n /** Theme for cell */\n theme?: DataTableTheme;\n}\n\nfunction setBorderGroupColumns(columns: Column[], side?: string) {\n const firstColumn = columns[0];\n const lastColumn = columns[columns.length - 1];\n if (firstColumn && (!side || side === 'left')) {\n firstColumn.borderLeft = true;\n if (firstColumn.columns) {\n setBorderGroupColumns(firstColumn.columns, 'left');\n }\n }\n if (lastColumn && (!side || side === 'right')) {\n lastColumn.borderRight = true;\n if (lastColumn.columns) {\n setBorderGroupColumns(lastColumn.columns, 'right');\n }\n }\n}\n\nclass RootDefinitionTable extends Component<AsProps> {\n static displayName = 'DefinitionTable';\n\n static style = style;\n\n static defaultProps = {\n use: 'primary',\n uniqueKey: 'id',\n sort: [],\n data: [],\n } as AsProps;\n\n columns: Column[] = [];\n\n tableRef = React.createRef<HTMLElement>();\n scrollBodyRef: null | ReturnType<ReturnType<typeof syncScroll>> = null;\n scrollHeadRef: null | ReturnType<ReturnType<typeof syncScroll>> = null;\n\n constructor(props: AsProps) {\n super(props);\n\n const createRef = syncScroll();\n // first create body ref for master scroll\n this.scrollBodyRef = createRef('body');\n this.scrollHeadRef = createRef('head');\n }\n\n handlerSortClick = (name: string, event: React.MouseEvent) => {\n const column = this.columns.find((column) => column.name === name)!;\n return fire(\n this,\n 'onSortChange',\n [\n column.name,\n column.active ? REVERSED_SORT_DIRECTION[column.sortDirection] : column.sortDirection,\n ],\n event,\n );\n };\n\n handlerResize = () => {\n this.forceUpdate();\n };\n\n scrollToUp = () => {\n this.tableRef?.current?.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n behavior: 'smooth',\n });\n };\n\n setVarStyle(columns: Column[]) {\n for (const column of columns) {\n if (column.setVar) {\n this.tableRef.current?.style.setProperty(column.varWidth, `${column.width}px`);\n }\n }\n }\n\n childrenToColumns(\n children: React.ReactNode,\n options: { fixed?: 'left' | 'right' } = { fixed: undefined },\n ) {\n const { sort } = this.asProps;\n const columnsChildren: Column[] = [];\n React.Children.forEach(children, (child) => {\n if (!React.isValidElement(child)) return;\n if (child.type !== DefinitionTable.Column) return;\n\n let {\n children,\n name,\n fixed = options.fixed,\n resizable,\n sortable,\n flex,\n vBorders,\n active,\n ...props\n } = child.props as Column['props'];\n const lastColumnChildren = columnsChildren[columnsChildren.length - 1];\n const isGroup = !name;\n let columns: Column[] | undefined;\n\n if (isGroup) {\n columns = this.childrenToColumns(children, { fixed });\n active = typeof active === 'boolean' ? active : columns.some((c) => c.active);\n\n if (vBorders) {\n setBorderGroupColumns(columns);\n }\n\n name = flattenColumns(columns)\n .map(({ name }) => name)\n .join('/');\n if (!columns.length) return;\n children = React.Children.toArray(children).filter(\n (child) => !(React.isValidElement(child) && child.type === DefinitionTable.Column),\n );\n }\n\n const column = this.columns.find((column) => column.name === name);\n const columnChildren = {\n get width() {\n // @ts-ignore\n return this.props.ref.current?.getBoundingClientRect().width || 0;\n },\n name,\n varWidth: createCssVarForWidth(name),\n setVar: flex !== 'inherit',\n fixed,\n resizable,\n active: typeof active === 'boolean' ? active : sort[0] === name,\n sortable,\n borderLeft: lastColumnChildren?.borderRight === true ? false : vBorders,\n borderRight: vBorders,\n sortDirection:\n sort[0] === name\n ? sort[1]\n : column?.sortDirection ||\n (typeof sortable == 'string' ? sortable : DEFAULT_SORT_DIRECTION),\n props: {\n name,\n flex: flex === 'inherit' ? undefined : flex,\n ...props,\n // @ts-ignore\n forwardRef: child.ref,\n children,\n ref: column?.props?.ref || React.createRef(),\n },\n } as unknown as Column;\n\n if (columns) {\n columnChildren.columns = columns;\n }\n columnsChildren.push(columnChildren);\n });\n return columnsChildren;\n }\n\n getHeadProps(props: HeadAsProps) {\n const { use } = this.asProps;\n const columnsChildren = this.childrenToColumns(props.children);\n\n this.columns = flattenColumns(columnsChildren);\n return {\n $onSortClick: callAllEventHandlers(this.handlerSortClick, this.scrollToUp),\n columnsChildren,\n use,\n onResize: this.handlerResize,\n $scrollRef: this.scrollHeadRef,\n };\n }\n\n getBodyProps(props: BodyAsProps) {\n const { data, use, uniqueKey } = this.asProps;\n const cellPropsLayers: { [columnName: string]: PropsLayer[] } = {};\n const rowPropsLayers: PropsLayer[] = [];\n\n React.Children.forEach(props.children, (child) => {\n if (React.isValidElement(child)) {\n const { name, children, ...other } = child.props as {\n name?: string;\n children?: PseudoChildPropsGetter;\n } & { [propName: string]: unknown };\n if (child.type === DefinitionTable.Cell && name) {\n name.split('/').forEach((name) => {\n cellPropsLayers[name] = cellPropsLayers[name] || [];\n cellPropsLayers[name].push({\n ...other,\n childrenPropsGetter: children,\n });\n });\n }\n if (child.type === DefinitionTable.Row) {\n rowPropsLayers.push({\n ...other,\n childrenPropsGetter: children,\n });\n }\n }\n });\n\n return {\n columns: this.columns,\n rows: this.dataToRows(data, cellPropsLayers),\n uniqueKey,\n use,\n rowPropsLayers,\n $scrollRef: this.scrollBodyRef,\n };\n }\n\n dataToRows(data: RowData[], cellPropsLayers: { [columnName: string]: PropsLayer[] }) {\n const parseData = (data: RowData[], exclude: { [columnName: string]: true }) =>\n data.map((row) => {\n const groupByName: {\n [columnName: string]: {\n groupedColumns: string[];\n groupData: { [columnName: string]: unknown };\n };\n } = {};\n const columnsWithoutRowGroup: { [columnname: string]: true } = {};\n for (const rowKey in row) {\n const columnNames = rowKey.split('/');\n if (columnNames.length >= 2) {\n for (const column of columnNames) {\n groupByName[column] = {\n groupedColumns: columnNames,\n groupData: row[rowKey] as { [columnName: string]: unknown },\n };\n columnsWithoutRowGroup[column] = true;\n }\n } else {\n columnsWithoutRowGroup[rowKey] = true;\n }\n }\n\n const rowsGroup = row[ROW_GROUP] || [];\n const rowsGroupedNames = Object.fromEntries(\n rowsGroup\n .map((subRow) => Object.keys(subRow))\n .flat()\n .map(key => key.split('/'))\n .flat()\n .map((key) => [key, true]),\n );\n\n let isGroup = false;\n\n const cells: NestedCells = this.columns\n .map((column) => {\n if (groupByName[column.name]) {\n const { groupedColumns, groupData } = groupByName[column.name];\n if (groupedColumns[0] === column.name) {\n return {\n name: groupedColumns.join('/'),\n cssVar: groupedColumns.map(createCssVarForWidth),\n fixed: column.fixed,\n data: groupData,\n cellPropsLayers: cellPropsLayers[column.name] || [],\n };\n }\n } else if (column.name in row) {\n return {\n name: column.name,\n cssVar: column.varWidth,\n fixed: column.fixed,\n data: row[column.name],\n cellPropsLayers: cellPropsLayers[column.name] || [],\n };\n } else if (!isGroup && rowsGroupedNames[column.name]) {\n // TODO: make it work not only with first group\n isGroup = true;\n return parseData(rowsGroup, {\n ...exclude,\n ...columnsWithoutRowGroup,\n });\n } else if (!exclude[column.name] && !rowsGroupedNames[column.name]) {\n // add empty cell if it is not present in data\n return {\n name: column.name,\n cssVar: column.varWidth,\n fixed: column.fixed,\n data: null,\n cellPropsLayers: cellPropsLayers[column.name] || [],\n };\n }\n })\n .filter((column) => column)\n .map((column) => column!);\n\n cells.flatRowData = row;\n return cells;\n });\n\n return parseData(data, {});\n }\n\n componentDidUpdate() {\n this.setVarStyle(this.columns);\n }\n\n render() {\n const SDataTable = Root;\n const { Children, styles, data } = this.asProps;\n\n return sstyled(styles)(\n <SDataTable\n render={Box}\n __excludeProps={['data']}\n ref={this.tableRef}\n role='table'\n aria-rowcount={(data ?? []).length}\n >\n <Children />\n </SDataTable>,\n );\n }\n}\n\ninterface IDataTableCtx {\n getHeadProps: PropGetterFn;\n getBodyProps: PropGetterFn;\n}\n\nfunction ComponentDefinition() {\n return null;\n}\n\nconst DefinitionTable = createComponent(\n RootDefinitionTable,\n {\n Head,\n Body,\n Column: ComponentDefinition,\n Cell: ComponentDefinition,\n Row: ComponentDefinition,\n },\n {},\n) as (<T>(props: CProps<IDataTableProps & T, IDataTableCtx>) => ReturnEl) & {\n Head: <T>(props: IDataTableHeadProps & T) => ReturnEl;\n Body: <T>(props: IDataTableBodyProps & T) => ReturnEl;\n Column: <T>(props: IDataTableColumnProps & T) => ReturnEl;\n Cell: <T>(props: ChildRenderFn<IDataTableCellProps & T>) => ReturnEl;\n Row: <T>(props: ChildRenderFn<IDataTableRowProps & T>) => ReturnEl;\n};\n\nexport { ROW_GROUP };\nexport default DefinitionTable;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DataTable.js","names":["React","createComponent","Component","Root","sstyled","Box","syncScroll","callAllEventHandlers","fire","flattenColumns","Head","Body","uniqueIDEnhancement","style","_sstyled","insert","REVERSED_SORT_DIRECTION","desc","asc","DEFAULT_SORT_DIRECTION","ROW_GROUP","Symbol","cssVarReg","createCssVarForWidth","name","concat","replace","setBorderGroupColumns","columns","side","firstColumn","lastColumn","length","borderLeft","borderRight","RootDefinitionTable","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","event","column","find","active","sortDirection","forceUpdate","_this$tableRef","_this$tableRef$curren","tableRef","current","scrollIntoView","block","inline","behavior","scrollBodyRef","scrollHeadRef","_createClass","key","value","setVarStyle","_iterator","_createForOfIteratorHelper","_step","s","n","done","setVar","_this$tableRef$curren2","setProperty","varWidth","width","err","e","f","childrenToColumns","children","_this2","options","arguments","undefined","fixed","sort","asProps","columnsChildren","Children","forEach","child","_column$props","isValidElement","type","DefinitionTable","Column","_ref3","_ref3$fixed","resizable","sortable","flex","vBorders","_objectWithoutProperties","_excluded","lastColumnChildren","isGroup","some","c","map","_ref4","join","toArray","filter","columnChildren","_this$props$ref$curre","ref","getBoundingClientRect","_objectSpread","forwardRef","parentColumns","unshift","push","getHeadProps","_this$asProps","use","uid","$onSortClick","handlerSortClick","scrollToUp","onResize","handlerResize","$scrollRef","getBodyProps","_this$asProps2","data","uniqueKey","cellPropsLayers","rowPropsLayers","_ref5","other","_excluded2","Cell","split","childrenPropsGetter","Row","rows","dataToRows","_this3","parseData","exclude","row","groupByName","columnsWithoutRowGroup","rowKey","columnNames","_iterator2","_step2","groupedColumns","groupData","rowsGroup","rowsGroupedNames","Object","fromEntries","subRow","keys","flat","cells","_groupByName$column$n","cssVar","flatRowData","componentDidUpdate","render","_ref","_ref2","SDataTable","_this$asProps3","styles","createElement","cn","_assignProps","ComponentDefinition"],"sources":["../../src/DataTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Property } from 'csstype';\nimport createComponent, { Component, PropGetterFn, Root, sstyled } from '@semcore/core';\nimport { Box, IBoxProps, IFlexProps } from '@semcore/flex-box';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport fire from '@semcore/utils/lib/fire';\nimport { flattenColumns } from './utils';\nimport type {\n Column,\n NestedCells,\n PropsLayer,\n PseudoChildPropsGetter,\n RowData,\n SortDirection,\n} from './types';\nimport Head from './Head';\nimport Body from './Body';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/data-table.shadow.css';\n\nconst REVERSED_SORT_DIRECTION: { [direction in SortDirection]: SortDirection } = {\n desc: 'asc',\n asc: 'desc',\n};\nconst DEFAULT_SORT_DIRECTION: SortDirection = 'desc';\n\nconst ROW_GROUP = Symbol('ROW_GROUP');\n\nconst cssVarReg = /[:;]/g;\n\nconst createCssVarForWidth = (name: string) => {\n return `--${name.replace(cssVarReg, '_')}_width`;\n};\n\ntype AsProps = {\n use: 'primary' | 'secondary';\n sort: SortDirection[];\n data: RowData[];\n uniqueKey: string;\n uid?: string;\n};\n\ntype HeadAsProps = {\n children: React.ReactChild;\n uid: string;\n};\ntype BodyAsProps = {\n children: React.ReactChild;\n uid: string;\n};\n\n/* utils type */\ntype CProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?: ((props: Props & Ctx, handlers: UCProps) => React.ReactNode) | React.ReactNode;\n};\ntype ReturnEl = React.ReactElement | null;\ntype ChildRenderFn<Props> = Props & {\n children?: (props: Props, column: DataTableData, index: number) => { [key: string]: unknown };\n};\n/* utils type */\n\nexport type DataTableData = { [key: string]: unknown };\nexport type DataTableSort = [string, 'desc' | 'asc'];\nexport type DataTableTheme = 'muted' | 'info' | 'success' | 'warning' | 'danger';\nexport type DataTableUse = 'primary' | 'secondary';\nexport type DataTableRow = DataTableCell[];\nexport type DataTableCell = {\n /** Name of column */\n name: string;\n /** Data of column */\n data: React.ReactNode;\n [key: string]: unknown;\n};\n\nexport interface IDataTableProps extends IBoxProps {\n /** Theme for table\n * @default primary\n * */\n use?: DataTableUse;\n /** Data for table */\n data?: DataTableData[];\n /** Active sort object */\n sort?: DataTableSort;\n /** Handler call when will request change sort */\n onSortChange?: (sort: DataTableSort, e?: React.SyntheticEvent) => void;\n /** Field name in one data entity that is unique accross all set of data\n * @default id\n */\n uniqueKey?: string;\n}\n\nexport interface IDataTableHeadProps extends IBoxProps {\n /** Sticky header table\n * @deprecated\n * */\n sticky?: boolean;\n\n /** Hidden header */\n hidden?: boolean;\n\n /** Disabled scroll */\n disabledScroll?: boolean;\n}\n\nexport interface IDataTableColumnProps extends IFlexProps {\n /** Unique name column */\n name?: string;\n /** Enable sort for column also if you pass string you can set default sort */\n sortable?: boolean | 'desc' | 'asc';\n /** Enable resize for column\n * @ignore */\n resizable?: boolean;\n /** Fixed column on the left/right */\n fixed?: 'left' | 'right';\n /** Fields to control the size of the column. */\n flex?: Property.Flex | 'inherit';\n /** Add vertical borders */\n vBorders?: boolean;\n /** Add vertical border to the right side */\n borderRight?: boolean;\n /** Add vertical border to the left side */\n borderLeft?: boolean;\n /** Make cells less */\n compact?: boolean;\n}\n\nexport interface IDataTableBodyProps extends IBoxProps {\n /** Rows table */\n rows?: DataTableRow[];\n /** When enabled, only visually acessable rows are rendered.\n * `tollerance` property controls how many rows outside of viewport are render.\n * `rowHeight` fixes the rows height if it has known. If not provided, first row node height is measured.\n * @default { tollerance: 2 }\n */\n virtualScroll?: boolean | { tollerance?: number; rowHeight?: number };\n /**\n * Called every time user scrolls area\n */\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /** Disabled scroll */\n disabledScroll?: boolean;\n}\n\nexport interface IDataTableRowProps extends IBoxProps {\n /** Theme for row */\n theme?: DataTableTheme;\n /** Displays row as active/hover */\n active?: boolean;\n}\n\nexport interface IDataTableCellProps extends IFlexProps {\n /** Unique name column or columns separated by / */\n name: string;\n /** Theme for cell */\n theme?: DataTableTheme;\n}\n\nfunction setBorderGroupColumns(columns: Column[], side?: string) {\n const firstColumn = columns[0];\n const lastColumn = columns[columns.length - 1];\n if (firstColumn && (!side || side === 'left')) {\n firstColumn.borderLeft = true;\n if (firstColumn.columns) {\n setBorderGroupColumns(firstColumn.columns, 'left');\n }\n }\n if (lastColumn && (!side || side === 'right')) {\n lastColumn.borderRight = true;\n if (lastColumn.columns) {\n setBorderGroupColumns(lastColumn.columns, 'right');\n }\n }\n}\n\nclass RootDefinitionTable extends Component<AsProps> {\n static displayName = 'DefinitionTable';\n\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n use: 'primary',\n uniqueKey: 'id',\n sort: [],\n data: [],\n } as AsProps;\n\n columns: Column[] = [];\n\n tableRef = React.createRef<HTMLElement>();\n scrollBodyRef: null | ReturnType<ReturnType<typeof syncScroll>> = null;\n scrollHeadRef: null | ReturnType<ReturnType<typeof syncScroll>> = null;\n\n constructor(props: AsProps) {\n super(props);\n\n const createRef = syncScroll();\n // first create body ref for master scroll\n this.scrollBodyRef = createRef('body');\n this.scrollHeadRef = createRef('head');\n }\n\n handlerSortClick = (name: string, event: React.MouseEvent) => {\n const column = this.columns.find((column) => column.name === name)!;\n return fire(\n this,\n 'onSortChange',\n [\n column.name,\n column.active ? REVERSED_SORT_DIRECTION[column.sortDirection] : column.sortDirection,\n ],\n event,\n );\n };\n\n handlerResize = () => {\n this.forceUpdate();\n };\n\n scrollToUp = () => {\n this.tableRef?.current?.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n behavior: 'smooth',\n });\n };\n\n setVarStyle(columns: Column[]) {\n for (const column of columns) {\n if (column.setVar) {\n this.tableRef.current?.style.setProperty(column.varWidth, `${column.width}px`);\n }\n }\n }\n\n childrenToColumns(\n children: React.ReactNode,\n options: { fixed?: 'left' | 'right' } = { fixed: undefined },\n ) {\n const { sort } = this.asProps;\n const columnsChildren: Column[] = [];\n React.Children.forEach(children, (child) => {\n if (!React.isValidElement(child)) return;\n if (child.type !== DefinitionTable.Column) return;\n\n let {\n children,\n name,\n fixed = options.fixed,\n resizable,\n sortable,\n flex,\n vBorders,\n active,\n ...props\n } = child.props as Column['props'];\n const lastColumnChildren = columnsChildren[columnsChildren.length - 1];\n const isGroup = !name;\n let columns: Column[] | undefined;\n\n if (isGroup) {\n columns = this.childrenToColumns(children, { fixed });\n active = typeof active === 'boolean' ? active : columns.some((c) => c.active);\n\n if (vBorders) {\n setBorderGroupColumns(columns);\n }\n\n name = flattenColumns(columns)\n .map(({ name }) => name)\n .join('/');\n if (!columns.length) return;\n children = React.Children.toArray(children).filter(\n (child) => !(React.isValidElement(child) && child.type === DefinitionTable.Column),\n );\n }\n\n const column = this.columns.find((column) => column.name === name);\n const columnChildren = {\n get width() {\n // @ts-ignore\n return this.props.ref.current?.getBoundingClientRect().width || 0;\n },\n name,\n varWidth: createCssVarForWidth(name),\n setVar: flex !== 'inherit',\n fixed,\n resizable,\n active: typeof active === 'boolean' ? active : sort[0] === name,\n sortable,\n borderLeft: lastColumnChildren?.borderRight === true ? false : vBorders,\n borderRight: vBorders,\n sortDirection:\n sort[0] === name\n ? sort[1]\n : column?.sortDirection ||\n (typeof sortable == 'string' ? sortable : DEFAULT_SORT_DIRECTION),\n props: {\n name,\n flex: flex === 'inherit' ? undefined : flex,\n ...props,\n // @ts-ignore\n forwardRef: child.ref,\n children,\n ref: column?.props?.ref || React.createRef(),\n },\n parentColumns: [],\n } as unknown as Column;\n\n if (columns) {\n columnChildren.columns = columns;\n columns.forEach((column) => column.parentColumns.unshift(columnChildren));\n }\n columnsChildren.push(columnChildren);\n });\n return columnsChildren;\n }\n\n getHeadProps(props: HeadAsProps) {\n const { use, uid } = this.asProps;\n const columnsChildren = this.childrenToColumns(props.children);\n\n this.columns = flattenColumns(columnsChildren);\n return {\n $onSortClick: callAllEventHandlers(this.handlerSortClick, this.scrollToUp),\n columnsChildren,\n use,\n onResize: this.handlerResize,\n $scrollRef: this.scrollHeadRef,\n uid,\n };\n }\n\n getBodyProps(props: BodyAsProps) {\n const { data, use, uniqueKey, uid } = this.asProps;\n const cellPropsLayers: { [columnName: string]: PropsLayer[] } = {};\n const rowPropsLayers: PropsLayer[] = [];\n\n React.Children.forEach(props.children, (child) => {\n if (React.isValidElement(child)) {\n const { name, children, ...other } = child.props as {\n name?: string;\n children?: PseudoChildPropsGetter;\n } & { [propName: string]: unknown };\n if (child.type === DefinitionTable.Cell && name) {\n name.split('/').forEach((name) => {\n cellPropsLayers[name] = cellPropsLayers[name] || [];\n cellPropsLayers[name].push({\n ...other,\n childrenPropsGetter: children,\n });\n });\n }\n if (child.type === DefinitionTable.Row) {\n rowPropsLayers.push({\n ...other,\n childrenPropsGetter: children,\n });\n }\n }\n });\n\n return {\n columns: this.columns,\n rows: this.dataToRows(data, cellPropsLayers),\n uniqueKey,\n use,\n rowPropsLayers,\n $scrollRef: this.scrollBodyRef,\n uid,\n };\n }\n\n dataToRows(data: RowData[], cellPropsLayers: { [columnName: string]: PropsLayer[] }) {\n const parseData = (data: RowData[], exclude: { [columnName: string]: true }) =>\n data.map((row) => {\n const groupByName: {\n [columnName: string]: {\n groupedColumns: string[];\n groupData: { [columnName: string]: unknown };\n };\n } = {};\n const columnsWithoutRowGroup: { [columnname: string]: true } = {};\n for (const rowKey in row) {\n const columnNames = rowKey.split('/');\n if (columnNames.length >= 2) {\n for (const column of columnNames) {\n groupByName[column] = {\n groupedColumns: columnNames,\n groupData: row[rowKey] as { [columnName: string]: unknown },\n };\n columnsWithoutRowGroup[column] = true;\n }\n } else {\n columnsWithoutRowGroup[rowKey] = true;\n }\n }\n\n const rowsGroup = row[ROW_GROUP] || [];\n const rowsGroupedNames = Object.fromEntries(\n rowsGroup\n .map((subRow) => Object.keys(subRow))\n .flat()\n .map((key) => key.split('/'))\n .flat()\n .map((key) => [key, true]),\n );\n\n let isGroup = false;\n\n const cells: NestedCells = this.columns\n .map((column) => {\n if (groupByName[column.name]) {\n const { groupedColumns, groupData } = groupByName[column.name];\n if (groupedColumns[0] === column.name) {\n return {\n name: groupedColumns.join('/'),\n cssVar: groupedColumns.map(createCssVarForWidth),\n fixed: column.fixed,\n data: groupData,\n cellPropsLayers: cellPropsLayers[column.name] || [],\n };\n }\n } else if (column.name in row) {\n return {\n name: column.name,\n cssVar: column.varWidth,\n fixed: column.fixed,\n data: row[column.name],\n cellPropsLayers: cellPropsLayers[column.name] || [],\n };\n } else if (!isGroup && rowsGroupedNames[column.name]) {\n // TODO: make it work not only with first group\n isGroup = true;\n return parseData(rowsGroup, {\n ...exclude,\n ...columnsWithoutRowGroup,\n });\n } else if (!exclude[column.name] && !rowsGroupedNames[column.name]) {\n // add empty cell if it is not present in data\n return {\n name: column.name,\n cssVar: column.varWidth,\n fixed: column.fixed,\n data: null,\n cellPropsLayers: cellPropsLayers[column.name] || [],\n };\n }\n })\n .filter((column) => column)\n .map((column) => column!);\n\n cells.flatRowData = row;\n return cells;\n });\n\n return parseData(data, {});\n }\n\n componentDidUpdate() {\n this.setVarStyle(this.columns);\n }\n\n render() {\n const SDataTable = Root;\n const { Children, styles, data } = this.asProps;\n\n return sstyled(styles)(\n <SDataTable\n render={Box}\n __excludeProps={['data']}\n ref={this.tableRef}\n role=\"table\"\n aria-rowcount={(data ?? []).length}\n >\n <Children />\n </SDataTable>,\n );\n }\n}\n\ninterface IDataTableCtx {\n getHeadProps: PropGetterFn;\n getBodyProps: PropGetterFn;\n}\n\nfunction ComponentDefinition() {\n return null;\n}\n\nconst DefinitionTable = createComponent(\n RootDefinitionTable,\n {\n Head,\n Body,\n Column: ComponentDefinition,\n Cell: ComponentDefinition,\n Row: ComponentDefinition,\n },\n {},\n) as (<T>(props: CProps<IDataTableProps & T, IDataTableCtx>) => ReturnEl) & {\n Head: <T>(props: IDataTableHeadProps & T) => ReturnEl;\n Body: <T>(props: IDataTableBodyProps & T) => ReturnEl;\n Column: <T>(props: IDataTableColumnProps & T) => ReturnEl;\n Cell: <T>(props: ChildRenderFn<IDataTableCellProps & T>) => ReturnEl;\n Row: <T>(props: ChildRenderFn<IDataTableRowProps & T>) => ReturnEl;\n};\n\nexport { ROW_GROUP };\nexport default DefinitionTable;\n"],"mappings":"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"}
package/lib/es6/Head.js CHANGED
@@ -20,12 +20,12 @@ import logger from '@semcore/utils/lib/logger';
20
20
  import { setRef } from '@semcore/utils/lib/ref';
21
21
  import 'resize-observer-polyfill';
22
22
  /*__reshadow-styles__:"./style/scroll-area.shadow.css"*/
23
- var scrollStyles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SShadowHorizontal_1y72g_gg_:before{left:var(--left_1y72g)!important}.___SShadowHorizontal_1y72g_gg_:after{right:var(--right_1y72g)!important}.___SContainer_1y72g_gg_.__disabledScroll_1y72g_gg_{overflow:visible}" /*__inner_css_end__*/, "1y72g_gg_") /*__reshadow_css_end__*/, {
24
- "__SShadowHorizontal": "___SShadowHorizontal_1y72g_gg_",
25
- "--left": "--left_1y72g",
26
- "--right": "--right_1y72g",
27
- "__SContainer": "___SContainer_1y72g_gg_",
28
- "_disabledScroll": "__disabledScroll_1y72g_gg_"
23
+ var scrollStyles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SShadowHorizontal_jk9yh_gg_:before{left:var(--left_jk9yh)!important}.___SShadowHorizontal_jk9yh_gg_:after{right:var(--right_jk9yh)!important}.___SContainer_jk9yh_gg_.__disabledScroll_jk9yh_gg_{overflow:visible}" /*__inner_css_end__*/, "jk9yh_gg_") /*__reshadow_css_end__*/, {
24
+ "__SShadowHorizontal": "___SShadowHorizontal_jk9yh_gg_",
25
+ "--left": "--left_jk9yh",
26
+ "--right": "--right_jk9yh",
27
+ "__SContainer": "___SContainer_jk9yh_gg_",
28
+ "_disabledScroll": "__disabledScroll_jk9yh_gg_"
29
29
  });
30
30
  var SORTING_ICON = {
31
31
  desc: SortDesc,
@@ -83,7 +83,8 @@ var Head = /*#__PURE__*/function (_Component) {
83
83
  var _this$asProps = this.asProps,
84
84
  styles = _this$asProps.styles,
85
85
  use = _this$asProps.use,
86
- hidden = _this$asProps.hidden;
86
+ hidden = _this$asProps.hidden,
87
+ uid = _this$asProps.uid;
87
88
  var SColumn = Flex;
88
89
  var SHead = Box;
89
90
  var SSortWrapper = 'div';
@@ -106,7 +107,9 @@ var Head = /*#__PURE__*/function (_Component) {
106
107
  }
107
108
  return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SColumn, _ref2.cn("SColumn", _objectSpread(_objectSpread({
108
109
  "role": isGroup ? undefined : 'columnheader',
110
+ "scope": isGroup ? 'colgroup' : 'col',
109
111
  "key": column.name,
112
+ "id": "igc-table-".concat(uid, "-").concat(column.name),
110
113
  "use": use,
111
114
  "fixed": column.fixed,
112
115
  "resizable": column.resizable,
@@ -168,7 +171,8 @@ var Head = /*#__PURE__*/function (_Component) {
168
171
  ref: $scrollRef,
169
172
  disabledScroll: disabledScroll
170
173
  }, /*#__PURE__*/React.createElement(SHead, _ref3.cn("SHead", _objectSpread({}, _assignProps({
171
- "role": "row"
174
+ "role": "row",
175
+ "aria-rowindex": "1"
172
176
  }, _ref))), this.renderColumns(columnsChildren, 100 / this.columns.length)))), Children.origin);
173
177
  }
174
178
  }]);