c4ef235bbc4dd24746017268c91de892ceb5e057
[aai/sparky-fe.git] / src / generic-components / graph / Link.jsx
1 /*
2  * ============LICENSE_START===================================================
3  * SPARKY (AAI UI service)
4  * ============================================================================
5  * Copyright © 2017 AT&T Intellectual Property.
6  * Copyright © 2017 Amdocs
7  * All rights reserved.
8  * ============================================================================
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * ============LICENSE_END=====================================================
21  *
22  * ECOMP and OpenECOMP are trademarks
23  * and service marks of AT&T Intellectual Property.
24  */
25
26 import React, {Component} from 'react';
27
28 import TempCreateAttributes from './TempCreateAttributes.js';
29
30 class Link extends Component {
31                 
32                 static propTypes = {
33                                 x1: React.PropTypes.number,
34                                 y1: React.PropTypes.number,
35                                 x2: React.PropTypes.number,
36                                 y2: React.PropTypes.number,
37                                 linkAttributes: React.PropTypes.object
38                 };
39                 
40                 static defaultProps = {
41                                 x1: 0,
42                                 y1: 0,
43                                 x2: 0,
44                                 y2: 0,
45                                 linkAttributes: {}
46                 };
47                 
48                 render() {
49                                 let {x1, y1, x2, y2, linkAttributes} = this.props;
50                                 
51                                 let combinedAttributes = {
52                                                 ...linkAttributes,
53                                                 x1: x1,
54                                                 y1: y1,
55                                                 x2: x2,
56                                                 y2: y2
57                                 };
58                                 
59                                 return (
60                                                 <line {...combinedAttributes}
61                                                                 style={TempCreateAttributes.createLineStyle()}/>
62                                 );
63                 }
64 }
65
66 export default Link;