} tooltip={'Collapse all'} view={'flat'} onClick={handleCollapseAll} disabled={!isInitialized}/>
- } tooltip={isSelectedAll ? 'Deselect all' : 'Select all'} view={'flat'} onClick={handleToggleAll} disabled={!isInitialized}/>
+ {areCheckboxesNeeded && } tooltip={isSelectedAll ? 'Deselect all' : 'Select all'} view={'flat'} onClick={handleToggleAll} disabled={!isInitialized}/>}
>;
return
diff --git a/lib/static/new-ui/features/suites/components/TreeViewItemTitle/index.tsx b/lib/static/new-ui/features/suites/components/TreeViewItemTitle/index.tsx
index e248e2ab2..ad22addbc 100644
--- a/lib/static/new-ui/features/suites/components/TreeViewItemTitle/index.tsx
+++ b/lib/static/new-ui/features/suites/components/TreeViewItemTitle/index.tsx
@@ -6,6 +6,7 @@ import {Checkbox} from '@gravity-ui/uikit';
import {useDispatch, useSelector} from 'react-redux';
import {toggleBrowserCheckbox, toggleSuiteCheckbox} from '@/static/modules/actions';
import {getToggledCheckboxState, isCheckboxChecked, isCheckboxIndeterminate} from '@/common-utils';
+import {getAreCheckboxesNeeded} from '@/static/new-ui/store/selectors';
interface TreeViewItemTitleProps {
className?: string;
@@ -14,6 +15,7 @@ interface TreeViewItemTitleProps {
export function TreeViewItemTitle({item, className}: TreeViewItemTitleProps): React.JSX.Element {
const dispatch = useDispatch();
+ const areCheckboxesNeeded = useSelector(getAreCheckboxesNeeded);
const checkStatus = useSelector(state =>
item.type === TreeViewItemType.Suite ? state.tree.suites.stateById[item.id].checkStatus : state.tree.browsers.stateById[item.id].checkStatus);
const ref = useRef(null);
@@ -45,6 +47,6 @@ export function TreeViewItemTitle({item, className}: TreeViewItemTitleProps): Re
item.errorTitle &&
{item.errorTitle}
}
-
+ {areCheckboxesNeeded && }
;
}
diff --git a/lib/static/new-ui/store/selectors.ts b/lib/static/new-ui/store/selectors.ts
index 5b025a212..af049e88a 100644
--- a/lib/static/new-ui/store/selectors.ts
+++ b/lib/static/new-ui/store/selectors.ts
@@ -7,6 +7,7 @@ import {
SuiteState,
BrowserState
} from '@/static/new-ui/types/store';
+import {EditScreensFeature, RunTestsFeature} from '@/constants';
export const getAllRootSuiteIds = (state: State): string[] => state.tree.suites.allRootIds;
export const getSuites = (state: State): Record => state.tree.suites.byId;
@@ -20,3 +21,5 @@ export const getImages = (state: State): Record => state.tr
export const getIsInitialized = (state: State): boolean => state.app.isInitialized;
export const getIsStaticImageAccepterEnabled = (state: State): boolean => state.staticImageAccepter.enabled;
export const getIsGui = (state: State): boolean => state.gui;
+
+export const getAreCheckboxesNeeded = (state: State): boolean => state.app.availableFeatures.includes(RunTestsFeature) || state.app.availableFeatures.includes(EditScreensFeature);