changed the header and license
[aai/sparky-fe.git] / src / app / tierSupport / selectedNodeDetails / SelectedNodeDetailsReducer.js
1 /*
2  * ============LICENSE_START=======================================================
3  * org.onap.aai
4  * ================================================================================
5  * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
6  * Copyright © 2017-2018 Amdocs
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *       http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21 import {tierSupportActionTypes} from 'app/tierSupport/TierSupportConstants.js';
22 import {
23   globalAutoCompleteSearchBarActionTypes
24 } from 'app/globalAutoCompleteSearchBar/GlobalAutoCompleteSearchBarConstants.js';
25
26 export default (state = {}, action) => {
27   switch (action.type) {
28     case tierSupportActionTypes.TS_NODE_SEARCH_RESULTS:
29       for (const node of action.data.nodes) {
30         if (node.nodeMeta.searchTarget === true) {
31           return {
32             ...state,
33             nodeData: node.itemProperties,
34             nodeType: node.itemType,
35             uid: node.itemNameValue
36           };
37         }
38       }
39       return {
40         ...state,
41         nodeData: {},
42         nodeType: '',
43         uid: ''
44       };
45
46     case tierSupportActionTypes.TS_GRAPH_NODE_SELECTED:
47       return {
48         ...state,
49         nodeData: action.data.itemProperties,
50         nodeType: action.data.itemType,
51         uid: action.data.itemNameValue
52       };
53
54     // else fall through to the TIER_SUPPORT_CLEAR_DATA case
55     case globalAutoCompleteSearchBarActionTypes.SEARCH_WARNING_EVENT:
56     case tierSupportActionTypes.TIER_SUPPORT_NETWORK_ERROR:
57     case tierSupportActionTypes.TIER_SUPPORT_CLEAR_DATA:
58     case tierSupportActionTypes.TS_NODE_SEARCH_NO_RESULTS:
59       return {
60         ...state,
61         nodeData: {},
62         nodeType: '',
63         uid: ''
64       };
65   }
66   return state;
67 };