/**
* Copyright (c) 2019 Vodafone Group
*
* 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.
*/
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import i18n from 'nfvo-utils/i18n/i18n.js';
import GridSection from 'nfvo-components/grid/GridSection.jsx';
import GridItem from 'nfvo-components/grid/GridItem.jsx';
import CheckboxTree from 'react-checkbox-tree';
const icons = {
check: ,
uncheck: ,
halfCheck: ,
expandClose: ,
expandOpen: ,
expandAll: ,
collapseAll: ,
parentClose: ,
parentOpen: ,
leaf:
};
class CertificationQuery extends React.Component {
constructor(props) {
super(props);
let { certificationChecked, certificationNodes } = this.props;
this.state = {
checked:
certificationChecked === undefined ? [] : certificationChecked,
expanded: certificationNodes[0] ? [certificationNodes[0].value] : []
};
}
expandFirstNode() {
let { certificationNodes } = this.props;
this.setState({
expanded: certificationNodes[0] ? [certificationNodes[0].value] : []
});
}
componentDidMount() {
this.expandFirstNode();
}
shouldComponentUpdate() {
return true;
}
componentWillReceiveProps(nextProps) {
if (
nextProps.certificationChecked !== this.props.certificationChecked
) {
let expand = this.state.expanded;
this.setState({
checked: nextProps.certificationChecked || [],
expanded: expand
});
}
}
populateOptions(checkedCertificationQuery) {
let { flatTestsMap } = this.props;
return (
);
}
render() {
let { certificationNodes, setCertificationChecked } = this.props;
return (