Skip to content

Commit 17b3ad6

Browse files
committed
Issue #8 : Fix deep for functions called in objects and arrays
1 parent fb5dcdc commit 17b3ad6

File tree

3 files changed

+13
-11
lines changed

3 files changed

+13
-11
lines changed

src/JsonTree.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ const defaultProps = {
6969
readOnly: (keyName, data, keyPath, deep, dataType) => false,
7070
onFullyUpdate: (data) => {
7171
},
72-
onDeltaUpdate: (type, keyPath, deep, key, newValue, oldValue) => {
72+
onDeltaUpdate: ({ type, keyPath, deep, key, newValue, oldValue }) => {
7373
},
7474
beforeRemoveAction: (key, keyPath, deep, oldValue) => new Promise(resolve => resolve()),
7575
beforeAddAction: (key, keyPath, deep, newValue) => new Promise(resolve => resolve()),

src/components/JsonArray.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class JsonArray extends Component {
6565
name: props.name,
6666
keyPath,
6767
deep: props.deep,
68+
nextDeep: props.deep + 1,
6869
collapsed: props.isCollapsed(keyPath, props.deep, props.data),
6970
addFormVisible: false,
7071
};
@@ -116,7 +117,7 @@ class JsonArray extends Component {
116117
handleRemoveItem(index) {
117118
return () => {
118119
const { beforeRemoveAction, logger } = this.props;
119-
const { data, keyPath, deep } = this.state;
120+
const { data, keyPath, nextDeep: deep } = this.state;
120121
const oldValue = data[index];
121122

122123
// Before Remove Action
@@ -150,7 +151,7 @@ class JsonArray extends Component {
150151
}
151152

152153
handleAddValueAdd({ newValue }) {
153-
const { data, keyPath, deep } = this.state;
154+
const { data, keyPath, nextDeep: deep } = this.state;
154155
const { beforeAddAction, logger } = this.props;
155156

156157
beforeAddAction(data.length, keyPath, deep, newValue).then(() => {
@@ -187,7 +188,7 @@ class JsonArray extends Component {
187188
handleEditValue({ key, value }) {
188189
return new Promise((resolve, reject) => {
189190
const { beforeUpdateAction } = this.props;
190-
const { data, keyPath, deep } = this.state;
191+
const { data, keyPath, nextDeep: deep } = this.state;
191192

192193
// Old value
193194
const oldValue = data[key];
@@ -249,7 +250,7 @@ class JsonArray extends Component {
249250
}
250251

251252
renderNotCollapsed() {
252-
const { name, data, keyPath, deep, addFormVisible } = this.state;
253+
const { name, data, keyPath, deep, addFormVisible, nextDeep } = this.state;
253254
const {
254255
isCollapsed,
255256
handleRemove,
@@ -290,7 +291,7 @@ class JsonArray extends Component {
290291
name={`${index}`}
291292
data={item}
292293
keyPath={keyPath}
293-
deep={deep + 1}
294+
deep={nextDeep}
294295
isCollapsed={isCollapsed}
295296
handleRemove={this.handleRemoveItem(index)}
296297
handleUpdateValue={this.handleEditValue}

src/components/JsonObject.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class JsonObject extends Component {
6565
data: props.data,
6666
keyPath,
6767
deep: props.deep,
68+
nextDeep: props.deep + 1,
6869
collapsed: props.isCollapsed(keyPath, props.deep, props.data),
6970
addFormVisible: false,
7071
};
@@ -114,7 +115,7 @@ class JsonObject extends Component {
114115
}
115116

116117
handleAddValueAdd({ key, newValue }) {
117-
const { data, keyPath, deep } = this.state;
118+
const { data, keyPath, nextDeep: deep } = this.state;
118119
const { beforeAddAction, logger } = this.props;
119120

120121
beforeAddAction(key, keyPath, deep, newValue).then(() => {
@@ -142,7 +143,7 @@ class JsonObject extends Component {
142143
handleRemoveValue(key) {
143144
return () => {
144145
const { beforeRemoveAction, logger } = this.props;
145-
const { data, keyPath, deep } = this.state;
146+
const { data, keyPath, nextDeep: deep } = this.state;
146147
const oldValue = data[key];
147148
// Before Remove Action
148149
beforeRemoveAction(key, keyPath, deep, oldValue).then(() => {
@@ -183,7 +184,7 @@ class JsonObject extends Component {
183184
handleEditValue({ key, value }) {
184185
return new Promise((resolve, reject) => {
185186
const { beforeUpdateAction } = this.props;
186-
const { data, keyPath, deep } = this.state;
187+
const { data, keyPath, nextDeep: deep } = this.state;
187188

188189
// Old value
189190
const oldValue = data[key];
@@ -245,7 +246,7 @@ class JsonObject extends Component {
245246
}
246247

247248
renderNotCollapsed() {
248-
const { name, data, keyPath, deep, addFormVisible } = this.state;
249+
const { name, data, keyPath, deep, nextDeep, addFormVisible } = this.state;
249250
const {
250251
isCollapsed,
251252
handleRemove,
@@ -287,7 +288,7 @@ class JsonObject extends Component {
287288
name={key}
288289
data={data[key]}
289290
keyPath={keyPath}
290-
deep={deep + 1}
291+
deep={nextDeep}
291292
isCollapsed={isCollapsed}
292293
handleRemove={this.handleRemoveValue(key)}
293294
handleUpdateValue={this.handleEditValue}

0 commit comments

Comments
 (0)