@razorpay/blade 11.23.3 → 11.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/build/lib/native/components/Input/BaseInput/AnimatedBaseInputWrapper.native.js +1 -1
  2. package/build/lib/native/components/Input/BaseInput/AnimatedBaseInputWrapper.native.js.map +1 -1
  3. package/build/lib/native/components/Input/BaseInput/BaseInput.js +1 -1
  4. package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
  5. package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js +4 -1
  6. package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  7. package/build/lib/native/components/Input/BaseInput/BaseInputWrapper.js +1 -1
  8. package/build/lib/native/components/Input/BaseInput/BaseInputWrapper.js.map +1 -1
  9. package/build/lib/native/components/Input/BaseInput/StyledBaseInput.native.js +1 -1
  10. package/build/lib/native/components/Input/BaseInput/StyledBaseInput.native.js.map +1 -1
  11. package/build/lib/native/components/Input/BaseInput/baseInputStyles.js +2 -2
  12. package/build/lib/native/components/Input/BaseInput/baseInputStyles.js.map +1 -1
  13. package/build/lib/native/components/Input/BaseInput/baseInputTokens.js +2 -2
  14. package/build/lib/native/components/Input/BaseInput/baseInputTokens.js.map +1 -1
  15. package/build/lib/native/components/Table/TableBody.native.js +2 -2
  16. package/build/lib/native/components/Table/TableBody.native.js.map +1 -1
  17. package/build/lib/native/components/index.js +1 -1
  18. package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +8 -4
  19. package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
  20. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +17 -8
  21. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
  22. package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js +67 -17
  23. package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  24. package/build/lib/web/development/components/Input/BaseInput/BaseInputWrapper.js +4 -2
  25. package/build/lib/web/development/components/Input/BaseInput/BaseInputWrapper.js.map +1 -1
  26. package/build/lib/web/development/components/Input/BaseInput/StyledBaseInput.web.js +2 -1
  27. package/build/lib/web/development/components/Input/BaseInput/StyledBaseInput.web.js.map +1 -1
  28. package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js +15 -14
  29. package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js.map +1 -1
  30. package/build/lib/web/development/components/Input/BaseInput/baseInputTokens.js +9 -1
  31. package/build/lib/web/development/components/Input/BaseInput/baseInputTokens.js.map +1 -1
  32. package/build/lib/web/development/components/Table/Table.web.js +6 -3
  33. package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
  34. package/build/lib/web/development/components/Table/TableBody.web.js +185 -30
  35. package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
  36. package/build/lib/web/development/components/Table/TableContext.js +2 -1
  37. package/build/lib/web/development/components/Table/TableContext.js.map +1 -1
  38. package/build/lib/web/development/components/Table/TableFooter.web.js +33 -13
  39. package/build/lib/web/development/components/Table/TableFooter.web.js.map +1 -1
  40. package/build/lib/web/development/components/Table/TableHeader.web.js +24 -5
  41. package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
  42. package/build/lib/web/development/components/Table/componentIds.js +1 -0
  43. package/build/lib/web/development/components/Table/componentIds.js.map +1 -1
  44. package/build/lib/web/development/components/Table/index.js +1 -1
  45. package/build/lib/web/development/components/Table/tokens.js +7 -2
  46. package/build/lib/web/development/components/Table/tokens.js.map +1 -1
  47. package/build/lib/web/development/components/index.js +1 -1
  48. package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +8 -4
  49. package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
  50. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +17 -8
  51. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
  52. package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js +67 -17
  53. package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  54. package/build/lib/web/production/components/Input/BaseInput/BaseInputWrapper.js +4 -2
  55. package/build/lib/web/production/components/Input/BaseInput/BaseInputWrapper.js.map +1 -1
  56. package/build/lib/web/production/components/Input/BaseInput/StyledBaseInput.web.js +2 -1
  57. package/build/lib/web/production/components/Input/BaseInput/StyledBaseInput.web.js.map +1 -1
  58. package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js +15 -14
  59. package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js.map +1 -1
  60. package/build/lib/web/production/components/Input/BaseInput/baseInputTokens.js +9 -1
  61. package/build/lib/web/production/components/Input/BaseInput/baseInputTokens.js.map +1 -1
  62. package/build/lib/web/production/components/Table/Table.web.js +6 -3
  63. package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
  64. package/build/lib/web/production/components/Table/TableBody.web.js +185 -30
  65. package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
  66. package/build/lib/web/production/components/Table/TableContext.js +2 -1
  67. package/build/lib/web/production/components/Table/TableContext.js.map +1 -1
  68. package/build/lib/web/production/components/Table/TableFooter.web.js +33 -13
  69. package/build/lib/web/production/components/Table/TableFooter.web.js.map +1 -1
  70. package/build/lib/web/production/components/Table/TableHeader.web.js +24 -5
  71. package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
  72. package/build/lib/web/production/components/Table/componentIds.js +1 -0
  73. package/build/lib/web/production/components/Table/componentIds.js.map +1 -1
  74. package/build/lib/web/production/components/Table/index.js +1 -1
  75. package/build/lib/web/production/components/Table/tokens.js +7 -2
  76. package/build/lib/web/production/components/Table/tokens.js.map +1 -1
  77. package/build/lib/web/production/components/index.js +1 -1
  78. package/build/types/components/index.d.ts +15 -2
  79. package/build/types/components/index.native.d.ts +14 -1
  80. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Table.web.js","sources":["../../../../../../src/components/Table/Table.web.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from 'react';\nimport { Table as ReactTable } from '@table-library/react-table-library/table';\nimport { useTheme as useTableTheme } from '@table-library/react-table-library/theme';\nimport type { MiddlewareFunction } from '@table-library/react-table-library/types/common';\nimport { useSort } from '@table-library/react-table-library/sort';\nimport { usePagination } from '@table-library/react-table-library/pagination';\nimport { SelectTypes, useRowSelect } from '@table-library/react-table-library/select';\nimport styled from 'styled-components';\nimport usePresence from 'use-presence';\nimport type { TableContextType } from './TableContext';\nimport { TableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport {\n checkboxCellWidth,\n firstColumnStickyHeaderFooterZIndex,\n refreshWrapperZIndex,\n tableBackgroundColor,\n tablePagination,\n} from './tokens';\nimport type {\n TableProps,\n TableNode,\n Identifier,\n TablePaginationType,\n TableHeaderRowProps,\n} from './types';\nimport { makeBorderSize, makeMotionTime } from '~utils';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport type { BoxProps } from '~components/Box';\nimport { getBaseBoxStyles } from '~components/Box/BaseBox/baseBoxStyles';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Spinner } from '~components/Spinner';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useTheme } from '~components/BladeProvider';\nimport getIn from '~utils/lodashButBetter/get';\n\nconst rowSelectType: Record<\n NonNullable<TableProps<unknown>['selectionType']>,\n SelectTypes | undefined\n> = {\n single: SelectTypes.SingleSelect,\n multiple: SelectTypes.MultiSelect,\n none: undefined,\n};\n\n// Get the number of TableHeaderCell components.\n// This is very complicated but the only way to iterate through the structure and get number of header cells.\n// Assuming number of header cells is the same as number of columns\nconst getTableHeaderCellCount = (children: (data: []) => React.ReactElement): number => {\n const tableRootComponent = children([]);\n if (tableRootComponent && React.isValidElement(tableRootComponent)) {\n const tableComponentArray = React.Children.toArray(tableRootComponent);\n if (React.isValidElement(tableComponentArray[0])) {\n const tableComponentArrayChildren = React.Children.toArray(\n tableComponentArray[0].props.children,\n );\n const tableHeader = tableComponentArrayChildren.find(\n (child) => getComponentId(child) === ComponentIds.TableHeader,\n );\n const tableHeaderChildrenArray = React.isValidElement(tableHeader)\n ? React.Children.toArray(tableHeader.props.children)\n : null;\n const tableHeaderRow = tableHeaderChildrenArray?.find(\n (child) => getComponentId(child) === ComponentIds.TableHeaderRow,\n );\n const tableHeaderRowChildrenArray = React.isValidElement(tableHeaderRow)\n ? React.Children.toArray(tableHeaderRow.props.children)\n : null;\n const tableHeaderCells = tableHeaderRowChildrenArray\n ? tableHeaderRowChildrenArray.filter(\n (child) => getComponentId(child) === ComponentIds.TableHeaderCell,\n )\n : null;\n return tableHeaderCells?.length ?? 0;\n }\n }\n return 0;\n};\n\nconst StyledReactTable = styled(ReactTable)<{ $styledProps?: { height?: BoxProps['height'] } }>(\n ({ $styledProps }) => {\n const { theme } = useTheme();\n const styledPropsCSSObject = getBaseBoxStyles({\n theme,\n height: $styledProps?.height,\n });\n\n return {\n '&&&': {\n ...styledPropsCSSObject,\n },\n };\n },\n);\n\nconst RefreshWrapper = styled(BaseBox)<{\n isRefreshSpinnerVisible: boolean;\n isRefreshSpinnerEntering: boolean;\n isRefreshSpinnerExiting: boolean;\n}>(({ isRefreshSpinnerVisible, isRefreshSpinnerEntering, isRefreshSpinnerExiting, theme }) => {\n return {\n opacity: isRefreshSpinnerVisible ? 1 : 0,\n transition: `opacity ${makeMotionTime(theme.motion.duration.quick)} ${\n isRefreshSpinnerEntering\n ? theme.motion.easing.entrance.effective\n : isRefreshSpinnerExiting\n ? theme.motion.easing.exit.effective\n : ''\n }`,\n };\n});\n\nconst _Table = <Item,>({\n children,\n data,\n selectionType = 'none',\n onSelectionChange,\n isHeaderSticky,\n isFooterSticky,\n isFirstColumnSticky,\n rowDensity = 'normal',\n onSortChange,\n sortFunctions,\n toolbar,\n pagination,\n height,\n showStripedRows,\n gridTemplateColumns,\n isLoading = false,\n isRefreshing = false,\n ...styledProps\n}: TableProps<Item>): React.ReactElement => {\n const { theme } = useTheme();\n const [selectedRows, setSelectedRows] = React.useState<TableNode<unknown>['id'][]>([]);\n const [disabledRows, setDisabledRows] = React.useState<TableNode<unknown>['id'][]>([]);\n const [totalItems, setTotalItems] = React.useState(data.nodes.length || 0);\n const [paginationType, setPaginationType] = React.useState<NonNullable<TablePaginationType>>(\n 'client',\n );\n const [headerRowDensity, setHeaderRowDensity] = React.useState<TableHeaderRowProps['rowDensity']>(\n undefined,\n );\n // Need to make header is sticky if first column is sticky otherwise the first header cell will not be sticky\n const shouldHeaderBeSticky = isHeaderSticky ?? isFirstColumnSticky;\n const backgroundColor = tableBackgroundColor;\n\n const {\n isEntering: isRefreshSpinnerEntering,\n isMounted: isRefreshSpinnerMounted,\n isExiting: isRefreshSpinnerExiting,\n isVisible: isRefreshSpinnerVisible,\n } = usePresence(isRefreshing, {\n transitionDuration: theme.motion.duration.quick,\n });\n\n // Table Theme\n const columnCount = getTableHeaderCellCount(children);\n const firstColumnStickyHeaderCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyFooterCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyBodyCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n }\n `\n }`\n : '';\n\n const tableTheme = useTableTheme({\n Table: `\n height:${isFooterSticky ? `100%` : undefined};\n border: ${makeBorderSize(theme.border.width.thin)} solid ${\n theme.colors.surface.border.gray.muted\n };\n --data-table-library_grid-template-columns: ${\n gridTemplateColumns ??\n ` ${\n selectionType === 'multiple' ? 'min-content' : ''\n } repeat(${columnCount},minmax(100px, 1fr)) !important;`\n } !important;\n background-color: ${getIn(theme.colors, backgroundColor)};\n `,\n HeaderCell: `\n position: ${shouldHeaderBeSticky ? 'sticky' : 'relative'};\n top: ${shouldHeaderBeSticky ? '0' : undefined};\n ${firstColumnStickyHeaderCellCSS}\n `,\n Cell: `\n ${firstColumnStickyBodyCellCSS}\n `,\n FooterCell: `\n position: ${isFooterSticky ? 'sticky' : 'relative'};\n bottom: ${isFooterSticky ? '0' : undefined};\n ${firstColumnStickyFooterCellCSS}\n `,\n });\n\n useEffect(() => {\n // Get the total number of items\n setTotalItems(data.nodes.length);\n }, [data.nodes]);\n\n // Selection Logic\n const onSelectChange: MiddlewareFunction = (action, state): void => {\n const selectedIDs: Identifier[] = state.id ? [state.id] : state.ids ?? [];\n setSelectedRows(selectedIDs);\n onSelectionChange?.({\n values: data.nodes.filter((node) => selectedIDs.includes(node.id)),\n });\n };\n\n const rowSelectConfig = useRowSelect(\n data,\n {\n onChange: onSelectChange,\n },\n {\n rowSelect: selectionType !== 'none' ? rowSelectType[selectionType] : undefined,\n },\n );\n\n const toggleRowSelectionById = useMemo(\n () => (id: Identifier): void => {\n rowSelectConfig.fns.onToggleById(id);\n },\n [rowSelectConfig.fns],\n );\n\n const deselectAllRows = useMemo(\n () => (): void => {\n rowSelectConfig.fns.onRemoveAll();\n },\n [rowSelectConfig.fns],\n );\n\n const toggleAllRowsSelection = useMemo(\n () => (): void => {\n if (selectedRows.length > 0) {\n rowSelectConfig.fns.onRemoveAll();\n } else {\n const ids = data.nodes\n .map((item: TableNode<Item>) => (disabledRows.includes(item.id) ? null : item.id))\n .filter(Boolean) as Identifier[];\n\n rowSelectConfig.fns.onAddAll(ids);\n }\n },\n [rowSelectConfig.fns, data.nodes, selectedRows, disabledRows],\n );\n\n // Sort Logic\n const handleSortChange: MiddlewareFunction = (action, state) => {\n onSortChange?.({\n sortKey: state.sortKey,\n isSortReversed: state.reverse,\n });\n };\n\n const sort = useSort(\n data,\n {\n onChange: handleSortChange,\n },\n {\n // @ts-expect-error ignore this, if sortFunctions is undefined, it will be ignored\n sortFns: sortFunctions,\n },\n );\n\n const currentSortedState: TableContextType['currentSortedState'] = useMemo(() => {\n return {\n sortKey: sort.state.sortKey,\n isSortReversed: sort.state.reverse,\n sortableColumns: Object.keys(sortFunctions ?? {}),\n };\n }, [sort.state, sortFunctions]);\n\n const toggleSort = useCallback(\n (sortKey: string): void => {\n sort.fns.onToggleSort({\n sortKey,\n });\n },\n [sort.fns],\n );\n\n // Pagination\n\n const hasPagination = Boolean(pagination);\n\n const paginationConfig = usePagination(\n data,\n {\n state: {\n page: 0,\n size: tablePagination.defaultPageSize,\n },\n },\n {\n isServer: paginationType === 'server',\n },\n );\n\n const currentPaginationState = useMemo(() => {\n return hasPagination\n ? {\n page: paginationConfig.state.page,\n size: paginationConfig.state.size,\n }\n : undefined;\n }, [paginationConfig.state, hasPagination]);\n\n const setPaginationPage = useCallback(\n (page: number): void => {\n paginationConfig.fns.onSetPage(page);\n },\n [paginationConfig.fns],\n );\n\n const setPaginationRowSize = useCallback(\n (size: number): void => {\n paginationConfig.fns.onSetSize(size);\n },\n [paginationConfig.fns],\n );\n\n // Toolbar Component\n if (__DEV__) {\n if (toolbar && !isValidAllowedChildren(toolbar, ComponentIds.TableToolbar)) {\n throwBladeError({\n message: 'Only TableToolbar component is allowed in the `toolbar` prop',\n moduleName: 'Table',\n });\n }\n }\n\n // Table Context\n const tableContext: TableContextType = useMemo(\n () => ({\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n rowDensity,\n toggleSort,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n }),\n [\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n rowDensity,\n toggleSort,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n ],\n );\n\n return (\n <TableContext.Provider value={tableContext}>\n {isLoading ? (\n <BaseBox\n display=\"flex\"\n flex={1}\n alignItems=\"center\"\n justifyContent=\"center\"\n height={height}\n {...getStyledProps(styledProps)}\n {...metaAttribute({ name: MetaConstants.Table })}\n >\n <Spinner accessibilityLabel=\"Loading Table\" size=\"large\" />\n </BaseBox>\n ) : (\n <BaseBox\n flex={1}\n position=\"relative\"\n {...getStyledProps(styledProps)}\n {...metaAttribute({ name: MetaConstants.Table })}\n >\n {isRefreshSpinnerMounted && (\n <RefreshWrapper\n position=\"absolute\"\n width=\"100%\"\n height=\"100%\"\n zIndex={refreshWrapperZIndex}\n backgroundColor=\"overlay.background.subtle\"\n justifyContent=\"center\"\n alignItems=\"center\"\n display=\"flex\"\n isRefreshSpinnerEntering={isRefreshSpinnerEntering}\n isRefreshSpinnerExiting={isRefreshSpinnerExiting}\n isRefreshSpinnerVisible={isRefreshSpinnerVisible}\n >\n <Spinner color=\"white\" accessibilityLabel=\"Refreshing Table\" size=\"large\" />\n </RefreshWrapper>\n )}\n {toolbar}\n <StyledReactTable\n role=\"table\"\n layout={{ fixedHeader: shouldHeaderBeSticky, horizontalScroll: true }}\n data={data}\n // @ts-expect-error ignore this, theme clashes with styled-component's theme. We're using useTheme from blade to get actual theme\n theme={tableTheme}\n select={selectionType !== 'none' ? rowSelectConfig : null}\n sort={sortFunctions ? sort : null}\n $styledProps={{\n height,\n }}\n pagination={hasPagination ? paginationConfig : null}\n {...metaAttribute({ name: MetaConstants.Table })}\n >\n {children}\n </StyledReactTable>\n {pagination}\n </BaseBox>\n )}\n </TableContext.Provider>\n );\n};\n\nconst Table = assignWithoutSideEffects(_Table, {\n componentId: ComponentIds.Table,\n});\n\nexport { Table };\n"],"names":["rowSelectType","single","SelectTypes","SingleSelect","multiple","MultiSelect","none","undefined","getTableHeaderCellCount","children","tableRootComponent","React","isValidElement","tableComponentArray","Children","toArray","_tableHeaderCells$len","tableComponentArrayChildren","props","tableHeader","find","child","getComponentId","ComponentIds","TableHeader","tableHeaderChildrenArray","tableHeaderRow","TableHeaderRow","tableHeaderRowChildrenArray","tableHeaderCells","filter","TableHeaderCell","length","StyledReactTable","styled","ReactTable","withConfig","displayName","componentId","_ref","$styledProps","_useTheme","useTheme","theme","styledPropsCSSObject","getBaseBoxStyles","height","_objectSpread","RefreshWrapper","BaseBox","_ref2","isRefreshSpinnerVisible","isRefreshSpinnerEntering","isRefreshSpinnerExiting","opacity","transition","concat","makeMotionTime","motion","duration","quick","easing","entrance","effective","exit","_Table","_ref3","data","_ref3$selectionType","selectionType","onSelectionChange","isHeaderSticky","isFooterSticky","isFirstColumnSticky","_ref3$rowDensity","rowDensity","onSortChange","sortFunctions","toolbar","pagination","showStripedRows","gridTemplateColumns","_ref3$isLoading","isLoading","_ref3$isRefreshing","isRefreshing","styledProps","_objectWithoutProperties","_excluded","_useTheme2","_React$useState","useState","_React$useState2","_slicedToArray","selectedRows","setSelectedRows","_React$useState3","_React$useState4","disabledRows","setDisabledRows","_React$useState5","nodes","_React$useState6","totalItems","setTotalItems","_React$useState7","_React$useState8","paginationType","setPaginationType","_React$useState9","_React$useState10","headerRowDensity","setHeaderRowDensity","shouldHeaderBeSticky","backgroundColor","tableBackgroundColor","_usePresence","usePresence","transitionDuration","isEntering","isRefreshSpinnerMounted","isMounted","isExiting","isVisible","columnCount","firstColumnStickyHeaderCellCSS","firstColumnStickyHeaderFooterZIndex","checkboxCellWidth","firstColumnStickyFooterCellCSS","firstColumnStickyBodyCellCSS","tableTheme","useTableTheme","Table","makeBorderSize","border","width","thin","colors","surface","gray","muted","getIn","HeaderCell","Cell","FooterCell","useEffect","onSelectChange","action","state","_state$ids","selectedIDs","id","ids","values","node","includes","rowSelectConfig","useRowSelect","onChange","rowSelect","toggleRowSelectionById","useMemo","fns","onToggleById","deselectAllRows","onRemoveAll","toggleAllRowsSelection","map","item","Boolean","onAddAll","handleSortChange","sortKey","isSortReversed","reverse","sort","useSort","sortFns","currentSortedState","sortableColumns","Object","keys","toggleSort","useCallback","onToggleSort","hasPagination","paginationConfig","usePagination","page","size","tablePagination","defaultPageSize","isServer","currentPaginationState","setPaginationPage","onSetPage","setPaginationRowSize","onSetSize","isValidAllowedChildren","TableToolbar","throwBladeError","message","moduleName","tableContext","_jsx","TableContext","Provider","value","display","flex","alignItems","justifyContent","getStyledProps","metaAttribute","name","MetaConstants","Spinner","accessibilityLabel","_jsxs","position","zIndex","refreshWrapperZIndex","color","role","layout","fixedHeader","horizontalScroll","select","assignWithoutSideEffects"],"mappings":"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"}
