Skip to content

Commit

Permalink
Fix encode/decode of void node with slate
Browse files Browse the repository at this point in the history
  • Loading branch information
SamyPesse committed Aug 8, 2016
1 parent e9b1f25 commit df30290
Show file tree
Hide file tree
Showing 5 changed files with 51 additions and 2 deletions.
5 changes: 4 additions & 1 deletion lib/json/encode.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,10 @@ function encodeTokenToJSON(token) {
json.data = encodeDataToJSON(data);
}

json.tokens = encodeTokensToJSON(token.getTokens());
var tokens = token.getTokens();
if (tokens.size > 0) {
json.tokens = encodeTokensToJSON(tokens);
}

return json;
}
Expand Down
12 changes: 12 additions & 0 deletions lib/slate/__tests__/block-void/back.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
token:
type: doc
tokens:
- type: header_one
tokens:
- type: text
text: Hello
- type: hr
- type: paragraph
tokens:
- type: text
text: World
22 changes: 22 additions & 0 deletions lib/slate/__tests__/block-void/expected.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
nodes:
- kind: block
type: header_one
isVoid: false
data: {}
nodes:
- kind: text
text: Hello
marks: []
- kind: block
type: hr
isVoid: true
data: {}
nodes: []
- kind: block
type: paragraph
isVoid: false
data: {}
nodes:
- kind: text
text: World
marks: []
12 changes: 12 additions & 0 deletions lib/slate/__tests__/block-void/input.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
token:
type: doc
tokens:
- type: header_one
tokens:
- type: text
text: Hello
- type: hr
- type: paragraph
tokens:
- type: text
text: World
2 changes: 1 addition & 1 deletion lib/slate/decode.js
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ function decodeTokens(node) {
return Immutable.List([
Token.create(node.type, {
data: node.data,
tokens: decodeNodesToTokens(node.nodes)
tokens: node.nodes? decodeNodesToTokens(node.nodes) : []
})
]);
}
Expand Down

0 comments on commit df30290

Please sign in to comment.