@razorpay/blade 12.96.2 → 12.96.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/native/utils/makeSurfaceStyles/makeSurfaceStyles.js +10 -1
- package/build/lib/native/utils/makeSurfaceStyles/makeSurfaceStyles.js.map +1 -1
- package/build/lib/web/development/_virtual/cloneDeep.js +1 -1
- package/build/lib/web/development/_virtual/cloneDeep3.js +1 -1
- package/build/lib/web/development/components/ListView/ListView.web.js +1 -3
- package/build/lib/web/development/components/ListView/ListView.web.js.map +1 -1
- package/build/lib/web/development/components/ListView/ListViewFilters.web.js +0 -1
- package/build/lib/web/development/components/ListView/ListViewFilters.web.js.map +1 -1
- package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js +1 -1
- package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +3 -3
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableFooter.web.js +3 -3
- package/build/lib/web/development/components/Table/TableFooter.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableHeader.web.js +3 -3
- package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/development/node_modules/es-toolkit/dist/compat/object/cloneDeep.js +1 -1
- package/build/lib/web/development/node_modules/es-toolkit/dist/compat/predicate/matches.js +2 -2
- package/build/lib/web/development/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js +2 -2
- package/build/lib/web/development/node_modules/es-toolkit/dist/object/cloneDeep.js +1 -1
- package/build/lib/web/development/utils/makeSurfaceStyles/makeSurfaceStyles.js +7 -32
- package/build/lib/web/development/utils/makeSurfaceStyles/makeSurfaceStyles.js.map +1 -1
- package/build/lib/web/production/components/ListView/ListView.web.js +1 -3
- package/build/lib/web/production/components/ListView/ListView.web.js.map +1 -1
- package/build/lib/web/production/components/ListView/ListViewFilters.web.js +0 -1
- package/build/lib/web/production/components/ListView/ListViewFilters.web.js.map +1 -1
- package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js +1 -1
- package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +3 -3
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableFooter.web.js +3 -3
- package/build/lib/web/production/components/Table/TableFooter.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableHeader.web.js +3 -3
- package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/production/utils/makeSurfaceStyles/makeSurfaceStyles.js +7 -32
- package/build/lib/web/production/utils/makeSurfaceStyles/makeSurfaceStyles.js.map +1 -1
- package/build/types/components/index.d.ts +1124 -1124
- package/build/types/components/index.native.d.ts +84 -84
- package/build/types/utils/index.d.ts +0 -2
- package/build/types/utils/index.native.d.ts +0 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
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 color=\"surface.text.gray.subtle\" 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","color","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","_ref0","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: $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 color=\"surface.text.gray.subtle\" 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","gridRow","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","color","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","_ref0","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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"}
|
|
@@ -96,7 +96,7 @@ var StyledFooterCell = /*#__PURE__*/styled(FooterCell).withConfig({
|
|
|
96
96
|
$backgroundColor = _ref5.$backgroundColor,
|
|
97
97
|
$rowDensity = _ref5.$rowDensity,
|
|
98
98
|
$textAlign = _ref5.$textAlign,
|
|
99
|
-
gridRow = _ref5
|
|
99
|
+
$gridRow = _ref5.$gridRow;
|
|
100
100
|
return {
|
|
101
101
|
'&&&': {
|
|
102
102
|
height: '100%',
|
|
@@ -107,7 +107,7 @@ var StyledFooterCell = /*#__PURE__*/styled(FooterCell).withConfig({
|
|
|
107
107
|
borderTopColor: getIn(theme.colors, tableFooter.borderBottomAndTopColor),
|
|
108
108
|
borderBottomStyle: 'solid',
|
|
109
109
|
borderTopStyle: 'solid',
|
|
110
|
-
gridRow: gridRow,
|
|
110
|
+
gridRow: $gridRow,
|
|
111
111
|
'> div': {
|
|
112
112
|
backgroundColor: getIn(theme.colors, tableFooter.backgroundColor),
|
|
113
113
|
display: 'flex',
|
|
@@ -140,7 +140,7 @@ var _TableFooterCell = function _TableFooterCell(_ref6) {
|
|
|
140
140
|
className: hasRowSpan ? classes.HAS_ROW_SPANNING : '',
|
|
141
141
|
gridColumnStart: gridColumnStart,
|
|
142
142
|
gridColumnEnd: gridColumnEnd,
|
|
143
|
-
gridRow: gridRowValue,
|
|
143
|
+
$gridRow: gridRowValue,
|
|
144
144
|
$backgroundColor: backgroundColor,
|
|
145
145
|
$rowDensity: rowDensity,
|
|
146
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, 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 color=\"surface.text.gray.subtle\" size=\"small\" 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","color","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: $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 color=\"surface.text.gray.subtle\" size=\"small\" 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","gridRow","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","color","weight"],"mappings":"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"}
|
|
@@ -132,7 +132,7 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
|
|
|
132
132
|
$rowDensity = _ref5.$rowDensity,
|
|
133
133
|
$hasPadding = _ref5.$hasPadding,
|
|
134
134
|
$textAlign = _ref5.$textAlign,
|
|
135
|
-
gridRow = _ref5
|
|
135
|
+
$gridRow = _ref5.$gridRow;
|
|
136
136
|
return {
|
|
137
137
|
'&&&': {
|
|
138
138
|
display: $textAlign ? 'flex' : 'block',
|
|
@@ -146,7 +146,7 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
|
|
|
146
146
|
borderBottomStyle: 'solid',
|
|
147
147
|
borderTopStyle: 'solid',
|
|
148
148
|
cursor: $isSortable ? 'pointer' : 'auto',
|
|
149
|
-
gridRow: gridRow,
|
|
149
|
+
gridRow: $gridRow,
|
|
150
150
|
'> div': {
|
|
151
151
|
backgroundColor: getIn(theme.colors, tableHeader.backgroundColor),
|
|
152
152
|
display: 'flex',
|
|
@@ -194,7 +194,7 @@ var _TableHeaderCell = function _TableHeaderCell(_ref6) {
|
|
|
194
194
|
className: hasRowSpan ? classes.HAS_ROW_SPANNING : '',
|
|
195
195
|
gridColumnStart: gridColumnStart,
|
|
196
196
|
gridColumnEnd: gridColumnEnd,
|
|
197
|
-
gridRow: gridRowValue,
|
|
197
|
+
$gridRow: gridRowValue,
|
|
198
198
|
$isSortable: isSortable,
|
|
199
199
|
$backgroundColor: backgroundColor,
|
|
200
200
|
$rowDensity: headerRowDensity !== null && headerRowDensity !== void 0 ? headerRowDensity : rowDensity,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableHeader.web.js","sources":["../../../../../../src/components/Table/TableHeader.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { Header, HeaderRow, HeaderCell } from '@table-library/react-table-library/table';\nimport { checkboxCellWidth, tableHeader, tableRow, classes } from './tokens';\nimport { useTableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableHeaderRowProps,\n TableHeaderCellProps,\n TableBackgroundColors,\n TableProps,\n TableToolbarPlacement,\n} from './types';\nimport type { CheckboxProps } from '~components/Checkbox';\nimport { Checkbox } from '~components/Checkbox';\nimport { Text } from '~components/Typography';\nimport { castWebType, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport BaseBox from '~components/Box/BaseBox';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { useTheme } from '~components/BladeProvider';\nimport getIn from '~utils/lodashButBetter/get';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { size } from '~tokens/global';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst SortButton = styled.button(({ theme }) => ({\n cursor: 'pointer',\n border: 'none',\n padding: 0,\n margin: 0,\n borderRadius: theme.border.radius.small,\n background: 'transparent',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n transitionProperty: 'color, box-shadow',\n transitionDuration: castWebType(makeMotionTime(getIn(theme.motion, 'duration.quick'))),\n transitionTimingFunction: (theme.motion.easing.standard as unknown) as string,\n '&:focus-visible': getFocusRingStyles({ theme }),\n}));\n\nconst SortIcon = ({\n isSorted,\n isSortReversed,\n}: {\n isSorted: boolean;\n isSortReversed: boolean;\n}): React.ReactElement => {\n const { theme } = useTheme();\n const defaultColor = getIn(theme.colors, 'interactive.icon.gray.disabled');\n const activeColor = getIn(theme.colors, 'interactive.icon.gray.muted');\n const upArrowColor = isSorted && isSortReversed ? activeColor : defaultColor;\n const downArrowColor = isSorted && !isSortReversed ? activeColor : defaultColor;\n return (\n <SortButton\n {...metaAttribute({ name: MetaConstants.TableSortButton })}\n {...makeAccessible({ label: 'Toggle Sort', role: 'button' })}\n >\n <svg width={20} height={20} fill=\"none\">\n <path\n fill={upArrowColor}\n d=\"M10.59 2.251a.817.817 0 0 0-1.18 0L5.245 6.537a.875.875 0 0 0 0 1.212.817.817 0 0 0 1.179 0L10 4.069l3.577 3.68a.817.817 0 0 0 1.179 0 .874.874 0 0 0 0-1.212L10.589 2.25Z\"\n />\n <path\n fill={downArrowColor}\n d=\"M9.41 17.749a.817.817 0 0 0 1.18 0l4.166-4.286a.874.874 0 0 0 0-1.212.817.817 0 0 0-1.179 0L10 15.931l-3.577-3.68a.817.817 0 0 0-1.179 0 .874.874 0 0 0 0 1.212l4.167 4.286Z\"\n />\n </svg>\n </SortButton>\n );\n};\n\nconst StyledHeader = styled(Header)<{ $tableToolbarPlacement: TableToolbarPlacement }>(\n ({ $tableToolbarPlacement }) => ({\n '&&&': {\n '& tr:first-child th': {\n borderTop: 'none',\n },\n display: $tableToolbarPlacement === 'overlay' ? 'none' : undefined,\n },\n }),\n);\n\nconst _TableHeader = ({ children, ...rest }: TableHeaderRowProps): React.ReactElement => {\n const { tableToolbarPlacement } = useTableContext();\n\n return (\n <StyledHeader\n $tableToolbarPlacement={tableToolbarPlacement}\n {...metaAttribute({ name: MetaConstants.TableHeader })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledHeader>\n );\n};\n\nconst TableHeader = assignWithoutSideEffects(_TableHeader, {\n componentId: ComponentIds.TableHeader,\n});\n\nconst StyledHeaderCell = styled(HeaderCell)<{\n $isSortable: boolean;\n $backgroundColor: TableBackgroundColors;\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n $hasPadding: boolean;\n $textAlign: 'left' | 'center' | 'right';\n gridRow?: string;\n}>(({ theme, $isSortable, $backgroundColor, $rowDensity, $hasPadding, $textAlign, gridRow }) => ({\n '&&&': {\n display: $textAlign ? 'flex' : 'block',\n justifyContent: $textAlign ? 'space-between' : 'initial',\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableHeader.borderBottomAndTopWidth)),\n borderTopWidth: makeSpace(getIn(theme.border.width, tableHeader.borderBottomAndTopWidth)),\n borderBottomColor: getIn(theme.colors, tableHeader.borderBottomAndTopColor),\n borderTopColor: getIn(theme.colors, tableHeader.borderBottomAndTopColor),\n borderBottomStyle: 'solid',\n borderTopStyle: 'solid',\n cursor: $isSortable ? 'pointer' : 'auto',\n gridRow,\n '> div': {\n backgroundColor: getIn(theme.colors, tableHeader.backgroundColor),\n display: 'flex',\n flexDirection: 'row',\n justifyContent: $textAlign ? $textAlign : 'space-between',\n alignItems: 'center',\n height: '100%',\n paddingLeft: $hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity]))\n : undefined,\n paddingRight: $hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity]))\n : undefined,\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n },\n '&:focus-visible': getFocusRingStyles({ theme, negativeOffset: true }),\n },\n}));\n\nconst _TableHeaderCell = ({\n children,\n headerKey,\n _hasPadding = true,\n textAlign,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n ...rest\n}: TableHeaderCellProps): React.ReactElement => {\n const {\n toggleSort,\n currentSortedState,\n backgroundColor,\n rowDensity,\n headerRowDensity,\n } = useTableContext();\n const isChildrenString = typeof children === 'string';\n const isSortable =\n headerKey && Boolean(currentSortedState.sortableColumns?.find((key) => key === headerKey));\n\n const hasRowSpan = Boolean(gridRowStart && gridRowEnd);\n const gridRowValue = hasRowSpan ? `${gridRowStart} / ${gridRowEnd}` : undefined;\n\n return (\n <StyledHeaderCell\n tabIndex={0}\n className={hasRowSpan ? classes.HAS_ROW_SPANNING : ''}\n gridColumnStart={gridColumnStart}\n gridColumnEnd={gridColumnEnd}\n gridRow={gridRowValue}\n $isSortable={isSortable}\n $backgroundColor={backgroundColor}\n $rowDensity={headerRowDensity ?? rowDensity}\n $hasPadding={_hasPadding}\n $textAlign={textAlign}\n onClick={() => {\n if (isSortable) {\n toggleSort(headerKey);\n }\n }}\n {...metaAttribute({ name: MetaConstants.TableHeaderCell })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox display=\"flex\" flexGrow={1} justifyContent={textAlign}>\n {isChildrenString ? (\n <Text size=\"small\" weight=\"medium\" color=\"surface.text.gray.muted\">\n {children}\n </Text>\n ) : (\n children\n )}\n </BaseBox>\n {isSortable && (\n <BaseBox paddingLeft=\"spacing.2\" backgroundColor=\"transparent\" flexShrink={0}>\n <SortIcon\n isSorted={currentSortedState.sortKey === headerKey}\n isSortReversed={currentSortedState.isSortReversed}\n />\n </BaseBox>\n )}\n </StyledHeaderCell>\n );\n};\n\nconst TableHeaderCell = assignWithoutSideEffects(_TableHeaderCell, {\n componentId: ComponentIds.TableHeaderCell,\n});\n\nconst TableHeaderCellCheckbox = ({\n isChecked,\n isDisabled,\n isIndeterminate,\n onChange,\n}: {\n isChecked: CheckboxProps['isChecked'];\n isDisabled: CheckboxProps['isDisabled'];\n isIndeterminate?: CheckboxProps['isIndeterminate'];\n onChange: CheckboxProps['onChange'];\n}): React.ReactElement => {\n return (\n <TableHeaderCell headerKey=\"SELECT\">\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flex={1}\n width={makeSize(checkboxCellWidth)}\n >\n <Checkbox\n isChecked={isChecked}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={onChange}\n {...makeAccessible({ label: 'Select All Rows' })}\n />\n </BaseBox>\n </TableHeaderCell>\n );\n};\n\nconst StyledHeaderRow = styled(HeaderRow)<{\n $showBorderedCells: boolean;\n $gridTemplateColumns: string | undefined;\n $hasHoverActions: boolean;\n $selectionType: TableProps<unknown>['selectionType'];\n $columnCount: number;\n $isVirtualized?: boolean;\n}>(\n ({\n theme,\n $showBorderedCells,\n $gridTemplateColumns,\n $hasHoverActions,\n $selectionType,\n $columnCount,\n $isVirtualized,\n }) => ({\n '& th': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n borderRightStyle: 'solid',\n ...($isVirtualized && {\n display: 'grid',\n gridTemplateColumns: $gridTemplateColumns\n ? `${$gridTemplateColumns} ${$hasHoverActions ? 'min-content' : ''}`\n : ` ${\n $selectionType === 'multiple' ? 'min-content' : ''\n } repeat(${$columnCount},minmax(100px, 1fr)) ${\n $hasHoverActions ? 'min-content' : ''\n } !important;`,\n }),\n }\n : undefined,\n '& th:last-child ': {\n borderRight: 'none',\n },\n }),\n);\n\nconst _TableHeaderRow = ({\n children,\n rowDensity,\n ...rest\n}: TableHeaderRowProps): React.ReactElement => {\n const {\n disabledRows,\n selectionType,\n selectedRows,\n totalItems,\n toggleAllRowsSelection,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\n gridTemplateColumns,\n columnCount,\n isVirtualized,\n } = useTableContext();\n const isMultiSelect = selectionType === 'multiple';\n const isAllSelected = selectedRows && selectedRows.length === totalItems;\n const isIndeterminate = selectedRows && selectedRows.length > 0 && !isAllSelected;\n const isDisabled = disabledRows && disabledRows.length === totalItems;\n\n // Note: The rowDensity prop is deprecated (see types.ts for @deprecated documentation).\n // Header row is always compact (36px height) regardless of the rowDensity value passed.\n // This prop will be removed in a future major version.\n setHeaderRowDensity('compact');\n\n return (\n <StyledHeaderRow\n role=\"rowheader\"\n {...metaAttribute({ name: MetaConstants.TableHeaderRow })}\n {...makeAnalyticsAttribute(rest)}\n $showBorderedCells={showBorderedCells}\n $gridTemplateColumns={gridTemplateColumns}\n $hasHoverActions={hasHoverActions}\n $selectionType={selectionType}\n $columnCount={columnCount}\n $isVirtualized={isVirtualized}\n >\n {isMultiSelect && (\n <TableHeaderCellCheckbox\n isChecked={isAllSelected}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={() => toggleAllRowsSelection()}\n />\n )}\n {children}\n {hasHoverActions ? <TableHeaderCell _hasPadding={false}>Actions</TableHeaderCell> : null}\n </StyledHeaderRow>\n );\n};\n\nconst TableHeaderRow = assignWithoutSideEffects(_TableHeaderRow, {\n componentId: ComponentIds.TableHeaderRow,\n});\n\nexport { TableHeader, TableHeaderRow, TableHeaderCell };\n"],"names":["SortButton","styled","button","withConfig","displayName","componentId","_ref","theme","cursor","border","padding","margin","borderRadius","radius","small","background","display","alignItems","justifyContent","transitionProperty","transitionDuration","castWebType","makeMotionTime","getIn","motion","transitionTimingFunction","easing","standard","getFocusRingStyles","SortIcon","_ref2","isSorted","isSortReversed","_useTheme","useTheme","defaultColor","colors","activeColor","upArrowColor","downArrowColor","_jsx","_objectSpread","metaAttribute","name","MetaConstants","TableSortButton","makeAccessible","label","role","children","_jsxs","width","height","fill","d","StyledHeader","Header","_ref3","$tableToolbarPlacement","borderTop","undefined","_TableHeader","_ref4","rest","_objectWithoutProperties","_excluded","_useTableContext","useTableContext","tableToolbarPlacement","TableHeader","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledHeaderCell","HeaderCell","_ref5","$isSortable","$backgroundColor","$rowDensity","$hasPadding","$textAlign","gridRow","backgroundColor","borderBottomWidth","makeSpace","tableHeader","borderBottomAndTopWidth","borderTopWidth","borderBottomColor","borderBottomAndTopColor","borderTopColor","borderBottomStyle","borderTopStyle","flexDirection","paddingLeft","tableRow","paddingRight","minHeight","makeSize","size","negativeOffset","_TableHeaderCell","_ref6","_currentSortedState$s","headerKey","_ref6$_hasPadding","_hasPadding","textAlign","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","_excluded2","_useTableContext2","toggleSort","currentSortedState","rowDensity","headerRowDensity","isChildrenString","isSortable","Boolean","sortableColumns","find","key","hasRowSpan","gridRowValue","concat","tabIndex","className","classes","HAS_ROW_SPANNING","onClick","TableHeaderCell","BaseBox","flexGrow","Text","weight","color","flexShrink","sortKey","TableHeaderCellCheckbox","_ref7","isChecked","isDisabled","isIndeterminate","onChange","flex","checkboxCellWidth","Checkbox","StyledHeaderRow","HeaderRow","_ref8","$showBorderedCells","$gridTemplateColumns","$hasHoverActions","$selectionType","$columnCount","$isVirtualized","borderRightWidth","borderRightColor","borderColor","borderRightStyle","gridTemplateColumns","borderRight","_TableHeaderRow","_ref9","_excluded3","_useTableContext3","disabledRows","selectionType","selectedRows","totalItems","toggleAllRowsSelection","setHeaderRowDensity","showBorderedCells","hasHoverActions","columnCount","isVirtualized","isMultiSelect","isAllSelected","length","TableHeaderRow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableHeader.web.js","sources":["../../../../../../src/components/Table/TableHeader.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { Header, HeaderRow, HeaderCell } from '@table-library/react-table-library/table';\nimport { checkboxCellWidth, tableHeader, tableRow, classes } from './tokens';\nimport { useTableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableHeaderRowProps,\n TableHeaderCellProps,\n TableBackgroundColors,\n TableProps,\n TableToolbarPlacement,\n} from './types';\nimport type { CheckboxProps } from '~components/Checkbox';\nimport { Checkbox } from '~components/Checkbox';\nimport { Text } from '~components/Typography';\nimport { castWebType, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport BaseBox from '~components/Box/BaseBox';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { useTheme } from '~components/BladeProvider';\nimport getIn from '~utils/lodashButBetter/get';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { size } from '~tokens/global';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst SortButton = styled.button(({ theme }) => ({\n cursor: 'pointer',\n border: 'none',\n padding: 0,\n margin: 0,\n borderRadius: theme.border.radius.small,\n background: 'transparent',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n transitionProperty: 'color, box-shadow',\n transitionDuration: castWebType(makeMotionTime(getIn(theme.motion, 'duration.quick'))),\n transitionTimingFunction: (theme.motion.easing.standard as unknown) as string,\n '&:focus-visible': getFocusRingStyles({ theme }),\n}));\n\nconst SortIcon = ({\n isSorted,\n isSortReversed,\n}: {\n isSorted: boolean;\n isSortReversed: boolean;\n}): React.ReactElement => {\n const { theme } = useTheme();\n const defaultColor = getIn(theme.colors, 'interactive.icon.gray.disabled');\n const activeColor = getIn(theme.colors, 'interactive.icon.gray.muted');\n const upArrowColor = isSorted && isSortReversed ? activeColor : defaultColor;\n const downArrowColor = isSorted && !isSortReversed ? activeColor : defaultColor;\n return (\n <SortButton\n {...metaAttribute({ name: MetaConstants.TableSortButton })}\n {...makeAccessible({ label: 'Toggle Sort', role: 'button' })}\n >\n <svg width={20} height={20} fill=\"none\">\n <path\n fill={upArrowColor}\n d=\"M10.59 2.251a.817.817 0 0 0-1.18 0L5.245 6.537a.875.875 0 0 0 0 1.212.817.817 0 0 0 1.179 0L10 4.069l3.577 3.68a.817.817 0 0 0 1.179 0 .874.874 0 0 0 0-1.212L10.589 2.25Z\"\n />\n <path\n fill={downArrowColor}\n d=\"M9.41 17.749a.817.817 0 0 0 1.18 0l4.166-4.286a.874.874 0 0 0 0-1.212.817.817 0 0 0-1.179 0L10 15.931l-3.577-3.68a.817.817 0 0 0-1.179 0 .874.874 0 0 0 0 1.212l4.167 4.286Z\"\n />\n </svg>\n </SortButton>\n );\n};\n\nconst StyledHeader = styled(Header)<{ $tableToolbarPlacement: TableToolbarPlacement }>(\n ({ $tableToolbarPlacement }) => ({\n '&&&': {\n '& tr:first-child th': {\n borderTop: 'none',\n },\n display: $tableToolbarPlacement === 'overlay' ? 'none' : undefined,\n },\n }),\n);\n\nconst _TableHeader = ({ children, ...rest }: TableHeaderRowProps): React.ReactElement => {\n const { tableToolbarPlacement } = useTableContext();\n\n return (\n <StyledHeader\n $tableToolbarPlacement={tableToolbarPlacement}\n {...metaAttribute({ name: MetaConstants.TableHeader })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledHeader>\n );\n};\n\nconst TableHeader = assignWithoutSideEffects(_TableHeader, {\n componentId: ComponentIds.TableHeader,\n});\n\nconst StyledHeaderCell = styled(HeaderCell)<{\n $isSortable: boolean;\n $backgroundColor: TableBackgroundColors;\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n $hasPadding: boolean;\n $textAlign: 'left' | 'center' | 'right';\n $gridRow?: string;\n}>(({ theme, $isSortable, $backgroundColor, $rowDensity, $hasPadding, $textAlign, $gridRow }) => ({\n '&&&': {\n display: $textAlign ? 'flex' : 'block',\n justifyContent: $textAlign ? 'space-between' : 'initial',\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableHeader.borderBottomAndTopWidth)),\n borderTopWidth: makeSpace(getIn(theme.border.width, tableHeader.borderBottomAndTopWidth)),\n borderBottomColor: getIn(theme.colors, tableHeader.borderBottomAndTopColor),\n borderTopColor: getIn(theme.colors, tableHeader.borderBottomAndTopColor),\n borderBottomStyle: 'solid',\n borderTopStyle: 'solid',\n cursor: $isSortable ? 'pointer' : 'auto',\n gridRow: $gridRow,\n '> div': {\n backgroundColor: getIn(theme.colors, tableHeader.backgroundColor),\n display: 'flex',\n flexDirection: 'row',\n justifyContent: $textAlign ? $textAlign : 'space-between',\n alignItems: 'center',\n height: '100%',\n paddingLeft: $hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity]))\n : undefined,\n paddingRight: $hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity]))\n : undefined,\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n },\n '&:focus-visible': getFocusRingStyles({ theme, negativeOffset: true }),\n },\n}));\n\nconst _TableHeaderCell = ({\n children,\n headerKey,\n _hasPadding = true,\n textAlign,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n ...rest\n}: TableHeaderCellProps): React.ReactElement => {\n const {\n toggleSort,\n currentSortedState,\n backgroundColor,\n rowDensity,\n headerRowDensity,\n } = useTableContext();\n const isChildrenString = typeof children === 'string';\n const isSortable =\n headerKey && Boolean(currentSortedState.sortableColumns?.find((key) => key === headerKey));\n\n const hasRowSpan = Boolean(gridRowStart && gridRowEnd);\n const gridRowValue = hasRowSpan ? `${gridRowStart} / ${gridRowEnd}` : undefined;\n\n return (\n <StyledHeaderCell\n tabIndex={0}\n className={hasRowSpan ? classes.HAS_ROW_SPANNING : ''}\n gridColumnStart={gridColumnStart}\n gridColumnEnd={gridColumnEnd}\n $gridRow={gridRowValue}\n $isSortable={isSortable}\n $backgroundColor={backgroundColor}\n $rowDensity={headerRowDensity ?? rowDensity}\n $hasPadding={_hasPadding}\n $textAlign={textAlign}\n onClick={() => {\n if (isSortable) {\n toggleSort(headerKey);\n }\n }}\n {...metaAttribute({ name: MetaConstants.TableHeaderCell })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox display=\"flex\" flexGrow={1} justifyContent={textAlign}>\n {isChildrenString ? (\n <Text size=\"small\" weight=\"medium\" color=\"surface.text.gray.muted\">\n {children}\n </Text>\n ) : (\n children\n )}\n </BaseBox>\n {isSortable && (\n <BaseBox paddingLeft=\"spacing.2\" backgroundColor=\"transparent\" flexShrink={0}>\n <SortIcon\n isSorted={currentSortedState.sortKey === headerKey}\n isSortReversed={currentSortedState.isSortReversed}\n />\n </BaseBox>\n )}\n </StyledHeaderCell>\n );\n};\n\nconst TableHeaderCell = assignWithoutSideEffects(_TableHeaderCell, {\n componentId: ComponentIds.TableHeaderCell,\n});\n\nconst TableHeaderCellCheckbox = ({\n isChecked,\n isDisabled,\n isIndeterminate,\n onChange,\n}: {\n isChecked: CheckboxProps['isChecked'];\n isDisabled: CheckboxProps['isDisabled'];\n isIndeterminate?: CheckboxProps['isIndeterminate'];\n onChange: CheckboxProps['onChange'];\n}): React.ReactElement => {\n return (\n <TableHeaderCell headerKey=\"SELECT\">\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flex={1}\n width={makeSize(checkboxCellWidth)}\n >\n <Checkbox\n isChecked={isChecked}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={onChange}\n {...makeAccessible({ label: 'Select All Rows' })}\n />\n </BaseBox>\n </TableHeaderCell>\n );\n};\n\nconst StyledHeaderRow = styled(HeaderRow)<{\n $showBorderedCells: boolean;\n $gridTemplateColumns: string | undefined;\n $hasHoverActions: boolean;\n $selectionType: TableProps<unknown>['selectionType'];\n $columnCount: number;\n $isVirtualized?: boolean;\n}>(\n ({\n theme,\n $showBorderedCells,\n $gridTemplateColumns,\n $hasHoverActions,\n $selectionType,\n $columnCount,\n $isVirtualized,\n }) => ({\n '& th': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n borderRightStyle: 'solid',\n ...($isVirtualized && {\n display: 'grid',\n gridTemplateColumns: $gridTemplateColumns\n ? `${$gridTemplateColumns} ${$hasHoverActions ? 'min-content' : ''}`\n : ` ${\n $selectionType === 'multiple' ? 'min-content' : ''\n } repeat(${$columnCount},minmax(100px, 1fr)) ${\n $hasHoverActions ? 'min-content' : ''\n } !important;`,\n }),\n }\n : undefined,\n '& th:last-child ': {\n borderRight: 'none',\n },\n }),\n);\n\nconst _TableHeaderRow = ({\n children,\n rowDensity,\n ...rest\n}: TableHeaderRowProps): React.ReactElement => {\n const {\n disabledRows,\n selectionType,\n selectedRows,\n totalItems,\n toggleAllRowsSelection,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\n gridTemplateColumns,\n columnCount,\n isVirtualized,\n } = useTableContext();\n const isMultiSelect = selectionType === 'multiple';\n const isAllSelected = selectedRows && selectedRows.length === totalItems;\n const isIndeterminate = selectedRows && selectedRows.length > 0 && !isAllSelected;\n const isDisabled = disabledRows && disabledRows.length === totalItems;\n\n // Note: The rowDensity prop is deprecated (see types.ts for @deprecated documentation).\n // Header row is always compact (36px height) regardless of the rowDensity value passed.\n // This prop will be removed in a future major version.\n setHeaderRowDensity('compact');\n\n return (\n <StyledHeaderRow\n role=\"rowheader\"\n {...metaAttribute({ name: MetaConstants.TableHeaderRow })}\n {...makeAnalyticsAttribute(rest)}\n $showBorderedCells={showBorderedCells}\n $gridTemplateColumns={gridTemplateColumns}\n $hasHoverActions={hasHoverActions}\n $selectionType={selectionType}\n $columnCount={columnCount}\n $isVirtualized={isVirtualized}\n >\n {isMultiSelect && (\n <TableHeaderCellCheckbox\n isChecked={isAllSelected}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={() => toggleAllRowsSelection()}\n />\n )}\n {children}\n {hasHoverActions ? <TableHeaderCell _hasPadding={false}>Actions</TableHeaderCell> : null}\n </StyledHeaderRow>\n );\n};\n\nconst TableHeaderRow = assignWithoutSideEffects(_TableHeaderRow, {\n componentId: ComponentIds.TableHeaderRow,\n});\n\nexport { TableHeader, TableHeaderRow, TableHeaderCell };\n"],"names":["SortButton","styled","button","withConfig","displayName","componentId","_ref","theme","cursor","border","padding","margin","borderRadius","radius","small","background","display","alignItems","justifyContent","transitionProperty","transitionDuration","castWebType","makeMotionTime","getIn","motion","transitionTimingFunction","easing","standard","getFocusRingStyles","SortIcon","_ref2","isSorted","isSortReversed","_useTheme","useTheme","defaultColor","colors","activeColor","upArrowColor","downArrowColor","_jsx","_objectSpread","metaAttribute","name","MetaConstants","TableSortButton","makeAccessible","label","role","children","_jsxs","width","height","fill","d","StyledHeader","Header","_ref3","$tableToolbarPlacement","borderTop","undefined","_TableHeader","_ref4","rest","_objectWithoutProperties","_excluded","_useTableContext","useTableContext","tableToolbarPlacement","TableHeader","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledHeaderCell","HeaderCell","_ref5","$isSortable","$backgroundColor","$rowDensity","$hasPadding","$textAlign","$gridRow","backgroundColor","borderBottomWidth","makeSpace","tableHeader","borderBottomAndTopWidth","borderTopWidth","borderBottomColor","borderBottomAndTopColor","borderTopColor","borderBottomStyle","borderTopStyle","gridRow","flexDirection","paddingLeft","tableRow","paddingRight","minHeight","makeSize","size","negativeOffset","_TableHeaderCell","_ref6","_currentSortedState$s","headerKey","_ref6$_hasPadding","_hasPadding","textAlign","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","_excluded2","_useTableContext2","toggleSort","currentSortedState","rowDensity","headerRowDensity","isChildrenString","isSortable","Boolean","sortableColumns","find","key","hasRowSpan","gridRowValue","concat","tabIndex","className","classes","HAS_ROW_SPANNING","onClick","TableHeaderCell","BaseBox","flexGrow","Text","weight","color","flexShrink","sortKey","TableHeaderCellCheckbox","_ref7","isChecked","isDisabled","isIndeterminate","onChange","flex","checkboxCellWidth","Checkbox","StyledHeaderRow","HeaderRow","_ref8","$showBorderedCells","$gridTemplateColumns","$hasHoverActions","$selectionType","$columnCount","$isVirtualized","borderRightWidth","borderRightColor","borderColor","borderRightStyle","gridTemplateColumns","borderRight","_TableHeaderRow","_ref9","_excluded3","_useTableContext3","disabledRows","selectionType","selectedRows","totalItems","toggleAllRowsSelection","setHeaderRowDensity","showBorderedCells","hasHoverActions","columnCount","isVirtualized","isMultiSelect","isAllSelected","length","TableHeaderRow"],"mappings":"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"}
|
|
@@ -79,7 +79,6 @@ var getSurfaceGradients = function getSurfaceGradients(colorScheme) {
|
|
|
79
79
|
* Spread this into a styled-component's return object alongside layout styles.
|
|
80
80
|
*/
|
|
81
81
|
var getSurfaceStyles = function getSurfaceStyles(theme, colorScheme, options) {
|
|
82
|
-
var _options$beforeGradie, _options$afterGradien;
|
|
83
82
|
var isDarkMode = colorScheme === 'dark';
|
|
84
83
|
var _getSurfaceBoxShadow2 = getSurfaceBoxShadow(theme, colorScheme),
|
|
85
84
|
border = _getSurfaceBoxShadow2.border,
|
|
@@ -89,41 +88,17 @@ var getSurfaceStyles = function getSurfaceStyles(theme, colorScheme, options) {
|
|
|
89
88
|
var _getSurfaceGradients = getSurfaceGradients(colorScheme),
|
|
90
89
|
topGradientColor = _getSurfaceGradients.top,
|
|
91
90
|
bottomGradientColor = _getSurfaceGradients.bottom;
|
|
92
|
-
var
|
|
93
|
-
var
|
|
91
|
+
var gradientHeight = makeSpace(size[16]);
|
|
92
|
+
var bottomInset = isDarkMode ? 1 : 2;
|
|
93
|
+
var xInset = 2;
|
|
94
94
|
return {
|
|
95
95
|
boxShadow: boxShadow,
|
|
96
96
|
border: 'none',
|
|
97
97
|
borderTop: isDarkMode ? "1px solid ".concat(theme.colors.surface.border.gray.subtle) : '',
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
top: isDarkMode ? 0 : 1,
|
|
103
|
-
left: 1,
|
|
104
|
-
right: 1,
|
|
105
|
-
height: makeSpace(size[16]),
|
|
106
|
-
background: "linear-gradient(".concat(topGradientColor.start, " 0%, ").concat(topGradientColor.end, " 100%)"),
|
|
107
|
-
pointerEvents: 'none',
|
|
108
|
-
borderRadius: 'inherit',
|
|
109
|
-
borderBottomLeftRadius: 0,
|
|
110
|
-
borderBottomRightRadius: 0,
|
|
111
|
-
zIndex: beforeGradientZIndex
|
|
112
|
-
},
|
|
113
|
-
'&::after': {
|
|
114
|
-
content: '""',
|
|
115
|
-
position: 'absolute',
|
|
116
|
-
bottom: isDarkMode ? 1 : 2,
|
|
117
|
-
left: 1,
|
|
118
|
-
right: 1,
|
|
119
|
-
height: makeSpace(size[16]),
|
|
120
|
-
background: "linear-gradient(".concat(bottomGradientColor.start, " 0%, ").concat(bottomGradientColor.end, " 100%)"),
|
|
121
|
-
pointerEvents: 'none',
|
|
122
|
-
borderRadius: 'inherit',
|
|
123
|
-
borderTopLeftRadius: 0,
|
|
124
|
-
borderTopRightRadius: 0,
|
|
125
|
-
zIndex: afterGradientZIndex
|
|
126
|
-
}
|
|
98
|
+
backgroundImage: "\n linear-gradient(to bottom, ".concat(topGradientColor.start, " 0%, ").concat(topGradientColor.end, " 100%),\n linear-gradient(to bottom, ").concat(bottomGradientColor.start, " 0%, ").concat(bottomGradientColor.end, " 100%)\n "),
|
|
99
|
+
backgroundPosition: "\n center top,\n center calc(100% - ".concat(bottomInset, "px)\n "),
|
|
100
|
+
backgroundSize: "\n calc(100% - ".concat(xInset, "px) ").concat(gradientHeight, ",\n calc(100% - ").concat(xInset, "px) ").concat(gradientHeight, "\n "),
|
|
101
|
+
backgroundRepeat: 'no-repeat'
|
|
127
102
|
};
|
|
128
103
|
};
|
|
129
104
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeSurfaceStyles.js","sources":["../../../../../../src/utils/makeSurfaceStyles/makeSurfaceStyles.ts"],"sourcesContent":["import { colors, size } from '~tokens/global';\nimport type { ColorSchemeNames } from '~tokens/theme';\nimport type { Theme } from '~components/BladeProvider';\nimport { makeSpace } from '~utils/makeSpace';\n\nexport type SurfaceBoxShadow = {\n elevation: string;\n border: string;\n top: string;\n};\n\n/**\n * Returns the surface-style box shadow layers (elevation, border, top inner shadow)\n * for use in Card, Table, and other elevated surfaces. Use the same shadow in both\n * places for visual consistency.\n *\n * @param theme - Blade theme (from useTheme())\n * @param colorScheme - 'light' | 'dark'\n * @returns Object with elevation, border, and top shadow CSS strings\n */\nexport const getSurfaceBoxShadow = (\n theme: Theme,\n colorScheme: ColorSchemeNames,\n): SurfaceBoxShadow => {\n const boxShadow = {\n light: {\n elevation: `0px 6px 32px 4px ${colors.neutral.blueGrayLight.a406}`,\n border: `inset 0px 0px 0px 1px ${theme.colors.interactive.border.gray.disabled}`,\n top: `inset 0px -1.5px 0px 1px ${theme.colors.surface.background.gray.intense}`,\n },\n dark: {\n elevation: `0px 6px 12px 4px ${colors.neutral.black[5]}`,\n border: `inset 0px 0px 0px 1px ${theme.colors.interactive.border.gray.disabled}`,\n top: `inset 0px 0px 0px 1px ${theme.colors.surface.background.gray.intense}`,\n },\n };\n return boxShadow[colorScheme];\n};\n\n/**\n * Returns a single CSS box-shadow string combining border, elevation, and top inner shadow.\n * Use when applying the full surface shadow to an element.\n */\nexport const getSurfaceBoxShadowString = (theme: Theme, colorScheme: ColorSchemeNames): string => {\n const { border, elevation, top } = getSurfaceBoxShadow(theme, colorScheme);\n return `${border}, ${elevation}, ${top}`;\n};\n\nexport type SurfaceGradientColors = {\n start: string;\n end: string;\n};\n\nexport type SurfaceGradients = {\n top: SurfaceGradientColors;\n bottom: SurfaceGradientColors;\n};\n\nconst surfaceGradientsByScheme: Record<ColorSchemeNames, SurfaceGradients> = {\n light: {\n top: {\n start: colors.neutral.blueGrayLight[0],\n end: colors.neutral.blueGrayLight[0],\n },\n bottom: {\n start: colors.neutral.blueGrayLight[0],\n end: colors.neutral.blueGrayLight[50],\n },\n },\n dark: {\n top: {\n start: colors.neutral.blueGrayDark[1000],\n end: colors.neutral.blueGrayDark[1100],\n },\n bottom: {\n start: colors.neutral.blueGrayDark[1100],\n end: colors.neutral.blueGrayDark[1100],\n },\n },\n};\n\n/**\n * Returns the surface gradient colors (top and bottom) for Card-style overlays.\n *\n * @param colorScheme - 'light' | 'dark'\n * @returns Object with top and bottom gradient { start, end } colors\n */\nexport const getSurfaceGradients = (colorScheme: ColorSchemeNames): SurfaceGradients =>\n surfaceGradientsByScheme[colorScheme];\n\n/**\n * Returns the common surface decoration styles (box-shadow, border, gradients)\n * for use in Card, Table, ListView, and other elevated surfaces.\n * Spread this into a styled-component's return object alongside layout styles.\n */\nexport const getSurfaceStyles = (\n theme: Theme,\n colorScheme: ColorSchemeNames,\n options?: { beforeGradientZIndex?: number; afterGradientZIndex?: number; hideBorder?: boolean },\n): Record<string, unknown> => {\n const isDarkMode = colorScheme === 'dark';\n const { border, elevation, top } = getSurfaceBoxShadow(theme, colorScheme);\n const boxShadow = options?.hideBorder\n ? `${elevation}, ${top}`\n : `${border}, ${elevation}, ${top}`;\n const { top: topGradientColor, bottom: bottomGradientColor } = getSurfaceGradients(colorScheme);\n const beforeGradientZIndex = options?.beforeGradientZIndex ?? -1;\n const afterGradientZIndex = options?.afterGradientZIndex ?? -1;\n\n return {\n boxShadow,\n border: 'none',\n borderTop: isDarkMode ? `1px solid ${theme.colors.surface.border.gray.subtle}` : '',\n isolation: 'isolate',\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n top: isDarkMode ? 0 : 1,\n left: 1,\n right: 1,\n height: makeSpace(size[16]),\n background: `linear-gradient(${topGradientColor.start} 0%, ${topGradientColor.end} 100%)`,\n pointerEvents: 'none',\n borderRadius: 'inherit',\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n zIndex: beforeGradientZIndex,\n },\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n bottom: isDarkMode ? 1 : 2,\n left: 1,\n right: 1,\n height: makeSpace(size[16]),\n background: `linear-gradient(${bottomGradientColor.start} 0%, ${bottomGradientColor.end} 100%)`,\n pointerEvents: 'none',\n borderRadius: 'inherit',\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n zIndex: afterGradientZIndex,\n },\n };\n};\n"],"names":["getSurfaceBoxShadow","theme","colorScheme","boxShadow","light","elevation","concat","colors","neutral","blueGrayLight","a406","border","interactive","gray","disabled","top","surface","background","intense","dark","black","getSurfaceBoxShadowString","_getSurfaceBoxShadow","surfaceGradientsByScheme","start","end","bottom","blueGrayDark","getSurfaceGradients","getSurfaceStyles","options","_options$beforeGradie","_options$afterGradien","isDarkMode","_getSurfaceBoxShadow2","hideBorder","_getSurfaceGradients","topGradientColor","bottomGradientColor","beforeGradientZIndex","afterGradientZIndex","borderTop","subtle","isolation","content","position","left","right","height","makeSpace","size","pointerEvents","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","zIndex","borderTopLeftRadius","borderTopRightRadius"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"makeSurfaceStyles.js","sources":["../../../../../../src/utils/makeSurfaceStyles/makeSurfaceStyles.ts"],"sourcesContent":["import { colors, size } from '~tokens/global';\nimport type { ColorSchemeNames } from '~tokens/theme';\nimport type { Theme } from '~components/BladeProvider';\nimport { makeSpace } from '~utils/makeSpace';\n\nexport type SurfaceBoxShadow = {\n elevation: string;\n border: string;\n top: string;\n};\n\n/**\n * Returns the surface-style box shadow layers (elevation, border, top inner shadow)\n * for use in Card, Table, and other elevated surfaces. Use the same shadow in both\n * places for visual consistency.\n *\n * @param theme - Blade theme (from useTheme())\n * @param colorScheme - 'light' | 'dark'\n * @returns Object with elevation, border, and top shadow CSS strings\n */\nexport const getSurfaceBoxShadow = (\n theme: Theme,\n colorScheme: ColorSchemeNames,\n): SurfaceBoxShadow => {\n const boxShadow = {\n light: {\n elevation: `0px 6px 32px 4px ${colors.neutral.blueGrayLight.a406}`,\n border: `inset 0px 0px 0px 1px ${theme.colors.interactive.border.gray.disabled}`,\n top: `inset 0px -1.5px 0px 1px ${theme.colors.surface.background.gray.intense}`,\n },\n dark: {\n elevation: `0px 6px 12px 4px ${colors.neutral.black[5]}`,\n border: `inset 0px 0px 0px 1px ${theme.colors.interactive.border.gray.disabled}`,\n top: `inset 0px 0px 0px 1px ${theme.colors.surface.background.gray.intense}`,\n },\n };\n return boxShadow[colorScheme];\n};\n\n/**\n * Returns a single CSS box-shadow string combining border, elevation, and top inner shadow.\n * Use when applying the full surface shadow to an element.\n */\nexport const getSurfaceBoxShadowString = (theme: Theme, colorScheme: ColorSchemeNames): string => {\n const { border, elevation, top } = getSurfaceBoxShadow(theme, colorScheme);\n return `${border}, ${elevation}, ${top}`;\n};\n\nexport type SurfaceGradientColors = {\n start: string;\n end: string;\n};\n\nexport type SurfaceGradients = {\n top: SurfaceGradientColors;\n bottom: SurfaceGradientColors;\n};\n\nconst surfaceGradientsByScheme: Record<ColorSchemeNames, SurfaceGradients> = {\n light: {\n top: {\n start: colors.neutral.blueGrayLight[0],\n end: colors.neutral.blueGrayLight[0],\n },\n bottom: {\n start: colors.neutral.blueGrayLight[0],\n end: colors.neutral.blueGrayLight[50],\n },\n },\n dark: {\n top: {\n start: colors.neutral.blueGrayDark[1000],\n end: colors.neutral.blueGrayDark[1100],\n },\n bottom: {\n start: colors.neutral.blueGrayDark[1100],\n end: colors.neutral.blueGrayDark[1100],\n },\n },\n};\n\n/**\n * Returns the surface gradient colors (top and bottom) for Card-style overlays.\n *\n * @param colorScheme - 'light' | 'dark'\n * @returns Object with top and bottom gradient { start, end } colors\n */\nexport const getSurfaceGradients = (colorScheme: ColorSchemeNames): SurfaceGradients =>\n surfaceGradientsByScheme[colorScheme];\n\n/**\n * Returns the common surface decoration styles (box-shadow, border, gradients)\n * for use in Card, Table, ListView, and other elevated surfaces.\n * Spread this into a styled-component's return object alongside layout styles.\n */\nexport const getSurfaceStyles = (\n theme: Theme,\n colorScheme: ColorSchemeNames,\n options?: { hideBorder?: boolean },\n): Record<string, unknown> => {\n const isDarkMode = colorScheme === 'dark';\n const { border, elevation, top } = getSurfaceBoxShadow(theme, colorScheme);\n const boxShadow = options?.hideBorder\n ? `${elevation}, ${top}`\n : `${border}, ${elevation}, ${top}`;\n const { top: topGradientColor, bottom: bottomGradientColor } = getSurfaceGradients(colorScheme);\n\n const gradientHeight = makeSpace(size[16]);\n const bottomInset = isDarkMode ? 1 : 2;\n const xInset = 2;\n\n return {\n boxShadow,\n border: 'none',\n borderTop: isDarkMode ? `1px solid ${theme.colors.surface.border.gray.subtle}` : '',\n backgroundImage: `\n linear-gradient(to bottom, ${topGradientColor.start} 0%, ${topGradientColor.end} 100%),\n linear-gradient(to bottom, ${bottomGradientColor.start} 0%, ${bottomGradientColor.end} 100%)\n `,\n backgroundPosition: `\n center top,\n center calc(100% - ${bottomInset}px)\n `,\n backgroundSize: `\n calc(100% - ${xInset}px) ${gradientHeight},\n calc(100% - ${xInset}px) ${gradientHeight}\n `,\n backgroundRepeat: 'no-repeat',\n };\n};\n"],"names":["getSurfaceBoxShadow","theme","colorScheme","boxShadow","light","elevation","concat","colors","neutral","blueGrayLight","a406","border","interactive","gray","disabled","top","surface","background","intense","dark","black","getSurfaceBoxShadowString","_getSurfaceBoxShadow","surfaceGradientsByScheme","start","end","bottom","blueGrayDark","getSurfaceGradients","getSurfaceStyles","options","isDarkMode","_getSurfaceBoxShadow2","hideBorder","_getSurfaceGradients","topGradientColor","bottomGradientColor","gradientHeight","makeSpace","size","bottomInset","xInset","borderTop","subtle","backgroundImage","backgroundPosition","backgroundSize","backgroundRepeat"],"mappings":"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"}
|