Skip to content

Commit 52d1a23

Browse files
committed
#122 Fixed an issue with editMode prop where it wouldn't save the value of the component
1 parent c7ddb6c commit 52d1a23

4 files changed

Lines changed: 27 additions & 13 deletions

File tree

package.json

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-easy-edit",
3-
"version": "1.13.0",
3+
"version": "1.13.1",
44
"description": "A react library for inline editing components",
55
"keywords": [
66
"content editable",
@@ -37,8 +37,8 @@
3737
"url": "https://github.com/giorgosart/react-easy-edit/issues"
3838
},
3939
"peerDependencies": {
40-
"react": "^16.13.1",
41-
"react-dom": "^16.13.1"
40+
"react": "^16.14.0",
41+
"react-dom": "^16.14.0"
4242
},
4343
"eslintConfig": {
4444
"extends": "react-app"
@@ -50,17 +50,17 @@
5050
"not op_mini all"
5151
],
5252
"devDependencies": {
53-
"@babel/cli": "^7.11.6",
54-
"@babel/core": "^7.11.6",
55-
"@babel/plugin-proposal-class-properties": "^7.10.4",
56-
"@babel/preset-env": "^7.11.5",
57-
"@babel/preset-react": "^7.10.4",
53+
"@babel/cli": "^7.12.10",
54+
"@babel/core": "^7.12.10",
55+
"@babel/plugin-proposal-class-properties": "^7.12.1",
56+
"@babel/preset-env": "^7.12.11",
57+
"@babel/preset-react": "^7.12.10",
5858
"@rollup/plugin-babel": "^5.2.1",
5959
"enzyme": "3.11.0",
60-
"enzyme-adapter-react-16": "1.15.4",
60+
"enzyme-adapter-react-16": "1.15.5",
6161
"prop-types": "^15.7.2",
62-
"react": "^16.13.1",
63-
"react-dom": "^16.13.1",
62+
"react": "^16.14.0",
63+
"react-dom": "^16.14.0",
6464
"react-scripts": "^3.4.4",
6565
"rollup": "2.32.1",
6666
"rollup-plugin-postcss": "^3.1.8",

src/demo/App.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ class App extends Component {
5454
console.log("saved!")
5555
}}
5656
editMode={this.state.editMode}
57-
instructions={"Toggle me!"}
57+
hideCancelButton
58+
hideSaveButton
5859
/>
5960
<EasyEdit
6061
type={Types.TEXT}
@@ -63,6 +64,8 @@ class App extends Component {
6364
}}
6465
editMode={this.state.editMode}
6566
instructions={"Toggle me!"}
67+
hideCancelButton
68+
hideSaveButton
6669
/>
6770
</div>
6871
<h3>Datalist</h3>

src/lib/EasyEdit.jsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,13 @@ export default class EasyEdit extends React.Component {
3535
if (this.props.value !== prevProps.value) {
3636
this.setState({
3737
tempValue: this.props.value,
38-
value: this.props.value
38+
value: this.props.value,
3939
});
4040
}
41+
42+
if (this.props.editMode !== prevProps.editMode && !this.props.editMode) {
43+
this._onSave();
44+
}
4145
}
4246

4347
onKeyDown = (e) => {

src/lib/EasyEdit.test.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,4 +420,11 @@ describe('EasyEdit', () => {
420420
expect(wrapper.find('input[name="test"]')).toHaveLength(1);
421421
expect(wrapper.find('.easy-edit-instructions').text()).toEqual("test");
422422
});
423+
424+
it('should save the value if the editMode prop is changed', () => {
425+
wrapper.setProps({ editMode: true });
426+
expect((wrapper.state().tempValue)).toEqual(null);
427+
wrapper.setProps({ value: "Updated Value", editMode: false });
428+
expect((wrapper.state().tempValue)).toEqual('Updated Value');
429+
});
423430
});

0 commit comments

Comments
 (0)