Skip to content

Commit dab937c

Browse files
authored
fix: crash on empty yaml (#348)
* fix: crash on empty yaml * Create giant-wolves-tie.md
1 parent b52c7e3 commit dab937c

File tree

4 files changed

+19
-3
lines changed

4 files changed

+19
-3
lines changed

.changeset/giant-wolves-tie.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"eslint-plugin-json-schema-validator": patch
3+
---
4+
5+
fix: crash on empty yaml

src/utils/ast/yaml.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,12 +126,13 @@ export function getYAMLNodeFromPath(
126126
): NodeData<YAML.YAMLNode> {
127127
let data: NodeData<YAML.YAMLNode> = {
128128
key: (sourceCode) => {
129+
const doc = node.body[0];
129130
if (node.body.length > 1) {
130-
return sourceCode.getFirstToken(node.body[0]).range!;
131+
return (sourceCode.getFirstToken(doc) || doc).range!;
131132
}
132-
const dataNode = node.body[0].content;
133+
const dataNode = doc.content;
133134
if (dataNode == null) {
134-
return sourceCode.getFirstToken(node.body[0]).range!;
135+
return (sourceCode.getFirstToken(doc) || doc).range!;
135136
}
136137
if (dataNode.type === "YAMLMapping" || dataNode.type === "YAMLSequence") {
137138
return sourceCode.getFirstToken(dataNode).range!;
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[
2+
{
3+
"message": "Root must be object.",
4+
"line": 1,
5+
"column": 1,
6+
"endLine": 2,
7+
"endColumn": 8
8+
}
9+
]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# empty

0 commit comments

Comments
 (0)