1
+ {"version":3,"file":"Table.web.js","sources":["../../../../../../src/components/Table/Table.web.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from 'react';\nimport { Table as ReactTable } from '@table-library/react-table-library/table';\nimport { useTheme as useTableTheme } from '@table-library/react-table-library/theme';\nimport type { MiddlewareFunction } from '@table-library/react-table-library/types/common';\nimport { useSort } from '@table-library/react-table-library/sort';\nimport { usePagination } from '@table-library/react-table-library/pagination';\nimport { SelectTypes, useRowSelect } from '@table-library/react-table-library/select';\nimport styled from 'styled-components';\nimport usePresence from 'use-presence';\nimport type { TableContextType } from './TableContext';\nimport { TableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport {\n checkboxCellWidth,\n firstColumnStickyHeaderFooterZIndex,\n refreshWrapperZIndex,\n tableBackgroundColor,\n tablePagination,\n} from './tokens';\nimport type {\n TableProps,\n TableNode,\n Identifier,\n TablePaginationType,\n TableHeaderRowProps,\n} from './types';\nimport { makeBorderSize, makeMotionTime } from '~utils';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport type { BoxProps } from '~components/Box';\nimport { getBaseBoxStyles } from '~components/Box/BaseBox/baseBoxStyles';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Spinner } from '~components/Spinner';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useTheme } from '~components/BladeProvider';\nimport getIn from '~utils/lodashButBetter/get';\n\nconst rowSelectType: Record<\n NonNullable<TableProps<unknown>['selectionType']>,\n SelectTypes | undefined\n> = {\n single: SelectTypes.SingleSelect,\n multiple: SelectTypes.MultiSelect,\n none: undefined,\n};\n\n// Get the number of TableHeaderCell components.\n// This is very complicated but the only way to iterate through the structure and get number of header cells.\n// Assuming number of header cells is the same as number of columns\nconst getTableHeaderCellCount = (children: (data: []) => React.ReactElement): number => {\n const tableRootComponent = children([]);\n if (tableRootComponent && React.isValidElement(tableRootComponent)) {\n const tableComponentArray = React.Children.toArray(tableRootComponent);\n if (React.isValidElement(tableComponentArray[0])) {\n const tableComponentArrayChildren = React.Children.toArray(\n tableComponentArray[0].props.children,\n );\n const tableHeader = tableComponentArrayChildren.find(\n (child) => getComponentId(child) === ComponentIds.TableHeader,\n );\n const tableHeaderChildrenArray = React.isValidElement(tableHeader)\n ? React.Children.toArray(tableHeader.props.children)\n : null;\n const tableHeaderRow = tableHeaderChildrenArray?.find(\n (child) => getComponentId(child) === ComponentIds.TableHeaderRow,\n );\n const tableHeaderRowChildrenArray = React.isValidElement(tableHeaderRow)\n ? React.Children.toArray(tableHeaderRow.props.children)\n : null;\n const tableHeaderCells = tableHeaderRowChildrenArray\n ? tableHeaderRowChildrenArray.filter(\n (child) => getComponentId(child) === ComponentIds.TableHeaderCell,\n )\n : null;\n return tableHeaderCells?.length ?? 0;\n }\n }\n return 0;\n};\n\nconst StyledReactTable = styled(ReactTable)<{ $styledProps?: { height?: BoxProps['height'] } }>(\n ({ $styledProps }) => {\n const { theme } = useTheme();\n const styledPropsCSSObject = getBaseBoxStyles({\n theme,\n height: $styledProps?.height,\n });\n\n return {\n '&&&': {\n ...styledPropsCSSObject,\n },\n };\n },\n);\n\nconst RefreshWrapper = styled(BaseBox)<{\n isRefreshSpinnerVisible: boolean;\n isRefreshSpinnerEntering: boolean;\n isRefreshSpinnerExiting: boolean;\n}>(({ isRefreshSpinnerVisible, isRefreshSpinnerEntering, isRefreshSpinnerExiting, theme }) => {\n return {\n opacity: isRefreshSpinnerVisible ? 1 : 0,\n transition: `opacity ${makeMotionTime(theme.motion.duration.quick)} ${\n isRefreshSpinnerEntering\n ? theme.motion.easing.entrance.effective\n : isRefreshSpinnerExiting\n ? theme.motion.easing.exit.effective\n : ''\n }`,\n };\n});\n\nconst _Table = <Item,>({\n children,\n data,\n selectionType = 'none',\n onSelectionChange,\n isHeaderSticky,\n isFooterSticky,\n isFirstColumnSticky,\n rowDensity = 'normal',\n onSortChange,\n sortFunctions,\n toolbar,\n pagination,\n height,\n showStripedRows,\n gridTemplateColumns,\n isLoading = false,\n isRefreshing = false,\n showBorderedCells = false,\n ...styledProps\n}: TableProps<Item>): React.ReactElement => {\n const { theme } = useTheme();\n const [selectedRows, setSelectedRows] = React.useState<TableNode<unknown>['id'][]>([]);\n const [disabledRows, setDisabledRows] = React.useState<TableNode<unknown>['id'][]>([]);\n const [totalItems, setTotalItems] = React.useState(data.nodes.length || 0);\n const [paginationType, setPaginationType] = React.useState<NonNullable<TablePaginationType>>(\n 'client',\n );\n const [headerRowDensity, setHeaderRowDensity] = React.useState<TableHeaderRowProps['rowDensity']>(\n undefined,\n );\n // Need to make header is sticky if first column is sticky otherwise the first header cell will not be sticky\n const shouldHeaderBeSticky = isHeaderSticky ?? isFirstColumnSticky;\n const backgroundColor = tableBackgroundColor;\n\n const {\n isEntering: isRefreshSpinnerEntering,\n isMounted: isRefreshSpinnerMounted,\n isExiting: isRefreshSpinnerExiting,\n isVisible: isRefreshSpinnerVisible,\n } = usePresence(isRefreshing, {\n transitionDuration: theme.motion.duration.quick,\n });\n\n // Table Theme\n const columnCount = getTableHeaderCellCount(children);\n const firstColumnStickyHeaderCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyFooterCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyHeaderFooterZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyBodyCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n }\n `\n }`\n : '';\n\n const tableTheme = useTableTheme({\n Table: `\n height:${isFooterSticky ? `100%` : undefined};\n border: ${makeBorderSize(theme.border.width.thin)} solid ${\n theme.colors.surface.border.gray.muted\n };\n --data-table-library_grid-template-columns: ${\n gridTemplateColumns ??\n ` ${\n selectionType === 'multiple' ? 'min-content' : ''\n } repeat(${columnCount},minmax(100px, 1fr)) !important;`\n } !important;\n background-color: ${getIn(theme.colors, backgroundColor)};\n `,\n HeaderCell: `\n position: ${shouldHeaderBeSticky ? 'sticky' : 'relative'};\n top: ${shouldHeaderBeSticky ? '0' : undefined};\n ${firstColumnStickyHeaderCellCSS}\n `,\n Cell: `\n ${firstColumnStickyBodyCellCSS}\n `,\n FooterCell: `\n position: ${isFooterSticky ? 'sticky' : 'relative'};\n bottom: ${isFooterSticky ? '0' : undefined};\n ${firstColumnStickyFooterCellCSS}\n `,\n });\n\n useEffect(() => {\n // Get the total number of items\n setTotalItems(data.nodes.length);\n }, [data.nodes]);\n\n // Selection Logic\n const onSelectChange: MiddlewareFunction = (action, state): void => {\n const selectedIDs: Identifier[] = state.id ? [state.id] : state.ids ?? [];\n setSelectedRows(selectedIDs);\n onSelectionChange?.({\n values: data.nodes.filter((node) => selectedIDs.includes(node.id)),\n });\n };\n\n const rowSelectConfig = useRowSelect(\n data,\n {\n onChange: onSelectChange,\n },\n {\n rowSelect: selectionType !== 'none' ? rowSelectType[selectionType] : undefined,\n },\n );\n\n const toggleRowSelectionById = useMemo(\n () => (id: Identifier): void => {\n rowSelectConfig.fns.onToggleById(id);\n },\n [rowSelectConfig.fns],\n );\n\n const deselectAllRows = useMemo(\n () => (): void => {\n rowSelectConfig.fns.onRemoveAll();\n },\n [rowSelectConfig.fns],\n );\n\n const toggleAllRowsSelection = useMemo(\n () => (): void => {\n if (selectedRows.length > 0) {\n rowSelectConfig.fns.onRemoveAll();\n } else {\n const ids = data.nodes\n .map((item: TableNode<Item>) => (disabledRows.includes(item.id) ? null : item.id))\n .filter(Boolean) as Identifier[];\n\n rowSelectConfig.fns.onAddAll(ids);\n }\n },\n [rowSelectConfig.fns, data.nodes, selectedRows, disabledRows],\n );\n\n // Sort Logic\n const handleSortChange: MiddlewareFunction = (action, state) => {\n onSortChange?.({\n sortKey: state.sortKey,\n isSortReversed: state.reverse,\n });\n };\n\n const sort = useSort(\n data,\n {\n onChange: handleSortChange,\n },\n {\n // @ts-expect-error ignore this, if sortFunctions is undefined, it will be ignored\n sortFns: sortFunctions,\n },\n );\n\n const currentSortedState: TableContextType['currentSortedState'] = useMemo(() => {\n return {\n sortKey: sort.state.sortKey,\n isSortReversed: sort.state.reverse,\n sortableColumns: Object.keys(sortFunctions ?? {}),\n };\n }, [sort.state, sortFunctions]);\n\n const toggleSort = useCallback(\n (sortKey: string): void => {\n sort.fns.onToggleSort({\n sortKey,\n });\n },\n [sort.fns],\n );\n\n // Pagination\n\n const hasPagination = Boolean(pagination);\n\n const paginationConfig = usePagination(\n data,\n {\n state: {\n page: 0,\n size: tablePagination.defaultPageSize,\n },\n },\n {\n isServer: paginationType === 'server',\n },\n );\n\n const currentPaginationState = useMemo(() => {\n return hasPagination\n ? {\n page: paginationConfig.state.page,\n size: paginationConfig.state.size,\n }\n : undefined;\n }, [paginationConfig.state, hasPagination]);\n\n const setPaginationPage = useCallback(\n (page: number): void => {\n paginationConfig.fns.onSetPage(page);\n },\n [paginationConfig.fns],\n );\n\n const setPaginationRowSize = useCallback(\n (size: number): void => {\n paginationConfig.fns.onSetSize(size);\n },\n [paginationConfig.fns],\n );\n\n // Toolbar Component\n if (__DEV__) {\n if (toolbar && !isValidAllowedChildren(toolbar, ComponentIds.TableToolbar)) {\n throwBladeError({\n message: 'Only TableToolbar component is allowed in the `toolbar` prop',\n moduleName: 'Table',\n });\n }\n }\n\n // Table Context\n const tableContext: TableContextType = useMemo(\n () => ({\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n rowDensity,\n toggleSort,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n showBorderedCells,\n }),\n [\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n rowDensity,\n toggleSort,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n showBorderedCells,\n ],\n );\n\n return (\n <TableContext.Provider value={tableContext}>\n {isLoading ? (\n <BaseBox\n display=\"flex\"\n flex={1}\n alignItems=\"center\"\n justifyContent=\"center\"\n height={height}\n {...getStyledProps(styledProps)}\n {...metaAttribute({ name: MetaConstants.Table })}\n >\n <Spinner accessibilityLabel=\"Loading Table\" size=\"large\" />\n </BaseBox>\n ) : (\n <BaseBox\n flex={1}\n position=\"relative\"\n {...getStyledProps(styledProps)}\n {...metaAttribute({ name: MetaConstants.Table })}\n >\n {isRefreshSpinnerMounted && (\n <RefreshWrapper\n position=\"absolute\"\n width=\"100%\"\n height=\"100%\"\n zIndex={refreshWrapperZIndex}\n backgroundColor=\"overlay.background.subtle\"\n justifyContent=\"center\"\n alignItems=\"center\"\n display=\"flex\"\n isRefreshSpinnerEntering={isRefreshSpinnerEntering}\n isRefreshSpinnerExiting={isRefreshSpinnerExiting}\n isRefreshSpinnerVisible={isRefreshSpinnerVisible}\n >\n <Spinner color=\"white\" accessibilityLabel=\"Refreshing Table\" size=\"large\" />\n </RefreshWrapper>\n )}\n {toolbar}\n <StyledReactTable\n role=\"table\"\n layout={{ fixedHeader: shouldHeaderBeSticky, horizontalScroll: true }}\n data={data}\n // @ts-expect-error ignore this, theme clashes with styled-component's theme. We're using useTheme from blade to get actual theme\n theme={tableTheme}\n select={selectionType !== 'none' ? rowSelectConfig : null}\n sort={sortFunctions ? sort : null}\n $styledProps={{\n height,\n }}\n pagination={hasPagination ? paginationConfig : null}\n {...metaAttribute({ name: MetaConstants.Table })}\n >\n {children}\n </StyledReactTable>\n {pagination}\n </BaseBox>\n )}\n </TableContext.Provider>\n );\n};\n\nconst Table = assignWithoutSideEffects(_Table, {\n componentId: ComponentIds.Table,\n});\n\nexport { Table };\n"],"names":["rowSelectType","single","SelectTypes","SingleSelect","multiple","MultiSelect","none","undefined","getTableHeaderCellCount","children","tableRootComponent","React","isValidElement","tableComponentArray","Children","toArray","_tableHeaderCells$len","tableComponentArrayChildren","props","tableHeader","find","child","getComponentId","ComponentIds","TableHeader","tableHeaderChildrenArray","tableHeaderRow","TableHeaderRow","tableHeaderRowChildrenArray","tableHeaderCells","filter","TableHeaderCell","length","StyledReactTable","styled","ReactTable","withConfig","displayName","componentId","_ref","$styledProps","_useTheme","useTheme","theme","styledPropsCSSObject","getBaseBoxStyles","height","_objectSpread","RefreshWrapper","BaseBox","_ref2","isRefreshSpinnerVisible","isRefreshSpinnerEntering","isRefreshSpinnerExiting","opacity","transition","concat","makeMotionTime","motion","duration","quick","easing","entrance","effective","exit","_Table","_ref3","data","_ref3$selectionType","selectionType","onSelectionChange","isHeaderSticky","isFooterSticky","isFirstColumnSticky","_ref3$rowDensity","rowDensity","onSortChange","sortFunctions","toolbar","pagination","showStripedRows","gridTemplateColumns","_ref3$isLoading","isLoading","_ref3$isRefreshing","isRefreshing","_ref3$showBorderedCel","showBorderedCells","styledProps","_objectWithoutProperties","_excluded","_useTheme2","_React$useState","useState","_React$useState2","_slicedToArray","selectedRows","setSelectedRows","_React$useState3","_React$useState4","disabledRows","setDisabledRows","_React$useState5","nodes","_React$useState6","totalItems","setTotalItems","_React$useState7","_React$useState8","paginationType","setPaginationType","_React$useState9","_React$useState10","headerRowDensity","setHeaderRowDensity","shouldHeaderBeSticky","backgroundColor","tableBackgroundColor","_usePresence","usePresence","transitionDuration","isEntering","isRefreshSpinnerMounted","isMounted","isExiting","isVisible","columnCount","firstColumnStickyHeaderCellCSS","firstColumnStickyHeaderFooterZIndex","checkboxCellWidth","firstColumnStickyFooterCellCSS","firstColumnStickyBodyCellCSS","tableTheme","useTableTheme","Table","makeBorderSize","border","width","thin","colors","surface","gray","muted","getIn","HeaderCell","Cell","FooterCell","useEffect","onSelectChange","action","state","_state$ids","selectedIDs","id","ids","values","node","includes","rowSelectConfig","useRowSelect","onChange","rowSelect","toggleRowSelectionById","useMemo","fns","onToggleById","deselectAllRows","onRemoveAll","toggleAllRowsSelection","map","item","Boolean","onAddAll","handleSortChange","sortKey","isSortReversed","reverse","sort","useSort","sortFns","currentSortedState","sortableColumns","Object","keys","toggleSort","useCallback","onToggleSort","hasPagination","paginationConfig","usePagination","page","size","tablePagination","defaultPageSize","isServer","currentPaginationState","setPaginationPage","onSetPage","setPaginationRowSize","onSetSize","isValidAllowedChildren","TableToolbar","throwBladeError","message","moduleName","tableContext","_jsx","TableContext","Provider","value","display","flex","alignItems","justifyContent","getStyledProps","metaAttribute","name","MetaConstants","Spinner","accessibilityLabel","_jsxs","position","zIndex","refreshWrapperZIndex","color","role","layout","fixedHeader","horizontalScroll","select","assignWithoutSideEffects"],"mappings":"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"}
@@ -4,7 +4,7 @@ import { useEffect } from 'react';
4
4
  import { Body, Cell, Row } from '@table-library/react-table-library/table';
