Skip to content

Commit daf3d2c

Browse files
committed
props cleanup
1 parent 47dbec2 commit daf3d2c

File tree

4 files changed

+25
-94
lines changed

4 files changed

+25
-94
lines changed

components/SLDSMenuList/ListItemLabel.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const propTypes = {
1818
isHighlighted: React.PropTypes.bool,
1919
isSelected: React.PropTypes.bool,
2020
label: React.PropTypes.string,
21-
value: React.PropTypes.string,
21+
value: React.PropTypes.any,
2222
};
2323
const defaultProps = {
2424
data: {},

components/SLDSTimepicker/index.jsx

Lines changed: 21 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -31,20 +31,15 @@ const propTypes = {
3131
*/
3232
parser: React.PropTypes.func,
3333

34-
relativeYearFrom: React.PropTypes.number,
35-
36-
relativeYearTo: React.PropTypes.number,
37-
38-
todayLabel: React.PropTypes.string,
39-
4034
/**
4135
* Date
4236
*/
4337
value: React.PropTypes.instanceOf(Date),
4438

39+
stepInMinutes: React.PropTypes.number,
40+
4541
strValue: React.PropTypes.string,
4642

47-
weekDayLabels: React.PropTypes.array,
4843

4944

5045
};
@@ -63,15 +58,8 @@ const defaultProps = {
6358
return new Date(dateStr+' '+timeStr);
6459
},
6560
placeholder: 'Pick Time',
66-
relativeYearFrom: -5,
67-
relativeYearTo: 5,
68-
todayLabel: 'Today',
6961
value: null,
70-
weekDayLabels: [
71-
'Sunday','Monday','Tuesday',
72-
'Wednesday','Thursday','Friday',
73-
'Saturday'
74-
],
62+
stepInMinutes: 30
7563
};
7664

7765
module.exports = React.createClass({
@@ -93,14 +81,14 @@ module.exports = React.createClass({
9381
};
9482
},
9583

96-
handleChange(date) {
84+
handleChange(date, strValue) {
9785
this.setState({
9886
value:date,
99-
strValue:this.props.formatter(date),
87+
strValue:strValue,
10088
isOpen:false
10189
});
10290
if(this.props.onDateChange){
103-
this.props.onDateChange(date);
91+
this.props.onDateChange(date, strValue);
10492
}
10593
},
10694

@@ -149,9 +137,9 @@ module.exports = React.createClass({
149137
const formatted = this.props.formatter(curDate);
150138
options.push({
151139
label:formatted,
152-
value:formatted
140+
value:new Date(curDate)
153141
});
154-
curDate.setMinutes(curDate.getMinutes()+30);
142+
curDate.setMinutes(curDate.getMinutes()+this.props.stepInMinutes);
155143
}
156144
return options;
157145
},
@@ -168,16 +156,9 @@ module.exports = React.createClass({
168156
},
169157

170158
handleSelect(index) {
171-
172-
const value = this.getValueByIndex(index);
173-
174-
this.setState({
175-
value:value.value,
176-
strValue:value.label,
177-
isOpen:false
178-
});
179-
if(this.props.onChange){
180-
this.props.onChange(date);
159+
const val = this.getValueByIndex(index);
160+
if(val && val.value){
161+
this.handleChange(val.value, val.label);
181162
}
182163
this.handleClose();
183164
},
@@ -231,28 +212,22 @@ module.exports = React.createClass({
231212

232213
handleInputChange() {
233214
const string = ReactDOM.findDOMNode(this.refs.date).value;
234-
if(string){
235-
this.setState({
236-
strValue:string
237-
});
238-
if(this.props.onDateChange){
239-
const d = this.props.parser(string);
240-
this.props.onDateChange(d);
241-
}
242-
}
243-
else{
244-
this.setState({
245-
isOpen:false
246-
});
215+
this.setState({
216+
strValue:string
217+
});
218+
if(this.props.onDateChange){
219+
const d = this.props.parser(string);
220+
this.props.onDateChange(d, string);
247221
}
248222
},
249223

250224
handleKeyDown(event) {
251225
if (event.keyCode){
252-
if (event.keyCode === KEYS.ENTER ||
253-
event.keyCode === KEYS.SPACE ||
226+
const isShift = !!event.shiftKey;
227+
if (!isShift && (event.keyCode === KEYS.ENTER ||
228+
// event.keyCode === KEYS.SPACE ||
254229
event.keyCode === KEYS.DOWN ||
255-
event.keyCode === KEYS.UP){
230+
event.keyCode === KEYS.UP)){
256231
EventUtil.trapEvent(event);
257232

258233
this.setState({

demo/docs/components.json

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1448,39 +1448,6 @@
14481448
"computed": false
14491449
}
14501450
},
1451-
"relativeYearFrom": {
1452-
"type": {
1453-
"name": "number"
1454-
},
1455-
"required": false,
1456-
"description": "",
1457-
"defaultValue": {
1458-
"value": "-5",
1459-
"computed": false
1460-
}
1461-
},
1462-
"relativeYearTo": {
1463-
"type": {
1464-
"name": "number"
1465-
},
1466-
"required": false,
1467-
"description": "",
1468-
"defaultValue": {
1469-
"value": "5",
1470-
"computed": false
1471-
}
1472-
},
1473-
"todayLabel": {
1474-
"type": {
1475-
"name": "string"
1476-
},
1477-
"required": false,
1478-
"description": "",
1479-
"defaultValue": {
1480-
"value": "'Today'",
1481-
"computed": false
1482-
}
1483-
},
14841451
"value": {
14851452
"type": {
14861453
"name": "instanceOf",
@@ -1500,17 +1467,6 @@
15001467
"required": false,
15011468
"description": ""
15021469
},
1503-
"weekDayLabels": {
1504-
"type": {
1505-
"name": "array"
1506-
},
1507-
"required": false,
1508-
"description": "",
1509-
"defaultValue": {
1510-
"value": "[\n 'Sunday','Monday','Tuesday',\n 'Wednesday','Thursday','Friday',\n 'Saturday'\n]",
1511-
"computed": false
1512-
}
1513-
},
15141470
"onDateChange": {
15151471
"defaultValue": {
15161472
"value": "function(date) {\n console.log('onDateChange should be defined');\n}",

demo/pages/TimePickerSection.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,18 @@ class DatepickerSingleSelectSection extends React.Component {
3131
}
3232

3333
render(){
34-
const docs = DOCS["DatepickerSingleSelect"] ? true : false;
34+
const docs = DOCS["Timepicker"] ? true : false;
3535
return (
3636
<div className='slds-p-around--medium'>
37-
<ComponentHeader cmpName="SLDSDatepickerSingleSelect" cmpUrl="http://www.lightningdesignsystem.com/components/datepickers#single-select" />
37+
<ComponentHeader cmpName="SLDSTimepicker" cmpUrl="http://www.lightningdesignsystem.com/components/datepickers#timepicker" />
3838
<div className="copy-text">
3939
{docs ? <p dangerouslySetInnerHTML={this.getDescription()} className="slds-p-vertical--small" style={{ "maxWidth": "800px"}} /> : null}
4040
</div>
4141

4242
<section className="slds-p-vertical--large">
4343
<CodeMirror codeText={Samples.Timepicker} />
4444
</section>
45-
<PropTable component="SLDSDatepickerSingleSelect" />
45+
<PropTable component="SLDSTimepicker" />
4646
</div>
4747
);
4848
}

0 commit comments

Comments
 (0)