@razorpay/blade 12.42.3 → 12.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/build/lib/native/components/Table/TableContext.js +1 -1
  2. package/build/lib/native/components/Table/TableContext.js.map +1 -1
  3. package/build/lib/native/components/Table/tokens.js.map +1 -1
  4. package/build/lib/web/development/components/Table/Table.web.js +39 -8
  5. package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
  6. package/build/lib/web/development/components/Table/TableBody.web.js +82 -14
  7. package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
  8. package/build/lib/web/development/components/Table/TableContext.js +2 -1
  9. package/build/lib/web/development/components/Table/TableContext.js.map +1 -1
  10. package/build/lib/web/development/components/Table/TableFooter.web.js +15 -3
  11. package/build/lib/web/development/components/Table/TableFooter.web.js.map +1 -1
  12. package/build/lib/web/development/components/Table/TableHeader.web.js +15 -3
  13. package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
  14. package/build/lib/web/development/components/Table/tokens.js +4 -2
  15. package/build/lib/web/development/components/Table/tokens.js.map +1 -1
  16. package/build/lib/web/production/components/Table/Table.web.js +39 -8
  17. package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
  18. package/build/lib/web/production/components/Table/TableBody.web.js +82 -14
  19. package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
  20. package/build/lib/web/production/components/Table/TableContext.js +2 -1
  21. package/build/lib/web/production/components/Table/TableContext.js.map +1 -1
  22. package/build/lib/web/production/components/Table/TableFooter.web.js +15 -3
  23. package/build/lib/web/production/components/Table/TableFooter.web.js.map +1 -1
  24. package/build/lib/web/production/components/Table/TableHeader.web.js +15 -3
  25. package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
  26. package/build/lib/web/production/components/Table/tokens.js +4 -2
  27. package/build/lib/web/production/components/Table/tokens.js.map +1 -1
  28. package/build/types/components/index.d.ts +47 -7
  29. package/build/types/components/index.native.d.ts +43 -3
  30. package/package.json +1 -1
@@ -3,12 +3,12 @@ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
3
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
4
4
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
5
5
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
6
- import React__default, { useEffect } from 'react';
6
+ import React__default, { useMemo, useEffect } from 'react';
7
7
  import { Body, Cell, Row } from '@table-library/react-table-library/table';
8
8
  import { Virtualized } from '@table-library/react-table-library/virtualized';
9
9
  import styled from 'styled-components';
10
10
  import { useTableContext } from './TableContext.js';
11
- import { tableRow, checkboxCellWidth, classes } from './tokens.js';
11
+ import { tableRow, classes, checkboxCellWidth } from './tokens.js';
12
12
  import { ComponentIds } from './componentIds.js';
13
13
  import { getTableRowBackgroundTransition, getTableActionsHoverStyles } from './utils.js';
14
14
  import './commonStyles/index.js';
@@ -42,7 +42,7 @@ import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js
42
42
  import { getMediaQuery } from '../../utils/getMediaQuery/getMediaQuery.js';
43
43
 
44
44
  var _excluded = ["children"],
45
- _excluded2 = ["children", "textAlign", "_hasPadding"],
45
+ _excluded2 = ["children", "textAlign", "_hasPadding", "gridColumnStart", "gridColumnEnd", "gridRowStart", "gridRowEnd"],
46
46
  _excluded3 = ["children", "item", "isDisabled", "onHover", "onClick", "hoverActions", "testID"];