5
5
  import styled from 'styled-components';
6
6
  import { useTableContext } from './TableContext.js';
7
- import { tableRow, checkboxCellWidth } from './tokens.js';
7
+ import { tableRow, tableEditableCellRowDensityToInputSizeMap, checkboxCellWidth } from './tokens.js';
8
8
  import { ComponentIds } from './componentIds.js';
9
9
  import getIn from '../../utils/lodashButBetter/get.js';
10
10
  import '../Typography/index.js';
@@ -15,6 +15,9 @@ import '../../utils/metaAttribute/index.js';
15
15
  import '../../utils/assignWithoutSideEffects/index.js';
16
16
  import '../../utils/getFocusRingStyles/index.js';
17
17
  import '../../tokens/global/index.js';
18
+ import '../Input/BaseInput/index.js';
19
+ import '../Box/index.js';
20
+ import '../Icons/index.js';
18
21
  import { jsx, jsxs } from 'react/jsx-runtime';
19
22
  import { makeMotionTime } from '../../utils/makeMotionTime/makeMotionTime.web.js';
20
23
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
@@ -26,6 +29,11 @@ import { makeSpace } from '../../utils/makeSpace/makeSpace.js';
26
29
  import { makeSize } from '../../utils/makeSize/makeSize.js';
27
30
  import { size } from '../../tokens/global/size.js';
