{"library":"sane-domparser-error","title":"Sane DOMParser Errors","description":"sane-domparser-error is a JavaScript utility library designed to standardize error handling for DOMParser and XMLHttpRequest (when `responseType = 'document'`) in web environments. Typically, when an XML document cannot be parsed, these native APIs do not throw an exception but instead return a document containing a `<parsererror>` element. This library abstracts away the inconsistencies of the `<parsererror>` document across different browsers, providing a consistent mechanism to detect and report parsing failures as standard JavaScript `Error` objects. The package is currently at version 0.2.0, with its last update over a decade ago, indicating a maintenance status with a very infrequent release cadence. Its primary differentiator is simplifying robust XML parsing error detection, which is complex due to browser-specific `parsererror` document structures and namespaces.","language":"javascript","status":"maintenance","last_verified":"Tue Apr 21","install":{"commands":["npm install sane-domparser-error"],"cli":null},"imports":["const saneError = require('sane-domparser-error');","const saneError = require('sane-domparser-error');\nsaneError.failOnParseError(doc);"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"const saneError = require('sane-domparser-error');\n\n// Simulate an invalid XML string\nconst malformedXml = '<root><item>Missing end tag</item>';\n\n// Create a DOMParser instance (globally available in browsers)\nconst parser = new DOMParser();\n\n// Attempt to parse the malformed XML\nconst doc = parser.parseFromString(malformedXml, 'application/xml');\n\ntry {\n  // Use sane-domparser-error to check for and throw an error\n  // if the document contains a parsererror element.\n  saneError.failOnParseError(doc);\n  console.log('XML parsed successfully (this should not happen with malformed XML).');\n} catch (error) {\n  console.error('XML Parsing Error Caught:');\n  console.error(`- Error Message: ${error.message}`);\n  console.error(`- Error Name: ${error.name}`);\n  // In a real application, you might log the full stack or take recovery actions\n}\n\n// Example of valid XML for contrast\nconst validXml = '<root><item>Hello</item></root>';\nconst validDoc = parser.parseFromString(validXml, 'application/xml');\ntry {\n  saneError.failOnParseError(validDoc);\n  console.log('\\nValid XML parsed successfully.');\n} catch (error) {\n  console.error('\\nUnexpected error with valid XML:', error.message);\n}","lang":"javascript","description":"This quickstart demonstrates how to parse a malformed XML string using DOMParser and then utilize sane-domparser-error to catch and standardize the resulting parsing error into a throwable JavaScript Error object, contrasting it with successful parsing.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}