/* * Copyright 2007-2017 Charles du Jeu - Abstrium SAS * This file is part of Pydio. * * Pydio is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Pydio is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with Pydio. If not, see . * * The latest code can be found at . */ const React = require('react') const {Paper} = require('material-ui') import Palette from './Palette' /** * Generic paper with a background color picked from palette */ class ColorPaper extends React.Component{ render(){ const tint = Palette[this.props.paletteIndex]; const style = { ...this.props.style, backgroundColor: tint, color: 'white' }; return ( {this.props.getCloseButton ? this.props.getCloseButton() : this.props.closeButton} {this.props.children} ); } } ColorPaper.propTypes = { /** * Pass the proper style for grid layout */ style: React.PropTypes.object.isRequired, /** * Legacy way of passing the close button, use closeButton prop instead */ getCloseButton: React.PropTypes.func, /** * Passed by parent, through the asGridItem HOC */ closeButton: React.PropTypes.object, /** * An integer to choose which color to pick */ paletteIndex: React.PropTypes.number.isRequired }; export {ColorPaper as default}