28
31
  import { Text } from '../Typography/Text/Text.js';
32
+ import CheckIcon from '../Icons/CheckIcon/CheckIcon.js';
33
+ import AlertCircleIcon from '../Icons/AlertCircleIcon/AlertCircleIcon.js';
34
+ import { Box } from '../Box/Box.js';
35
+ import { BaseInput } from '../Input/BaseInput/BaseInput.js';
36
+ import { castWebType } from '../../utils/platform/castUtils.js';
29
37
  import { Checkbox } from '../Checkbox/Checkbox.js';
30
38
 
31
39
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -122,7 +130,8 @@ var _TableBody = function _TableBody(_ref2) {
122
130
  var isSelectable = selectionType !== 'none';
123
131
  return /*#__PURE__*/jsx(StyledBody, _objectSpread(_objectSpread({
124
132
  $isSelectable: isSelectable,
125
- $showStripedRows: showStripedRows
133
+ $showStripedRows: showStripedRows,
134
+ $showBorderedCells: true
126
135
  }, metaAttribute({
127
136
  name: MetaConstants.TableBody
128
137
  })), {}, {
@@ -145,10 +154,10 @@ var StyledCell = /*#__PURE__*/styled(Cell).withConfig({
145
154
  '& > div:first-child': {
146
155
  alignSelf: 'stretch'
147
156
  },
148
- '&:focus-visible': getFocusRingStyles({
157
+ '&:focus-visible': _objectSpread({}, getFocusRingStyles({
149
158
  theme: theme,
150
159
  negativeOffset: true
151
- })
160
+ }))
152
161
  }
153
162
  };
154
163
  });
@@ -158,19 +167,21 @@ var CellWrapper = /*#__PURE__*/styled(BaseBox).withConfig({
158
167
  })(function (_ref4) {
159
168
  var theme = _ref4.theme,
160
169
  rowDensity = _ref4.rowDensity,
161
- showStripedRows = _ref4.showStripedRows;
170
+ showStripedRows = _ref4.showStripedRows,
171
+ _ref4$hasPadding = _ref4.hasPadding,
172
+ hasPadding = _ref4$hasPadding === void 0 ? true : _ref4$hasPadding;
162
173
  var rowBackgroundTransition = "background-color ".concat(makeMotionTime(getIn(theme.motion, tableRow.backgroundColorMotionDuration)), " ").concat(getIn(theme.motion, tableRow.backgroundColorMotionEasing));
163
174
  return {
164
175
  '&&&': _objectSpread({
165
176
  transition: rowBackgroundTransition,
166
177
  backgroundColor: tableRow.nonStripeWrapper.backgroundColor,
167
- paddingLeft: makeSpace(getIn(theme, tableRow.paddingLeft[rowDensity])),
168
- paddingRight: makeSpace(getIn(theme, tableRow.paddingRight[rowDensity])),
178
+ paddingLeft: hasPadding ? makeSpace(getIn(theme, tableRow.paddingLeft[rowDensity])) : '0px',
179
+ paddingRight: hasPadding ? makeSpace(getIn(theme, tableRow.paddingRight[rowDensity])) : '0px',
169
180
  minHeight: makeSize(getIn(size, tableRow.minHeight[rowDensity])),
170
181
  height: '100%'
171
182
  }, !showStripedRows && {
172
183
  borderBottomWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),
173
- borderBottomColor: getIn(theme.colors, tableRow.borderBottomColor),
184
+ borderBottomColor: getIn(theme.colors, tableRow.borderColor),
174
185
  borderBottomStyle: 'solid'
175
186
  })
176
187
  };
@@ -218,10 +229,143 @@ var _TableCell = function _TableCell(_ref5) {
218
229
  var TableCell = /*#__PURE__*/assignWithoutSideEffects(_TableCell, {
219
230
  componentId: ComponentIds.TableCell
220
231
  });
221
- var TableCheckboxCell = function TableCheckboxCell(_ref6) {
222
- var isChecked = _ref6.isChecked,
223
- onChange = _ref6.onChange,
224
- isDisabled = _ref6.isDisabled;
232
+ var StyledEditableCell = /*#__PURE__*/styled(StyledCell).withConfig({
233
+ displayName: "TableBodyweb__StyledEditableCell",
234
+ componentId: "sc-1fpz8hn-3"
235
+ })(function (_ref6) {
236
+ var theme = _ref6.theme,
237
+ rowDensity = _ref6.rowDensity;
238
+ return {
239
+ '&&&': {
240
+ '&:focus-visible': {
241
+ outline: '1px solid'
242
+ },
243
+ '&:focus-within': _objectSpread({}, rowDensity !== 'comfortable' ? getFocusRingStyles({
244
+ theme: theme,
245
+ negativeOffset: true
246
+ }) : {})
247
+ }
248
+ };
249
+ });
250
+ var validationStateToInputTrailingIconMap = {
251
+ none: undefined,
252
+ success: CheckIcon,
253
+ error: AlertCircleIcon
254
+ };
255
+ var rowDensityToIsTableInputCellMapping = {
256
+ comfortable: false,
257
+ normal: true,
258
+ compact: true
259
+ };
260
+ var getEditableInputMargin = function getEditableInputMargin(_ref7) {
261
+ var rowDensity = _ref7.rowDensity;
262
+ if (rowDensity === 'comfortable') {
263
+ return ['spacing.4', 'spacing.4'];
264
+ }
265
+ return 'spacing.2';
266
+ };
267
+ var _TableEditableCell = function _TableEditableCell(_ref8) {
268
+ var _ref8$validationState = _ref8.validationState,
269
+ validationState = _ref8$validationState === void 0 ? 'none' : _ref8$validationState,
270
+ accessibilityLabel = _ref8.accessibilityLabel,
271
+ autoCapitalize = _ref8.autoCapitalize,
272
+ autoCompleteSuggestionType = _ref8.autoCompleteSuggestionType,
273
+ autoFocus = _ref8.autoFocus,
274
+ defaultValue = _ref8.defaultValue,
275
+ isDisabled = _ref8.isDisabled,
276
+ isRequired = _ref8.isRequired,
277
+ keyboardReturnKeyType = _ref8.keyboardReturnKeyType,
278
+ leadingIcon = _ref8.leadingIcon,
279
+ maxCharacters = _ref8.maxCharacters,
280
+ name = _ref8.name,
281
+ onBlur = _ref8.onBlur,
282
+ onChange = _ref8.onChange,
283
+ onClick = _ref8.onClick,
284
+ onFocus = _ref8.onFocus,
285
+ onSubmit = _ref8.onSubmit,
286
+ placeholder = _ref8.placeholder,
287
+ prefix = _ref8.prefix,
288
+ suffix = _ref8.suffix,
289
+ value = _ref8.value,
290
+ testID = _ref8.testID,
291
+ trailingButton = _ref8.trailingButton,
292
+ errorText = _ref8.errorText,
293
+ successText = _ref8.successText;
294
+ var _useTableContext3 = useTableContext(),
295
+ rowDensity = _useTableContext3.rowDensity,
296
+ showStripedRows = _useTableContext3.showStripedRows,
297
+ backgroundColor = _useTableContext3.backgroundColor;
298
+ return /*#__PURE__*/jsx(StyledEditableCell, _objectSpread(_objectSpread({
299
+ role: "cell",
300
+ $backgroundColor: backgroundColor,
301
+ rowDensity: rowDensity
302
+ }, metaAttribute({
303
+ name: MetaConstants.TableCell
304
+ })), {}, {
305
+ children: /*#__PURE__*/jsx(BaseBox, {
306
+ className: "cell-wrapper-base",
307
+ display: "flex",
308
+ alignItems: "center",
309
+ height: "100%",
310
+ children: /*#__PURE__*/jsx(CellWrapper, {
311
+ className: "cell-wrapper",
312
+ rowDensity: rowDensity,
313
+ showStripedRows: showStripedRows,
314
+ display: "flex",
315
+ alignItems: "center",
316
+ flex: 1,
317
+ hasPadding: false,
318
+ children: /*#__PURE__*/jsx(Box, {
319
+ margin: getEditableInputMargin({
320
+ rowDensity: rowDensity
321
+ }),
322
+ width: "100%",
323
+ children: /*#__PURE__*/jsx(BaseInput, {
324
+ isTableInputCell: rowDensityToIsTableInputCellMapping[rowDensity],
325
+ validationState: validationState,
326
+ id: "table-editable-cell-input",
327
+ size: tableEditableCellRowDensityToInputSizeMap[rowDensity],
328
+ type: "text",
329
+ trailingIcon: validationStateToInputTrailingIconMap[validationState],
330
+ accessibilityLabel: accessibilityLabel,
331
+ autoCapitalize: autoCapitalize,
332
+ autoCompleteSuggestionType: autoCompleteSuggestionType
333
+ // eslint-disable-next-line jsx-a11y/no-autofocus
334
+ ,
335
+ autoFocus: autoFocus,
336
+ defaultValue: defaultValue,
337
+ isDisabled: isDisabled,
338
+ isRequired: isRequired,
339
+ keyboardReturnKeyType: keyboardReturnKeyType,
340
+ leadingIcon: leadingIcon,
341
+ maxCharacters: maxCharacters,
342
+ name: name,
343
+ onBlur: onBlur,
344
+ onChange: onChange,
345
+ onClick: onClick,
346
+ onFocus: onFocus,
347
+ onSubmit: castWebType(onSubmit),
348
+ placeholder: placeholder,
349
+ prefix: prefix,
350
+ suffix: suffix,
351
+ value: value,
352
+ testID: testID,
353
+ trailingButton: trailingButton,
354
+ errorText: errorText,
355
+ successText: successText
356
+ })
357
+ })
358
+ })
359
+ })
360
+ }));
361
+ };
362
+ var TableEditableCell = /*#__PURE__*/assignWithoutSideEffects(_TableEditableCell, {
363
+ componentId: ComponentIds.TableEditableCell
364
+ });
365
+ var TableCheckboxCell = function TableCheckboxCell(_ref9) {
366
+ var isChecked = _ref9.isChecked,
367
+ onChange = _ref9.onChange,
368
+ isDisabled = _ref9.isDisabled;
225
369
  return /*#__PURE__*/jsx(TableCell, {
226
370
  children: /*#__PURE__*/jsx(BaseBox, {
227
371
  display: "flex",
@@ -242,15 +386,24 @@ var TableCheckboxCell = function TableCheckboxCell(_ref6) {
242
386
  };
243
387
  var StyledRow = /*#__PURE__*/styled(Row).withConfig({
244
388
  displayName: "TableBodyweb__StyledRow",
245
- componentId: "sc-1fpz8hn-3"
246
- })(function (_ref7) {
247
- var theme = _ref7.theme,
248
- $isSelectable = _ref7.$isSelectable,
249
- $isHoverable = _ref7.$isHoverable;
389
+ componentId: "sc-1fpz8hn-4"
390
+ })(function (_ref10) {
391
+ var theme = _ref10.theme,
392
+ $isSelectable = _ref10.$isSelectable,
393
+ $isHoverable = _ref10.$isHoverable,
394
+ $showBorderedCells = _ref10.$showBorderedCells;
250
395
  var rowBackgroundTransition = "background-color ".concat(makeMotionTime(getIn(theme.motion, tableRow.backgroundColorMotionDuration)), " ").concat(getIn(theme.motion, tableRow.backgroundColorMotionEasing));
251
396
  return {
252
397
  '&&&': _objectSpread(_objectSpread(_objectSpread({
253
- backgroundColor: 'transparent'
398
+ backgroundColor: 'transparent',
399
+ '& .cell-wrapper': $showBorderedCells ? {
400
+ borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),
401
+ borderRightStyle: 'solid',
402
+ borderRightColor: getIn(theme.colors, tableRow.borderColor)
403
+ } : undefined,
404
+ '& td:last-child .cell-wrapper': {
405
+ borderRight: 'none'
406
+ }
254
407
  }, ($isHoverable || $isSelectable) && {
255
408
  '&:hover:not(.disabled-row) .cell-wrapper-base': {
256
409
  transition: rowBackgroundTransition,
@@ -276,17 +429,18 @@ var StyledRow = /*#__PURE__*/styled(Row).withConfig({
276
429
  })
277
430
  };
278
431
  });
279
- var _TableRow = function _TableRow(_ref8) {
280
- var children = _ref8.children,
281
- item = _ref8.item,
282
- isDisabled = _ref8.isDisabled,
283
- onHover = _ref8.onHover,
284
- _onClick = _ref8.onClick;
285
- var _useTableContext3 = useTableContext(),
286
- selectionType = _useTableContext3.selectionType,
287
- selectedRows = _useTableContext3.selectedRows,
288
- toggleRowSelectionById = _useTableContext3.toggleRowSelectionById,
289
- setDisabledRows = _useTableContext3.setDisabledRows;
432
+ var _TableRow = function _TableRow(_ref11) {
433
+ var children = _ref11.children,
434
+ item = _ref11.item,
435
+ isDisabled = _ref11.isDisabled,
436
+ onHover = _ref11.onHover,
437
+ _onClick = _ref11.onClick;
438
+ var _useTableContext4 = useTableContext(),
439
+ selectionType = _useTableContext4.selectionType,
440
+ selectedRows = _useTableContext4.selectedRows,
441
+ toggleRowSelectionById = _useTableContext4.toggleRowSelectionById,
442
+ setDisabledRows = _useTableContext4.setDisabledRows,
443
+ showBorderedCells = _useTableContext4.showBorderedCells;
290
444
  var isSelectable = selectionType !== 'none';
291
445
  var isMultiSelect = selectionType === 'multiple';
292
446
  var isSelected = selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.includes(item.id);
@@ -301,6 +455,7 @@ var _TableRow = function _TableRow(_ref8) {
301
455
  disabled: isDisabled,
302
456
  $isSelectable: isDisabled ? false : isSelectable,
303
457
  $isHoverable: isDisabled ? false : Boolean(onHover) || Boolean(_onClick),
458
+ $showBorderedCells: showBorderedCells,
304
459
  item: item,
305
460
  className: isDisabled ? 'disabled-row' : '',
306
461
  onMouseEnter: function onMouseEnter() {
@@ -329,5 +484,5 @@ var TableRow = /*#__PURE__*/assignWithoutSideEffects(_TableRow, {
329
484
  componentId: ComponentIds.TableRow
330
485
  });
331
486
 
332
- export { TableBody, TableCell, TableRow };
487
+ export { TableBody, TableCell, TableEditableCell, TableRow };
333
488
  //# sourceMappingURL=TableBody.web.js.map