Skip to content

Commit 029d463

Browse files
committed
v4.0.0 - compat with Redux-Form 6rc4
1 parent 0402232 commit 029d463

13 files changed

+100
-34
lines changed

example/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,16 @@
1313
"html-loader": "^0.4.3",
1414
"json-loader": "^0.5.4",
1515
"markdown-loader": "^0.1.7",
16-
"material-ui": "^0.15.0",
16+
"material-ui": "^0.15.2",
1717
"raw-loader": "^0.5.1",
1818
"react": "^15.2.0",
1919
"react-dom": "^15.2.0",
2020
"react-redux": "^4.4.1",
2121
"react-tap-event-plugin": "^1.0.0",
2222
"redux": "^3.3.1",
23-
"redux-form": "6.0.0-rc.3",
23+
"redux-form": "6.0.0-rc.4",
2424
"redux-form-material-ui": "file:../",
25-
"redux-form-website-template": "0.0.29"
25+
"redux-form-website-template": "0.0.34"
2626
},
2727
"devDependencies": {
2828
"babel-core": "^6.3.15",

example/src/Form.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import {
1414

1515
const validate = values => {
1616
const errors = {}
17-
const requiredFields = [ 'name', 'email', 'driver' ]
17+
const requiredFields = [ 'name', 'email', 'driver', 'when' ]
1818
requiredFields.forEach(field => {
1919
if (!values[ field ]) {
2020
errors[ field ] = 'Required'
@@ -88,7 +88,11 @@ class Form extends Component {
8888
<Field name="peppers" component={Checkbox} label="Peppers"/>
8989
</div>
9090
<div>
91-
<Field name="when" component={DatePicker} hintText="Day of delivery?"/>
91+
<Field name="when"
92+
component={DatePicker}
93+
defaultValue={null} // DatePicker requires an object,
94+
// and redux-form defaults to ''
95+
hintText="Day of delivery?"/>
9296
</div>
9397
<div>
9498
<Field

package.json

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "redux-form-material-ui",
3-
"version": "3.0.0",
3+
"version": "4.0.0",
44
"description": "An adapter between Redux Form and Material UI components",
55
"main": "./lib/index.js",
66
"jsnext:main": "./src/index.js",
@@ -52,22 +52,21 @@
5252
"expect": "^1.14.0",
5353
"expect-jsx": "^2.5.1",
5454
"isparta": "^4.0.0",
55-
"jsdom": "^9.3.0",
55+
"jsdom": "^9.4.1",
5656
"lodash.noop": "^3.0.1",
57-
"material-ui": "^0.15.0",
57+
"material-ui": "^0.15.2",
5858
"mocha": "^2.4.5",
5959
"mocha-lcov-reporter": "^1.1.0",
60-
"react": "^15.1.0",
61-
"react-addons-test-utils": "^15.1.0",
62-
"react-dom": "^15.2.0",
60+
"react": "^15.3.0",
61+
"react-addons-test-utils": "^15.3.0",
62+
"react-dom": "^15.3.0",
6363
"react-tap-event-plugin": "^1.0.0",
6464
"rimraf": "^2.5.2",
6565
"webpack": "^1.12.13"
6666
},
6767
"peerDependencies": {
68-
"material-ui": "^0.15.0",
6968
"react": "^15.2.0",
70-
"redux-form": "^6.0.0-rc.3"
69+
"redux-form": "^6.0.0-rc.4"
7170
},
7271
"npmName": "redux-form-material-ui",
7372
"npmFileMap": [

src/Checkbox.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,17 @@ import createComponent from './createComponent'
33

44
export default createComponent(
55
Checkbox,
6-
({ input: { onChange, value, ...inputProps } }) => ({
6+
({
7+
input: {
8+
onChange,
9+
value,
10+
...inputProps
11+
},
12+
meta, // eslint-disable-line no-unused-vars
13+
...props
14+
}) => ({
715
...inputProps,
16+
...props,
817
checked: value ? true : false,
918
onCheck: onChange
1019
})

src/DatePicker.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
11
import DatePicker from 'material-ui/DatePicker'
22
import createComponent from './createComponent'
3+
import mapError from './mapError'
34

45
export default createComponent(
56
DatePicker,
6-
({ input: { onChange, ...inputProps } }) => ({
7+
({
8+
input: {
9+
onBlur, // eslint-disable-line no-unused-vars
10+
onChange,
11+
...inputProps
12+
},
13+
...props
14+
}) => ({
715
...inputProps,
16+
...mapError(props),
817
onChange: (event, value) => onChange(value)
918
})
1019
)

src/Toggle.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,16 @@ import createComponent from './createComponent'
33

44
export default createComponent(
55
Toggle,
6-
({ input: { onChange, value, ...props } }) => ({
6+
({
7+
input: {
8+
onChange,
9+
value,
10+
...inputProps
11+
},
12+
meta, // eslint-disable-line no-unused-vars
13+
...props
14+
}) => ({
15+
...inputProps,
716
...props,
817
toggled: value ? true : false,
918
onToggle: onChange

src/__tests__/DatePicker.spec.js

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,32 @@ describe('DatePicker', () => {
3737
.toEqualJSX(<DatePicker name="myDatePicker" onChange={noop} value={value} ref="component"/>)
3838
})
3939

40+
it('renders a DatePicker with an error', () => {
41+
const value = new Date('2016-01-01')
42+
expect(new ReduxFormMaterialUIDatePicker({
43+
input: {
44+
name: 'myDatePicker',
45+
value
46+
},
47+
meta: {
48+
error: 'FooError',
49+
touched: true
50+
}
51+
}).render())
52+
.toEqualJSX(<DatePicker name="myDatePicker" value={value} errorText="FooError" onChange={noop}
53+
ref="component"/>)
54+
})
55+
4056
it('maps onChange properly', () => {
4157
const onChange = createSpy()
4258
const first = new Date('2016-01-01')
4359
const second = new Date('2016-02-29')
4460

4561
const dom = TestUtils.renderIntoDocument(
46-
<MuiThemeProvider muiTheme={getMuiTheme()}>
47-
<ReduxFormMaterialUIDatePicker input={{ name: 'myDatePicker', onChange, value: first }}/>
48-
</MuiThemeProvider>
49-
)
62+
<MuiThemeProvider muiTheme={getMuiTheme()}>
63+
<ReduxFormMaterialUIDatePicker input={{ name: 'myDatePicker', onChange, value: first }}/>
64+
</MuiThemeProvider>
65+
)
5066

5167
const datePicker = TestUtils.findRenderedComponentWithType(dom, DatePicker)
5268
expect(onChange).toNotHaveBeenCalled()

src/__tests__/RadioButtonGroup.spec.js

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ describe('RadioButtonGroup', () => {
3131
name: 'myRadio',
3232
value: 'Foo'
3333
},
34-
error: 'FooError'
34+
meta: {
35+
error: 'FooError'
36+
}
3537
}).render())
3638
.toEqualJSX(<RadioButtonGroup name="myRadio" value="Foo" ref="component"/>)
3739
})
@@ -42,8 +44,10 @@ describe('RadioButtonGroup', () => {
4244
name: 'myRadio',
4345
value: 'Foo'
4446
},
45-
error: 'FooError',
46-
touched: true
47+
meta: {
48+
error: 'FooError',
49+
touched: true
50+
}
4751
}).render())
4852
.toEqualJSX(<RadioButtonGroup name="myRadio" value="Foo" errorText="FooError"
4953
ref="component"/>)

src/__tests__/SelectField.spec.js

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,9 @@ describe('SelectField', () => {
3232
name: 'mySelect',
3333
value: 'Foo'
3434
},
35-
error: 'FooError'
35+
meta: {
36+
error: 'FooError'
37+
}
3638
}).render())
3739
.toEqualJSX(<SelectField name="mySelect" value="Foo" onChange={noop} ref="component"/>)
3840
})
@@ -43,8 +45,10 @@ describe('SelectField', () => {
4345
name: 'mySelect',
4446
value: 'Foo'
4547
},
46-
error: 'FooError',
47-
touched: true
48+
meta: {
49+
error: 'FooError',
50+
touched: true
51+
}
4852
}).render())
4953
.toEqualJSX(<SelectField name="mySelect" value="Foo" errorText="FooError" onChange={noop}
5054
ref="component"/>)

src/__tests__/Slider.spec.js

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ describe('Slider', () => {
3434
value: 0.5,
3535
onDragStart: noop
3636
},
37-
error: 'FooError'
37+
meta: {
38+
error: 'FooError'
39+
}
3840
}).render())
3941
.toEqualJSX(<Slider name="mySlider" value={0.5} onChange={noop} ref="component"/>)
4042
})
@@ -46,8 +48,10 @@ describe('Slider', () => {
4648
value: 0.5,
4749
onDragStart: noop
4850
},
49-
error: 'FooError',
50-
touched: true
51+
meta: {
52+
error: 'FooError',
53+
touched: true
54+
}
5155
}).render())
5256
.toEqualJSX(<Slider name="mySlider" value={0.5} error="FooError" onChange={noop}
5357
ref="component"/>)

0 commit comments

Comments
 (0)