diff --git a/package-lock.json b/package-lock.json index c71fe3e..fe91bd2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "devDependencies": { "@11ty/eleventy": "^3.0.0", "@11ty/eleventy-plugin-vite": "^6.0.0-alpha.3", - "@bgotink/kdl": "^0.3.1", + "@bgotink/kdl": "^0.4.0", "@parcel/packager-raw-url": "^2.13.3", "@parcel/transformer-webmanifest": "^2.13.3", "@tailwindcss/typography": "^0.3.1", @@ -339,9 +339,9 @@ } }, "node_modules/@bgotink/kdl": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@bgotink/kdl/-/kdl-0.3.1.tgz", - "integrity": "sha512-EQQpjS3RiYNlUymAeO06WUrphzSdmbXzQrJ4s8JAr0Ft5WE67s23i5JaulZ3BO0yHA4tMkUT2cHWEgAq5iJC8Q==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@bgotink/kdl/-/kdl-0.4.0.tgz", + "integrity": "sha512-F0uJCjo5FQvFdcGF5QbYVNfcGiRWlocuzyIdQxottZF2+gu6L2xjMGEu9PIpse2hifAca/19vIospgaETCKxIg==", "dev": true, "license": "MIT" }, diff --git a/package.json b/package.json index 712c182..4f22d82 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "shiki": "^1.24.2", "svgo": "^3.3.2", "tailwindcss": "^2.0.2", - "@bgotink/kdl": "^0.3.1", + "@bgotink/kdl": "^0.4.0", "monaco-editor": "^0.52.0", "monaco-themes": "^0.4.4" }, diff --git a/static/play/play.js b/static/play/play.js index dff190f..d8a598b 100644 --- a/static/play/play.js +++ b/static/play/play.js @@ -110,38 +110,18 @@ addEventListener("DOMContentLoaded", (event) => { document.nodes.forEach(node => { output.append(buildNodeTree(node)) }) - } catch (error) { output.classList.add('error') if (error instanceof KDL.InvalidKdlError) { - markers.push({ - message: error.message, - severity: monaco.MarkerSeverity.Error, - startLineNumber: error.start?.line, - startColumn: error.start?.column, - endLineNumber: error.end?.line, - endColumn: error.end?.column, - }) - } else if (typeof AggregateError === 'function' && error instanceof AggregateError) { - for (const suberror of error.errors) { - if (suberror instanceof KDL.InvalidKdlError) { - markers.push({ - message: suberror.message, - severity: monaco.MarkerSeverity.Error, - startLineNumber: suberror.start?.line, - startColumn: suberror.start?.column, - endLineNumber: suberror.end?.line, - endColumn: suberror.end?.column, - }) - } else { - console.error(suberror); - markers.push({ - message: "Failed to parse KDL", - severity: monaco.MarkerSeverity.Error, - startLineNumber: 1, - startColumn: 1, - }) - } + for (const detail of error.flat()) { + markers.push({ + message: detail.message, + severity: monaco.MarkerSeverity.Error, + startLineNumber: detail.start?.line, + startColumn: detail.start?.column, + endLineNumber: detail.end?.line, + endColumn: detail.end?.column, + }) } } else { console.error(error) @@ -159,4 +139,4 @@ addEventListener("DOMContentLoaded", (event) => { model.onDidChangeContent(parse) parse() -}) \ No newline at end of file +})