@razorpay/blade 11.32.0 → 11.33.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.
- package/build/lib/native/components/Button/IconButton/IconButton.js +1 -1
- package/build/lib/native/components/Button/IconButton/IconButton.js.map +1 -1
- package/build/lib/native/components/Table/TableContext.js +1 -1
- package/build/lib/native/components/Table/TableContext.js.map +1 -1
- package/build/lib/native/components/Table/tokens.js.map +1 -1
- package/build/lib/web/development/components/Button/IconButton/IconButton.js +2 -0
- package/build/lib/web/development/components/Button/IconButton/IconButton.js.map +1 -1
- package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js +25 -3
- package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
- package/build/lib/web/development/components/Button/IconButton/tokens.js +14 -0
- package/build/lib/web/development/components/Button/IconButton/tokens.js.map +1 -0
- package/build/lib/web/development/components/Table/Table.web.js +12 -3
- package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +214 -70
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableContext.js +3 -1
- package/build/lib/web/development/components/Table/TableContext.js.map +1 -1
- package/build/lib/web/development/components/Table/TableHeader.web.js +14 -6
- package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/development/components/Table/tokens.js +6 -1
- package/build/lib/web/development/components/Table/tokens.js.map +1 -1
- package/build/lib/web/production/components/Button/IconButton/IconButton.js +2 -0
- package/build/lib/web/production/components/Button/IconButton/IconButton.js.map +1 -1
- package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js +25 -3
- package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
- package/build/lib/web/production/components/Button/IconButton/tokens.js +14 -0
- package/build/lib/web/production/components/Button/IconButton/tokens.js.map +1 -0
- package/build/lib/web/production/components/Table/Table.web.js +12 -3
- package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +214 -70
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableContext.js +3 -1
- package/build/lib/web/production/components/Table/TableContext.js.map +1 -1
- package/build/lib/web/production/components/Table/TableHeader.web.js +14 -6
- package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/production/components/Table/tokens.js +6 -1
- package/build/lib/web/production/components/Table/tokens.js.map +1 -1
- package/build/types/components/index.d.ts +38 -17
- package/build/types/components/index.native.d.ts +30 -14
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableContext.js","sources":["../../../../../../src/components/Table/TableContext.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nimport React from 'react';\nimport type { TableNode } from '@table-library/react-table-library/table';\nimport type {\n TableBackgroundColors,\n TableProps,\n TablePaginationType,\n TableHeaderRowProps,\n} from './types';\n\nexport type TableContextType = {\n selectionType?: TableProps<unknown>['selectionType'];\n selectedRows?: TableNode['id'][];\n totalItems: number;\n toggleRowSelectionById: (id: TableNode['id']) => void;\n toggleAllRowsSelection: () => void;\n deselectAllRows: () => void;\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n toggleSort: (sortKey: string) => void;\n currentSortedState: {\n sortKey: string;\n isSortReversed: boolean;\n sortableColumns?: string[];\n };\n setPaginationPage: (page: number) => void;\n setPaginationRowSize: (size: number) => void;\n currentPaginationState?: {\n page: number;\n size: number;\n };\n showStripedRows?: boolean;\n disabledRows: TableNode['id'][];\n setDisabledRows: React.Dispatch<React.SetStateAction<TableNode['id'][]>>;\n paginationType: NonNullable<TablePaginationType>;\n setPaginationType: React.Dispatch<React.SetStateAction<NonNullable<TablePaginationType>>>;\n backgroundColor: TableBackgroundColors;\n headerRowDensity?: TableHeaderRowProps['rowDensity'];\n setHeaderRowDensity: React.Dispatch<React.SetStateAction<TableHeaderRowProps['rowDensity']>>;\n showBorderedCells: NonNullable<TableProps<unknown>['showBorderedCells']>;\n};\n\nconst TableContext = React.createContext<TableContextType>({\n selectionType: 'none',\n selectedRows: undefined,\n totalItems: 0,\n toggleRowSelectionById: () => {},\n toggleAllRowsSelection: () => {},\n deselectAllRows: () => {},\n rowDensity: 'normal',\n toggleSort: () => {},\n currentSortedState: {\n sortKey: '',\n isSortReversed: false,\n },\n setPaginationPage: () => {},\n setPaginationRowSize: () => {},\n disabledRows: [],\n setDisabledRows: () => {},\n paginationType: 'client',\n setPaginationType: () => {},\n backgroundColor: 'surface.background.gray.intense',\n setHeaderRowDensity: () => {},\n showBorderedCells: false,\n});\n\nconst useTableContext = (): TableContextType => {\n const context = React.useContext(TableContext);\n return context;\n};\n\nexport { useTableContext, TableContext };\n"],"names":["TableContext","React","createContext","selectionType","selectedRows","undefined","totalItems","toggleRowSelectionById","toggleAllRowsSelection","deselectAllRows","rowDensity","toggleSort","currentSortedState","sortKey","isSortReversed","setPaginationPage","setPaginationRowSize","disabledRows","setDisabledRows","paginationType","setPaginationType","backgroundColor","setHeaderRowDensity","showBorderedCells","useTableContext","context","useContext"],"mappings":";;AAAA;AACA;
|
|
1
|
+
{"version":3,"file":"TableContext.js","sources":["../../../../../../src/components/Table/TableContext.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nimport React from 'react';\nimport type { TableNode } from '@table-library/react-table-library/table';\nimport type {\n TableBackgroundColors,\n TableProps,\n TablePaginationType,\n TableHeaderRowProps,\n} from './types';\n\nexport type TableContextType = {\n selectionType?: TableProps<unknown>['selectionType'];\n selectedRows?: TableNode['id'][];\n totalItems: number;\n toggleRowSelectionById: (id: TableNode['id']) => void;\n toggleAllRowsSelection: () => void;\n deselectAllRows: () => void;\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n toggleSort: (sortKey: string) => void;\n currentSortedState: {\n sortKey: string;\n isSortReversed: boolean;\n sortableColumns?: string[];\n };\n setPaginationPage: (page: number) => void;\n setPaginationRowSize: (size: number) => void;\n currentPaginationState?: {\n page: number;\n size: number;\n };\n showStripedRows?: boolean;\n disabledRows: TableNode['id'][];\n setDisabledRows: React.Dispatch<React.SetStateAction<TableNode['id'][]>>;\n paginationType: NonNullable<TablePaginationType>;\n setPaginationType: React.Dispatch<React.SetStateAction<NonNullable<TablePaginationType>>>;\n backgroundColor: TableBackgroundColors;\n headerRowDensity?: TableHeaderRowProps['rowDensity'];\n setHeaderRowDensity: React.Dispatch<React.SetStateAction<TableHeaderRowProps['rowDensity']>>;\n showBorderedCells: NonNullable<TableProps<unknown>['showBorderedCells']>;\n hasHoverActions: boolean;\n setHasHoverActions: (hasHoverActions: boolean) => void;\n};\n\nconst TableContext = React.createContext<TableContextType>({\n selectionType: 'none',\n selectedRows: undefined,\n totalItems: 0,\n toggleRowSelectionById: () => {},\n toggleAllRowsSelection: () => {},\n deselectAllRows: () => {},\n rowDensity: 'normal',\n toggleSort: () => {},\n currentSortedState: {\n sortKey: '',\n isSortReversed: false,\n },\n setPaginationPage: () => {},\n setPaginationRowSize: () => {},\n disabledRows: [],\n setDisabledRows: () => {},\n paginationType: 'client',\n setPaginationType: () => {},\n backgroundColor: 'surface.background.gray.intense',\n setHeaderRowDensity: () => {},\n showBorderedCells: false,\n hasHoverActions: false,\n setHasHoverActions: () => {},\n});\n\nconst useTableContext = (): TableContextType => {\n const context = React.useContext(TableContext);\n return context;\n};\n\nexport { useTableContext, TableContext };\n"],"names":["TableContext","React","createContext","selectionType","selectedRows","undefined","totalItems","toggleRowSelectionById","toggleAllRowsSelection","deselectAllRows","rowDensity","toggleSort","currentSortedState","sortKey","isSortReversed","setPaginationPage","setPaginationRowSize","disabledRows","setDisabledRows","paginationType","setPaginationType","backgroundColor","setHeaderRowDensity","showBorderedCells","hasHoverActions","setHasHoverActions","useTableContext","context","useContext"],"mappings":";;AAAA;AACA;AA2CA,IAAMA,YAAY,gBAAGC,cAAK,CAACC,aAAa,CAAmB;AACzDC,EAAAA,aAAa,EAAE,MAAM;AACrBC,EAAAA,YAAY,EAAEC,SAAS;AACvBC,EAAAA,UAAU,EAAE,CAAC;AACbC,EAAAA,sBAAsB,EAAE,SAAAA,sBAAA,GAAM,EAAE;AAChCC,EAAAA,sBAAsB,EAAE,SAAAA,sBAAA,GAAM,EAAE;AAChCC,EAAAA,eAAe,EAAE,SAAAA,eAAA,GAAM,EAAE;AACzBC,EAAAA,UAAU,EAAE,QAAQ;AACpBC,EAAAA,UAAU,EAAE,SAAAA,UAAA,GAAM,EAAE;AACpBC,EAAAA,kBAAkB,EAAE;AAClBC,IAAAA,OAAO,EAAE,EAAE;AACXC,IAAAA,cAAc,EAAE,KAAA;GACjB;AACDC,EAAAA,iBAAiB,EAAE,SAAAA,iBAAA,GAAM,EAAE;AAC3BC,EAAAA,oBAAoB,EAAE,SAAAA,oBAAA,GAAM,EAAE;AAC9BC,EAAAA,YAAY,EAAE,EAAE;AAChBC,EAAAA,eAAe,EAAE,SAAAA,eAAA,GAAM,EAAE;AACzBC,EAAAA,cAAc,EAAE,QAAQ;AACxBC,EAAAA,iBAAiB,EAAE,SAAAA,iBAAA,GAAM,EAAE;AAC3BC,EAAAA,eAAe,EAAE,iCAAiC;AAClDC,EAAAA,mBAAmB,EAAE,SAAAA,mBAAA,GAAM,EAAE;AAC7BC,EAAAA,iBAAiB,EAAE,KAAK;AACxBC,EAAAA,eAAe,EAAE,KAAK;AACtBC,EAAAA,kBAAkB,EAAE,SAAAA,kBAAA,GAAM,EAAC;AAC7B,CAAC,EAAC;AAEF,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,GAA2B;AAC9C,EAAA,IAAMC,OAAO,GAAG1B,cAAK,CAAC2B,UAAU,CAAC5B,YAAY,CAAC,CAAA;AAC9C,EAAA,OAAO2B,OAAO,CAAA;AAChB;;;;"}
|
|
@@ -112,7 +112,8 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
|
|
|
112
112
|
var theme = _ref4.theme,
|
|
113
113
|
$isSortable = _ref4.$isSortable,
|
|
114
114
|
$backgroundColor = _ref4.$backgroundColor,
|
|
115
|
-
$rowDensity = _ref4.$rowDensity
|
|
115
|
+
$rowDensity = _ref4.$rowDensity,
|
|
116
|
+
$hasPadding = _ref4.$hasPadding;
|
|
116
117
|
return {
|
|
117
118
|
'&&&': {
|
|
118
119
|
height: '100%',
|
|
@@ -131,8 +132,8 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
|
|
|
131
132
|
justifyContent: 'space-between',
|
|
132
133
|
alignItems: 'center',
|
|
133
134
|
height: '100%',
|
|
134
|
-
paddingLeft: makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])),
|
|
135
|
-
paddingRight: makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity])),
|
|
135
|
+
paddingLeft: $hasPadding ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])) : undefined,
|
|
136
|
+
paddingRight: $hasPadding ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity])) : undefined,
|
|
136
137
|
minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity]))
|
|
137
138
|
},
|
|
138
139
|
'&:focus-visible': getFocusRingStyles({
|
|
@@ -145,7 +146,9 @@ var StyledHeaderCell = /*#__PURE__*/styled(HeaderCell).withConfig({
|
|
|
145
146
|
var _TableHeaderCell = function _TableHeaderCell(_ref5) {
|
|
146
147
|
var _currentSortedState$s;
|
|
147
148
|
var children = _ref5.children,
|
|
148
|
-
headerKey = _ref5.headerKey
|
|
149
|
+
headerKey = _ref5.headerKey,
|
|
150
|
+
_ref5$_hasPadding = _ref5._hasPadding,
|
|
151
|
+
_hasPadding = _ref5$_hasPadding === void 0 ? true : _ref5$_hasPadding;
|
|
149
152
|
var _useTableContext = useTableContext(),
|
|
150
153
|
toggleSort = _useTableContext.toggleSort,
|
|
151
154
|
currentSortedState = _useTableContext.currentSortedState,
|
|
@@ -161,6 +164,7 @@ var _TableHeaderCell = function _TableHeaderCell(_ref5) {
|
|
|
161
164
|
$isSortable: isSortable,
|
|
162
165
|
$backgroundColor: backgroundColor,
|
|
163
166
|
$rowDensity: headerRowDensity !== null && headerRowDensity !== void 0 ? headerRowDensity : rowDensity,
|
|
167
|
+
$hasPadding: _hasPadding,
|
|
164
168
|
onClick: function onClick() {
|
|
165
169
|
if (isSortable) {
|
|
166
170
|
toggleSort(headerKey);
|
|
@@ -235,7 +239,8 @@ var _TableHeaderRow = function _TableHeaderRow(_ref8) {
|
|
|
235
239
|
totalItems = _useTableContext2.totalItems,
|
|
236
240
|
toggleAllRowsSelection = _useTableContext2.toggleAllRowsSelection,
|
|
237
241
|
setHeaderRowDensity = _useTableContext2.setHeaderRowDensity,
|
|
238
|
-
showBorderedCells = _useTableContext2.showBorderedCells
|
|
242
|
+
showBorderedCells = _useTableContext2.showBorderedCells,
|
|
243
|
+
hasHoverActions = _useTableContext2.hasHoverActions;
|
|
239
244
|
var isMultiSelect = selectionType === 'multiple';
|
|
240
245
|
var isAllSelected = selectedRows && selectedRows.length === totalItems;
|
|
241
246
|
var isIndeterminate = selectedRows && selectedRows.length > 0 && !isAllSelected;
|
|
@@ -256,7 +261,10 @@ var _TableHeaderRow = function _TableHeaderRow(_ref8) {
|
|
|
256
261
|
onChange: function onChange() {
|
|
257
262
|
return toggleAllRowsSelection();
|
|
258
263
|
}
|
|
259
|
-
}), children
|
|
264
|
+
}), children, hasHoverActions ? /*#__PURE__*/jsx(TableHeaderCell, {
|
|
265
|
+
_hasPadding: false,
|
|
266
|
+
children: "Actions"
|
|
267
|
+
}) : null]
|
|
260
268
|
}));
|
|
261
269
|
};
|
|
262
270
|
var TableHeaderRow = /*#__PURE__*/assignWithoutSideEffects(_TableHeaderRow, {
|
|
@@ -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 { tableHeader, tableRow } from './tokens';\nimport { useTableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableHeaderRowProps,\n TableHeaderCellProps,\n TableBackgroundColors,\n TableProps,\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';\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.muted');\n const activeColor = getIn(theme.colors, 'interactive.icon.primary.subtle');\n const upArrowColor = isSorted && isSortReversed ? activeColor : defaultColor;\n const downArrowColor = isSorted && !isSortReversed ? activeColor : defaultColor;\n return (\n <SortButton {...makeAccessible({ label: 'Toggle Sort', role: 'button' })}>\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)({\n '&&&': {\n '& tr:first-child th': {\n borderTop: 'none',\n },\n },\n});\n\nconst _TableHeader = ({ children }: TableHeaderRowProps): React.ReactElement => {\n return (\n <StyledHeader {...metaAttribute({ name: MetaConstants.TableHeader })}>{children}</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}>(({ theme, $isSortable, $backgroundColor, $rowDensity }) => ({\n '&&&': {\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 '> div': {\n backgroundColor: getIn(theme.colors, tableHeader.backgroundColor),\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\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 },\n '&:focus-visible': getFocusRingStyles({ theme, negativeOffset: true }),\n },\n}));\n\nconst _TableHeaderCell = ({ children, headerKey }: 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 return (\n <StyledHeaderCell\n tabIndex={0}\n $isSortable={isSortable}\n $backgroundColor={backgroundColor}\n $rowDensity={headerRowDensity ?? rowDensity}\n onClick={() => {\n if (isSortable) {\n toggleSort(headerKey);\n }\n }}\n {...metaAttribute({ name: MetaConstants.TableHeaderCell })}\n >\n {isChildrenString ? (\n <Text size=\"medium\" weight=\"medium\" color=\"surface.text.gray.normal\">\n {children}\n </Text>\n ) : (\n children\n )}\n {isSortable && (\n <BaseBox paddingLeft=\"spacing.2\" backgroundColor=\"transparent\">\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 display=\"flex\" alignItems=\"center\" justifyContent=\"center\" flex={1}>\n <Checkbox\n isChecked={isChecked}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={onChange}\n />\n </BaseBox>\n </TableHeaderCell>\n );\n};\n\nconst StyledHeaderRow = styled(HeaderRow)<{ $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 _TableHeaderRow = ({ children, rowDensity }: TableHeaderRowProps): React.ReactElement => {\n const {\n disabledRows,\n selectionType,\n selectedRows,\n totalItems,\n toggleAllRowsSelection,\n setHeaderRowDensity,\n showBorderedCells,\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 if (rowDensity) {\n setHeaderRowDensity(rowDensity);\n }\n return (\n <StyledHeaderRow\n role=\"rowheader\"\n {...metaAttribute({ name: MetaConstants.TableHeaderRow })}\n $showBorderedCells={showBorderedCells}\n >\n {isMultiSelect && (\n <TableHeaderCellCheckbox\n isChecked={isAllSelected}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={() => toggleAllRowsSelection()}\n />\n )}\n {children}\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","makeAccessible","label","role","children","_jsxs","width","height","fill","d","StyledHeader","Header","borderTop","_TableHeader","_ref3","metaAttribute","name","MetaConstants","TableHeader","assignWithoutSideEffects","ComponentIds","StyledHeaderCell","HeaderCell","_ref4","$isSortable","$backgroundColor","$rowDensity","backgroundColor","borderBottomWidth","makeSpace","tableHeader","borderBottomAndTopWidth","borderTopWidth","borderBottomColor","borderBottomAndTopColor","borderTopColor","borderBottomStyle","borderTopStyle","flexDirection","paddingLeft","tableRow","paddingRight","minHeight","makeSize","size","negativeOffset","_TableHeaderCell","_ref5","_currentSortedState$s","headerKey","_useTableContext","useTableContext","toggleSort","currentSortedState","rowDensity","headerRowDensity","isChildrenString","isSortable","Boolean","sortableColumns","find","key","tabIndex","onClick","TableHeaderCell","Text","weight","color","BaseBox","sortKey","TableHeaderCellCheckbox","_ref6","isChecked","isDisabled","isIndeterminate","onChange","flex","Checkbox","StyledHeaderRow","HeaderRow","_ref7","$showBorderedCells","borderRightWidth","borderRightColor","borderColor","borderRightStyle","undefined","borderRight","_TableHeaderRow","_ref8","_useTableContext2","disabledRows","selectionType","selectedRows","totalItems","toggleAllRowsSelection","setHeaderRowDensity","showBorderedCells","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 { tableHeader, tableRow } from './tokens';\nimport { useTableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableHeaderRowProps,\n TableHeaderCellProps,\n TableBackgroundColors,\n TableProps,\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';\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.muted');\n const activeColor = getIn(theme.colors, 'interactive.icon.primary.subtle');\n const upArrowColor = isSorted && isSortReversed ? activeColor : defaultColor;\n const downArrowColor = isSorted && !isSortReversed ? activeColor : defaultColor;\n return (\n <SortButton {...makeAccessible({ label: 'Toggle Sort', role: 'button' })}>\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)({\n '&&&': {\n '& tr:first-child th': {\n borderTop: 'none',\n },\n },\n});\n\nconst _TableHeader = ({ children }: TableHeaderRowProps): React.ReactElement => {\n return (\n <StyledHeader {...metaAttribute({ name: MetaConstants.TableHeader })}>{children}</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}>(({ theme, $isSortable, $backgroundColor, $rowDensity, $hasPadding }) => ({\n '&&&': {\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 '> div': {\n backgroundColor: getIn(theme.colors, tableHeader.backgroundColor),\n display: 'flex',\n flexDirection: 'row',\n justifyContent: '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}: 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 return (\n <StyledHeaderCell\n tabIndex={0}\n $isSortable={isSortable}\n $backgroundColor={backgroundColor}\n $rowDensity={headerRowDensity ?? rowDensity}\n $hasPadding={_hasPadding}\n onClick={() => {\n if (isSortable) {\n toggleSort(headerKey);\n }\n }}\n {...metaAttribute({ name: MetaConstants.TableHeaderCell })}\n >\n {isChildrenString ? (\n <Text size=\"medium\" weight=\"medium\" color=\"surface.text.gray.normal\">\n {children}\n </Text>\n ) : (\n children\n )}\n {isSortable && (\n <BaseBox paddingLeft=\"spacing.2\" backgroundColor=\"transparent\">\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 display=\"flex\" alignItems=\"center\" justifyContent=\"center\" flex={1}>\n <Checkbox\n isChecked={isChecked}\n isDisabled={isDisabled}\n isIndeterminate={isIndeterminate}\n onChange={onChange}\n />\n </BaseBox>\n </TableHeaderCell>\n );\n};\n\nconst StyledHeaderRow = styled(HeaderRow)<{ $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 _TableHeaderRow = ({ children, rowDensity }: TableHeaderRowProps): React.ReactElement => {\n const {\n disabledRows,\n selectionType,\n selectedRows,\n totalItems,\n toggleAllRowsSelection,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\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 if (rowDensity) {\n setHeaderRowDensity(rowDensity);\n }\n return (\n <StyledHeaderRow\n role=\"rowheader\"\n {...metaAttribute({ name: MetaConstants.TableHeaderRow })}\n $showBorderedCells={showBorderedCells}\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","makeAccessible","label","role","children","_jsxs","width","height","fill","d","StyledHeader","Header","borderTop","_TableHeader","_ref3","metaAttribute","name","MetaConstants","TableHeader","assignWithoutSideEffects","ComponentIds","StyledHeaderCell","HeaderCell","_ref4","$isSortable","$backgroundColor","$rowDensity","$hasPadding","backgroundColor","borderBottomWidth","makeSpace","tableHeader","borderBottomAndTopWidth","borderTopWidth","borderBottomColor","borderBottomAndTopColor","borderTopColor","borderBottomStyle","borderTopStyle","flexDirection","paddingLeft","tableRow","undefined","paddingRight","minHeight","makeSize","size","negativeOffset","_TableHeaderCell","_ref5","_currentSortedState$s","headerKey","_ref5$_hasPadding","_hasPadding","_useTableContext","useTableContext","toggleSort","currentSortedState","rowDensity","headerRowDensity","isChildrenString","isSortable","Boolean","sortableColumns","find","key","tabIndex","onClick","TableHeaderCell","Text","weight","color","BaseBox","sortKey","TableHeaderCellCheckbox","_ref6","isChecked","isDisabled","isIndeterminate","onChange","flex","Checkbox","StyledHeaderRow","HeaderRow","_ref7","$showBorderedCells","borderRightWidth","borderRightColor","borderColor","borderRightStyle","borderRight","_TableHeaderRow","_ref8","_useTableContext2","disabledRows","selectionType","selectedRows","totalItems","toggleAllRowsSelection","setHeaderRowDensity","showBorderedCells","hasHoverActions","isMultiSelect","isAllSelected","length","TableHeaderRow"],"mappings":"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"}
|
|
@@ -129,6 +129,11 @@ var rowDensityToIsTableInputCellMapping = {
|
|
|
129
129
|
normal: true,
|
|
130
130
|
compact: true
|
|
131
131
|
};
|
|
132
|
+
var classes = {
|
|
133
|
+
HOVER_ACTIONS: 'hover-actions',
|
|
134
|
+
HOVER_ACTIONS_LAYER2: 'hover-actions-layer-2',
|
|
135
|
+
HOVER_ACTIONS_LAYER3: 'hover-actions-layer-3'
|
|
136
|
+
};
|
|
132
137
|
|
|
133
|
-
export { checkboxCellWidth, firstColumnStickyZIndex, refreshWrapperZIndex, rowDensityToIsTableInputCellMapping, tableBackgroundColor, tableEditableCellRowDensityToInputSizeMap, tableFooter, tableHeader, tablePagination, tableRow, tableToolbar, validationStateToInputTrailingIconMap };
|
|
138
|
+
export { checkboxCellWidth, classes, firstColumnStickyZIndex, refreshWrapperZIndex, rowDensityToIsTableInputCellMapping, tableBackgroundColor, tableEditableCellRowDensityToInputSizeMap, tableFooter, tableHeader, tablePagination, tableRow, tableToolbar, validationStateToInputTrailingIconMap };
|
|
134
139
|
//# sourceMappingURL=tokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sources":["../../../../../../src/components/Table/tokens.ts"],"sourcesContent":["import { AlertCircleIcon, CheckIcon } from '~components/Icons';\nimport { size } from '~tokens/global';\n\nconst firstColumnStickyZIndex = 2;\n\nconst refreshWrapperZIndex = 3;\n\nconst checkboxCellWidth = size['44'];\n\nconst tableBackgroundColor = 'surface.background.gray.intense';\nconst tableHeader = {\n paddingTop: 'spacing.5',\n paddingBottom: 'spacing.5',\n paddingLeft: 'spacing.4',\n paddingRight: 'spacing.4',\n backgroundColor: 'interactive.background.gray.default',\n borderBottomAndTopWidth: 'thin',\n borderBottomAndTopColor: 'surface.border.gray.muted',\n} as const;\n\nconst tableFooter = {\n paddingTop: 'spacing.5',\n paddingBottom: 'spacing.5',\n paddingLeft: 'spacing.4',\n paddingRight: 'spacing.4',\n borderBottomAndTopWidth: 'thin',\n borderBottomAndTopColor: 'surface.border.gray.muted',\n backgroundColor: 'interactive.background.gray.default',\n} as const;\n\nconst tableRow = {\n paddingLeft: {\n compact: 'spacing.4',\n normal: 'spacing.4',\n comfortable: 'spacing.4',\n },\n paddingRight: {\n compact: 'spacing.4',\n normal: 'spacing.4',\n comfortable: 'spacing.4',\n },\n minHeight: {\n compact: '36',\n normal: '48',\n comfortable: '60',\n },\n nonStripe: {\n backgroundColor: 'transparent',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorFocus: 'transparent',\n // TODO: Rebranding - on design side: explore pressed state color change, right now both hover & active are same\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.fadedHighlighted',\n backgroundColorSelectedFocus: 'interactive.background.primary.faded',\n backgroundColorSelectedActive: 'interactive.background.primary.fadedHighlighted',\n },\n nonStripeWrapper: {\n // not used anywhere\n backgroundColor: 'transparent',\n backgroundColorHover: 'transparent',\n backgroundColorFocus: 'transparent',\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'transparent',\n backgroundColorSelectedHover: 'transparent',\n backgroundColorSelectedFocus: 'transparent',\n backgroundColorSelectedActive: 'transparent',\n },\n stripe: {\n backgroundColor: 'transparent',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorFocus: 'transparent',\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.fadedHighlighted',\n backgroundColorSelectedFocus: 'interactive.background.primary.faded',\n backgroundColorSelectedActive: 'interactive.background.primary.fadedHighlighted',\n },\n stripeWrapper: {\n backgroundColor: 'interactive.background.gray.default',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorFocus: 'interactive.background.gray.default',\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.faded',\n backgroundColorSelectedFocus: 'interactive.background.primary.faded',\n backgroundColorSelectedActive: 'interactive.background.primary.faded',\n },\n borderBottomWidth: 'thin',\n borderColor: 'surface.border.gray.muted',\n backgroundColorMotionEasing: 'easing.standard.effective',\n backgroundColorMotionDuration: 'duration.xquick',\n} as const;\n\nconst tableToolbar = {\n backgroundColor: 'transparent',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorMotionEasing: 'easing.standard.effective',\n backgroundColorMotionDuration: 'duration.xquick',\n} as const;\n\nconst tablePagination = {\n padding: 'spacing.4',\n pageSelectionButton: {\n backgroundColor: 'transparent',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorActive: 'interactive.background.gray.highlighted',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.fadedHighlighted',\n backgroundColorSelectedActive: 'interactive.background.primary.fadedHighlighted',\n padding: 'spacing.2',\n borderRadius: 'small',\n focusRingColor: 'surface.border.primary.muted',\n textColor: 'surface.text.gray.subtle',\n textColorSelected: 'surface.text.primary.normal',\n height: size['32'],\n width: size['32'],\n },\n defaultPageSize: 10,\n} as const;\n\nconst tableEditableCellRowDensityToInputSizeMap = {\n compact: 'medium',\n normal: 'large',\n comfortable: 'medium',\n} as const;\n\nconst validationStateToInputTrailingIconMap = {\n none: undefined,\n success: CheckIcon,\n error: AlertCircleIcon,\n};\n\nconst rowDensityToIsTableInputCellMapping = {\n comfortable: false,\n normal: true,\n compact: true,\n};\n\nexport {\n tableHeader,\n tableFooter,\n tableRow,\n tableToolbar,\n tablePagination,\n refreshWrapperZIndex,\n tableBackgroundColor,\n firstColumnStickyZIndex,\n checkboxCellWidth,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n rowDensityToIsTableInputCellMapping,\n};\n"],"names":["firstColumnStickyZIndex","refreshWrapperZIndex","checkboxCellWidth","size","tableBackgroundColor","tableHeader","paddingTop","paddingBottom","paddingLeft","paddingRight","backgroundColor","borderBottomAndTopWidth","borderBottomAndTopColor","tableFooter","tableRow","compact","normal","comfortable","minHeight","nonStripe","backgroundColorHover","backgroundColorFocus","backgroundColorActive","backgroundColorSelected","backgroundColorSelectedHover","backgroundColorSelectedFocus","backgroundColorSelectedActive","nonStripeWrapper","stripe","stripeWrapper","borderBottomWidth","borderColor","backgroundColorMotionEasing","backgroundColorMotionDuration","tableToolbar","tablePagination","padding","pageSelectionButton","borderRadius","focusRingColor","textColor","textColorSelected","height","width","defaultPageSize","tableEditableCellRowDensityToInputSizeMap","validationStateToInputTrailingIconMap","none","undefined","success","CheckIcon","error","AlertCircleIcon","rowDensityToIsTableInputCellMapping"],"mappings":";;;;;;AAGMA,IAAAA,uBAAuB,GAAG,EAAC;AAE3BC,IAAAA,oBAAoB,GAAG,EAAC;AAE9B,IAAMC,iBAAiB,GAAGC,IAAI,CAAC,IAAI,EAAC;AAE9BC,IAAAA,oBAAoB,GAAG,kCAAiC;AAC9D,IAAMC,WAAW,GAAG;AAClBC,EAAAA,UAAU,EAAE,WAAW;AACvBC,EAAAA,aAAa,EAAE,WAAW;AAC1BC,EAAAA,WAAW,EAAE,WAAW;AACxBC,EAAAA,YAAY,EAAE,WAAW;AACzBC,EAAAA,eAAe,EAAE,qCAAqC;AACtDC,EAAAA,uBAAuB,EAAE,MAAM;AAC/BC,EAAAA,uBAAuB,EAAE,2BAAA;AAC3B,EAAU;AAEV,IAAMC,WAAW,GAAG;AAClBP,EAAAA,UAAU,EAAE,WAAW;AACvBC,EAAAA,aAAa,EAAE,WAAW;AAC1BC,EAAAA,WAAW,EAAE,WAAW;AACxBC,EAAAA,YAAY,EAAE,WAAW;AACzBE,EAAAA,uBAAuB,EAAE,MAAM;AAC/BC,EAAAA,uBAAuB,EAAE,2BAA2B;AACpDF,EAAAA,eAAe,EAAE,qCAAA;AACnB,EAAU;AAEV,IAAMI,QAAQ,GAAG;AACfN,EAAAA,WAAW,EAAE;AACXO,IAAAA,OAAO,EAAE,WAAW;AACpBC,IAAAA,MAAM,EAAE,WAAW;AACnBC,IAAAA,WAAW,EAAE,WAAA;GACd;AACDR,EAAAA,YAAY,EAAE;AACZM,IAAAA,OAAO,EAAE,WAAW;AACpBC,IAAAA,MAAM,EAAE,WAAW;AACnBC,IAAAA,WAAW,EAAE,WAAA;GACd;AACDC,EAAAA,SAAS,EAAE;AACTH,IAAAA,OAAO,EAAE,IAAI;AACbC,IAAAA,MAAM,EAAE,IAAI;AACZC,IAAAA,WAAW,EAAE,IAAA;GACd;AACDE,EAAAA,SAAS,EAAE;AACTT,IAAAA,eAAe,EAAE,aAAa;AAC9BU,IAAAA,oBAAoB,EAAE,qCAAqC;AAC3DC,IAAAA,oBAAoB,EAAE,aAAa;AACnC;AACAC,IAAAA,qBAAqB,EAAE,qCAAqC;AAC5DC,IAAAA,uBAAuB,EAAE,sCAAsC;AAC/DC,IAAAA,4BAA4B,EAAE,iDAAiD;AAC/EC,IAAAA,4BAA4B,EAAE,sCAAsC;AACpEC,IAAAA,6BAA6B,EAAE,iDAAA;GAChC;AACDC,EAAAA,gBAAgB,EAAE;AAChB;AACAjB,IAAAA,eAAe,EAAE,aAAa;AAC9BU,IAAAA,oBAAoB,EAAE,aAAa;AACnCC,IAAAA,oBAAoB,EAAE,aAAa;AACnCC,IAAAA,qBAAqB,EAAE,qCAAqC;AAC5DC,IAAAA,uBAAuB,EAAE,aAAa;AACtCC,IAAAA,4BAA4B,EAAE,aAAa;AAC3CC,IAAAA,4BAA4B,EAAE,aAAa;AAC3CC,IAAAA,6BAA6B,EAAE,aAAA;GAChC;AACDE,EAAAA,MAAM,EAAE;AACNlB,IAAAA,eAAe,EAAE,aAAa;AAC9BU,IAAAA,oBAAoB,EAAE,qCAAqC;AAC3DC,IAAAA,oBAAoB,EAAE,aAAa;AACnCC,IAAAA,qBAAqB,EAAE,qCAAqC;AAC5DC,IAAAA,uBAAuB,EAAE,sCAAsC;AAC/DC,IAAAA,4BAA4B,EAAE,iDAAiD;AAC/EC,IAAAA,4BAA4B,EAAE,sCAAsC;AACpEC,IAAAA,6BAA6B,EAAE,iDAAA;GAChC;AACDG,EAAAA,aAAa,EAAE;AACbnB,IAAAA,eAAe,EAAE,qCAAqC;AACtDU,IAAAA,oBAAoB,EAAE,qCAAqC;AAC3DC,IAAAA,oBAAoB,EAAE,qCAAqC;AAC3DC,IAAAA,qBAAqB,EAAE,qCAAqC;AAC5DC,IAAAA,uBAAuB,EAAE,sCAAsC;AAC/DC,IAAAA,4BAA4B,EAAE,sCAAsC;AACpEC,IAAAA,4BAA4B,EAAE,sCAAsC;AACpEC,IAAAA,6BAA6B,EAAE,sCAAA;GAChC;AACDI,EAAAA,iBAAiB,EAAE,MAAM;AACzBC,EAAAA,WAAW,EAAE,2BAA2B;AACxCC,EAAAA,2BAA2B,EAAE,2BAA2B;AACxDC,EAAAA,6BAA6B,EAAE,iBAAA;AACjC,EAAU;AAEV,IAAMC,YAAY,GAAG;AACnBxB,EAAAA,eAAe,EAAE,aAAa;AAC9Ba,EAAAA,uBAAuB,EAAE,sCAAsC;AAC/DS,EAAAA,2BAA2B,EAAE,2BAA2B;AACxDC,EAAAA,6BAA6B,EAAE,iBAAA;AACjC,EAAU;AAEV,IAAME,eAAe,GAAG;AACtBC,EAAAA,OAAO,EAAE,WAAW;AACpBC,EAAAA,mBAAmB,EAAE;AACnB3B,IAAAA,eAAe,EAAE,aAAa;AAC9BU,IAAAA,oBAAoB,EAAE,qCAAqC;AAC3DE,IAAAA,qBAAqB,EAAE,yCAAyC;AAChEC,IAAAA,uBAAuB,EAAE,sCAAsC;AAC/DC,IAAAA,4BAA4B,EAAE,iDAAiD;AAC/EE,IAAAA,6BAA6B,EAAE,iDAAiD;AAChFU,IAAAA,OAAO,EAAE,WAAW;AACpBE,IAAAA,YAAY,EAAE,OAAO;AACrBC,IAAAA,cAAc,EAAE,8BAA8B;AAC9CC,IAAAA,SAAS,EAAE,0BAA0B;AACrCC,IAAAA,iBAAiB,EAAE,6BAA6B;AAChDC,IAAAA,MAAM,EAAEvC,IAAI,CAAC,IAAI,CAAC;IAClBwC,KAAK,EAAExC,IAAI,CAAC,IAAI,CAAA;GACjB;AACDyC,EAAAA,eAAe,EAAE,EAAA;AACnB,EAAU;AAEV,IAAMC,yCAAyC,GAAG;AAChD9B,EAAAA,OAAO,EAAE,QAAQ;AACjBC,EAAAA,MAAM,EAAE,OAAO;AACfC,EAAAA,WAAW,EAAE,QAAA;AACf,EAAU;AAEV,IAAM6B,qCAAqC,GAAG;AAC5CC,EAAAA,IAAI,EAAEC,SAAS;AACfC,EAAAA,OAAO,EAAEC,SAAS;AAClBC,EAAAA,KAAK,EAAEC,eAAAA;AACT,EAAC;AAED,IAAMC,mCAAmC,GAAG;AAC1CpC,EAAAA,WAAW,EAAE,KAAK;AAClBD,EAAAA,MAAM,EAAE,IAAI;AACZD,EAAAA,OAAO,EAAE,IAAA;AACX;;;;"}
|
|
1
|
+
{"version":3,"file":"tokens.js","sources":["../../../../../../src/components/Table/tokens.ts"],"sourcesContent":["import { AlertCircleIcon, CheckIcon } from '~components/Icons';\nimport { size } from '~tokens/global';\n\nconst firstColumnStickyZIndex = 2;\n\nconst refreshWrapperZIndex = 3;\n\nconst checkboxCellWidth = size['44'];\n\nconst tableBackgroundColor = 'surface.background.gray.intense';\nconst tableHeader = {\n paddingTop: 'spacing.5',\n paddingBottom: 'spacing.5',\n paddingLeft: 'spacing.4',\n paddingRight: 'spacing.4',\n backgroundColor: 'interactive.background.gray.default',\n borderBottomAndTopWidth: 'thin',\n borderBottomAndTopColor: 'surface.border.gray.muted',\n} as const;\n\nconst tableFooter = {\n paddingTop: 'spacing.5',\n paddingBottom: 'spacing.5',\n paddingLeft: 'spacing.4',\n paddingRight: 'spacing.4',\n borderBottomAndTopWidth: 'thin',\n borderBottomAndTopColor: 'surface.border.gray.muted',\n backgroundColor: 'interactive.background.gray.default',\n} as const;\n\nconst tableRow = {\n paddingLeft: {\n compact: 'spacing.4',\n normal: 'spacing.4',\n comfortable: 'spacing.4',\n },\n paddingRight: {\n compact: 'spacing.4',\n normal: 'spacing.4',\n comfortable: 'spacing.4',\n },\n minHeight: {\n compact: '36',\n normal: '48',\n comfortable: '60',\n },\n nonStripe: {\n backgroundColor: 'transparent',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorFocus: 'transparent',\n // TODO: Rebranding - on design side: explore pressed state color change, right now both hover & active are same\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.fadedHighlighted',\n backgroundColorSelectedFocus: 'interactive.background.primary.faded',\n backgroundColorSelectedActive: 'interactive.background.primary.fadedHighlighted',\n },\n nonStripeWrapper: {\n // not used anywhere\n backgroundColor: 'transparent',\n backgroundColorHover: 'transparent',\n backgroundColorFocus: 'transparent',\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'transparent',\n backgroundColorSelectedHover: 'transparent',\n backgroundColorSelectedFocus: 'transparent',\n backgroundColorSelectedActive: 'transparent',\n },\n stripe: {\n backgroundColor: 'transparent',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorFocus: 'transparent',\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.fadedHighlighted',\n backgroundColorSelectedFocus: 'interactive.background.primary.faded',\n backgroundColorSelectedActive: 'interactive.background.primary.fadedHighlighted',\n },\n stripeWrapper: {\n backgroundColor: 'interactive.background.gray.default',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorFocus: 'interactive.background.gray.default',\n backgroundColorActive: 'interactive.background.gray.default',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.faded',\n backgroundColorSelectedFocus: 'interactive.background.primary.faded',\n backgroundColorSelectedActive: 'interactive.background.primary.faded',\n },\n borderBottomWidth: 'thin',\n borderColor: 'surface.border.gray.muted',\n backgroundColorMotionEasing: 'easing.standard.effective',\n backgroundColorMotionDuration: 'duration.xquick',\n} as const;\n\nconst tableToolbar = {\n backgroundColor: 'transparent',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorMotionEasing: 'easing.standard.effective',\n backgroundColorMotionDuration: 'duration.xquick',\n} as const;\n\nconst tablePagination = {\n padding: 'spacing.4',\n pageSelectionButton: {\n backgroundColor: 'transparent',\n backgroundColorHover: 'interactive.background.gray.default',\n backgroundColorActive: 'interactive.background.gray.highlighted',\n backgroundColorSelected: 'interactive.background.primary.faded',\n backgroundColorSelectedHover: 'interactive.background.primary.fadedHighlighted',\n backgroundColorSelectedActive: 'interactive.background.primary.fadedHighlighted',\n padding: 'spacing.2',\n borderRadius: 'small',\n focusRingColor: 'surface.border.primary.muted',\n textColor: 'surface.text.gray.subtle',\n textColorSelected: 'surface.text.primary.normal',\n height: size['32'],\n width: size['32'],\n },\n defaultPageSize: 10,\n} as const;\n\nconst tableEditableCellRowDensityToInputSizeMap = {\n compact: 'medium',\n normal: 'large',\n comfortable: 'medium',\n} as const;\n\nconst validationStateToInputTrailingIconMap = {\n none: undefined,\n success: CheckIcon,\n error: AlertCircleIcon,\n};\n\nconst rowDensityToIsTableInputCellMapping = {\n comfortable: false,\n normal: true,\n compact: true,\n};\n\nconst classes = {\n HOVER_ACTIONS: 'hover-actions',\n HOVER_ACTIONS_LAYER2: 'hover-actions-layer-2',\n HOVER_ACTIONS_LAYER3: 'hover-actions-layer-3',\n};\n\nexport {\n tableHeader,\n tableFooter,\n tableRow,\n tableToolbar,\n tablePagination,\n refreshWrapperZIndex,\n tableBackgroundColor,\n firstColumnStickyZIndex,\n checkboxCellWidth,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n rowDensityToIsTableInputCellMapping,\n classes,\n};\n"],"names":["firstColumnStickyZIndex","refreshWrapperZIndex","checkboxCellWidth","size","tableBackgroundColor","tableHeader","paddingTop","paddingBottom","paddingLeft","paddingRight","backgroundColor","borderBottomAndTopWidth","borderBottomAndTopColor","tableFooter","tableRow","compact","normal","comfortable","minHeight","nonStripe","backgroundColorHover","backgroundColorFocus","backgroundColorActive","backgroundColorSelected","backgroundColorSelectedHover","backgroundColorSelectedFocus","backgroundColorSelectedActive","nonStripeWrapper","stripe","stripeWrapper","borderBottomWidth","borderColor","backgroundColorMotionEasing","backgroundColorMotionDuration","tableToolbar","tablePagination","padding","pageSelectionButton","borderRadius","focusRingColor","textColor","textColorSelected","height","width","defaultPageSize","tableEditableCellRowDensityToInputSizeMap","validationStateToInputTrailingIconMap","none","undefined","success","CheckIcon","error","AlertCircleIcon","rowDensityToIsTableInputCellMapping","classes","HOVER_ACTIONS","HOVER_ACTIONS_LAYER2","HOVER_ACTIONS_LAYER3"],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@ var _IconButton = function _IconButton(_ref, ref) {
|
|
|
25
25
|
onPointerEnter = _ref.onPointerEnter,
|
|
26
26
|
onTouchEnd = _ref.onTouchEnd,
|
|
27
27
|
onTouchStart = _ref.onTouchStart,
|
|
28
|
+
isHighlighted = _ref.isHighlighted,
|
|
28
29
|
_tabIndex = _ref._tabIndex;
|
|
29
30
|
return /*#__PURE__*/jsx(StyledIconButton, {
|
|
30
31
|
ref: ref,
|
|
@@ -35,6 +36,7 @@ var _IconButton = function _IconButton(_ref, ref) {
|
|
|
35
36
|
tabIndex: _tabIndex,
|
|
36
37
|
accessibilityLabel: accessibilityLabel,
|
|
37
38
|
isDisabled: isDisabled,
|
|
39
|
+
isHighlighted: isHighlighted,
|
|
38
40
|
onBlur: onBlur,
|
|
39
41
|
onFocus: onFocus,
|
|
40
42
|
onMouseLeave: onMouseLeave,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.js","sources":["../../../../../../../src/components/Button/IconButton/IconButton.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/display-name */\nimport React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport StyledIconButton from './StyledIconButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { BladeElementRef } from '~utils/types';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { Platform } from '~utils';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\n\ntype IconButtonProps = {\n /**\n * Icon component to be rendered, eg. `CloseIcon`\n */\n icon: IconComponent;\n\n /**\n * Icon size\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Icon contrast\n *\n * @default 'intense'\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Sets aria-label to help users know what the action does, eg 'Dismiss alert'\n */\n accessibilityLabel: string;\n\n /**\n * Disabled state for IconButton\n */\n isDisabled?: boolean;\n\n /**\n * Sets tabindex property on button element\n */\n _tabIndex?: number;\n} & BladeCommonEvents &\n Platform.Select<{\n web: {\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\n };\n native: {\n onClick: (event: GestureResponderEvent) => void;\n };\n }>;\n\n/**\n * Component for making clickable icons with transparent background.\n * For other cases please use `Button` component with `icon` prop.\n */\nconst _IconButton: React.ForwardRefRenderFunction<BladeElementRef, IconButtonProps> = (\n {\n icon,\n onClick,\n size = 'medium',\n emphasis = 'intense',\n accessibilityLabel,\n isDisabled,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n _tabIndex,\n },\n ref,\n) => {\n return (\n <StyledIconButton\n ref={ref as any}\n onClick={onClick}\n emphasis={emphasis}\n size={size}\n icon={icon}\n tabIndex={_tabIndex}\n accessibilityLabel={accessibilityLabel}\n isDisabled={isDisabled}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n />\n );\n};\n\nconst IconButton = React.forwardRef(_IconButton);\n\nexport type { IconButtonProps };\nexport { IconButton };\n"],"names":["_IconButton","_ref","ref","icon","onClick","_ref$size","size","_ref$emphasis","emphasis","accessibilityLabel","isDisabled","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","_tabIndex","_jsx","StyledIconButton","tabIndex","IconButton","React","forwardRef"],"mappings":";;;;AAAA;AACA;
|
|
1
|
+
{"version":3,"file":"IconButton.js","sources":["../../../../../../../src/components/Button/IconButton/IconButton.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/display-name */\nimport React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport StyledIconButton from './StyledIconButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { BladeElementRef } from '~utils/types';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { Platform } from '~utils';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\n\ntype IconButtonProps = {\n /**\n * Icon component to be rendered, eg. `CloseIcon`\n */\n icon: IconComponent;\n\n /**\n * Icon size\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Icon contrast\n *\n * @default 'intense'\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Sets aria-label to help users know what the action does, eg 'Dismiss alert'\n */\n accessibilityLabel: string;\n\n /**\n * Disabled state for IconButton\n */\n isDisabled?: boolean;\n\n /**\n * Sets tabindex property on button element\n */\n _tabIndex?: number;\n} & BladeCommonEvents &\n Platform.Select<{\n web: {\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * This changes the hover interaction to highlight icon more\n *\n * **Only available on web currently**\n */\n isHighlighted?: boolean;\n };\n native: {\n onClick: (event: GestureResponderEvent) => void;\n isHighlighted?: undefined;\n };\n }>;\n\n/**\n * Component for making clickable icons with transparent background.\n * For other cases please use `Button` component with `icon` prop.\n */\nconst _IconButton: React.ForwardRefRenderFunction<BladeElementRef, IconButtonProps> = (\n {\n icon,\n onClick,\n size = 'medium',\n emphasis = 'intense',\n accessibilityLabel,\n isDisabled,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n isHighlighted,\n _tabIndex,\n },\n ref,\n) => {\n return (\n <StyledIconButton\n ref={ref as any}\n onClick={onClick}\n emphasis={emphasis}\n size={size}\n icon={icon}\n tabIndex={_tabIndex}\n accessibilityLabel={accessibilityLabel}\n isDisabled={isDisabled}\n isHighlighted={isHighlighted}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n />\n );\n};\n\nconst IconButton = React.forwardRef(_IconButton);\n\nexport type { IconButtonProps };\nexport { IconButton };\n"],"names":["_IconButton","_ref","ref","icon","onClick","_ref$size","size","_ref$emphasis","emphasis","accessibilityLabel","isDisabled","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","isHighlighted","_tabIndex","_jsx","StyledIconButton","tabIndex","IconButton","React","forwardRef"],"mappings":";;;;AAAA;AACA;AA6DA;AACA;AACA;AACA;AACA,IAAMA,WAA6E,GAAG,SAAhFA,WAA6EA,CAAAC,IAAA,EAmBjFC,GAAG,EACA;AAAA,EAAA,IAlBDC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAAC,SAAA,GAAAJ,IAAA,CACPK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAE,aAAA,GAAAN,IAAA,CACfO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,aAAA;IACpBE,kBAAkB,GAAAR,IAAA,CAAlBQ,kBAAkB;IAClBC,UAAU,GAAAT,IAAA,CAAVS,UAAU;IACVC,MAAM,GAAAV,IAAA,CAANU,MAAM;IACNC,OAAO,GAAAX,IAAA,CAAPW,OAAO;IACPC,YAAY,GAAAZ,IAAA,CAAZY,YAAY;IACZC,WAAW,GAAAb,IAAA,CAAXa,WAAW;IACXC,aAAa,GAAAd,IAAA,CAAbc,aAAa;IACbC,cAAc,GAAAf,IAAA,CAAde,cAAc;IACdC,UAAU,GAAAhB,IAAA,CAAVgB,UAAU;IACVC,YAAY,GAAAjB,IAAA,CAAZiB,YAAY;IACZC,aAAa,GAAAlB,IAAA,CAAbkB,aAAa;IACbC,SAAS,GAAAnB,IAAA,CAATmB,SAAS,CAAA;EAIX,oBACEC,GAAA,CAACC,gBAAgB,EAAA;AACfpB,IAAAA,GAAG,EAAEA,GAAW;AAChBE,IAAAA,OAAO,EAAEA,OAAQ;AACjBI,IAAAA,QAAQ,EAAEA,QAAS;AACnBF,IAAAA,IAAI,EAAEA,IAAK;AACXH,IAAAA,IAAI,EAAEA,IAAK;AACXoB,IAAAA,QAAQ,EAAEH,SAAU;AACpBX,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,IAAAA,UAAU,EAAEA,UAAW;AACvBS,IAAAA,aAAa,EAAEA,aAAc;AAC7BR,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,aAAa,EAAEA,aAAc;AAC7BC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,UAAU,EAAEA,UAAW;AACvBC,IAAAA,YAAY,EAAEA,YAAAA;AAAa,GAC5B,CAAC,CAAA;AAEN,CAAC,CAAA;AAED,IAAMM,UAAU,gBAAGC,cAAK,CAACC,UAAU,CAAC1B,WAAW;;;;"}
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import styled from 'styled-components';
|
|
3
3
|
import React__default from 'react';
|
|
4
|
+
import { highlightedButtonSizeMap, highlightedHoverColorMap } from './tokens.js';
|
|
4
5
|
import '../../../utils/index.js';
|
|
5
6
|
import '../../../utils/metaAttribute/index.js';
|
|
6
7
|
import '../../../utils/makeAccessible/index.js';
|
|
7
8
|
import '../../../utils/makeMotionTime/index.web.js';
|
|
8
9
|
import '../../../utils/getFocusRingStyles/index.js';
|
|
10
|
+
import '../../../utils/logger/index.js';
|
|
11
|
+
import getIn from '../../../utils/lodashButBetter/get.js';
|
|
9
12
|
import { jsx } from 'react/jsx-runtime';
|
|
13
|
+
import { throwBladeError } from '../../../utils/logger/logger.js';
|
|
14
|
+
import { makeSize } from '../../../utils/makeSize/makeSize.js';
|
|
10
15
|
import { castWebType } from '../../../utils/platform/castUtils.js';
|
|
11
16
|
import { makeMotionTime } from '../../../utils/makeMotionTime/makeMotionTime.web.js';
|
|
12
17
|
import { getFocusRingStyles } from '../../../utils/getFocusRingStyles/getFocusRingStyles.web.js';
|
|
@@ -24,11 +29,24 @@ var StyledButton = /*#__PURE__*/styled.button.withConfig({
|
|
|
24
29
|
emphasis = props.emphasis;
|
|
25
30
|
var motionToken = theme.motion;
|
|
26
31
|
var emphasisColor = emphasis === 'intense' ? 'gray' : 'staticWhite';
|
|
32
|
+
if (false) {
|
|
33
|
+
if (props.$size === 'large' && props.$isHighlighted) {
|
|
34
|
+
throwBladeError({
|
|
35
|
+
moduleName: 'IconButton',
|
|
36
|
+
message: 'size large is not allowed with isHighlighted true'
|
|
37
|
+
});
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
27
41
|
return {
|
|
28
42
|
border: 'none',
|
|
29
43
|
cursor: props.disabled ? 'not-allowed' : 'pointer',
|
|
30
44
|
padding: 0,
|
|
31
|
-
|
|
45
|
+
height: props.$isHighlighted ?
|
|
46
|
+
// We throw error for size large on top
|
|
47
|
+
makeSize(highlightedButtonSizeMap[props.$size]) : undefined,
|
|
48
|
+
width: props.$isHighlighted ? makeSize(highlightedButtonSizeMap[props.$size]) : undefined,
|
|
49
|
+
borderRadius: props.$isHighlighted ? theme.border.radius.round : theme.border.radius.small,
|
|
32
50
|
background: 'transparent',
|
|
33
51
|
display: 'flex',
|
|
34
52
|
alignItems: 'center',
|
|
@@ -37,8 +55,9 @@ var StyledButton = /*#__PURE__*/styled.button.withConfig({
|
|
|
37
55
|
transitionProperty: 'color, box-shadow',
|
|
38
56
|
transitionDuration: castWebType(makeMotionTime(motionToken.duration.xquick)),
|
|
39
57
|
transitionTimingFunction: motionToken.easing.standard.effective,
|
|
40
|
-
'&:hover': {
|
|
41
|
-
color: theme.colors.interactive.icon[emphasisColor].subtle
|
|
58
|
+
'&:hover:not([disabled])': {
|
|
59
|
+
color: theme.colors.interactive.icon[emphasisColor].subtle,
|
|
60
|
+
backgroundColor: props.$isHighlighted ? getIn(theme.colors, highlightedHoverColorMap[emphasis]) : 'transparent'
|
|
42
61
|
},
|
|
43
62
|
'&:focus-visible': _objectSpread(_objectSpread({}, getFocusRingStyles({
|
|
44
63
|
theme: theme
|
|
@@ -57,6 +76,7 @@ var StyledIconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, re
|
|
|
57
76
|
emphasis = _ref.emphasis,
|
|
58
77
|
accessibilityLabel = _ref.accessibilityLabel,
|
|
59
78
|
isDisabled = _ref.isDisabled,
|
|
79
|
+
isHighlighted = _ref.isHighlighted,
|
|
60
80
|
testID = _ref.testID,
|
|
61
81
|
onBlur = _ref.onBlur,
|
|
62
82
|
onFocus = _ref.onFocus,
|
|
@@ -81,6 +101,8 @@ var StyledIconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, re
|
|
|
81
101
|
onTouchEnd: onTouchEnd,
|
|
82
102
|
onTouchStart: onTouchStart,
|
|
83
103
|
disabled: isDisabled,
|
|
104
|
+
$isHighlighted: isHighlighted,
|
|
105
|
+
$size: size,
|
|
84
106
|
tabIndex: tabIndex
|
|
85
107
|
}, makeAccessible({
|
|
86
108
|
label: accessibilityLabel
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StyledIconButton.web.js","sources":["../../../../../../../src/components/Button/IconButton/StyledIconButton.web.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport styled from 'styled-components';\nimport type { ReactElement } from 'react';\nimport React from 'react';\nimport type { StyledIconButtonProps } from './types';\nimport { castWebType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeMotionTime } from '~utils/makeMotionTime';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\n\ntype StyledButtonProps = {\n emphasis: SubtleOrIntense;\n};\n\nconst StyledButton = styled.button<StyledButtonProps>((props) => {\n const { theme, emphasis } = props;\n const motionToken = theme.motion;\n\n const emphasisColor = emphasis === 'intense' ? 'gray' : 'staticWhite';\n\n return {\n border: 'none',\n cursor: props.disabled ? 'not-allowed' : 'pointer',\n padding: 0,\n borderRadius: theme.border.radius.small,\n background: 'transparent',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: props.disabled\n ? theme.colors.interactive.icon[emphasisColor].disabled\n : theme.colors.interactive.icon[emphasisColor].muted,\n transitionProperty: 'color, box-shadow',\n transitionDuration: castWebType(makeMotionTime(motionToken.duration.xquick)),\n transitionTimingFunction: motionToken.easing.standard.effective as string,\n\n '&:hover': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n\n '&:active': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n };\n});\n\nconst StyledIconButton = React.forwardRef<HTMLButtonElement, StyledIconButtonProps>(\n (\n {\n icon: Icon,\n onClick,\n size,\n emphasis,\n accessibilityLabel,\n isDisabled,\n testID,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n tabIndex,\n },\n ref,\n ): ReactElement => (\n <StyledButton\n ref={ref}\n onClick={castWebType(onClick)}\n emphasis={emphasis}\n type=\"button\"\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n disabled={isDisabled}\n tabIndex={tabIndex}\n {...makeAccessible({ label: accessibilityLabel })}\n {...metaAttribute({ name: MetaConstants.IconButton, testID })}\n >\n <Icon size={size} color={isDisabled ? 'interactive.icon.gray.disabled' : 'currentColor'} />\n </StyledButton>\n ),\n);\n\nexport default StyledIconButton;\n"],"names":["StyledButton","styled","button","withConfig","displayName","componentId","props","theme","emphasis","motionToken","motion","emphasisColor","border","cursor","disabled","padding","borderRadius","radius","small","background","display","alignItems","justifyContent","color","colors","interactive","icon","muted","transitionProperty","transitionDuration","castWebType","makeMotionTime","duration","xquick","transitionTimingFunction","easing","standard","effective","subtle","_objectSpread","getFocusRingStyles","StyledIconButton","React","forwardRef","_ref","ref","Icon","onClick","size","accessibilityLabel","isDisabled","testID","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","tabIndex","_jsx","type","makeAccessible","label","metaAttribute","name","MetaConstants","IconButton","children"],"mappings":"
|
|
1
|
+
{"version":3,"file":"StyledIconButton.web.js","sources":["../../../../../../../src/components/Button/IconButton/StyledIconButton.web.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport styled from 'styled-components';\nimport type { ReactElement } from 'react';\nimport React from 'react';\nimport type { StyledIconButtonProps } from './types';\nimport { highlightedButtonSizeMap, highlightedHoverColorMap } from './tokens';\nimport { castWebType, makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeMotionTime } from '~utils/makeMotionTime';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { throwBladeError } from '~utils/logger';\nimport getIn from '~utils/lodashButBetter/get';\n\ntype StyledButtonProps = {\n emphasis: SubtleOrIntense;\n $isHighlighted: StyledIconButtonProps['isHighlighted'];\n $size: StyledIconButtonProps['size'];\n};\n\nconst StyledButton = styled.button<StyledButtonProps>((props) => {\n const { theme, emphasis } = props;\n const motionToken = theme.motion;\n\n const emphasisColor = emphasis === 'intense' ? 'gray' : 'staticWhite';\n\n if (__DEV__) {\n if (props.$size === 'large' && props.$isHighlighted) {\n throwBladeError({\n moduleName: 'IconButton',\n message: 'size large is not allowed with isHighlighted true',\n });\n return null;\n }\n }\n\n return {\n border: 'none',\n cursor: props.disabled ? 'not-allowed' : 'pointer',\n padding: 0,\n height: props.$isHighlighted\n ? // We throw error for size large on top\n makeSize(highlightedButtonSizeMap[props.$size as 'small' | 'medium'])\n : undefined,\n width: props.$isHighlighted\n ? makeSize(highlightedButtonSizeMap[props.$size as 'small' | 'medium'])\n : undefined,\n borderRadius: props.$isHighlighted ? theme.border.radius.round : theme.border.radius.small,\n background: 'transparent',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: props.disabled\n ? theme.colors.interactive.icon[emphasisColor].disabled\n : theme.colors.interactive.icon[emphasisColor].muted,\n transitionProperty: 'color, box-shadow',\n transitionDuration: castWebType(makeMotionTime(motionToken.duration.xquick)),\n transitionTimingFunction: motionToken.easing.standard.effective as string,\n\n '&:hover:not([disabled])': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n backgroundColor: props.$isHighlighted\n ? getIn(theme.colors, highlightedHoverColorMap[emphasis])\n : 'transparent',\n },\n\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n\n '&:active': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n };\n});\n\nconst StyledIconButton = React.forwardRef<HTMLButtonElement, StyledIconButtonProps>(\n (\n {\n icon: Icon,\n onClick,\n size,\n emphasis,\n accessibilityLabel,\n isDisabled,\n isHighlighted,\n testID,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n tabIndex,\n },\n ref,\n ): ReactElement => (\n <StyledButton\n ref={ref}\n onClick={castWebType(onClick)}\n emphasis={emphasis}\n type=\"button\"\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n disabled={isDisabled}\n $isHighlighted={isHighlighted}\n $size={size}\n tabIndex={tabIndex}\n {...makeAccessible({ label: accessibilityLabel })}\n {...metaAttribute({ name: MetaConstants.IconButton, testID })}\n >\n <Icon size={size} color={isDisabled ? 'interactive.icon.gray.disabled' : 'currentColor'} />\n </StyledButton>\n ),\n);\n\nexport default StyledIconButton;\n"],"names":["StyledButton","styled","button","withConfig","displayName","componentId","props","theme","emphasis","motionToken","motion","emphasisColor","$size","$isHighlighted","throwBladeError","moduleName","message","border","cursor","disabled","padding","height","makeSize","highlightedButtonSizeMap","undefined","width","borderRadius","radius","round","small","background","display","alignItems","justifyContent","color","colors","interactive","icon","muted","transitionProperty","transitionDuration","castWebType","makeMotionTime","duration","xquick","transitionTimingFunction","easing","standard","effective","subtle","backgroundColor","getIn","highlightedHoverColorMap","_objectSpread","getFocusRingStyles","StyledIconButton","React","forwardRef","_ref","ref","Icon","onClick","size","accessibilityLabel","isDisabled","isHighlighted","testID","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","tabIndex","_jsx","type","makeAccessible","label","metaAttribute","name","MetaConstants","IconButton","children"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import '../../../tokens/global/index.js';
|
|
2
|
+
import { size } from '../../../tokens/global/size.js';
|
|
3
|
+
|
|
4
|
+
var highlightedButtonSizeMap = {
|
|
5
|
+
small: size['24'],
|
|
6
|
+
medium: size['32']
|
|
7
|
+
};
|
|
8
|
+
var highlightedHoverColorMap = {
|
|
9
|
+
intense: 'interactive.background.gray.fadedHighlighted',
|
|
10
|
+
subtle: 'interactive.background.staticWhite.faded'
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { highlightedButtonSizeMap, highlightedHoverColorMap };
|
|
14
|
+
//# sourceMappingURL=tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.js","sources":["../../../../../../../src/components/Button/IconButton/tokens.ts"],"sourcesContent":["import { size } from '~tokens/global';\n\nconst highlightedButtonSizeMap = {\n small: size['24'],\n medium: size['32'],\n} as const;\n\nconst highlightedHoverColorMap = {\n intense: 'interactive.background.gray.fadedHighlighted',\n subtle: 'interactive.background.staticWhite.faded',\n} as const;\n\nexport { highlightedButtonSizeMap, highlightedHoverColorMap };\n"],"names":["highlightedButtonSizeMap","small","size","medium","highlightedHoverColorMap","intense","subtle"],"mappings":";;;AAEA,IAAMA,wBAAwB,GAAG;AAC/BC,EAAAA,KAAK,EAAEC,IAAI,CAAC,IAAI,CAAC;EACjBC,MAAM,EAAED,IAAI,CAAC,IAAI,CAAA;AACnB,EAAU;AAEV,IAAME,wBAAwB,GAAG;AAC/BC,EAAAA,OAAO,EAAE,8CAA8C;AACvDC,EAAAA,MAAM,EAAE,0CAAA;AACV;;;;"}
|
|
@@ -24,6 +24,7 @@ import '../../utils/assignWithoutSideEffects/index.js';
|
|
|
24
24
|
import '../BladeProvider/index.js';
|
|
25
25
|
import getIn from '../../utils/lodashButBetter/get.js';
|
|
26
26
|
import '../../utils/makeAccessible/index.js';
|
|
27
|
+
import { useIsMobile } from '../../utils/useIsMobile.js';
|
|
27
28
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
28
29
|
import { getComponentId, isValidAllowedChildren } from '../../utils/isValidAllowedChildren/isValidAllowedChildren.js';
|
|
29
30
|
import useTheme from '../BladeProvider/useTheme.js';
|
|
@@ -152,9 +153,15 @@ var _Table = function _Table(_ref3) {
|
|
|
152
153
|
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
153
154
|
headerRowDensity = _React$useState10[0],
|
|
154
155
|
setHeaderRowDensity = _React$useState10[1];
|
|
156
|
+
var _React$useState11 = React__default.useState(false),
|
|
157
|
+
_React$useState12 = _slicedToArray(_React$useState11, 2),
|
|
158
|
+
hasHoverActions = _React$useState12[0],
|
|
159
|
+
setHasHoverActions = _React$useState12[1];
|
|
155
160
|
// Need to make header is sticky if first column is sticky otherwise the first header cell will not be sticky
|
|
156
161
|
var shouldHeaderBeSticky = isHeaderSticky !== null && isHeaderSticky !== void 0 ? isHeaderSticky : isFirstColumnSticky;
|
|
157
162
|
var backgroundColor = tableBackgroundColor;
|
|
163
|
+
var isMobile = useIsMobile();
|
|
164
|
+
var lastHoverActionsColWidth = isMobile ? '1fr' : '0px';
|
|
158
165
|
var _usePresence = usePresence(isRefreshing, {
|
|
159
166
|
transitionDuration: theme.motion.duration.quick
|
|
160
167
|
}),
|
|
@@ -169,7 +176,7 @@ var _Table = function _Table(_ref3) {
|
|
|
169
176
|
var firstColumnStickyFooterCellCSS = isFirstColumnSticky ? "\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ".concat(firstColumnStickyZIndex, " !important;\n }\n ").concat(selectionType === 'multiple' && "&:nth-of-type(2) {\n left: ".concat(checkboxCellWidth, "px !important;\n position: sticky !important;\n z-index: ").concat(firstColumnStickyZIndex, " !important;\n }\n ")) : '';
|
|
170
177
|
var firstColumnStickyBodyCellCSS = isFirstColumnSticky ? "\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ".concat(firstColumnStickyZIndex, " !important;\n }\n ").concat(selectionType === 'multiple' && "&:nth-of-type(2) {\n left: ".concat(checkboxCellWidth, "px !important;\n position: sticky !important;\n z-index: ").concat(firstColumnStickyZIndex, " !important;\n }\n ")) : '';
|
|
171
178
|
var tableTheme = useTheme$1({
|
|
172
|
-
Table: "\n height:".concat(isFooterSticky ? "100%" : undefined, ";\n border: ").concat(makeBorderSize(theme.border.width.thin), " solid ").concat(theme.colors.surface.border.gray.muted, ";\n --data-table-library_grid-template-columns: ").concat(gridTemplateColumns
|
|
179
|
+
Table: "\n height:".concat(isFooterSticky ? "100%" : undefined, ";\n border: ").concat(makeBorderSize(theme.border.width.thin), " solid ").concat(theme.colors.surface.border.gray.muted, ";\n --data-table-library_grid-template-columns: ").concat(gridTemplateColumns ? "".concat(gridTemplateColumns, " ").concat(hasHoverActions ? lastHoverActionsColWidth : '') : " ".concat(selectionType === 'multiple' ? 'min-content' : '', " repeat(").concat(columnCount, ",minmax(100px, 1fr)) ").concat(hasHoverActions ? lastHoverActionsColWidth : '', " !important;"), " !important;\n background-color: ").concat(getIn(theme.colors, backgroundColor), ";\n "),
|
|
173
180
|
HeaderCell: "\n position: ".concat(shouldHeaderBeSticky ? 'sticky' : 'relative', ";\n \n top: ").concat(shouldHeaderBeSticky ? '0' : undefined, ";\n ").concat(firstColumnStickyHeaderCellCSS, "\n "),
|
|
174
181
|
Cell: "\n ".concat(firstColumnStickyBodyCellCSS, "\n "),
|
|
175
182
|
FooterCell: "\n position: ".concat(isFooterSticky ? 'sticky' : 'relative', ";\n bottom: ").concat(isFooterSticky ? '0' : undefined, ";\n ").concat(firstColumnStickyFooterCellCSS, "\n ")
|
|
@@ -308,9 +315,11 @@ var _Table = function _Table(_ref3) {
|
|
|
308
315
|
backgroundColor: backgroundColor,
|
|
309
316
|
headerRowDensity: headerRowDensity,
|
|
310
317
|
setHeaderRowDensity: setHeaderRowDensity,
|
|
311
|
-
showBorderedCells: showBorderedCells
|
|
318
|
+
showBorderedCells: showBorderedCells,
|
|
319
|
+
hasHoverActions: hasHoverActions,
|
|
320
|
+
setHasHoverActions: setHasHoverActions
|
|
312
321
|
};
|
|
313
|
-
}, [selectionType, selectedRows, totalItems, toggleRowSelectionById, toggleAllRowsSelection, deselectAllRows, rowDensity, toggleSort, currentSortedState, setPaginationPage, setPaginationRowSize, currentPaginationState, showStripedRows, disabledRows, setDisabledRows, paginationType, setPaginationType, backgroundColor, headerRowDensity, setHeaderRowDensity, showBorderedCells]);
|
|
322
|
+
}, [selectionType, selectedRows, totalItems, toggleRowSelectionById, toggleAllRowsSelection, deselectAllRows, rowDensity, toggleSort, currentSortedState, setPaginationPage, setPaginationRowSize, currentPaginationState, showStripedRows, disabledRows, setDisabledRows, paginationType, setPaginationType, backgroundColor, headerRowDensity, setHeaderRowDensity, showBorderedCells, hasHoverActions, setHasHoverActions]);
|
|
314
323
|
return /*#__PURE__*/jsx(TableContext.Provider, {
|
|
315
324
|
value: tableContext,
|
|
316
325
|
children: isLoading ? /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread({
|