47
47
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
48
48
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -95,11 +95,13 @@ var StyledCell = /*#__PURE__*/styled(Cell).withConfig({
95
95
  componentId: "sc-1fpz8hn-1"
96
96
  })(function (_ref3) {
97
97
  var theme = _ref3.theme,
98
- $backgroundColor = _ref3.$backgroundColor;
98
+ $backgroundColor = _ref3.$backgroundColor,
99
+ gridRow = _ref3.gridRow;
99
100
  return {
100
101
  '&&&': {
101
102
  height: '100%',
102
103
  backgroundColor: getIn(theme.colors, $backgroundColor),
104
+ gridRow: gridRow,
103
105
  '& > div:first-child': {
104
106
  alignSelf: 'stretch'
105
107
  },
@@ -142,6 +144,10 @@ var _TableCell = function _TableCell(_ref5) {
142
144
  var children = _ref5.children,
143
145
  textAlign = _ref5.textAlign,
144
146
  _hasPadding = _ref5._hasPadding,
147
+ gridColumnStart = _ref5.gridColumnStart,
148
+ gridColumnEnd = _ref5.gridColumnEnd,
149
+ gridRowStart = _ref5.gridRowStart,
150
+ gridRowEnd = _ref5.gridRowEnd,
145
151
  rest = _objectWithoutProperties(_ref5, _excluded2);
146
152
  var isChildrenString = typeof children === 'string';
147
153
  var _useTableContext2 = useTableContext(),
@@ -150,10 +156,16 @@ var _TableCell = function _TableCell(_ref5) {
150
156
  showStripedRows = _useTableContext2.showStripedRows,
151
157
  backgroundColor = _useTableContext2.backgroundColor;
152
158
  var isSelectable = selectionType !== 'none';
159
+ var hasRowSpan = Boolean(gridRowStart && gridRowEnd);
160
+ var gridRowValue = hasRowSpan ? "".concat(gridRowStart, " / ").concat(gridRowEnd) : undefined;
153
161
  return /*#__PURE__*/jsx(StyledCell, _objectSpread(_objectSpread(_objectSpread({
154
162
  tabIndex: 0,
155
163
  role: "cell",
156
- $backgroundColor: backgroundColor
164
+ className: hasRowSpan ? classes.HAS_ROW_SPANNING : '',
165
+ $backgroundColor: backgroundColor,
166
+ gridColumnStart: gridColumnStart,
167
+ gridColumnEnd: gridColumnEnd,
168
+ gridRow: gridRowValue
157
169
  }, metaAttribute({
158
170
  name: MetaConstants.TableCell
159
171
  })), makeAnalyticsAttribute(rest)), {}, {
@@ -197,7 +209,8 @@ var TableCell = /*#__PURE__*/assignWithoutSideEffects(_TableCell, {
197
209
  var TableCheckboxCell = function TableCheckboxCell(_ref6) {
198
210
  var isChecked = _ref6.isChecked,
199
211
  onChange = _ref6.onChange,
200
- isDisabled = _ref6.isDisabled;
212
+ isDisabled = _ref6.isDisabled,
213
+ isIndeterminate = _ref6.isIndeterminate;
201
214
  return /*#__PURE__*/jsx(TableCell, {
202
215
  children: /*#__PURE__*/jsx(BaseBox, {
203
216
  display: "flex",
@@ -206,12 +219,19 @@ var TableCheckboxCell = function TableCheckboxCell(_ref6) {
206
219
  flex: 1,
207
220
  width: makeSize(checkboxCellWidth),
208
221
  onClick: function onClick(e) {
209
- return e.stopPropagation();
222
+ /* Make entire 44px checkbox area clickable while preventing row selection */
223
+ if (e.target === e.currentTarget && !isDisabled) {
224
+ onChange === null || onChange === void 0 ? void 0 : onChange({
225
+ isChecked: !isChecked
226
+ });
227
+ }
228
+ e.stopPropagation();
210
229
  },
211
230
  children: /*#__PURE__*/jsx(Checkbox, _objectSpread({
212
231
  isDisabled: isDisabled,
213
232
  isChecked: isChecked,
214
- onChange: onChange
233
+ onChange: onChange,
234
+ isIndeterminate: isIndeterminate
215
235
  }, makeAccessible({
216
236
  label: 'Select Row'
217
237
  })))
@@ -225,12 +245,14 @@ var StyledRow = /*#__PURE__*/styled(Row).withConfig({
225
245
  var theme = _ref7.theme,
226
246
  $isSelectable = _ref7.$isSelectable,
227
247
  $isHoverable = _ref7.$isHoverable,
228
- $showBorderedCells = _ref7.$showBorderedCells;
248
+ $showBorderedCells = _ref7.$showBorderedCells,
249
+ $isGrouped = _ref7.$isGrouped,
250
+ $isGroupHeader = _ref7.$isGroupHeader;
229
251
  var _useTableContext3 = useTableContext(),
230
252
  hasHoverActions = _useTableContext3.hasHoverActions;
231
253
  var rowBackgroundTransition = "background-color ".concat(makeMotionTime(getIn(theme.motion, tableRow.backgroundColorMotionDuration)), " ").concat(getIn(theme.motion, tableRow.backgroundColorMotionEasing));
232
254
  return {
233
- '&&&': _objectSpread(_objectSpread(_objectSpread(_objectSpread({
255
+ '&&&': _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
234
256
  backgroundColor: 'transparent',
235
257
  '& .cell-wrapper': $showBorderedCells ? {
236
258
  borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),
@@ -291,10 +313,19 @@ var StyledRow = /*#__PURE__*/styled(Row).withConfig({
291
313
  theme: theme,
292
314
  negativeOffset: true
293
315
  })
316
+ }, $isGroupHeader && {
317
+ '& td': {
318
+ backgroundColor: getIn(theme.colors, tableRow.groupHeaderBackgroundColor)
319
+ }
320
+ }), $isGrouped && {
321
+ '& .cell-wrapper': {
322
+ border: 'none'
323
+ }
294
324
  })
295
325
  };
296
326
  });
297
327
  var _TableRow = function _TableRow(_ref9) {
328
+ var _nodes$length, _nodes;
298
329
  var children = _ref9.children,
299
330
  item = _ref9.item,
300
331
  isDisabled = _ref9.isDisabled,
@@ -310,11 +341,42 @@ var _TableRow = function _TableRow(_ref9) {
310
341
  setDisabledRows = _useTableContext4.setDisabledRows,
311
342
  showBorderedCells = _useTableContext4.showBorderedCells,
312
343
  setHasHoverActions = _useTableContext4.setHasHoverActions,
313
- isVirtualized = _useTableContext4.isVirtualized;
344
+ isVirtualized = _useTableContext4.isVirtualized,
345
+ isGrouped = _useTableContext4.isGrouped;
314
346
  var isSelectable = selectionType !== 'none';
315
347
  var isMultiSelect = selectionType === 'multiple';
316
348
  var isSelected = selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.includes(item.id);
317
349
  var hasHoverActions = Boolean(hoverActions);
350
+ var isGroupHeader = isGrouped && item.treeXLevel === 0 && ((_nodes$length = (_nodes = item.nodes) === null || _nodes === void 0 ? void 0 : _nodes.length) !== null && _nodes$length !== void 0 ? _nodes$length : 0) > 0;
351
+ var getGroupSelectionState = useMemo(function () {
352
+ var _nodes2, _selectedChildIds$len, _childNodes$length;
353
+ if (!isGroupHeader || !isMultiSelect || !selectedRows) {
354
+ return {
355
+ isAllSelected: false,
356
+ isIndeterminate: false
357
+ };
358
+ }
359
+ var childNodes = (_nodes2 = item.nodes) !== null && _nodes2 !== void 0 ? _nodes2 : [];
360
+ if (childNodes.length === 0) {
361
+ return {
362
+ isAllSelected: false,
363
+ isIndeterminate: false
364
+ };
365
+ }
366
+ var selectedChildIds = childNodes.filter(function (child) {
367
+ return selectedRows.includes(child);
368
+ });
369
+ var selectedCount = (_selectedChildIds$len = selectedChildIds === null || selectedChildIds === void 0 ? void 0 : selectedChildIds.length) !== null && _selectedChildIds$len !== void 0 ? _selectedChildIds$len : 0;
370
+ var totalCount = (_childNodes$length = childNodes === null || childNodes === void 0 ? void 0 : childNodes.length) !== null && _childNodes$length !== void 0 ? _childNodes$length : 0;
371
+ var isAllSelected = selectedCount === totalCount;
372
+ var isIndeterminate = selectedCount > 0 && selectedCount < totalCount && !isSelected;
373
+ return {
374
+ isAllSelected: isAllSelected,
375
+ isIndeterminate: isIndeterminate
376
+ };
377
+ }, [isGroupHeader, isMultiSelect, selectedRows, item, isSelected]);
378
+ var isAllSelected = getGroupSelectionState.isAllSelected,
379
+ isIndeterminate = getGroupSelectionState.isIndeterminate;
318
380
  useEffect(function () {
319
381
  if (isDisabled) {
320
382
  setDisabledRows(function (prev) {
@@ -340,9 +402,12 @@ var _TableRow = function _TableRow(_ref9) {
340
402
  });
341
403
  },
342
404
  onClick: function onClick() {
343
- return _onClick === null || _onClick === void 0 ? void 0 : _onClick({
405
+ _onClick === null || _onClick === void 0 ? void 0 : _onClick({
344
406
  item: item
345
407
  });
408
+ if (selectionType !== 'none' && !isDisabled) {
409
+ toggleRowSelectionById(item.id);
410
+ }
346
411
  }
347
412
  }, makeAccessible({
348
413
  selected: isSelected
@@ -351,12 +416,15 @@ var _TableRow = function _TableRow(_ref9) {
351
416
  testID: testID
352
417
  })), makeAnalyticsAttribute(rest)), {}, {
353
418
  $isVirtualized: isVirtualized,
419
+ $isGrouped: isGrouped,
420
+ $isGroupHeader: isGroupHeader,
354
421
  children: [isMultiSelect && /*#__PURE__*/jsx(TableCheckboxCell, {
355
- isChecked: isSelected,
422
+ isChecked: Boolean(isSelected) || Boolean(isAllSelected),
356
423
  onChange: function onChange() {
357
424
  return !isDisabled && toggleRowSelectionById(item.id);
358
425
  },
359
- isDisabled: isDisabled
426
+ isDisabled: isDisabled,
427
+ isIndeterminate: isIndeterminate
360
428
  }), children, hoverActions ? /*#__PURE__*/jsx(TableCell, {
361
429
  _hasPadding: false,
362
430
  children: /*#__PURE__*/jsx(BaseBox, {
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.web.js","sources":["../../../../../../src/components/Table/TableBody.web.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { Body, Row, Cell } from '@table-library/react-table-library/table';\nimport { Virtualized } from '@table-library/react-table-library/virtualized';\nimport styled from 'styled-components';\nimport { useTableContext } from './TableContext';\nimport { checkboxCellWidth, classes, tableRow } from './tokens';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableProps,\n TableBodyProps,\n TableRowProps,\n TableCellProps,\n TableBackgroundColors,\n VirtualizedWrapperProps,\n RowHeightType,\n TableNode,\n} from './types';\nimport { getTableActionsHoverStyles, getTableRowBackgroundTransition } from './utils';\nimport { getTableBodyStyles } from './commonStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { Text } from '~components/Typography';\nimport type { CheckboxProps } from '~components/Checkbox';\nimport { Checkbox } from '~components/Checkbox';\nimport { getMediaQuery, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { size } from '~tokens/global';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nconst StyledBody = styled(Body)<{\n $isSelectable: boolean;\n $showStripedRows: boolean;\n}>(({ theme, $showStripedRows, $isSelectable }) => {\n const rowBackgroundTransition = getTableRowBackgroundTransition(theme);\n\n return {\n '&&&': {\n border: 'none',\n transition: rowBackgroundTransition,\n\n '& tr:last-child .cell-wrapper': {\n borderBottom: 'none',\n },\n\n ...{\n ...getTableBodyStyles({\n addCommonStyles: true,\n theme,\n isSelectable: $isSelectable,\n showStripedRows: $showStripedRows,\n isVirtualized: false,\n }),\n },\n },\n };\n});\n\nconst _TableBody = <Item,>({ children, ...rest }: TableBodyProps<Item>): React.ReactElement => {\n const { showStripedRows, selectionType } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledBody\n $isSelectable={isSelectable}\n $showStripedRows={showStripedRows}\n $showBorderedCells={true}\n {...metaAttribute({ name: MetaConstants.TableBody })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledBody>\n );\n};\n\nconst TableBody = assignWithoutSideEffects(_TableBody, {\n componentId: ComponentIds.TableBody,\n});\n\nexport const StyledCell = styled(Cell)<{\n $backgroundColor: TableBackgroundColors;\n}>(({ theme, $backgroundColor }) => ({\n '&&&': {\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n '& > div:first-child': {\n alignSelf: 'stretch',\n },\n '&:focus-visible': { ...getFocusRingStyles({ theme, negativeOffset: true }) },\n },\n}));\n\nexport const CellWrapper = styled(BaseBox)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n showStripedRows?: boolean;\n hasPadding?: boolean;\n textAlign?: TableCellProps['textAlign'];\n}>(({ theme, $rowDensity, showStripedRows, hasPadding = true, textAlign }) => {\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n transition: rowBackgroundTransition,\n backgroundColor: tableRow.nonStripeWrapper.backgroundColor,\n paddingLeft: hasPadding ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])) : '0px',\n paddingRight: hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity]))\n : '0px',\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n height: '100%',\n width: '100%',\n justifyContent: textAlign,\n ...(!showStripedRows && {\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderBottomColor: getIn(theme.colors, tableRow.borderColor),\n borderBottomStyle: 'solid',\n }),\n },\n };\n});\n\nconst _TableCell = ({\n children,\n textAlign,\n _hasPadding,\n ...rest\n}: TableCellProps): React.ReactElement => {\n const isChildrenString = typeof children === 'string';\n const { selectionType, rowDensity, showStripedRows, backgroundColor } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledCell\n tabIndex={0}\n role=\"cell\"\n $backgroundColor={backgroundColor}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox className=\"cell-wrapper-base\" display=\"flex\" alignItems=\"center\" height=\"100%\">\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n hasPadding={_hasPadding}\n flex={1}\n textAlign={textAlign}\n // when a direct string child is passed we want to disable pointer events\n // for custom cells components, consumers can handle pointer events themselves\n pointerEvents={isChildrenString && isSelectable ? 'none' : 'auto'}\n // allow text to wrap, so that if the <Text> overflows it can truncate\n whiteSpace=\"normal\"\n position=\"relative\"\n {...metaAttribute({ name: MetaConstants.TableCellWrapper })}\n >\n {isChildrenString ? (\n <Text size=\"medium\" truncateAfterLines={1}>\n {children}\n </Text>\n ) : (\n children\n )}\n </CellWrapper>\n </BaseBox>\n </StyledCell>\n );\n};\n\nconst TableCell = assignWithoutSideEffects(_TableCell, {\n componentId: ComponentIds.TableCell,\n});\n\nconst TableCheckboxCell = ({\n isChecked,\n onChange,\n isDisabled,\n}: {\n isChecked: CheckboxProps['isChecked'];\n onChange: CheckboxProps['onChange'];\n isDisabled?: boolean;\n}): React.ReactElement => {\n return (\n <TableCell>\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flex={1}\n width={makeSize(checkboxCellWidth)}\n onClick={(e) => e.stopPropagation()}\n >\n <Checkbox\n isDisabled={isDisabled}\n isChecked={isChecked}\n onChange={onChange}\n {...makeAccessible({ label: 'Select Row' })}\n />\n </BaseBox>\n </TableCell>\n );\n};\n\nconst StyledRow = styled(Row)<{\n $isSelectable: boolean;\n $isHoverable: boolean;\n $showBorderedCells: boolean;\n}>(({ theme, $isSelectable, $isHoverable, $showBorderedCells }) => {\n const { hasHoverActions } = useTableContext();\n\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n backgroundColor: 'transparent',\n '& .cell-wrapper': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightStyle: 'solid',\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n }\n : undefined,\n '& td:last-child .cell-wrapper': {\n borderRight: 'none',\n },\n ...(hasHoverActions\n ? {\n [`@media ${getMediaQuery({ min: theme.breakpoints.m })}`]: {\n '& td:last-child': {\n opacity: 0,\n position: 'sticky',\n zIndex: 2,\n right: 0,\n width: '0px',\n '& > div:first-child': {\n overflow: 'visible',\n },\n },\n '& td:last-child:focus-within': {\n opacity: 1,\n ...getTableActionsHoverStyles({\n theme,\n hoverColor: tableRow.nonStripe.backgroundColor,\n }),\n },\n '&:hover td:last-child': {\n opacity: 1,\n },\n },\n }\n : {}),\n ...(($isHoverable || $isSelectable) && {\n '&:hover:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n cursor: 'pointer',\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorHover),\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n }),\n ...($isSelectable && {\n '&:focus:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorFocus),\n cursor: 'pointer',\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorFocus,\n backgroundGradientColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n '&:active:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorActive),\n cursor: 'pointer',\n },\n }),\n '&:focus': getFocusRingStyles({ theme, negativeOffset: true }),\n },\n };\n});\n\nconst _TableRow = <Item,>({\n children,\n item,\n isDisabled,\n onHover,\n onClick,\n hoverActions,\n testID,\n ...rest\n}: TableRowProps<Item>): React.ReactElement => {\n const {\n selectionType,\n selectedRows,\n toggleRowSelectionById,\n setDisabledRows,\n showBorderedCells,\n setHasHoverActions,\n isVirtualized,\n } = useTableContext();\n const isSelectable = selectionType !== 'none';\n const isMultiSelect = selectionType === 'multiple';\n const isSelected = selectedRows?.includes(item.id);\n const hasHoverActions = Boolean(hoverActions);\n\n useEffect(() => {\n if (isDisabled) {\n setDisabledRows((prev) => [...prev, item.id]);\n }\n }, [isDisabled, item.id, setDisabledRows]);\n\n useIsomorphicLayoutEffect(() => {\n if (hasHoverActions) {\n setHasHoverActions(true);\n }\n }, [hasHoverActions]);\n\n return (\n <StyledRow\n disabled={isDisabled}\n $isSelectable={isDisabled ? false : isSelectable}\n $isHoverable={isDisabled ? false : Boolean(onHover) || Boolean(onClick)}\n $showBorderedCells={showBorderedCells}\n item={item}\n className={isDisabled ? 'disabled-row' : ''}\n onMouseEnter={() => onHover?.({ item })}\n onClick={() => onClick?.({ item })}\n {...makeAccessible({ selected: isSelected })}\n {...metaAttribute({ name: MetaConstants.TableRow, testID })}\n {...makeAnalyticsAttribute(rest)}\n $isVirtualized={isVirtualized}\n >\n {isMultiSelect && (\n <TableCheckboxCell\n isChecked={isSelected}\n onChange={() => !isDisabled && toggleRowSelectionById(item.id)}\n isDisabled={isDisabled}\n />\n )}\n {children}\n {hoverActions ? (\n <TableCell _hasPadding={false}>\n <BaseBox\n className={classes.HOVER_ACTIONS}\n position={{ base: 'relative', m: 'absolute' }}\n top=\"spacing.0\"\n right=\"spacing.0\"\n height=\"100%\"\n flexShrink={0}\n flexGrow={1}\n width=\"max-content\"\n >\n <BaseBox\n className={classes.HOVER_ACTIONS_LAYER2}\n height=\"100%\"\n width=\"max-content\"\n display=\"flex\"\n alignItems=\"center\"\n >\n <BaseBox\n height=\"100%\"\n width=\"max-content\"\n className={classes.HOVER_ACTIONS_LAYER3}\n display=\"flex\"\n alignItems=\"center\"\n paddingLeft={{ base: 'spacing.4', m: 'spacing.6' }}\n paddingRight=\"spacing.4\"\n gap=\"spacing.3\"\n >\n {hoverActions}\n </BaseBox>\n </BaseBox>\n </BaseBox>\n </TableCell>\n ) : null}\n </StyledRow>\n );\n};\n\nconst _Virtulized = <Item,>({\n headerHeight,\n rowHeight,\n children,\n}: VirtualizedWrapperProps): React.ReactElement => {\n const [parsedHeader = null, parsedBody = null] = React.Children.toArray(children);\n const { rowDensity, tableData } = useTableContext<Item>();\n const _tableRow = Number(tableRow.minHeight[rowDensity]);\n\n const _rowHeight = (item: TableNode<Item>, index: number): number => {\n if (index === 0) {\n return headerHeight ?? _tableRow;\n }\n return rowHeight ? rowHeight(item, index - 1) : _tableRow;\n };\n\n const bodyFunction =\n React.isValidElement(parsedBody) &&\n parsedBody.props &&\n typeof parsedBody.props === 'object' &&\n 'children' in parsedBody.props\n ? parsedBody.props.children\n : null;\n\n return (\n <Virtualized\n tableList={tableData}\n rowHeight={_rowHeight as RowHeightType}\n header={() => parsedHeader}\n body={bodyFunction as (node: TableNode<Item>, index: number) => React.ReactNode}\n />\n );\n};\n\nconst TableRow = assignWithoutSideEffects(_TableRow, {\n componentId: ComponentIds.TableRow,\n});\n\nconst TableVirtualizedWrapper = assignWithoutSideEffects(_Virtulized, {\n componentId: ComponentIds.VirtualizedTable,\n});\nexport { TableBody, TableRow, TableCell, TableVirtualizedWrapper };\n"],"names":["StyledBody","styled","Body","withConfig","displayName","componentId","_ref","theme","$showStripedRows","$isSelectable","rowBackgroundTransition","getTableRowBackgroundTransition","_objectSpread","border","transition","borderBottom","getTableBodyStyles","addCommonStyles","isSelectable","showStripedRows","isVirtualized","_TableBody","_ref2","children","rest","_objectWithoutProperties","_excluded","_useTableContext","useTableContext","selectionType","_jsx","$showBorderedCells","metaAttribute","name","MetaConstants","TableBody","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledCell","Cell","_ref3","$backgroundColor","height","backgroundColor","getIn","colors","alignSelf","getFocusRingStyles","negativeOffset","CellWrapper","BaseBox","_ref4","$rowDensity","_ref4$hasPadding","hasPadding","textAlign","concat","makeMotionTime","motion","tableRow","backgroundColorMotionDuration","backgroundColorMotionEasing","nonStripeWrapper","paddingLeft","makeSpace","paddingRight","minHeight","makeSize","size","width","justifyContent","borderBottomWidth","borderBottomColor","borderColor","borderBottomStyle","_TableCell","_ref5","_hasPadding","_excluded2","isChildrenString","_useTableContext2","rowDensity","tabIndex","role","TableCell","className","display","alignItems","flex","pointerEvents","whiteSpace","position","TableCellWrapper","Text","truncateAfterLines","TableCheckboxCell","_ref6","isChecked","onChange","isDisabled","checkboxCellWidth","onClick","e","stopPropagation","Checkbox","makeAccessible","label","StyledRow","Row","_ref7","$isHoverable","_useTableContext3","hasHoverActions","borderRightWidth","borderRightStyle","borderRightColor","undefined","borderRight","_defineProperty","getMediaQuery","min","breakpoints","m","opacity","zIndex","right","overflow","getTableActionsHoverStyles","hoverColor","nonStripe","cursor","backgroundColorHover","backgroundColorFocus","backgroundGradientColor","backgroundColorActive","_TableRow","_ref9","item","onHover","hoverActions","testID","_excluded3","_useTableContext4","selectedRows","toggleRowSelectionById","setDisabledRows","showBorderedCells","setHasHoverActions","isMultiSelect","isSelected","includes","id","Boolean","useEffect","prev","_toConsumableArray","useIsomorphicLayoutEffect","_jsxs","disabled","onMouseEnter","selected","TableRow","$isVirtualized","classes","HOVER_ACTIONS","base","top","flexShrink","flexGrow","HOVER_ACTIONS_LAYER2","HOVER_ACTIONS_LAYER3","gap","_Virtulized","_ref10","headerHeight","rowHeight","_React$Children$toArr","React","Children","toArray","_React$Children$toArr2","_slicedToArray","_React$Children$toArr3","parsedHeader","_React$Children$toArr4","parsedBody","_useTableContext5","tableData","_tableRow","Number","_rowHeight","index","bodyFunction","isValidElement","props","_typeof","Virtualized","tableList","header","body","TableVirtualizedWrapper","VirtualizedTable"],"mappings":"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"}
1
+ {"version":3,"file":"TableBody.web.js","sources":["../../../../../../src/components/Table/TableBody.web.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport { Body, Row, Cell } from '@table-library/react-table-library/table';\nimport { Virtualized } from '@table-library/react-table-library/virtualized';\nimport styled from 'styled-components';\nimport { useTableContext } from './TableContext';\nimport { checkboxCellWidth, classes, tableRow } from './tokens';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableProps,\n TableBodyProps,\n TableRowProps,\n TableCellProps,\n TableBackgroundColors,\n VirtualizedWrapperProps,\n RowHeightType,\n TableNode,\n} from './types';\nimport { getTableActionsHoverStyles, getTableRowBackgroundTransition } from './utils';\nimport { getTableBodyStyles } from './commonStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { Text } from '~components/Typography';\nimport type { CheckboxProps } from '~components/Checkbox';\nimport { Checkbox } from '~components/Checkbox';\nimport { getMediaQuery, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { size } from '~tokens/global';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nconst StyledBody = styled(Body)<{\n $isSelectable: boolean;\n $showStripedRows: boolean;\n}>(({ theme, $showStripedRows, $isSelectable }) => {\n const rowBackgroundTransition = getTableRowBackgroundTransition(theme);\n\n return {\n '&&&': {\n border: 'none',\n transition: rowBackgroundTransition,\n\n '& tr:last-child .cell-wrapper': {\n borderBottom: 'none',\n },\n\n ...{\n ...getTableBodyStyles({\n addCommonStyles: true,\n theme,\n isSelectable: $isSelectable,\n showStripedRows: $showStripedRows,\n isVirtualized: false,\n }),\n },\n },\n };\n});\n\nconst _TableBody = <Item,>({ children, ...rest }: TableBodyProps<Item>): React.ReactElement => {\n const { showStripedRows, selectionType } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledBody\n $isSelectable={isSelectable}\n $showStripedRows={showStripedRows}\n $showBorderedCells={true}\n {...metaAttribute({ name: MetaConstants.TableBody })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledBody>\n );\n};\n\nconst TableBody = assignWithoutSideEffects(_TableBody, {\n componentId: ComponentIds.TableBody,\n});\n\nexport const StyledCell = styled(Cell)<{\n $backgroundColor: TableBackgroundColors;\n gridRow?: string;\n}>(({ theme, $backgroundColor, gridRow }) => ({\n '&&&': {\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n gridRow,\n '& > div:first-child': {\n alignSelf: 'stretch',\n },\n '&:focus-visible': { ...getFocusRingStyles({ theme, negativeOffset: true }) },\n },\n}));\n\nexport const CellWrapper = styled(BaseBox)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n showStripedRows?: boolean;\n hasPadding?: boolean;\n textAlign?: TableCellProps['textAlign'];\n}>(({ theme, $rowDensity, showStripedRows, hasPadding = true, textAlign }) => {\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n transition: rowBackgroundTransition,\n backgroundColor: tableRow.nonStripeWrapper.backgroundColor,\n paddingLeft: hasPadding ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])) : '0px',\n paddingRight: hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity]))\n : '0px',\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n height: '100%',\n width: '100%',\n justifyContent: textAlign,\n ...(!showStripedRows && {\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderBottomColor: getIn(theme.colors, tableRow.borderColor),\n borderBottomStyle: 'solid',\n }),\n },\n };\n});\n\nconst _TableCell = ({\n children,\n textAlign,\n _hasPadding,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n ...rest\n}: TableCellProps): React.ReactElement => {\n const isChildrenString = typeof children === 'string';\n const { selectionType, rowDensity, showStripedRows, backgroundColor } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n const hasRowSpan = Boolean(gridRowStart && gridRowEnd);\n const gridRowValue = hasRowSpan ? `${gridRowStart} / ${gridRowEnd}` : undefined;\n\n return (\n <StyledCell\n tabIndex={0}\n role=\"cell\"\n className={hasRowSpan ? classes.HAS_ROW_SPANNING : ''}\n $backgroundColor={backgroundColor}\n gridColumnStart={gridColumnStart}\n gridColumnEnd={gridColumnEnd}\n gridRow={gridRowValue}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox className=\"cell-wrapper-base\" display=\"flex\" alignItems=\"center\" height=\"100%\">\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n hasPadding={_hasPadding}\n flex={1}\n textAlign={textAlign}\n // when a direct string child is passed we want to disable pointer events\n // for custom cells components, consumers can handle pointer events themselves\n pointerEvents={isChildrenString && isSelectable ? 'none' : 'auto'}\n // allow text to wrap, so that if the <Text> overflows it can truncate\n whiteSpace=\"normal\"\n position=\"relative\"\n {...metaAttribute({ name: MetaConstants.TableCellWrapper })}\n >\n {isChildrenString ? (\n <Text size=\"medium\" truncateAfterLines={1}>\n {children}\n </Text>\n ) : (\n children\n )}\n </CellWrapper>\n </BaseBox>\n </StyledCell>\n );\n};\n\nconst TableCell = assignWithoutSideEffects(_TableCell, {\n componentId: ComponentIds.TableCell,\n});\n\nconst TableCheckboxCell = ({\n isChecked,\n onChange,\n isDisabled,\n isIndeterminate,\n}: {\n isChecked: CheckboxProps['isChecked'];\n onChange: CheckboxProps['onChange'];\n isDisabled?: boolean;\n isIndeterminate?: boolean;\n}): React.ReactElement => {\n return (\n <TableCell>\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flex={1}\n width={makeSize(checkboxCellWidth)}\n onClick={(e) => {\n /* Make entire 44px checkbox area clickable while preventing row selection */\n if (e.target === e.currentTarget && !isDisabled) {\n onChange?.({ isChecked: !isChecked });\n }\n e.stopPropagation();\n }}\n >\n <Checkbox\n isDisabled={isDisabled}\n isChecked={isChecked}\n onChange={onChange}\n isIndeterminate={isIndeterminate}\n {...makeAccessible({ label: 'Select Row' })}\n />\n </BaseBox>\n </TableCell>\n );\n};\n\nconst StyledRow = styled(Row)<{\n $isSelectable: boolean;\n $isHoverable: boolean;\n $showBorderedCells: boolean;\n $isGrouped: boolean;\n $isGroupHeader: boolean;\n}>(({ theme, $isSelectable, $isHoverable, $showBorderedCells, $isGrouped, $isGroupHeader }) => {\n const { hasHoverActions } = useTableContext();\n\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n backgroundColor: 'transparent',\n '& .cell-wrapper': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightStyle: 'solid',\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n }\n : undefined,\n '& td:last-child .cell-wrapper': {\n borderRight: 'none',\n },\n ...(hasHoverActions\n ? {\n [`@media ${getMediaQuery({ min: theme.breakpoints.m })}`]: {\n '& td:last-child': {\n opacity: 0,\n position: 'sticky',\n zIndex: 2,\n right: 0,\n width: '0px',\n '& > div:first-child': {\n overflow: 'visible',\n },\n },\n '& td:last-child:focus-within': {\n opacity: 1,\n ...getTableActionsHoverStyles({\n theme,\n hoverColor: tableRow.nonStripe.backgroundColor,\n }),\n },\n '&:hover td:last-child': {\n opacity: 1,\n },\n },\n }\n : {}),\n ...(($isHoverable || $isSelectable) && {\n '&:hover:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n cursor: 'pointer',\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorHover),\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n }),\n ...($isSelectable && {\n '&:focus:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorFocus),\n cursor: 'pointer',\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorFocus,\n backgroundGradientColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n '&:active:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorActive),\n cursor: 'pointer',\n },\n }),\n '&:focus': getFocusRingStyles({ theme, negativeOffset: true }),\n ...($isGroupHeader && {\n '& td': {\n backgroundColor: getIn(theme.colors, tableRow.groupHeaderBackgroundColor),\n },\n }),\n ...($isGrouped && {\n '& .cell-wrapper': {\n border: 'none',\n },\n }),\n },\n };\n});\n\nconst _TableRow = <Item,>({\n children,\n item,\n isDisabled,\n onHover,\n onClick,\n hoverActions,\n testID,\n ...rest\n}: TableRowProps<Item>): React.ReactElement => {\n const {\n selectionType,\n selectedRows,\n toggleRowSelectionById,\n setDisabledRows,\n showBorderedCells,\n setHasHoverActions,\n isVirtualized,\n isGrouped,\n } = useTableContext();\n const isSelectable = selectionType !== 'none';\n const isMultiSelect = selectionType === 'multiple';\n const isSelected = selectedRows?.includes(item.id);\n const hasHoverActions = Boolean(hoverActions);\n const isGroupHeader =\n isGrouped &&\n (item as { treeXLevel?: number }).treeXLevel === 0 &&\n ((item as { nodes?: unknown[] }).nodes?.length ?? 0) > 0;\n\n const getGroupSelectionState = useMemo(() => {\n if (!isGroupHeader || !isMultiSelect || !selectedRows) {\n return { isAllSelected: false, isIndeterminate: false };\n }\n\n const childNodes = (item as { nodes?: string[] }).nodes ?? [];\n if (childNodes.length === 0) {\n return { isAllSelected: false, isIndeterminate: false };\n }\n\n const selectedChildIds = childNodes.filter((child) => selectedRows.includes(child));\n const selectedCount = selectedChildIds?.length ?? 0;\n const totalCount = childNodes?.length ?? 0;\n\n const isAllSelected = selectedCount === totalCount;\n const isIndeterminate = selectedCount > 0 && selectedCount < totalCount && !isSelected;\n\n return { isAllSelected, isIndeterminate };\n }, [isGroupHeader, isMultiSelect, selectedRows, item, isSelected]);\n\n const { isAllSelected, isIndeterminate } = getGroupSelectionState;\n\n useEffect(() => {\n if (isDisabled) {\n setDisabledRows((prev) => [...prev, item.id]);\n }\n }, [isDisabled, item.id, setDisabledRows]);\n\n useIsomorphicLayoutEffect(() => {\n if (hasHoverActions) {\n setHasHoverActions(true);\n }\n }, [hasHoverActions]);\n\n return (\n <StyledRow\n disabled={isDisabled}\n $isSelectable={isDisabled ? false : isSelectable}\n $isHoverable={isDisabled ? false : Boolean(onHover) || Boolean(onClick)}\n $showBorderedCells={showBorderedCells}\n item={item}\n className={isDisabled ? 'disabled-row' : ''}\n onMouseEnter={() => onHover?.({ item })}\n onClick={() => {\n onClick?.({ item });\n if (selectionType !== 'none' && !isDisabled) {\n toggleRowSelectionById(item.id);\n }\n }}\n {...makeAccessible({ selected: isSelected })}\n {...metaAttribute({ name: MetaConstants.TableRow, testID })}\n {...makeAnalyticsAttribute(rest)}\n $isVirtualized={isVirtualized}\n $isGrouped={isGrouped}\n $isGroupHeader={isGroupHeader}\n >\n {isMultiSelect && (\n <TableCheckboxCell\n isChecked={Boolean(isSelected) || Boolean(isAllSelected)}\n onChange={() => !isDisabled && toggleRowSelectionById(item.id)}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n />\n )}\n {children}\n {hoverActions ? (\n <TableCell _hasPadding={false}>\n <BaseBox\n className={classes.HOVER_ACTIONS}\n position={{ base: 'relative', m: 'absolute' }}\n top=\"spacing.0\"\n right=\"spacing.0\"\n height=\"100%\"\n flexShrink={0}\n flexGrow={1}\n width=\"max-content\"\n >\n <BaseBox\n className={classes.HOVER_ACTIONS_LAYER2}\n height=\"100%\"\n width=\"max-content\"\n display=\"flex\"\n alignItems=\"center\"\n >\n <BaseBox\n height=\"100%\"\n width=\"max-content\"\n className={classes.HOVER_ACTIONS_LAYER3}\n display=\"flex\"\n alignItems=\"center\"\n paddingLeft={{ base: 'spacing.4', m: 'spacing.6' }}\n paddingRight=\"spacing.4\"\n gap=\"spacing.3\"\n >\n {hoverActions}\n </BaseBox>\n </BaseBox>\n </BaseBox>\n </TableCell>\n ) : null}\n </StyledRow>\n );\n};\n\nconst _Virtulized = <Item,>({\n headerHeight,\n rowHeight,\n children,\n}: VirtualizedWrapperProps): React.ReactElement => {\n const [parsedHeader = null, parsedBody = null] = React.Children.toArray(children);\n const { rowDensity, tableData } = useTableContext<Item>();\n const _tableRow = Number(tableRow.minHeight[rowDensity]);\n\n const _rowHeight = (item: TableNode<Item>, index: number): number => {\n if (index === 0) {\n return headerHeight ?? _tableRow;\n }\n return rowHeight ? rowHeight(item, index - 1) : _tableRow;\n };\n\n const bodyFunction =\n React.isValidElement(parsedBody) &&\n parsedBody.props &&\n typeof parsedBody.props === 'object' &&\n 'children' in parsedBody.props\n ? parsedBody.props.children\n : null;\n\n return (\n <Virtualized\n tableList={tableData}\n rowHeight={_rowHeight as RowHeightType}\n header={() => parsedHeader}\n body={bodyFunction as (node: TableNode<Item>, index: number) => React.ReactNode}\n />\n );\n};\n\nconst TableRow = assignWithoutSideEffects(_TableRow, {\n componentId: ComponentIds.TableRow,\n});\n\nconst TableVirtualizedWrapper = assignWithoutSideEffects(_Virtulized, {\n componentId: ComponentIds.VirtualizedTable,\n});\nexport { TableBody, TableRow, TableCell, TableVirtualizedWrapper };\n"],"names":["StyledBody","styled","Body","withConfig","displayName","componentId","_ref","theme","$showStripedRows","$isSelectable","rowBackgroundTransition","getTableRowBackgroundTransition","_objectSpread","border","transition","borderBottom","getTableBodyStyles","addCommonStyles","isSelectable","showStripedRows","isVirtualized","_TableBody","_ref2","children","rest","_objectWithoutProperties","_excluded","_useTableContext","useTableContext","selectionType","_jsx","$showBorderedCells","metaAttribute","name","MetaConstants","TableBody","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledCell","Cell","_ref3","$backgroundColor","gridRow","height","backgroundColor","getIn","colors","alignSelf","getFocusRingStyles","negativeOffset","CellWrapper","BaseBox","_ref4","$rowDensity","_ref4$hasPadding","hasPadding","textAlign","concat","makeMotionTime","motion","tableRow","backgroundColorMotionDuration","backgroundColorMotionEasing","nonStripeWrapper","paddingLeft","makeSpace","paddingRight","minHeight","makeSize","size","width","justifyContent","borderBottomWidth","borderBottomColor","borderColor","borderBottomStyle","_TableCell","_ref5","_hasPadding","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","_excluded2","isChildrenString","_useTableContext2","rowDensity","hasRowSpan","Boolean","gridRowValue","undefined","tabIndex","role","className","classes","HAS_ROW_SPANNING","TableCell","display","alignItems","flex","pointerEvents","whiteSpace","position","TableCellWrapper","Text","truncateAfterLines","TableCheckboxCell","_ref6","isChecked","onChange","isDisabled","isIndeterminate","checkboxCellWidth","onClick","e","target","currentTarget","stopPropagation","Checkbox","makeAccessible","label","StyledRow","Row","_ref7","$isHoverable","$isGrouped","$isGroupHeader","_useTableContext3","hasHoverActions","borderRightWidth","borderRightStyle","borderRightColor","borderRight","_defineProperty","getMediaQuery","min","breakpoints","m","opacity","zIndex","right","overflow","getTableActionsHoverStyles","hoverColor","nonStripe","cursor","backgroundColorHover","backgroundColorFocus","backgroundGradientColor","backgroundColorActive","groupHeaderBackgroundColor","_TableRow","_ref9","_nodes$length","_nodes","item","onHover","hoverActions","testID","_excluded3","_useTableContext4","selectedRows","toggleRowSelectionById","setDisabledRows","showBorderedCells","setHasHoverActions","isGrouped","isMultiSelect","isSelected","includes","id","isGroupHeader","treeXLevel","nodes","length","getGroupSelectionState","useMemo","_nodes2","_selectedChildIds$len","_childNodes$length","isAllSelected","childNodes","selectedChildIds","filter","child","selectedCount","totalCount","useEffect","prev","_toConsumableArray","useIsomorphicLayoutEffect","_jsxs","disabled","onMouseEnter","selected","TableRow","$isVirtualized","HOVER_ACTIONS","base","top","flexShrink","flexGrow","HOVER_ACTIONS_LAYER2","HOVER_ACTIONS_LAYER3","gap","_Virtulized","_ref10","headerHeight","rowHeight","_React$Children$toArr","React","Children","toArray","_React$Children$toArr2","_slicedToArray","_React$Children$toArr3","parsedHeader","_React$Children$toArr4","parsedBody","_useTableContext5","tableData","_tableRow","Number","_rowHeight","index","bodyFunction","isValidElement","props","_typeof","Virtualized","tableList","header","body","TableVirtualizedWrapper","VirtualizedTable"],"mappings":"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"}
@@ -29,7 +29,8 @@ var TableContext = /*#__PURE__*/React__default.createContext({
29
29
  columnCount: 0,
30
30
  gridTemplateColumns: undefined,
31
31
  isVirtualized: false,
32
- tableData: []
32
+ tableData: [],
33
+ isGrouped: false
33
34
  });
34
35
  var useTableContext = function useTableContext() {
35
36
  var context = React__default.useContext(TableContext);
@@ -1 +1 @@
1
- {"version":3,"file":"TableContext.js","sources":["../../../../../../src/components/Table/TableContext.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nimport React from 'react';\nimport type { TableNode } from '@table-library/react-table-library/table';\nimport type {\n TableBackgroundColors,\n TableProps,\n TablePaginationType,\n TableHeaderRowProps,\n TableNode as LocalTableNode,\n} from './types';\n\nexport type TableContextType<Item> = {\n selectionType?: TableProps<unknown>['selectionType'];\n selectedRows?: TableNode['id'][];\n totalItems: number;\n toggleRowSelectionById: (id: TableNode['id']) => void;\n toggleAllRowsSelection: () => void;\n deselectAllRows: () => void;\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n toggleSort: (sortKey: string) => void;\n currentSortedState: {\n sortKey: string;\n isSortReversed: boolean;\n sortableColumns?: string[];\n };\n setPaginationPage: (page: number) => void;\n setPaginationRowSize: (size: number) => void;\n currentPaginationState?: {\n page: number;\n size: number;\n };\n showStripedRows?: boolean;\n disabledRows: TableNode['id'][];\n setDisabledRows: React.Dispatch<React.SetStateAction<TableNode['id'][]>>;\n paginationType: NonNullable<TablePaginationType>;\n setPaginationType: React.Dispatch<React.SetStateAction<NonNullable<TablePaginationType>>>;\n backgroundColor: TableBackgroundColors | 'transparent';\n headerRowDensity?: TableHeaderRowProps['rowDensity'];\n setHeaderRowDensity: React.Dispatch<React.SetStateAction<TableHeaderRowProps['rowDensity']>>;\n showBorderedCells: NonNullable<TableProps<unknown>['showBorderedCells']>;\n hasHoverActions: boolean;\n setHasHoverActions: (hasHoverActions: boolean) => void;\n columnCount: number;\n gridTemplateColumns: string | undefined;\n isVirtualized?: boolean;\n tableData: LocalTableNode<Item>[];\n};\n\nconst TableContext = React.createContext<TableContextType<unknown>>({\n selectionType: 'none',\n selectedRows: undefined,\n totalItems: 0,\n toggleRowSelectionById: () => {},\n toggleAllRowsSelection: () => {},\n deselectAllRows: () => {},\n rowDensity: 'normal',\n toggleSort: () => {},\n currentSortedState: {\n sortKey: '',\n isSortReversed: false,\n },\n setPaginationPage: () => {},\n setPaginationRowSize: () => {},\n disabledRows: [],\n setDisabledRows: () => {},\n paginationType: 'client',\n setPaginationType: () => {},\n backgroundColor: 'surface.background.gray.intense',\n setHeaderRowDensity: () => {},\n showBorderedCells: false,\n hasHoverActions: false,\n setHasHoverActions: () => {},\n columnCount: 0,\n gridTemplateColumns: undefined,\n isVirtualized: false,\n tableData: [],\n});\n\nconst useTableContext = <Item,>(): TableContextType<Item> => {\n const context = React.useContext(TableContext as React.Context<TableContextType<Item>>);\n return context;\n};\n\nexport { useTableContext, TableContext };\n"],"names":["TableContext","React","createContext","selectionType","selectedRows","undefined","totalItems","toggleRowSelectionById","toggleAllRowsSelection","deselectAllRows","rowDensity","toggleSort","currentSortedState","sortKey","isSortReversed","setPaginationPage","setPaginationRowSize","disabledRows","setDisabledRows","paginationType","setPaginationType","backgroundColor","setHeaderRowDensity","showBorderedCells","hasHoverActions","setHasHoverActions","columnCount","gridTemplateColumns","isVirtualized","tableData","useTableContext","context","useContext"],"mappings":";;AAAA;AACA;AAgDA,IAAMA,YAAY,gBAAGC,cAAK,CAACC,aAAa,CAA4B;AAClEC,EAAAA,aAAa,EAAE,MAAM;AACrBC,EAAAA,YAAY,EAAEC,SAAS;AACvBC,EAAAA,UAAU,EAAE,CAAC;AACbC,EAAAA,sBAAsB,EAAE,SAAAA,sBAAA,GAAM,EAAE;AAChCC,EAAAA,sBAAsB,EAAE,SAAAA,sBAAA,GAAM,EAAE;AAChCC,EAAAA,eAAe,EAAE,SAAAA,eAAA,GAAM,EAAE;AACzBC,EAAAA,UAAU,EAAE,QAAQ;AACpBC,EAAAA,UAAU,EAAE,SAAAA,UAAA,GAAM,EAAE;AACpBC,EAAAA,kBAAkB,EAAE;AAClBC,IAAAA,OAAO,EAAE,EAAE;AACXC,IAAAA,cAAc,EAAE,KAAA;GACjB;AACDC,EAAAA,iBAAiB,EAAE,SAAAA,iBAAA,GAAM,EAAE;AAC3BC,EAAAA,oBAAoB,EAAE,SAAAA,oBAAA,GAAM,EAAE;AAC9BC,EAAAA,YAAY,EAAE,EAAE;AAChBC,EAAAA,eAAe,EAAE,SAAAA,eAAA,GAAM,EAAE;AACzBC,EAAAA,cAAc,EAAE,QAAQ;AACxBC,EAAAA,iBAAiB,EAAE,SAAAA,iBAAA,GAAM,EAAE;AAC3BC,EAAAA,eAAe,EAAE,iCAAiC;AAClDC,EAAAA,mBAAmB,EAAE,SAAAA,mBAAA,GAAM,EAAE;AAC7BC,EAAAA,iBAAiB,EAAE,KAAK;AACxBC,EAAAA,eAAe,EAAE,KAAK;AACtBC,EAAAA,kBAAkB,EAAE,SAAAA,kBAAA,GAAM,EAAE;AAC5BC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,mBAAmB,EAAEtB,SAAS;AAC9BuB,EAAAA,aAAa,EAAE,KAAK;AACpBC,EAAAA,SAAS,EAAE,EAAA;AACb,CAAC,EAAC;AAEF,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,GAAwC;AAC3D,EAAA,IAAMC,OAAO,GAAG9B,cAAK,CAAC+B,UAAU,CAAChC,YAAqD,CAAC,CAAA;AACvF,EAAA,OAAO+B,OAAO,CAAA;AAChB;;;;"}
1
+ {"version":3,"file":"TableContext.js","sources":["../../../../../../src/components/Table/TableContext.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nimport React from 'react';\nimport type { TableNode } from '@table-library/react-table-library/table';\nimport type {\n TableBackgroundColors,\n TableProps,\n TablePaginationType,\n TableHeaderRowProps,\n TableNode as LocalTableNode,\n} from './types';\n\nexport type TableContextType<Item> = {\n selectionType?: TableProps<unknown>['selectionType'];\n selectedRows?: TableNode['id'][];\n totalItems: number;\n toggleRowSelectionById: (id: TableNode['id']) => void;\n toggleAllRowsSelection: () => void;\n deselectAllRows: () => void;\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n toggleSort: (sortKey: string) => void;\n currentSortedState: {\n sortKey: string;\n isSortReversed: boolean;\n sortableColumns?: string[];\n };\n setPaginationPage: (page: number) => void;\n setPaginationRowSize: (size: number) => void;\n currentPaginationState?: {\n page: number;\n size: number;\n };\n showStripedRows?: boolean;\n disabledRows: TableNode['id'][];\n setDisabledRows: React.Dispatch<React.SetStateAction<TableNode['id'][]>>;\n paginationType: NonNullable<TablePaginationType>;\n setPaginationType: React.Dispatch<React.SetStateAction<NonNullable<TablePaginationType>>>;\n backgroundColor: TableBackgroundColors | 'transparent';\n headerRowDensity?: TableHeaderRowProps['rowDensity'];\n setHeaderRowDensity: React.Dispatch<React.SetStateAction<TableHeaderRowProps['rowDensity']>>;\n showBorderedCells: NonNullable<TableProps<unknown>['showBorderedCells']>;\n hasHoverActions: boolean;\n setHasHoverActions: (hasHoverActions: boolean) => void;\n columnCount: number;\n gridTemplateColumns: string | undefined;\n isVirtualized?: boolean;\n tableData: LocalTableNode<Item>[];\n isGrouped: boolean;\n};\n\nconst TableContext = React.createContext<TableContextType<unknown>>({\n selectionType: 'none',\n selectedRows: undefined,\n totalItems: 0,\n toggleRowSelectionById: () => {},\n toggleAllRowsSelection: () => {},\n deselectAllRows: () => {},\n rowDensity: 'normal',\n toggleSort: () => {},\n currentSortedState: {\n sortKey: '',\n isSortReversed: false,\n },\n setPaginationPage: () => {},\n setPaginationRowSize: () => {},\n disabledRows: [],\n setDisabledRows: () => {},\n paginationType: 'client',\n setPaginationType: () => {},\n backgroundColor: 'surface.background.gray.intense',\n setHeaderRowDensity: () => {},\n showBorderedCells: false,\n hasHoverActions: false,\n setHasHoverActions: () => {},\n columnCount: 0,\n gridTemplateColumns: undefined,\n isVirtualized: false,\n tableData: [],\n isGrouped: false,\n});\n\nconst useTableContext = <Item,>(): TableContextType<Item> => {\n const context = React.useContext(TableContext as React.Context<TableContextType<Item>>);\n return context;\n};\n\nexport { useTableContext, TableContext };\n"],"names":["TableContext","React","createContext","selectionType","selectedRows","undefined","totalItems","toggleRowSelectionById","toggleAllRowsSelection","deselectAllRows","rowDensity","toggleSort","currentSortedState","sortKey","isSortReversed","setPaginationPage","setPaginationRowSize","disabledRows","setDisabledRows","paginationType","setPaginationType","backgroundColor","setHeaderRowDensity","showBorderedCells","hasHoverActions","setHasHoverActions","columnCount","gridTemplateColumns","isVirtualized","tableData","isGrouped","useTableContext","context","useContext"],"mappings":";;AAAA;AACA;AAiDA,IAAMA,YAAY,gBAAGC,cAAK,CAACC,aAAa,CAA4B;AAClEC,EAAAA,aAAa,EAAE,MAAM;AACrBC,EAAAA,YAAY,EAAEC,SAAS;AACvBC,EAAAA,UAAU,EAAE,CAAC;AACbC,EAAAA,sBAAsB,EAAE,SAAAA,sBAAA,GAAM,EAAE;AAChCC,EAAAA,sBAAsB,EAAE,SAAAA,sBAAA,GAAM,EAAE;AAChCC,EAAAA,eAAe,EAAE,SAAAA,eAAA,GAAM,EAAE;AACzBC,EAAAA,UAAU,EAAE,QAAQ;AACpBC,EAAAA,UAAU,EAAE,SAAAA,UAAA,GAAM,EAAE;AACpBC,EAAAA,kBAAkB,EAAE;AAClBC,IAAAA,OAAO,EAAE,EAAE;AACXC,IAAAA,cAAc,EAAE,KAAA;GACjB;AACDC,EAAAA,iBAAiB,EAAE,SAAAA,iBAAA,GAAM,EAAE;AAC3BC,EAAAA,oBAAoB,EAAE,SAAAA,oBAAA,GAAM,EAAE;AAC9BC,EAAAA,YAAY,EAAE,EAAE;AAChBC,EAAAA,eAAe,EAAE,SAAAA,eAAA,GAAM,EAAE;AACzBC,EAAAA,cAAc,EAAE,QAAQ;AACxBC,EAAAA,iBAAiB,EAAE,SAAAA,iBAAA,GAAM,EAAE;AAC3BC,EAAAA,eAAe,EAAE,iCAAiC;AAClDC,EAAAA,mBAAmB,EAAE,SAAAA,mBAAA,GAAM,EAAE;AAC7BC,EAAAA,iBAAiB,EAAE,KAAK;AACxBC,EAAAA,eAAe,EAAE,KAAK;AACtBC,EAAAA,kBAAkB,EAAE,SAAAA,kBAAA,GAAM,EAAE;AAC5BC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,mBAAmB,EAAEtB,SAAS;AAC9BuB,EAAAA,aAAa,EAAE,KAAK;AACpBC,EAAAA,SAAS,EAAE,EAAE;AACbC,EAAAA,SAAS,EAAE,KAAA;AACb,CAAC,EAAC;AAEF,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,GAAwC;AAC3D,EAAA,IAAMC,OAAO,GAAG/B,cAAK,CAACgC,UAAU,CAACjC,YAAqD,CAAC,CAAA;AACvF,EAAA,OAAOgC,OAAO,CAAA;AAChB;;;;"}
@@ -3,7 +3,7 @@ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProper
3
3
  import 'react';
4
4
  import { Footer, FooterRow, FooterCell } from '@table-library/react-table-library/table';
5
5
  import styled from 'styled-components';
6
- import { tableFooter, tableRow } from './tokens.js';
6
+ import { tableFooter, tableRow, classes } from './tokens.js';
7
7
  import { ComponentIds } from './componentIds.js';
8
8
  import { useTableContext } from './TableContext.js';
9
9
  import '../Typography/index.js';
@@ -25,7 +25,7 @@ import { Text } from '../Typography/Text/Text.js';
25
25
 
26
26
  var _excluded = ["children"],
27
27
  _excluded2 = ["children"],
28
- _excluded3 = ["children", "textAlign"];
28
+ _excluded3 = ["children", "textAlign", "gridColumnStart", "gridColumnEnd", "gridRowStart", "gridRowEnd"];
29
29
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
30
30
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
31
31
  var StyledFooter = /*#__PURE__*/styled(Footer).withConfig({
@@ -95,7 +95,8 @@ var StyledFooterCell = /*#__PURE__*/styled(FooterCell).withConfig({
95
95
  var theme = _ref5.theme,
96
96
  $backgroundColor = _ref5.$backgroundColor,
97
97
  $rowDensity = _ref5.$rowDensity,
98
- $textAlign = _ref5.$textAlign;
98
+ $textAlign = _ref5.$textAlign,
99
+ gridRow = _ref5.gridRow;
99
100
  return {
100
101
  '&&&': {
101
102
  height: '100%',
@@ -106,6 +107,7 @@ var StyledFooterCell = /*#__PURE__*/styled(FooterCell).withConfig({
106
107
  borderTopColor: getIn(theme.colors, tableFooter.borderBottomAndTopColor),
107
108
  borderBottomStyle: 'solid',
108
109
  borderTopStyle: 'solid',
110
+ gridRow: gridRow,
109
111
  '> div': {
110
112
  backgroundColor: getIn(theme.colors, tableFooter.backgroundColor),
111
113
  display: 'flex',
@@ -123,12 +125,22 @@ var StyledFooterCell = /*#__PURE__*/styled(FooterCell).withConfig({
123
125
  var _TableFooterCell = function _TableFooterCell(_ref6) {
124
126
  var children = _ref6.children,
125
127
  textAlign = _ref6.textAlign,
128
+ gridColumnStart = _ref6.gridColumnStart,
129
+ gridColumnEnd = _ref6.gridColumnEnd,
130
+ gridRowStart = _ref6.gridRowStart,
131
+ gridRowEnd = _ref6.gridRowEnd,
126
132
  rest = _objectWithoutProperties(_ref6, _excluded3);
127
133
  var isChildrenString = typeof children === 'string';
128
134
  var _useTableContext2 = useTableContext(),
129
135
  backgroundColor = _useTableContext2.backgroundColor,
130
136
  rowDensity = _useTableContext2.rowDensity;
137
+ var hasRowSpan = Boolean(gridRowStart && gridRowEnd);
138
+ var gridRowValue = hasRowSpan ? "".concat(gridRowStart, " / ").concat(gridRowEnd) : undefined;
131
139
  return /*#__PURE__*/jsx(StyledFooterCell, _objectSpread(_objectSpread(_objectSpread({
140
+ className: hasRowSpan ? classes.HAS_ROW_SPANNING : '',
141
+ gridColumnStart: gridColumnStart,
142
+ gridColumnEnd: gridColumnEnd,
143
+ gridRow: gridRowValue,
132
144
  $backgroundColor: backgroundColor,
133
145
  $rowDensity: rowDensity,
134
146
  $textAlign: textAlign
@@ -1 +1 @@
1
- {"version":3,"file":"TableFooter.web.js","sources":["../../../../../../src/components/Table/TableFooter.web.tsx"],"sourcesContent":["import React from 'react';\nimport { Footer, FooterRow, FooterCell } from '@table-library/react-table-library/table';\nimport styled from 'styled-components';\nimport { tableFooter, tableRow } from './tokens';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableFooterProps,\n TableFooterRowProps,\n TableFooterCellProps,\n TableBackgroundColors,\n TableProps,\n} from './types';\nimport { useTableContext } from './TableContext';\nimport { Text } from '~components/Typography';\nimport { makeSize, makeSpace } from '~utils';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport getIn from '~utils/lodashButBetter/get';\nimport { size } from '~tokens/global';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst StyledFooter = styled(Footer)(({ theme }) => ({\n '&&&': {\n backgroundColor: getIn(theme.colors, tableFooter.backgroundColor),\n '& tr:last-child th': {\n borderBottom: 'none',\n },\n },\n}));\n\nconst _TableFooter = ({ children, ...rest }: TableFooterProps): React.ReactElement => {\n return (\n <StyledFooter\n isFooter\n {...metaAttribute({ name: MetaConstants.TableFooter })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledFooter>\n );\n};\n\nconst TableFooter = assignWithoutSideEffects(_TableFooter, {\n componentId: ComponentIds.TableFooter,\n});\n\nconst StyledFooterRow = styled(FooterRow)<{ $showBorderedCells: boolean }>(\n ({ theme, $showBorderedCells }) => ({\n '& th': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n borderRightStyle: 'solid',\n }\n : undefined,\n '& th:last-child ': {\n borderRight: 'none',\n },\n }),\n);\n\nconst _TableFooterRow = ({ children, ...rest }: TableFooterRowProps): React.ReactElement => {\n const { showBorderedCells } = useTableContext();\n return (\n <StyledFooterRow\n {...metaAttribute({ name: MetaConstants.TableFooterRow })}\n {...makeAnalyticsAttribute(rest)}\n $showBorderedCells={showBorderedCells}\n >\n {children}\n </StyledFooterRow>\n );\n};\n\nconst TableFooterRow = assignWithoutSideEffects(_TableFooterRow, {\n componentId: ComponentIds.TableFooterRow,\n});\n\nconst StyledFooterCell = styled(FooterCell)<{\n $backgroundColor: TableBackgroundColors;\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n $textAlign?: string;\n}>(({ theme, $backgroundColor, $rowDensity, $textAlign }) => ({\n '&&&': {\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableFooter.borderBottomAndTopWidth)),\n borderTopWidth: makeSpace(getIn(theme.border.width, tableFooter.borderBottomAndTopWidth)),\n borderBottomColor: getIn(theme.colors, tableFooter.borderBottomAndTopColor),\n borderTopColor: getIn(theme.colors, tableFooter.borderBottomAndTopColor),\n borderBottomStyle: 'solid',\n borderTopStyle: 'solid',\n '> div': {\n backgroundColor: getIn(theme.colors, tableFooter.backgroundColor),\n display: 'flex',\n flexDirection: 'row',\n height: '100%',\n paddingLeft: makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])),\n paddingRight: makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity])),\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n alignItems: 'center',\n justifyContent: $textAlign ? $textAlign : 'left',\n },\n },\n}));\n\nconst _TableFooterCell = ({\n children,\n textAlign,\n ...rest\n}: TableFooterCellProps): React.ReactElement => {\n const isChildrenString = typeof children === 'string';\n const { backgroundColor, rowDensity } = useTableContext();\n\n return (\n <StyledFooterCell\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n $textAlign={textAlign}\n {...metaAttribute({ name: MetaConstants.TableFooterCell })}\n {...makeAnalyticsAttribute(rest)}\n >\n {isChildrenString ? (\n <Text size=\"medium\" weight=\"medium\">\n {children}\n </Text>\n ) : (\n children\n )}\n </StyledFooterCell>\n );\n};\n\nconst TableFooterCell = assignWithoutSideEffects(_TableFooterCell, {\n componentId: ComponentIds.TableFooterCell,\n});\n\nexport { TableFooter, TableFooterRow, TableFooterCell };\n"],"names":["StyledFooter","styled","Footer","withConfig","displayName","componentId","_ref","theme","backgroundColor","getIn","colors","tableFooter","borderBottom","_TableFooter","_ref2","children","rest","_objectWithoutProperties","_excluded","_jsx","_objectSpread","isFooter","metaAttribute","name","MetaConstants","TableFooter","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledFooterRow","FooterRow","_ref3","$showBorderedCells","borderRightWidth","makeSpace","border","width","tableRow","borderBottomWidth","borderRightColor","borderColor","borderRightStyle","undefined","borderRight","_TableFooterRow","_ref4","_excluded2","_useTableContext","useTableContext","showBorderedCells","TableFooterRow","StyledFooterCell","FooterCell","_ref5","$backgroundColor","$rowDensity","$textAlign","height","borderBottomAndTopWidth","borderTopWidth","borderBottomColor","borderBottomAndTopColor","borderTopColor","borderBottomStyle","borderTopStyle","display","flexDirection","paddingLeft","paddingRight","minHeight","makeSize","size","alignItems","justifyContent","_TableFooterCell","_ref6","textAlign","_excluded3","isChildrenString","_useTableContext2","rowDensity","TableFooterCell","Text","weight"],"mappings":"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"}
1
+ {"version":3,"file":"TableFooter.web.js","sources":["../../../../../../src/components/Table/TableFooter.web.tsx"],"sourcesContent":["import React from 'react';\nimport { Footer, FooterRow, FooterCell } from '@table-library/react-table-library/table';\nimport styled from 'styled-components';\nimport { tableFooter, tableRow, classes } from './tokens';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableFooterProps,\n TableFooterRowProps,\n TableFooterCellProps,\n TableBackgroundColors,\n TableProps,\n} from './types';\nimport { useTableContext } from './TableContext';\nimport { Text } from '~components/Typography';\nimport { makeSize, makeSpace } from '~utils';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport getIn from '~utils/lodashButBetter/get';\nimport { size } from '~tokens/global';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst StyledFooter = styled(Footer)(({ theme }) => ({\n '&&&': {\n backgroundColor: getIn(theme.colors, tableFooter.backgroundColor),\n '& tr:last-child th': {\n borderBottom: 'none',\n },\n },\n}));\n\nconst _TableFooter = ({ children, ...rest }: TableFooterProps): React.ReactElement => {\n return (\n <StyledFooter\n isFooter\n {...metaAttribute({ name: MetaConstants.TableFooter })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledFooter>\n );\n};\n\nconst TableFooter = assignWithoutSideEffects(_TableFooter, {\n componentId: ComponentIds.TableFooter,\n});\n\nconst StyledFooterRow = styled(FooterRow)<{ $showBorderedCells: boolean }>(\n ({ theme, $showBorderedCells }) => ({\n '& th': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n borderRightStyle: 'solid',\n }\n : undefined,\n '& th:last-child ': {\n borderRight: 'none',\n },\n }),\n);\n\nconst _TableFooterRow = ({ children, ...rest }: TableFooterRowProps): React.ReactElement => {\n const { showBorderedCells } = useTableContext();\n return (\n <StyledFooterRow\n {...metaAttribute({ name: MetaConstants.TableFooterRow })}\n {...makeAnalyticsAttribute(rest)}\n $showBorderedCells={showBorderedCells}\n >\n {children}\n </StyledFooterRow>\n );\n};\n\nconst TableFooterRow = assignWithoutSideEffects(_TableFooterRow, {\n componentId: ComponentIds.TableFooterRow,\n});\n\nconst StyledFooterCell = styled(FooterCell)<{\n $backgroundColor: TableBackgroundColors;\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n $textAlign?: string;\n gridRow?: string;\n}>(({ theme, $backgroundColor, $rowDensity, $textAlign, gridRow }) => ({\n '&&&': {\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableFooter.borderBottomAndTopWidth)),\n borderTopWidth: makeSpace(getIn(theme.border.width, tableFooter.borderBottomAndTopWidth)),\n borderBottomColor: getIn(theme.colors, tableFooter.borderBottomAndTopColor),\n borderTopColor: getIn(theme.colors, tableFooter.borderBottomAndTopColor),\n borderBottomStyle: 'solid',\n borderTopStyle: 'solid',\n gridRow,\n '> div': {\n backgroundColor: getIn(theme.colors, tableFooter.backgroundColor),\n display: 'flex',\n flexDirection: 'row',\n height: '100%',\n paddingLeft: makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])),\n paddingRight: makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity])),\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n alignItems: 'center',\n justifyContent: $textAlign ? $textAlign : 'left',\n },\n },\n}));\n\nconst _TableFooterCell = ({\n children,\n textAlign,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n ...rest\n}: TableFooterCellProps): React.ReactElement => {\n const isChildrenString = typeof children === 'string';\n const { backgroundColor, rowDensity } = useTableContext();\n\n const hasRowSpan = Boolean(gridRowStart && gridRowEnd);\n const gridRowValue = hasRowSpan ? `${gridRowStart} / ${gridRowEnd}` : undefined;\n\n return (\n <StyledFooterCell\n className={hasRowSpan ? classes.HAS_ROW_SPANNING : ''}\n gridColumnStart={gridColumnStart}\n gridColumnEnd={gridColumnEnd}\n gridRow={gridRowValue}\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n $textAlign={textAlign}\n {...metaAttribute({ name: MetaConstants.TableFooterCell })}\n {...makeAnalyticsAttribute(rest)}\n >\n {isChildrenString ? (\n <Text size=\"medium\" weight=\"medium\">\n {children}\n </Text>\n ) : (\n children\n )}\n </StyledFooterCell>\n );\n};\n\nconst TableFooterCell = assignWithoutSideEffects(_TableFooterCell, {\n componentId: ComponentIds.TableFooterCell,\n});\n\nexport { TableFooter, TableFooterRow, TableFooterCell };\n"],"names":["StyledFooter","styled","Footer","withConfig","displayName","componentId","_ref","theme","backgroundColor","getIn","colors","tableFooter","borderBottom","_TableFooter","_ref2","children","rest","_objectWithoutProperties","_excluded","_jsx","_objectSpread","isFooter","metaAttribute","name","MetaConstants","TableFooter","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledFooterRow","FooterRow","_ref3","$showBorderedCells","borderRightWidth","makeSpace","border","width","tableRow","borderBottomWidth","borderRightColor","borderColor","borderRightStyle","undefined","borderRight","_TableFooterRow","_ref4","_excluded2","_useTableContext","useTableContext","showBorderedCells","TableFooterRow","StyledFooterCell","FooterCell","_ref5","$backgroundColor","$rowDensity","$textAlign","gridRow","height","borderBottomAndTopWidth","borderTopWidth","borderBottomColor","borderBottomAndTopColor","borderTopColor","borderBottomStyle","borderTopStyle","display","flexDirection","paddingLeft","paddingRight","minHeight","makeSize","size","alignItems","justifyContent","_TableFooterCell","_ref6","textAlign","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","_excluded3","isChildrenString","_useTableContext2","rowDensity","hasRowSpan","Boolean","gridRowValue","concat","className","classes","HAS_ROW_SPANNING","TableFooterCell","Text","weight"],"mappings":"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"}
@@ -3,7 +3,7 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
3
3
  import 'react';
4
4
  import styled from 'styled-components';
5
5
  import { Header, HeaderCell, HeaderRow } from '@table-library/react-table-library/table';
6
- import { tableHeader, tableRow, checkboxCellWidth } from './tokens.js';
6
+ import { tableHeader, tableRow, classes, checkboxCellWidth } from './tokens.js';
7
7
  import { useTableContext } from './TableContext.js';
8
8
  import { ComponentIds } from './componentIds.js';
9
9
  import '../Checkbox/index.js';
@@ -36,7 +36,7 @@ import { Text } from '../Typography/Text/Text.js';
36
36
  import { Checkbox } from '../Checkbox/Checkbox.js';
37
37
 
38
38
  var _excluded = ["children"],
39
- _excluded2 = ["children", "headerKey", "_hasPadding", "textAlign"],
39
+ _excluded2 = ["children", "headerKey", "_hasPadding", "textAlign", "gridColumnStart", "gridColumnEnd", "gridRowStart", "gridRowEnd"],
40
40
  _excluded3 = ["children", "rowDensity"];
41
41
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
42
42
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -123,7 +123,8 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
123
123
  $backgroundColor = _ref4.$backgroundColor,
124
124
  $rowDensity = _ref4.$rowDensity,
125
125
  $hasPadding = _ref4.$hasPadding,
126
- $textAlign = _ref4.$textAlign;
126
+ $textAlign = _ref4.$textAlign,
127
+ gridRow = _ref4.gridRow;
127
128
  return {
128
129
  '&&&': {
129
130
  display: $textAlign ? 'flex' : 'block',
@@ -137,6 +138,7 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
137
138
  borderBottomStyle: 'solid',
138
139
  borderTopStyle: 'solid',
139
140
  cursor: $isSortable ? 'pointer' : 'auto',
141
+ gridRow: gridRow,
140
142
  '> div': {
141
143
  backgroundColor: getIn(theme.colors, tableHeader.backgroundColor),
142
144
  display: 'flex',
@@ -162,6 +164,10 @@ var _TableHeaderCell = function _TableHeaderCell(_ref5) {
162
164
  _ref5$_hasPadding = _ref5._hasPadding,
163
165
  _hasPadding = _ref5$_hasPadding === void 0 ? true : _ref5$_hasPadding,
164
166
  textAlign = _ref5.textAlign,
167
+ gridColumnStart = _ref5.gridColumnStart,
168
+ gridColumnEnd = _ref5.gridColumnEnd,
169
+ gridRowStart = _ref5.gridRowStart,
170
+ gridRowEnd = _ref5.gridRowEnd,
165
171
  rest = _objectWithoutProperties(_ref5, _excluded2);
166
172
  var _useTableContext = useTableContext(),
167
173
  toggleSort = _useTableContext.toggleSort,
@@ -173,8 +179,14 @@ var _TableHeaderCell = function _TableHeaderCell(_ref5) {
173
179
  var isSortable = headerKey && Boolean((_currentSortedState$s = currentSortedState.sortableColumns) === null || _currentSortedState$s === void 0 ? void 0 : _currentSortedState$s.find(function (key) {
174
180
  return key === headerKey;
175
181
  }));
182
+ var hasRowSpan = Boolean(gridRowStart && gridRowEnd);
183
+ var gridRowValue = hasRowSpan ? "".concat(gridRowStart, " / ").concat(gridRowEnd) : undefined;
176
184
  return /*#__PURE__*/jsxs(StyledHeaderCell, _objectSpread(_objectSpread(_objectSpread({
177
185
  tabIndex: 0,
186
+ className: hasRowSpan ? classes.HAS_ROW_SPANNING : '',
187
+ gridColumnStart: gridColumnStart,
188
+ gridColumnEnd: gridColumnEnd,
189
+ gridRow: gridRowValue,
178
190
  $isSortable: isSortable,
179
191
  $backgroundColor: backgroundColor,
180
192
  $rowDensity: headerRowDensity !== null && headerRowDensity !== void 0 ? headerRowDensity : rowDensity,