diff --git a/frontend/src/Editor/Components/Table/Table.jsx b/frontend/src/Editor/Components/Table/Table.jsx index 1107640aa2..2e9fa69dc8 100644 --- a/frontend/src/Editor/Components/Table/Table.jsx +++ b/frontend/src/Editor/Components/Table/Table.jsx @@ -28,6 +28,8 @@ import generateActionsData from './columns/actions'; import autogenerateColumns from './columns/autogenerateColumns'; import IndeterminateCheckbox from './IndeterminateCheckbox'; import { useTranslation } from 'react-i18next'; +// eslint-disable-next-line import/no-unresolved +import { IconEyeOff } from '@tabler/icons'; import * as XLSX from 'xlsx/xlsx.mjs'; import OverlayTrigger from 'react-bootstrap/OverlayTrigger'; import Popover from 'react-bootstrap/Popover'; @@ -326,6 +328,8 @@ export function Table({ exportData, selectedFlatRows, globalFilteredRows, + getToggleHideAllColumnsProps, + allColumns, } = useTable( { autoResetPage: false, @@ -534,6 +538,39 @@ export function Table({ )} + +
+
+ + Select All +
+ {allColumns.map((column) => ( +
+
+ +
+
+ ))} +
+ + } + placement={'bottom-end'} + > + + + +
diff --git a/frontend/src/_styles/theme.scss b/frontend/src/_styles/theme.scss index 21e4bf4611..50b9e93ae3 100644 --- a/frontend/src/_styles/theme.scss +++ b/frontend/src/_styles/theme.scss @@ -6483,6 +6483,33 @@ input.hide-input-arrows{ background: transparent; } } +.dropdown-table-column-hide-common{ + position: absolute; + z-index: 10; + right: 0; + border-radius: 3px; + height: auto; + overflow-y: scroll; + padding: 8px 16px; + width: 20rem;top: 20px; + max-height: 200px; +} + +.dropdown-table-column-hide{ + background-color: #fff; + box-shadow: 0 0 0 2px #0000001a; +} +.dropdown-table-column-hide-dark-themed { + color: #fff !important; + background-color: #1f2936 !important; + box-shadow: 0 0 0 2px #9292921a; +} +.hide-column-table-text{ + margin: 0 !important; +} +.hide-column-name{ + padding-left: 10px !important; +} .rest-methods-url{ .cm-s-default {