@veeqo/ui 15.7.0 → 15.8.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/dist/components/Action/styles/button.module.scss.cjs +2 -2
- package/dist/components/Action/styles/button.module.scss.cjs.map +1 -1
- package/dist/components/Action/styles/button.module.scss.js +2 -2
- package/dist/components/Action/styles/button.module.scss.js.map +1 -1
- package/dist/components/Action/styles/link.module.scss.cjs +2 -2
- package/dist/components/Action/styles/link.module.scss.cjs.map +1 -1
- package/dist/components/Action/styles/link.module.scss.js +2 -2
- package/dist/components/Action/styles/link.module.scss.js.map +1 -1
- package/dist/components/Action/styles/{base.module.scss.cjs → reset.module.scss.cjs} +3 -3
- package/dist/components/Action/styles/reset.module.scss.cjs.map +1 -0
- package/dist/components/Action/styles/{base.module.scss.js → reset.module.scss.js} +3 -3
- package/dist/components/Action/styles/reset.module.scss.js.map +1 -0
- package/dist/components/Action/utils.cjs +2 -4
- package/dist/components/Action/utils.cjs.map +1 -1
- package/dist/components/Action/utils.js +2 -4
- package/dist/components/Action/utils.js.map +1 -1
- package/dist/components/Anchor/types.d.ts +3 -0
- package/dist/components/AnimatedDropdown/types.d.ts +3 -0
- package/dist/components/Badge/types.d.ts +3 -0
- package/dist/components/Banner/Banner.cjs.map +1 -1
- package/dist/components/Banner/Banner.d.ts +3 -0
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.cjs +2 -1
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.cjs.map +1 -1
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.js +2 -1
- package/dist/components/DataGrid/components/Body/BodyCell/BodyCell.js.map +1 -1
- package/dist/components/DataGrid/components/Body/LoadingBody/LoadingBodyCell.cjs +2 -1
- package/dist/components/DataGrid/components/Body/LoadingBody/LoadingBodyCell.cjs.map +1 -1
- package/dist/components/DataGrid/components/Body/LoadingBody/LoadingBodyCell.js +2 -1
- package/dist/components/DataGrid/components/Body/LoadingBody/LoadingBodyCell.js.map +1 -1
- package/dist/components/DataGrid/components/GridContainer/GridContainer.cjs +2 -1
- package/dist/components/DataGrid/components/GridContainer/GridContainer.cjs.map +1 -1
- package/dist/components/DataGrid/components/GridContainer/GridContainer.js +2 -1
- package/dist/components/DataGrid/components/GridContainer/GridContainer.js.map +1 -1
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.cjs +2 -1
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.cjs.map +1 -1
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.js +2 -1
- package/dist/components/DataGrid/components/Header/HeaderCell/HeaderCell.js.map +1 -1
- package/dist/components/DataTable/DataTable.cjs +3 -0
- package/dist/components/DataTable/DataTable.cjs.map +1 -1
- package/dist/components/DataTable/DataTable.d.ts +3 -0
- package/dist/components/DataTable/DataTable.js +3 -0
- package/dist/components/DataTable/DataTable.js.map +1 -1
- package/dist/components/DataTable/types.cjs.map +1 -1
- package/dist/components/DataTable/types.d.ts +3 -0
- package/dist/components/DataTable/types.js.map +1 -1
- package/dist/components/DescriptionList/DescriptionList.cjs +3 -0
- package/dist/components/DescriptionList/DescriptionList.cjs.map +1 -1
- package/dist/components/DescriptionList/DescriptionList.d.ts +6 -0
- package/dist/components/DescriptionList/DescriptionList.js +3 -0
- package/dist/components/DescriptionList/DescriptionList.js.map +1 -1
- package/dist/components/DetailPage/DetailPage.cjs +3 -0
- package/dist/components/DetailPage/DetailPage.cjs.map +1 -1
- package/dist/components/DetailPage/DetailPage.d.ts +6 -0
- package/dist/components/DetailPage/DetailPage.js +3 -0
- package/dist/components/DetailPage/DetailPage.js.map +1 -1
- package/dist/components/LegacyDataTable/LegacyDataTable.cjs +1 -3
- package/dist/components/LegacyDataTable/LegacyDataTable.cjs.map +1 -1
- package/dist/components/LegacyDataTable/LegacyDataTable.d.ts +1 -3
- package/dist/components/LegacyDataTable/LegacyDataTable.js +1 -3
- package/dist/components/LegacyDataTable/LegacyDataTable.js.map +1 -1
- package/dist/components/LegacyDataTable/utils/types.d.ts +3 -0
- package/dist/components/Popover/Popover.cjs +1 -0
- package/dist/components/Popover/Popover.cjs.map +1 -1
- package/dist/components/Popover/Popover.js +1 -0
- package/dist/components/Popover/Popover.js.map +1 -1
- package/dist/components/Popup/Popup.cjs +4 -0
- package/dist/components/Popup/Popup.cjs.map +1 -1
- package/dist/components/Popup/Popup.d.ts +3 -0
- package/dist/components/Popup/Popup.js +4 -0
- package/dist/components/Popup/Popup.js.map +1 -1
- package/dist/components/Popup/types.d.ts +3 -0
- package/dist/components/Portal/Portal.cjs +31 -1
- package/dist/components/Portal/Portal.cjs.map +1 -1
- package/dist/components/Portal/Portal.d.ts +27 -6
- package/dist/components/Portal/Portal.js +31 -1
- package/dist/components/Portal/Portal.js.map +1 -1
- package/dist/components/Portal/PortalContext.cjs +27 -0
- package/dist/components/Portal/PortalContext.cjs.map +1 -0
- package/dist/components/Portal/PortalContext.d.ts +18 -0
- package/dist/components/Portal/PortalContext.js +20 -0
- package/dist/components/Portal/PortalContext.js.map +1 -0
- package/dist/components/Portal/index.d.ts +1 -0
- package/dist/components/Portal/types.d.ts +13 -0
- package/dist/components/Stack/types.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.cjs +1 -0
- package/dist/components/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +1 -0
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/View/types.cjs.map +1 -1
- package/dist/components/View/types.d.ts +3 -0
- package/dist/components/View/types.js.map +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/utils/forms/form.module.scss.cjs +2 -2
- package/dist/utils/forms/form.module.scss.js +2 -2
- package/package.json +1 -1
- package/dist/components/Action/styles/base.module.scss.cjs.map +0 -1
- package/dist/components/Action/styles/base.module.scss.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegacyDataTable.cjs","sources":["../../../src/components/LegacyDataTable/LegacyDataTable.tsx"],"sourcesContent":["import React, { useRef, useEffect, useState, useCallback, useMemo } from 'react';\nimport { Checkbox } from '../Checkbox';\nimport { Radio } from '../Radio';\n\nimport { Tooltip } from '../Tooltip';\nimport { theme } from '../../theme';\n\nimport {\n SpecificStateType,\n LegacyDataTableHeader,\n LegacyDataTableId,\n LegacyDataTableProps,\n LegacyDataTableRow,\n LegacyDataTableNestedRow,\n LegacyDataTableSortDirection,\n FixedColumnInlineStyle,\n} from './utils/types';\n\nimport {\n Wrapper,\n WrapperBordered,\n Table,\n Head,\n Body,\n Row,\n Cell,\n HeaderCell,\n HeaderCellLayout,\n Footer,\n TooltipContent,\n} from './styled';\n\nimport { SpecificState } from './SpecificState';\n\nimport { ClickableCell, EditableCell } from './cells';\nimport { SkeletonCell } from './cells/SkeletonCell';\n\nimport { defaultEmptyState, defaultErrorState, ScrollPosition } from './utils/constants';\nimport { StickyHeader } from './StickyHeader';\nimport { convertFixedColumnInlineStyleToStyled } from './utils';\nimport { SkeletonHeaderCell } from './cells/SkeletonHeaderCell';\nimport { SkeletonContent } from './SkeletonContent';\n\nimport { DoubleArrowIcon, DoubleArrowAscIcon, DoubleArrowDescIcon } from '../../icons';\n\nexport const IconUnsorted = () => (\n <DoubleArrowIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortAsc = () => (\n <DoubleArrowAscIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortDesc = () => (\n <DoubleArrowDescIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\n\n/**\n * @deprecated\n *\n * Use DataTable instead\n */\nexport const LegacyDataTable = ({\n borderless = false,\n striped = true,\n noWrap = false,\n showScrollbar = false,\n headers,\n rows,\n renderRow,\n renderNestedRow,\n expandedRowIds,\n renderLoadingRow,\n renderFooterRow,\n renderFooterLoadingRow,\n omitFooterSelectionCell = false,\n selectedRowIds,\n disabledSelectionInputRowIds,\n selectionMode = 'multiple',\n onChangeSelectedRowIds,\n sortColumnId,\n sortDirection,\n onChangeSort,\n isError = false,\n isLoading = false,\n skeletonRowsNumber = 5,\n isHeaderSticky = true,\n stickyHeaderStyle,\n customSpecificState,\n bodyHeightInSpecificStates = 375,\n startFixedColumnsNumber,\n endFixedColumnsNumber,\n}: LegacyDataTableProps) => {\n const WrapperComponent = borderless ? Wrapper : WrapperBordered;\n\n const isEmpty = rows ? rows.length === 0 : false;\n const isFixedLayout = Boolean(startFixedColumnsNumber || endFixedColumnsNumber);\n const isFixedColumnsNotEnabled = !startFixedColumnsNumber && !endFixedColumnsNumber;\n\n const tableRef = useRef<HTMLTableElement>(null);\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n const selectionColumnWidth = 58;\n\n const [scrollPosition, setScrollPosition] = useState<ScrollPosition>(ScrollPosition.none);\n\n useEffect(() => {\n let refValue: HTMLDivElement | null = null;\n\n const handleScroll = () => {\n if (!wrapperRef.current || isFixedColumnsNotEnabled) return;\n const el = wrapperRef.current;\n const scrollWidth = el.scrollWidth + 2; // 2 here is 2px which adds by border\n const { scrollLeft } = el;\n const { width } = el.getBoundingClientRect();\n const scrollValue = scrollLeft + width;\n\n if (scrollWidth === width) setScrollPosition(ScrollPosition.none);\n else if (scrollLeft === 0) setScrollPosition(ScrollPosition.start);\n else if (scrollLeft > 0 && scrollValue < scrollWidth)\n setScrollPosition(ScrollPosition.middle);\n else if (scrollValue === scrollWidth) setScrollPosition(ScrollPosition.end);\n };\n\n if (wrapperRef.current) {\n refValue = wrapperRef.current;\n handleScroll();\n wrapperRef.current?.addEventListener('scroll', handleScroll);\n }\n\n return () => {\n refValue?.removeEventListener('scroll', handleScroll);\n };\n }, [tableRef, isFixedColumnsNotEnabled]);\n\n const castWidthToNumber = useCallback((width: number | string | undefined): null | number => {\n if (typeof width === 'string') {\n // eslint-disable-next-line no-console\n console.error(\n \"You can only use a numeric value in the 'width' property when you use fixed columns\",\n );\n return null;\n }\n if (width === undefined) {\n // eslint-disable-next-line no-console\n console.error(\n \"You should provide numeric value in the 'width' attribute in all fixed columns when you use fixed columns\",\n );\n return null;\n }\n\n return width;\n }, []);\n\n const generateFixedColumnInlineStyle = useCallback(\n (index: number, offset: number, side: 'left' | 'right'): FixedColumnInlineStyle => ({\n index: side === 'left' ? index : -index,\n style: {\n position: 'sticky',\n [side]: offset,\n zIndex: 1,\n },\n }),\n [],\n );\n\n const generateFixedColumnsStyle = useCallback((): FixedColumnInlineStyle[] | null => {\n if (!headers || isLoading) return null;\n\n const startColumns: FixedColumnInlineStyle[] = [];\n const endColumns: FixedColumnInlineStyle[] = [];\n\n let totalStartOffset = 0;\n let totalEndOffset = 0;\n\n if (startFixedColumnsNumber) {\n if (selectedRowIds) {\n startColumns.push(generateFixedColumnInlineStyle(1, totalStartOffset, 'left'));\n totalStartOffset += selectionColumnWidth;\n }\n\n for (let i = 0; i < startFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers[i].width);\n if (headerWidth) {\n startColumns.push(\n generateFixedColumnInlineStyle(\n selectedRowIds ? i + 2 : i + 1,\n totalStartOffset,\n 'left',\n ),\n );\n totalStartOffset += headerWidth;\n }\n }\n }\n\n if (endFixedColumnsNumber) {\n for (let i = 0; i < endFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers.slice(-i - 1)[0].width);\n if (headerWidth) {\n endColumns.push(generateFixedColumnInlineStyle(i + 1, totalEndOffset, 'right'));\n totalEndOffset += headerWidth;\n }\n }\n }\n\n if (startColumns.length === 0 && endColumns.length === 0) return null;\n\n return [...startColumns, ...endColumns];\n }, [\n isLoading,\n castWidthToNumber,\n endFixedColumnsNumber,\n generateFixedColumnInlineStyle,\n headers,\n startFixedColumnsNumber,\n selectedRowIds,\n ]);\n\n const fixedColumnsStyle = useMemo(() => generateFixedColumnsStyle(), [generateFixedColumnsStyle]);\n\n const handleSelectRow = useCallback(\n (checked: boolean, row: LegacyDataTableRow) => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (checked) {\n if (selectionMode === 'single') {\n onChangeSelectedRowIds([row.id]);\n return;\n }\n onChangeSelectedRowIds([...selectedRowIds, row.id]);\n return;\n }\n\n const newSelectedRowIds = [...selectedRowIds];\n const index = newSelectedRowIds.findIndex((id) => id === row.id);\n newSelectedRowIds.splice(index, 1);\n onChangeSelectedRowIds(newSelectedRowIds);\n },\n [onChangeSelectedRowIds, selectedRowIds, selectionMode],\n );\n\n const handleSelectAll = useCallback(() => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (selectedRowIds.length === rows.length) {\n onChangeSelectedRowIds([]);\n return;\n }\n\n const rowIds = rows.map((row) => row.id);\n onChangeSelectedRowIds(rowIds);\n }, [onChangeSelectedRowIds, rows, selectedRowIds]);\n\n const handleClickSortableHeader = useCallback(\n (columnId: LegacyDataTableId) => {\n if (sortColumnId === undefined || onChangeSort === undefined) return;\n\n let nextColumnId = sortColumnId;\n let nextDirection: LegacyDataTableSortDirection = 'ascending';\n\n if (sortDirection === 'ascending') {\n nextDirection = 'descending';\n }\n\n if (columnId !== sortColumnId) {\n nextColumnId = columnId;\n nextDirection = 'ascending';\n }\n\n onChangeSort(nextColumnId, nextDirection);\n },\n [onChangeSort, sortColumnId, sortDirection],\n );\n\n const renderHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => {\n let className = '';\n let onClick = () => {};\n let sortIcon = <IconUnsorted />;\n const { tooltip, align, icon, title, sortable, id } = header;\n\n if (sortable) {\n className = 'sortable';\n onClick = () => handleClickSortableHeader(id);\n\n if (sortColumnId === id) {\n sortIcon = sortDirection === 'ascending' ? <IconSortAsc /> : <IconSortDesc />;\n }\n }\n\n const headerContents = (\n <HeaderCellLayout align={align}>\n {icon && icon}\n {title && <span>{title}</span>}\n {sortable && sortIcon}\n </HeaderCellLayout>\n );\n\n return (\n <HeaderCell\n key={id}\n id={`data-table-header-${id}`}\n className={className}\n onClick={onClick}\n align={header.align}\n grow={header.grow}\n style={{ width: header.width || 'auto', ...style }}\n >\n {tooltip ? (\n <Tooltip text={tooltip}>\n <TooltipContent>{headerContents}</TooltipContent>\n </Tooltip>\n ) : (\n headerContents\n )}\n </HeaderCell>\n );\n },\n [handleClickSortableHeader, sortColumnId, sortDirection],\n );\n const renderSkeletonHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => (\n <SkeletonHeaderCell\n key={header.id}\n width={header.width || 'auto'}\n style={style}\n isLoading={isLoading}\n />\n ),\n [isLoading],\n );\n\n const renderHeader = useCallback(() => {\n if (!headers) return null;\n\n const styles: FixedColumnInlineStyle[] | null = generateFixedColumnsStyle();\n const selectionCellStyle = styles ? styles[0].style : {};\n\n return (\n <Head>\n <Row>\n {selectedRowIds && (\n <HeaderCell style={{ width: selectionColumnWidth, ...selectionCellStyle }}>\n {selectionMode === 'multiple' && (\n <Checkbox\n checked={(rows.length > 0 && selectedRowIds?.length === rows.length) || false}\n onChange={handleSelectAll}\n disabled={\n (disabledSelectionInputRowIds && disabledSelectionInputRowIds.length > 0) ||\n isLoading ||\n isEmpty\n }\n ariaLabel=\"Select all\"\n />\n )}\n </HeaderCell>\n )}\n {headers.map((header, index) => {\n const startHeaderIndex = selectedRowIds ? index + 2 : index + 1;\n const endHeaderIndex = index - headers.length;\n const headerCellStyle = styles?.find(\n (style) => style.index === startHeaderIndex || style.index === endHeaderIndex,\n );\n\n return header.skeleton && (isLoading || isError || isEmpty)\n ? renderSkeletonHeaderCell(header, header.skeletonStyle || {})\n : renderHeaderCell(header, headerCellStyle?.style || {});\n })}\n </Row>\n </Head>\n );\n }, [\n generateFixedColumnsStyle,\n handleSelectAll,\n headers,\n isEmpty,\n isError,\n isLoading,\n renderSkeletonHeaderCell,\n renderHeaderCell,\n rows.length,\n selectedRowIds,\n selectionMode,\n disabledSelectionInputRowIds,\n ]);\n\n const renderSelectionInput = useCallback(\n (isSelected: boolean, row: LegacyDataTableRow) => {\n const inputProps = {\n checked: isSelected,\n onChange: (checked: boolean) => handleSelectRow(checked, row),\n disabled: disabledSelectionInputRowIds?.includes(row.id) || false,\n };\n\n if (selectionMode === 'single') {\n return <Radio {...inputProps} />;\n }\n return <Checkbox {...inputProps} />;\n },\n [handleSelectRow, selectionMode, disabledSelectionInputRowIds],\n );\n\n const renderSkeletonSelectionInput = useCallback(\n (rowIndex?: number) => {\n const generalStyle: React.CSSProperties = {\n width: 18,\n height: 18,\n margin: 3,\n animationDuration: '0s',\n };\n\n if (selectionMode === 'single') {\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `radio-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '50%' }}\n />\n );\n }\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `checkbox-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '0.25rem' }}\n />\n );\n },\n [selectionMode],\n );\n\n const getNestedRow = useCallback(\n (nestedRow: LegacyDataTableNestedRow, isHidden: boolean) => {\n if (!renderNestedRow) return null;\n\n const content = renderNestedRow(nestedRow);\n if (!content) return null;\n\n const nestedRowE2eClassName = nestedRow?.data?.e2eClassNames?.row || '';\n\n return (\n <Row key={nestedRow.id} className={`${nestedRowE2eClassName} ${isHidden ? 'hidden' : ''}`}>\n {selectedRowIds && <Cell />}\n {content}\n </Row>\n );\n },\n [renderNestedRow, selectedRowIds],\n );\n\n const renderDefaultLoadingRow = useCallback(\n (rowIndex: number) => {\n if (!headers) return <SkeletonCell />;\n\n // Otherwise render a cell for each column\n const cells = headers.map((header) => <SkeletonCell key={`${rowIndex}-${header.id}`} />);\n\n if (selectedRowIds) cells.unshift(renderSkeletonSelectionInput(rowIndex));\n\n return cells;\n },\n [headers, renderSkeletonSelectionInput, selectedRowIds],\n );\n\n const getFooter = () => {\n if (!renderFooterRow) return null;\n if (isLoading && !renderFooterLoadingRow) return null;\n if (!isLoading && isEmpty) return null;\n return (\n <Footer fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}>\n <Row>\n {selectedRowIds && !omitFooterSelectionCell && <Cell />}\n {!isLoading && renderFooterRow(rows)}\n {isLoading && renderFooterLoadingRow && renderFooterLoadingRow()}\n </Row>\n </Footer>\n );\n };\n\n let lastStartFixedColumnsIndex = startFixedColumnsNumber;\n\n if (selectedRowIds && lastStartFixedColumnsIndex) lastStartFixedColumnsIndex += 1;\n\n const renderedRows = useMemo(\n () =>\n rows.map((row: LegacyDataTableRow) => {\n const { data } = row;\n const isSelected = selectedRowIds ? selectedRowIds.includes(row.id) : false;\n const isExpanded = expandedRowIds ? expandedRowIds.includes(row.id) : true;\n\n const bodyClassName = data?.e2eClassNames?.body;\n const rowE2eClassName = data?.e2eClassNames?.row ?? '';\n const rowClassName = isSelected ? `selected ${rowE2eClassName}` : `${rowE2eClassName}`;\n\n return (\n <Body\n key={row.id}\n className={bodyClassName}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row key={row.id} className={rowClassName} accentColor={row.accentColor}>\n {selectedRowIds && <Cell>{renderSelectionInput(isSelected, row)}</Cell>}\n {renderRow(row)}\n </Row>\n {row.nestedRows && row.nestedRows.map((item) => getNestedRow(item, !isExpanded))}\n </Body>\n );\n }),\n [\n rows,\n expandedRowIds,\n fixedColumnsStyle,\n getNestedRow,\n renderRow,\n renderSelectionInput,\n selectedRowIds,\n ],\n );\n\n /* Loading state */\n\n if (isLoading) {\n const loadingRows = [];\n\n for (let i = 0; i < skeletonRowsNumber; i += 1) {\n loadingRows.push(\n <Body\n key={`loading-row-${i}`}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row>\n {renderLoadingRow ? (\n <>\n {selectedRowIds && renderSkeletonSelectionInput()}\n {renderLoadingRow()}\n </>\n ) : (\n renderDefaultLoadingRow(i)\n )}\n </Row>\n </Body>,\n );\n }\n\n return (\n <WrapperComponent\n ref={wrapperRef}\n scrollDisabled\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {loadingRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n }\n\n /* Empty & Error states */\n\n if (isEmpty || isError) {\n let specificStateValues: SpecificStateType = defaultEmptyState;\n if (customSpecificState) specificStateValues = customSpecificState;\n else if (isError) specificStateValues = defaultErrorState;\n\n return (\n <WrapperComponent scrollDisabled>\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {getFooter()}\n </Table>\n <SpecificState height={bodyHeightInSpecificStates} {...specificStateValues} />\n </WrapperComponent>\n );\n }\n\n /* Populated state */\n\n return (\n <WrapperComponent\n scrollDisabled={false}\n ref={wrapperRef}\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n showScrollbar={showScrollbar}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {renderedRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n};\n\nLegacyDataTable.Cell = Cell;\nLegacyDataTable.ClickableCell = ClickableCell;\nLegacyDataTable.EditableCell = EditableCell;\nLegacyDataTable.SkeletonCell = SkeletonCell;\nLegacyDataTable.SkeletonContent = SkeletonContent;\n"],"names":["React","DoubleArrowIcon","theme","DoubleArrowAscIcon","DoubleArrowDescIcon","Wrapper","WrapperBordered","useRef","useState","ScrollPosition","useEffect","useCallback","useMemo","HeaderCellLayout","HeaderCell","Tooltip","TooltipContent","SkeletonHeaderCell","Head","Row","Checkbox","Radio","SkeletonCell","Cell","Footer","convertFixedColumnInlineStyleToStyled","Body","StickyHeader","Table","defaultEmptyState","defaultErrorState","SpecificState","ClickableCell","EditableCell","SkeletonContent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LegacyDataTable.cjs","sources":["../../../src/components/LegacyDataTable/LegacyDataTable.tsx"],"sourcesContent":["import React, { useRef, useEffect, useState, useCallback, useMemo } from 'react';\nimport { Checkbox } from '../Checkbox';\nimport { Radio } from '../Radio';\n\nimport { Tooltip } from '../Tooltip';\nimport { theme } from '../../theme';\n\nimport {\n SpecificStateType,\n LegacyDataTableHeader,\n LegacyDataTableId,\n LegacyDataTableProps,\n LegacyDataTableRow,\n LegacyDataTableNestedRow,\n LegacyDataTableSortDirection,\n FixedColumnInlineStyle,\n} from './utils/types';\n\nimport {\n Wrapper,\n WrapperBordered,\n Table,\n Head,\n Body,\n Row,\n Cell,\n HeaderCell,\n HeaderCellLayout,\n Footer,\n TooltipContent,\n} from './styled';\n\nimport { SpecificState } from './SpecificState';\n\nimport { ClickableCell, EditableCell } from './cells';\nimport { SkeletonCell } from './cells/SkeletonCell';\n\nimport { defaultEmptyState, defaultErrorState, ScrollPosition } from './utils/constants';\nimport { StickyHeader } from './StickyHeader';\nimport { convertFixedColumnInlineStyleToStyled } from './utils';\nimport { SkeletonHeaderCell } from './cells/SkeletonHeaderCell';\nimport { SkeletonContent } from './SkeletonContent';\n\nimport { DoubleArrowIcon, DoubleArrowAscIcon, DoubleArrowDescIcon } from '../../icons';\n\nexport const IconUnsorted = () => (\n <DoubleArrowIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortAsc = () => (\n <DoubleArrowAscIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortDesc = () => (\n <DoubleArrowDescIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\n\n/**\n * @deprecated LegacyDataTable is deprecated and will be removed in a future release. Use `DataGrid` instead.\n */\nexport const LegacyDataTable = ({\n borderless = false,\n striped = true,\n noWrap = false,\n showScrollbar = false,\n headers,\n rows,\n renderRow,\n renderNestedRow,\n expandedRowIds,\n renderLoadingRow,\n renderFooterRow,\n renderFooterLoadingRow,\n omitFooterSelectionCell = false,\n selectedRowIds,\n disabledSelectionInputRowIds,\n selectionMode = 'multiple',\n onChangeSelectedRowIds,\n sortColumnId,\n sortDirection,\n onChangeSort,\n isError = false,\n isLoading = false,\n skeletonRowsNumber = 5,\n isHeaderSticky = true,\n stickyHeaderStyle,\n customSpecificState,\n bodyHeightInSpecificStates = 375,\n startFixedColumnsNumber,\n endFixedColumnsNumber,\n}: LegacyDataTableProps) => {\n const WrapperComponent = borderless ? Wrapper : WrapperBordered;\n\n const isEmpty = rows ? rows.length === 0 : false;\n const isFixedLayout = Boolean(startFixedColumnsNumber || endFixedColumnsNumber);\n const isFixedColumnsNotEnabled = !startFixedColumnsNumber && !endFixedColumnsNumber;\n\n const tableRef = useRef<HTMLTableElement>(null);\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n const selectionColumnWidth = 58;\n\n const [scrollPosition, setScrollPosition] = useState<ScrollPosition>(ScrollPosition.none);\n\n useEffect(() => {\n let refValue: HTMLDivElement | null = null;\n\n const handleScroll = () => {\n if (!wrapperRef.current || isFixedColumnsNotEnabled) return;\n const el = wrapperRef.current;\n const scrollWidth = el.scrollWidth + 2; // 2 here is 2px which adds by border\n const { scrollLeft } = el;\n const { width } = el.getBoundingClientRect();\n const scrollValue = scrollLeft + width;\n\n if (scrollWidth === width) setScrollPosition(ScrollPosition.none);\n else if (scrollLeft === 0) setScrollPosition(ScrollPosition.start);\n else if (scrollLeft > 0 && scrollValue < scrollWidth)\n setScrollPosition(ScrollPosition.middle);\n else if (scrollValue === scrollWidth) setScrollPosition(ScrollPosition.end);\n };\n\n if (wrapperRef.current) {\n refValue = wrapperRef.current;\n handleScroll();\n wrapperRef.current?.addEventListener('scroll', handleScroll);\n }\n\n return () => {\n refValue?.removeEventListener('scroll', handleScroll);\n };\n }, [tableRef, isFixedColumnsNotEnabled]);\n\n const castWidthToNumber = useCallback((width: number | string | undefined): null | number => {\n if (typeof width === 'string') {\n // eslint-disable-next-line no-console\n console.error(\n \"You can only use a numeric value in the 'width' property when you use fixed columns\",\n );\n return null;\n }\n if (width === undefined) {\n // eslint-disable-next-line no-console\n console.error(\n \"You should provide numeric value in the 'width' attribute in all fixed columns when you use fixed columns\",\n );\n return null;\n }\n\n return width;\n }, []);\n\n const generateFixedColumnInlineStyle = useCallback(\n (index: number, offset: number, side: 'left' | 'right'): FixedColumnInlineStyle => ({\n index: side === 'left' ? index : -index,\n style: {\n position: 'sticky',\n [side]: offset,\n zIndex: 1,\n },\n }),\n [],\n );\n\n const generateFixedColumnsStyle = useCallback((): FixedColumnInlineStyle[] | null => {\n if (!headers || isLoading) return null;\n\n const startColumns: FixedColumnInlineStyle[] = [];\n const endColumns: FixedColumnInlineStyle[] = [];\n\n let totalStartOffset = 0;\n let totalEndOffset = 0;\n\n if (startFixedColumnsNumber) {\n if (selectedRowIds) {\n startColumns.push(generateFixedColumnInlineStyle(1, totalStartOffset, 'left'));\n totalStartOffset += selectionColumnWidth;\n }\n\n for (let i = 0; i < startFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers[i].width);\n if (headerWidth) {\n startColumns.push(\n generateFixedColumnInlineStyle(\n selectedRowIds ? i + 2 : i + 1,\n totalStartOffset,\n 'left',\n ),\n );\n totalStartOffset += headerWidth;\n }\n }\n }\n\n if (endFixedColumnsNumber) {\n for (let i = 0; i < endFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers.slice(-i - 1)[0].width);\n if (headerWidth) {\n endColumns.push(generateFixedColumnInlineStyle(i + 1, totalEndOffset, 'right'));\n totalEndOffset += headerWidth;\n }\n }\n }\n\n if (startColumns.length === 0 && endColumns.length === 0) return null;\n\n return [...startColumns, ...endColumns];\n }, [\n isLoading,\n castWidthToNumber,\n endFixedColumnsNumber,\n generateFixedColumnInlineStyle,\n headers,\n startFixedColumnsNumber,\n selectedRowIds,\n ]);\n\n const fixedColumnsStyle = useMemo(() => generateFixedColumnsStyle(), [generateFixedColumnsStyle]);\n\n const handleSelectRow = useCallback(\n (checked: boolean, row: LegacyDataTableRow) => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (checked) {\n if (selectionMode === 'single') {\n onChangeSelectedRowIds([row.id]);\n return;\n }\n onChangeSelectedRowIds([...selectedRowIds, row.id]);\n return;\n }\n\n const newSelectedRowIds = [...selectedRowIds];\n const index = newSelectedRowIds.findIndex((id) => id === row.id);\n newSelectedRowIds.splice(index, 1);\n onChangeSelectedRowIds(newSelectedRowIds);\n },\n [onChangeSelectedRowIds, selectedRowIds, selectionMode],\n );\n\n const handleSelectAll = useCallback(() => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (selectedRowIds.length === rows.length) {\n onChangeSelectedRowIds([]);\n return;\n }\n\n const rowIds = rows.map((row) => row.id);\n onChangeSelectedRowIds(rowIds);\n }, [onChangeSelectedRowIds, rows, selectedRowIds]);\n\n const handleClickSortableHeader = useCallback(\n (columnId: LegacyDataTableId) => {\n if (sortColumnId === undefined || onChangeSort === undefined) return;\n\n let nextColumnId = sortColumnId;\n let nextDirection: LegacyDataTableSortDirection = 'ascending';\n\n if (sortDirection === 'ascending') {\n nextDirection = 'descending';\n }\n\n if (columnId !== sortColumnId) {\n nextColumnId = columnId;\n nextDirection = 'ascending';\n }\n\n onChangeSort(nextColumnId, nextDirection);\n },\n [onChangeSort, sortColumnId, sortDirection],\n );\n\n const renderHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => {\n let className = '';\n let onClick = () => {};\n let sortIcon = <IconUnsorted />;\n const { tooltip, align, icon, title, sortable, id } = header;\n\n if (sortable) {\n className = 'sortable';\n onClick = () => handleClickSortableHeader(id);\n\n if (sortColumnId === id) {\n sortIcon = sortDirection === 'ascending' ? <IconSortAsc /> : <IconSortDesc />;\n }\n }\n\n const headerContents = (\n <HeaderCellLayout align={align}>\n {icon && icon}\n {title && <span>{title}</span>}\n {sortable && sortIcon}\n </HeaderCellLayout>\n );\n\n return (\n <HeaderCell\n key={id}\n id={`data-table-header-${id}`}\n className={className}\n onClick={onClick}\n align={header.align}\n grow={header.grow}\n style={{ width: header.width || 'auto', ...style }}\n >\n {tooltip ? (\n <Tooltip text={tooltip}>\n <TooltipContent>{headerContents}</TooltipContent>\n </Tooltip>\n ) : (\n headerContents\n )}\n </HeaderCell>\n );\n },\n [handleClickSortableHeader, sortColumnId, sortDirection],\n );\n const renderSkeletonHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => (\n <SkeletonHeaderCell\n key={header.id}\n width={header.width || 'auto'}\n style={style}\n isLoading={isLoading}\n />\n ),\n [isLoading],\n );\n\n const renderHeader = useCallback(() => {\n if (!headers) return null;\n\n const styles: FixedColumnInlineStyle[] | null = generateFixedColumnsStyle();\n const selectionCellStyle = styles ? styles[0].style : {};\n\n return (\n <Head>\n <Row>\n {selectedRowIds && (\n <HeaderCell style={{ width: selectionColumnWidth, ...selectionCellStyle }}>\n {selectionMode === 'multiple' && (\n <Checkbox\n checked={(rows.length > 0 && selectedRowIds?.length === rows.length) || false}\n onChange={handleSelectAll}\n disabled={\n (disabledSelectionInputRowIds && disabledSelectionInputRowIds.length > 0) ||\n isLoading ||\n isEmpty\n }\n ariaLabel=\"Select all\"\n />\n )}\n </HeaderCell>\n )}\n {headers.map((header, index) => {\n const startHeaderIndex = selectedRowIds ? index + 2 : index + 1;\n const endHeaderIndex = index - headers.length;\n const headerCellStyle = styles?.find(\n (style) => style.index === startHeaderIndex || style.index === endHeaderIndex,\n );\n\n return header.skeleton && (isLoading || isError || isEmpty)\n ? renderSkeletonHeaderCell(header, header.skeletonStyle || {})\n : renderHeaderCell(header, headerCellStyle?.style || {});\n })}\n </Row>\n </Head>\n );\n }, [\n generateFixedColumnsStyle,\n handleSelectAll,\n headers,\n isEmpty,\n isError,\n isLoading,\n renderSkeletonHeaderCell,\n renderHeaderCell,\n rows.length,\n selectedRowIds,\n selectionMode,\n disabledSelectionInputRowIds,\n ]);\n\n const renderSelectionInput = useCallback(\n (isSelected: boolean, row: LegacyDataTableRow) => {\n const inputProps = {\n checked: isSelected,\n onChange: (checked: boolean) => handleSelectRow(checked, row),\n disabled: disabledSelectionInputRowIds?.includes(row.id) || false,\n };\n\n if (selectionMode === 'single') {\n return <Radio {...inputProps} />;\n }\n return <Checkbox {...inputProps} />;\n },\n [handleSelectRow, selectionMode, disabledSelectionInputRowIds],\n );\n\n const renderSkeletonSelectionInput = useCallback(\n (rowIndex?: number) => {\n const generalStyle: React.CSSProperties = {\n width: 18,\n height: 18,\n margin: 3,\n animationDuration: '0s',\n };\n\n if (selectionMode === 'single') {\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `radio-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '50%' }}\n />\n );\n }\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `checkbox-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '0.25rem' }}\n />\n );\n },\n [selectionMode],\n );\n\n const getNestedRow = useCallback(\n (nestedRow: LegacyDataTableNestedRow, isHidden: boolean) => {\n if (!renderNestedRow) return null;\n\n const content = renderNestedRow(nestedRow);\n if (!content) return null;\n\n const nestedRowE2eClassName = nestedRow?.data?.e2eClassNames?.row || '';\n\n return (\n <Row key={nestedRow.id} className={`${nestedRowE2eClassName} ${isHidden ? 'hidden' : ''}`}>\n {selectedRowIds && <Cell />}\n {content}\n </Row>\n );\n },\n [renderNestedRow, selectedRowIds],\n );\n\n const renderDefaultLoadingRow = useCallback(\n (rowIndex: number) => {\n if (!headers) return <SkeletonCell />;\n\n // Otherwise render a cell for each column\n const cells = headers.map((header) => <SkeletonCell key={`${rowIndex}-${header.id}`} />);\n\n if (selectedRowIds) cells.unshift(renderSkeletonSelectionInput(rowIndex));\n\n return cells;\n },\n [headers, renderSkeletonSelectionInput, selectedRowIds],\n );\n\n const getFooter = () => {\n if (!renderFooterRow) return null;\n if (isLoading && !renderFooterLoadingRow) return null;\n if (!isLoading && isEmpty) return null;\n return (\n <Footer fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}>\n <Row>\n {selectedRowIds && !omitFooterSelectionCell && <Cell />}\n {!isLoading && renderFooterRow(rows)}\n {isLoading && renderFooterLoadingRow && renderFooterLoadingRow()}\n </Row>\n </Footer>\n );\n };\n\n let lastStartFixedColumnsIndex = startFixedColumnsNumber;\n\n if (selectedRowIds && lastStartFixedColumnsIndex) lastStartFixedColumnsIndex += 1;\n\n const renderedRows = useMemo(\n () =>\n rows.map((row: LegacyDataTableRow) => {\n const { data } = row;\n const isSelected = selectedRowIds ? selectedRowIds.includes(row.id) : false;\n const isExpanded = expandedRowIds ? expandedRowIds.includes(row.id) : true;\n\n const bodyClassName = data?.e2eClassNames?.body;\n const rowE2eClassName = data?.e2eClassNames?.row ?? '';\n const rowClassName = isSelected ? `selected ${rowE2eClassName}` : `${rowE2eClassName}`;\n\n return (\n <Body\n key={row.id}\n className={bodyClassName}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row key={row.id} className={rowClassName} accentColor={row.accentColor}>\n {selectedRowIds && <Cell>{renderSelectionInput(isSelected, row)}</Cell>}\n {renderRow(row)}\n </Row>\n {row.nestedRows && row.nestedRows.map((item) => getNestedRow(item, !isExpanded))}\n </Body>\n );\n }),\n [\n rows,\n expandedRowIds,\n fixedColumnsStyle,\n getNestedRow,\n renderRow,\n renderSelectionInput,\n selectedRowIds,\n ],\n );\n\n /* Loading state */\n\n if (isLoading) {\n const loadingRows = [];\n\n for (let i = 0; i < skeletonRowsNumber; i += 1) {\n loadingRows.push(\n <Body\n key={`loading-row-${i}`}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row>\n {renderLoadingRow ? (\n <>\n {selectedRowIds && renderSkeletonSelectionInput()}\n {renderLoadingRow()}\n </>\n ) : (\n renderDefaultLoadingRow(i)\n )}\n </Row>\n </Body>,\n );\n }\n\n return (\n <WrapperComponent\n ref={wrapperRef}\n scrollDisabled\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {loadingRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n }\n\n /* Empty & Error states */\n\n if (isEmpty || isError) {\n let specificStateValues: SpecificStateType = defaultEmptyState;\n if (customSpecificState) specificStateValues = customSpecificState;\n else if (isError) specificStateValues = defaultErrorState;\n\n return (\n <WrapperComponent scrollDisabled>\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {getFooter()}\n </Table>\n <SpecificState height={bodyHeightInSpecificStates} {...specificStateValues} />\n </WrapperComponent>\n );\n }\n\n /* Populated state */\n\n return (\n <WrapperComponent\n scrollDisabled={false}\n ref={wrapperRef}\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n showScrollbar={showScrollbar}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {renderedRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n};\n\nLegacyDataTable.Cell = Cell;\nLegacyDataTable.ClickableCell = ClickableCell;\nLegacyDataTable.EditableCell = EditableCell;\nLegacyDataTable.SkeletonCell = SkeletonCell;\nLegacyDataTable.SkeletonContent = SkeletonContent;\n"],"names":["React","DoubleArrowIcon","theme","DoubleArrowAscIcon","DoubleArrowDescIcon","Wrapper","WrapperBordered","useRef","useState","ScrollPosition","useEffect","useCallback","useMemo","HeaderCellLayout","HeaderCell","Tooltip","TooltipContent","SkeletonHeaderCell","Head","Row","Checkbox","Radio","SkeletonCell","Cell","Footer","convertFixedColumnInlineStyleToStyled","Body","StickyHeader","Table","defaultEmptyState","defaultErrorState","SpecificState","ClickableCell","EditableCell","SkeletonContent"],"mappings":"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"}
|
|
@@ -4,9 +4,7 @@ export declare const IconUnsorted: () => React.JSX.Element;
|
|
|
4
4
|
export declare const IconSortAsc: () => React.JSX.Element;
|
|
5
5
|
export declare const IconSortDesc: () => React.JSX.Element;
|
|
6
6
|
/**
|
|
7
|
-
* @deprecated
|
|
8
|
-
*
|
|
9
|
-
* Use DataTable instead
|
|
7
|
+
* @deprecated LegacyDataTable is deprecated and will be removed in a future release. Use `DataGrid` instead.
|
|
10
8
|
*/
|
|
11
9
|
export declare const LegacyDataTable: {
|
|
12
10
|
({ borderless, striped, noWrap, showScrollbar, headers, rows, renderRow, renderNestedRow, expandedRowIds, renderLoadingRow, renderFooterRow, renderFooterLoadingRow, omitFooterSelectionCell, selectedRowIds, disabledSelectionInputRowIds, selectionMode, onChangeSelectedRowIds, sortColumnId, sortDirection, onChangeSort, isError, isLoading, skeletonRowsNumber, isHeaderSticky, stickyHeaderStyle, customSpecificState, bodyHeightInSpecificStates, startFixedColumnsNumber, endFixedColumnsNumber, }: LegacyDataTableProps): React.JSX.Element;
|
|
@@ -21,9 +21,7 @@ const IconUnsorted = () => (React__default.createElement(DoubleArrowIcon, { widt
|
|
|
21
21
|
const IconSortAsc = () => (React__default.createElement(DoubleArrowAscIcon, { width: theme.sizes.base, height: theme.sizes.base, color: "lightgrey" }));
|
|
22
22
|
const IconSortDesc = () => (React__default.createElement(DoubleArrowDescIcon, { width: theme.sizes.base, height: theme.sizes.base, color: "lightgrey" }));
|
|
23
23
|
/**
|
|
24
|
-
* @deprecated
|
|
25
|
-
*
|
|
26
|
-
* Use DataTable instead
|
|
24
|
+
* @deprecated LegacyDataTable is deprecated and will be removed in a future release. Use `DataGrid` instead.
|
|
27
25
|
*/
|
|
28
26
|
const LegacyDataTable = ({ borderless = false, striped = true, noWrap = false, showScrollbar = false, headers, rows, renderRow, renderNestedRow, expandedRowIds, renderLoadingRow, renderFooterRow, renderFooterLoadingRow, omitFooterSelectionCell = false, selectedRowIds, disabledSelectionInputRowIds, selectionMode = 'multiple', onChangeSelectedRowIds, sortColumnId, sortDirection, onChangeSort, isError = false, isLoading = false, skeletonRowsNumber = 5, isHeaderSticky = true, stickyHeaderStyle, customSpecificState, bodyHeightInSpecificStates = 375, startFixedColumnsNumber, endFixedColumnsNumber, }) => {
|
|
29
27
|
const WrapperComponent = borderless ? Wrapper : WrapperBordered;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegacyDataTable.js","sources":["../../../src/components/LegacyDataTable/LegacyDataTable.tsx"],"sourcesContent":["import React, { useRef, useEffect, useState, useCallback, useMemo } from 'react';\nimport { Checkbox } from '../Checkbox';\nimport { Radio } from '../Radio';\n\nimport { Tooltip } from '../Tooltip';\nimport { theme } from '../../theme';\n\nimport {\n SpecificStateType,\n LegacyDataTableHeader,\n LegacyDataTableId,\n LegacyDataTableProps,\n LegacyDataTableRow,\n LegacyDataTableNestedRow,\n LegacyDataTableSortDirection,\n FixedColumnInlineStyle,\n} from './utils/types';\n\nimport {\n Wrapper,\n WrapperBordered,\n Table,\n Head,\n Body,\n Row,\n Cell,\n HeaderCell,\n HeaderCellLayout,\n Footer,\n TooltipContent,\n} from './styled';\n\nimport { SpecificState } from './SpecificState';\n\nimport { ClickableCell, EditableCell } from './cells';\nimport { SkeletonCell } from './cells/SkeletonCell';\n\nimport { defaultEmptyState, defaultErrorState, ScrollPosition } from './utils/constants';\nimport { StickyHeader } from './StickyHeader';\nimport { convertFixedColumnInlineStyleToStyled } from './utils';\nimport { SkeletonHeaderCell } from './cells/SkeletonHeaderCell';\nimport { SkeletonContent } from './SkeletonContent';\n\nimport { DoubleArrowIcon, DoubleArrowAscIcon, DoubleArrowDescIcon } from '../../icons';\n\nexport const IconUnsorted = () => (\n <DoubleArrowIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortAsc = () => (\n <DoubleArrowAscIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortDesc = () => (\n <DoubleArrowDescIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\n\n/**\n * @deprecated\n *\n * Use DataTable instead\n */\nexport const LegacyDataTable = ({\n borderless = false,\n striped = true,\n noWrap = false,\n showScrollbar = false,\n headers,\n rows,\n renderRow,\n renderNestedRow,\n expandedRowIds,\n renderLoadingRow,\n renderFooterRow,\n renderFooterLoadingRow,\n omitFooterSelectionCell = false,\n selectedRowIds,\n disabledSelectionInputRowIds,\n selectionMode = 'multiple',\n onChangeSelectedRowIds,\n sortColumnId,\n sortDirection,\n onChangeSort,\n isError = false,\n isLoading = false,\n skeletonRowsNumber = 5,\n isHeaderSticky = true,\n stickyHeaderStyle,\n customSpecificState,\n bodyHeightInSpecificStates = 375,\n startFixedColumnsNumber,\n endFixedColumnsNumber,\n}: LegacyDataTableProps) => {\n const WrapperComponent = borderless ? Wrapper : WrapperBordered;\n\n const isEmpty = rows ? rows.length === 0 : false;\n const isFixedLayout = Boolean(startFixedColumnsNumber || endFixedColumnsNumber);\n const isFixedColumnsNotEnabled = !startFixedColumnsNumber && !endFixedColumnsNumber;\n\n const tableRef = useRef<HTMLTableElement>(null);\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n const selectionColumnWidth = 58;\n\n const [scrollPosition, setScrollPosition] = useState<ScrollPosition>(ScrollPosition.none);\n\n useEffect(() => {\n let refValue: HTMLDivElement | null = null;\n\n const handleScroll = () => {\n if (!wrapperRef.current || isFixedColumnsNotEnabled) return;\n const el = wrapperRef.current;\n const scrollWidth = el.scrollWidth + 2; // 2 here is 2px which adds by border\n const { scrollLeft } = el;\n const { width } = el.getBoundingClientRect();\n const scrollValue = scrollLeft + width;\n\n if (scrollWidth === width) setScrollPosition(ScrollPosition.none);\n else if (scrollLeft === 0) setScrollPosition(ScrollPosition.start);\n else if (scrollLeft > 0 && scrollValue < scrollWidth)\n setScrollPosition(ScrollPosition.middle);\n else if (scrollValue === scrollWidth) setScrollPosition(ScrollPosition.end);\n };\n\n if (wrapperRef.current) {\n refValue = wrapperRef.current;\n handleScroll();\n wrapperRef.current?.addEventListener('scroll', handleScroll);\n }\n\n return () => {\n refValue?.removeEventListener('scroll', handleScroll);\n };\n }, [tableRef, isFixedColumnsNotEnabled]);\n\n const castWidthToNumber = useCallback((width: number | string | undefined): null | number => {\n if (typeof width === 'string') {\n // eslint-disable-next-line no-console\n console.error(\n \"You can only use a numeric value in the 'width' property when you use fixed columns\",\n );\n return null;\n }\n if (width === undefined) {\n // eslint-disable-next-line no-console\n console.error(\n \"You should provide numeric value in the 'width' attribute in all fixed columns when you use fixed columns\",\n );\n return null;\n }\n\n return width;\n }, []);\n\n const generateFixedColumnInlineStyle = useCallback(\n (index: number, offset: number, side: 'left' | 'right'): FixedColumnInlineStyle => ({\n index: side === 'left' ? index : -index,\n style: {\n position: 'sticky',\n [side]: offset,\n zIndex: 1,\n },\n }),\n [],\n );\n\n const generateFixedColumnsStyle = useCallback((): FixedColumnInlineStyle[] | null => {\n if (!headers || isLoading) return null;\n\n const startColumns: FixedColumnInlineStyle[] = [];\n const endColumns: FixedColumnInlineStyle[] = [];\n\n let totalStartOffset = 0;\n let totalEndOffset = 0;\n\n if (startFixedColumnsNumber) {\n if (selectedRowIds) {\n startColumns.push(generateFixedColumnInlineStyle(1, totalStartOffset, 'left'));\n totalStartOffset += selectionColumnWidth;\n }\n\n for (let i = 0; i < startFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers[i].width);\n if (headerWidth) {\n startColumns.push(\n generateFixedColumnInlineStyle(\n selectedRowIds ? i + 2 : i + 1,\n totalStartOffset,\n 'left',\n ),\n );\n totalStartOffset += headerWidth;\n }\n }\n }\n\n if (endFixedColumnsNumber) {\n for (let i = 0; i < endFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers.slice(-i - 1)[0].width);\n if (headerWidth) {\n endColumns.push(generateFixedColumnInlineStyle(i + 1, totalEndOffset, 'right'));\n totalEndOffset += headerWidth;\n }\n }\n }\n\n if (startColumns.length === 0 && endColumns.length === 0) return null;\n\n return [...startColumns, ...endColumns];\n }, [\n isLoading,\n castWidthToNumber,\n endFixedColumnsNumber,\n generateFixedColumnInlineStyle,\n headers,\n startFixedColumnsNumber,\n selectedRowIds,\n ]);\n\n const fixedColumnsStyle = useMemo(() => generateFixedColumnsStyle(), [generateFixedColumnsStyle]);\n\n const handleSelectRow = useCallback(\n (checked: boolean, row: LegacyDataTableRow) => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (checked) {\n if (selectionMode === 'single') {\n onChangeSelectedRowIds([row.id]);\n return;\n }\n onChangeSelectedRowIds([...selectedRowIds, row.id]);\n return;\n }\n\n const newSelectedRowIds = [...selectedRowIds];\n const index = newSelectedRowIds.findIndex((id) => id === row.id);\n newSelectedRowIds.splice(index, 1);\n onChangeSelectedRowIds(newSelectedRowIds);\n },\n [onChangeSelectedRowIds, selectedRowIds, selectionMode],\n );\n\n const handleSelectAll = useCallback(() => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (selectedRowIds.length === rows.length) {\n onChangeSelectedRowIds([]);\n return;\n }\n\n const rowIds = rows.map((row) => row.id);\n onChangeSelectedRowIds(rowIds);\n }, [onChangeSelectedRowIds, rows, selectedRowIds]);\n\n const handleClickSortableHeader = useCallback(\n (columnId: LegacyDataTableId) => {\n if (sortColumnId === undefined || onChangeSort === undefined) return;\n\n let nextColumnId = sortColumnId;\n let nextDirection: LegacyDataTableSortDirection = 'ascending';\n\n if (sortDirection === 'ascending') {\n nextDirection = 'descending';\n }\n\n if (columnId !== sortColumnId) {\n nextColumnId = columnId;\n nextDirection = 'ascending';\n }\n\n onChangeSort(nextColumnId, nextDirection);\n },\n [onChangeSort, sortColumnId, sortDirection],\n );\n\n const renderHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => {\n let className = '';\n let onClick = () => {};\n let sortIcon = <IconUnsorted />;\n const { tooltip, align, icon, title, sortable, id } = header;\n\n if (sortable) {\n className = 'sortable';\n onClick = () => handleClickSortableHeader(id);\n\n if (sortColumnId === id) {\n sortIcon = sortDirection === 'ascending' ? <IconSortAsc /> : <IconSortDesc />;\n }\n }\n\n const headerContents = (\n <HeaderCellLayout align={align}>\n {icon && icon}\n {title && <span>{title}</span>}\n {sortable && sortIcon}\n </HeaderCellLayout>\n );\n\n return (\n <HeaderCell\n key={id}\n id={`data-table-header-${id}`}\n className={className}\n onClick={onClick}\n align={header.align}\n grow={header.grow}\n style={{ width: header.width || 'auto', ...style }}\n >\n {tooltip ? (\n <Tooltip text={tooltip}>\n <TooltipContent>{headerContents}</TooltipContent>\n </Tooltip>\n ) : (\n headerContents\n )}\n </HeaderCell>\n );\n },\n [handleClickSortableHeader, sortColumnId, sortDirection],\n );\n const renderSkeletonHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => (\n <SkeletonHeaderCell\n key={header.id}\n width={header.width || 'auto'}\n style={style}\n isLoading={isLoading}\n />\n ),\n [isLoading],\n );\n\n const renderHeader = useCallback(() => {\n if (!headers) return null;\n\n const styles: FixedColumnInlineStyle[] | null = generateFixedColumnsStyle();\n const selectionCellStyle = styles ? styles[0].style : {};\n\n return (\n <Head>\n <Row>\n {selectedRowIds && (\n <HeaderCell style={{ width: selectionColumnWidth, ...selectionCellStyle }}>\n {selectionMode === 'multiple' && (\n <Checkbox\n checked={(rows.length > 0 && selectedRowIds?.length === rows.length) || false}\n onChange={handleSelectAll}\n disabled={\n (disabledSelectionInputRowIds && disabledSelectionInputRowIds.length > 0) ||\n isLoading ||\n isEmpty\n }\n ariaLabel=\"Select all\"\n />\n )}\n </HeaderCell>\n )}\n {headers.map((header, index) => {\n const startHeaderIndex = selectedRowIds ? index + 2 : index + 1;\n const endHeaderIndex = index - headers.length;\n const headerCellStyle = styles?.find(\n (style) => style.index === startHeaderIndex || style.index === endHeaderIndex,\n );\n\n return header.skeleton && (isLoading || isError || isEmpty)\n ? renderSkeletonHeaderCell(header, header.skeletonStyle || {})\n : renderHeaderCell(header, headerCellStyle?.style || {});\n })}\n </Row>\n </Head>\n );\n }, [\n generateFixedColumnsStyle,\n handleSelectAll,\n headers,\n isEmpty,\n isError,\n isLoading,\n renderSkeletonHeaderCell,\n renderHeaderCell,\n rows.length,\n selectedRowIds,\n selectionMode,\n disabledSelectionInputRowIds,\n ]);\n\n const renderSelectionInput = useCallback(\n (isSelected: boolean, row: LegacyDataTableRow) => {\n const inputProps = {\n checked: isSelected,\n onChange: (checked: boolean) => handleSelectRow(checked, row),\n disabled: disabledSelectionInputRowIds?.includes(row.id) || false,\n };\n\n if (selectionMode === 'single') {\n return <Radio {...inputProps} />;\n }\n return <Checkbox {...inputProps} />;\n },\n [handleSelectRow, selectionMode, disabledSelectionInputRowIds],\n );\n\n const renderSkeletonSelectionInput = useCallback(\n (rowIndex?: number) => {\n const generalStyle: React.CSSProperties = {\n width: 18,\n height: 18,\n margin: 3,\n animationDuration: '0s',\n };\n\n if (selectionMode === 'single') {\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `radio-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '50%' }}\n />\n );\n }\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `checkbox-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '0.25rem' }}\n />\n );\n },\n [selectionMode],\n );\n\n const getNestedRow = useCallback(\n (nestedRow: LegacyDataTableNestedRow, isHidden: boolean) => {\n if (!renderNestedRow) return null;\n\n const content = renderNestedRow(nestedRow);\n if (!content) return null;\n\n const nestedRowE2eClassName = nestedRow?.data?.e2eClassNames?.row || '';\n\n return (\n <Row key={nestedRow.id} className={`${nestedRowE2eClassName} ${isHidden ? 'hidden' : ''}`}>\n {selectedRowIds && <Cell />}\n {content}\n </Row>\n );\n },\n [renderNestedRow, selectedRowIds],\n );\n\n const renderDefaultLoadingRow = useCallback(\n (rowIndex: number) => {\n if (!headers) return <SkeletonCell />;\n\n // Otherwise render a cell for each column\n const cells = headers.map((header) => <SkeletonCell key={`${rowIndex}-${header.id}`} />);\n\n if (selectedRowIds) cells.unshift(renderSkeletonSelectionInput(rowIndex));\n\n return cells;\n },\n [headers, renderSkeletonSelectionInput, selectedRowIds],\n );\n\n const getFooter = () => {\n if (!renderFooterRow) return null;\n if (isLoading && !renderFooterLoadingRow) return null;\n if (!isLoading && isEmpty) return null;\n return (\n <Footer fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}>\n <Row>\n {selectedRowIds && !omitFooterSelectionCell && <Cell />}\n {!isLoading && renderFooterRow(rows)}\n {isLoading && renderFooterLoadingRow && renderFooterLoadingRow()}\n </Row>\n </Footer>\n );\n };\n\n let lastStartFixedColumnsIndex = startFixedColumnsNumber;\n\n if (selectedRowIds && lastStartFixedColumnsIndex) lastStartFixedColumnsIndex += 1;\n\n const renderedRows = useMemo(\n () =>\n rows.map((row: LegacyDataTableRow) => {\n const { data } = row;\n const isSelected = selectedRowIds ? selectedRowIds.includes(row.id) : false;\n const isExpanded = expandedRowIds ? expandedRowIds.includes(row.id) : true;\n\n const bodyClassName = data?.e2eClassNames?.body;\n const rowE2eClassName = data?.e2eClassNames?.row ?? '';\n const rowClassName = isSelected ? `selected ${rowE2eClassName}` : `${rowE2eClassName}`;\n\n return (\n <Body\n key={row.id}\n className={bodyClassName}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row key={row.id} className={rowClassName} accentColor={row.accentColor}>\n {selectedRowIds && <Cell>{renderSelectionInput(isSelected, row)}</Cell>}\n {renderRow(row)}\n </Row>\n {row.nestedRows && row.nestedRows.map((item) => getNestedRow(item, !isExpanded))}\n </Body>\n );\n }),\n [\n rows,\n expandedRowIds,\n fixedColumnsStyle,\n getNestedRow,\n renderRow,\n renderSelectionInput,\n selectedRowIds,\n ],\n );\n\n /* Loading state */\n\n if (isLoading) {\n const loadingRows = [];\n\n for (let i = 0; i < skeletonRowsNumber; i += 1) {\n loadingRows.push(\n <Body\n key={`loading-row-${i}`}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row>\n {renderLoadingRow ? (\n <>\n {selectedRowIds && renderSkeletonSelectionInput()}\n {renderLoadingRow()}\n </>\n ) : (\n renderDefaultLoadingRow(i)\n )}\n </Row>\n </Body>,\n );\n }\n\n return (\n <WrapperComponent\n ref={wrapperRef}\n scrollDisabled\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {loadingRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n }\n\n /* Empty & Error states */\n\n if (isEmpty || isError) {\n let specificStateValues: SpecificStateType = defaultEmptyState;\n if (customSpecificState) specificStateValues = customSpecificState;\n else if (isError) specificStateValues = defaultErrorState;\n\n return (\n <WrapperComponent scrollDisabled>\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {getFooter()}\n </Table>\n <SpecificState height={bodyHeightInSpecificStates} {...specificStateValues} />\n </WrapperComponent>\n );\n }\n\n /* Populated state */\n\n return (\n <WrapperComponent\n scrollDisabled={false}\n ref={wrapperRef}\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n showScrollbar={showScrollbar}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {renderedRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n};\n\nLegacyDataTable.Cell = Cell;\nLegacyDataTable.ClickableCell = ClickableCell;\nLegacyDataTable.EditableCell = EditableCell;\nLegacyDataTable.SkeletonCell = SkeletonCell;\nLegacyDataTable.SkeletonContent = SkeletonContent;\n"],"names":["React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LegacyDataTable.js","sources":["../../../src/components/LegacyDataTable/LegacyDataTable.tsx"],"sourcesContent":["import React, { useRef, useEffect, useState, useCallback, useMemo } from 'react';\nimport { Checkbox } from '../Checkbox';\nimport { Radio } from '../Radio';\n\nimport { Tooltip } from '../Tooltip';\nimport { theme } from '../../theme';\n\nimport {\n SpecificStateType,\n LegacyDataTableHeader,\n LegacyDataTableId,\n LegacyDataTableProps,\n LegacyDataTableRow,\n LegacyDataTableNestedRow,\n LegacyDataTableSortDirection,\n FixedColumnInlineStyle,\n} from './utils/types';\n\nimport {\n Wrapper,\n WrapperBordered,\n Table,\n Head,\n Body,\n Row,\n Cell,\n HeaderCell,\n HeaderCellLayout,\n Footer,\n TooltipContent,\n} from './styled';\n\nimport { SpecificState } from './SpecificState';\n\nimport { ClickableCell, EditableCell } from './cells';\nimport { SkeletonCell } from './cells/SkeletonCell';\n\nimport { defaultEmptyState, defaultErrorState, ScrollPosition } from './utils/constants';\nimport { StickyHeader } from './StickyHeader';\nimport { convertFixedColumnInlineStyleToStyled } from './utils';\nimport { SkeletonHeaderCell } from './cells/SkeletonHeaderCell';\nimport { SkeletonContent } from './SkeletonContent';\n\nimport { DoubleArrowIcon, DoubleArrowAscIcon, DoubleArrowDescIcon } from '../../icons';\n\nexport const IconUnsorted = () => (\n <DoubleArrowIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortAsc = () => (\n <DoubleArrowAscIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\nexport const IconSortDesc = () => (\n <DoubleArrowDescIcon width={theme.sizes.base} height={theme.sizes.base} color=\"lightgrey\" />\n);\n\n/**\n * @deprecated LegacyDataTable is deprecated and will be removed in a future release. Use `DataGrid` instead.\n */\nexport const LegacyDataTable = ({\n borderless = false,\n striped = true,\n noWrap = false,\n showScrollbar = false,\n headers,\n rows,\n renderRow,\n renderNestedRow,\n expandedRowIds,\n renderLoadingRow,\n renderFooterRow,\n renderFooterLoadingRow,\n omitFooterSelectionCell = false,\n selectedRowIds,\n disabledSelectionInputRowIds,\n selectionMode = 'multiple',\n onChangeSelectedRowIds,\n sortColumnId,\n sortDirection,\n onChangeSort,\n isError = false,\n isLoading = false,\n skeletonRowsNumber = 5,\n isHeaderSticky = true,\n stickyHeaderStyle,\n customSpecificState,\n bodyHeightInSpecificStates = 375,\n startFixedColumnsNumber,\n endFixedColumnsNumber,\n}: LegacyDataTableProps) => {\n const WrapperComponent = borderless ? Wrapper : WrapperBordered;\n\n const isEmpty = rows ? rows.length === 0 : false;\n const isFixedLayout = Boolean(startFixedColumnsNumber || endFixedColumnsNumber);\n const isFixedColumnsNotEnabled = !startFixedColumnsNumber && !endFixedColumnsNumber;\n\n const tableRef = useRef<HTMLTableElement>(null);\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n const selectionColumnWidth = 58;\n\n const [scrollPosition, setScrollPosition] = useState<ScrollPosition>(ScrollPosition.none);\n\n useEffect(() => {\n let refValue: HTMLDivElement | null = null;\n\n const handleScroll = () => {\n if (!wrapperRef.current || isFixedColumnsNotEnabled) return;\n const el = wrapperRef.current;\n const scrollWidth = el.scrollWidth + 2; // 2 here is 2px which adds by border\n const { scrollLeft } = el;\n const { width } = el.getBoundingClientRect();\n const scrollValue = scrollLeft + width;\n\n if (scrollWidth === width) setScrollPosition(ScrollPosition.none);\n else if (scrollLeft === 0) setScrollPosition(ScrollPosition.start);\n else if (scrollLeft > 0 && scrollValue < scrollWidth)\n setScrollPosition(ScrollPosition.middle);\n else if (scrollValue === scrollWidth) setScrollPosition(ScrollPosition.end);\n };\n\n if (wrapperRef.current) {\n refValue = wrapperRef.current;\n handleScroll();\n wrapperRef.current?.addEventListener('scroll', handleScroll);\n }\n\n return () => {\n refValue?.removeEventListener('scroll', handleScroll);\n };\n }, [tableRef, isFixedColumnsNotEnabled]);\n\n const castWidthToNumber = useCallback((width: number | string | undefined): null | number => {\n if (typeof width === 'string') {\n // eslint-disable-next-line no-console\n console.error(\n \"You can only use a numeric value in the 'width' property when you use fixed columns\",\n );\n return null;\n }\n if (width === undefined) {\n // eslint-disable-next-line no-console\n console.error(\n \"You should provide numeric value in the 'width' attribute in all fixed columns when you use fixed columns\",\n );\n return null;\n }\n\n return width;\n }, []);\n\n const generateFixedColumnInlineStyle = useCallback(\n (index: number, offset: number, side: 'left' | 'right'): FixedColumnInlineStyle => ({\n index: side === 'left' ? index : -index,\n style: {\n position: 'sticky',\n [side]: offset,\n zIndex: 1,\n },\n }),\n [],\n );\n\n const generateFixedColumnsStyle = useCallback((): FixedColumnInlineStyle[] | null => {\n if (!headers || isLoading) return null;\n\n const startColumns: FixedColumnInlineStyle[] = [];\n const endColumns: FixedColumnInlineStyle[] = [];\n\n let totalStartOffset = 0;\n let totalEndOffset = 0;\n\n if (startFixedColumnsNumber) {\n if (selectedRowIds) {\n startColumns.push(generateFixedColumnInlineStyle(1, totalStartOffset, 'left'));\n totalStartOffset += selectionColumnWidth;\n }\n\n for (let i = 0; i < startFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers[i].width);\n if (headerWidth) {\n startColumns.push(\n generateFixedColumnInlineStyle(\n selectedRowIds ? i + 2 : i + 1,\n totalStartOffset,\n 'left',\n ),\n );\n totalStartOffset += headerWidth;\n }\n }\n }\n\n if (endFixedColumnsNumber) {\n for (let i = 0; i < endFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers.slice(-i - 1)[0].width);\n if (headerWidth) {\n endColumns.push(generateFixedColumnInlineStyle(i + 1, totalEndOffset, 'right'));\n totalEndOffset += headerWidth;\n }\n }\n }\n\n if (startColumns.length === 0 && endColumns.length === 0) return null;\n\n return [...startColumns, ...endColumns];\n }, [\n isLoading,\n castWidthToNumber,\n endFixedColumnsNumber,\n generateFixedColumnInlineStyle,\n headers,\n startFixedColumnsNumber,\n selectedRowIds,\n ]);\n\n const fixedColumnsStyle = useMemo(() => generateFixedColumnsStyle(), [generateFixedColumnsStyle]);\n\n const handleSelectRow = useCallback(\n (checked: boolean, row: LegacyDataTableRow) => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (checked) {\n if (selectionMode === 'single') {\n onChangeSelectedRowIds([row.id]);\n return;\n }\n onChangeSelectedRowIds([...selectedRowIds, row.id]);\n return;\n }\n\n const newSelectedRowIds = [...selectedRowIds];\n const index = newSelectedRowIds.findIndex((id) => id === row.id);\n newSelectedRowIds.splice(index, 1);\n onChangeSelectedRowIds(newSelectedRowIds);\n },\n [onChangeSelectedRowIds, selectedRowIds, selectionMode],\n );\n\n const handleSelectAll = useCallback(() => {\n if (!selectedRowIds || !onChangeSelectedRowIds) return;\n\n if (selectedRowIds.length === rows.length) {\n onChangeSelectedRowIds([]);\n return;\n }\n\n const rowIds = rows.map((row) => row.id);\n onChangeSelectedRowIds(rowIds);\n }, [onChangeSelectedRowIds, rows, selectedRowIds]);\n\n const handleClickSortableHeader = useCallback(\n (columnId: LegacyDataTableId) => {\n if (sortColumnId === undefined || onChangeSort === undefined) return;\n\n let nextColumnId = sortColumnId;\n let nextDirection: LegacyDataTableSortDirection = 'ascending';\n\n if (sortDirection === 'ascending') {\n nextDirection = 'descending';\n }\n\n if (columnId !== sortColumnId) {\n nextColumnId = columnId;\n nextDirection = 'ascending';\n }\n\n onChangeSort(nextColumnId, nextDirection);\n },\n [onChangeSort, sortColumnId, sortDirection],\n );\n\n const renderHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => {\n let className = '';\n let onClick = () => {};\n let sortIcon = <IconUnsorted />;\n const { tooltip, align, icon, title, sortable, id } = header;\n\n if (sortable) {\n className = 'sortable';\n onClick = () => handleClickSortableHeader(id);\n\n if (sortColumnId === id) {\n sortIcon = sortDirection === 'ascending' ? <IconSortAsc /> : <IconSortDesc />;\n }\n }\n\n const headerContents = (\n <HeaderCellLayout align={align}>\n {icon && icon}\n {title && <span>{title}</span>}\n {sortable && sortIcon}\n </HeaderCellLayout>\n );\n\n return (\n <HeaderCell\n key={id}\n id={`data-table-header-${id}`}\n className={className}\n onClick={onClick}\n align={header.align}\n grow={header.grow}\n style={{ width: header.width || 'auto', ...style }}\n >\n {tooltip ? (\n <Tooltip text={tooltip}>\n <TooltipContent>{headerContents}</TooltipContent>\n </Tooltip>\n ) : (\n headerContents\n )}\n </HeaderCell>\n );\n },\n [handleClickSortableHeader, sortColumnId, sortDirection],\n );\n const renderSkeletonHeaderCell = useCallback(\n (header: LegacyDataTableHeader, style: React.CSSProperties) => (\n <SkeletonHeaderCell\n key={header.id}\n width={header.width || 'auto'}\n style={style}\n isLoading={isLoading}\n />\n ),\n [isLoading],\n );\n\n const renderHeader = useCallback(() => {\n if (!headers) return null;\n\n const styles: FixedColumnInlineStyle[] | null = generateFixedColumnsStyle();\n const selectionCellStyle = styles ? styles[0].style : {};\n\n return (\n <Head>\n <Row>\n {selectedRowIds && (\n <HeaderCell style={{ width: selectionColumnWidth, ...selectionCellStyle }}>\n {selectionMode === 'multiple' && (\n <Checkbox\n checked={(rows.length > 0 && selectedRowIds?.length === rows.length) || false}\n onChange={handleSelectAll}\n disabled={\n (disabledSelectionInputRowIds && disabledSelectionInputRowIds.length > 0) ||\n isLoading ||\n isEmpty\n }\n ariaLabel=\"Select all\"\n />\n )}\n </HeaderCell>\n )}\n {headers.map((header, index) => {\n const startHeaderIndex = selectedRowIds ? index + 2 : index + 1;\n const endHeaderIndex = index - headers.length;\n const headerCellStyle = styles?.find(\n (style) => style.index === startHeaderIndex || style.index === endHeaderIndex,\n );\n\n return header.skeleton && (isLoading || isError || isEmpty)\n ? renderSkeletonHeaderCell(header, header.skeletonStyle || {})\n : renderHeaderCell(header, headerCellStyle?.style || {});\n })}\n </Row>\n </Head>\n );\n }, [\n generateFixedColumnsStyle,\n handleSelectAll,\n headers,\n isEmpty,\n isError,\n isLoading,\n renderSkeletonHeaderCell,\n renderHeaderCell,\n rows.length,\n selectedRowIds,\n selectionMode,\n disabledSelectionInputRowIds,\n ]);\n\n const renderSelectionInput = useCallback(\n (isSelected: boolean, row: LegacyDataTableRow) => {\n const inputProps = {\n checked: isSelected,\n onChange: (checked: boolean) => handleSelectRow(checked, row),\n disabled: disabledSelectionInputRowIds?.includes(row.id) || false,\n };\n\n if (selectionMode === 'single') {\n return <Radio {...inputProps} />;\n }\n return <Checkbox {...inputProps} />;\n },\n [handleSelectRow, selectionMode, disabledSelectionInputRowIds],\n );\n\n const renderSkeletonSelectionInput = useCallback(\n (rowIndex?: number) => {\n const generalStyle: React.CSSProperties = {\n width: 18,\n height: 18,\n margin: 3,\n animationDuration: '0s',\n };\n\n if (selectionMode === 'single') {\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `radio-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '50%' }}\n />\n );\n }\n return (\n <SkeletonCell\n key={rowIndex === undefined ? null : `checkbox-skeleton-${rowIndex}`}\n style={{ ...generalStyle, borderRadius: '0.25rem' }}\n />\n );\n },\n [selectionMode],\n );\n\n const getNestedRow = useCallback(\n (nestedRow: LegacyDataTableNestedRow, isHidden: boolean) => {\n if (!renderNestedRow) return null;\n\n const content = renderNestedRow(nestedRow);\n if (!content) return null;\n\n const nestedRowE2eClassName = nestedRow?.data?.e2eClassNames?.row || '';\n\n return (\n <Row key={nestedRow.id} className={`${nestedRowE2eClassName} ${isHidden ? 'hidden' : ''}`}>\n {selectedRowIds && <Cell />}\n {content}\n </Row>\n );\n },\n [renderNestedRow, selectedRowIds],\n );\n\n const renderDefaultLoadingRow = useCallback(\n (rowIndex: number) => {\n if (!headers) return <SkeletonCell />;\n\n // Otherwise render a cell for each column\n const cells = headers.map((header) => <SkeletonCell key={`${rowIndex}-${header.id}`} />);\n\n if (selectedRowIds) cells.unshift(renderSkeletonSelectionInput(rowIndex));\n\n return cells;\n },\n [headers, renderSkeletonSelectionInput, selectedRowIds],\n );\n\n const getFooter = () => {\n if (!renderFooterRow) return null;\n if (isLoading && !renderFooterLoadingRow) return null;\n if (!isLoading && isEmpty) return null;\n return (\n <Footer fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}>\n <Row>\n {selectedRowIds && !omitFooterSelectionCell && <Cell />}\n {!isLoading && renderFooterRow(rows)}\n {isLoading && renderFooterLoadingRow && renderFooterLoadingRow()}\n </Row>\n </Footer>\n );\n };\n\n let lastStartFixedColumnsIndex = startFixedColumnsNumber;\n\n if (selectedRowIds && lastStartFixedColumnsIndex) lastStartFixedColumnsIndex += 1;\n\n const renderedRows = useMemo(\n () =>\n rows.map((row: LegacyDataTableRow) => {\n const { data } = row;\n const isSelected = selectedRowIds ? selectedRowIds.includes(row.id) : false;\n const isExpanded = expandedRowIds ? expandedRowIds.includes(row.id) : true;\n\n const bodyClassName = data?.e2eClassNames?.body;\n const rowE2eClassName = data?.e2eClassNames?.row ?? '';\n const rowClassName = isSelected ? `selected ${rowE2eClassName}` : `${rowE2eClassName}`;\n\n return (\n <Body\n key={row.id}\n className={bodyClassName}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row key={row.id} className={rowClassName} accentColor={row.accentColor}>\n {selectedRowIds && <Cell>{renderSelectionInput(isSelected, row)}</Cell>}\n {renderRow(row)}\n </Row>\n {row.nestedRows && row.nestedRows.map((item) => getNestedRow(item, !isExpanded))}\n </Body>\n );\n }),\n [\n rows,\n expandedRowIds,\n fixedColumnsStyle,\n getNestedRow,\n renderRow,\n renderSelectionInput,\n selectedRowIds,\n ],\n );\n\n /* Loading state */\n\n if (isLoading) {\n const loadingRows = [];\n\n for (let i = 0; i < skeletonRowsNumber; i += 1) {\n loadingRows.push(\n <Body\n key={`loading-row-${i}`}\n fixedColumnsStyle={convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || [])}\n >\n <Row>\n {renderLoadingRow ? (\n <>\n {selectedRowIds && renderSkeletonSelectionInput()}\n {renderLoadingRow()}\n </>\n ) : (\n renderDefaultLoadingRow(i)\n )}\n </Row>\n </Body>,\n );\n }\n\n return (\n <WrapperComponent\n ref={wrapperRef}\n scrollDisabled\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {loadingRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n }\n\n /* Empty & Error states */\n\n if (isEmpty || isError) {\n let specificStateValues: SpecificStateType = defaultEmptyState;\n if (customSpecificState) specificStateValues = customSpecificState;\n else if (isError) specificStateValues = defaultErrorState;\n\n return (\n <WrapperComponent scrollDisabled>\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {getFooter()}\n </Table>\n <SpecificState height={bodyHeightInSpecificStates} {...specificStateValues} />\n </WrapperComponent>\n );\n }\n\n /* Populated state */\n\n return (\n <WrapperComponent\n scrollDisabled={false}\n ref={wrapperRef}\n scrollPosition={scrollPosition}\n lastStartFixedColumnsIndex={lastStartFixedColumnsIndex}\n firstEndFixedColumnsIndex={endFixedColumnsNumber}\n showScrollbar={showScrollbar}\n >\n {isHeaderSticky && headers && (\n <StickyHeader\n renderHeader={renderHeader}\n tableRef={tableRef}\n wrapperRef={wrapperRef}\n isFixedLayout={isFixedLayout}\n wrapperStyle={stickyHeaderStyle}\n />\n )}\n <Table\n ref={tableRef}\n striped={striped}\n noWrap={noWrap}\n tableLoading={false}\n isFixedLayout={isFixedLayout}\n >\n {renderHeader()}\n {renderedRows}\n {getFooter()}\n </Table>\n </WrapperComponent>\n );\n};\n\nLegacyDataTable.Cell = Cell;\nLegacyDataTable.ClickableCell = ClickableCell;\nLegacyDataTable.EditableCell = EditableCell;\nLegacyDataTable.SkeletonCell = SkeletonCell;\nLegacyDataTable.SkeletonContent = SkeletonContent;\n"],"names":["React"],"mappings":"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"}
|
|
@@ -37,6 +37,9 @@ export type ShowScrollbarType = boolean;
|
|
|
37
37
|
/**
|
|
38
38
|
* LegacyDataTable properties.
|
|
39
39
|
*/
|
|
40
|
+
/**
|
|
41
|
+
* @deprecated LegacyDataTable is deprecated and will be removed in a future release. Use `DataGrid` instead.
|
|
42
|
+
*/
|
|
40
43
|
export interface LegacyDataTableProps {
|
|
41
44
|
/** Removes the outer border */
|
|
42
45
|
borderless?: boolean;
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var react = require('@floating-ui/react');
|
|
5
5
|
var Portal = require('../Portal/Portal.cjs');
|
|
6
|
+
require('../Portal/PortalContext.cjs');
|
|
6
7
|
var index = require('../../theme/index.cjs');
|
|
7
8
|
var buildClassnames = require('../../utils/buildClassnames.cjs');
|
|
8
9
|
var generateId = require('../../utils/generateId.cjs');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.cjs","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useFloating, autoUpdate, flip, shift, limitShift, size } from '@floating-ui/react';\n\nimport { Portal } from '../Portal';\nimport { theme } from '../../theme';\nimport { buildClassnames, generateId, assignCssVars } from '../../utils';\nimport { useUpdateAriaAnchor } from './hooks/useUpdateAriaAnchor';\nimport { PopoverProps } from './types';\nimport { useHandleFocus } from './hooks/useHandleFocus';\nimport popoverStyles from './Popover.module.scss';\n\nexport const Popover = ({\n id: passedId,\n children,\n zIndex = theme.layers.popup,\n placement = 'bottom',\n anchorElement,\n rootElementRef,\n onShouldClose,\n style,\n disableFocusLock,\n removeBackdrop = false,\n useAnchorWidth,\n ignoreAriaWarnings,\n className,\n ...dialogProps\n}: PopoverProps) => {\n // Set up Floating UI positioning\n const { refs, floatingStyles, placement: resolvedPlacement } = useFloating({\n elements: { reference: anchorElement },\n placement,\n middleware: [\n flip({ fallbackAxisSideDirection: 'start' }),\n shift({ limiter: limitShift() }),\n size({\n apply({ availableHeight, elements }) {\n Object.assign(elements.floating.style, {\n maxHeight: `${Math.max(0, availableHeight)}px`,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n // Setup popover id to use passed, or generate its' own.\n const id = useMemo(() => passedId || generateId('popover'), [passedId]);\n\n // Check and update aria for anchor, only works once this has rendered for the first time though.\n useUpdateAriaAnchor({ anchorElement, popoverId: id, ignoreAriaWarnings });\n\n const onClose = () => {\n anchorElement?.focus();\n onShouldClose?.();\n };\n\n const { handleKeyDown } = useHandleFocus({\n popperElement: refs.floating.current as HTMLDialogElement | null,\n anchorElement,\n onClose,\n disableFocusLock,\n });\n\n return (\n <Portal rootElementRef={rootElementRef}>\n {!removeBackdrop && (\n <div\n className={popoverStyles.backdrop}\n style={assignCssVars({ zIndex })}\n onClick={onClose}\n data-testid=\"popover-backdrop\"\n />\n )}\n <dialog\n open\n id={id}\n data-dialog-type=\"popover\"\n data-placement={resolvedPlacement}\n className={buildClassnames([popoverStyles.dialog, className])}\n ref={refs.setFloating}\n style={{\n ...assignCssVars({ zIndex: zIndex + 1 }),\n ...floatingStyles,\n ...style,\n ...(useAnchorWidth ? { minWidth: anchorElement?.clientWidth } : {}),\n }}\n onKeyDown={handleKeyDown}\n {...dialogProps}\n >\n {children}\n </dialog>\n </Portal>\n );\n};\n"],"names":["theme","useFloating","flip","shift","limitShift","size","autoUpdate","useMemo","generateId","useUpdateAriaAnchor","useHandleFocus","React","Portal","popoverStyles","assignCssVars","buildClassnames"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Popover.cjs","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useFloating, autoUpdate, flip, shift, limitShift, size } from '@floating-ui/react';\n\nimport { Portal } from '../Portal';\nimport { theme } from '../../theme';\nimport { buildClassnames, generateId, assignCssVars } from '../../utils';\nimport { useUpdateAriaAnchor } from './hooks/useUpdateAriaAnchor';\nimport { PopoverProps } from './types';\nimport { useHandleFocus } from './hooks/useHandleFocus';\nimport popoverStyles from './Popover.module.scss';\n\nexport const Popover = ({\n id: passedId,\n children,\n zIndex = theme.layers.popup,\n placement = 'bottom',\n anchorElement,\n rootElementRef,\n onShouldClose,\n style,\n disableFocusLock,\n removeBackdrop = false,\n useAnchorWidth,\n ignoreAriaWarnings,\n className,\n ...dialogProps\n}: PopoverProps) => {\n // Set up Floating UI positioning\n const { refs, floatingStyles, placement: resolvedPlacement } = useFloating({\n elements: { reference: anchorElement },\n placement,\n middleware: [\n flip({ fallbackAxisSideDirection: 'start' }),\n shift({ limiter: limitShift() }),\n size({\n apply({ availableHeight, elements }) {\n Object.assign(elements.floating.style, {\n maxHeight: `${Math.max(0, availableHeight)}px`,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n // Setup popover id to use passed, or generate its' own.\n const id = useMemo(() => passedId || generateId('popover'), [passedId]);\n\n // Check and update aria for anchor, only works once this has rendered for the first time though.\n useUpdateAriaAnchor({ anchorElement, popoverId: id, ignoreAriaWarnings });\n\n const onClose = () => {\n anchorElement?.focus();\n onShouldClose?.();\n };\n\n const { handleKeyDown } = useHandleFocus({\n popperElement: refs.floating.current as HTMLDialogElement | null,\n anchorElement,\n onClose,\n disableFocusLock,\n });\n\n return (\n <Portal rootElementRef={rootElementRef}>\n {!removeBackdrop && (\n <div\n className={popoverStyles.backdrop}\n style={assignCssVars({ zIndex })}\n onClick={onClose}\n data-testid=\"popover-backdrop\"\n />\n )}\n <dialog\n open\n id={id}\n data-dialog-type=\"popover\"\n data-placement={resolvedPlacement}\n className={buildClassnames([popoverStyles.dialog, className])}\n ref={refs.setFloating}\n style={{\n ...assignCssVars({ zIndex: zIndex + 1 }),\n ...floatingStyles,\n ...style,\n ...(useAnchorWidth ? { minWidth: anchorElement?.clientWidth } : {}),\n }}\n onKeyDown={handleKeyDown}\n {...dialogProps}\n >\n {children}\n </dialog>\n </Portal>\n );\n};\n"],"names":["theme","useFloating","flip","shift","limitShift","size","autoUpdate","useMemo","generateId","useUpdateAriaAnchor","useHandleFocus","React","Portal","popoverStyles","assignCssVars","buildClassnames"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React__default, { useMemo } from 'react';
|
|
2
2
|
import { useFloating, autoUpdate, flip, shift, limitShift, size } from '@floating-ui/react';
|
|
3
3
|
import { Portal } from '../Portal/Portal.js';
|
|
4
|
+
import '../Portal/PortalContext.js';
|
|
4
5
|
import { theme } from '../../theme/index.js';
|
|
5
6
|
import { buildClassnames } from '../../utils/buildClassnames.js';
|
|
6
7
|
import { generateId } from '../../utils/generateId.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useFloating, autoUpdate, flip, shift, limitShift, size } from '@floating-ui/react';\n\nimport { Portal } from '../Portal';\nimport { theme } from '../../theme';\nimport { buildClassnames, generateId, assignCssVars } from '../../utils';\nimport { useUpdateAriaAnchor } from './hooks/useUpdateAriaAnchor';\nimport { PopoverProps } from './types';\nimport { useHandleFocus } from './hooks/useHandleFocus';\nimport popoverStyles from './Popover.module.scss';\n\nexport const Popover = ({\n id: passedId,\n children,\n zIndex = theme.layers.popup,\n placement = 'bottom',\n anchorElement,\n rootElementRef,\n onShouldClose,\n style,\n disableFocusLock,\n removeBackdrop = false,\n useAnchorWidth,\n ignoreAriaWarnings,\n className,\n ...dialogProps\n}: PopoverProps) => {\n // Set up Floating UI positioning\n const { refs, floatingStyles, placement: resolvedPlacement } = useFloating({\n elements: { reference: anchorElement },\n placement,\n middleware: [\n flip({ fallbackAxisSideDirection: 'start' }),\n shift({ limiter: limitShift() }),\n size({\n apply({ availableHeight, elements }) {\n Object.assign(elements.floating.style, {\n maxHeight: `${Math.max(0, availableHeight)}px`,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n // Setup popover id to use passed, or generate its' own.\n const id = useMemo(() => passedId || generateId('popover'), [passedId]);\n\n // Check and update aria for anchor, only works once this has rendered for the first time though.\n useUpdateAriaAnchor({ anchorElement, popoverId: id, ignoreAriaWarnings });\n\n const onClose = () => {\n anchorElement?.focus();\n onShouldClose?.();\n };\n\n const { handleKeyDown } = useHandleFocus({\n popperElement: refs.floating.current as HTMLDialogElement | null,\n anchorElement,\n onClose,\n disableFocusLock,\n });\n\n return (\n <Portal rootElementRef={rootElementRef}>\n {!removeBackdrop && (\n <div\n className={popoverStyles.backdrop}\n style={assignCssVars({ zIndex })}\n onClick={onClose}\n data-testid=\"popover-backdrop\"\n />\n )}\n <dialog\n open\n id={id}\n data-dialog-type=\"popover\"\n data-placement={resolvedPlacement}\n className={buildClassnames([popoverStyles.dialog, className])}\n ref={refs.setFloating}\n style={{\n ...assignCssVars({ zIndex: zIndex + 1 }),\n ...floatingStyles,\n ...style,\n ...(useAnchorWidth ? { minWidth: anchorElement?.clientWidth } : {}),\n }}\n onKeyDown={handleKeyDown}\n {...dialogProps}\n >\n {children}\n </dialog>\n </Portal>\n );\n};\n"],"names":["React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { useFloating, autoUpdate, flip, shift, limitShift, size } from '@floating-ui/react';\n\nimport { Portal } from '../Portal';\nimport { theme } from '../../theme';\nimport { buildClassnames, generateId, assignCssVars } from '../../utils';\nimport { useUpdateAriaAnchor } from './hooks/useUpdateAriaAnchor';\nimport { PopoverProps } from './types';\nimport { useHandleFocus } from './hooks/useHandleFocus';\nimport popoverStyles from './Popover.module.scss';\n\nexport const Popover = ({\n id: passedId,\n children,\n zIndex = theme.layers.popup,\n placement = 'bottom',\n anchorElement,\n rootElementRef,\n onShouldClose,\n style,\n disableFocusLock,\n removeBackdrop = false,\n useAnchorWidth,\n ignoreAriaWarnings,\n className,\n ...dialogProps\n}: PopoverProps) => {\n // Set up Floating UI positioning\n const { refs, floatingStyles, placement: resolvedPlacement } = useFloating({\n elements: { reference: anchorElement },\n placement,\n middleware: [\n flip({ fallbackAxisSideDirection: 'start' }),\n shift({ limiter: limitShift() }),\n size({\n apply({ availableHeight, elements }) {\n Object.assign(elements.floating.style, {\n maxHeight: `${Math.max(0, availableHeight)}px`,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n // Setup popover id to use passed, or generate its' own.\n const id = useMemo(() => passedId || generateId('popover'), [passedId]);\n\n // Check and update aria for anchor, only works once this has rendered for the first time though.\n useUpdateAriaAnchor({ anchorElement, popoverId: id, ignoreAriaWarnings });\n\n const onClose = () => {\n anchorElement?.focus();\n onShouldClose?.();\n };\n\n const { handleKeyDown } = useHandleFocus({\n popperElement: refs.floating.current as HTMLDialogElement | null,\n anchorElement,\n onClose,\n disableFocusLock,\n });\n\n return (\n <Portal rootElementRef={rootElementRef}>\n {!removeBackdrop && (\n <div\n className={popoverStyles.backdrop}\n style={assignCssVars({ zIndex })}\n onClick={onClose}\n data-testid=\"popover-backdrop\"\n />\n )}\n <dialog\n open\n id={id}\n data-dialog-type=\"popover\"\n data-placement={resolvedPlacement}\n className={buildClassnames([popoverStyles.dialog, className])}\n ref={refs.setFloating}\n style={{\n ...assignCssVars({ zIndex: zIndex + 1 }),\n ...floatingStyles,\n ...style,\n ...(useAnchorWidth ? { minWidth: anchorElement?.clientWidth } : {}),\n }}\n onKeyDown={handleKeyDown}\n {...dialogProps}\n >\n {children}\n </dialog>\n </Portal>\n );\n};\n"],"names":["React"],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var Portal = require('../Portal/Portal.cjs');
|
|
5
|
+
require('../Portal/PortalContext.cjs');
|
|
5
6
|
var ScrollLock = require('../ScrollLock/ScrollLock.cjs');
|
|
6
7
|
var buildClassnames = require('../../utils/buildClassnames.cjs');
|
|
7
8
|
var Popup_module = require('./Popup.module.scss.cjs');
|
|
@@ -13,6 +14,9 @@ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
|
13
14
|
const WithPortal = ({ usePortal, children }) => (
|
|
14
15
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
15
16
|
React__default.default.createElement(React__default.default.Fragment, null, usePortal ? React__default.default.createElement(Portal.Portal, null, children) : children));
|
|
17
|
+
/**
|
|
18
|
+
* @deprecated Popup is deprecated and will be removed in a future release. Use `Popover` instead, or `Portal` for portal-only rendering.
|
|
19
|
+
*/
|
|
16
20
|
const Popup = ({ className, children = null, shouldShow = false, usePortal = true, }) => (React__default.default.createElement(WithPortal, { usePortal: usePortal },
|
|
17
21
|
React__default.default.createElement("div", { className: buildClassnames.buildClassnames([
|
|
18
22
|
Popup_module.container,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.cjs","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nimport { Portal } from '../Portal';\nimport { ScrollLock } from '../ScrollLock';\nimport { buildClassnames } from '../../utils/buildClassnames';\nimport { PopupProps } from './types';\nimport styles from './Popup.module.scss';\n\ninterface WithPortalProps {\n usePortal?: boolean;\n children: ReactNode;\n}\n\nconst WithPortal = ({ usePortal, children }: WithPortalProps) => (\n // eslint-disable-next-line react/jsx-no-useless-fragment\n <>{usePortal ? <Portal>{children}</Portal> : children}</>\n);\n\nexport const Popup = ({\n className,\n children = null,\n shouldShow = false,\n usePortal = true,\n}: PopupProps) => (\n <WithPortal usePortal={usePortal}>\n <div\n className={buildClassnames([\n styles.container,\n shouldShow && styles.visible,\n className && `${className}-container`,\n className,\n ])}\n >\n <div className={styles.shadow} />\n {shouldShow && <ScrollLock />}\n <div className={buildClassnames([styles.wrap, className && `${className}-wrap`, className])}>\n {children}\n </div>\n </div>\n </WithPortal>\n);\n"],"names":["React","Portal","buildClassnames","styles","ScrollLock"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Popup.cjs","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nimport { Portal } from '../Portal';\nimport { ScrollLock } from '../ScrollLock';\nimport { buildClassnames } from '../../utils/buildClassnames';\nimport { PopupProps } from './types';\nimport styles from './Popup.module.scss';\n\ninterface WithPortalProps {\n usePortal?: boolean;\n children: ReactNode;\n}\n\nconst WithPortal = ({ usePortal, children }: WithPortalProps) => (\n // eslint-disable-next-line react/jsx-no-useless-fragment\n <>{usePortal ? <Portal>{children}</Portal> : children}</>\n);\n\n/**\n * @deprecated Popup is deprecated and will be removed in a future release. Use `Popover` instead, or `Portal` for portal-only rendering.\n */\nexport const Popup = ({\n className,\n children = null,\n shouldShow = false,\n usePortal = true,\n}: PopupProps) => (\n <WithPortal usePortal={usePortal}>\n <div\n className={buildClassnames([\n styles.container,\n shouldShow && styles.visible,\n className && `${className}-container`,\n className,\n ])}\n >\n <div className={styles.shadow} />\n {shouldShow && <ScrollLock />}\n <div className={buildClassnames([styles.wrap, className && `${className}-wrap`, className])}>\n {children}\n </div>\n </div>\n </WithPortal>\n);\n"],"names":["React","Portal","buildClassnames","styles","ScrollLock"],"mappings":";;;;;;;;;;;;;AAaA,MAAM,UAAU,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAmB;AAC1D;AACAA,sBAAA,CAAA,aAAA,CAAAA,sBAAA,CAAA,QAAA,EAAA,IAAA,EAAG,SAAS,GAAGA,qCAACC,aAAM,EAAA,IAAA,EAAE,QAAQ,CAAU,GAAG,QAAQ,CAAI,CAC1D;AAED;;AAEG;AACI,MAAM,KAAK,GAAG,CAAC,EACpB,SAAS,EACT,QAAQ,GAAG,IAAI,EACf,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,IAAI,GACL,MACXD,sBAAA,CAAA,aAAA,CAAC,UAAU,EAAA,EAAC,SAAS,EAAE,SAAS,EAAA;IAC9BA,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAEE,+BAAe,CAAC;AACzB,YAAAC,YAAM,CAAC,SAAS;YAChB,UAAU,IAAIA,YAAM,CAAC,OAAO;YAC5B,SAAS,IAAI,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY;YACrC,SAAS;SACV,CAAC,EAAA;AAEF,QAAAH,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEG,YAAM,CAAC,MAAM,EAAA,CAAI;QAChC,UAAU,IAAIH,sBAAA,CAAA,aAAA,CAACI,qBAAU,EAAA,IAAA,CAAG;QAC7BJ,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEE,+BAAe,CAAC,CAACC,YAAM,CAAC,IAAI,EAAE,SAAS,IAAI,CAAA,EAAG,SAAS,CAAA,KAAA,CAAO,EAAE,SAAS,CAAC,CAAC,EAAA,EACxF,QAAQ,CACL,CACF,CACK;;;;"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { PopupProps } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated Popup is deprecated and will be removed in a future release. Use `Popover` instead, or `Portal` for portal-only rendering.
|
|
5
|
+
*/
|
|
3
6
|
export declare const Popup: ({ className, children, shouldShow, usePortal, }: PopupProps) => React.JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import { Portal } from '../Portal/Portal.js';
|
|
3
|
+
import '../Portal/PortalContext.js';
|
|
3
4
|
import { ScrollLock } from '../ScrollLock/ScrollLock.js';
|
|
4
5
|
import { buildClassnames } from '../../utils/buildClassnames.js';
|
|
5
6
|
import styles from './Popup.module.scss.js';
|
|
@@ -7,6 +8,9 @@ import styles from './Popup.module.scss.js';
|
|
|
7
8
|
const WithPortal = ({ usePortal, children }) => (
|
|
8
9
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
9
10
|
React__default.createElement(React__default.Fragment, null, usePortal ? React__default.createElement(Portal, null, children) : children));
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated Popup is deprecated and will be removed in a future release. Use `Popover` instead, or `Portal` for portal-only rendering.
|
|
13
|
+
*/
|
|
10
14
|
const Popup = ({ className, children = null, shouldShow = false, usePortal = true, }) => (React__default.createElement(WithPortal, { usePortal: usePortal },
|
|
11
15
|
React__default.createElement("div", { className: buildClassnames([
|
|
12
16
|
styles.container,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nimport { Portal } from '../Portal';\nimport { ScrollLock } from '../ScrollLock';\nimport { buildClassnames } from '../../utils/buildClassnames';\nimport { PopupProps } from './types';\nimport styles from './Popup.module.scss';\n\ninterface WithPortalProps {\n usePortal?: boolean;\n children: ReactNode;\n}\n\nconst WithPortal = ({ usePortal, children }: WithPortalProps) => (\n // eslint-disable-next-line react/jsx-no-useless-fragment\n <>{usePortal ? <Portal>{children}</Portal> : children}</>\n);\n\nexport const Popup = ({\n className,\n children = null,\n shouldShow = false,\n usePortal = true,\n}: PopupProps) => (\n <WithPortal usePortal={usePortal}>\n <div\n className={buildClassnames([\n styles.container,\n shouldShow && styles.visible,\n className && `${className}-container`,\n className,\n ])}\n >\n <div className={styles.shadow} />\n {shouldShow && <ScrollLock />}\n <div className={buildClassnames([styles.wrap, className && `${className}-wrap`, className])}>\n {children}\n </div>\n </div>\n </WithPortal>\n);\n"],"names":["React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nimport { Portal } from '../Portal';\nimport { ScrollLock } from '../ScrollLock';\nimport { buildClassnames } from '../../utils/buildClassnames';\nimport { PopupProps } from './types';\nimport styles from './Popup.module.scss';\n\ninterface WithPortalProps {\n usePortal?: boolean;\n children: ReactNode;\n}\n\nconst WithPortal = ({ usePortal, children }: WithPortalProps) => (\n // eslint-disable-next-line react/jsx-no-useless-fragment\n <>{usePortal ? <Portal>{children}</Portal> : children}</>\n);\n\n/**\n * @deprecated Popup is deprecated and will be removed in a future release. Use `Popover` instead, or `Portal` for portal-only rendering.\n */\nexport const Popup = ({\n className,\n children = null,\n shouldShow = false,\n usePortal = true,\n}: PopupProps) => (\n <WithPortal usePortal={usePortal}>\n <div\n className={buildClassnames([\n styles.container,\n shouldShow && styles.visible,\n className && `${className}-container`,\n className,\n ])}\n >\n <div className={styles.shadow} />\n {shouldShow && <ScrollLock />}\n <div className={buildClassnames([styles.wrap, className && `${className}-wrap`, className])}>\n {children}\n </div>\n </div>\n </WithPortal>\n);\n"],"names":["React"],"mappings":";;;;;;;AAaA,MAAM,UAAU,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAmB;AAC1D;AACAA,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,EAAG,SAAS,GAAGA,6BAAC,MAAM,EAAA,IAAA,EAAE,QAAQ,CAAU,GAAG,QAAQ,CAAI,CAC1D;AAED;;AAEG;AACI,MAAM,KAAK,GAAG,CAAC,EACpB,SAAS,EACT,QAAQ,GAAG,IAAI,EACf,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,IAAI,GACL,MACXA,cAAA,CAAA,aAAA,CAAC,UAAU,EAAA,EAAC,SAAS,EAAE,SAAS,EAAA;IAC9BA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,eAAe,CAAC;AACzB,YAAA,MAAM,CAAC,SAAS;YAChB,UAAU,IAAI,MAAM,CAAC,OAAO;YAC5B,SAAS,IAAI,CAAA,EAAG,SAAS,CAAA,UAAA,CAAY;YACrC,SAAS;SACV,CAAC,EAAA;AAEF,QAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,MAAM,EAAA,CAAI;QAChC,UAAU,IAAIA,cAAA,CAAA,aAAA,CAAC,UAAU,EAAA,IAAA,CAAG;QAC7BA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,eAAe,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,IAAI,CAAA,EAAG,SAAS,CAAA,KAAA,CAAO,EAAE,SAAS,CAAC,CAAC,EAAA,EACxF,QAAQ,CACL,CACF,CACK;;;;"}
|