X-Git-Url: https://gerrit.onap.org/r/gitweb?p=aai%2Fsparky-fe.git;a=blobdiff_plain;f=src%2Fgeneric-components%2FcomponentManager%2FComponentManagerContainer.jsx;fp=src%2Fgeneric-components%2FcomponentManager%2FComponentManagerContainer.jsx;h=0bf10f1d8ec85058f9121cc1b66c6b29dc071748;hp=0000000000000000000000000000000000000000;hb=ca007e933bcd9f63aa77801656ed9dd4142c432c;hpb=42b788b852f0604748828e9e325e4a0f01152c75 diff --git a/src/generic-components/componentManager/ComponentManagerContainer.jsx b/src/generic-components/componentManager/ComponentManagerContainer.jsx new file mode 100644 index 0000000..0bf10f1 --- /dev/null +++ b/src/generic-components/componentManager/ComponentManagerContainer.jsx @@ -0,0 +1,115 @@ +/* + * ============LICENSE_START=================================================== + * SPARKY (AAI UI service) + * ============================================================================ + * Copyright © 2017 AT&T Intellectual Property. + * Copyright © 2017 Amdocs + * All rights reserved. + * ============================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END===================================================== + * + * ECOMP and OpenECOMP are trademarks + * and service marks of AT&T Intellectual Property. + */ + +import React, {Component, PropTypes} from 'react'; +import ButtonGroup from 'react-bootstrap/lib/ButtonGroup'; +import Button from 'react-bootstrap/lib/Button'; + +import i18n from 'utils/i18n/i18n'; + +const ICON_CLASS_CLOSE = 'fa fa-times'; + +export default class ComponentManagerContainer extends Component { + + static propType = { + id: PropTypes.string, + title: PropTypes.string, + actions: PropTypes.array, + showHeader: PropTypes.bool, + showTitle: PropTypes.bool, + showBorder: PropTypes.bool, + }; + + static defaultProps = { + id: '', + title: 'Some Title', + actions: [], + showHeader: true, + showTitle: true, + showBorder: true + }; + + constructor(props) { + super(props); + } + + render() { + let { + title, + actions, + children, + showHeader, + showTitle, + showBorder + } = this.props; + let buttons = []; + actions.forEach((action) => { + switch (action.type) { + case 'close': + buttons.push( + + ); + break; + case 'custom': + buttons.push( + + ); + break; + } + }); + + let containerClass = showBorder + ? 'titled-container titled-container-boarders' + : 'titled-container'; + let headerClass = showHeader ? 'titled-container-header' : 'hidden'; + let titleClass = showTitle ? '' : 'hidden'; + + return ( +
+ {buttons} +
+ {i18n(title)} +
+
+ {children} +
+
+ ); + } +}