@semcore/data-table 4.40.3 → 4.40.5
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.
- package/CHANGELOG.md +12 -0
- package/lib/cjs/Body.js +7 -2
- package/lib/cjs/Body.js.map +1 -1
- package/lib/cjs/DataTable.js +39 -37
- package/lib/cjs/DataTable.js.map +1 -1
- package/lib/es6/Body.js +7 -2
- package/lib/es6/Body.js.map +1 -1
- package/lib/es6/DataTable.js +39 -37
- package/lib/es6/DataTable.js.map +1 -1
- package/lib/types/Body.d.ts +1 -0
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## [4.40.5] - 2024-06-25
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- `catch` for errors in animation promises in headers.
|
|
10
|
+
|
|
11
|
+
## [4.40.4] - 2024-06-14
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Possibility to pass `scrollContainerRef` property to `Datatable.Body` and set it to a real table body container - `Scroll.Containter`.
|
|
16
|
+
|
|
5
17
|
## [4.40.3] - 2024-06-13
|
|
6
18
|
|
|
7
19
|
### Fixed
|
package/lib/cjs/Body.js
CHANGED
|
@@ -343,7 +343,8 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
343
343
|
onScroll = _this$asProps3.onScroll,
|
|
344
344
|
disabledScroll = _this$asProps3.disabledScroll,
|
|
345
345
|
renderRows = _this$asProps3.renderRows,
|
|
346
|
-
animationsDisabled = _this$asProps3.animationsDisabled
|
|
346
|
+
animationsDisabled = _this$asProps3.animationsDisabled,
|
|
347
|
+
scrollContainerRef = _this$asProps3.scrollContainerRef;
|
|
347
348
|
var columnsInitialized = columns.reduce(function (sum, _ref10) {
|
|
348
349
|
var width = _ref10.width;
|
|
349
350
|
return sum + width;
|
|
@@ -371,6 +372,10 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
371
372
|
if (disabledScroll) {
|
|
372
373
|
return /*#__PURE__*/_react["default"].createElement(SBodyWrapper, null, body);
|
|
373
374
|
}
|
|
375
|
+
var scrollContainerRefs = [$scrollRef, this.scrollContainerRef];
|
|
376
|
+
if (scrollContainerRef) {
|
|
377
|
+
scrollContainerRefs.push(scrollContainerRef);
|
|
378
|
+
}
|
|
374
379
|
return /*#__PURE__*/_react["default"].createElement(SBodyWrapper, _ref5.cn("SBodyWrapper", {}), /*#__PURE__*/_react["default"].createElement(_scrollArea["default"], _ref5.cn("ScrollArea", {
|
|
375
380
|
"shadow": true,
|
|
376
381
|
"leftOffset": offsetLeftSum,
|
|
@@ -378,7 +383,7 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
378
383
|
"onResize": (0, _assignProps2.callAllEventHandlers)(onResize, this.handleScrollAreaResize),
|
|
379
384
|
"onScroll": (0, _assignProps2.callAllEventHandlers)(onScroll, this.handleScrollAreaScroll)
|
|
380
385
|
}), /*#__PURE__*/_react["default"].createElement(_scrollArea["default"].Container, {
|
|
381
|
-
ref:
|
|
386
|
+
ref: _ref11.forkRef.apply(void 0, scrollContainerRefs),
|
|
382
387
|
role: "rowgroup",
|
|
383
388
|
focusRingTopOffset: '3px'
|
|
384
389
|
}, body), /*#__PURE__*/_react["default"].createElement("div", _ref5.cn("div", {
|
package/lib/cjs/Body.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Body.js","names":["_core","require","_react","_interopRequireDefault","_flexBox","_scrollArea","_utils","_assignProps2","_interopRequireWildcard","_rafTrottle","_ref11","_canUseDOM","_Head","_cssToIntDefault","_excluded","_excluded2","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","displayContents","display","Body","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","rowHeight","undefined","scrollAreaHeight","scrollOffset","React","createRef","virtualScroll","asProps","rowHeightFromProps","_typeof2","state","trottle","entries","contentRect","height","setState","oldState","event","_ref6","target","scrollTop","firstRowRef","current","canUseDOM","firstRowResizeObserver","ResizeObserver","handleFirstRowResize","observe","forceUpdate","_createClass2","key","value","renderCells","rowData","dataIndex","_this2","SCell","Flex","_this$asProps","styles","columns","use","uid","cellIndex","isArray","_ref2","SGroupCell","sstyled","createElement","cn","renderRows","_ref3","_column$parentColumns","_column$props","_column$props2","_column$props3","_column$props4","nameParts","split","firstName","lastName","firstColumn","find","c","lastColumn","column","_getFixedStyle","getFixedStyle","_getFixedStyle2","_slicedToArray2","parentColumnNames","parentColumns","vars","cssVar","columnWMin","props","wMin","columnWMax","wMax","children","Fragment","justifyContent","alignItems","borderLeft","borderRight","style","width","join","minWidth","maxWidth","sortable","SORT_ICON_WIDTH","cssToIntDefault","toString","_iterator","_createForOfIteratorHelper2","cellPropsLayers","_step","s","n","done","cellPropLayer","_cellPropLayer$childr","childrenPropsGetter","p","other","_objectWithoutProperties2","propsCell","assignProps","err","e","f","headerIds","_toConsumableArray2","filter","Boolean","_objectSpread2","fixed","theme","renderRow","_ref7","_ref4","topOffset","_ref7$nested","nested","SRow","Box","_this$asProps2","rowPropsLayers","uniqueKey","flatRowData","String","needToMeasureHeight","active","positioned","top","ref","_iterator2","_step2","rowPropsLayer","_rowPropsLayer$childr","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","getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","holdHeight","requestAnimationFrame","setupRowSizeObserver","body","handleBodyTransitionEnd","bind","callAllEventHandlers","handleScrollAreaResize","handleScrollAreaScroll","Container","forkRef","scrollContainerRef","role","focusRingTopOffset","Bar","orientation","position","bottom","w","zIndex","origin","Component","_default","exports"],"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 { forkRef } from '@semcore/utils/lib/ref';\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 scrollContainerRef = React.createRef<HTMLDivElement>();\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 handleBodyTransitionEnd = trottle(() => {\n /**\n * We need this to recalculate ScrollArea sizes after end of transition\n */\n this.forceUpdate();\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\n render={Box}\n animationsDisabled={animationsDisabled}\n onTransitionEnd={this.handleBodyTransitionEnd}\n >\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\n ref={forkRef($scrollRef, this.scrollContainerRef)}\n role='rowgroup'\n focusRingTopOffset={'3px'}\n >\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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"}
|
|
1
|
+
{"version":3,"file":"Body.js","names":["_core","require","_react","_interopRequireDefault","_flexBox","_scrollArea","_utils","_assignProps2","_interopRequireWildcard","_rafTrottle","_ref11","_canUseDOM","_Head","_cssToIntDefault","_excluded","_excluded2","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","displayContents","display","Body","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","rowHeight","undefined","scrollAreaHeight","scrollOffset","React","createRef","virtualScroll","asProps","rowHeightFromProps","_typeof2","state","trottle","entries","contentRect","height","setState","oldState","event","_ref6","target","scrollTop","firstRowRef","current","canUseDOM","firstRowResizeObserver","ResizeObserver","handleFirstRowResize","observe","forceUpdate","_createClass2","key","value","renderCells","rowData","dataIndex","_this2","SCell","Flex","_this$asProps","styles","columns","use","uid","cellIndex","isArray","_ref2","SGroupCell","sstyled","createElement","cn","renderRows","_ref3","_column$parentColumns","_column$props","_column$props2","_column$props3","_column$props4","nameParts","split","firstName","lastName","firstColumn","find","c","lastColumn","column","_getFixedStyle","getFixedStyle","_getFixedStyle2","_slicedToArray2","parentColumnNames","parentColumns","vars","cssVar","columnWMin","props","wMin","columnWMax","wMax","children","Fragment","justifyContent","alignItems","borderLeft","borderRight","style","width","join","minWidth","maxWidth","sortable","SORT_ICON_WIDTH","cssToIntDefault","toString","_iterator","_createForOfIteratorHelper2","cellPropsLayers","_step","s","n","done","cellPropLayer","_cellPropLayer$childr","childrenPropsGetter","p","other","_objectWithoutProperties2","propsCell","assignProps","err","e","f","headerIds","_toConsumableArray2","filter","Boolean","_objectSpread2","fixed","theme","renderRow","_ref7","_ref4","topOffset","_ref7$nested","nested","SRow","Box","_this$asProps2","rowPropsLayers","uniqueKey","flatRowData","String","needToMeasureHeight","active","positioned","top","ref","_iterator2","_step2","rowPropsLayer","_rowPropsLayer$childr","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","scrollContainerRef","columnsInitialized","reduce","sum","_ref10","_getScrollOffsetValue","getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","holdHeight","requestAnimationFrame","setupRowSizeObserver","body","handleBodyTransitionEnd","bind","scrollContainerRefs","push","callAllEventHandlers","handleScrollAreaResize","handleScrollAreaScroll","Container","forkRef","role","focusRingTopOffset","Bar","orientation","position","bottom","w","zIndex","origin","Component","_default","exports"],"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 { forkRef } from '@semcore/utils/lib/ref';\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 scrollContainerRef: React.Ref<HTMLDivElement>;\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 scrollContainerRef = React.createRef<HTMLDivElement>();\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 handleBodyTransitionEnd = trottle(() => {\n /**\n * We need this to recalculate ScrollArea sizes after end of transition\n */\n this.forceUpdate();\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 scrollContainerRef,\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\n render={Box}\n animationsDisabled={animationsDisabled}\n onTransitionEnd={this.handleBodyTransitionEnd}\n >\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 const scrollContainerRefs = [$scrollRef, this.scrollContainerRef];\n if (scrollContainerRef) {\n scrollContainerRefs.push(scrollContainerRef);\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\n ref={forkRef(...scrollContainerRefs)}\n role='rowgroup'\n focusRingTopOffset={'3px'}\n >\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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"}
|
package/lib/cjs/DataTable.js
CHANGED
|
@@ -29,43 +29,43 @@ var _uniqueID = _interopRequireDefault(require("@semcore/utils/lib/uniqueID"));
|
|
|
29
29
|
var _excluded = ["children", "name", "fixed", "resizable", "sortable", "flex", "vBorders", "active"],
|
|
30
30
|
_excluded2 = ["name", "children"];
|
|
31
31
|
/*__reshadow-styles__:"./style/data-table.shadow.css"*/
|
|
32
|
-
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SColumn_360zg_gg_.__sortable_360zg_gg_._justifyContent_right_360zg_gg_.__active_360zg_gg_ .___SSortWrapper_360zg_gg_,.___SDataTable_360zg_gg_,.___SHeadWrapper_360zg_gg_{position:relative}.___SDataTable_360zg_gg_.__compact_360zg_gg_ .___SCell_360zg_gg_,.___SDataTable_360zg_gg_.__compact_360zg_gg_ .___SColumn_360zg_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_360zg_gg_.__animationsDisabled_360zg_gg_ .___SColumn_360zg_gg_{transition:none}.___SHeadWrapper_360zg_gg_.__sticky_360zg_gg_{position:sticky;top:0;z-index:2}.___SHead_360zg_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_360zg_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_360zg_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_360zg_gg_.__hidden_360zg_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_360zg_gg_._use_primary_360zg_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_360zg_gg_._use_secondary_360zg_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_360zg_gg_.__group_360zg_gg_.__use_360zg_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_360zg_gg_.__groupHead_360zg_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_360zg_gg_.__sortable_360zg_gg_{cursor:pointer}.___SColumn_360zg_gg_.__sortable_360zg_gg_._use_primary_360zg_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_._use_primary_360zg_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_360zg_gg_.__sortable_360zg_gg_._justifyContent_right_360zg_gg_._active_false_360zg_gg_:focus .___SSortWrapper_360zg_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_._justifyContent_right_360zg_gg_._active_false_360zg_gg_:hover .___SSortWrapper_360zg_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_360zg_gg_.__sortable_360zg_gg_.__active_360zg_gg_ .___SSortWrapper_360zg_gg_,.___SColumn_360zg_gg_.__sortable_360zg_gg_:focus .___SSortWrapper_360zg_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_:hover .___SSortWrapper_360zg_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_360zg_gg_.__sortable_360zg_gg_.__active_360zg_gg_ .___SSortWrapper_360zg_gg_:before,.___SColumn_360zg_gg_.__sortable_360zg_gg_:focus .___SSortIcon_360zg_gg_,.___SColumn_360zg_gg_.__sortable_360zg_gg_:focus .___SSortWrapper_360zg_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_:hover .___SSortWrapper_360zg_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_:hover .___SSortIcon_360zg_gg_{display:block;opacity:1}}.___SColumn_360zg_gg_._use_primary_360zg_gg_.__active_360zg_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_360zg_gg_.__active_360zg_gg_ .___SSortIcon_360zg_gg_{display:block;opacity:1}.___SColumn_360zg_gg_.__resizable_360zg_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_360zg_gg_.__resizable_360zg_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_360zg_gg_.__resizable_360zg_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_360zg_gg_.__fixed_360zg_gg_{position:sticky;z-index:2}.___SCell_360zg_gg_.__borderLeft_360zg_gg_,.___SColumn_360zg_gg_.__borderLeft_360zg_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_360zg_gg_.__borderRight_360zg_gg_,.___SColumn_360zg_gg_.__borderRight_360zg_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_360zg_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_360zg_gg_,.___SSortWrapper_360zg_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_360zg_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_360zg_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_360zg_gg_._use_primary_360zg_gg_ .___SSortWrapper_360zg_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_360zg_gg_._use_secondary_360zg_gg_ .___SSortWrapper_360zg_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_360zg_gg_{position:relative}.___SBody_360zg_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_360zg_gg_{display:flex;flex-direction:row;position:relative}.___SRow_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_muted_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_360zg_gg_._theme_muted_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_360zg_gg_._theme_muted_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_muted_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_muted_360zg_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_360zg_gg_._theme_info_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_360zg_gg_._theme_info_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_360zg_gg_._theme_info_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_info_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_info_360zg_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_360zg_gg_._theme_success_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_360zg_gg_._theme_success_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_360zg_gg_._theme_success_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_success_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_success_360zg_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_360zg_gg_._theme_warning_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_360zg_gg_._theme_warning_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_360zg_gg_._theme_warning_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_warning_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_warning_360zg_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_360zg_gg_._theme_danger_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_360zg_gg_._theme_danger_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_360zg_gg_._theme_danger_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_danger_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_danger_360zg_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_360zg_gg_.__positioned_360zg_gg_{position:absolute}.___SBody_360zg_gg_.__animationsDisabled_360zg_gg_ .___SCell_360zg_gg_{transition:none}.___SCell_360zg_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_360zg_gg_._use_primary_360zg_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_360zg_gg_._use_secondary_360zg_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_360zg_gg_.__fixed_360zg_gg_{position:sticky;z-index:1}.___SCell_360zg_gg_._theme_muted_360zg_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_360zg_gg_._theme_info_360zg_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_360zg_gg_._theme_success_360zg_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_360zg_gg_._theme_warning_360zg_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_360zg_gg_._theme_danger_360zg_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SHeightHold_360zg_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "360zg_gg_") /*__reshadow_css_end__*/, {
|
|
33
|
-
"__SDataTable": "
|
|
34
|
-
"__SHeadWrapper": "
|
|
35
|
-
"_sticky": "
|
|
36
|
-
"__SHead": "
|
|
37
|
-
"__SColumn": "
|
|
38
|
-
"_hidden": "
|
|
39
|
-
"_use_primary": "
|
|
40
|
-
"_use_secondary": "
|
|
41
|
-
"_group": "
|
|
42
|
-
"_use": "
|
|
43
|
-
"_groupHead": "
|
|
44
|
-
"_active": "
|
|
45
|
-
"__SSortIcon": "
|
|
46
|
-
"_fixed": "
|
|
47
|
-
"_borderLeft": "
|
|
48
|
-
"__SCell": "
|
|
49
|
-
"_borderRight": "
|
|
50
|
-
"__SSortWrapper": "
|
|
51
|
-
"__SBodyWrapper": "
|
|
52
|
-
"__SBody": "
|
|
53
|
-
"__SRow": "
|
|
54
|
-
"_theme": "
|
|
55
|
-
"__SGroupCell": "
|
|
56
|
-
"_theme_muted": "
|
|
57
|
-
"_theme_info": "
|
|
58
|
-
"_theme_success": "
|
|
59
|
-
"_theme_warning": "
|
|
60
|
-
"_theme_danger": "
|
|
61
|
-
"_positioned": "
|
|
62
|
-
"_animationsDisabled": "
|
|
63
|
-
"__SHeightHold": "
|
|
64
|
-
"_compact": "
|
|
65
|
-
"_sortable": "
|
|
66
|
-
"_justifyContent_right": "
|
|
67
|
-
"_active_false": "
|
|
68
|
-
"_resizable": "
|
|
32
|
+
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._justifyContent_right_c9hd1_gg_.__active_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_,.___SDataTable_c9hd1_gg_,.___SHeadWrapper_c9hd1_gg_{position:relative}.___SDataTable_c9hd1_gg_.__compact_c9hd1_gg_ .___SCell_c9hd1_gg_,.___SDataTable_c9hd1_gg_.__compact_c9hd1_gg_ .___SColumn_c9hd1_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_c9hd1_gg_.__animationsDisabled_c9hd1_gg_ .___SColumn_c9hd1_gg_{transition:none}.___SHeadWrapper_c9hd1_gg_.__sticky_c9hd1_gg_{position:sticky;top:0;z-index:2}.___SHead_c9hd1_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_c9hd1_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_c9hd1_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_c9hd1_gg_.__hidden_c9hd1_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_c9hd1_gg_._use_primary_c9hd1_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_c9hd1_gg_._use_secondary_c9hd1_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_c9hd1_gg_.__group_c9hd1_gg_.__use_c9hd1_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_c9hd1_gg_.__groupHead_c9hd1_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_{cursor:pointer}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._use_primary_c9hd1_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._use_primary_c9hd1_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._justifyContent_right_c9hd1_gg_._active_false_c9hd1_gg_:focus .___SSortWrapper_c9hd1_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._justifyContent_right_c9hd1_gg_._active_false_c9hd1_gg_:hover .___SSortWrapper_c9hd1_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_.__active_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_,.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:focus .___SSortWrapper_c9hd1_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:hover .___SSortWrapper_c9hd1_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_.__active_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_:before,.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:focus .___SSortIcon_c9hd1_gg_,.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:focus .___SSortWrapper_c9hd1_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:hover .___SSortWrapper_c9hd1_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:hover .___SSortIcon_c9hd1_gg_{display:block;opacity:1}}.___SColumn_c9hd1_gg_._use_primary_c9hd1_gg_.__active_c9hd1_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_c9hd1_gg_.__active_c9hd1_gg_ .___SSortIcon_c9hd1_gg_{display:block;opacity:1}.___SColumn_c9hd1_gg_.__resizable_c9hd1_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_c9hd1_gg_.__resizable_c9hd1_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_c9hd1_gg_.__resizable_c9hd1_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_c9hd1_gg_.__fixed_c9hd1_gg_{position:sticky;z-index:2}.___SCell_c9hd1_gg_.__borderLeft_c9hd1_gg_,.___SColumn_c9hd1_gg_.__borderLeft_c9hd1_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_c9hd1_gg_.__borderRight_c9hd1_gg_,.___SColumn_c9hd1_gg_.__borderRight_c9hd1_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_c9hd1_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_c9hd1_gg_,.___SSortWrapper_c9hd1_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_c9hd1_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_c9hd1_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_c9hd1_gg_._use_primary_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_c9hd1_gg_._use_secondary_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_c9hd1_gg_{position:relative}.___SBody_c9hd1_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_c9hd1_gg_{display:flex;flex-direction:row;position:relative}.___SRow_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_muted_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_info_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_success_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_warning_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_danger_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_c9hd1_gg_.__positioned_c9hd1_gg_{position:absolute}.___SBody_c9hd1_gg_.__animationsDisabled_c9hd1_gg_ .___SCell_c9hd1_gg_{transition:none}.___SCell_c9hd1_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_c9hd1_gg_._use_primary_c9hd1_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_c9hd1_gg_._use_secondary_c9hd1_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_c9hd1_gg_.__fixed_c9hd1_gg_{position:sticky;z-index:1}.___SCell_c9hd1_gg_._theme_muted_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_c9hd1_gg_._theme_info_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_c9hd1_gg_._theme_success_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_c9hd1_gg_._theme_warning_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_c9hd1_gg_._theme_danger_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SHeightHold_c9hd1_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "c9hd1_gg_") /*__reshadow_css_end__*/, {
|
|
33
|
+
"__SDataTable": "___SDataTable_c9hd1_gg_",
|
|
34
|
+
"__SHeadWrapper": "___SHeadWrapper_c9hd1_gg_",
|
|
35
|
+
"_sticky": "__sticky_c9hd1_gg_",
|
|
36
|
+
"__SHead": "___SHead_c9hd1_gg_",
|
|
37
|
+
"__SColumn": "___SColumn_c9hd1_gg_",
|
|
38
|
+
"_hidden": "__hidden_c9hd1_gg_",
|
|
39
|
+
"_use_primary": "_use_primary_c9hd1_gg_",
|
|
40
|
+
"_use_secondary": "_use_secondary_c9hd1_gg_",
|
|
41
|
+
"_group": "__group_c9hd1_gg_",
|
|
42
|
+
"_use": "__use_c9hd1_gg_",
|
|
43
|
+
"_groupHead": "__groupHead_c9hd1_gg_",
|
|
44
|
+
"_active": "__active_c9hd1_gg_",
|
|
45
|
+
"__SSortIcon": "___SSortIcon_c9hd1_gg_",
|
|
46
|
+
"_fixed": "__fixed_c9hd1_gg_",
|
|
47
|
+
"_borderLeft": "__borderLeft_c9hd1_gg_",
|
|
48
|
+
"__SCell": "___SCell_c9hd1_gg_",
|
|
49
|
+
"_borderRight": "__borderRight_c9hd1_gg_",
|
|
50
|
+
"__SSortWrapper": "___SSortWrapper_c9hd1_gg_",
|
|
51
|
+
"__SBodyWrapper": "___SBodyWrapper_c9hd1_gg_",
|
|
52
|
+
"__SBody": "___SBody_c9hd1_gg_",
|
|
53
|
+
"__SRow": "___SRow_c9hd1_gg_",
|
|
54
|
+
"_theme": "__theme_c9hd1_gg_",
|
|
55
|
+
"__SGroupCell": "___SGroupCell_c9hd1_gg_",
|
|
56
|
+
"_theme_muted": "_theme_muted_c9hd1_gg_",
|
|
57
|
+
"_theme_info": "_theme_info_c9hd1_gg_",
|
|
58
|
+
"_theme_success": "_theme_success_c9hd1_gg_",
|
|
59
|
+
"_theme_warning": "_theme_warning_c9hd1_gg_",
|
|
60
|
+
"_theme_danger": "_theme_danger_c9hd1_gg_",
|
|
61
|
+
"_positioned": "__positioned_c9hd1_gg_",
|
|
62
|
+
"_animationsDisabled": "__animationsDisabled_c9hd1_gg_",
|
|
63
|
+
"__SHeightHold": "___SHeightHold_c9hd1_gg_",
|
|
64
|
+
"_compact": "__compact_c9hd1_gg_",
|
|
65
|
+
"_sortable": "__sortable_c9hd1_gg_",
|
|
66
|
+
"_justifyContent_right": "_justifyContent_right_c9hd1_gg_",
|
|
67
|
+
"_active_false": "_active_false_c9hd1_gg_",
|
|
68
|
+
"_resizable": "__resizable_c9hd1_gg_"
|
|
69
69
|
});
|
|
70
70
|
var reversedSortDirection = {
|
|
71
71
|
desc: 'asc',
|
|
@@ -160,6 +160,8 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
160
160
|
} finally {
|
|
161
161
|
_iterator.f();
|
|
162
162
|
}
|
|
163
|
+
})["catch"](function (err) {
|
|
164
|
+
console.error(err);
|
|
163
165
|
});
|
|
164
166
|
}
|
|
165
167
|
}, {
|
package/lib/cjs/DataTable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_syncScroll","_assignProps2","_fire","_utils","_Head","_Body","_uniqueID","_excluded","_excluded2","style","_index","sstyled","insert","reversedSortDirection","desc","asc","defaultSortDirection","ROW_GROUP","Symbol","exports","cssVarReg","createCssVarForWidth","name","concat","replace","setBorderGroupColumns","columns","side","firstColumn","lastColumn","length","borderLeft","borderRight","RootDefinitionTable","_Component","_inherits2","_super","_createSuper2","props","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","React","createRef","event","column","find","fire","active","sortDirection","forceUpdate","_this$tableRef","_this$tableRef$curren","tableRef","current","scrollIntoView","block","inline","behavior","syncScroll","scrollBodyRef","scrollHeadRef","_createClass2","key","value","setVarStyle","_this2","animations","flatMap","_column$props$ref$cur","_column$props$ref$cur2","ref","getAnimations","filter","a","undefined","animationPromise","Promise","resolve","all","map","animation","finished","then","_iterator","_createForOfIteratorHelper2","_step","s","n","done","setVar","_this2$tableRef$curre","setProperty","varWidth","width","err","e","f","childrenToColumns","children","_this3","options","arguments","fixed","sort","asProps","columnsChildren","Children","forEach","child","_column$props","isValidElement","type","DefinitionTable","Column","_ref3","_ref3$fixed","resizable","sortable","flex","vBorders","_objectWithoutProperties2","lastColumnChildren","isGroup","some","c","flattenColumns","_ref4","join","toArray","columnChildren","_this$props$ref$curre","getBoundingClientRect","_objectSpread2","forwardRef","parentColumns","unshift","push","getHeadProps","_this$asProps","use","uid","$onSortClick","callAllEventHandlers","handlerSortClick","scrollToUp","onResize","handlerResize","$scrollRef","getBodyProps","_this$asProps2","data","uniqueKey","cellPropsLayers","rowPropsLayers","_ref5","other","Cell","split","childrenPropsGetter","Row","rows","dataToRows","_this4","parseData","exclude","row","groupByName","columnsWithoutRowGroup","rowKey","columnNames","_iterator2","_step2","groupedColumns","groupData","rowsGroup","rowsGroupedNames","Object","fromEntries","subRow","keys","cells","_groupByName$column$n","cssVar","flatRowData","componentDidMount","componentDidUpdate","render","_ref","_ref2","SDataTable","Box","_this$asProps3","styles","createElement","cn","assignProps","Component","uniqueIDEnhancement","ComponentDefinition","createComponent","Head","Body","_default","wrapDataTable","wrapper","wrapDataTableRow","wrapDataTableCell"],"sources":["../../src/DataTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Property } from 'csstype';\nimport createComponent, {\n Component,\n PropGetterFn,\n Root,\n sstyled,\n UnknownProperties,\n Intergalactic,\n} from '@semcore/core';\nimport { Box, BoxProps, FlexProps } 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 reversedSortDirection: { [direction in SortDirection]: SortDirection } = {\n desc: 'asc',\n asc: 'desc',\n};\nconst defaultSortDirection: SortDirection = 'desc';\n\nconst ROW_GROUP = Symbol('ROW_GROUP');\n\nconst cssVarReg = /[:;\\W]/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\nexport type DataTableData = { [key: string]: unknown };\nexport type DataTableSort<Columns extends string | number | symbol = string> = [\n sortBy: Columns,\n sortDirection: 'desc' | 'asc',\n];\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\n/** @deprecated */\nexport interface IDataTableProps<\n DataTableData extends { [key: string]: any }[] = UnknownProperties[],\n> extends DataTableProps<DataTableData> {}\nexport type DataTableProps<DataTableData extends { [key: string]: any }[] = UnknownProperties[]> =\n BoxProps & {\n /** Table theme according to visual hierarchy on the page\n * @default primary\n * */\n use?: DataTableUse;\n /** Data for table */\n data?: DataTableData;\n /** Active sort object */\n sort?: DataTableSort<keyof DataTableData[0]>;\n /** Handler call when request will change sort */\n onSortChange?: (sort: DataTableSort<keyof DataTableData[0]>, e?: React.SyntheticEvent) => void;\n /** Field name in one data entity that is unique accross all dataset\n * @default id\n */\n uniqueKey?: keyof DataTableData[0];\n /** Make cells compact by changing left and right paddings to smaller ones*/\n compact?: boolean;\n };\n\n/** @deprecated */\nexport interface IDataTableHeadProps extends DataTableHeadProps, UnknownProperties {}\nexport type DataTableHeadProps = BoxProps & {\n /** Sticky table header\n * @deprecated\n * */\n sticky?: boolean;\n\n /** Hidden header */\n hidden?: boolean;\n\n /** Disabled scroll (as action) */\n disabledScroll?: boolean;\n\n /** Enable scroll bar element in header */\n withScrollBar?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableColumnProps extends DataTableColumnProps, UnknownProperties {}\nexport type DataTableColumnProps = FlexProps & {\n /** Unique column name */\n name?: string;\n /** Enable sorting for column. And if you are passing a string, you can also set the default sorting */\n sortable?: boolean | 'desc' | 'asc';\n /** Enable resize for column\n * @ignore */\n resizable?: boolean;\n /** Fix column on the left o right side of the table */\n fixed?: 'left' | 'right';\n /** Fields to control the size of the column */\n flex?: Property.Flex | 'inherit';\n /** Add vertical border to the column */\n vBorders?: boolean;\n /** Add vertical border to the right side of the cell */\n borderRight?: boolean;\n /** Add vertical border to the left side of the cell */\n borderLeft?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableBodyProps extends DataTableBodyProps, UnknownProperties {}\nexport type DataTableBodyProps = BoxProps & {\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 /** Allows to redefine rows renderning for a very deep and even fragile customization like building custom virtual scrolling */\n renderRows?: (props: {\n rows: DataTableRow[];\n columns: Column[];\n renderRow: (row: DataTableRow, details: { dataIndex: number }) => React.ReactNode;\n }) => React.ReactNode;\n /**\n * Called every time user scrolls area\n */\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /** Disabled scroll */\n disabledScroll?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableRowProps extends DataTableRowProps, UnknownProperties {}\nexport type DataTableRowProps = BoxProps & {\n /** Theme for row */\n theme?: DataTableTheme;\n /** Sets row state to active*/\n active?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableCellProps extends DataTableCellProps, UnknownProperties {}\nexport type DataTableCellProps<Name extends string = string> = FlexProps & {\n /** Unique name for column or columns separated by / */\n name: Name;\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 ? reversedSortDirection[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 const animations = columns\n .flatMap((column) => column.props.ref.current?.getAnimations?.())\n .filter((a) => a !== undefined) as Animation[];\n\n let animationPromise: Promise<Animation[] | void> = Promise.resolve();\n\n if (animations.length > 0) {\n animationPromise = Promise.all(\n animations.map((animation) => {\n return animation.finished;\n }),\n );\n }\n\n animationPromise.then(() => {\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\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 : defaultSortDirection),\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 .flatMap((subRow) => Object.keys(subRow))\n .flatMap((key) => key.split('/'))\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 componentDidMount() {\n this.setVarStyle(this.columns);\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\ntype DataTableCtx = {\n getHeadProps: PropGetterFn;\n getBodyProps: PropGetterFn;\n};\n\nfunction ComponentDefinition() {\n return null;\n}\n\ntype IntergalacticDataTableComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n DataTableProps<Data> & PropsExtending,\n DataTableCtx,\n never\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps>;\n\ntype IntergalacticDataTableRowComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableRowProps & {\n /**\n * That property is ONLY used for the component strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps>;\n\ntype IntergalacticDataTableCellComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[] = [],\n Name extends string = string,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableCellProps<Name> & {\n /**\n * That property is ONLY used for the componenct strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableCellProps>;\n\nconst DefinitionTable = createComponent(\n RootDefinitionTable,\n {\n Head,\n Body,\n Column: ComponentDefinition,\n Cell: ComponentDefinition,\n Row: ComponentDefinition,\n },\n {},\n) as IntergalacticDataTableComponent & {\n Head: Intergalactic.Component<'div', DataTableHeadProps>;\n Body: Intergalactic.Component<'div', DataTableBodyProps>;\n Column: Intergalactic.Component<'div', DataTableColumnProps>;\n Row: IntergalacticDataTableRowComponent;\n Cell: IntergalacticDataTableCellComponent;\n};\n\nexport { ROW_GROUP };\nexport default DefinitionTable;\n\nexport const wrapDataTable = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableRow = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableRowComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableRowComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableCell = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableCellComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableCellComponent<PropsExtending> => wrapper as any;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAEA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAFA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAUA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AASA,IAAAQ,KAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,KAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,SAAA,GAAAR,sBAAA,CAAAF,OAAA;AAA8D,IAAAW,SAAA;EAAAC,UAAA;AAAA;AAAA,IAAAC,KAAA,+BAAAC,MAAA,CAAAC,OAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAI9D,IAAMC,qBAAsE,GAAG;EAC7EC,IAAI,EAAE,KAAK;EACXC,GAAG,EAAE;AACP,CAAC;AACD,IAAMC,oBAAmC,GAAG,MAAM;AAElD,IAAMC,SAAS,GAAGC,MAAM,CAAC,WAAW,CAAC;AAACC,OAAA,CAAAF,SAAA,GAAAA,SAAA;AAEtC,IAAMG,SAAS,GAAG,SAAS;AAE3B,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIC,IAAY,EAAK;EAC7C,YAAAC,MAAA,CAAYD,IAAI,CAACE,OAAO,CAACJ,SAAS,EAAE,GAAG,CAAC;AAC1C,CAAC;AAoJD,SAASK,qBAAqBA,CAACC,OAAiB,EAAEC,IAAa,EAAE;EAC/D,IAAMC,WAAW,GAAGF,OAAO,CAAC,CAAC,CAAC;EAC9B,IAAMG,UAAU,GAAGH,OAAO,CAACA,OAAO,CAACI,MAAM,GAAG,CAAC,CAAC;EAC9C,IAAIF,WAAW,KAAK,CAACD,IAAI,IAAIA,IAAI,KAAK,MAAM,CAAC,EAAE;IAC7CC,WAAW,CAACG,UAAU,GAAG,IAAI;IAC7B,IAAIH,WAAW,CAACF,OAAO,EAAE;MACvBD,qBAAqB,CAACG,WAAW,CAACF,OAAO,EAAE,MAAM,CAAC;IACpD;EACF;EACA,IAAIG,UAAU,KAAK,CAACF,IAAI,IAAIA,IAAI,KAAK,OAAO,CAAC,EAAE;IAC7CE,UAAU,CAACG,WAAW,GAAG,IAAI;IAC7B,IAAIH,UAAU,CAACH,OAAO,EAAE;MACtBD,qBAAqB,CAACI,UAAU,CAACH,OAAO,EAAE,OAAO,CAAC;IACpD;EACF;AACF;AAAC,IAEKO,mBAAmB,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,mBAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,mBAAA;EAmBvB,SAAAA,oBAAYK,KAAc,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAP,mBAAA;IAC1BM,KAAA,GAAAH,MAAA,CAAAK,IAAA,OAAMH,KAAK;IAAE,IAAAI,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,cAPK,EAAE;IAAA,IAAAG,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,4BAEXK,iBAAK,CAACC,SAAS,EAAe;IAAA,IAAAH,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,oBACyB,IAAI;IAAA,IAAAG,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,oBACJ,IAAI;IAAA,IAAAG,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,uBAWnD,UAACjB,IAAY,EAAEwB,KAAuB,EAAK;MAC5D,IAAMC,MAAM,GAAGR,KAAA,CAAKb,OAAO,CAACsB,IAAI,CAAC,UAACD,MAAM;QAAA,OAAKA,MAAM,CAACzB,IAAI,KAAKA,IAAI;MAAA,EAAE;MACnE,OAAO,IAAA2B,gBAAI,MAAAN,uBAAA,aAAAJ,KAAA,GAET,cAAc,EACd,CACEQ,MAAM,CAACzB,IAAI,EACXyB,MAAM,CAACG,MAAM,GAAGrC,qBAAqB,CAACkC,MAAM,CAACI,aAAa,CAAC,GAAGJ,MAAM,CAACI,aAAa,CACnF,EACDL,KAAK,CACN;IACH,CAAC;IAAA,IAAAJ,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,oBAEe,YAAM;MACpBA,KAAA,CAAKa,WAAW,EAAE;IACpB,CAAC;IAAA,IAAAV,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,iBAEY,YAAM;MAAA,IAAAc,cAAA,EAAAC,qBAAA;MACjB,CAAAD,cAAA,GAAAd,KAAA,CAAKgB,QAAQ,cAAAF,cAAA,wBAAAC,qBAAA,GAAbD,cAAA,CAAeG,OAAO,cAAAF,qBAAA,uBAAtBA,qBAAA,CAAwBG,cAAc,CAAC;QACrCC,KAAK,EAAE,SAAS;QAChBC,MAAM,EAAE,SAAS;QACjBC,QAAQ,EAAE;MACZ,CAAC,CAAC;IACJ,CAAC;IA7BC,IAAMf,SAAS,GAAG,IAAAgB,sBAAU,GAAE;IAC9B;IACAtB,KAAA,CAAKuB,aAAa,GAAGjB,SAAS,CAAC,MAAM,CAAC;IACtCN,KAAA,CAAKwB,aAAa,GAAGlB,SAAS,CAAC,MAAM,CAAC;IAAC,OAAAN,KAAA;EACzC;EAAC,IAAAyB,aAAA,aAAA/B,mBAAA;IAAAgC,GAAA;IAAAC,KAAA,EA2BD,SAAAC,YAAYzC,OAAiB,EAAE;MAAA,IAAA0C,MAAA;MAC7B,IAAMC,UAAU,GAAG3C,OAAO,CACvB4C,OAAO,CAAC,UAACvB,MAAM;QAAA,IAAAwB,qBAAA,EAAAC,sBAAA;QAAA,QAAAD,qBAAA,GAAKxB,MAAM,CAACT,KAAK,CAACmC,GAAG,CAACjB,OAAO,cAAAe,qBAAA,wBAAAC,sBAAA,GAAxBD,qBAAA,CAA0BG,aAAa,cAAAF,sBAAA,uBAAvCA,sBAAA,CAAA/B,IAAA,CAAA8B,qBAAA,CAA2C;MAAA,EAAC,CAChEI,MAAM,CAAC,UAACC,CAAC;QAAA,OAAKA,CAAC,KAAKC,SAAS;MAAA,EAAgB;MAEhD,IAAIC,gBAA6C,GAAGC,OAAO,CAACC,OAAO,EAAE;MAErE,IAAIX,UAAU,CAACvC,MAAM,GAAG,CAAC,EAAE;QACzBgD,gBAAgB,GAAGC,OAAO,CAACE,GAAG,CAC5BZ,UAAU,CAACa,GAAG,CAAC,UAACC,SAAS,EAAK;UAC5B,OAAOA,SAAS,CAACC,QAAQ;QAC3B,CAAC,CAAC,CACH;MACH;MAEAN,gBAAgB,CAACO,IAAI,CAAC,YAAM;QAAA,IAAAC,SAAA,OAAAC,2BAAA,aACL7D,OAAO;UAAA8D,KAAA;QAAA;UAA5B,KAAAF,SAAA,CAAAG,CAAA,MAAAD,KAAA,GAAAF,SAAA,CAAAI,CAAA,IAAAC,IAAA,GAA8B;YAAA,IAAnB5C,MAAM,GAAAyC,KAAA,CAAAtB,KAAA;YACf,IAAInB,MAAM,CAAC6C,MAAM,EAAE;cAAA,IAAAC,qBAAA;cACjB,CAAAA,qBAAA,GAAAzB,MAAI,CAACb,QAAQ,CAACC,OAAO,cAAAqC,qBAAA,uBAArBA,qBAAA,CAAuBpF,KAAK,CAACqF,WAAW,CAAC/C,MAAM,CAACgD,QAAQ,KAAAxE,MAAA,CAAKwB,MAAM,CAACiD,KAAK,QAAK;YAChF;UACF;QAAC,SAAAC,GAAA;UAAAX,SAAA,CAAAY,CAAA,CAAAD,GAAA;QAAA;UAAAX,SAAA,CAAAa,CAAA;QAAA;MACH,CAAC,CAAC;IACJ;EAAC;IAAAlC,GAAA;IAAAC,KAAA,EAED,SAAAkC,kBACEC,QAAyB,EAEzB;MAAA,IAAAC,MAAA;MAAA,IADAC,OAAqC,GAAAC,SAAA,CAAA1E,MAAA,QAAA0E,SAAA,QAAA3B,SAAA,GAAA2B,SAAA,MAAG;QAAEC,KAAK,EAAE5B;MAAU,CAAC;MAE5D,IAAQ6B,IAAI,GAAK,IAAI,CAACC,OAAO,CAArBD,IAAI;MACZ,IAAME,eAAyB,GAAG,EAAE;MACpChE,iBAAK,CAACiE,QAAQ,CAACC,OAAO,CAACT,QAAQ,EAAE,UAACU,KAAK,EAAK;QAAA,IAAAC,aAAA;QAC1C,IAAI,eAACpE,iBAAK,CAACqE,cAAc,CAACF,KAAK,CAAC,EAAE;QAClC,IAAIA,KAAK,CAACG,IAAI,KAAKC,eAAe,CAACC,MAAM,EAAE;QAE3C,IAAAC,KAAA,GAUIN,KAAK,CAACzE,KAAK;UATb+D,QAAQ,GAAAgB,KAAA,CAARhB,QAAQ;UACR/E,IAAI,GAAA+F,KAAA,CAAJ/F,IAAI;UAAAgG,WAAA,GAAAD,KAAA,CACJZ,KAAK;UAALA,KAAK,GAAAa,WAAA,cAAGf,OAAO,CAACE,KAAK,GAAAa,WAAA;UACrBC,SAAS,GAAAF,KAAA,CAATE,SAAS;UACTC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;UACRC,IAAI,GAAAJ,KAAA,CAAJI,IAAI;UACJC,QAAQ,GAAAL,KAAA,CAARK,QAAQ;UACRxE,MAAM,GAAAmE,KAAA,CAANnE,MAAM;UACHZ,KAAK,OAAAqF,yBAAA,aAAAN,KAAA,EAAA9G,SAAA;QAEV,IAAMqH,kBAAkB,GAAGhB,eAAe,CAACA,eAAe,CAAC9E,MAAM,GAAG,CAAC,CAAC;QACtE,IAAM+F,OAAO,GAAG,CAACvG,IAAI;QACrB,IAAII,OAA6B;QAEjC,IAAImG,OAAO,EAAE;UACXnG,OAAO,GAAG4E,MAAI,CAACF,iBAAiB,CAACC,QAAQ,EAAE;YAAEI,KAAK,EAALA;UAAM,CAAC,CAAC;UACrDvD,MAAM,GAAG,OAAOA,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGxB,OAAO,CAACoG,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAC7E,MAAM;UAAA,EAAC;UAE7E,IAAIwE,QAAQ,EAAE;YACZjG,qBAAqB,CAACC,OAAO,CAAC;UAChC;UAEAJ,IAAI,GAAG,IAAA0G,qBAAc,EAACtG,OAAO,CAAC,CAC3BwD,GAAG,CAAC,UAAA+C,KAAA;YAAA,IAAG3G,IAAI,GAAA2G,KAAA,CAAJ3G,IAAI;YAAA,OAAOA,IAAI;UAAA,EAAC,CACvB4G,IAAI,CAAC,GAAG,CAAC;UACZ,IAAI,CAACxG,OAAO,CAACI,MAAM,EAAE;UACrBuE,QAAQ,GAAGzD,iBAAK,CAACiE,QAAQ,CAACsB,OAAO,CAAC9B,QAAQ,CAAC,CAAC1B,MAAM,CAChD,UAACoC,KAAK;YAAA,OAAK,EAAE,cAAAnE,iBAAK,CAACqE,cAAc,CAACF,KAAK,CAAC,IAAIA,KAAK,CAACG,IAAI,KAAKC,eAAe,CAACC,MAAM,CAAC;UAAA,EACnF;QACH;QAEA,IAAMrE,MAAM,GAAGuD,MAAI,CAAC5E,OAAO,CAACsB,IAAI,CAAC,UAACD,MAAM;UAAA,OAAKA,MAAM,CAACzB,IAAI,KAAKA,IAAI;QAAA,EAAC;QAClE,IAAM8G,cAAc,GAAG;UACrB,IAAIpC,KAAKA,CAAA,EAAG;YAAA,IAAAqC,qBAAA;YACV;YACA,OAAO,EAAAA,qBAAA,OAAI,CAAC/F,KAAK,CAACmC,GAAG,CAACjB,OAAO,cAAA6E,qBAAA,uBAAtBA,qBAAA,CAAwBC,qBAAqB,EAAE,CAACtC,KAAK,KAAI,CAAC;UACnE,CAAC;UACD1E,IAAI,EAAJA,IAAI;UACJyE,QAAQ,EAAE1E,oBAAoB,CAACC,IAAI,CAAC;UACpCsE,MAAM,EAAE6B,IAAI,KAAK,SAAS;UAC1BhB,KAAK,EAALA,KAAK;UACLc,SAAS,EAATA,SAAS;UACTrE,MAAM,EAAE,OAAOA,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGwD,IAAI,CAAC,CAAC,CAAC,KAAKpF,IAAI;UAC/DkG,QAAQ,EAARA,QAAQ;UACRzF,UAAU,EAAE,CAAA6F,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAE5F,WAAW,MAAK,IAAI,GAAG,KAAK,GAAG0F,QAAQ;UACvE1F,WAAW,EAAE0F,QAAQ;UACrBvE,aAAa,EACXuD,IAAI,CAAC,CAAC,CAAC,KAAKpF,IAAI,GACZoF,IAAI,CAAC,CAAC,CAAC,GACP,CAAA3D,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEI,aAAa,MACpB,OAAOqE,QAAQ,KAAK,QAAQ,GAAGA,QAAQ,GAAGxG,oBAAoB,CAAC;UACtEsB,KAAK,MAAAiG,cAAA,iBAAAA,cAAA;YACHjH,IAAI,EAAJA,IAAI;YACJmG,IAAI,EAAEA,IAAI,KAAK,SAAS,GAAG5C,SAAS,GAAG4C;UAAI,GACxCnF,KAAK;YACR;YACAkG,UAAU,EAAEzB,KAAK,CAACtC,GAAG;YACrB4B,QAAQ,EAARA,QAAQ;YACR5B,GAAG,EAAE,CAAA1B,MAAM,aAANA,MAAM,wBAAAiE,aAAA,GAANjE,MAAM,CAAET,KAAK,cAAA0E,aAAA,uBAAbA,aAAA,CAAevC,GAAG,kBAAI7B,iBAAK,CAACC,SAAS;UAAE,EAC7C;UACD4F,aAAa,EAAE;QACjB,CAAsB;QAEtB,IAAI/G,OAAO,EAAE;UACX0G,cAAc,CAAC1G,OAAO,GAAGA,OAAO;UAChCA,OAAO,CAACoF,OAAO,CAAC,UAAC/D,MAAM;YAAA,OAAKA,MAAM,CAAC0F,aAAa,CAACC,OAAO,CAACN,cAAc,CAAC;UAAA,EAAC;QAC3E;QACAxB,eAAe,CAAC+B,IAAI,CAACP,cAAc,CAAC;MACtC,CAAC,CAAC;MACF,OAAOxB,eAAe;IACxB;EAAC;IAAA3C,GAAA;IAAAC,KAAA,EAED,SAAA0E,aAAatG,KAAkB,EAAE;MAC/B,IAAAuG,aAAA,GAAqB,IAAI,CAAClC,OAAO;QAAzBmC,GAAG,GAAAD,aAAA,CAAHC,GAAG;QAAEC,GAAG,GAAAF,aAAA,CAAHE,GAAG;MAChB,IAAMnC,eAAe,GAAG,IAAI,CAACR,iBAAiB,CAAC9D,KAAK,CAAC+D,QAAQ,CAAC;MAE9D,IAAI,CAAC3E,OAAO,GAAG,IAAAsG,qBAAc,EAACpB,eAAe,CAAC;MAC9C,OAAO;QACLoC,YAAY,EAAE,IAAAC,kCAAoB,EAAC,IAAI,CAACC,gBAAgB,EAAE,IAAI,CAACC,UAAU,CAAC;QAC1EvC,eAAe,EAAfA,eAAe;QACfkC,GAAG,EAAHA,GAAG;QACHM,QAAQ,EAAE,IAAI,CAACC,aAAa;QAC5BC,UAAU,EAAE,IAAI,CAACvF,aAAa;QAC9BgF,GAAG,EAAHA;MACF,CAAC;IACH;EAAC;IAAA9E,GAAA;IAAAC,KAAA,EAED,SAAAqF,aAAajH,KAAkB,EAAE;MAC/B,IAAAkH,cAAA,GAAsC,IAAI,CAAC7C,OAAO;QAA1C8C,IAAI,GAAAD,cAAA,CAAJC,IAAI;QAAEX,GAAG,GAAAU,cAAA,CAAHV,GAAG;QAAEY,SAAS,GAAAF,cAAA,CAATE,SAAS;QAAEX,GAAG,GAAAS,cAAA,CAAHT,GAAG;MACjC,IAAMY,eAAuD,GAAG,CAAC,CAAC;MAClE,IAAMC,cAA4B,GAAG,EAAE;MAEvChH,iBAAK,CAACiE,QAAQ,CAACC,OAAO,CAACxE,KAAK,CAAC+D,QAAQ,EAAE,UAACU,KAAK,EAAK;QAChD,kBAAInE,iBAAK,CAACqE,cAAc,CAACF,KAAK,CAAC,EAAE;UAC/B,IAAA8C,KAAA,GAAqC9C,KAAK,CAACzE,KAAK;YAAxChB,IAAI,GAAAuI,KAAA,CAAJvI,IAAI;YAAE+E,QAAQ,GAAAwD,KAAA,CAARxD,QAAQ;YAAKyD,KAAK,OAAAnC,yBAAA,aAAAkC,KAAA,EAAArJ,UAAA;UAIhC,IAAIuG,KAAK,CAACG,IAAI,KAAKC,eAAe,CAAC4C,IAAI,IAAIzI,IAAI,EAAE;YAC/CA,IAAI,CAAC0I,KAAK,CAAC,GAAG,CAAC,CAAClD,OAAO,CAAC,UAACxF,IAAI,EAAK;cAChCqI,eAAe,CAACrI,IAAI,CAAC,GAAGqI,eAAe,CAACrI,IAAI,CAAC,IAAI,EAAE;cACnDqI,eAAe,CAACrI,IAAI,CAAC,CAACqH,IAAI,KAAAJ,cAAA,iBAAAA,cAAA,iBACrBuB,KAAK;gBACRG,mBAAmB,EAAE5D;cAAQ,GAC7B;YACJ,CAAC,CAAC;UACJ;UACA,IAAIU,KAAK,CAACG,IAAI,KAAKC,eAAe,CAAC+C,GAAG,EAAE;YACtCN,cAAc,CAACjB,IAAI,KAAAJ,cAAA,iBAAAA,cAAA,iBACduB,KAAK;cACRG,mBAAmB,EAAE5D;YAAQ,GAC7B;UACJ;QACF;MACF,CAAC,CAAC;MAEF,OAAO;QACL3E,OAAO,EAAE,IAAI,CAACA,OAAO;QACrByI,IAAI,EAAE,IAAI,CAACC,UAAU,CAACX,IAAI,EAAEE,eAAe,CAAC;QAC5CD,SAAS,EAATA,SAAS;QACTZ,GAAG,EAAHA,GAAG;QACHc,cAAc,EAAdA,cAAc;QACdN,UAAU,EAAE,IAAI,CAACxF,aAAa;QAC9BiF,GAAG,EAAHA;MACF,CAAC;IACH;EAAC;IAAA9E,GAAA;IAAAC,KAAA,EAED,SAAAkG,WAAWX,IAAe,EAAEE,eAAuD,EAAE;MAAA,IAAAU,MAAA;MACnF,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAIb,IAAe,EAAEc,OAAuC;QAAA,OACzEd,IAAI,CAACvE,GAAG,CAAC,UAACsF,GAAG,EAAK;UAChB,IAAMC,WAKL,GAAG,CAAC,CAAC;UACN,IAAMC,sBAAsD,GAAG,CAAC,CAAC;UACjE,KAAK,IAAMC,MAAM,IAAIH,GAAG,EAAE;YACxB,IAAMI,WAAW,GAAGD,MAAM,CAACX,KAAK,CAAC,GAAG,CAAC;YACrC,IAAIY,WAAW,CAAC9I,MAAM,IAAI,CAAC,EAAE;cAAA,IAAA+I,UAAA,OAAAtF,2BAAA,aACNqF,WAAW;gBAAAE,MAAA;cAAA;gBAAhC,KAAAD,UAAA,CAAApF,CAAA,MAAAqF,MAAA,GAAAD,UAAA,CAAAnF,CAAA,IAAAC,IAAA,GAAkC;kBAAA,IAAvB5C,MAAM,GAAA+H,MAAA,CAAA5G,KAAA;kBACfuG,WAAW,CAAC1H,MAAM,CAAC,GAAG;oBACpBgI,cAAc,EAAEH,WAAW;oBAC3BI,SAAS,EAAER,GAAG,CAACG,MAAM;kBACvB,CAAC;kBACDD,sBAAsB,CAAC3H,MAAM,CAAC,GAAG,IAAI;gBACvC;cAAC,SAAAkD,GAAA;gBAAA4E,UAAA,CAAA3E,CAAA,CAAAD,GAAA;cAAA;gBAAA4E,UAAA,CAAA1E,CAAA;cAAA;YACH,CAAC,MAAM;cACLuE,sBAAsB,CAACC,MAAM,CAAC,GAAG,IAAI;YACvC;UACF;UAEA,IAAMM,SAAS,GAAGT,GAAG,CAACvJ,SAAS,CAAC,IAAI,EAAE;UACtC,IAAMiK,gBAAgB,GAAGC,MAAM,CAACC,WAAW,CACzCH,SAAS,CACN3G,OAAO,CAAC,UAAC+G,MAAM;YAAA,OAAKF,MAAM,CAACG,IAAI,CAACD,MAAM,CAAC;UAAA,EAAC,CACxC/G,OAAO,CAAC,UAACL,GAAG;YAAA,OAAKA,GAAG,CAAC+F,KAAK,CAAC,GAAG,CAAC;UAAA,EAAC,CAChC9E,GAAG,CAAC,UAACjB,GAAG;YAAA,OAAK,CAACA,GAAG,EAAE,IAAI,CAAC;UAAA,EAAC,CAC7B;UAED,IAAI4D,OAAO,GAAG,KAAK;UAEnB,IAAM0D,KAAkB,GAAGlB,MAAI,CAAC3I,OAAO,CACpCwD,GAAG,CAAC,UAACnC,MAAM,EAAK;YACf,IAAI0H,WAAW,CAAC1H,MAAM,CAACzB,IAAI,CAAC,EAAE;cAC5B,IAAAkK,qBAAA,GAAsCf,WAAW,CAAC1H,MAAM,CAACzB,IAAI,CAAC;gBAAtDyJ,cAAc,GAAAS,qBAAA,CAAdT,cAAc;gBAAEC,SAAS,GAAAQ,qBAAA,CAATR,SAAS;cACjC,IAAID,cAAc,CAAC,CAAC,CAAC,KAAKhI,MAAM,CAACzB,IAAI,EAAE;gBACrC,OAAO;kBACLA,IAAI,EAAEyJ,cAAc,CAAC7C,IAAI,CAAC,GAAG,CAAC;kBAC9BuD,MAAM,EAAEV,cAAc,CAAC7F,GAAG,CAAC7D,oBAAoB,CAAC;kBAChDoF,KAAK,EAAE1D,MAAM,CAAC0D,KAAK;kBACnBgD,IAAI,EAAEuB,SAAS;kBACfrB,eAAe,EAAEA,eAAe,CAAC5G,MAAM,CAACzB,IAAI,CAAC,IAAI;gBACnD,CAAC;cACH;YACF,CAAC,MAAM,IAAIyB,MAAM,CAACzB,IAAI,IAAIkJ,GAAG,EAAE;cAC7B,OAAO;gBACLlJ,IAAI,EAAEyB,MAAM,CAACzB,IAAI;gBACjBmK,MAAM,EAAE1I,MAAM,CAACgD,QAAQ;gBACvBU,KAAK,EAAE1D,MAAM,CAAC0D,KAAK;gBACnBgD,IAAI,EAAEe,GAAG,CAACzH,MAAM,CAACzB,IAAI,CAAC;gBACtBqI,eAAe,EAAEA,eAAe,CAAC5G,MAAM,CAACzB,IAAI,CAAC,IAAI;cACnD,CAAC;YACH,CAAC,MAAM,IAAI,CAACuG,OAAO,IAAIqD,gBAAgB,CAACnI,MAAM,CAACzB,IAAI,CAAC,EAAE;cACpD;cACAuG,OAAO,GAAG,IAAI;cACd,OAAOyC,SAAS,CAACW,SAAS,MAAA1C,cAAA,iBAAAA,cAAA,iBACrBgC,OAAO,GACPG,sBAAsB,EACzB;YACJ,CAAC,MAAM,IAAI,CAACH,OAAO,CAACxH,MAAM,CAACzB,IAAI,CAAC,IAAI,CAAC4J,gBAAgB,CAACnI,MAAM,CAACzB,IAAI,CAAC,EAAE;cAClE;cACA,OAAO;gBACLA,IAAI,EAAEyB,MAAM,CAACzB,IAAI;gBACjBmK,MAAM,EAAE1I,MAAM,CAACgD,QAAQ;gBACvBU,KAAK,EAAE1D,MAAM,CAAC0D,KAAK;gBACnBgD,IAAI,EAAE,IAAI;gBACVE,eAAe,EAAEA,eAAe,CAAC5G,MAAM,CAACzB,IAAI,CAAC,IAAI;cACnD,CAAC;YACH;UACF,CAAC,CAAC,CACDqD,MAAM,CAAC,UAAC5B,MAAM;YAAA,OAAKA,MAAM;UAAA,EAAC,CAC1BmC,GAAG,CAAC,UAACnC,MAAM;YAAA,OAAKA,MAAM;UAAA,CAAC,CAAC;UAE3BwI,KAAK,CAACG,WAAW,GAAGlB,GAAG;UACvB,OAAOe,KAAK;QACd,CAAC,CAAC;MAAA;MAEJ,OAAOjB,SAAS,CAACb,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5B;EAAC;IAAAxF,GAAA;IAAAC,KAAA,EAED,SAAAyH,kBAAA,EAAoB;MAClB,IAAI,CAACxH,WAAW,CAAC,IAAI,CAACzC,OAAO,CAAC;IAChC;EAAC;IAAAuC,GAAA;IAAAC,KAAA,EAED,SAAA0H,mBAAA,EAAqB;MACnB,IAAI,CAACzH,WAAW,CAAC,IAAI,CAACzC,OAAO,CAAC;IAChC;EAAC;IAAAuC,GAAA;IAAAC,KAAA,EAED,SAAA2H,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAAnF,OAAA;QAAAoF,KAAA;MACP,IAAMC,UAAU,GAKJC,YAAG;MAJf,IAAAC,cAAA,GAAmC,IAAI,CAACvF,OAAO;QAAvCE,QAAQ,GAAAqF,cAAA,CAARrF,QAAQ;QAAEsF,MAAM,GAAAD,cAAA,CAANC,MAAM;QAAE1C,IAAI,GAAAyC,cAAA,CAAJzC,IAAI;MAE9B,OAAAsC,KAAA,GAAO,IAAApL,aAAO,EAACwL,MAAM,CAAC,eACpBtM,MAAA,YAAAuM,aAAA,CAACJ,UAAU,EAAAD,KAAA,CAAAM,EAAA,mBAAA9D,cAAA,qBAAA7I,KAAA,CAAA4M,WAAA;QAAA,kBAEO,CAAC,MAAM,CAAC;QAAA,OACnB,IAAI,CAAC/I,QAAQ;QAAA,QACb,OAAO;QAAA,iBACG,CAACkG,IAAI,aAAJA,IAAI,cAAJA,IAAI,GAAI,EAAE,EAAE3H;MAAM,GAAAgK,IAAA,kBAElCjM,MAAA,YAAAuM,aAAA,CAACvF,QAAQ,EAAAkF,KAAA,CAAAM,EAAA,iBAAG,CACD;IAEjB;EAAC;EAAA,OAAApK,mBAAA;AAAA,EAlU+BsK,eAAS;AAAA,IAAA7J,gBAAA,aAArCT,mBAAmB,iBACF,iBAAiB;AAAA,IAAAS,gBAAA,aADlCT,mBAAmB,WAGRxB,KAAK;AAAA,IAAAiC,gBAAA,aAHhBT,mBAAmB,aAIN,CAAC,IAAAuK,oBAAmB,GAAE,CAAC;AAAA,IAAA9J,gBAAA,aAJpCT,mBAAmB,kBAMD;EACpB6G,GAAG,EAAE,SAAS;EACdY,SAAS,EAAE,IAAI;EACfhD,IAAI,EAAE,EAAE;EACR+C,IAAI,EAAE;AACR,CAAC;AA+TH,SAASgD,mBAAmBA,CAAA,EAAG;EAC7B,OAAO,IAAI;AACb;AAqDA,IAAMtF,eAAe,GAAG,IAAAuF,gBAAe,EACrCzK,mBAAmB,EACnB;EACE0K,IAAI,EAAJA,gBAAI;EACJC,IAAI,EAAJA,gBAAI;EACJxF,MAAM,EAAEqF,mBAAmB;EAC3B1C,IAAI,EAAE0C,mBAAmB;EACzBvC,GAAG,EAAEuC;AACP,CAAC,EACD,CAAC,CAAC,CAOH;AAAC,IAAAI,QAAA,GAGa1F,eAAe;AAAAhG,OAAA,cAAA0L,QAAA;AAEvB,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CACxBC,OAKoB;EAAA,OACgCA,OAAO;AAAA,CAAO;AAAC5L,OAAA,CAAA2L,aAAA,GAAAA,aAAA;AAE9D,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAC3BD,OAKoB;EAAA,OACmCA,OAAO;AAAA,CAAO;AAAC5L,OAAA,CAAA6L,gBAAA,GAAAA,gBAAA;AAEjE,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAC5BF,OAKoB;EAAA,OACoCA,OAAO;AAAA,CAAO;AAAC5L,OAAA,CAAA8L,iBAAA,GAAAA,iBAAA"}
|
|
1
|
+
{"version":3,"file":"DataTable.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_syncScroll","_assignProps2","_fire","_utils","_Head","_Body","_uniqueID","_excluded","_excluded2","style","_index","sstyled","insert","reversedSortDirection","desc","asc","defaultSortDirection","ROW_GROUP","Symbol","exports","cssVarReg","createCssVarForWidth","name","concat","replace","setBorderGroupColumns","columns","side","firstColumn","lastColumn","length","borderLeft","borderRight","RootDefinitionTable","_Component","_inherits2","_super","_createSuper2","props","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","React","createRef","event","column","find","fire","active","sortDirection","forceUpdate","_this$tableRef","_this$tableRef$curren","tableRef","current","scrollIntoView","block","inline","behavior","syncScroll","scrollBodyRef","scrollHeadRef","_createClass2","key","value","setVarStyle","_this2","animations","flatMap","_column$props$ref$cur","_column$props$ref$cur2","ref","getAnimations","filter","a","undefined","animationPromise","Promise","resolve","all","map","animation","finished","then","_iterator","_createForOfIteratorHelper2","_step","s","n","done","setVar","_this2$tableRef$curre","setProperty","varWidth","width","err","e","f","console","error","childrenToColumns","children","_this3","options","arguments","fixed","sort","asProps","columnsChildren","Children","forEach","child","_column$props","isValidElement","type","DefinitionTable","Column","_ref3","_ref3$fixed","resizable","sortable","flex","vBorders","_objectWithoutProperties2","lastColumnChildren","isGroup","some","c","flattenColumns","_ref4","join","toArray","columnChildren","_this$props$ref$curre","getBoundingClientRect","_objectSpread2","forwardRef","parentColumns","unshift","push","getHeadProps","_this$asProps","use","uid","$onSortClick","callAllEventHandlers","handlerSortClick","scrollToUp","onResize","handlerResize","$scrollRef","getBodyProps","_this$asProps2","data","uniqueKey","cellPropsLayers","rowPropsLayers","_ref5","other","Cell","split","childrenPropsGetter","Row","rows","dataToRows","_this4","parseData","exclude","row","groupByName","columnsWithoutRowGroup","rowKey","columnNames","_iterator2","_step2","groupedColumns","groupData","rowsGroup","rowsGroupedNames","Object","fromEntries","subRow","keys","cells","_groupByName$column$n","cssVar","flatRowData","componentDidMount","componentDidUpdate","render","_ref","_ref2","SDataTable","Box","_this$asProps3","styles","createElement","cn","assignProps","Component","uniqueIDEnhancement","ComponentDefinition","createComponent","Head","Body","_default","wrapDataTable","wrapper","wrapDataTableRow","wrapDataTableCell"],"sources":["../../src/DataTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Property } from 'csstype';\nimport createComponent, {\n Component,\n PropGetterFn,\n Root,\n sstyled,\n UnknownProperties,\n Intergalactic,\n} from '@semcore/core';\nimport { Box, BoxProps, FlexProps } 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 reversedSortDirection: { [direction in SortDirection]: SortDirection } = {\n desc: 'asc',\n asc: 'desc',\n};\nconst defaultSortDirection: SortDirection = 'desc';\n\nconst ROW_GROUP = Symbol('ROW_GROUP');\n\nconst cssVarReg = /[:;\\W]/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\nexport type DataTableData = { [key: string]: unknown };\nexport type DataTableSort<Columns extends string | number | symbol = string> = [\n sortBy: Columns,\n sortDirection: 'desc' | 'asc',\n];\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\n/** @deprecated */\nexport interface IDataTableProps<\n DataTableData extends { [key: string]: any }[] = UnknownProperties[],\n> extends DataTableProps<DataTableData> {}\nexport type DataTableProps<DataTableData extends { [key: string]: any }[] = UnknownProperties[]> =\n BoxProps & {\n /** Table theme according to visual hierarchy on the page\n * @default primary\n * */\n use?: DataTableUse;\n /** Data for table */\n data?: DataTableData;\n /** Active sort object */\n sort?: DataTableSort<keyof DataTableData[0]>;\n /** Handler call when request will change sort */\n onSortChange?: (sort: DataTableSort<keyof DataTableData[0]>, e?: React.SyntheticEvent) => void;\n /** Field name in one data entity that is unique accross all dataset\n * @default id\n */\n uniqueKey?: keyof DataTableData[0];\n /** Make cells compact by changing left and right paddings to smaller ones*/\n compact?: boolean;\n };\n\n/** @deprecated */\nexport interface IDataTableHeadProps extends DataTableHeadProps, UnknownProperties {}\nexport type DataTableHeadProps = BoxProps & {\n /** Sticky table header\n * @deprecated\n * */\n sticky?: boolean;\n\n /** Hidden header */\n hidden?: boolean;\n\n /** Disabled scroll (as action) */\n disabledScroll?: boolean;\n\n /** Enable scroll bar element in header */\n withScrollBar?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableColumnProps extends DataTableColumnProps, UnknownProperties {}\nexport type DataTableColumnProps = FlexProps & {\n /** Unique column name */\n name?: string;\n /** Enable sorting for column. And if you are passing a string, you can also set the default sorting */\n sortable?: boolean | 'desc' | 'asc';\n /** Enable resize for column\n * @ignore */\n resizable?: boolean;\n /** Fix column on the left o right side of the table */\n fixed?: 'left' | 'right';\n /** Fields to control the size of the column */\n flex?: Property.Flex | 'inherit';\n /** Add vertical border to the column */\n vBorders?: boolean;\n /** Add vertical border to the right side of the cell */\n borderRight?: boolean;\n /** Add vertical border to the left side of the cell */\n borderLeft?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableBodyProps extends DataTableBodyProps, UnknownProperties {}\nexport type DataTableBodyProps = BoxProps & {\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 /** Allows to redefine rows renderning for a very deep and even fragile customization like building custom virtual scrolling */\n renderRows?: (props: {\n rows: DataTableRow[];\n columns: Column[];\n renderRow: (row: DataTableRow, details: { dataIndex: number }) => React.ReactNode;\n }) => React.ReactNode;\n /**\n * Called every time user scrolls area\n */\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /** Disabled scroll */\n disabledScroll?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableRowProps extends DataTableRowProps, UnknownProperties {}\nexport type DataTableRowProps = BoxProps & {\n /** Theme for row */\n theme?: DataTableTheme;\n /** Sets row state to active*/\n active?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableCellProps extends DataTableCellProps, UnknownProperties {}\nexport type DataTableCellProps<Name extends string = string> = FlexProps & {\n /** Unique name for column or columns separated by / */\n name: Name;\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 ? reversedSortDirection[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 const animations = columns\n .flatMap((column) => column.props.ref.current?.getAnimations?.())\n .filter((a) => a !== undefined) as Animation[];\n\n let animationPromise: Promise<Animation[] | void> = Promise.resolve();\n\n if (animations.length > 0) {\n animationPromise = Promise.all(\n animations.map((animation) => {\n return animation.finished;\n }),\n );\n }\n\n animationPromise\n .then(() => {\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 .catch((err) => {\n console.error(err);\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 : defaultSortDirection),\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 .flatMap((subRow) => Object.keys(subRow))\n .flatMap((key) => key.split('/'))\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 componentDidMount() {\n this.setVarStyle(this.columns);\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\ntype DataTableCtx = {\n getHeadProps: PropGetterFn;\n getBodyProps: PropGetterFn;\n};\n\nfunction ComponentDefinition() {\n return null;\n}\n\ntype IntergalacticDataTableComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n DataTableProps<Data> & PropsExtending,\n DataTableCtx,\n never\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps>;\n\ntype IntergalacticDataTableRowComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableRowProps & {\n /**\n * That property is ONLY used for the component strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps>;\n\ntype IntergalacticDataTableCellComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[] = [],\n Name extends string = string,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableCellProps<Name> & {\n /**\n * That property is ONLY used for the componenct strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableCellProps>;\n\nconst DefinitionTable = createComponent(\n RootDefinitionTable,\n {\n Head,\n Body,\n Column: ComponentDefinition,\n Cell: ComponentDefinition,\n Row: ComponentDefinition,\n },\n {},\n) as IntergalacticDataTableComponent & {\n Head: Intergalactic.Component<'div', DataTableHeadProps>;\n Body: Intergalactic.Component<'div', DataTableBodyProps>;\n Column: Intergalactic.Component<'div', DataTableColumnProps>;\n Row: IntergalacticDataTableRowComponent;\n Cell: IntergalacticDataTableCellComponent;\n};\n\nexport { ROW_GROUP };\nexport default DefinitionTable;\n\nexport const wrapDataTable = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableRow = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableRowComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableRowComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableCell = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableCellComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableCellComponent<PropsExtending> => wrapper as any;\n"],"mappings":"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"}
|
package/lib/es6/Body.js
CHANGED
|
@@ -336,7 +336,8 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
336
336
|
onScroll = _this$asProps3.onScroll,
|
|
337
337
|
disabledScroll = _this$asProps3.disabledScroll,
|
|
338
338
|
renderRows = _this$asProps3.renderRows,
|
|
339
|
-
animationsDisabled = _this$asProps3.animationsDisabled
|
|
339
|
+
animationsDisabled = _this$asProps3.animationsDisabled,
|
|
340
|
+
scrollContainerRef = _this$asProps3.scrollContainerRef;
|
|
340
341
|
var columnsInitialized = columns.reduce(function (sum, _ref10) {
|
|
341
342
|
var width = _ref10.width;
|
|
342
343
|
return sum + width;
|
|
@@ -364,6 +365,10 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
364
365
|
if (disabledScroll) {
|
|
365
366
|
return /*#__PURE__*/React.createElement(SBodyWrapper, null, body);
|
|
366
367
|
}
|
|
368
|
+
var scrollContainerRefs = [$scrollRef, this.scrollContainerRef];
|
|
369
|
+
if (scrollContainerRef) {
|
|
370
|
+
scrollContainerRefs.push(scrollContainerRef);
|
|
371
|
+
}
|
|
367
372
|
return /*#__PURE__*/React.createElement(SBodyWrapper, _ref5.cn("SBodyWrapper", {}), /*#__PURE__*/React.createElement(ScrollArea, _ref5.cn("ScrollArea", {
|
|
368
373
|
"shadow": true,
|
|
369
374
|
"leftOffset": offsetLeftSum,
|
|
@@ -371,7 +376,7 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
371
376
|
"onResize": callAllEventHandlers(onResize, this.handleScrollAreaResize),
|
|
372
377
|
"onScroll": callAllEventHandlers(onScroll, this.handleScrollAreaScroll)
|
|
373
378
|
}), /*#__PURE__*/React.createElement(ScrollArea.Container, {
|
|
374
|
-
ref: forkRef(
|
|
379
|
+
ref: forkRef.apply(void 0, scrollContainerRefs),
|
|
375
380
|
role: "rowgroup",
|
|
376
381
|
focusRingTopOffset: '3px'
|
|
377
382
|
}, body), /*#__PURE__*/React.createElement("div", _ref5.cn("div", {
|
package/lib/es6/Body.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","trottle","forkRef","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","forceUpdate","_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","handleBodyTransitionEnd","bind","handleScrollAreaResize","handleScrollAreaScroll","Container","scrollContainerRef","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 { forkRef } from '@semcore/utils/lib/ref';\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 scrollContainerRef = React.createRef<HTMLDivElement>();\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 handleBodyTransitionEnd = trottle(() => {\n /**\n * We need this to recalculate ScrollArea sizes after end of transition\n */\n this.forceUpdate();\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\n render={Box}\n animationsDisabled={animationsDisabled}\n onTransitionEnd={this.handleBodyTransitionEnd}\n >\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\n ref={forkRef($scrollRef, this.scrollContainerRef)}\n role='rowgroup'\n focusRingTopOffset={'3px'}\n >\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,SAASC,OAAO,QAAQ,wBAAwB;AAChD,OAAOC,SAAS,MAAM,8BAA8B;AACpD,SAASC,eAAe,QAAQ,QAAQ;AACxC,OAAOC,eAAe,MAAM,oCAAoC;AAEhE,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,IA4B1CC,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,sCAEoBrC,KAAK,CAACsD,SAAS,EAAkB;IAAAN,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,+BACxCrC,KAAK,CAACsD,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,2BAkKsB1B,OAAO,CAAC,UAACiD,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,6BAEuB1B,OAAO,CAAC,UAACiD,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,IAAI1C,SAAS,EAAE,EAAE;QACfwB,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;IAAAtB,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,8BAEyB1B,OAAO,CAAC,YAAM;MACtC;AACJ;AACA;MACI0B,KAAA,CAAKsC,WAAW,EAAE;IACpB,CAAC,CAAC;IAAA,OAAAtC,KAAA;EAAA;EAAAuC,YAAA,CAAA5C,IAAA;IAAA6C,GAAA;IAAAC,KAAA,EA7MF,SAAAC,YAAY1D,KAAkB,EAAE2D,OAAgB,EAAEC,SAAiB,EAAE;MAAA,IAAAC,MAAA;MACnE,IAAMC,KAAK,GAAG9E,IAAI;MAClB,IAAA+E,aAAA,GAAsC,IAAI,CAAC5B,OAAO;QAA1C6B,MAAM,GAAAD,aAAA,CAANC,MAAM;QAAEC,OAAO,GAAAF,aAAA,CAAPE,OAAO;QAAEC,GAAG,GAAAH,aAAA,CAAHG,GAAG;QAAEC,GAAG,GAAAJ,aAAA,CAAHI,GAAG;MACjC,OAAOnE,KAAK,CAACK,GAAG,CAAC,UAACC,IAAI,EAAE8D,SAAS,EAAK;QACpC,IAAI9C,KAAK,CAAC+C,OAAO,CAAC/D,IAAI,CAAC,EAAE;UAAA,IAAAgE,KAAA;UACvB,IAAMC,UAAU,GAAG,KAAK;UACxB,OAAAD,KAAA,GAAOzF,OAAO,CAACmF,MAAM,CAAC,eACpBrF,KAAA,CAAA6F,aAAA,CAACD,UAAU,EAAAD,KAAA,CAAAG,EAAA;YAAA,UAAA/C,MAAA,CAAS0C,SAAS;YAAA,gBAAiB;UAAY,IACvDP,MAAI,CAACa,UAAU,CAACpE,IAAI,EAAmB,IAAI,CAAC,CAClC;QAEjB,CAAC,MAAM;UAAA,IAAAqE,KAAA,EAAAC,qBAAA,EAAAC,aAAA,EAAAC,cAAA,EAAAC,cAAA,EAAAC,cAAA;UACL,IAAMC,SAAS,GAAG3E,IAAI,CAACC,IAAI,CAAC2E,KAAK,CAAC,GAAG,CAAC;UACtC,IAAMC,SAAS,GAAGF,SAAS,CAAC,CAAC,CAAC;UAC9B,IAAMG,QAAQ,GAAGH,SAAS,CAACA,SAAS,CAAC7D,MAAM,GAAG,CAAC,CAAC;UAChD,IAAMiE,WAAW,GAAGpB,OAAO,CAACqB,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAChF,IAAI,KAAK4E,SAAS;UAAA,EAAC;UAC7D,IAAMK,UAAU,GAAGvB,OAAO,CAACqB,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAChF,IAAI,KAAK6E,QAAQ;UAAA,EAAC;UAC3D,IAAMK,MAAM,GAAGxB,OAAO,CAACqB,IAAI,CAAC,UAACC,CAAC;YAAA,OAAKA,CAAC,CAAChF,IAAI,KAAKD,IAAI,CAACC,IAAI;UAAA,EAAC;UACxD,IAAAmF,cAAA,GAAsBxG,aAAa,CAACoB,IAAI,EAAE2D,OAAO,CAAC;YAAA0B,eAAA,GAAAC,cAAA,CAAAF,cAAA;YAA3CnF,IAAI,GAAAoF,eAAA;YAAElC,KAAK,GAAAkC,eAAA;UAClB,IAAME,iBAAiB,IAAAjB,qBAAA,GAAGa,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEK,aAAa,CAACzF,GAAG,CAAC,UAACoF,MAAM;YAAA,OAAKA,MAAM,CAAClF,IAAI;UAAA,EAAC,cAAAqE,qBAAA,cAAAA,qBAAA,GAAI,EAAE;UAClF,IAAMmB,IAAI,GAAG,CAACzE,KAAK,CAAC+C,OAAO,CAAC/D,IAAI,CAAC0F,MAAM,CAAC,GAAG1F,IAAI,CAAC0F,MAAM,GAAG,CAAC1F,IAAI,CAAC0F,MAAM,CAAC,EAAE3F,GAAG,CACzE,UAACE,IAAI;YAAA,cAAAmB,MAAA,CAAYnB,IAAI;UAAA,CAAG,CACzB;UAOD,IAAM0F,UAAU,GAAGR,MAAM,aAANA,MAAM,wBAAAZ,aAAA,GAANY,MAAM,CAAES,KAAK,cAAArB,aAAA,uBAAbA,aAAA,CAAesB,IAAI;UACtC,IAAMC,UAAU,GAAGX,MAAM,aAANA,MAAM,wBAAAX,cAAA,GAANW,MAAM,CAAES,KAAK,cAAApB,cAAA,uBAAbA,cAAA,CAAeuB,IAAI;UAEtC,IAAIH,MAAgB,GAAG;YACrB3F,IAAI,EAAED,IAAI,CAACC,IAAI;YACf+F,QAAQ,eAAE3H,KAAA,CAAA6F,aAAA,CAAA7F,KAAA,CAAA4H,QAAA,QAAGjG,IAAI,CAACE,IAAI,CAAI;YAC1BgG,cAAc,EAAEf,MAAM,aAANA,MAAM,wBAAAV,cAAA,GAANU,MAAM,CAAES,KAAK,cAAAnB,cAAA,uBAAbA,cAAA,CAAeyB,cAAc;YAC7CC,UAAU,EAAEhB,MAAM,aAANA,MAAM,wBAAAT,cAAA,GAANS,MAAM,CAAES,KAAK,cAAAlB,cAAA,uBAAbA,cAAA,CAAeyB,UAAU;YACrCC,UAAU,EAAErB,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEqB,UAAU;YACnCC,WAAW,EAAEnB,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEmB,WAAW;YACpCC,KAAK,EAAE;cACLC,KAAK,EAAEd,IAAI,CAAC3E,MAAM,KAAK,CAAC,GAAG2E,IAAI,CAAC,CAAC,CAAC,WAAArE,MAAA,CAAWqE,IAAI,CAACe,IAAI,CAAC,KAAK,CAAC,MAAG;cAChEC,QAAQ,EAAEd,UAAU;cACpBe,QAAQ,EACNZ,UAAU,IAAIX,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEwB,QAAQ,WAAAvF,MAAA,CAClBjC,eAAe,WAAAiC,MAAA,CAAQhC,eAAe,CAAC0G,UAAU,CAACc,QAAQ,EAAE,CAAC,WACrEd;YACR;UACF,CAAC;UACD,IAAI7F,IAAI,KAAKuB,SAAS,IAAI2B,KAAK,KAAK3B,SAAS,EAAE;YAC7CoE,MAAK,CAACU,KAAK,CAACrG,IAAI,CAAC,GAAGkD,KAAK;UAC3B;UAAC,IAAA0D,SAAA,GAAAC,0BAAA,CAE2B9G,IAAI,CAAC+G,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,CAAA7D,KAAA;cACtB,IAAAkE,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,GAAG7I,WAAW,CAAC0I,KAAK,EAAE5B,MAAK,CAAC;cAC3CA,MAAK,GAAG9G,WAAW,CAACwI,mBAAmB,CAACK,SAAS,EAAEtE,OAAO,EAAEC,SAAS,CAAC,EAAEqE,SAAS,CAAC;YACpF;UAAC,SAAAC,GAAA;YAAAf,SAAA,CAAAgB,CAAA,CAAAD,GAAA;UAAA;YAAAf,SAAA,CAAAiB,CAAA;UAAA;UAED,IAAMC,SAAS,GAAG,CAAC/H,IAAI,CAACC,IAAI,EAAAmB,MAAA,CAAA4G,kBAAA,CAAKzC,iBAAiB,GAC/C0C,MAAM,CAACC,OAAO,CAAC,CACfnI,GAAG,CAAC,UAACE,IAAI;YAAA,oBAAAmB,MAAA,CAAkByC,GAAG,OAAAzC,MAAA,CAAInB,IAAI;UAAA,CAAE,CAAC;UAE5C,OAAAoE,KAAA,GAAO9F,OAAO,CAACmF,MAAM,CAAC,eACpBrF,KAAA,CAAA6F,aAAA,CAACV,KAAK,EAAAa,KAAA,CAAAF,EAAA,UAAAgE,aAAA,CAAAA,aAAA;YAAA,OACCnI,IAAI,CAACC,IAAI;YAAA,QACT,MAAM;YAAA,WACF8H,SAAS,CAACvB,IAAI,CAAC,GAAG,CAAC;YAAA,kBACZ,CAAC,MAAM;UAAC,GACpBZ,MAAK;YAAA,SACF5F,IAAI,CAACoI,KAAK;YAAA,SACVxC,MAAK,CAACyC,KAAK;YAAA,OACbzE,GAAG;YAAA,cACIgC,MAAK,CAACQ,UAAU;YAAA,eACfR,MAAK,CAACS;UAAW,IAC9B;QAEN;MACF,CAAC,EAAE,EAAE,CAAyB;IAChC;EAAC;IAAAnD,GAAA;IAAAC,KAAA,EAED,SAAAmF,UACE5I,KAAkB,EAAA6I,KAAA,EAMlB;MAAA,IAAAC,KAAA;MAAA,IAJElF,SAAS,GAAAiF,KAAA,CAATjF,SAAS;QACTmF,SAAS,GAAAF,KAAA,CAATE,SAAS;QAAAC,YAAA,GAAAH,KAAA,CACTI,MAAM;QAANA,MAAM,GAAAD,YAAA,cAAG,KAAK,GAAAA,YAAA;MAGhB,IAAME,IAAI,GAAGnK,GAAG;MAChB,IAAAoK,cAAA,GAA6D,IAAI,CAAChH,OAAO;QAAjE6B,MAAM,GAAAmF,cAAA,CAANnF,MAAM;QAAEoF,cAAc,GAAAD,cAAA,CAAdC,cAAc;QAAEC,SAAS,GAAAF,cAAA,CAATE,SAAS;QAAEnH,aAAa,GAAAiH,cAAA,CAAbjH,aAAa;MACxD,IAAME,kBAAkB,GAAGC,OAAA,CAAOH,aAAa,MAAK,QAAQ,KAAIA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEL,SAAS;MAExF,IAAM8B,OAAO,GAAG3D,KAAK,CAACsJ,WAAW,IAAIvJ,gBAAgB,CAACC,KAAK,CAAC;MAC5D,IAAMwD,GAAG,GAAGG,OAAO,CAAC0F,SAAS,CAAC,GAAGE,MAAM,CAAC5F,OAAO,CAAC0F,SAAS,CAAC,CAAC,UAAA3H,MAAA,CAAUkC,SAAS,CAAE;MAChF,IAAM4F,mBAAmB,GAAG5F,SAAS,KAAK,CAAC,IAAI,CAACxB,kBAAkB;MAElE,IAAI8D,KAAK,GAAG;QACVI,QAAQ,EAAE,IAAI,CAAC5C,WAAW,CAAC1D,KAAK,EAAE2D,OAAO,EAAEC,SAAS,CAAC;QACrD+E,KAAK,EAAE7G,SAAS;QAChB2H,MAAM,EAAE3H,SAAS;QACjB4H,UAAU,EAAEX,SAAS,KAAKjH,SAAS;QACnC6H,GAAG,EAAEZ,SAAS;QACda,GAAG,EAAEJ,mBAAmB,GAAG,IAAI,CAACxG,WAAW,GAAGlB,SAAS;QACvD0B,GAAG,EAAHA,GAAG;QACH,eAAe,EAAE,CAACyF,MAAM,GAAGrF,SAAS,GAAG,CAAC,GAAG9B;MAC7C,CAAC;MAAC,IAAA+H,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,CAAArG,KAAA;UACtB,IAAAuG,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,GAAG9K,WAAW,CAAC0I,KAAK,EAAE5B,KAAK,CAAC;UAC1CA,KAAK,GAAG9G,WAAW,CAACwI,mBAAmB,CAACsC,QAAQ,EAAEvG,OAAO,EAAEC,SAAS,CAAC,EAAEsG,QAAQ,CAAC;QAClF;MAAC,SAAAhC,GAAA;QAAA2B,UAAA,CAAA1B,CAAA,CAAAD,GAAA;MAAA;QAAA2B,UAAA,CAAAzB,CAAA;MAAA;MAED,OAAAU,KAAA,GAAOjK,OAAO,CAACmF,MAAM,CAAC,eACpBrF,KAAA,CAAA6F,aAAA,CAAC0E,IAAI,EAAAJ,KAAA,CAAArE,EAAA,SAAAgE,aAAA;QAAA,eACUQ,MAAM,CAAC/B,QAAQ,EAAE;QAAA,QACxB,CAAC+B,MAAM,GAAG,KAAK,GAAGnH,SAAS;QAAA,kBACjB,CAAC,MAAM;MAAC,GACpBoE,KAAK,GACT;IAEN;EAAC;IAAA1C,GAAA;IAAAC,KAAA,EAED,SAAAiB,WAAWyF,IAAmB,EAAkB;MAAA,IAAAC,MAAA;MAAA,IAAhBnB,MAAM,GAAA9H,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAW,SAAA,GAAAX,SAAA,MAAG,KAAK;MAC5C,OAAOgJ,IAAI,CAAC9J,GAAG,CAAC,UAACL,KAAK,EAAE4D,SAAS;QAAA,OAAKwG,MAAI,CAACxB,SAAS,CAAC5I,KAAK,EAAE;UAAE4D,SAAS,EAATA,SAAS;UAAEqF,MAAM,EAANA;QAAO,CAAC,CAAC;MAAA,EAAC;IACrF;EAAC;IAAAzF,GAAA;IAAAC,KAAA,EAED,SAAA4G,sBAAsBF,IAAmB,EAAE;MAAA,IAAAG,KAAA;QAAAC,MAAA;MACzC,IAAIJ,IAAI,CAAC/I,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;MAEhC,IAAQc,aAAa,GAAK,IAAI,CAACC,OAAO,CAA9BD,aAAa;MACrB,IAAAsI,WAAA,GAA2C,IAAI,CAAClI,KAAK;QAA7CN,YAAY,GAAAwI,WAAA,CAAZxI,YAAY;QAAED,gBAAgB,GAAAyI,WAAA,CAAhBzI,gBAAgB;MACtC,IAAMF,SAAS,GAAG,IAAI,CAAC4I,YAAY,EAAE;MAErC,IAAMC,UAAU,IAAAJ,KAAA,GAAIjI,OAAA,CAAOH,aAAa,MAAK,QAAQ,GAAGA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEwI,UAAU,GAAG,CAAC,cAAAJ,KAAA,cAAAA,KAAA,GAAK,CAAC;MAC3F,IAAMK,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,KAAK,CAAC9I,YAAY,GAAGH,SAAU,CAAC,GAAG6I,UAAU,EAAE,CAAC,CAAC;MAClF,IAAMK,SAAS,GAAGH,IAAI,CAACI,GAAG,CACxBJ,IAAI,CAACK,IAAI,CAAC,CAACjJ,YAAY,GAAGD,gBAAiB,IAAIF,SAAU,CAAC,GAAG6I,UAAU,EACvEP,IAAI,CAAC/I,MAAM,CACZ;MAED,IAAMgB,kBAAkB,GAAGC,OAAA,CAAOH,aAAa,MAAK,QAAQ,KAAIA,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEL,SAAS;MACxF,IAAMqJ,2BAA2B,GAAG,CAAC9I,kBAAkB;MAEvD,IAAM+I,QAAQ,GAAG;QAAEnL,KAAK,EAAEmK,IAAI,CAAC,CAAC,CAAC;QAAEvG,SAAS,EAAE,CAAC;QAAEmF,SAAS,EAAE;MAAE,CAAC;MAC/D,IAAMqC,WAAW,GAAGvJ,SAAS,KAAKC,SAAS,GAAGqI,IAAI,CAACkB,KAAK,CAACV,UAAU,EAAEI,SAAS,CAAC,GAAG,EAAE;MACpF,IAAMO,oBAAoB,GAAGF,WAAW,CAAC/K,GAAG,CAAC,UAACL,KAAK,EAAEuL,KAAK;QAAA,OAAM;UAC9DvL,KAAK,EAALA,KAAK;UACL4D,SAAS,EAAE+G,UAAU,GAAGY,KAAK;UAC7BxC,SAAS,EAAElH,SAAS,IAAK8I,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,CAACjL,GAAG,CAAC,UAAAoL,KAAA;QAAA,IAAGzL,KAAK,GAAAyL,KAAA,CAALzL,KAAK;UAAE4D,SAAS,GAAA6H,KAAA,CAAT7H,SAAS;UAAEmF,SAAS,GAAA0C,KAAA,CAAT1C,SAAS;QAAA,OAC5DwB,MAAI,CAAC3B,SAAS,CAAC5I,KAAK,EAAE;UAAE4D,SAAS,EAATA,SAAS;UAAEmF,SAAS,EAATA,SAAS;UAAEE,MAAM,EAAE;QAAM,CAAC,CAAC;MAAA,EAC/D;IACH;EAAC;IAAAzF,GAAA;IAAAC,KAAA,EAiDD,SAAAiI,qBAAA,EAAuB;MAAA,IAAAC,qBAAA;MACrB,CAAAA,qBAAA,OAAI,CAACzI,sBAAsB,cAAAyI,qBAAA,uBAA3BA,qBAAA,CAA6BC,UAAU,EAAE;IAC3C;EAAC;IAAApI,GAAA;IAAAC,KAAA,EAED,SAAAoI,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAA3J,OAAA;QAAA4J,KAAA;MACP,IAAMC,KAAK,GA+BCjN,GAAG;MA9Bf,IAAMkN,YAAY,GAAGlN,GAAG;MACxB,IAAMmN,WAAW,GAAGnN,GAAG;MACvB,IAAAoN,cAAA,GAYI,IAAI,CAAChK,OAAO;QAXdiK,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QACRpI,MAAM,GAAAmI,cAAA,CAANnI,MAAM;QACNmG,IAAI,GAAAgC,cAAA,CAAJhC,IAAI;QACJlG,OAAO,GAAAkI,cAAA,CAAPlI,OAAO;QACPoI,UAAU,GAAAF,cAAA,CAAVE,UAAU;QACVnK,aAAa,GAAAiK,cAAA,CAAbjK,aAAa;QACboK,QAAQ,GAAAH,cAAA,CAARG,QAAQ;QACRC,QAAQ,GAAAJ,cAAA,CAARI,QAAQ;QACRC,cAAc,GAAAL,cAAA,CAAdK,cAAc;QACd9H,UAAU,GAAAyH,cAAA,CAAVzH,UAAU;QACV+H,kBAAkB,GAAAN,cAAA,CAAlBM,kBAAkB;MAGpB,IAAMC,kBAAkB,GAAGzI,OAAO,CAAC0I,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,IAAIlH,OAAO;MAE5F,IAAAmN,qBAAA,GAAwC3N,oBAAoB,CAAC8E,OAAO,CAAC;QAAA8I,sBAAA,GAAAnH,cAAA,CAAAkH,qBAAA;QAA9DE,aAAa,GAAAD,sBAAA;QAAEE,cAAc,GAAAF,sBAAA;MAEpC,IAAMlL,SAAS,GAAG,IAAI,CAAC4I,YAAY,EAAE;MACrC,IAAMyC,UAAU,GACdrL,SAAS,KAAKC,SAAS,IAAII,aAAa,GAAGL,SAAS,GAAGsI,IAAI,CAAC/I,MAAM,GAAGU,SAAS;MAEhF,IAAII,aAAa,IAAIwK,kBAAkB,IAAI,CAAC7K,SAAS,EAAE;QACrDsL,qBAAqB,CAAC,IAAI,CAACC,oBAAoB,CAAC;MAClD;MAEA,IAAMC,IAAI,IAAAtB,KAAA,GAAGlN,OAAO,CAACmF,MAAM,CAAC,eAC1BrF,KAAA,CAAA6F,aAAA,CAACwH,KAAK,EAAAD,KAAA,CAAAtH,EAAA,UAAAgE,aAAA,KAAA6E,YAAA;QAAA,sBAEgBb,kBAAkB;QAAA,mBACrB,IAAI,CAACc;MAAuB,GAAAzB,IAAA,KAE5CpH,UAAU,GACTA,UAAU,CAAC;QAAEyF,IAAI,EAAJA,IAAI;QAAElG,OAAO,EAAPA,OAAO;QAAE2E,SAAS,EAAE,IAAI,CAACA,SAAS,CAAC4E,IAAI,CAAC,IAAI;MAAE,CAAC,CAAC,IAAI,IAAI,gBAE3E7O,KAAA,CAAA6F,aAAA,CAAA7F,KAAA,CAAA4H,QAAA,QACG2G,UAAU,gBAAGvO,KAAA,CAAA6F,aAAA,CAAC0H,WAAW,EAAAH,KAAA,CAAAtH,EAAA;QAAA,QAAOyI,UAAU;QAAA,eAAe;MAAI,GAAI,GAAG,IAAI,EACxEhL,aAAa,GAAG,IAAI,CAACmI,qBAAqB,CAACF,IAAI,CAAC,GAAG,IAAI,CAACzF,UAAU,CAACyF,IAAI,CAAC,CAE5E,CACK,CACT;MAED,IAAIqC,cAAc,EAAE;QAClB,oBAAO7N,KAAA,CAAA6F,aAAA,CAACyH,YAAY,QAAEoB,IAAI,CAAgB;MAC5C;MAEA,oBACE1O,KAAA,CAAA6F,aAAA,CAACyH,YAAY,EAAAF,KAAA,CAAAtH,EAAA,mCACX9F,KAAA,CAAA6F,aAAA,CAACvF,UAAU,EAAA8M,KAAA,CAAAtH,EAAA;QAAA;QAAA,cAEGuI,aAAa;QAAA,eACZC,cAAc;QAAA,YACjB5N,oBAAoB,CAACiN,QAAQ,EAAE,IAAI,CAACmB,sBAAsB,CAAC;QAAA,YAC3DpO,oBAAoB,CAACkN,QAAQ,EAAE,IAAI,CAACmB,sBAAsB;MAAC,iBAErE/O,KAAA,CAAA6F,aAAA,CAACvF,UAAU,CAAC0O,SAAS;QACnB/D,GAAG,EAAErK,OAAO,CAAC8M,UAAU,EAAE,IAAI,CAACuB,kBAAkB,CAAE;QAClDC,IAAI,EAAC,UAAU;QACfC,kBAAkB,EAAE;MAAM,GAEzBT,IAAI,CACgB,eACvB1O,KAAA,CAAA6F,aAAA,QAAAuH,KAAA,CAAAtH,EAAA;QAAA,SAAYhE,eAAe;QAAA,QAAO;MAAU,iBAC1C9B,KAAA,CAAA6F,aAAA,QAAAuH,KAAA,CAAAtH,EAAA;QAAA,SAAYhE,eAAe;QAAA,QAAO;MAAK,iBACrC9B,KAAA,CAAA6F,aAAA,QAAAuH,KAAA,CAAAtH,EAAA;QAAA,SAAYhE,eAAe;QAAA,QAAO;MAAM,iBACtC9B,KAAA,CAAA6F,aAAA,CAACvF,UAAU,CAAC8O,GAAG;QAACC,WAAW,EAAC,YAAY;QAACC,QAAQ,EAAE,QAAS;QAACC,MAAM,EAAE;MAAE,EAAG,eAC1EvP,KAAA,CAAA6F,aAAA,CAACvF,UAAU,CAAC8O,GAAG;QAACC,WAAW,EAAC,UAAU;QAACG,CAAC,EAAE,MAAO;QAACC,MAAM,EAAE;MAAE,EAAG,CAC3D,CACF,CACF,CACK,EACZhC,QAAQ,CAACiC,MAAM,CACH;IAEnB;EAAC;EAAA,OAAA1N,IAAA;AAAA,EAnTgB/B,SAAS;AAsT5B,eAAe+B,IAAI"}
|
|
1
|
+
{"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","trottle","forkRef","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","forceUpdate","_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","scrollContainerRef","columnsInitialized","reduce","sum","_ref10","_getScrollOffsetValue","_getScrollOffsetValue2","offsetLeftSum","offsetRightSum","holdHeight","requestAnimationFrame","setupRowSizeObserver","body","_assignProps","handleBodyTransitionEnd","bind","scrollContainerRefs","push","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 { forkRef } from '@semcore/utils/lib/ref';\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 scrollContainerRef: React.Ref<HTMLDivElement>;\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 scrollContainerRef = React.createRef<HTMLDivElement>();\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 handleBodyTransitionEnd = trottle(() => {\n /**\n * We need this to recalculate ScrollArea sizes after end of transition\n */\n this.forceUpdate();\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 scrollContainerRef,\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\n render={Box}\n animationsDisabled={animationsDisabled}\n onTransitionEnd={this.handleBodyTransitionEnd}\n >\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 const scrollContainerRefs = [$scrollRef, this.scrollContainerRef];\n if (scrollContainerRef) {\n scrollContainerRefs.push(scrollContainerRef);\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\n ref={forkRef(...scrollContainerRefs)}\n role='rowgroup'\n focusRingTopOffset={'3px'}\n >\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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"}
|
package/lib/es6/DataTable.js
CHANGED
|
@@ -22,43 +22,43 @@ import Head from './Head';
|
|
|
22
22
|
import Body from './Body';
|
|
23
23
|
import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
24
24
|
/*__reshadow-styles__:"./style/data-table.shadow.css"*/
|
|
25
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SColumn_360zg_gg_.__sortable_360zg_gg_._justifyContent_right_360zg_gg_.__active_360zg_gg_ .___SSortWrapper_360zg_gg_,.___SDataTable_360zg_gg_,.___SHeadWrapper_360zg_gg_{position:relative}.___SDataTable_360zg_gg_.__compact_360zg_gg_ .___SCell_360zg_gg_,.___SDataTable_360zg_gg_.__compact_360zg_gg_ .___SColumn_360zg_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_360zg_gg_.__animationsDisabled_360zg_gg_ .___SColumn_360zg_gg_{transition:none}.___SHeadWrapper_360zg_gg_.__sticky_360zg_gg_{position:sticky;top:0;z-index:2}.___SHead_360zg_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_360zg_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_360zg_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_360zg_gg_.__hidden_360zg_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_360zg_gg_._use_primary_360zg_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_360zg_gg_._use_secondary_360zg_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_360zg_gg_.__group_360zg_gg_.__use_360zg_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_360zg_gg_.__groupHead_360zg_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_360zg_gg_.__sortable_360zg_gg_{cursor:pointer}.___SColumn_360zg_gg_.__sortable_360zg_gg_._use_primary_360zg_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_._use_primary_360zg_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_360zg_gg_.__sortable_360zg_gg_._justifyContent_right_360zg_gg_._active_false_360zg_gg_:focus .___SSortWrapper_360zg_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_._justifyContent_right_360zg_gg_._active_false_360zg_gg_:hover .___SSortWrapper_360zg_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_360zg_gg_.__sortable_360zg_gg_.__active_360zg_gg_ .___SSortWrapper_360zg_gg_,.___SColumn_360zg_gg_.__sortable_360zg_gg_:focus .___SSortWrapper_360zg_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_:hover .___SSortWrapper_360zg_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_360zg_gg_.__sortable_360zg_gg_.__active_360zg_gg_ .___SSortWrapper_360zg_gg_:before,.___SColumn_360zg_gg_.__sortable_360zg_gg_:focus .___SSortIcon_360zg_gg_,.___SColumn_360zg_gg_.__sortable_360zg_gg_:focus .___SSortWrapper_360zg_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_:hover .___SSortWrapper_360zg_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_360zg_gg_.__sortable_360zg_gg_:hover .___SSortIcon_360zg_gg_{display:block;opacity:1}}.___SColumn_360zg_gg_._use_primary_360zg_gg_.__active_360zg_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_360zg_gg_.__active_360zg_gg_ .___SSortIcon_360zg_gg_{display:block;opacity:1}.___SColumn_360zg_gg_.__resizable_360zg_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_360zg_gg_.__resizable_360zg_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_360zg_gg_.__resizable_360zg_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_360zg_gg_.__fixed_360zg_gg_{position:sticky;z-index:2}.___SCell_360zg_gg_.__borderLeft_360zg_gg_,.___SColumn_360zg_gg_.__borderLeft_360zg_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_360zg_gg_.__borderRight_360zg_gg_,.___SColumn_360zg_gg_.__borderRight_360zg_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_360zg_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_360zg_gg_,.___SSortWrapper_360zg_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_360zg_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_360zg_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_360zg_gg_._use_primary_360zg_gg_ .___SSortWrapper_360zg_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_360zg_gg_._use_secondary_360zg_gg_ .___SSortWrapper_360zg_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_360zg_gg_{position:relative}.___SBody_360zg_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_360zg_gg_{display:flex;flex-direction:row;position:relative}.___SRow_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_muted_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_360zg_gg_._theme_muted_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_360zg_gg_._theme_muted_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_muted_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_muted_360zg_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_360zg_gg_._theme_info_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_360zg_gg_._theme_info_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_360zg_gg_._theme_info_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_info_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_info_360zg_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_360zg_gg_._theme_success_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_360zg_gg_._theme_success_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_360zg_gg_._theme_success_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_success_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_success_360zg_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_360zg_gg_._theme_warning_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_360zg_gg_._theme_warning_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_360zg_gg_._theme_warning_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_warning_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_warning_360zg_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_360zg_gg_._theme_danger_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_360zg_gg_._theme_danger_360zg_gg_.__active_360zg_gg_>.___SCell_360zg_gg_:not(.__theme_360zg_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_360zg_gg_._theme_danger_360zg_gg_ .___SCell_360zg_gg_:hover+.___SGroupCell_360zg_gg_ .___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_._theme_danger_360zg_gg_:hover>.___SCell_360zg_gg_:not(.__theme_360zg_gg_),.___SRow_360zg_gg_:hover>.___SCell_360zg_gg_._theme_danger_360zg_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_360zg_gg_.__positioned_360zg_gg_{position:absolute}.___SBody_360zg_gg_.__animationsDisabled_360zg_gg_ .___SCell_360zg_gg_{transition:none}.___SCell_360zg_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_360zg_gg_._use_primary_360zg_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_360zg_gg_._use_secondary_360zg_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_360zg_gg_.__fixed_360zg_gg_{position:sticky;z-index:1}.___SCell_360zg_gg_._theme_muted_360zg_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_360zg_gg_._theme_info_360zg_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_360zg_gg_._theme_success_360zg_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_360zg_gg_._theme_warning_360zg_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_360zg_gg_._theme_danger_360zg_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SHeightHold_360zg_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "360zg_gg_") /*__reshadow_css_end__*/, {
|
|
26
|
-
"__SDataTable": "
|
|
27
|
-
"__SHeadWrapper": "
|
|
28
|
-
"_sticky": "
|
|
29
|
-
"__SHead": "
|
|
30
|
-
"__SColumn": "
|
|
31
|
-
"_hidden": "
|
|
32
|
-
"_use_primary": "
|
|
33
|
-
"_use_secondary": "
|
|
34
|
-
"_group": "
|
|
35
|
-
"_use": "
|
|
36
|
-
"_groupHead": "
|
|
37
|
-
"_active": "
|
|
38
|
-
"__SSortIcon": "
|
|
39
|
-
"_fixed": "
|
|
40
|
-
"_borderLeft": "
|
|
41
|
-
"__SCell": "
|
|
42
|
-
"_borderRight": "
|
|
43
|
-
"__SSortWrapper": "
|
|
44
|
-
"__SBodyWrapper": "
|
|
45
|
-
"__SBody": "
|
|
46
|
-
"__SRow": "
|
|
47
|
-
"_theme": "
|
|
48
|
-
"__SGroupCell": "
|
|
49
|
-
"_theme_muted": "
|
|
50
|
-
"_theme_info": "
|
|
51
|
-
"_theme_success": "
|
|
52
|
-
"_theme_warning": "
|
|
53
|
-
"_theme_danger": "
|
|
54
|
-
"_positioned": "
|
|
55
|
-
"_animationsDisabled": "
|
|
56
|
-
"__SHeightHold": "
|
|
57
|
-
"_compact": "
|
|
58
|
-
"_sortable": "
|
|
59
|
-
"_justifyContent_right": "
|
|
60
|
-
"_active_false": "
|
|
61
|
-
"_resizable": "
|
|
25
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._justifyContent_right_c9hd1_gg_.__active_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_,.___SDataTable_c9hd1_gg_,.___SHeadWrapper_c9hd1_gg_{position:relative}.___SDataTable_c9hd1_gg_.__compact_c9hd1_gg_ .___SCell_c9hd1_gg_,.___SDataTable_c9hd1_gg_.__compact_c9hd1_gg_ .___SColumn_c9hd1_gg_{padding:var(--intergalactic-spacing-3x, 12px) var(--intergalactic-spacing-2x, 8px)}.___SHeadWrapper_c9hd1_gg_.__animationsDisabled_c9hd1_gg_ .___SColumn_c9hd1_gg_{transition:none}.___SHeadWrapper_c9hd1_gg_.__sticky_c9hd1_gg_{position:sticky;top:0;z-index:2}.___SHead_c9hd1_gg_{display:flex;position:relative;flex-direction:row;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_c9hd1_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_c9hd1_gg_:focus-visible{outline:0;box-shadow:inset var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SColumn_c9hd1_gg_.__hidden_c9hd1_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_c9hd1_gg_._use_primary_c9hd1_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_c9hd1_gg_._use_secondary_c9hd1_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_c9hd1_gg_.__group_c9hd1_gg_.__use_c9hd1_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_c9hd1_gg_.__groupHead_c9hd1_gg_{justify-content:center;z-index:1;border-bottom:none}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_{cursor:pointer}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._use_primary_c9hd1_gg_:focus{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._use_primary_c9hd1_gg_:hover{background-color:var(--intergalactic-table-th-primary-cell-hover, #e0e1e9)}}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._justifyContent_right_c9hd1_gg_._active_false_c9hd1_gg_:focus .___SSortWrapper_c9hd1_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_._justifyContent_right_c9hd1_gg_._active_false_c9hd1_gg_:hover .___SSortWrapper_c9hd1_gg_{position:absolute;right:var(--intergalactic-spacing-3x, 12px)}}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_.__active_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_,.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:focus .___SSortWrapper_c9hd1_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:hover .___SSortWrapper_c9hd1_gg_{flex-basis:calc(var(--intergalactic-spacing-1x, 4px) + 16px);opacity:1}}.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_.__active_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_:before,.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:focus .___SSortIcon_c9hd1_gg_,.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:focus .___SSortWrapper_c9hd1_gg_:before{display:block;opacity:1}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:hover .___SSortWrapper_c9hd1_gg_:before{display:block;opacity:1}}@media (hover:hover){.___SColumn_c9hd1_gg_.__sortable_c9hd1_gg_:hover .___SSortIcon_c9hd1_gg_{display:block;opacity:1}}.___SColumn_c9hd1_gg_._use_primary_c9hd1_gg_.__active_c9hd1_gg_{background-color:var(--intergalactic-table-th-primary-cell-active, #e0e1e9);width:100%}.___SColumn_c9hd1_gg_.__active_c9hd1_gg_ .___SSortIcon_c9hd1_gg_{display:block;opacity:1}.___SColumn_c9hd1_gg_.__resizable_c9hd1_gg_{border-right:1px solid transparent}@media (hover:hover){.___SColumn_c9hd1_gg_.__resizable_c9hd1_gg_:hover:after{border-right-color:var(--intergalactic-border-table-accent, #a9abb6)}}.___SColumn_c9hd1_gg_.__resizable_c9hd1_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_c9hd1_gg_.__fixed_c9hd1_gg_{position:sticky;z-index:2}.___SCell_c9hd1_gg_.__borderLeft_c9hd1_gg_,.___SColumn_c9hd1_gg_.__borderLeft_c9hd1_gg_{border-left:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SCell_c9hd1_gg_.__borderRight_c9hd1_gg_,.___SColumn_c9hd1_gg_.__borderRight_c9hd1_gg_{border-right:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___SSortWrapper_c9hd1_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_c9hd1_gg_,.___SSortWrapper_c9hd1_gg_:before{display:none;position:absolute;right:0;opacity:0;transition:opacity .3s ease}.___SSortWrapper_c9hd1_gg_:before{content:\"\";top:0;width:20px;height:100%}.___SSortIcon_c9hd1_gg_{fill:var(--intergalactic-icon-secondary-neutral-hover-active, #878992);top:calc(1em*1.25 - 16px);margin-left:var(--intergalactic-spacing-1x, 4px)}.___SColumn_c9hd1_gg_._use_primary_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-primary-cell-hover, #e0e1e9) 67.5%,rgba(224,225,233,0) 105%)}.___SColumn_c9hd1_gg_._use_secondary_c9hd1_gg_ .___SSortWrapper_c9hd1_gg_:before{background:linear-gradient(270deg,var(--intergalactic-table-th-secondary-cell, #ffffff) 67.5%,rgba(255,255,255,0) 105%)}.___SBodyWrapper_c9hd1_gg_{position:relative}.___SBody_c9hd1_gg_{display:flex;flex-direction:column;position:relative;min-width:-moz-fit-content;min-width:fit-content}.___SRow_c9hd1_gg_{display:flex;flex-direction:row;position:relative}.___SRow_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-active, #e6e7ed)}@media (hover:hover){.___SRow_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_muted_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_muted_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-hover, #f0f0f4)}}.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-selected-active, #c4e5fe)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_info_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_info_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-selected-hover, #c4e5fe)}}.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-new-active, #9ef2c9)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_success_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_success_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-new-hover, #9ef2c9)}}.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-warning-active, #ffdca2)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_warning_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_warning_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-warning-hover, #ffdca2)}}.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_.__active_c9hd1_gg_>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_){background-color:var(--intergalactic-table-td-cell-critical-active, #ffd7df)}@media (hover:hover){.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_ .___SCell_c9hd1_gg_:hover+.___SGroupCell_c9hd1_gg_ .___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_._theme_danger_c9hd1_gg_:hover>.___SCell_c9hd1_gg_:not(.__theme_c9hd1_gg_),.___SRow_c9hd1_gg_:hover>.___SCell_c9hd1_gg_._theme_danger_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-critical-hover, #ffd7df)}}.___SRow_c9hd1_gg_.__positioned_c9hd1_gg_{position:absolute}.___SBody_c9hd1_gg_.__animationsDisabled_c9hd1_gg_ .___SCell_c9hd1_gg_{transition:none}.___SCell_c9hd1_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_c9hd1_gg_._use_primary_c9hd1_gg_{padding:var(--intergalactic-spacing-3x, 12px);min-height:45px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_c9hd1_gg_._use_secondary_c9hd1_gg_{padding:var(--intergalactic-spacing-2x, 8px);min-height:37px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SCell_c9hd1_gg_.__fixed_c9hd1_gg_{position:sticky;z-index:1}.___SCell_c9hd1_gg_._theme_muted_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-unread, #f4f5f9)}.___SCell_c9hd1_gg_._theme_info_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-selected, #e9f7ff)}.___SCell_c9hd1_gg_._theme_success_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-new, #dbfee8)}.___SCell_c9hd1_gg_._theme_warning_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-warning, #fff3d9)}.___SCell_c9hd1_gg_._theme_danger_c9hd1_gg_{background-color:var(--intergalactic-table-td-cell-critical, #fff0f7)}.___SHeightHold_c9hd1_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}" /*__inner_css_end__*/, "c9hd1_gg_") /*__reshadow_css_end__*/, {
|
|
26
|
+
"__SDataTable": "___SDataTable_c9hd1_gg_",
|
|
27
|
+
"__SHeadWrapper": "___SHeadWrapper_c9hd1_gg_",
|
|
28
|
+
"_sticky": "__sticky_c9hd1_gg_",
|
|
29
|
+
"__SHead": "___SHead_c9hd1_gg_",
|
|
30
|
+
"__SColumn": "___SColumn_c9hd1_gg_",
|
|
31
|
+
"_hidden": "__hidden_c9hd1_gg_",
|
|
32
|
+
"_use_primary": "_use_primary_c9hd1_gg_",
|
|
33
|
+
"_use_secondary": "_use_secondary_c9hd1_gg_",
|
|
34
|
+
"_group": "__group_c9hd1_gg_",
|
|
35
|
+
"_use": "__use_c9hd1_gg_",
|
|
36
|
+
"_groupHead": "__groupHead_c9hd1_gg_",
|
|
37
|
+
"_active": "__active_c9hd1_gg_",
|
|
38
|
+
"__SSortIcon": "___SSortIcon_c9hd1_gg_",
|
|
39
|
+
"_fixed": "__fixed_c9hd1_gg_",
|
|
40
|
+
"_borderLeft": "__borderLeft_c9hd1_gg_",
|
|
41
|
+
"__SCell": "___SCell_c9hd1_gg_",
|
|
42
|
+
"_borderRight": "__borderRight_c9hd1_gg_",
|
|
43
|
+
"__SSortWrapper": "___SSortWrapper_c9hd1_gg_",
|
|
44
|
+
"__SBodyWrapper": "___SBodyWrapper_c9hd1_gg_",
|
|
45
|
+
"__SBody": "___SBody_c9hd1_gg_",
|
|
46
|
+
"__SRow": "___SRow_c9hd1_gg_",
|
|
47
|
+
"_theme": "__theme_c9hd1_gg_",
|
|
48
|
+
"__SGroupCell": "___SGroupCell_c9hd1_gg_",
|
|
49
|
+
"_theme_muted": "_theme_muted_c9hd1_gg_",
|
|
50
|
+
"_theme_info": "_theme_info_c9hd1_gg_",
|
|
51
|
+
"_theme_success": "_theme_success_c9hd1_gg_",
|
|
52
|
+
"_theme_warning": "_theme_warning_c9hd1_gg_",
|
|
53
|
+
"_theme_danger": "_theme_danger_c9hd1_gg_",
|
|
54
|
+
"_positioned": "__positioned_c9hd1_gg_",
|
|
55
|
+
"_animationsDisabled": "__animationsDisabled_c9hd1_gg_",
|
|
56
|
+
"__SHeightHold": "___SHeightHold_c9hd1_gg_",
|
|
57
|
+
"_compact": "__compact_c9hd1_gg_",
|
|
58
|
+
"_sortable": "__sortable_c9hd1_gg_",
|
|
59
|
+
"_justifyContent_right": "_justifyContent_right_c9hd1_gg_",
|
|
60
|
+
"_active_false": "_active_false_c9hd1_gg_",
|
|
61
|
+
"_resizable": "__resizable_c9hd1_gg_"
|
|
62
62
|
});
|
|
63
63
|
var reversedSortDirection = {
|
|
64
64
|
desc: 'asc',
|
|
@@ -152,6 +152,8 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
152
152
|
} finally {
|
|
153
153
|
_iterator.f();
|
|
154
154
|
}
|
|
155
|
+
})["catch"](function (err) {
|
|
156
|
+
console.error(err);
|
|
155
157
|
});
|
|
156
158
|
}
|
|
157
159
|
}, {
|
package/lib/es6/DataTable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","names":["React","createComponent","Component","Root","sstyled","Box","syncScroll","callAllEventHandlers","fire","flattenColumns","Head","Body","uniqueIDEnhancement","style","_sstyled","insert","reversedSortDirection","desc","asc","defaultSortDirection","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","_this2","animations","flatMap","_column$props$ref$cur","_column$props$ref$cur2","ref","getAnimations","filter","a","undefined","animationPromise","Promise","resolve","all","map","animation","finished","then","_iterator","_createForOfIteratorHelper","_step","s","n","done","setVar","_this2$tableRef$curre","setProperty","varWidth","width","err","e","f","childrenToColumns","children","_this3","options","arguments","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","_ref4","join","toArray","columnChildren","_this$props$ref$curre","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","_this4","parseData","exclude","row","groupByName","columnsWithoutRowGroup","rowKey","columnNames","_iterator2","_step2","groupedColumns","groupData","rowsGroup","rowsGroupedNames","Object","fromEntries","subRow","keys","cells","_groupByName$column$n","cssVar","flatRowData","componentDidMount","componentDidUpdate","render","_ref","_ref2","SDataTable","_this$asProps3","styles","createElement","cn","_assignProps","ComponentDefinition","wrapDataTable","wrapper","wrapDataTableRow","wrapDataTableCell"],"sources":["../../src/DataTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Property } from 'csstype';\nimport createComponent, {\n Component,\n PropGetterFn,\n Root,\n sstyled,\n UnknownProperties,\n Intergalactic,\n} from '@semcore/core';\nimport { Box, BoxProps, FlexProps } 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 reversedSortDirection: { [direction in SortDirection]: SortDirection } = {\n desc: 'asc',\n asc: 'desc',\n};\nconst defaultSortDirection: SortDirection = 'desc';\n\nconst ROW_GROUP = Symbol('ROW_GROUP');\n\nconst cssVarReg = /[:;\\W]/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\nexport type DataTableData = { [key: string]: unknown };\nexport type DataTableSort<Columns extends string | number | symbol = string> = [\n sortBy: Columns,\n sortDirection: 'desc' | 'asc',\n];\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\n/** @deprecated */\nexport interface IDataTableProps<\n DataTableData extends { [key: string]: any }[] = UnknownProperties[],\n> extends DataTableProps<DataTableData> {}\nexport type DataTableProps<DataTableData extends { [key: string]: any }[] = UnknownProperties[]> =\n BoxProps & {\n /** Table theme according to visual hierarchy on the page\n * @default primary\n * */\n use?: DataTableUse;\n /** Data for table */\n data?: DataTableData;\n /** Active sort object */\n sort?: DataTableSort<keyof DataTableData[0]>;\n /** Handler call when request will change sort */\n onSortChange?: (sort: DataTableSort<keyof DataTableData[0]>, e?: React.SyntheticEvent) => void;\n /** Field name in one data entity that is unique accross all dataset\n * @default id\n */\n uniqueKey?: keyof DataTableData[0];\n /** Make cells compact by changing left and right paddings to smaller ones*/\n compact?: boolean;\n };\n\n/** @deprecated */\nexport interface IDataTableHeadProps extends DataTableHeadProps, UnknownProperties {}\nexport type DataTableHeadProps = BoxProps & {\n /** Sticky table header\n * @deprecated\n * */\n sticky?: boolean;\n\n /** Hidden header */\n hidden?: boolean;\n\n /** Disabled scroll (as action) */\n disabledScroll?: boolean;\n\n /** Enable scroll bar element in header */\n withScrollBar?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableColumnProps extends DataTableColumnProps, UnknownProperties {}\nexport type DataTableColumnProps = FlexProps & {\n /** Unique column name */\n name?: string;\n /** Enable sorting for column. And if you are passing a string, you can also set the default sorting */\n sortable?: boolean | 'desc' | 'asc';\n /** Enable resize for column\n * @ignore */\n resizable?: boolean;\n /** Fix column on the left o right side of the table */\n fixed?: 'left' | 'right';\n /** Fields to control the size of the column */\n flex?: Property.Flex | 'inherit';\n /** Add vertical border to the column */\n vBorders?: boolean;\n /** Add vertical border to the right side of the cell */\n borderRight?: boolean;\n /** Add vertical border to the left side of the cell */\n borderLeft?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableBodyProps extends DataTableBodyProps, UnknownProperties {}\nexport type DataTableBodyProps = BoxProps & {\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 /** Allows to redefine rows renderning for a very deep and even fragile customization like building custom virtual scrolling */\n renderRows?: (props: {\n rows: DataTableRow[];\n columns: Column[];\n renderRow: (row: DataTableRow, details: { dataIndex: number }) => React.ReactNode;\n }) => React.ReactNode;\n /**\n * Called every time user scrolls area\n */\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /** Disabled scroll */\n disabledScroll?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableRowProps extends DataTableRowProps, UnknownProperties {}\nexport type DataTableRowProps = BoxProps & {\n /** Theme for row */\n theme?: DataTableTheme;\n /** Sets row state to active*/\n active?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableCellProps extends DataTableCellProps, UnknownProperties {}\nexport type DataTableCellProps<Name extends string = string> = FlexProps & {\n /** Unique name for column or columns separated by / */\n name: Name;\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 ? reversedSortDirection[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 const animations = columns\n .flatMap((column) => column.props.ref.current?.getAnimations?.())\n .filter((a) => a !== undefined) as Animation[];\n\n let animationPromise: Promise<Animation[] | void> = Promise.resolve();\n\n if (animations.length > 0) {\n animationPromise = Promise.all(\n animations.map((animation) => {\n return animation.finished;\n }),\n );\n }\n\n animationPromise.then(() => {\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\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 : defaultSortDirection),\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 .flatMap((subRow) => Object.keys(subRow))\n .flatMap((key) => key.split('/'))\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 componentDidMount() {\n this.setVarStyle(this.columns);\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\ntype DataTableCtx = {\n getHeadProps: PropGetterFn;\n getBodyProps: PropGetterFn;\n};\n\nfunction ComponentDefinition() {\n return null;\n}\n\ntype IntergalacticDataTableComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n DataTableProps<Data> & PropsExtending,\n DataTableCtx,\n never\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps>;\n\ntype IntergalacticDataTableRowComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableRowProps & {\n /**\n * That property is ONLY used for the component strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps>;\n\ntype IntergalacticDataTableCellComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[] = [],\n Name extends string = string,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableCellProps<Name> & {\n /**\n * That property is ONLY used for the componenct strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableCellProps>;\n\nconst DefinitionTable = createComponent(\n RootDefinitionTable,\n {\n Head,\n Body,\n Column: ComponentDefinition,\n Cell: ComponentDefinition,\n Row: ComponentDefinition,\n },\n {},\n) as IntergalacticDataTableComponent & {\n Head: Intergalactic.Component<'div', DataTableHeadProps>;\n Body: Intergalactic.Component<'div', DataTableBodyProps>;\n Column: Intergalactic.Component<'div', DataTableColumnProps>;\n Row: IntergalacticDataTableRowComponent;\n Cell: IntergalacticDataTableCellComponent;\n};\n\nexport { ROW_GROUP };\nexport default DefinitionTable;\n\nexport const wrapDataTable = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableRow = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableRowComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableRowComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableCell = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableCellComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableCellComponent<PropsExtending> => wrapper as any;\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","reversedSortDirection","desc","asc","defaultSortDirection","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","_this2","animations","flatMap","_column$props$ref$cur","_column$props$ref$cur2","ref","getAnimations","filter","a","undefined","animationPromise","Promise","resolve","all","map","animation","finished","then","_iterator","_createForOfIteratorHelper","_step","s","n","done","setVar","_this2$tableRef$curre","setProperty","varWidth","width","err","e","f","console","error","childrenToColumns","children","_this3","options","arguments","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","_ref4","join","toArray","columnChildren","_this$props$ref$curre","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","_this4","parseData","exclude","row","groupByName","columnsWithoutRowGroup","rowKey","columnNames","_iterator2","_step2","groupedColumns","groupData","rowsGroup","rowsGroupedNames","Object","fromEntries","subRow","keys","cells","_groupByName$column$n","cssVar","flatRowData","componentDidMount","componentDidUpdate","render","_ref","_ref2","SDataTable","_this$asProps3","styles","createElement","cn","_assignProps","ComponentDefinition","wrapDataTable","wrapper","wrapDataTableRow","wrapDataTableCell"],"sources":["../../src/DataTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Property } from 'csstype';\nimport createComponent, {\n Component,\n PropGetterFn,\n Root,\n sstyled,\n UnknownProperties,\n Intergalactic,\n} from '@semcore/core';\nimport { Box, BoxProps, FlexProps } 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 reversedSortDirection: { [direction in SortDirection]: SortDirection } = {\n desc: 'asc',\n asc: 'desc',\n};\nconst defaultSortDirection: SortDirection = 'desc';\n\nconst ROW_GROUP = Symbol('ROW_GROUP');\n\nconst cssVarReg = /[:;\\W]/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\nexport type DataTableData = { [key: string]: unknown };\nexport type DataTableSort<Columns extends string | number | symbol = string> = [\n sortBy: Columns,\n sortDirection: 'desc' | 'asc',\n];\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\n/** @deprecated */\nexport interface IDataTableProps<\n DataTableData extends { [key: string]: any }[] = UnknownProperties[],\n> extends DataTableProps<DataTableData> {}\nexport type DataTableProps<DataTableData extends { [key: string]: any }[] = UnknownProperties[]> =\n BoxProps & {\n /** Table theme according to visual hierarchy on the page\n * @default primary\n * */\n use?: DataTableUse;\n /** Data for table */\n data?: DataTableData;\n /** Active sort object */\n sort?: DataTableSort<keyof DataTableData[0]>;\n /** Handler call when request will change sort */\n onSortChange?: (sort: DataTableSort<keyof DataTableData[0]>, e?: React.SyntheticEvent) => void;\n /** Field name in one data entity that is unique accross all dataset\n * @default id\n */\n uniqueKey?: keyof DataTableData[0];\n /** Make cells compact by changing left and right paddings to smaller ones*/\n compact?: boolean;\n };\n\n/** @deprecated */\nexport interface IDataTableHeadProps extends DataTableHeadProps, UnknownProperties {}\nexport type DataTableHeadProps = BoxProps & {\n /** Sticky table header\n * @deprecated\n * */\n sticky?: boolean;\n\n /** Hidden header */\n hidden?: boolean;\n\n /** Disabled scroll (as action) */\n disabledScroll?: boolean;\n\n /** Enable scroll bar element in header */\n withScrollBar?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableColumnProps extends DataTableColumnProps, UnknownProperties {}\nexport type DataTableColumnProps = FlexProps & {\n /** Unique column name */\n name?: string;\n /** Enable sorting for column. And if you are passing a string, you can also set the default sorting */\n sortable?: boolean | 'desc' | 'asc';\n /** Enable resize for column\n * @ignore */\n resizable?: boolean;\n /** Fix column on the left o right side of the table */\n fixed?: 'left' | 'right';\n /** Fields to control the size of the column */\n flex?: Property.Flex | 'inherit';\n /** Add vertical border to the column */\n vBorders?: boolean;\n /** Add vertical border to the right side of the cell */\n borderRight?: boolean;\n /** Add vertical border to the left side of the cell */\n borderLeft?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableBodyProps extends DataTableBodyProps, UnknownProperties {}\nexport type DataTableBodyProps = BoxProps & {\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 /** Allows to redefine rows renderning for a very deep and even fragile customization like building custom virtual scrolling */\n renderRows?: (props: {\n rows: DataTableRow[];\n columns: Column[];\n renderRow: (row: DataTableRow, details: { dataIndex: number }) => React.ReactNode;\n }) => React.ReactNode;\n /**\n * Called every time user scrolls area\n */\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /** Disabled scroll */\n disabledScroll?: boolean;\n\n /** Disables column width change animation **/\n animationsDisabled?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableRowProps extends DataTableRowProps, UnknownProperties {}\nexport type DataTableRowProps = BoxProps & {\n /** Theme for row */\n theme?: DataTableTheme;\n /** Sets row state to active*/\n active?: boolean;\n};\n\n/** @deprecated */\nexport interface IDataTableCellProps extends DataTableCellProps, UnknownProperties {}\nexport type DataTableCellProps<Name extends string = string> = FlexProps & {\n /** Unique name for column or columns separated by / */\n name: Name;\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 ? reversedSortDirection[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 const animations = columns\n .flatMap((column) => column.props.ref.current?.getAnimations?.())\n .filter((a) => a !== undefined) as Animation[];\n\n let animationPromise: Promise<Animation[] | void> = Promise.resolve();\n\n if (animations.length > 0) {\n animationPromise = Promise.all(\n animations.map((animation) => {\n return animation.finished;\n }),\n );\n }\n\n animationPromise\n .then(() => {\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 .catch((err) => {\n console.error(err);\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 : defaultSortDirection),\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 .flatMap((subRow) => Object.keys(subRow))\n .flatMap((key) => key.split('/'))\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 componentDidMount() {\n this.setVarStyle(this.columns);\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\ntype DataTableCtx = {\n getHeadProps: PropGetterFn;\n getBodyProps: PropGetterFn;\n};\n\nfunction ComponentDefinition() {\n return null;\n}\n\ntype IntergalacticDataTableComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n DataTableProps<Data> & PropsExtending,\n DataTableCtx,\n never\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps>;\n\ntype IntergalacticDataTableRowComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[],\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableRowProps & {\n /**\n * That property is ONLY used for the component strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps>;\n\ntype IntergalacticDataTableCellComponent<PropsExtending extends {} = {}> = (<\n Data extends DataTableData[] = [],\n Name extends string = string,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.PropsRenderingResultComponentProps<\n Tag,\n DataTableCellProps<Name> & {\n /**\n * That property is ONLY used for the componenct strict typings. In the component runtime `data` prop set on `<DataTable>...</DataTable> is used.\n */\n data?: Data;\n } & PropsExtending,\n DataTableCtx & { data: Data },\n [row: Data[0], index: number]\n >,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableCellProps>;\n\nconst DefinitionTable = createComponent(\n RootDefinitionTable,\n {\n Head,\n Body,\n Column: ComponentDefinition,\n Cell: ComponentDefinition,\n Row: ComponentDefinition,\n },\n {},\n) as IntergalacticDataTableComponent & {\n Head: Intergalactic.Component<'div', DataTableHeadProps>;\n Body: Intergalactic.Component<'div', DataTableBodyProps>;\n Column: Intergalactic.Component<'div', DataTableColumnProps>;\n Row: IntergalacticDataTableRowComponent;\n Cell: IntergalacticDataTableCellComponent;\n};\n\nexport { ROW_GROUP };\nexport default DefinitionTable;\n\nexport const wrapDataTable = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableRow = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableRowComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableRowComponent<PropsExtending> => wrapper as any;\n\nexport const wrapDataTableCell = <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticDataTableCellComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n): IntergalacticDataTableCellComponent<PropsExtending> => wrapper as any;\n"],"mappings":"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"}
|
package/lib/types/Body.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/data-table",
|
|
3
3
|
"description": "Semrush DataTable Component",
|
|
4
|
-
"version": "4.40.
|
|
4
|
+
"version": "4.40.5",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/es6/index.js",
|
|
7
7
|
"typings": "lib/types/index.d.ts",
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"author": "UI-kit team <ui-kit-team@semrush.com>",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@semcore/flex-box": "5.
|
|
13
|
-
"@semcore/icon": "4.
|
|
14
|
-
"@semcore/scroll-area": "5.
|
|
15
|
-
"@semcore/utils": "4.
|
|
12
|
+
"@semcore/flex-box": "5.29.0",
|
|
13
|
+
"@semcore/icon": "4.39.1",
|
|
14
|
+
"@semcore/scroll-area": "5.32.0",
|
|
15
|
+
"@semcore/utils": "4.30.0"
|
|
16
16
|
},
|
|
17
17
|
"devDependencies": {
|
|
18
18
|
"@types/react": "18.0.21",
|