/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at . */ // @flow import React, { PureComponent } from "react"; import classnames from "classnames"; import AccessibleImage from "../AccessibleImage"; import { CommandBarButton } from "./"; import "./styles/PaneToggleButton.css"; type Position = "start" | "end"; type Props = { collapsed: boolean, handleClick: (Position, boolean) => void, horizontal: boolean, position: Position }; class PaneToggleButton extends PureComponent { static defaultProps = { horizontal: false, position: "start" }; label(position: Position, collapsed: boolean) { switch (position) { case "start": return L10N.getStr(collapsed ? "expandSources" : "collapseSources"); case "end": return L10N.getStr( collapsed ? "expandBreakpoints" : "collapseBreakpoints" ); } } render() { const { position, collapsed, horizontal, handleClick } = this.props; return ( handleClick(position, !collapsed)} title={this.label(position, collapsed)} > ); } } export default PaneToggleButton;