summaryrefslogtreecommitdiffstats
path: root/openecomp-ui/src/sdc-app/onboarding/licenseModel/overview/LicenseModelOverviewView.jsx
blob: c2d6f8e4d640a727b233acb4512f4758de259815 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/*
 * Copyright © 2016-2018 European Support Limited
 *
 * 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 from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';

import { selectedButton } from './LicenseModelOverviewConstants.js';

import SummaryView from './SummaryView.jsx';
import VLMListView from './VLMListView.jsx';
import ListButtons from './summary/ListButtons.jsx';

class LicenseModelOverviewView extends React.Component {
    static propTypes = {
        isDisplayModal: PropTypes.bool,
        isReadOnlyMode: PropTypes.bool,
        licenseModelId: PropTypes.string,
        licensingDataList: PropTypes.array,
        orphanDataList: PropTypes.array,
        modalHeader: PropTypes.string,
        selectedTab: PropTypes.string,
        onTabSelect: PropTypes.func,
        onCallVCAction: PropTypes.func,
        onClose: PropTypes.func
    };

    render() {
        let {
            licensingDataList,
            selectedTab,
            onTabSelect,
            orphanDataList,
            isReadOnlyMode
        } = this.props;
        let selectedInUse = selectedTab !== selectedButton.NOT_IN_USE;
        let dataList = selectedInUse ? licensingDataList : orphanDataList;
        return (
            <div className="license-model-overview">
                <SummaryView isReadOnlyMode={isReadOnlyMode} />
                <div
                    className={classNames(
                        'overview-list-section ',
                        !selectedInUse ? 'overview-list-orphans' : ''
                    )}>
                    <div className="vlm-list-tab-panel">
                        <ListButtons
                            onTabSelect={onTabSelect}
                            selectedTab={selectedTab}
                            hasOrphans={orphanDataList.length > 0}
                            hasLicensing={licensingDataList.length > 0}
                        />
                    </div>
                    <VLMListView
                        licensingDataList={dataList}
                        showInUse={selectedInUse}
                    />
                </div>
            </div>
        );
    }
}

export default LicenseModelOverviewView;