@hazelcast/ui 1.3.3-next.4 → 1.3.3-next.54
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/lib/Alert.js +1 -1
- package/lib/Alert.js.map +1 -1
- package/lib/Alert.module.scss +1 -0
- package/lib/AppHeader/AppHeader.d.ts +16 -0
- package/lib/AppHeader/AppHeader.js +17 -0
- package/lib/AppHeader/AppHeader.js.map +1 -0
- package/lib/AppHeader/AppHeader.module.scss +29 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.d.ts +12 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.js +7 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.js.map +1 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.module.scss +29 -0
- package/lib/AppHeader/AppHeaderLogo/index.d.ts +1 -0
- package/lib/AppHeader/AppHeaderLogo/index.js +2 -0
- package/lib/AppHeader/AppHeaderLogo/index.js.map +1 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.d.ts +8 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.js +15 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.js.map +1 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.module.scss +20 -0
- package/lib/AppHeader/AppHeaderMenu/index.d.ts +1 -0
- package/lib/AppHeader/AppHeaderMenu/index.js +2 -0
- package/lib/AppHeader/AppHeaderMenu/index.js.map +1 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.d.ts +5 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.js +10 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.js.map +1 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.module.scss +13 -0
- package/lib/AppHeader/EnvironmentBadge/index.d.ts +1 -0
- package/lib/AppHeader/EnvironmentBadge/index.js +2 -0
- package/lib/AppHeader/EnvironmentBadge/index.js.map +1 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.d.ts +9 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.js +37 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.js.map +1 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.module.scss +101 -0
- package/lib/AppHeader/SelectCluster/index.d.ts +1 -0
- package/lib/AppHeader/SelectCluster/index.js +2 -0
- package/lib/AppHeader/SelectCluster/index.js.map +1 -0
- package/lib/AppHeader/index.d.ts +1 -0
- package/lib/AppHeader/index.js +2 -0
- package/lib/AppHeader/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebar.d.ts +11 -0
- package/lib/AppSidebar/AppSidebar.js +31 -0
- package/lib/AppSidebar/AppSidebar.js.map +1 -0
- package/lib/AppSidebar/AppSidebar.module.scss +66 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.d.ts +6 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js +22 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js.map +1 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.module.scss +16 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/index.js +2 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.d.ts +7 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.js +11 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.js.map +1 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.module.scss +13 -0
- package/lib/AppSidebar/AppSidebarFavorites/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarFavorites/index.js +2 -0
- package/lib/AppSidebar/AppSidebarFavorites/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.d.ts +28 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.js +23 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.js.map +1 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.module.scss +92 -0
- package/lib/AppSidebar/AppSidebarItem/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarItem/index.js +2 -0
- package/lib/AppSidebar/AppSidebarItem/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.d.ts +6 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.js +6 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.js.map +1 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.module.scss +24 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/index.js +2 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.d.ts +13 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.js +15 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.module.scss +58 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.d.ts +12 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.js +54 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.js +3 -0
- package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarSection/index.js +2 -0
- package/lib/AppSidebar/AppSidebarSection/index.js.map +1 -0
- package/lib/AppSidebar/appSidebarContext.d.ts +9 -0
- package/lib/AppSidebar/appSidebarContext.js +11 -0
- package/lib/AppSidebar/appSidebarContext.js.map +1 -0
- package/lib/AppSidebar/index.d.ts +5 -0
- package/lib/AppSidebar/index.js +6 -0
- package/lib/AppSidebar/index.js.map +1 -0
- package/lib/AutocompleteField.js +3 -6
- package/lib/AutocompleteField.js.map +1 -1
- package/lib/AutocompleteFieldFormik.js.map +1 -1
- package/lib/Badge.js +4 -4
- package/lib/Badge.js.map +1 -1
- package/lib/Button.d.ts +8 -8
- package/lib/Button.js +14 -42
- package/lib/Button.js.map +1 -1
- package/lib/Button.module.scss +40 -10
- package/lib/Calendar/Calendar.d.ts +2 -1
- package/lib/Calendar/Calendar.js +6 -9
- package/lib/Calendar/Calendar.js.map +1 -1
- package/lib/Calendar/components/CalendarHeader.js.map +1 -1
- package/lib/Calendar/components/CalendarInput.d.ts +3 -2
- package/lib/Calendar/components/CalendarInput.js +1 -1
- package/lib/Calendar/components/CalendarInput.js.map +1 -1
- package/lib/Calendar/components/CalendarTime.d.ts +3 -2
- package/lib/Calendar/components/CalendarTime.js +5 -5
- package/lib/Calendar/components/CalendarTime.js.map +1 -1
- package/lib/Card.d.ts +2 -0
- package/lib/Card.js +3 -2
- package/lib/Card.js.map +1 -1
- package/lib/Card.module.scss +51 -18
- package/lib/Carousel.js.map +1 -1
- package/lib/CenteredLoader.d.ts +5 -0
- package/lib/CenteredLoader.js +6 -0
- package/lib/CenteredLoader.js.map +1 -0
- package/lib/CenteredLoader.module.scss +11 -0
- package/lib/Checkbox.js +2 -2
- package/lib/Checkbox.js.map +1 -1
- package/lib/Checkbox.module.scss +2 -2
- package/lib/CheckboxFormik.js.map +1 -1
- package/lib/CircularProgressBar.js.map +1 -1
- package/lib/ContextMenu.js.map +1 -1
- package/lib/Dialog.js +22 -18
- package/lib/Dialog.js.map +1 -1
- package/lib/EmptyState.d.ts +3 -3
- package/lib/EmptyState.js.map +1 -1
- package/lib/Error.d.ts +2 -1
- package/lib/Error.js +1 -1
- package/lib/Error.js.map +1 -1
- package/lib/FieldHeader.d.ts +2 -2
- package/lib/FieldHeader.js.map +1 -1
- package/lib/Help.d.ts +2 -1
- package/lib/Help.js +2 -2
- package/lib/Help.js.map +1 -1
- package/lib/Icon.d.ts +2 -1
- package/lib/Icon.js +2 -2
- package/lib/Icon.js.map +1 -1
- package/lib/IconButton.js +3 -3
- package/lib/IconButton.js.map +1 -1
- package/lib/InteractiveList.d.ts +7 -7
- package/lib/InteractiveList.js +11 -13
- package/lib/InteractiveList.js.map +1 -1
- package/lib/InteractiveListFormik.js.map +1 -1
- package/lib/Label.d.ts +2 -1
- package/lib/Label.js +1 -1
- package/lib/Label.js.map +1 -1
- package/lib/Link.d.ts +1 -1
- package/lib/Link.js +2 -0
- package/lib/Link.js.map +1 -1
- package/lib/Link.module.scss +5 -0
- package/lib/Loader.d.ts +2 -1
- package/lib/Loader.js +2 -2
- package/lib/Loader.js.map +1 -1
- package/lib/Modal.js +4 -4
- package/lib/Modal.js.map +1 -1
- package/lib/Modal.module.scss +2 -1
- package/lib/NumberField.d.ts +1 -0
- package/lib/NumberField.js +27 -13
- package/lib/NumberField.js.map +1 -1
- package/lib/NumberFieldFormik.js +0 -2
- package/lib/NumberFieldFormik.js.map +1 -1
- package/lib/Overlay.js +3 -1
- package/lib/Overlay.js.map +1 -1
- package/lib/Overlay.module.scss +5 -2
- package/lib/Pagination.js +10 -10
- package/lib/Pagination.js.map +1 -1
- package/lib/PasswordField.js +4 -4
- package/lib/PasswordField.js.map +1 -1
- package/lib/PasswordFieldFormik.js.map +1 -1
- package/lib/Popover.d.ts +2 -2
- package/lib/Popover.js +32 -5
- package/lib/Popover.js.map +1 -1
- package/lib/Radio.js +3 -3
- package/lib/Radio.js.map +1 -1
- package/lib/RadioGroup.js +3 -3
- package/lib/RadioGroup.js.map +1 -1
- package/lib/RadioGroupContext.d.ts +2 -2
- package/lib/RadioGroupFormik.js.map +1 -1
- package/lib/SegmentedControl.d.ts +2 -2
- package/lib/Select/CheckableSelectField.d.ts +2 -2
- package/lib/Select/CheckableSelectField.js +4 -4
- package/lib/Select/CheckableSelectField.js.map +1 -1
- package/lib/Select/CheckableSelectFieldFormik.js.map +1 -1
- package/lib/Select/Common.js +8 -15
- package/lib/Select/Common.js.map +1 -1
- package/lib/Select/Common.module.scss +1 -1
- package/lib/Select/MultiSelectField.d.ts +2 -2
- package/lib/Select/MultiSelectField.js +14 -12
- package/lib/Select/MultiSelectField.js.map +1 -1
- package/lib/Select/MultiSelectFieldFormik.d.ts +2 -1
- package/lib/Select/MultiSelectFieldFormik.js.map +1 -1
- package/lib/Select/SelectField.d.ts +3 -2
- package/lib/Select/SelectField.js +11 -7
- package/lib/Select/SelectField.js.map +1 -1
- package/lib/Select/SelectFieldFormik.js.map +1 -1
- package/lib/Select/helpers.d.ts +2 -2
- package/lib/Select/helpers.js.map +1 -1
- package/lib/SimpleTable.d.ts +8 -8
- package/lib/Slider.d.ts +2 -2
- package/lib/Slider.js.map +1 -1
- package/lib/Slider.module.scss +6 -6
- package/lib/Table/Cell.d.ts +6 -4
- package/lib/Table/Cell.js +4 -3
- package/lib/Table/Cell.js.map +1 -1
- package/lib/Table/Cell.module.scss +14 -5
- package/lib/Table/CellWrapper.d.ts +7 -7
- package/lib/Table/CellWrapper.js +6 -6
- package/lib/Table/CellWrapper.js.map +1 -1
- package/lib/Table/EnhancedRenderers.d.ts +8 -10
- package/lib/Table/EnhancedRenderers.js +7 -10
- package/lib/Table/EnhancedRenderers.js.map +1 -1
- package/lib/Table/Header.d.ts +9 -5
- package/lib/Table/Header.js +21 -10
- package/lib/Table/Header.js.map +1 -1
- package/lib/Table/Header.module.scss +12 -7
- package/lib/Table/Row.d.ts +8 -6
- package/lib/Table/Row.js +5 -6
- package/lib/Table/Row.js.map +1 -1
- package/lib/Table/Row.module.scss +15 -12
- package/lib/Table/Table.d.ts +23 -38
- package/lib/Table/Table.js +103 -105
- package/lib/Table/Table.js.map +1 -1
- package/lib/Table/Table.module.scss +6 -0
- package/lib/Table/TableContent.d.ts +9 -9
- package/lib/Table/TableContent.js +23 -18
- package/lib/Table/TableContent.js.map +1 -1
- package/lib/Table/features/columnsSelection/CellCopyablePopover.d.ts +2 -2
- package/lib/Table/features/columnsSelection/CellCopyablePopover.js +1 -1
- package/lib/Table/features/columnsSelection/CellCopyablePopover.js.map +1 -1
- package/lib/Table/features/columnsSelection/ContextMenu/ContextMenu.d.ts +2 -2
- package/lib/Table/features/columnsSelection/columnsSelection.d.ts +0 -1
- package/lib/Table/features/columnsSelection/columnsSelection.js.map +1 -1
- package/lib/Table/features/columnsSelection/helpers.js.map +1 -1
- package/lib/Table/helpers.d.ts +2 -0
- package/lib/Table/helpers.js +10 -0
- package/lib/Table/helpers.js.map +1 -0
- package/lib/Table/tableTypes.d.ts +80 -0
- package/lib/Table/tableTypes.js +2 -0
- package/lib/Table/tableTypes.js.map +1 -0
- package/lib/Table/useTrackTableState.d.ts +3 -0
- package/lib/Table/useTrackTableState.js +30 -0
- package/lib/Table/useTrackTableState.js.map +1 -0
- package/lib/Table/utils.d.ts +16 -0
- package/lib/Table/utils.js +121 -0
- package/lib/Table/utils.js.map +1 -0
- package/lib/Tabs/Tab.d.ts +1 -19
- package/lib/Tabs/Tab.js +2 -16
- package/lib/Tabs/Tab.js.map +1 -1
- package/lib/Tabs/Tab.module.scss +0 -4
- package/lib/Tabs/TabList.js +1 -3
- package/lib/Tabs/TabList.js.map +1 -1
- package/lib/Tabs/TabPanel.d.ts +2 -1
- package/lib/Tabs/TabPanel.js +2 -2
- package/lib/Tabs/TabPanel.js.map +1 -1
- package/lib/Terminal.js +0 -1
- package/lib/Terminal.js.map +1 -1
- package/lib/TextArea.js +10 -14
- package/lib/TextArea.js.map +1 -1
- package/lib/TextField.d.ts +4 -3
- package/lib/TextField.js +6 -6
- package/lib/TextField.js.map +1 -1
- package/lib/TextFieldFormik.js.map +1 -1
- package/lib/TimeField.js +3 -3
- package/lib/TimeField.js.map +1 -1
- package/lib/Toast.d.ts +2 -1
- package/lib/Toast.js +5 -5
- package/lib/Toast.js.map +1 -1
- package/lib/Toggle.js +5 -5
- package/lib/Toggle.js.map +1 -1
- package/lib/Tooltip.d.ts +3 -0
- package/lib/Tooltip.js +21 -15
- package/lib/Tooltip.js.map +1 -1
- package/lib/Tooltip.module.scss +102 -70
- package/lib/TruncatedText.d.ts +7 -4
- package/lib/TruncatedText.js +4 -4
- package/lib/TruncatedText.js.map +1 -1
- package/lib/TruncatedText.module.scss +4 -0
- package/lib/hooks/index.d.ts +1 -0
- package/lib/hooks/index.js +1 -0
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/useCloseOnResize.js.map +1 -1
- package/lib/hooks/useDeepEqual.js +0 -1
- package/lib/hooks/useDeepEqual.js.map +1 -1
- package/lib/hooks/useDimensions.js.map +1 -1
- package/lib/hooks/useOnClickOutside.d.ts +1 -1
- package/lib/hooks/useOnClickOutside.js +7 -1
- package/lib/hooks/useOnClickOutside.js.map +1 -1
- package/lib/hooks/usePagination.js.map +1 -1
- package/lib/hooks/usePersistedState.d.ts +2 -0
- package/lib/hooks/usePersistedState.js +35 -0
- package/lib/hooks/usePersistedState.js.map +1 -0
- package/lib/hooks/useResizeAware.d.ts +3 -0
- package/lib/hooks/useResizeAware.js +25 -0
- package/lib/hooks/useResizeAware.js.map +1 -0
- package/lib/utils/portal.js.map +1 -1
- package/package.json +70 -64
- package/styles/constants/_colors.scss +36 -12
- package/styles/constants/_typography.scss +0 -7
- package/styles/helpers/_a11y.scss +8 -0
- package/styles/helpers/_gradients.scss +39 -6
- package/styles/helpers/_text.scss +9 -0
- package/styles/typography/fonts/UbuntuMono-Bold.woff2 +0 -0
- package/styles/typography/fonts/UbuntuMono-BoldItalic.woff2 +0 -0
- package/styles/typography/fonts/UbuntuMono-Italic.woff2 +0 -0
- package/styles/typography/fonts/UbuntuMono-Regular.woff2 +0 -0
- package/styles/typography/ubuntu-mono.css +31 -0
- package/lib/utils/test.d.ts +0 -3
- package/lib/utils/test.js +0 -8
- package/lib/utils/test.js.map +0 -1
package/lib/Slider.module.scss
CHANGED
|
@@ -111,12 +111,6 @@ ul.markDescriptions {
|
|
|
111
111
|
margin: $thumbWidth 0;
|
|
112
112
|
|
|
113
113
|
input[type='range'] {
|
|
114
|
-
&::-webkit-slider-runnable-track,
|
|
115
|
-
&::-webkit-slider-thumb,
|
|
116
|
-
& {
|
|
117
|
-
appearance: none;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
114
|
z-index: c.$zIndex100;
|
|
121
115
|
outline: none;
|
|
122
116
|
background: none;
|
|
@@ -132,6 +126,12 @@ ul.markDescriptions {
|
|
|
132
126
|
margin: 0;
|
|
133
127
|
justify-self: center;
|
|
134
128
|
|
|
129
|
+
&::-webkit-slider-runnable-track,
|
|
130
|
+
&::-webkit-slider-thumb,
|
|
131
|
+
& {
|
|
132
|
+
appearance: none;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
135
|
// Style the track
|
|
136
136
|
&::-webkit-slider-runnable-track {
|
|
137
137
|
@include track;
|
package/lib/Table/Cell.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { FC, RefObject } from 'react';
|
|
2
|
-
import { TableCellProps } from 'react-table';
|
|
1
|
+
import React, { CSSProperties, FC, PropsWithChildren, RefObject } from 'react';
|
|
3
2
|
export type CellWarningProps = {
|
|
4
3
|
align: 'left' | 'right';
|
|
5
4
|
warning: string;
|
|
@@ -15,11 +14,14 @@ export type CellProps = {
|
|
|
15
14
|
warning?: string;
|
|
16
15
|
colSpan?: number;
|
|
17
16
|
cellId?: string;
|
|
17
|
+
style?: CSSProperties;
|
|
18
|
+
role?: string;
|
|
19
|
+
className?: string;
|
|
18
20
|
selectionStartedRef?: RefObject<boolean>;
|
|
19
21
|
onMouseEnterSelection?: (id: string) => void;
|
|
20
22
|
onClickSelection?: (id: string, modifiers: {
|
|
21
23
|
ctrl: boolean;
|
|
22
24
|
shift: boolean;
|
|
23
25
|
}) => void;
|
|
24
|
-
}
|
|
25
|
-
export declare const Cell:
|
|
26
|
+
};
|
|
27
|
+
export declare const Cell: ({ align, warning, colSpan, children, style, className, role, cellId, onClickSelection, selected, onMouseEnterSelection, selectionStartedRef, }: PropsWithChildren<CellProps>) => React.JSX.Element;
|
package/lib/Table/Cell.js
CHANGED
|
@@ -9,13 +9,14 @@ import { CellCopyablePopover } from './features/columnsSelection';
|
|
|
9
9
|
import styles from './Cell.module.scss';
|
|
10
10
|
export const CellWarning = ({ align, warning }) => {
|
|
11
11
|
const id = useUID();
|
|
12
|
-
|
|
12
|
+
const dataTest = 'cell-warning-content';
|
|
13
|
+
return (React.createElement(Tooltip, { id: id, content: warning }, (tooltipRef) => (React.createElement("div", { "data-test": dataTest, ref: tooltipRef, className: cn(styles.warningIcon, {
|
|
13
14
|
[styles.left]: align === 'left',
|
|
14
15
|
[styles.right]: align === 'right',
|
|
15
16
|
}) },
|
|
16
|
-
React.createElement(Icon, { icon: AlertTriangle, ariaLabelledBy: id, size: "small" })))));
|
|
17
|
+
React.createElement(Icon, { "data-test": `${dataTest}-icon`, icon: AlertTriangle, ariaLabelledBy: id, size: "small" })))));
|
|
17
18
|
};
|
|
18
|
-
export const Cell = ({ align = 'left', warning, colSpan, children, style, className, role, cellId, onClickSelection, selected, onMouseEnterSelection, selectionStartedRef, }) => {
|
|
19
|
+
export const Cell = ({ align = 'left', warning, colSpan, children, style, className, role = 'cell', cellId, onClickSelection, selected, onMouseEnterSelection, selectionStartedRef, }) => {
|
|
19
20
|
const rootRef = useRef(null);
|
|
20
21
|
const { isOpen, open, close } = useOpenCloseState();
|
|
21
22
|
const handleClick = (e) => {
|
package/lib/Table/Cell.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cell.js","sourceRoot":"","sources":["../../src/Table/Cell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"Cell.js","sourceRoot":"","sources":["../../src/Table/Cell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,22 @@
|
|
|
1
|
+
@use 'sass:color';
|
|
1
2
|
@use '../../styles/constants' as c;
|
|
2
3
|
@use '../../styles/helpers' as h;
|
|
3
4
|
|
|
4
5
|
.td {
|
|
5
6
|
position: relative;
|
|
6
7
|
display: flex;
|
|
8
|
+
box-sizing: border-box;
|
|
7
9
|
align-items: center;
|
|
8
|
-
height: c.$grid *
|
|
10
|
+
height: c.$grid * 6;
|
|
9
11
|
padding-right: c.$grid * 5;
|
|
10
12
|
padding-left: c.$grid * 5;
|
|
11
13
|
color: c.$colorText;
|
|
12
14
|
background-color: inherit;
|
|
15
|
+
flex-grow: 1;
|
|
16
|
+
flex-basis: auto;
|
|
17
|
+
flex-shrink: 0;
|
|
18
|
+
font-family: 'Ubuntu Mono', monospace;
|
|
13
19
|
|
|
14
|
-
@include c.typographyBodySmall;
|
|
15
20
|
@include h.overflowEllipsis;
|
|
16
21
|
|
|
17
22
|
&.alignLeft {
|
|
@@ -27,16 +32,16 @@
|
|
|
27
32
|
}
|
|
28
33
|
|
|
29
34
|
&.selected {
|
|
30
|
-
background:
|
|
35
|
+
background: color.adjust(c.$colorPrimary, $lightness: 30%) !important;
|
|
31
36
|
}
|
|
32
37
|
|
|
33
38
|
&:not(:last-of-type) {
|
|
34
|
-
border-right: c.$borderWidth solid c.$
|
|
39
|
+
border-right: c.$borderWidth solid c.$colorNeutralWhite;
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
42
|
|
|
38
43
|
.warningIcon {
|
|
39
|
-
color: c.$
|
|
44
|
+
color: c.$colorWarningDark;
|
|
40
45
|
|
|
41
46
|
&.left {
|
|
42
47
|
margin-left: c.$grid * 2;
|
|
@@ -50,3 +55,7 @@
|
|
|
50
55
|
.selectable {
|
|
51
56
|
user-select: none;
|
|
52
57
|
}
|
|
58
|
+
|
|
59
|
+
.truncated {
|
|
60
|
+
font-family: 'Ubuntu Mono', monospace;
|
|
61
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { RefObject } from 'react';
|
|
2
|
-
import {
|
|
1
|
+
import React, { CSSProperties, RefObject } from 'react';
|
|
2
|
+
import { Cell } from '@tanstack/react-table';
|
|
3
3
|
import { CellProps } from './Cell';
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
import { RowData } from './tableTypes';
|
|
5
|
+
export type CellWrapperProps<D extends RowData> = CellProps & {
|
|
6
|
+
cell: Cell<D, unknown>;
|
|
6
7
|
selectable?: boolean;
|
|
7
|
-
|
|
8
|
+
style: CSSProperties;
|
|
8
9
|
selectedColumnValuesRef?: RefObject<(string | undefined)[][]>;
|
|
9
|
-
columnResizing: UseResizeColumnsState<D>['columnResizing'];
|
|
10
10
|
};
|
|
11
|
-
export declare const CellWrapper: <D extends object>(props: CellWrapperProps<D>) => JSX.Element;
|
|
11
|
+
export declare const CellWrapper: <D extends object>(props: CellWrapperProps<D>) => React.JSX.Element;
|
package/lib/Table/CellWrapper.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import React, { useEffect } from 'react';
|
|
2
|
+
import { flexRender } from '@tanstack/react-table';
|
|
2
3
|
import { ROW_EXPANDER_COLUMN_ID } from './constants';
|
|
3
4
|
import { Cell as TableCell } from './Cell';
|
|
4
|
-
import { EnhancedCellRenderer } from './EnhancedRenderers';
|
|
5
5
|
export const CellWrapper = (props) => {
|
|
6
|
-
|
|
7
|
-
const
|
|
6
|
+
var _a;
|
|
7
|
+
const { selectable, cell, selectedColumnValuesRef, onClickSelection, onMouseEnterSelection, selectionStartedRef, ...rest } = props;
|
|
8
|
+
const isSelectable = selectable && ((_a = cell.column) === null || _a === void 0 ? void 0 : _a.id) !== ROW_EXPANDER_COLUMN_ID;
|
|
8
9
|
useEffect(() => {
|
|
9
10
|
if (rest.cellId) {
|
|
10
11
|
const [rowIndex, cellIndex] = rest.cellId.split(':');
|
|
@@ -12,7 +13,7 @@ export const CellWrapper = (props) => {
|
|
|
12
13
|
if (rest.selected) {
|
|
13
14
|
const row = selectedColumnValuesRef.current[Number(rowIndex)];
|
|
14
15
|
if (row) {
|
|
15
|
-
row[Number(cellIndex)] = typeof cell.
|
|
16
|
+
row[Number(cellIndex)] = typeof cell.getValue() !== 'object' ? String(cell.getValue()) : '';
|
|
16
17
|
}
|
|
17
18
|
}
|
|
18
19
|
else {
|
|
@@ -23,7 +24,6 @@ export const CellWrapper = (props) => {
|
|
|
23
24
|
}
|
|
24
25
|
}
|
|
25
26
|
}, [rest, cell, selectedColumnValuesRef]);
|
|
26
|
-
|
|
27
|
-
return (React.createElement(TableCell, { onClickSelection: isSelectable ? onClickSelection : undefined, selectionStartedRef: isSelectable ? selectionStartedRef : undefined, onMouseEnterSelection: isSelectable ? onMouseEnterSelection : undefined, ...rest }, content));
|
|
27
|
+
return (React.createElement(TableCell, { onClickSelection: isSelectable ? onClickSelection : undefined, selectionStartedRef: isSelectable ? selectionStartedRef : undefined, onMouseEnterSelection: isSelectable ? onMouseEnterSelection : undefined, ...rest }, flexRender(cell.column.columnDef.cell, cell.getContext())));
|
|
28
28
|
};
|
|
29
29
|
//# sourceMappingURL=CellWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellWrapper.js","sourceRoot":"","sources":["../../src/Table/CellWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"CellWrapper.js","sourceRoot":"","sources":["../../src/Table/CellWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA4B,SAAS,EAAE,MAAM,OAAO,CAAA;AAClE,OAAO,EAAQ,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAExD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAa,IAAI,IAAI,SAAS,EAAE,MAAM,QAAQ,CAAA;AAUrD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAmB,KAA0B,EAAE,EAAE;;IAC1E,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAElI,MAAM,YAAY,GAAG,UAAU,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,EAAE,MAAK,sBAAsB,CAAA;IAE7E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAqB,CAAA;YAExE,IAAI,uBAAuB,aAAvB,uBAAuB,uBAAvB,uBAAuB,CAAE,OAAO,EAAE,CAAC;gBACrC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,MAAM,GAAG,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC7D,IAAI,GAAG,EAAE,CAAC;wBACR,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;oBAC7F,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;wBAC9H,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAA;oBAClF,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAA;IAEzC,OAAO,CACL,oBAAC,SAAS,IACR,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAC7D,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,EACnE,qBAAqB,EAAE,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,KACnE,IAAI,IAEP,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAChD,CACb,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Cell as CellType,
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Cell as CellType, HeaderContext } from '@tanstack/react-table';
|
|
3
3
|
/**
|
|
4
4
|
* Few notes about text truncation:
|
|
5
5
|
* We try to enhance Header, Footer and Cell with text truncation and a tooltip using TruncatedText.
|
|
@@ -10,14 +10,12 @@ import { Cell as CellType, HeaderGroup, UseResizeColumnsState } from 'react-tabl
|
|
|
10
10
|
* Here's how react-table renderers are made: https://github.com/tannerlinsley/react-table/blob/6e2fe31ac028e543ce0f9d56168d5f922389fbbc/src/publicUtils.js#L199
|
|
11
11
|
*/
|
|
12
12
|
export type EnhancedHeaderFooterRendererProps<D extends object> = {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
type: 'Header' | 'Footer';
|
|
13
|
+
context: HeaderContext<D, unknown>;
|
|
14
|
+
type: 'header' | 'footer';
|
|
16
15
|
};
|
|
17
|
-
export declare const EnhancedHeaderFooterRenderer: <D extends object>({
|
|
16
|
+
export declare const EnhancedHeaderFooterRenderer: <D extends object>({ context, type }: EnhancedHeaderFooterRendererProps<D>) => React.JSX.Element;
|
|
18
17
|
export type EnhancedCellRendererProps<D extends object> = {
|
|
19
|
-
cell: CellType<D,
|
|
20
|
-
|
|
21
|
-
columnResizing: UseResizeColumnsState<D>['columnResizing'];
|
|
18
|
+
cell: CellType<D, unknown>;
|
|
19
|
+
columnResizing: boolean;
|
|
22
20
|
};
|
|
23
|
-
export declare const EnhancedCellRenderer: <D extends object>({ cell,
|
|
21
|
+
export declare const EnhancedCellRenderer: <D extends object>({ cell, columnResizing }: EnhancedCellRendererProps<D>) => React.JSX.Element;
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { flexRender } from '@tanstack/react-table';
|
|
2
3
|
import { TruncatedText } from '../TruncatedText';
|
|
3
|
-
|
|
4
|
-
|
|
4
|
+
import styles from './Cell.module.scss';
|
|
5
|
+
export const EnhancedHeaderFooterRenderer = ({ context, type }) => {
|
|
6
|
+
const value = context.column.columnDef[type];
|
|
5
7
|
if (typeof value === 'string') {
|
|
6
|
-
return React.createElement(TruncatedText, { text: value, forceUpdateToken:
|
|
8
|
+
return React.createElement(TruncatedText, { text: value, forceUpdateToken: context.column.getIsResizing() });
|
|
7
9
|
}
|
|
8
|
-
return
|
|
9
|
-
};
|
|
10
|
-
export const EnhancedCellRenderer = ({ cell, hasCellRenderer, columnResizing }) => {
|
|
11
|
-
if (hasCellRenderer) {
|
|
12
|
-
return cell.render('Cell');
|
|
13
|
-
}
|
|
14
|
-
return React.createElement(TruncatedText, { text: cell.value, forceUpdateToken: columnResizing.isResizingColumn });
|
|
10
|
+
return React.createElement(React.Fragment, null, flexRender(value, context));
|
|
15
11
|
};
|
|
12
|
+
export const EnhancedCellRenderer = ({ cell, columnResizing }) => (React.createElement(TruncatedText, { text: cell.renderValue(), forceUpdateToken: columnResizing, tooltipClassName: styles.truncated }));
|
|
16
13
|
//# sourceMappingURL=EnhancedRenderers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnhancedRenderers.js","sourceRoot":"","sources":["../../src/Table/EnhancedRenderers.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"EnhancedRenderers.js","sourceRoot":"","sources":["../../src/Table/EnhancedRenderers.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAoB,UAAU,EAAiB,MAAM,uBAAuB,CAAA;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAiBvC,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAmB,EAAE,OAAO,EAAE,IAAI,EAAwC,EAAE,EAAE;IACxH,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAE5C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,oBAAC,aAAa,IAAC,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,GAAI,CAAA;IACzF,CAAC;IAED,OAAO,0CAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAI,CAAA;AAC1C,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAmB,EAAE,IAAI,EAAE,cAAc,EAAgC,EAAE,EAAE,CAAC,CAChH,oBAAC,aAAa,IAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,CAAC,SAAS,GAAI,CAC5H,CAAA"}
|
package/lib/Table/Header.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { TableHeaderProps, TableResizerProps } from 'react-table';
|
|
1
|
+
import React, { MouseEvent, KeyboardEvent, DragEvent, CSSProperties } from 'react';
|
|
3
2
|
export type HeaderProps = {
|
|
4
3
|
/**
|
|
5
4
|
* Number fields should be right aligned as that allows
|
|
@@ -13,9 +12,14 @@ export type HeaderProps = {
|
|
|
13
12
|
onClick?: (event: MouseEvent | KeyboardEvent) => void;
|
|
14
13
|
canResize: boolean;
|
|
15
14
|
isResizing: boolean;
|
|
16
|
-
|
|
15
|
+
size?: number;
|
|
17
16
|
index: number;
|
|
17
|
+
style?: CSSProperties;
|
|
18
|
+
role: string;
|
|
19
|
+
className?: string;
|
|
20
|
+
children?: React.ReactNode;
|
|
21
|
+
resizeHandler: (e: unknown) => void;
|
|
18
22
|
onDragStart?: (e: DragEvent) => void;
|
|
19
23
|
onDrop?: (e: DragEvent, index: number) => void;
|
|
20
|
-
}
|
|
21
|
-
export declare const Header:
|
|
24
|
+
};
|
|
25
|
+
export declare const Header: ({ align, colSpan, children, canSort, isSorted, isSortedDesc, canResize, isResizing, onClick, style, className, role, index, size, onDragStart, onDrop, resizeHandler, }: HeaderProps) => React.JSX.Element;
|
package/lib/Table/Header.js
CHANGED
|
@@ -4,22 +4,26 @@ import cn from 'classnames';
|
|
|
4
4
|
import { Icon } from '../Icon';
|
|
5
5
|
import { keyIsOneOf } from '../utils/keyboard';
|
|
6
6
|
import styles from './Header.module.scss';
|
|
7
|
-
export const Header = ({ align = 'left', colSpan, children, canSort, isSorted, isSortedDesc, canResize, isResizing,
|
|
7
|
+
export const Header = ({ align = 'left', colSpan, children, canSort, isSorted, isSortedDesc, canResize, isResizing, onClick, style, className, role, index, size, onDragStart, onDrop, resizeHandler, }) => {
|
|
8
8
|
const rootRef = useRef(null);
|
|
9
9
|
const isDragStarterRef = useRef(false);
|
|
10
10
|
const counterRef = useRef(0);
|
|
11
11
|
const draggable = !!onDrop && !!onDragStart;
|
|
12
12
|
let ariaSort;
|
|
13
|
+
let ariaLabel = 'Not Sorted';
|
|
14
|
+
let icon = ChevronUp;
|
|
13
15
|
if (isSorted) {
|
|
14
16
|
ariaSort = isSortedDesc ? 'descending' : 'ascending';
|
|
17
|
+
ariaLabel = isSortedDesc ? 'Descending' : 'Ascending';
|
|
18
|
+
icon = isSortedDesc ? ChevronDown : ChevronUp;
|
|
15
19
|
}
|
|
16
|
-
const Chevron = useMemo(() => (React.createElement(Icon, { className: cn(styles.sortingIcon, {
|
|
20
|
+
const Chevron = useMemo(() => (React.createElement(Icon, { "data-test": "chevron", className: cn(styles.sortingIcon, {
|
|
17
21
|
[styles.left]: align === 'left',
|
|
18
22
|
[styles.right]: align === 'right',
|
|
19
23
|
[styles.isSorted]: isSorted,
|
|
20
|
-
}), icon:
|
|
24
|
+
}), icon: icon, ariaLabel: ariaLabel, size: "smallMedium" })), [align, ariaLabel, icon, isSorted]);
|
|
21
25
|
const DraggableIcon = (React.createElement(Icon, { icon: Menu, size: "small", ariaLabel: "draggable-indicator", className: cn(styles.dragIcon, { [styles.dragIconRight]: align === 'right' }) }));
|
|
22
|
-
const
|
|
26
|
+
const onKeyDown = useCallback((event) => {
|
|
23
27
|
event.preventDefault();
|
|
24
28
|
if (keyIsOneOf(event, 'Enter') && onClick) {
|
|
25
29
|
onClick(event);
|
|
@@ -28,10 +32,13 @@ export const Header = ({ align = 'left', colSpan, children, canSort, isSorted, i
|
|
|
28
32
|
const buttonRoleProps = {
|
|
29
33
|
tabIndex: onClick ? 0 : undefined,
|
|
30
34
|
role: onClick ? 'button' : undefined,
|
|
31
|
-
|
|
35
|
+
onKeyDown: onClick ? onKeyDown : undefined,
|
|
32
36
|
onClick,
|
|
33
37
|
};
|
|
34
|
-
return (React.createElement("div", { ref: rootRef, "data-test": "table-header-container", className: cn(styles.container, className), style:
|
|
38
|
+
return (React.createElement("div", { ref: rootRef, "data-test": "table-header-container", className: cn(styles.container, className), style: {
|
|
39
|
+
...style,
|
|
40
|
+
...(size != null ? { width: size } : {}),
|
|
41
|
+
}, role: role, "aria-colspan": colSpan, "aria-sort": ariaSort },
|
|
35
42
|
React.createElement("div", { draggable: draggable, "data-test": "table-header-content", className: cn(styles.th, {
|
|
36
43
|
[styles.sortable]: canSort,
|
|
37
44
|
[styles.alignLeft]: align === 'left',
|
|
@@ -41,7 +48,9 @@ export const Header = ({ align = 'left', colSpan, children, canSort, isSorted, i
|
|
|
41
48
|
? (e) => {
|
|
42
49
|
e.dataTransfer.setData('text/plain', String(index));
|
|
43
50
|
isDragStarterRef.current = true;
|
|
44
|
-
|
|
51
|
+
if (onDragStart) {
|
|
52
|
+
onDragStart(e);
|
|
53
|
+
}
|
|
45
54
|
}
|
|
46
55
|
: undefined, onDragEnd: () => {
|
|
47
56
|
isDragStarterRef.current = false;
|
|
@@ -62,7 +71,9 @@ export const Header = ({ align = 'left', colSpan, children, canSort, isSorted, i
|
|
|
62
71
|
}
|
|
63
72
|
: undefined, onDrop: draggable
|
|
64
73
|
? (e) => {
|
|
65
|
-
|
|
74
|
+
if (onDrop) {
|
|
75
|
+
onDrop(e, index);
|
|
76
|
+
}
|
|
66
77
|
if (rootRef.current) {
|
|
67
78
|
rootRef.current.classList.remove(styles.dragOver);
|
|
68
79
|
}
|
|
@@ -75,8 +86,8 @@ export const Header = ({ align = 'left', colSpan, children, canSort, isSorted, i
|
|
|
75
86
|
children,
|
|
76
87
|
canSort && (align === 'left' || align === 'center') && Chevron,
|
|
77
88
|
draggable && (align === 'left' || align === 'center') && DraggableIcon),
|
|
78
|
-
canResize && (React.createElement("div", { "data-test": "table-header-column-resizer-container", className: styles.resizer,
|
|
79
|
-
React.createElement("div", { "data-test": "table-header-column-resizer", className: cn(styles.separator, {
|
|
89
|
+
canResize && (React.createElement("div", { "data-test": "table-header-column-resizer-container", className: styles.resizer, onMouseDown: resizeHandler, onTouchStart: resizeHandler },
|
|
90
|
+
React.createElement("div", { "data-test": "table-header-column-resizer", className: cn('resizer', styles.separator, {
|
|
80
91
|
[styles.resizing]: isResizing,
|
|
81
92
|
}) })))));
|
|
82
93
|
};
|
package/lib/Table/Header.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/Table/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/Table/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAwD,MAAM,EAAiB,MAAM,OAAO,CAAA;AAChI,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,IAAI,EAAY,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,MAAM,MAAM,sBAAsB,CAAA;AA0BzC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EACrB,KAAK,GAAG,MAAM,EACd,OAAO,EACP,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,SAAS,EACT,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,WAAW,EACX,MAAM,EACN,aAAa,GACD,EAAE,EAAE;IAChB,MAAM,OAAO,GAAG,MAAM,CAA6B,IAAI,CAAC,CAAA;IACxD,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IAE5B,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,CAAA;IAC3C,IAAI,QAAqC,CAAA;IACzC,IAAI,SAAS,GAAiC,YAAY,CAAA;IAC1D,IAAI,IAAI,GAAa,SAAS,CAAA;IAE9B,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAA;QACpD,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAA;QACrD,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/C,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CACJ,oBAAC,IAAI,iBACO,SAAS,EACnB,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE;YAChC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,MAAM;YAC/B,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,OAAO;YACjC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ;SAC5B,CAAC,EACF,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,IAAI,EAAC,aAAa,GAClB,CACH,EACD,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CACnC,CAAA;IACD,MAAM,aAAa,GAAG,CACpB,oBAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,qBAAqB,EAC/B,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,KAAK,OAAO,EAAE,CAAC,GAC7E,CACH,CAAA;IAED,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,KAAoC,EAAE,EAAE;QACvC,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC;YAC1C,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAA;IAED,MAAM,eAAe,GAAG;QACtB,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QACjC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACpC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC1C,OAAO;KACR,CAAA;IAED,OAAO,CACL,6BACE,GAAG,EAAE,OAAO,eACF,wBAAwB,EAClC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,EAC1C,KAAK,EAAE;YACL,GAAG,KAAK;YACR,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzC,EACD,IAAI,EAAE,IAAI,kBACI,OAAO,eACV,QAAQ;QAEnB,6BACE,SAAS,EAAE,SAAS,eACV,sBAAsB,EAChC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;gBACvB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,OAAO;gBAC1B,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,KAAK,KAAK,MAAM;gBACpC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,KAAK,OAAO;gBACtC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,KAAK,KAAK,QAAQ;aACzC,CAAC,EACF,WAAW,EACT,SAAS;gBACP,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;oBACJ,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;oBACnD,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAA;oBAE/B,IAAI,WAAW,EAAE,CAAC;wBAChB,WAAW,CAAC,CAAC,CAAC,CAAA;oBAChB,CAAC;gBACH,CAAC;gBACH,CAAC,CAAC,SAAS,EAEf,SAAS,EAAE,GAAG,EAAE;gBACd,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAA;YAClC,CAAC,EACD,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACrC,WAAW,EACT,SAAS;gBACP,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;oBACJ,CAAC,CAAC,cAAc,EAAE,CAAA;oBAClB,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;wBAC7E,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;oBAChD,CAAC;oBACD,UAAU,CAAC,OAAO,EAAE,CAAA;gBACtB,CAAC;gBACH,CAAC,CAAC,SAAS,EAEf,WAAW,EACT,SAAS;gBACP,CAAC,CAAC,GAAG,EAAE;oBACH,UAAU,CAAC,OAAO,EAAE,CAAA;oBACpB,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;wBAChD,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;oBACnD,CAAC;gBACH,CAAC;gBACH,CAAC,CAAC,SAAS,EAEf,MAAM,EACJ,SAAS;gBACP,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;oBACJ,IAAI,MAAM,EAAE,CAAC;wBACX,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;oBAClB,CAAC;oBAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;oBACnD,CAAC;oBAED,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAA;oBAChC,UAAU,CAAC,OAAO,GAAG,CAAC,CAAA;gBACxB,CAAC;gBACH,CAAC,CAAC,SAAS,KAEX,eAAe;YAElB,SAAS,IAAI,KAAK,KAAK,OAAO,IAAI,aAAa;YAC/C,OAAO,IAAI,KAAK,KAAK,OAAO,IAAI,OAAO;YACvC,QAAQ;YACR,OAAO,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,QAAQ,CAAC,IAAI,OAAO;YAC9D,SAAS,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,QAAQ,CAAC,IAAI,aAAa,CACnE;QACL,SAAS,IAAI,CACZ,0CACY,uCAAuC,EACjD,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,WAAW,EAAE,aAAa,EAC1B,YAAY,EAAE,aAAa;YAE3B,0CACY,6BAA6B,EACvC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;oBACzC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU;iBAC9B,CAAC,GACF,CACE,CACP,CACG,CACP,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
display: flex;
|
|
7
7
|
justify-content: center;
|
|
8
8
|
align-items: center;
|
|
9
|
-
width:
|
|
9
|
+
width: 20px;
|
|
10
10
|
height: 100%;
|
|
11
11
|
top: 0;
|
|
12
|
-
right: -
|
|
12
|
+
right: -10px;
|
|
13
13
|
z-index: c.$zIndex100;
|
|
14
14
|
cursor: col-resize;
|
|
15
15
|
user-select: none;
|
|
@@ -20,9 +20,8 @@
|
|
|
20
20
|
/* doiuse-enable css-touch-action */
|
|
21
21
|
|
|
22
22
|
.separator {
|
|
23
|
-
width:
|
|
24
|
-
height:
|
|
25
|
-
background: c.$colorNeutral;
|
|
23
|
+
width: 1px;
|
|
24
|
+
height: 100%;
|
|
26
25
|
}
|
|
27
26
|
|
|
28
27
|
.resizing,
|
|
@@ -33,14 +32,20 @@
|
|
|
33
32
|
|
|
34
33
|
.container {
|
|
35
34
|
position: relative;
|
|
35
|
+
flex-grow: 1;
|
|
36
|
+
flex-basis: auto;
|
|
37
|
+
flex-shrink: 0;
|
|
38
|
+
background: c.$colorNeutralGray;
|
|
39
|
+
border-right: 1px solid c.$colorNeutralWhite;
|
|
36
40
|
|
|
37
41
|
.th {
|
|
38
42
|
display: flex;
|
|
39
43
|
align-items: center;
|
|
40
|
-
height: c.$grid *
|
|
44
|
+
height: c.$grid * 12;
|
|
41
45
|
padding-left: c.$grid * 5;
|
|
42
46
|
padding-right: c.$grid * 5;
|
|
43
47
|
color: c.$colorText;
|
|
48
|
+
box-sizing: border-box;
|
|
44
49
|
|
|
45
50
|
@include c.typographyBodySmall('bold');
|
|
46
51
|
@include h.overflowEllipsis;
|
|
@@ -78,7 +83,7 @@
|
|
|
78
83
|
}
|
|
79
84
|
|
|
80
85
|
&:hover {
|
|
81
|
-
background-color: c.$
|
|
86
|
+
background-color: c.$colorNeutralGrayDarker;
|
|
82
87
|
}
|
|
83
88
|
}
|
|
84
89
|
|
package/lib/Table/Row.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { FC, AnchorHTMLAttributes } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import React, { FC, PropsWithChildren, AnchorHTMLAttributes, CSSProperties } from 'react';
|
|
2
|
+
type RowBase = {
|
|
3
|
+
className?: string;
|
|
4
|
+
style?: CSSProperties;
|
|
5
|
+
role?: string;
|
|
4
6
|
ariaRowIndex?: number;
|
|
5
7
|
};
|
|
6
8
|
export type RowProps = RowBase & {
|
|
@@ -11,7 +13,7 @@ export type LinkRowProps = RowBase & {
|
|
|
11
13
|
AnchorComponent?: FC<AnchorHTMLAttributes<HTMLAnchorElement>>;
|
|
12
14
|
};
|
|
13
15
|
export type HeaderRowProps = RowBase;
|
|
14
|
-
export declare const Row:
|
|
15
|
-
export declare const LinkRow:
|
|
16
|
-
export declare const HeaderRow:
|
|
16
|
+
export declare const Row: ({ children, className, style, role, ariaRowIndex, onClick }: PropsWithChildren<RowProps>) => React.JSX.Element;
|
|
17
|
+
export declare const LinkRow: ({ children, className, style, role, ariaRowIndex, href, AnchorComponent, }: PropsWithChildren<LinkRowProps>) => React.JSX.Element;
|
|
18
|
+
export declare const HeaderRow: ({ children, className, style, role, ariaRowIndex }: PropsWithChildren<HeaderRowProps>) => React.JSX.Element;
|
|
17
19
|
export {};
|
package/lib/Table/Row.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React, { useCallback } from 'react';
|
|
2
2
|
import cn from 'classnames';
|
|
3
|
-
import styles from './Row.module.scss';
|
|
4
3
|
import { useUID } from 'react-uid';
|
|
5
4
|
import { keyIsOneOf } from '../utils/keyboard';
|
|
5
|
+
import styles from './Row.module.scss';
|
|
6
6
|
export const Row = ({ children, className, style, role, ariaRowIndex, onClick }) => {
|
|
7
|
-
const
|
|
7
|
+
const onKeyDown = useCallback((event) => {
|
|
8
8
|
event.preventDefault();
|
|
9
9
|
if (keyIsOneOf(event, 'Enter') && onClick) {
|
|
10
10
|
onClick();
|
|
@@ -12,14 +12,13 @@ export const Row = ({ children, className, style, role, ariaRowIndex, onClick })
|
|
|
12
12
|
}, [onClick]);
|
|
13
13
|
return (React.createElement("div", { "data-test": "table-cell-row", className: cn(styles.row, {
|
|
14
14
|
[styles.clickable]: !!onClick,
|
|
15
|
-
}, className), style: style, "aria-rowindex": ariaRowIndex, role: role, tabIndex: onClick ? 0 : undefined,
|
|
15
|
+
}, className), style: style, "aria-rowindex": ariaRowIndex, role: role, tabIndex: onClick ? 0 : undefined, onKeyDown: onClick ? onKeyDown : undefined, onClick: onClick }, children));
|
|
16
16
|
};
|
|
17
|
-
// eslint-disable-next-line jsx-a11y/anchor-has-content
|
|
18
17
|
const DefaultAnchor = (props) => React.createElement("a", { ...props });
|
|
19
|
-
export const LinkRow = ({ children, className, style, role, ariaRowIndex, href, AnchorComponent = DefaultAnchor }) => {
|
|
18
|
+
export const LinkRow = ({ children, className, style, role, ariaRowIndex, href, AnchorComponent = DefaultAnchor, }) => {
|
|
20
19
|
const anchorId = useUID();
|
|
21
20
|
return (React.createElement("div", { "data-test": "table-cell-row", className: cn(styles.linkRow, className), role: role, "aria-rowindex": ariaRowIndex, "aria-owns": anchorId },
|
|
22
21
|
React.createElement(AnchorComponent, { className: styles.link, style: style, href: href, id: anchorId }, children)));
|
|
23
22
|
};
|
|
24
|
-
export const HeaderRow = ({ children, className, style, role, ariaRowIndex }) => (React.createElement("div", { "data-test": "table-header-row", className: cn(styles.
|
|
23
|
+
export const HeaderRow = ({ children, className, style, role, ariaRowIndex }) => (React.createElement("div", { "data-test": "table-header-row", className: cn(styles.row, className), style: style, role: role, "aria-rowindex": ariaRowIndex }, children));
|
|
25
24
|
//# sourceMappingURL=Row.js.map
|
package/lib/Table/Row.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.js","sourceRoot":"","sources":["../../src/Table/Row.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"Row.js","sourceRoot":"","sources":["../../src/Table/Row.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAyB,WAAW,EAAsD,MAAM,OAAO,CAAA;AACrH,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAOtC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAA+B,EAAE,EAAE;IAC9G,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,KAAoC,EAAE,EAAE;QACvC,KAAK,CAAC,cAAc,EAAE,CAAA;QACtB,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC;YAC1C,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAA;IAED,OAAO,CACL,0CACY,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,GAAG,EACV;YACE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO;SAC9B,EACD,SAAS,CACV,EACD,KAAK,EAAE,KAAK,mBACG,YAAY,EAC3B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACjC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAC1C,OAAO,EAAE,OAAO,IAEf,QAAQ,CACL,CACP,CAAA;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAgD,CAAC,KAAK,EAAE,EAAE,CAAC,8BAAO,KAAK,GAAI,CAAA;AAE9F,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,eAAe,GAAG,aAAa,GACC,EAAE,EAAE;IACpC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAA;IAEzB,OAAO,CACL,0CAAe,gBAAgB,EAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,mBAAiB,YAAY,eAAa,QAAQ;QACpI,oBAAC,eAAe,IAAC,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,IAC5E,QAAQ,CACO,CACd,CACP,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAqC,EAAE,EAAE,CAAC,CAClH,0CAAe,kBAAkB,EAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,mBAAiB,YAAY,IAC1H,QAAQ,CACL,CACP,CAAA"}
|
|
@@ -2,11 +2,16 @@
|
|
|
2
2
|
@use '../../styles/helpers' as h;
|
|
3
3
|
|
|
4
4
|
@mixin rowBase {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
display: flex;
|
|
6
|
+
width: 100%;
|
|
7
|
+
|
|
8
|
+
&:nth-child(even) {
|
|
9
|
+
background-color: c.$colorNeutralLighter;
|
|
10
|
+
}
|
|
7
11
|
}
|
|
8
12
|
|
|
9
13
|
.row {
|
|
14
|
+
@include c.typographyBodySmall;
|
|
10
15
|
@include rowBase;
|
|
11
16
|
|
|
12
17
|
&.clickable {
|
|
@@ -18,23 +23,24 @@
|
|
|
18
23
|
// Do not remove outline for high-contrast modes
|
|
19
24
|
// https://stackoverflow.com/a/52616313
|
|
20
25
|
outline: c.$outlineWidth solid transparent;
|
|
21
|
-
background-color:
|
|
26
|
+
background-color: #e2e7fa;
|
|
22
27
|
}
|
|
23
28
|
|
|
24
29
|
&:hover {
|
|
25
|
-
|
|
30
|
+
font-weight: bold;
|
|
31
|
+
background-color: #e2e7fa;
|
|
26
32
|
}
|
|
27
33
|
}
|
|
28
34
|
}
|
|
29
35
|
|
|
30
36
|
.linkRow {
|
|
31
|
-
@include rowBase;
|
|
32
|
-
|
|
33
37
|
cursor: pointer;
|
|
38
|
+
@include rowBase;
|
|
34
39
|
|
|
35
40
|
.link {
|
|
36
41
|
text-decoration: none;
|
|
37
42
|
background-color: inherit;
|
|
43
|
+
@include rowBase;
|
|
38
44
|
|
|
39
45
|
&:focus-visible {
|
|
40
46
|
@include h.outlineSimple;
|
|
@@ -42,15 +48,12 @@
|
|
|
42
48
|
// Do not remove outline for high-contrast modes
|
|
43
49
|
// https://stackoverflow.com/a/52616313
|
|
44
50
|
outline: c.$outlineWidth solid transparent;
|
|
45
|
-
background-color:
|
|
51
|
+
background-color: #e2e7fa;
|
|
46
52
|
}
|
|
47
53
|
|
|
48
54
|
&:hover {
|
|
49
|
-
|
|
55
|
+
font-weight: bold;
|
|
56
|
+
background-color: #e2e7fa;
|
|
50
57
|
}
|
|
51
58
|
}
|
|
52
59
|
}
|
|
53
|
-
|
|
54
|
-
.headerRow {
|
|
55
|
-
margin-bottom: c.$grid * 1.25;
|
|
56
|
-
}
|