// Copyright (C) 2020 Intel Corporation // // SPDX-License-Identifier: MIT import './styles.scss'; import React from 'react'; import { Icon, Tabs, Layout, } from 'antd'; import Text from 'antd/lib/typography/Text'; import { RadioChangeEvent } from 'antd/lib/radio'; import { SliderValue } from 'antd/lib/slider'; import { CheckboxChangeEvent } from 'antd/lib/checkbox'; import { ColorBy } from 'reducers/interfaces'; import ObjectsListContainer from 'containers/annotation-page/standard-workspace/objects-side-bar/objects-list'; import LabelsListContainer from 'containers/annotation-page/standard-workspace/objects-side-bar/labels-list'; import AppearanceBlock from './appearance-block'; interface Props { sidebarCollapsed: boolean; appearanceCollapsed: boolean; colorBy: ColorBy; opacity: number; selectedOpacity: number; blackBorders: boolean; showBitmap: boolean; collapseSidebar(): void; collapseAppearance(): void; changeShapesColorBy(event: RadioChangeEvent): void; changeShapesOpacity(event: SliderValue): void; changeSelectedShapesOpacity(event: SliderValue): void; changeShapesBlackBorders(event: CheckboxChangeEvent): void; changeShowBitmap(event: CheckboxChangeEvent): void; } function ObjectsSideBar(props: Props): JSX.Element { const { sidebarCollapsed, appearanceCollapsed, colorBy, opacity, selectedOpacity, blackBorders, showBitmap, collapseSidebar, collapseAppearance, changeShapesColorBy, changeShapesOpacity, changeSelectedShapesOpacity, changeShapesBlackBorders, changeShowBitmap, } = props; const appearanceProps = { collapseAppearance, appearanceCollapsed, colorBy, opacity, selectedOpacity, blackBorders, showBitmap, changeShapesColorBy, changeShapesOpacity, changeSelectedShapesOpacity, changeShapesBlackBorders, changeShowBitmap, }; return ( {/* eslint-disable-next-line */} {sidebarCollapsed ? : } Objects} key='objects' > Labels} key='labels' > { !sidebarCollapsed && } ); } export default React.memo(ObjectsSideBar);