Skip to content

Commit 4dc3d95

Browse files
authored
Merge pull request #2 from josephmaxim/add-degree-prop
Added skew prop
2 parents a701152 + a6b117b commit 4dc3d95

File tree

6 files changed

+25
-18
lines changed

6 files changed

+25
-18
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export default class extends React.Component{
2727
<SkewedContainer
2828
top="left || right"
2929
bottom="left || right"
30-
bgColor="blue"
30+
bgColor="skyblue"
3131
>
3232
{/* YOUR CODE HERE */}
3333
</SkewedContainer>
@@ -46,5 +46,6 @@ SkewedContainer.propTypes = {
4646
bottom: PropTypes.string,
4747
noMargin : PropTypes.bool,
4848
bgColor: PropTypes.string
49+
skew: PropTypes.Number
4950
}
5051
```

dist/index.js

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -498,7 +498,7 @@ Object.defineProperty(exports, "__esModule", {
498498

499499
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
500500

501-
var _templateObject = _taggedTemplateLiteral(['\n ', '\n width: 100%;\n position: relative;\n background-color: ', ';\n z-index: 2;\n min-height: 100px;\n\n &:before{\n ', '\n ', '\n }\n &:after {\n ', '\n ', '\n }\n '], ['\n ', '\n width: 100%;\n position: relative;\n background-color: ', ';\n z-index: 2;\n min-height: 100px;\n\n &:before{\n ', '\n ', '\n }\n &:after {\n ', '\n ', '\n }\n ']),
501+
var _templateObject = _taggedTemplateLiteral(['\n ', '\n width: 100%;\n position: relative;\n background-color: ', ';\n z-index: 2;\n min-height: 200px;\n\n &:before{\n ', '\n ', '\n }\n &:after {\n ', '\n ', '\n }\n '], ['\n ', '\n width: 100%;\n position: relative;\n background-color: ', ';\n z-index: 2;\n min-height: 200px;\n\n &:before{\n ', '\n ', '\n }\n &:after {\n ', '\n ', '\n }\n ']),
502502
_templateObject2 = _taggedTemplateLiteral(['\n width: 100%;\n '], ['\n width: 100%;\n ']);
503503

504504
var _react = __webpack_require__(4);
@@ -540,22 +540,23 @@ var SkewedContainer = function (_React$Component) {
540540
var skew = function skew(propValue, position) {
541541
var val = "",
542542
skewYDeg = "",
543-
skewPosition = "";
543+
skewPosition = "",
544+
skewProp = _this2.props.skew;
544545
switch (propValue) {
545546
case "left":
546-
position === 'top' ? skewYDeg = "-3deg" : skewYDeg = "3deg";
547+
position === 'top' ? skewYDeg = -skewProp : skewYDeg = skewProp;
547548
skewPosition = "left";
548549
break;
549550
case "right":
550-
position === 'top' ? skewYDeg = "3deg" : skewYDeg = "-3deg";
551+
position === 'top' ? skewYDeg = skewProp : skewYDeg = -skewProp;
551552
skewPosition = "right";
552553
break;
553554
default:
554555
skewYDeg = "";
555556
skewPosition = "";
556557
break;
557558
}
558-
val = position + ':0; transform-origin: ' + skewPosition + ' ' + position + '; transform: skewY(' + skewYDeg + ');';
559+
val = position + ':0; transform-origin: ' + skewPosition + ' ' + position + '; transform: skewY(' + skewYDeg + 'Deg);';
559560
console.log(val);
560561
return val;
561562
};
@@ -605,7 +606,8 @@ SkewedContainer.propTypes = {
605606
top: _propTypes2.default.string,
606607
bottom: _propTypes2.default.string,
607608
noMargin: _propTypes2.default.bool,
608-
bgColor: _propTypes2.default.string
609+
bgColor: _propTypes2.default.string,
610+
skew: _propTypes2.default.number
609611
};
610612

611613
SkewedContainer.defaultProps = {
@@ -614,7 +616,8 @@ SkewedContainer.defaultProps = {
614616
top: '',
615617
bottom: '',
616618
noMargin: false,
617-
bgColor: 'grey'
619+
bgColor: 'grey',
620+
skew: 3
618621
};
619622

620623
/***/ }),

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "sc-react",
3-
"version": "0.1.2",
3+
"version": "0.1.4",
44
"description": "A react library for creating non-rectangular/slanted container divs.",
55
"keywords": [
66
"react",

src/index.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,22 @@ import styled from 'styled-components';
55
export default class SkewedContainer extends React.Component{
66
render(){
77
var skew = (propValue, position) => {
8-
var val = "", skewYDeg = "", skewPosition = "";
8+
var val = "", skewYDeg = "", skewPosition = "", skewProp = this.props.skew;
99
switch(propValue){
1010
case "left":
11-
position === 'top' ? skewYDeg = "-3deg" : skewYDeg = "3deg";
11+
position === 'top' ? skewYDeg = -skewProp : skewYDeg = skewProp;
1212
skewPosition = "left";
1313
break;
1414
case "right":
15-
position === 'top' ? skewYDeg = "3deg" : skewYDeg = "-3deg";
15+
position === 'top' ? skewYDeg = skewProp : skewYDeg = -skewProp;
1616
skewPosition = "right";
1717
break;
1818
default:
1919
skewYDeg = "";
2020
skewPosition = "";
2121
break;
2222
}
23-
val = `${position}:0; transform-origin: ${skewPosition} ${position}; transform: skewY(${skewYDeg});`;
23+
val = `${position}:0; transform-origin: ${skewPosition} ${position}; transform: skewY(${skewYDeg}Deg);`;
2424
console.log(val);
2525
return val;
2626
}
@@ -51,7 +51,7 @@ export default class SkewedContainer extends React.Component{
5151
position: relative;
5252
background-color: ${this.props.bgColor};
5353
z-index: 2;
54-
min-height: 100px;
54+
min-height: 200px;
5555
5656
&:before{
5757
${commonStyling}
@@ -83,7 +83,8 @@ SkewedContainer.propTypes = {
8383
top: PropTypes.string,
8484
bottom: PropTypes.string,
8585
noMargin : PropTypes.bool,
86-
bgColor: PropTypes.string
86+
bgColor: PropTypes.string,
87+
skew: PropTypes.number
8788
}
8889

8990
SkewedContainer.defaultProps = {
@@ -92,5 +93,6 @@ SkewedContainer.defaultProps = {
9293
top: '',
9394
bottom: '',
9495
noMargin : false,
95-
bgColor: 'grey'
96+
bgColor: 'grey',
97+
skew: 3
9698
}

test/test.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ describe('Component: SkewedContainer', () => {
1010
className:"",
1111
noMargin:false,
1212
style:{},
13-
top:""
13+
top:"",
14+
skew: 3
1415
}
1516
it('render without errors', () => {
1617
expect(

0 commit comments

Comments
 (0)