@semcore/data-table 3.1.0 → 3.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/lib/cjs/Body.js +23 -20
- package/lib/cjs/Body.js.map +1 -1
- package/lib/cjs/DataTable.js +57 -47
- package/lib/cjs/DataTable.js.map +1 -1
- package/lib/cjs/Head.js +7 -7
- package/lib/cjs/Head.js.map +1 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/types.js.map +1 -1
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/Body.js +23 -20
- package/lib/es6/Body.js.map +1 -1
- package/lib/es6/DataTable.js +57 -47
- package/lib/es6/DataTable.js.map +1 -1
- package/lib/es6/Head.js +7 -7
- package/lib/es6/Head.js.map +1 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/types.js.map +1 -1
- package/lib/es6/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/Body.tsx +0 -264
- package/src/DataTable.tsx +0 -444
- package/src/Head.tsx +0 -142
- package/src/index.ts +0 -2
- package/src/style/data-table.shadow.css +0 -295
- package/src/style/scroll-area.shadow.css +0 -6
- package/src/types.ts +0 -53
- package/src/utils.ts +0 -55
package/lib/cjs/Head.js
CHANGED
|
@@ -56,14 +56,14 @@ var scrollStyles = (
|
|
|
56
56
|
/*__reshadow_css_start__*/
|
|
57
57
|
_core.sstyled.insert(
|
|
58
58
|
/*__inner_css_start__*/
|
|
59
|
-
".
|
|
59
|
+
".___SShadowHorizontal_1mvso_gg_:before{left:var(--left_1mvso)!important}.___SShadowHorizontal_1mvso_gg_:after{right:var(--right_1mvso)!important}"
|
|
60
60
|
/*__inner_css_end__*/
|
|
61
|
-
, "
|
|
61
|
+
, "1mvso_gg_")
|
|
62
62
|
/*__reshadow_css_end__*/
|
|
63
63
|
, {
|
|
64
|
-
"__SShadowHorizontal": "
|
|
65
|
-
"--left": "--
|
|
66
|
-
"--right": "--
|
|
64
|
+
"__SShadowHorizontal": "___SShadowHorizontal_1mvso_gg_",
|
|
65
|
+
"--left": "--left_1mvso",
|
|
66
|
+
"--right": "--right_1mvso"
|
|
67
67
|
});
|
|
68
68
|
var SORTING_ICON = {
|
|
69
69
|
desc: _m["default"],
|
|
@@ -113,7 +113,7 @@ var Head = /*#__PURE__*/function (_Component) {
|
|
|
113
113
|
}, {
|
|
114
114
|
key: "renderColumn",
|
|
115
115
|
value: function renderColumn(column, width) {
|
|
116
|
-
var _ref2;
|
|
116
|
+
var _ref2, _column$columns;
|
|
117
117
|
|
|
118
118
|
var _this$asProps = this.asProps,
|
|
119
119
|
styles = _this$asProps.styles,
|
|
@@ -122,7 +122,7 @@ var Head = /*#__PURE__*/function (_Component) {
|
|
|
122
122
|
var SColumn = _flexBox.Flex;
|
|
123
123
|
var SHead = _flexBox.Box;
|
|
124
124
|
var SSortIcon = SORTING_ICON[column.sortDirection];
|
|
125
|
-
var isGroup = column.columns
|
|
125
|
+
var isGroup = ((_column$columns = column.columns) === null || _column$columns === void 0 ? void 0 : _column$columns.length) > 0;
|
|
126
126
|
var cSize = isGroup ? (0, _utils.flattenColumns)(column.columns).length : 1;
|
|
127
127
|
|
|
128
128
|
var _getFixedStyle = (0, _utils.getFixedStyle)(column, this.columns),
|
package/lib/cjs/Head.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Head.js","names":["SORTING_ICON","desc","SortDesc","asc","SortAsc","Head","name","event","asProps","$onSortClick","code","columns","width","map","column","renderColumn","styles","use","hidden","SColumn","Flex","SHead","Box","SSortIcon","sortDirection","isGroup","length","cSize","flattenColumns","getFixedStyle","value","style","flexBasis","props","flex","undefined","sstyled","fixed","resizable","sortable","active","callAllEventHandlers","onClick","bindHandlerSortClick","onKeyDown","bindHandlerKeyDown","children","renderColumns","SHeadWrapper","Children","columnsChildren","onResize","$scrollRef","sticky","getScrollOffsetValue","offsetLeftSum","offsetRightSum","logger","warn","displayName","scrollStyles","origin","Component"],"sources":["../../src/Head.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport SortDesc from '@semcore/icon/SortDesc/m';\nimport SortAsc from '@semcore/icon/SortAsc/m';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport { flattenColumns, getFixedStyle, getScrollOffsetValue } from './utils';\nimport type { Column } from './types';\nimport logger from '@semcore/utils/lib/logger';\nimport 'resize-observer-polyfill';\n\nimport scrollStyles from './style/scroll-area.shadow.css';\n\nconst SORTING_ICON = {\n desc: SortDesc,\n asc: SortAsc,\n} as const;\n\ntype AsProps = {\n $onSortClick: (name: string, event: React.MouseEvent | React.KeyboardEvent) => void;\n $scrollRef: (instance: unknown) => void;\n use: 'primary' | 'secondary';\n columnsChildren: Column[];\n onResize: ResizeObserverCallback;\n sticky: boolean;\n ['data-ui-name']: string;\n};\n\nclass Head extends Component<AsProps> {\n columns: Column[] = [];\n\n static displayName: string;\n\n bindHandlerSortClick = (name: string) => (event: React.MouseEvent) => {\n this.asProps.$onSortClick(name, event);\n };\n\n bindHandlerKeyDown = (name: string) => (event: React.KeyboardEvent) => {\n if (event.code === 'Enter') {\n this.asProps.$onSortClick(name, event);\n }\n };\n\n renderColumns(columns: Column[], width: number) {\n return columns.map((column) => this.renderColumn(column, width));\n }\n\n renderColumn(column: Column, width: number) {\n const { styles, use, hidden } = this.asProps;\n const SColumn = Flex;\n const SHead = Box;\n const SSortIcon = SORTING_ICON[column.sortDirection];\n const isGroup = column.columns?.length > 0;\n const cSize = isGroup ? flattenColumns(column.columns).length : 1;\n const [name, value] = getFixedStyle(column, this.columns);\n\n const style = {\n flexBasis: column.props.flex === undefined && `${width * cSize}%`,\n ...column.props.style,\n };\n\n if (name !== undefined && value !== undefined) {\n style[name] = value;\n }\n\n return sstyled(styles)(\n <SColumn\n key={column.name}\n use={use}\n fixed={column.fixed}\n resizable={column.resizable}\n sortable={column.sortable}\n active={column.active}\n group={isGroup}\n tabIndex={column.sortable && 0}\n {...column.props}\n onClick={callAllEventHandlers(\n column.props.onClick,\n column.sortable ? this.bindHandlerSortClick(column.name) : undefined,\n )}\n onKeyDown={callAllEventHandlers(\n column.props.onKeyDown,\n column.sortable ? this.bindHandlerKeyDown(column.name) : undefined,\n )}\n style={style}\n hidden={hidden}\n >\n {isGroup ? (\n <>\n <SColumn groupHead use={use}>\n <div>{column.props.children}</div>\n </SColumn>\n <SHead>{this.renderColumns(column.columns, 100 / cSize)}</SHead>\n </>\n ) : (\n <>\n <div>{column.props.children}</div>\n {column.sortable ? <SSortIcon active={column.active} /> : null}\n </>\n )}\n </SColumn>,\n );\n }\n\n render() {\n const SHead = Root;\n const SHeadWrapper = Box;\n const { Children, styles, columnsChildren, onResize, $scrollRef, sticky } = this.asProps;\n\n this.columns = flattenColumns(columnsChildren);\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(this.columns);\n\n logger.warn(\n sticky,\n \"'sticky' property is deprecated, use '<Sticky/>' wrapper\",\n this.asProps['data-ui-name'] || Head.displayName,\n );\n\n return sstyled(styles)(\n <SHeadWrapper sticky={sticky}>\n <ScrollArea\n styles={scrollStyles}\n use:left={`${offsetLeftSum}px`}\n use:right={`${offsetRightSum}px`}\n shadow\n onResize={onResize}\n >\n <ScrollArea.Container ref={$scrollRef}>\n <SHead render={Box}>\n {this.renderColumns(columnsChildren, 100 / this.columns.length)}\n </SHead>\n </ScrollArea.Container>\n </ScrollArea>\n {Children.origin}\n </SHeadWrapper>,\n );\n }\n}\n\nexport default Head;\n"],"mappings":"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"}
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export { default } from './DataTable';\nexport * from './DataTable';\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
package/lib/cjs/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../src/types.ts"],"sourcesContent":["import React from 'react';\nimport { ROW_GROUP } from './DataTable';\n\nexport type PseudoChildPropsGetter = (\n props: { [propName: string]: unknown },\n rowData: { [columnName: string]: unknown },\n index: number,\n) => { [propName: string]: unknown };\nexport type PropsLayer = {\n childrenPropsGetter?: PseudoChildPropsGetter;\n [propName: string]: unknown;\n};\n\nexport type SortDirection = 'asc' | 'desc';\nexport type Column<\n Props extends { [propName: string]: unknown } = { [propName: string]: unknown },\n> = {\n name: string;\n active: boolean;\n width: number;\n fixed?: 'left' | 'right';\n resizable?: boolean;\n sortable?: boolean | SortDirection;\n sortDirection: SortDirection;\n cssVar: string | string[];\n data?: unknown;\n props: {\n name: string;\n } & Partial<{\n onClick: (event: React.MouseEvent) => void;\n onKeyDown: (event: React.KeyboardEvent) => void;\n ref: React.RefObject<HTMLElement>;\n style: React.CSSProperties;\n fixed: 'left' | 'right';\n children: React.ReactNode[];\n resizable: boolean;\n sortable: boolean | SortDirection;\n sortDirection: SortDirection;\n }> &\n Props;\n columns: Column[];\n};\nexport type Cell = Pick<Column, 'name' | 'cssVar' | 'fixed' | 'data'> & {\n cellPropsLayers: PropsLayer[];\n};\nexport type RowData<\n Data extends { [columnName: string]: unknown } = { [columnName: string]: unknown },\n> = Data &\n Partial<{\n name: string;\n [ROW_GROUP]: RowData[];\n }>;\nexport type NestedCells = (Cell | NestedCells)[] & { flatRowData?: RowData };\n"],"mappings":";;AACA"}
|
package/lib/cjs/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"utils.js","names":["getScrollOffsetValue","columns","reduce","acc","column","fixed","width","flattenColumns","hasNestedColumns","length","concat","getFixedStyle","cell","side","undefined","names","name","split","nameSideMap","left","right","index","findIndex","startIndexSideMap","endIndexSideMap","columnsFixed","slice","vars","map","join"],"sources":["../../src/utils.ts"],"sourcesContent":["import type { Column } from './types';\n\nexport const getScrollOffsetValue = (columns: Column[]) =>\n columns.reduce(\n (acc, column) => {\n if (column.fixed === 'left') {\n acc[0] += column.width;\n }\n if (column.fixed === 'right') {\n acc[1] += column.width;\n }\n return acc;\n },\n [0, 0] as [leftOffset: number, rightOffset: number],\n );\n\nexport const flattenColumns = (columns: Column[]) =>\n columns.reduce((acc, column) => {\n const hasNestedColumns = 'columns' in column && column.columns.length > 0;\n const columns: Column[] = hasNestedColumns ? flattenColumns(column.columns) : [column];\n acc = acc.concat(columns);\n return acc;\n }, [] as Column[]);\n\nexport const getFixedStyle = (\n cell: Pick<Column, 'name' | 'fixed'>,\n columns: Column[],\n): [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined] => {\n const side = cell.fixed;\n if (!side) return [undefined, undefined];\n const names = cell.name.split('/');\n const nameSideMap = {\n left: names[0],\n right: names[names.length - 1],\n };\n const name = nameSideMap[side];\n const index = columns.findIndex((column) => column.name === name);\n\n if (index === -1) return [undefined, undefined];\n\n const startIndexSideMap = {\n left: 0,\n right: index,\n };\n const endIndexSideMap = {\n left: index,\n right: columns.length - 1,\n };\n const columnsFixed = columns.slice(startIndexSideMap[side], endIndexSideMap[side]);\n\n if (columnsFixed.length < 1) return [side, 0];\n\n const vars = columnsFixed.map((column) => `var(--${column.name}_width)`);\n return [side, vars.length === 1 ? vars[0] : `calc(${vars.join(' + ')})`];\n};\n"],"mappings":";;;;;;;AAEO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,OAAD;EAAA,OAClCA,OAAO,CAACC,MAAR,CACE,UAACC,GAAD,EAAMC,MAAN,EAAiB;IACf,IAAIA,MAAM,CAACC,KAAP,KAAiB,MAArB,EAA6B;MAC3BF,GAAG,CAAC,CAAD,CAAH,IAAUC,MAAM,CAACE,KAAjB;IACD;;IACD,IAAIF,MAAM,CAACC,KAAP,KAAiB,OAArB,EAA8B;MAC5BF,GAAG,CAAC,CAAD,CAAH,IAAUC,MAAM,CAACE,KAAjB;IACD;;IACD,OAAOH,GAAP;EACD,CATH,EAUE,CAAC,CAAD,EAAI,CAAJ,CAVF,CADkC;AAAA,CAA7B;;;;AAcA,IAAMI,cAAc,GAAG,SAAjBA,cAAiB,CAACN,OAAD;EAAA,OAC5BA,OAAO,CAACC,MAAR,CAAe,UAACC,GAAD,EAAMC,MAAN,EAAiB;IAC9B,IAAMI,gBAAgB,GAAG,aAAaJ,MAAb,IAAuBA,MAAM,CAACH,OAAP,CAAeQ,MAAf,GAAwB,CAAxE;IACA,IAAMR,OAAiB,GAAGO,gBAAgB,GAAGD,cAAc,CAACH,MAAM,CAACH,OAAR,CAAjB,GAAoC,CAACG,MAAD,CAA9E;IACAD,GAAG,GAAGA,GAAG,CAACO,MAAJ,CAAWT,OAAX,CAAN;IACA,OAAOE,GAAP;EACD,CALD,EAKG,EALH,CAD4B;AAAA,CAAvB;;;;AAQA,IAAMQ,aAAa,GAAG,SAAhBA,aAAgB,CAC3BC,IAD2B,EAE3BX,OAF2B,EAGgE;EAC3F,IAAMY,IAAI,GAAGD,IAAI,CAACP,KAAlB;EACA,IAAI,CAACQ,IAAL,EAAW,OAAO,CAACC,SAAD,EAAYA,SAAZ,CAAP;EACX,IAAMC,KAAK,GAAGH,IAAI,CAACI,IAAL,CAAUC,KAAV,CAAgB,GAAhB,CAAd;EACA,IAAMC,WAAW,GAAG;IAClBC,IAAI,EAAEJ,KAAK,CAAC,CAAD,CADO;IAElBK,KAAK,EAAEL,KAAK,CAACA,KAAK,CAACN,MAAN,GAAe,CAAhB;EAFM,CAApB;EAIA,IAAMO,IAAI,GAAGE,WAAW,CAACL,IAAD,CAAxB;EACA,IAAMQ,KAAK,GAAGpB,OAAO,CAACqB,SAAR,CAAkB,UAAClB,MAAD;IAAA,OAAYA,MAAM,CAACY,IAAP,KAAgBA,IAA5B;EAAA,CAAlB,CAAd;EAEA,IAAIK,KAAK,KAAK,CAAC,CAAf,EAAkB,OAAO,CAACP,SAAD,EAAYA,SAAZ,CAAP;EAElB,IAAMS,iBAAiB,GAAG;IACxBJ,IAAI,EAAE,CADkB;IAExBC,KAAK,EAAEC;EAFiB,CAA1B;EAIA,IAAMG,eAAe,GAAG;IACtBL,IAAI,EAAEE,KADgB;IAEtBD,KAAK,EAAEnB,OAAO,CAACQ,MAAR,GAAiB;EAFF,CAAxB;EAIA,IAAMgB,YAAY,GAAGxB,OAAO,CAACyB,KAAR,CAAcH,iBAAiB,CAACV,IAAD,CAA/B,EAAuCW,eAAe,CAACX,IAAD,CAAtD,CAArB;EAEA,IAAIY,YAAY,CAAChB,MAAb,GAAsB,CAA1B,EAA6B,OAAO,CAACI,IAAD,EAAO,CAAP,CAAP;EAE7B,IAAMc,IAAI,GAAGF,YAAY,CAACG,GAAb,CAAiB,UAACxB,MAAD;IAAA,uBAAqBA,MAAM,CAACY,IAA5B;EAAA,CAAjB,CAAb;EACA,OAAO,CAACH,IAAD,EAAOc,IAAI,CAAClB,MAAL,KAAgB,CAAhB,GAAoBkB,IAAI,CAAC,CAAD,CAAxB,kBAAsCA,IAAI,CAACE,IAAL,CAAU,KAAV,CAAtC,MAAP,CAAP;AACD,CA9BM"}
|
package/lib/es6/Body.js
CHANGED
|
@@ -40,14 +40,14 @@ var scrollStyles = (
|
|
|
40
40
|
/*__reshadow_css_start__*/
|
|
41
41
|
_sstyled.insert(
|
|
42
42
|
/*__inner_css_start__*/
|
|
43
|
-
".
|
|
43
|
+
".___SShadowHorizontal_1mvso_gg_:before{left:var(--left_1mvso)!important}.___SShadowHorizontal_1mvso_gg_:after{right:var(--right_1mvso)!important}"
|
|
44
44
|
/*__inner_css_end__*/
|
|
45
|
-
, "
|
|
45
|
+
, "1mvso_gg_")
|
|
46
46
|
/*__reshadow_css_end__*/
|
|
47
47
|
, {
|
|
48
|
-
"__SShadowHorizontal": "
|
|
49
|
-
"--left": "--
|
|
50
|
-
"--right": "--
|
|
48
|
+
"__SShadowHorizontal": "___SShadowHorizontal_1mvso_gg_",
|
|
49
|
+
"--left": "--left_1mvso",
|
|
50
|
+
"--right": "--right_1mvso"
|
|
51
51
|
});
|
|
52
52
|
import trottle from '@semcore/utils/lib/rafTrottle';
|
|
53
53
|
var testEnv = process.env.NODE_ENV === 'test';
|
|
@@ -81,13 +81,13 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
81
81
|
scrollOffset: 0
|
|
82
82
|
});
|
|
83
83
|
|
|
84
|
-
_defineProperty(_assertThisInitialized(_this), "firstRowRef", React.createRef());
|
|
84
|
+
_defineProperty(_assertThisInitialized(_this), "firstRowRef", /*#__PURE__*/React.createRef());
|
|
85
85
|
|
|
86
86
|
_defineProperty(_assertThisInitialized(_this), "firstRowResizeObserver", null);
|
|
87
87
|
|
|
88
88
|
_defineProperty(_assertThisInitialized(_this), "getRowHeight", function () {
|
|
89
89
|
var virtualScroll = _this.asProps.virtualScroll;
|
|
90
|
-
var rowHeightFromProps = _typeof(virtualScroll) === 'object' && virtualScroll
|
|
90
|
+
var rowHeightFromProps = _typeof(virtualScroll) === 'object' && (virtualScroll === null || virtualScroll === void 0 ? void 0 : virtualScroll.rowHeight);
|
|
91
91
|
return rowHeightFromProps || _this.state.rowHeight;
|
|
92
92
|
});
|
|
93
93
|
|
|
@@ -162,7 +162,7 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
162
162
|
"data-ui-name": "group-cell"
|
|
163
163
|
}), _this2.renderRows(cell));
|
|
164
164
|
} else {
|
|
165
|
-
var _ref3;
|
|
165
|
+
var _ref3, _column$props;
|
|
166
166
|
|
|
167
167
|
var column = columns.find(function (c) {
|
|
168
168
|
return c.name === cell.name;
|
|
@@ -179,7 +179,7 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
179
179
|
var props = {
|
|
180
180
|
name: cell.name,
|
|
181
181
|
children: /*#__PURE__*/React.createElement(React.Fragment, null, cell.data),
|
|
182
|
-
justifyContent: column
|
|
182
|
+
justifyContent: column === null || column === void 0 ? void 0 : (_column$props = column.props) === null || _column$props === void 0 ? void 0 : _column$props.justifyContent,
|
|
183
183
|
style: {
|
|
184
184
|
width: vars.length === 1 ? vars[0] : "calc(".concat(vars.join(' + '), ")")
|
|
185
185
|
}
|
|
@@ -235,7 +235,7 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
235
235
|
rowPropsLayers = _this$asProps2.rowPropsLayers,
|
|
236
236
|
uniqueKey = _this$asProps2.uniqueKey,
|
|
237
237
|
virtualScroll = _this$asProps2.virtualScroll;
|
|
238
|
-
var rowHeightFromProps = _typeof(virtualScroll) === 'object' && virtualScroll
|
|
238
|
+
var rowHeightFromProps = _typeof(virtualScroll) === 'object' && (virtualScroll === null || virtualScroll === void 0 ? void 0 : virtualScroll.rowHeight);
|
|
239
239
|
var rowData = cells.flatRowData || getCellsByColumn(cells);
|
|
240
240
|
var key = rowData[uniqueKey] ? String(rowData[uniqueKey]) : "row_".concat(dataIndex);
|
|
241
241
|
var needToMeasureHeight = dataIndex === 0 && !nested && !rowHeightFromProps;
|
|
@@ -288,7 +288,8 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
288
288
|
}, {
|
|
289
289
|
key: "renderVirtualizedRows",
|
|
290
290
|
value: function renderVirtualizedRows(rows) {
|
|
291
|
-
var
|
|
291
|
+
var _ref8,
|
|
292
|
+
_this4 = this;
|
|
292
293
|
|
|
293
294
|
if (rows.length === 0) return [];
|
|
294
295
|
var virtualScroll = this.asProps.virtualScroll;
|
|
@@ -296,10 +297,10 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
296
297
|
scrollOffset = _this$state.scrollOffset,
|
|
297
298
|
scrollAreaHeight = _this$state.scrollAreaHeight;
|
|
298
299
|
var rowHeight = this.getRowHeight();
|
|
299
|
-
var tollerance = (_typeof(virtualScroll) === 'object' ? virtualScroll
|
|
300
|
+
var tollerance = (_ref8 = _typeof(virtualScroll) === 'object' ? virtualScroll === null || virtualScroll === void 0 ? void 0 : virtualScroll.tollerance : 2) !== null && _ref8 !== void 0 ? _ref8 : 2;
|
|
300
301
|
var startIndex = Math.max(Math.floor(scrollOffset / rowHeight) - tollerance, 0);
|
|
301
302
|
var lastIndex = Math.min(Math.ceil((scrollOffset + scrollAreaHeight) / rowHeight) + tollerance, rows.length);
|
|
302
|
-
var rowHeightFromProps = _typeof(virtualScroll) === 'object' && virtualScroll
|
|
303
|
+
var rowHeightFromProps = _typeof(virtualScroll) === 'object' && (virtualScroll === null || virtualScroll === void 0 ? void 0 : virtualScroll.rowHeight);
|
|
303
304
|
var needToMeasureFirstRowHeight = !rowHeightFromProps;
|
|
304
305
|
var firstRow = {
|
|
305
306
|
cells: rows[0],
|
|
@@ -319,10 +320,10 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
319
320
|
processedVisibleRows.unshift(firstRow);
|
|
320
321
|
}
|
|
321
322
|
|
|
322
|
-
return processedVisibleRows.map(function (
|
|
323
|
-
var cells =
|
|
324
|
-
dataIndex =
|
|
325
|
-
topOffset =
|
|
323
|
+
return processedVisibleRows.map(function (_ref9) {
|
|
324
|
+
var cells = _ref9.cells,
|
|
325
|
+
dataIndex = _ref9.dataIndex,
|
|
326
|
+
topOffset = _ref9.topOffset;
|
|
326
327
|
return _this4.renderRow(cells, {
|
|
327
328
|
dataIndex: dataIndex,
|
|
328
329
|
topOffset: topOffset,
|
|
@@ -333,7 +334,9 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
333
334
|
}, {
|
|
334
335
|
key: "componentWillUnmount",
|
|
335
336
|
value: function componentWillUnmount() {
|
|
336
|
-
|
|
337
|
+
var _this$firstRowResizeO;
|
|
338
|
+
|
|
339
|
+
(_this$firstRowResizeO = this.firstRowResizeObserver) === null || _this$firstRowResizeO === void 0 ? void 0 : _this$firstRowResizeO.disconnect();
|
|
337
340
|
}
|
|
338
341
|
}, {
|
|
339
342
|
key: "render",
|
|
@@ -355,8 +358,8 @@ var Body = /*#__PURE__*/function (_Component) {
|
|
|
355
358
|
virtualScroll = _this$asProps3.virtualScroll,
|
|
356
359
|
onResize = _this$asProps3.onResize,
|
|
357
360
|
onScroll = _this$asProps3.onScroll;
|
|
358
|
-
var columnsInitialized = columns.reduce(function (sum,
|
|
359
|
-
var width =
|
|
361
|
+
var columnsInitialized = columns.reduce(function (sum, _ref10) {
|
|
362
|
+
var width = _ref10.width;
|
|
360
363
|
return sum + width;
|
|
361
364
|
}, 0) > 0 || testEnv;
|
|
362
365
|
|
package/lib/es6/Body.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Body.tsx"],"names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","ResizeObserver","trottle","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","Body","rowHeight","undefined","scrollAreaHeight","scrollOffset","createRef","virtualScroll","asProps","rowHeightFromProps","state","entries","contentRect","height","setState","oldState","event","target","scrollTop","firstRowRef","current","firstRowResizeObserver","handleFirstRowResize","observe","rowData","index","SCell","styles","columns","use","Array","isArray","SGroupCell","renderRows","column","find","c","value","vars","cssVar","props","children","justifyContent","style","width","length","join","cellPropsLayers","cellPropLayer","childrenPropsGetter","p","other","propsCell","fixed","theme","dataIndex","topOffset","nested","SRow","rowPropsLayers","uniqueKey","flatRowData","key","String","needToMeasureHeight","renderCells","active","positioned","top","ref","rowPropsLayer","propsRow","rows","renderRow","getRowHeight","tollerance","startIndex","Math","max","floor","lastIndex","min","ceil","needToMeasureFirstRowHeight","firstRow","visibleRows","slice","processedVisibleRows","unshift","disconnect","SBody","SBodyWrapper","SScrollAreaBar","Bar","SHeightHold","Children","$scrollRef","onResize","onScroll","columnsInitialized","reduce","sum","offsetLeftSum","offsetRightSum","offsetSum","holdHeight","Promise","setupRowSizeObserver","scrollStyles","handleScrollAreaResize","handleScrollAreaScroll","renderVirtualizedRows","origin"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex, IBoxProps } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport { getFixedStyle, getScrollOffsetValue } from './utils';\nimport { RowData, Column, NestedCells, PropsLayer, Cell } from './types';\nimport assignProps, { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport scrollStyles from './style/scroll-area.shadow.css';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport trottle from '@semcore/utils/lib/rafTrottle';\n\nconst testEnv = process.env.NODE_ENV === 'test';\n\nconst getCellsByColumn = (cells: NestedCells): RowData => {\n const flattenCells = cells.flat(20) as Cell[];\n return Object.fromEntries(flattenCells.map((cell) => [cell.name, cell.data]));\n};\n\ntype AsProps = {\n rows: NestedCells[];\n columns: Column[];\n $scrollRef: ReturnType<ReturnType<typeof syncScroll>>;\n onResize: ResizeObserverCallback;\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n rowPropsLayers: PropsLayer[];\n use: 'primary' | 'secondary';\n uniqueKey: string;\n virtualScroll?: boolean | { tollerance?: number; rowHeight?: number };\n};\n\ntype State = {\n rowHeight: number | undefined;\n scrollAreaHeight: undefined | number;\n scrollOffset: number;\n};\n\nclass Body extends Component<AsProps, State> {\n state: State = {\n rowHeight: undefined,\n scrollAreaHeight: undefined,\n scrollOffset: 0,\n };\n\n firstRowRef = React.createRef<HTMLElement>();\n firstRowResizeObserver: ResizeObserver | null = null;\n\n getRowHeight = () => {\n const { virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n return rowHeightFromProps || this.state.rowHeight;\n };\n\n renderCells(cells: NestedCells, rowData: RowData, index: number) {\n const SCell = Flex;\n const { styles, columns, use } = this.asProps;\n return cells.map((cell) => {\n if (Array.isArray(cell)) {\n const SGroupCell = 'div';\n return sstyled(styles)(\n <SGroupCell data-ui-name=\"group-cell\">\n {this.renderRows(cell as NestedCells[])}\n </SGroupCell>,\n );\n } else {\n const column = columns.find((c) => c.name === cell.name);\n const [name, value] = getFixedStyle(cell, columns);\n const vars = (Array.isArray(cell.cssVar) ? cell.cssVar : [cell.cssVar]).map(\n (name) => `var(${name})`,\n );\n type CellProps = IBoxProps & {\n name: string;\n children: React.ReactNode;\n style: React.CSSProperties;\n };\n\n let props: CellProps = {\n name: cell.name,\n children: <>{cell.data}</>,\n justifyContent: column?.props?.justifyContent,\n style: {\n width: vars.length === 1 ? vars[0] : `calc(${vars.join(' + ')})`,\n },\n };\n if (name !== undefined && value !== undefined) {\n props.style[name] = value;\n }\n\n for (const cellPropLayer of cell.cellPropsLayers || []) {\n const { childrenPropsGetter = (p) => p, ...other } = cellPropLayer;\n const propsCell = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsCell, rowData, index), propsCell);\n }\n\n return sstyled(styles)(\n <SCell key={cell.name} {...props} fixed={cell.fixed} theme={props.theme} use={use} />,\n ) as React.ReactElement;\n }\n }, [] as React.ReactElement[]);\n }\n\n renderRow(\n cells: NestedCells,\n { dataIndex, topOffset, nested }: { dataIndex: number; topOffset?: number; nested: boolean },\n ) {\n const SRow = Box;\n const { styles, rowPropsLayers, uniqueKey, virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n\n const rowData = cells.flatRowData || getCellsByColumn(cells);\n const key = rowData[uniqueKey] ? String(rowData[uniqueKey]) : `row_${dataIndex}`;\n const needToMeasureHeight = dataIndex === 0 && !nested && !rowHeightFromProps;\n\n let props = {\n children: this.renderCells(cells, rowData, dataIndex),\n theme: undefined,\n active: undefined,\n positioned: topOffset !== undefined,\n top: topOffset,\n ref: needToMeasureHeight ? this.firstRowRef : undefined,\n key,\n };\n\n for (const rowPropsLayer of rowPropsLayers) {\n const { childrenPropsGetter = (p) => p, ...other } = rowPropsLayer;\n const propsRow = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsRow, rowData, dataIndex), propsRow);\n }\n\n return sstyled(styles)(<SRow {...props} />);\n }\n\n renderRows(rows: NestedCells[]) {\n return rows.map((cells, dataIndex) => this.renderRow(cells, { dataIndex, nested: false }));\n }\n\n renderVirtualizedRows(rows: NestedCells[]) {\n if (rows.length === 0) return [];\n\n const { virtualScroll } = this.asProps;\n const { scrollOffset, scrollAreaHeight } = this.state;\n const rowHeight = this.getRowHeight();\n\n const tollerance = (typeof virtualScroll === 'object' ? virtualScroll?.tollerance : 2) ?? 2;\n const startIndex = Math.max(Math.floor(scrollOffset / rowHeight!) - tollerance, 0);\n const lastIndex = Math.min(\n Math.ceil((scrollOffset + scrollAreaHeight!) / rowHeight!) + tollerance,\n rows.length,\n );\n\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n const needToMeasureFirstRowHeight = !rowHeightFromProps;\n\n const firstRow = { cells: rows[0], dataIndex: 0, topOffset: 0 };\n const visibleRows = rowHeight !== undefined ? rows.slice(startIndex, lastIndex) : [];\n const processedVisibleRows = visibleRows.map((cells, index) => ({\n cells,\n dataIndex: startIndex + index,\n topOffset: rowHeight! * (startIndex + index),\n }));\n if (needToMeasureFirstRowHeight && startIndex !== 0) {\n processedVisibleRows.unshift(firstRow);\n }\n\n return processedVisibleRows.map(({ cells, dataIndex, topOffset }) =>\n this.renderRow(cells, { dataIndex, topOffset, nested: false }),\n );\n }\n\n handleFirstRowResize = trottle((entries: ResizeObserverEntry[]) => {\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.rowHeight === height) return oldState;\n return { rowHeight: height };\n });\n });\n\n handleScrollAreaResize = trottle((entries: ResizeObserverEntry[]) => {\n const { virtualScroll } = this.asProps;\n if (!virtualScroll) return;\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.scrollAreaHeight === height) return oldState;\n return { scrollAreaHeight: height };\n });\n });\n\n handleScrollAreaScroll = (event: React.SyntheticEvent<HTMLElement>) => {\n const { scrollTop } = event.target as HTMLElement;\n const { virtualScroll } = this.asProps;\n if (virtualScroll) {\n this.setState((oldState: State) => {\n if (oldState.scrollOffset === scrollTop) return oldState;\n return { scrollOffset: scrollTop };\n });\n }\n };\n\n setupRowSizeObserver = () => {\n if (!this.firstRowRef.current) return;\n if (!this.asProps.virtualScroll) return;\n this.firstRowResizeObserver = new ResizeObserver(this.handleFirstRowResize);\n this.firstRowResizeObserver.observe(this.firstRowRef.current);\n };\n\n componentWillUnmount() {\n this.firstRowResizeObserver?.disconnect();\n }\n\n render() {\n const SBody = Root;\n const SBodyWrapper = Box;\n const SScrollAreaBar = ScrollArea.Bar;\n const SHeightHold = Box;\n const { Children, styles, rows, columns, $scrollRef, virtualScroll, onResize, onScroll } =\n this.asProps;\n\n const columnsInitialized = columns.reduce((sum, { width }) => sum + width, 0) > 0 || testEnv;\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(columns);\n const offsetSum = offsetLeftSum + offsetRightSum;\n\n const rowHeight = this.getRowHeight();\n const holdHeight =\n rowHeight !== undefined && virtualScroll ? rowHeight * rows.length : undefined;\n\n if (virtualScroll && columnsInitialized && !rowHeight) {\n new Promise(() => this.setupRowSizeObserver());\n }\n\n return sstyled(styles)(\n <SBodyWrapper>\n <ScrollArea\n shadow\n styles={scrollStyles}\n use:left={`${offsetLeftSum}px`}\n use:right={`${offsetRightSum}px`}\n onResize={callAllEventHandlers(onResize, this.handleScrollAreaResize)}\n onScroll={callAllEventHandlers(onScroll, this.handleScrollAreaScroll)}\n >\n <ScrollArea.Container ref={$scrollRef}>\n <SBody render={Box}>\n {holdHeight && <SHeightHold hMin={holdHeight} aria-hidden={true} />}\n {columnsInitialized && !virtualScroll ? this.renderRows(rows) : null}\n {columnsInitialized && virtualScroll ? this.renderVirtualizedRows(rows) : null}\n </SBody>\n </ScrollArea.Container>\n <SScrollAreaBar\n orientation=\"horizontal\"\n left={`${offsetLeftSum}px`}\n right={`${offsetRightSum}px`}\n offsetSum={`${offsetSum}px`}\n />\n <SScrollAreaBar orientation=\"vertical\" />\n </ScrollArea>\n {Children.origin}\n </SBodyWrapper>,\n );\n }\n}\n\nexport default Body;\n"],"file":"Body.js"}
|
|
1
|
+
{"version":3,"file":"Body.js","names":["React","Component","sstyled","Root","Box","Flex","ScrollArea","getFixedStyle","getScrollOffsetValue","assignProps","callAllEventHandlers","ResizeObserver","trottle","testEnv","process","env","NODE_ENV","getCellsByColumn","cells","flattenCells","flat","Object","fromEntries","map","cell","name","data","Body","rowHeight","undefined","scrollAreaHeight","scrollOffset","createRef","virtualScroll","asProps","rowHeightFromProps","state","entries","contentRect","height","setState","oldState","event","target","scrollTop","firstRowRef","current","firstRowResizeObserver","handleFirstRowResize","observe","rowData","index","SCell","styles","columns","use","Array","isArray","SGroupCell","renderRows","column","find","c","value","vars","cssVar","props","children","justifyContent","style","width","length","join","cellPropsLayers","cellPropLayer","childrenPropsGetter","p","other","propsCell","fixed","theme","dataIndex","topOffset","nested","SRow","rowPropsLayers","uniqueKey","flatRowData","key","String","needToMeasureHeight","renderCells","active","positioned","top","ref","rowPropsLayer","propsRow","rows","renderRow","getRowHeight","tollerance","startIndex","Math","max","floor","lastIndex","min","ceil","needToMeasureFirstRowHeight","firstRow","visibleRows","slice","processedVisibleRows","unshift","disconnect","SBody","SBodyWrapper","SScrollAreaBar","Bar","SHeightHold","Children","$scrollRef","onResize","onScroll","columnsInitialized","reduce","sum","offsetLeftSum","offsetRightSum","offsetSum","holdHeight","Promise","setupRowSizeObserver","scrollStyles","handleScrollAreaResize","handleScrollAreaScroll","renderVirtualizedRows","origin"],"sources":["../../src/Body.tsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex, IBoxProps } from '@semcore/flex-box';\nimport ScrollArea from '@semcore/scroll-area';\nimport { getFixedStyle, getScrollOffsetValue } from './utils';\nimport { RowData, Column, NestedCells, PropsLayer, Cell } from './types';\nimport assignProps, { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport scrollStyles from './style/scroll-area.shadow.css';\nimport syncScroll from '@semcore/utils/lib/syncScroll';\nimport trottle from '@semcore/utils/lib/rafTrottle';\n\nconst testEnv = process.env.NODE_ENV === 'test';\n\nconst getCellsByColumn = (cells: NestedCells): RowData => {\n const flattenCells = cells.flat(20) as Cell[];\n return Object.fromEntries(flattenCells.map((cell) => [cell.name, cell.data]));\n};\n\ntype AsProps = {\n rows: NestedCells[];\n columns: Column[];\n $scrollRef: ReturnType<ReturnType<typeof syncScroll>>;\n onResize: ResizeObserverCallback;\n onScroll?: (event: React.SyntheticEvent<HTMLElement>) => void;\n rowPropsLayers: PropsLayer[];\n use: 'primary' | 'secondary';\n uniqueKey: string;\n virtualScroll?: boolean | { tollerance?: number; rowHeight?: number };\n};\n\ntype State = {\n rowHeight: number | undefined;\n scrollAreaHeight: undefined | number;\n scrollOffset: number;\n};\n\nclass Body extends Component<AsProps, State> {\n state: State = {\n rowHeight: undefined,\n scrollAreaHeight: undefined,\n scrollOffset: 0,\n };\n\n firstRowRef = React.createRef<HTMLElement>();\n firstRowResizeObserver: ResizeObserver | null = null;\n\n getRowHeight = () => {\n const { virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n return rowHeightFromProps || this.state.rowHeight;\n };\n\n renderCells(cells: NestedCells, rowData: RowData, index: number) {\n const SCell = Flex;\n const { styles, columns, use } = this.asProps;\n return cells.map((cell) => {\n if (Array.isArray(cell)) {\n const SGroupCell = 'div';\n return sstyled(styles)(\n <SGroupCell data-ui-name=\"group-cell\">\n {this.renderRows(cell as NestedCells[])}\n </SGroupCell>,\n );\n } else {\n const column = columns.find((c) => c.name === cell.name);\n const [name, value] = getFixedStyle(cell, columns);\n const vars = (Array.isArray(cell.cssVar) ? cell.cssVar : [cell.cssVar]).map(\n (name) => `var(${name})`,\n );\n type CellProps = IBoxProps & {\n name: string;\n children: React.ReactNode;\n style: React.CSSProperties;\n };\n\n let props: CellProps = {\n name: cell.name,\n children: <>{cell.data}</>,\n justifyContent: column?.props?.justifyContent,\n style: {\n width: vars.length === 1 ? vars[0] : `calc(${vars.join(' + ')})`,\n },\n };\n if (name !== undefined && value !== undefined) {\n props.style[name] = value;\n }\n\n for (const cellPropLayer of cell.cellPropsLayers || []) {\n const { childrenPropsGetter = (p) => p, ...other } = cellPropLayer;\n const propsCell = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsCell, rowData, index), propsCell);\n }\n\n return sstyled(styles)(\n <SCell key={cell.name} {...props} fixed={cell.fixed} theme={props.theme} use={use} />,\n ) as React.ReactElement;\n }\n }, [] as React.ReactElement[]);\n }\n\n renderRow(\n cells: NestedCells,\n { dataIndex, topOffset, nested }: { dataIndex: number; topOffset?: number; nested: boolean },\n ) {\n const SRow = Box;\n const { styles, rowPropsLayers, uniqueKey, virtualScroll } = this.asProps;\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n\n const rowData = cells.flatRowData || getCellsByColumn(cells);\n const key = rowData[uniqueKey] ? String(rowData[uniqueKey]) : `row_${dataIndex}`;\n const needToMeasureHeight = dataIndex === 0 && !nested && !rowHeightFromProps;\n\n let props = {\n children: this.renderCells(cells, rowData, dataIndex),\n theme: undefined,\n active: undefined,\n positioned: topOffset !== undefined,\n top: topOffset,\n ref: needToMeasureHeight ? this.firstRowRef : undefined,\n key,\n };\n\n for (const rowPropsLayer of rowPropsLayers) {\n const { childrenPropsGetter = (p) => p, ...other } = rowPropsLayer;\n const propsRow = assignProps(other, props);\n props = assignProps(childrenPropsGetter(propsRow, rowData, dataIndex), propsRow);\n }\n\n return sstyled(styles)(<SRow {...props} />);\n }\n\n renderRows(rows: NestedCells[]) {\n return rows.map((cells, dataIndex) => this.renderRow(cells, { dataIndex, nested: false }));\n }\n\n renderVirtualizedRows(rows: NestedCells[]) {\n if (rows.length === 0) return [];\n\n const { virtualScroll } = this.asProps;\n const { scrollOffset, scrollAreaHeight } = this.state;\n const rowHeight = this.getRowHeight();\n\n const tollerance = (typeof virtualScroll === 'object' ? virtualScroll?.tollerance : 2) ?? 2;\n const startIndex = Math.max(Math.floor(scrollOffset / rowHeight!) - tollerance, 0);\n const lastIndex = Math.min(\n Math.ceil((scrollOffset + scrollAreaHeight!) / rowHeight!) + tollerance,\n rows.length,\n );\n\n const rowHeightFromProps = typeof virtualScroll === 'object' && virtualScroll?.rowHeight;\n const needToMeasureFirstRowHeight = !rowHeightFromProps;\n\n const firstRow = { cells: rows[0], dataIndex: 0, topOffset: 0 };\n const visibleRows = rowHeight !== undefined ? rows.slice(startIndex, lastIndex) : [];\n const processedVisibleRows = visibleRows.map((cells, index) => ({\n cells,\n dataIndex: startIndex + index,\n topOffset: rowHeight! * (startIndex + index),\n }));\n if (needToMeasureFirstRowHeight && startIndex !== 0) {\n processedVisibleRows.unshift(firstRow);\n }\n\n return processedVisibleRows.map(({ cells, dataIndex, topOffset }) =>\n this.renderRow(cells, { dataIndex, topOffset, nested: false }),\n );\n }\n\n handleFirstRowResize = trottle((entries: ResizeObserverEntry[]) => {\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.rowHeight === height) return oldState;\n return { rowHeight: height };\n });\n });\n\n handleScrollAreaResize = trottle((entries: ResizeObserverEntry[]) => {\n const { virtualScroll } = this.asProps;\n if (!virtualScroll) return;\n const { contentRect } = entries[0];\n const { height } = contentRect;\n this.setState((oldState: State) => {\n if (oldState.scrollAreaHeight === height) return oldState;\n return { scrollAreaHeight: height };\n });\n });\n\n handleScrollAreaScroll = (event: React.SyntheticEvent<HTMLElement>) => {\n const { scrollTop } = event.target as HTMLElement;\n const { virtualScroll } = this.asProps;\n if (virtualScroll) {\n this.setState((oldState: State) => {\n if (oldState.scrollOffset === scrollTop) return oldState;\n return { scrollOffset: scrollTop };\n });\n }\n };\n\n setupRowSizeObserver = () => {\n if (!this.firstRowRef.current) return;\n if (!this.asProps.virtualScroll) return;\n this.firstRowResizeObserver = new ResizeObserver(this.handleFirstRowResize);\n this.firstRowResizeObserver.observe(this.firstRowRef.current);\n };\n\n componentWillUnmount() {\n this.firstRowResizeObserver?.disconnect();\n }\n\n render() {\n const SBody = Root;\n const SBodyWrapper = Box;\n const SScrollAreaBar = ScrollArea.Bar;\n const SHeightHold = Box;\n const { Children, styles, rows, columns, $scrollRef, virtualScroll, onResize, onScroll } =\n this.asProps;\n\n const columnsInitialized = columns.reduce((sum, { width }) => sum + width, 0) > 0 || testEnv;\n\n const [offsetLeftSum, offsetRightSum] = getScrollOffsetValue(columns);\n const offsetSum = offsetLeftSum + offsetRightSum;\n\n const rowHeight = this.getRowHeight();\n const holdHeight =\n rowHeight !== undefined && virtualScroll ? rowHeight * rows.length : undefined;\n\n if (virtualScroll && columnsInitialized && !rowHeight) {\n new Promise(() => this.setupRowSizeObserver());\n }\n\n return sstyled(styles)(\n <SBodyWrapper>\n <ScrollArea\n shadow\n styles={scrollStyles}\n use:left={`${offsetLeftSum}px`}\n use:right={`${offsetRightSum}px`}\n onResize={callAllEventHandlers(onResize, this.handleScrollAreaResize)}\n onScroll={callAllEventHandlers(onScroll, this.handleScrollAreaScroll)}\n >\n <ScrollArea.Container ref={$scrollRef}>\n <SBody render={Box}>\n {holdHeight && <SHeightHold hMin={holdHeight} aria-hidden={true} />}\n {columnsInitialized && !virtualScroll ? this.renderRows(rows) : null}\n {columnsInitialized && virtualScroll ? this.renderVirtualizedRows(rows) : null}\n </SBody>\n </ScrollArea.Container>\n <SScrollAreaBar\n orientation=\"horizontal\"\n left={`${offsetLeftSum}px`}\n right={`${offsetRightSum}px`}\n offsetSum={`${offsetSum}px`}\n />\n <SScrollAreaBar orientation=\"vertical\" />\n </ScrollArea>\n {Children.origin}\n </SBodyWrapper>,\n );\n }\n}\n\nexport default Body;\n"],"mappings":"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"}
|
package/lib/es6/DataTable.js
CHANGED
|
@@ -40,46 +40,46 @@ var style = (
|
|
|
40
40
|
/*__reshadow_css_start__*/
|
|
41
41
|
_sstyled.insert(
|
|
42
42
|
/*__inner_css_start__*/
|
|
43
|
-
".
|
|
43
|
+
".___SDataTable_1jhi5_gg_{position:relative}.___SHeadWrapper_1jhi5_gg_{position:relative}.___SHeadWrapper_1jhi5_gg_.__sticky_1jhi5_gg_{position:-webkit-sticky;position:sticky;top:0;z-index:2}.___SHead_1jhi5_gg_{display:flex;position:relative;flex-direction:row;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;z-index:0}.___SColumn_1jhi5_gg_{display:flex;align-items:center;flex-grow:1;font-size:12px;color:#191b23;box-sizing:border-box;position:relative}.___SColumn_1jhi5_gg_:focus{outline:none;box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}.___SColumn_1jhi5_gg_.__hidden_1jhi5_gg_{height:0!important;padding:0!important;overflow:hidden!important;border:none!important}.___SColumn_1jhi5_gg_._use_primary_1jhi5_gg_{padding:12px;border-right:1px solid #e0e1e9;border-bottom:1px solid #e0e1e9;background-color:#f4f5f9}.___SColumn_1jhi5_gg_._use_secondary_1jhi5_gg_{padding:8px;border-bottom:1px solid #a9abb6;background-color:#ffffff}.___SColumn_1jhi5_gg_.__use_1jhi5_gg_:last-child{border-right:none}.___SColumn_1jhi5_gg_.__group_1jhi5_gg_.__use_1jhi5_gg_{display:flex;flex-wrap:wrap;flex-direction:column;align-items:normal;border-bottom:none;padding:0}.___SColumn_1jhi5_gg_.__groupHead_1jhi5_gg_.__use_1jhi5_gg_{justify-content:center;border-right:none;z-index:1}.___SColumn_1jhi5_gg_.__groupHead_1jhi5_gg_._use_primary_1jhi5_gg_{border-bottom:1px solid #e0e1e9}.___SColumn_1jhi5_gg_.__groupHead_1jhi5_gg_._use_secondary_1jhi5_gg_{border-bottom:1px solid #e0e1e9}.___SColumn_1jhi5_gg_.__sortable_1jhi5_gg_{cursor:pointer}.___SColumn_1jhi5_gg_.__sortable_1jhi5_gg_._use_primary_1jhi5_gg_:hover{background-color:#e0e1e9}.___SColumn_1jhi5_gg_.__active_1jhi5_gg_._use_primary_1jhi5_gg_{background-color:#e0e1e9}.___SColumn_1jhi5_gg_.__resizable_1jhi5_gg_:hover:after{background:#e0e1e9}.___SColumn_1jhi5_gg_.__resizable_1jhi5_gg_:after{content:\"\";position:absolute;bottom:0;right:-1px;height:100vh;width:1px;background:transparent;cursor:col-resize}.___SColumn_1jhi5_gg_.__fixed_1jhi5_gg_{position:-webkit-sticky;position:sticky;z-index:2}.___SSortIcon_1jhi5_gg_{fill:#a9abb6;margin-left:6px}.___SSortIcon_1jhi5_gg_.__active_1jhi5_gg_{fill:#8a8e9b}.___SBodyWrapper_1jhi5_gg_{position:relative}.___SBody_1jhi5_gg_{display:flex;flex-direction:column;position:relative;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content}.___SRow_1jhi5_gg_{display:flex;flex-direction:row;position:relative}.___SRow_1jhi5_gg_:hover>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_.__active_1jhi5_gg_>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_ .___SCell_1jhi5_gg_:hover+.___SGroupCell_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#f0f0f4}.___SRow_1jhi5_gg_._theme_muted_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#f2f3f4}.___SRow_1jhi5_gg_:hover>.___SCell_1jhi5_gg_._theme_muted_1jhi5_gg_,.___SRow_1jhi5_gg_._theme_muted_1jhi5_gg_:hover>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_muted_1jhi5_gg_.__active_1jhi5_gg_>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_muted_1jhi5_gg_ .___SCell_1jhi5_gg_:hover+.___SGroupCell_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#f6f7f7}.___SRow_1jhi5_gg_._theme_info_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#e9f7ff}.___SRow_1jhi5_gg_:hover>.___SCell_1jhi5_gg_._theme_info_1jhi5_gg_,.___SRow_1jhi5_gg_._theme_info_1jhi5_gg_:hover>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_info_1jhi5_gg_.__active_1jhi5_gg_>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_info_1jhi5_gg_ .___SCell_1jhi5_gg_:hover+.___SGroupCell_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#c4e5fe}.___SRow_1jhi5_gg_._theme_success_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#dbfee8}.___SRow_1jhi5_gg_:hover>.___SCell_1jhi5_gg_._theme_success_1jhi5_gg_,.___SRow_1jhi5_gg_._theme_success_1jhi5_gg_:hover>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_success_1jhi5_gg_.__active_1jhi5_gg_>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_success_1jhi5_gg_ .___SCell_1jhi5_gg_:hover+.___SGroupCell_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#9ef2c9}.___SRow_1jhi5_gg_._theme_warning_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#fff3d9}.___SRow_1jhi5_gg_:hover>.___SCell_1jhi5_gg_._theme_warning_1jhi5_gg_,.___SRow_1jhi5_gg_._theme_warning_1jhi5_gg_:hover>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_warning_1jhi5_gg_.__active_1jhi5_gg_>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_warning_1jhi5_gg_ .___SCell_1jhi5_gg_:hover+.___SGroupCell_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#ffdca2}.___SRow_1jhi5_gg_._theme_danger_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#fff0f7}.___SRow_1jhi5_gg_:hover>.___SCell_1jhi5_gg_._theme_danger_1jhi5_gg_,.___SRow_1jhi5_gg_._theme_danger_1jhi5_gg_:hover>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_danger_1jhi5_gg_.__active_1jhi5_gg_>.___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_),.___SRow_1jhi5_gg_._theme_danger_1jhi5_gg_ .___SCell_1jhi5_gg_:hover+.___SGroupCell_1jhi5_gg_ .___SCell_1jhi5_gg_:not(.__theme_1jhi5_gg_){background-color:#ffd7df}.___SRow_1jhi5_gg_.__positioned_1jhi5_gg_{position:absolute}.___SCell_1jhi5_gg_{display:flex;flex:1;flex-basis:auto;font-size:14px;line-height:1.42;color:#191b23;box-sizing:border-box;border-bottom:1px solid #e0e1e9;overflow:hidden;white-space:nowrap}.___SCell_1jhi5_gg_._use_primary_1jhi5_gg_{padding:12px;min-height:45px;background-color:#ffffff}.___SCell_1jhi5_gg_._use_secondary_1jhi5_gg_{padding:8px;min-height:37px;background-color:#ffffff}.___SCell_1jhi5_gg_.__fixed_1jhi5_gg_{position:-webkit-sticky;position:sticky;z-index:1}.___SCell_1jhi5_gg_._theme_muted_1jhi5_gg_{background-color:#f2f3f4}.___SCell_1jhi5_gg_._theme_info_1jhi5_gg_{background-color:#e9f7ff}.___SCell_1jhi5_gg_._theme_success_1jhi5_gg_{background-color:#dbfee8}.___SCell_1jhi5_gg_._theme_warning_1jhi5_gg_{background-color:#fff3d9}.___SCell_1jhi5_gg_._theme_danger_1jhi5_gg_{background-color:#fff0f7}.___SScrollAreaBar_1jhi5_gg_._orientation_horizontal_1jhi5_gg_{position:-webkit-sticky;position:sticky;bottom:0;left:0;margin-top:-12px;z-index:2}.___SScrollAreaBar_1jhi5_gg_._orientation_vertical_1jhi5_gg_{width:12px}.___SScrollAreaBar_1jhi5_gg_._orientation_horizontal_1jhi5_gg_{margin-left:calc(var(--left_1jhi5) + 4px);margin-right:calc(var(--right_1jhi5) + 4px);width:calc(100% - var(--offsetSum_1jhi5) - 8px)}.___SHeightHold_1jhi5_gg_{position:absolute;top:0;width:100%;pointer-events:none;z-index:-1}"
|
|
44
44
|
/*__inner_css_end__*/
|
|
45
|
-
, "
|
|
45
|
+
, "1jhi5_gg_")
|
|
46
46
|
/*__reshadow_css_end__*/
|
|
47
47
|
, {
|
|
48
|
-
"__SDataTable": "
|
|
49
|
-
"__SHeadWrapper": "
|
|
50
|
-
"_sticky": "
|
|
51
|
-
"__SHead": "
|
|
52
|
-
"__SColumn": "
|
|
53
|
-
"_hidden": "
|
|
54
|
-
"_use_primary": "
|
|
55
|
-
"_use_secondary": "
|
|
56
|
-
"_use": "
|
|
57
|
-
"_group": "
|
|
58
|
-
"_groupHead": "
|
|
59
|
-
"_sortable": "
|
|
60
|
-
"_active": "
|
|
61
|
-
"_resizable": "
|
|
62
|
-
"_fixed": "
|
|
63
|
-
"__SSortIcon": "
|
|
64
|
-
"__SBodyWrapper": "
|
|
65
|
-
"__SBody": "
|
|
66
|
-
"__SRow": "
|
|
67
|
-
"__SCell": "
|
|
68
|
-
"_theme": "
|
|
69
|
-
"__SGroupCell": "
|
|
70
|
-
"_theme_muted": "
|
|
71
|
-
"_theme_info": "
|
|
72
|
-
"_theme_success": "
|
|
73
|
-
"_theme_warning": "
|
|
74
|
-
"_theme_danger": "
|
|
75
|
-
"_positioned": "
|
|
76
|
-
"__SScrollAreaBar": "
|
|
77
|
-
"_orientation_horizontal": "
|
|
78
|
-
"_orientation_vertical": "
|
|
79
|
-
"--left": "--
|
|
80
|
-
"--right": "--
|
|
81
|
-
"--offsetSum": "--
|
|
82
|
-
"__SHeightHold": "
|
|
48
|
+
"__SDataTable": "___SDataTable_1jhi5_gg_",
|
|
49
|
+
"__SHeadWrapper": "___SHeadWrapper_1jhi5_gg_",
|
|
50
|
+
"_sticky": "__sticky_1jhi5_gg_",
|
|
51
|
+
"__SHead": "___SHead_1jhi5_gg_",
|
|
52
|
+
"__SColumn": "___SColumn_1jhi5_gg_",
|
|
53
|
+
"_hidden": "__hidden_1jhi5_gg_",
|
|
54
|
+
"_use_primary": "_use_primary_1jhi5_gg_",
|
|
55
|
+
"_use_secondary": "_use_secondary_1jhi5_gg_",
|
|
56
|
+
"_use": "__use_1jhi5_gg_",
|
|
57
|
+
"_group": "__group_1jhi5_gg_",
|
|
58
|
+
"_groupHead": "__groupHead_1jhi5_gg_",
|
|
59
|
+
"_sortable": "__sortable_1jhi5_gg_",
|
|
60
|
+
"_active": "__active_1jhi5_gg_",
|
|
61
|
+
"_resizable": "__resizable_1jhi5_gg_",
|
|
62
|
+
"_fixed": "__fixed_1jhi5_gg_",
|
|
63
|
+
"__SSortIcon": "___SSortIcon_1jhi5_gg_",
|
|
64
|
+
"__SBodyWrapper": "___SBodyWrapper_1jhi5_gg_",
|
|
65
|
+
"__SBody": "___SBody_1jhi5_gg_",
|
|
66
|
+
"__SRow": "___SRow_1jhi5_gg_",
|
|
67
|
+
"__SCell": "___SCell_1jhi5_gg_",
|
|
68
|
+
"_theme": "__theme_1jhi5_gg_",
|
|
69
|
+
"__SGroupCell": "___SGroupCell_1jhi5_gg_",
|
|
70
|
+
"_theme_muted": "_theme_muted_1jhi5_gg_",
|
|
71
|
+
"_theme_info": "_theme_info_1jhi5_gg_",
|
|
72
|
+
"_theme_success": "_theme_success_1jhi5_gg_",
|
|
73
|
+
"_theme_warning": "_theme_warning_1jhi5_gg_",
|
|
74
|
+
"_theme_danger": "_theme_danger_1jhi5_gg_",
|
|
75
|
+
"_positioned": "__positioned_1jhi5_gg_",
|
|
76
|
+
"__SScrollAreaBar": "___SScrollAreaBar_1jhi5_gg_",
|
|
77
|
+
"_orientation_horizontal": "_orientation_horizontal_1jhi5_gg_",
|
|
78
|
+
"_orientation_vertical": "_orientation_vertical_1jhi5_gg_",
|
|
79
|
+
"--left": "--left_1jhi5",
|
|
80
|
+
"--right": "--right_1jhi5",
|
|
81
|
+
"--offsetSum": "--offsetSum_1jhi5",
|
|
82
|
+
"__SHeightHold": "___SHeightHold_1jhi5_gg_"
|
|
83
83
|
});
|
|
84
84
|
var REVERSED_SORT_DIRECTION = {
|
|
85
85
|
desc: 'asc',
|
|
@@ -107,7 +107,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
107
107
|
|
|
108
108
|
_defineProperty(_assertThisInitialized(_this), "columns", []);
|
|
109
109
|
|
|
110
|
-
_defineProperty(_assertThisInitialized(_this), "tableRef", React.createRef());
|
|
110
|
+
_defineProperty(_assertThisInitialized(_this), "tableRef", /*#__PURE__*/React.createRef());
|
|
111
111
|
|
|
112
112
|
_defineProperty(_assertThisInitialized(_this), "scrollBodyRef", null);
|
|
113
113
|
|
|
@@ -126,7 +126,9 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
126
126
|
});
|
|
127
127
|
|
|
128
128
|
_defineProperty(_assertThisInitialized(_this), "scrollToUp", function () {
|
|
129
|
-
_this
|
|
129
|
+
var _this$tableRef, _this$tableRef$curren;
|
|
130
|
+
|
|
131
|
+
(_this$tableRef = _this.tableRef) === null || _this$tableRef === void 0 ? void 0 : (_this$tableRef$curren = _this$tableRef.current) === null || _this$tableRef$curren === void 0 ? void 0 : _this$tableRef$curren.scrollIntoView({
|
|
130
132
|
block: 'nearest',
|
|
131
133
|
inline: 'nearest',
|
|
132
134
|
behavior: 'smooth'
|
|
@@ -156,8 +158,10 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
156
158
|
|
|
157
159
|
try {
|
|
158
160
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
161
|
+
var _this$tableRef$curren2;
|
|
162
|
+
|
|
159
163
|
var cssVar = _step2.value;
|
|
160
|
-
this.tableRef.current
|
|
164
|
+
(_this$tableRef$curren2 = this.tableRef.current) === null || _this$tableRef$curren2 === void 0 ? void 0 : _this$tableRef$curren2.style.setProperty(cssVar, "".concat(_column.width, "px"));
|
|
161
165
|
}
|
|
162
166
|
} catch (err) {
|
|
163
167
|
_iterator2.e(err);
|
|
@@ -165,7 +169,9 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
165
169
|
_iterator2.f();
|
|
166
170
|
}
|
|
167
171
|
} else {
|
|
168
|
-
|
|
172
|
+
var _this$tableRef$curren3;
|
|
173
|
+
|
|
174
|
+
(_this$tableRef$curren3 = this.tableRef.current) === null || _this$tableRef$curren3 === void 0 ? void 0 : _this$tableRef$curren3.style.setProperty(_column.cssVar, "".concat(_column.width, "px"));
|
|
169
175
|
}
|
|
170
176
|
}
|
|
171
177
|
} catch (err) {
|
|
@@ -185,7 +191,9 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
185
191
|
var sort = this.asProps.sort;
|
|
186
192
|
var columnsChildren = [];
|
|
187
193
|
React.Children.forEach(children, function (child) {
|
|
188
|
-
|
|
194
|
+
var _column$props;
|
|
195
|
+
|
|
196
|
+
if (! /*#__PURE__*/React.isValidElement(child)) return;
|
|
189
197
|
if (child.type !== DefinitionTable.Column) return;
|
|
190
198
|
|
|
191
199
|
var _ref3 = child.props,
|
|
@@ -210,7 +218,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
210
218
|
}).join('/');
|
|
211
219
|
if (!columns.length) return;
|
|
212
220
|
children = React.Children.toArray(children).filter(function (child) {
|
|
213
|
-
return !(React.isValidElement(child) && child.type === DefinitionTable.Column);
|
|
221
|
+
return !( /*#__PURE__*/React.isValidElement(child) && child.type === DefinitionTable.Column);
|
|
214
222
|
});
|
|
215
223
|
}
|
|
216
224
|
|
|
@@ -220,7 +228,9 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
220
228
|
|
|
221
229
|
columnsChildren.push({
|
|
222
230
|
get width() {
|
|
223
|
-
|
|
231
|
+
var _this$props$ref$curre;
|
|
232
|
+
|
|
233
|
+
return ((_this$props$ref$curre = this.props.ref.current) === null || _this$props$ref$curre === void 0 ? void 0 : _this$props$ref$curre.getBoundingClientRect().width) || 0;
|
|
224
234
|
},
|
|
225
235
|
|
|
226
236
|
name: name,
|
|
@@ -229,11 +239,11 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
229
239
|
resizable: resizable,
|
|
230
240
|
active: sort[0] === name,
|
|
231
241
|
sortable: sortable,
|
|
232
|
-
sortDirection: sort[0] === name ? sort[1] : column
|
|
242
|
+
sortDirection: sort[0] === name ? sort[1] : (column === null || column === void 0 ? void 0 : column.sortDirection) || (typeof sortable == 'string' ? sortable : DEFAULT_SORT_DIRECTION),
|
|
233
243
|
columns: columns,
|
|
234
244
|
props: _objectSpread({
|
|
235
245
|
name: name,
|
|
236
|
-
ref: column
|
|
246
|
+
ref: (column === null || column === void 0 ? void 0 : (_column$props = column.props) === null || _column$props === void 0 ? void 0 : _column$props.ref) || /*#__PURE__*/React.createRef(),
|
|
237
247
|
children: children
|
|
238
248
|
}, props)
|
|
239
249
|
});
|
|
@@ -264,7 +274,7 @@ var RootDefinitionTable = /*#__PURE__*/function (_Component) {
|
|
|
264
274
|
var cellPropsLayers = {};
|
|
265
275
|
var rowPropsLayers = [];
|
|
266
276
|
React.Children.forEach(props.children, function (child) {
|
|
267
|
-
if (React.isValidElement(child)) {
|
|
277
|
+
if ( /*#__PURE__*/React.isValidElement(child)) {
|
|
268
278
|
var _ref5 = child.props,
|
|
269
279
|
name = _ref5.name,
|
|
270
280
|
children = _ref5.children,
|