Socket
Socket
Sign inDemoInstall

@rgrove/parse-xml

Package Overview
Dependencies
0
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.0.1 to 2.0.2

21

CHANGELOG.md

@@ -7,2 +7,19 @@ # parse-xml changelog

## 2.0.2 (2020-01-10)
### Fixed
- Whitespace in attribute values is now normalized correctly. [#7]
Previously, attribute values were normalized according to the rules for
non-CDATA attributes, but this was incorrect and based on a misreading of
the spec.
Attribute values are now correctly parsed as CDATA, meaning that whitespace
is not collapsed or trimmed and whitespace character entities are resolved
to their respective characters rather than being normalized to spaces (which
was incorrect even by the non-CDATA rules!).
[#7]:https://github.com/rgrove/parse-xml/pull/7
## 2.0.1 (2019-04-09)

@@ -48,6 +65,6 @@

- [#2][2] New parsing option `resolveUndefinedEntity`.
- New parsing option `resolveUndefinedEntity`. [#2]
([@retorquere](https://github.com/retorquere))
[2]:https://github.com/rgrove/parse-xml/pull/2
[#2]:https://github.com/rgrove/parse-xml/pull/2

@@ -54,0 +71,0 @@ ## 1.0.0 (2017-06-04)

28

dist/commonjs/index.js

@@ -58,4 +58,5 @@ 'use strict';

while (consumeMisc(state)) {}
while (consumeMisc(state)) {} // eslint-disable-line no-empty
if (!isEof(state)) {

@@ -248,6 +249,8 @@ error(state, "Extra content at the end of the document");

while (consumeMisc(state)) {}
while (consumeMisc(state)) {} // eslint-disable-line no-empty
if (consumeDoctypeDecl(state)) {
while (consumeMisc(state)) {}
while (consumeMisc(state)) {} // eslint-disable-line no-empty
}

@@ -282,5 +285,5 @@

for (var i = 0; i < pos; ++i) {
var char = xml[i];
var _char = xml[i];
if (char === '\n') {
if (_char === '\n') {
column = 1;

@@ -291,3 +294,3 @@ excerpt = '';

column += 1;
excerpt += char;
excerpt += _char;
}

@@ -323,3 +326,4 @@ }

function nodeToJson() {
var json = Object.assign(Object.create(null), this);
var json = Object.assign(Object.create(null), this); // eslint-disable-line no-invalid-this
delete json.parent;

@@ -330,3 +334,3 @@ return json;

function normalizeAttrValue(state, value) {
return value.replace(Syntax.Global.Reference, state.replaceReference).replace(Syntax.Global.S, ' ').trim();
return value.replace(/[\x20\t\r\n]/g, ' ').replace(Syntax.Global.Reference, state.replaceReference);
}

@@ -370,3 +374,3 @@

function replaceReference(ref) {
var state = this;
var state = this; // eslint-disable-line no-invalid-this

@@ -388,5 +392,5 @@ if (ref[1] === '#') {

var char = String.fromCodePoint(codePoint);
var _char2 = String.fromCodePoint(codePoint);
if (!Syntax.Char.test(char)) {
if (!Syntax.Char.test(_char2)) {
state.pos = state.prevPos;

@@ -396,3 +400,3 @@ error(state, "Invalid character entity `" + ref + "`");

return char;
return _char2;
} // This is a named entity.

@@ -399,0 +403,0 @@

@@ -1,1 +0,1 @@

!function(n,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports["parse-xml"]=e():n.parseXml=e()}("undefined"!=typeof self?self:this,function(){return function(n){var e={};function t(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}return t.m=n,t.c=e,t.d=function(n,e,r){t.o(n,e)||Object.defineProperty(n,e,{enumerable:!0,get:r})},t.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},t.t=function(n,e){if(1&e&&(n=t(n)),8&e)return n;if(4&e&&"object"==typeof n&&n&&n.__esModule)return n;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:n}),2&e&&"string"!=typeof n)for(var o in n)t.d(r,o,function(e){return n[e]}.bind(null,o));return r},t.n=function(n){var e=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(e,"a",e),e},t.o=function(n,e){return Object.prototype.hasOwnProperty.call(n,e)},t.p="",t(t.s=0)}([function(n,e,t){"use strict";var r,o=Object.freeze([]),u=Object.freeze(Object.create(null)),i=Object.freeze({"&amp;":"&","&apos;":"'","&gt;":">","&lt;":"<","&quot;":'"'}),a="cdata",c="comment",f="element",l="text";function s(n,e){e.parent=n.parent,e.toJSON=C,n.parent.children.push(e)}function p(n,e){var t=n.parent.children,r=t[t.length-1];void 0!==r&&r.type===l?r.text+=e:s(n,{type:l,text:e})}function d(n){var e=F(n,r.Anchored.CDSect),t=e[0],o=e[1];return void 0!==t&&(n.options.preserveCdata?s(n,{type:a,text:o}):p(n,o),!0)}function v(n){var e=F(n,r.Anchored.CharData)[0];if(void 0===e)return!1;var t=e.indexOf("]]>");return-1!==t&&(n.pos=n.prevPos+t,g(n,"Element content may not contain the CDATA section close delimiter `]]>`")),r.CharOnly.test(e)||(n.pos=n.prevPos+e.search(new RegExp("(?!"+r.Char.source+")")),g(n,"Element content contains an invalid character")),p(n,e),!0}function h(n){var e=F(n,r.Anchored.Comment)[1];return void 0!==e&&(n.options.preserveComments&&s(n,{type:c,content:e.trim()}),!0)}function m(n){return h(n)||x(n)||function(n){return F(n,r.Anchored.S).length>0}(n)}function x(n){var e=F(n,r.Anchored.PI),t=e[0],o=e[1];return void 0!==t&&("xml"===o.toLowerCase()&&(n.pos=n.prevPos,g(n,"XML declaration is only allowed at the start of the document")),!0)}function b(n){var e=F(n,r.Anchored.Reference)[0];return void 0!==e&&(p(n,n.replaceReference(e)),!0)}function g(n,e){for(var t=n.pos,r=n.xml,o=1,u="",i=1,a=0;a<t;++a){var c=r[a];"\n"===c?(o=1,u="",i+=1):(o+=1,u+=c)}var f=r.indexOf("\n",t),l=0;(u+=-1===f?r.slice(t):r.slice(t,f)).length>50&&(o<40?u=u.slice(0,50):(l=o-20,u=u.slice(l,o+30)));var s=new Error(e+" (line "+i+", column "+o+")\n "+u+"\n"+" ".repeat(o-l+1)+"^\n");throw s.column=o,s.excerpt=u,s.line=i,s.pos=t,s}function C(){var n=Object.assign(Object.create(null),this);return delete n.parent,n}function y(n,e){return e.replace(r.Global.Reference,n.replaceReference).replace(r.Global.S," ").trim()}function F(n,e){var t=n.pos,r=n.slice,u=n.xml;null===r&&(t>0?(r=u.slice(t),n.slice=r):r=u);var i=r.match(e);return null===i?o:(n.prevPos=n.pos,n.pos+=i[0].length,n.slice=null,i)}n.exports=function(n,e){void 0===e&&(e=u),void 0===r&&(r=t(1)),"\ufeff"===n[0]&&(n=n.slice(1));var o={type:"document",children:[],parent:null,toJSON:C},a={length:(n=n.replace(/\r\n?/g,"\n")).length,options:e,parent:o,pos:0,prevPos:0,slice:null,xml:n};for(a.replaceReference=function(n){if("#"===n[1]){var e;e="x"===n[2]?parseInt(n.slice(3,-1),16):parseInt(n.slice(2,-1),10),isNaN(e)&&(this.pos=this.prevPos,g(this,"Invalid character entity `"+n+"`"));var t=String.fromCodePoint(e);return r.Char.test(t)||(this.pos=this.prevPos,g(this,"Invalid character entity `"+n+"`")),t}var o=i[n];if(void 0!==o)return o;if(this.options.resolveUndefinedEntity){var u=this.options.resolveUndefinedEntity(n);if(null!=u)return u}if(this.options.ignoreUndefinedEntities)return n;this.pos=this.prevPos,g(this,"Named entity isn't defined: `"+n+"`")}.bind(a),function(n){var e=n.pos;F(n,r.Anchored.XMLDecl);for(;m(n););if(function(n){return F(n,r.Anchored.doctypedecl).length>0}(n))for(;m(n););n.pos}(a),function n(e){var t=F(e,r.Anchored.EmptyElemTag),o=t[0],u=t[1],i=t[2];var a=void 0!==o;if(!a){var c=F(e,r.Anchored.STag);if(o=c[0],u=c[1],i=c[2],void 0===o)return!1}var l=e.parent;var p=function(n,e){var t=Object.create(null);if(!e)return t;for(var o=e.match(r.Global.Attribute).sort(),u=0,i=o.length;u<i;++u){var a=o[u],c=a.match(r.Eq),f=a.slice(0,c.index),l=a.slice(c.index+c[0].length);f in t&&(n.pos=n.prevPos,g(n,"Attribute `"+f+"` redefined")),l=y(n,l.slice(1,-1)),"xml:space"===f&&"default"!==l&&"preserve"!==l&&(n.pos=n.prevPos,g(n,'Value of the `xml:space` attribute must be "default" or "preserve"')),t[f]=l}return t}(e,i);var m={type:f,name:u,attributes:p,children:[]};var C=p["xml:space"];("preserve"===C||"default"!==C&&l.preserveWhitespace)&&(m.preserveWhitespace=!0);if(!a){for(e.parent=m,v(e);n(e)||b(e)||d(e)||x(e)||h(e);)v(e);var S=F(e,r.Anchored.ETag),D=S[1];D!==u&&(e.pos=e.prevPos,g(e,"Missing end tag for element "+u)),e.parent=l}s(e,m);return!0}(a)||g(a,"Root element is missing or invalid");m(a););return function(n){return n.pos>=n.length-1}(a)||g(a,"Extra content at the end of the document"),o}},function(n,e,t){"use strict";function r(){var n=y(["\n <?xml\n ","\n [sS]+?\n ?>\n"],["\n <\\?xml\n ","\n [\\s\\S]+?\n \\?>\n"]);return r=function(){return n},n}function o(){var n=y(["\n <?\n // Group 1: PITarget\n (\n ","\n )\n\n (?:\n ","\n (?:",")*?\n )?\n ?>\n"],["\n <\\?\n // Group 1: PITarget\n (\n ","\n )\n\n (?:\n ","\n (?:",")*?\n )?\n \\?>\n"]);return o=function(){return n},n}function u(){var n=y(["\n <!DOCTYPE\n ","\n\n [^[>]*\n\n (?:\n [ [sS]+? ]\n (?:",")?\n )?\n >\n"],["\n <!DOCTYPE\n ","\n\n [^[>]*\n\n (?:\n \\[ [\\s\\S]+? \\]\n (?:",")?\n )?\n >\n"]);return u=function(){return n},n}function i(){var n=y(["\n \x3c!--\n // Group 1: Comment text (optional)\n (\n (?:\n (?!-) ","\n | - (?!-) ","\n )*\n )\n --\x3e\n"]);return i=function(){return n},n}function a(){var n=y(["\n ^(?:",")*$\n"]);return a=function(){return n},n}function c(){var n=y(["\n <\n // Group 1: Start tag name\n (",")\n\n // Group 2: Attributes (optional)\n (\n (?:\n ","\n ","\n )*\n )\n\n (?:",")?\n >\n"]);return c=function(){return n},n}function f(){var n=y(["\n </\n // Group 1: End tag name\n (",")\n (?:",")?\n >\n"]);return f=function(){return n},n}function l(){var n=y(["\n <\n // Group 1: Element name\n (",")\n\n // Group 2: Attributes (optional)\n (\n (?:\n ","\n ","\n )*\n )\n\n (?:",")?\n />\n"]);return l=function(){return n},n}function s(){var n=y(["\n <![CDATA[\n // Group 1: CData text content (optional)\n (\n (?:",")*?\n )\n ]]>\n"],["\n <!\\[CDATA\\[\n // Group 1: CData text content (optional)\n (\n (?:",")*?\n )\n \\]\\]>\n"]);return s=function(){return n},n}function p(){var n=y(["\n ","\n ",'\n\n (?:\n "(?:\n [^<&"] | ',"\n )*\"\n\n |\n\n '(?:\n [^<&'] | ","\n )*'\n )\n"]);return p=function(){return n},n}function d(){var n=y(["\n (?:",")?\n =\n (?:",")?\n"]);return d=function(){return n},n}function v(){var n=y(["\n [ \t\r\n]+\n"],["\n [\\x20\\t\\r\\n]+\n"]);return v=function(){return n},n}function h(){var n=y(["\n &S+?;\n"],["\n &\\S+?;\n"]);return h=function(){return n},n}function m(){var n=y(["\n ","\n (?:",")*\n"]);return m=function(){return n},n}function x(){var n=y(["\n (?:\n ","\n\n |\n\n [\n .\n 0-9\n ·\n ̀-ͯ\n ‿-⁀\n -\n ]\n )\n"],["\n (?:\n ","\n\n |\n\n [\n .\n 0-9\n \\xB7\n \\u0300-\\u036F\n \\u203F-\\u2040\n -\n ]\n )\n"]);return x=function(){return n},n}function b(){var n=y(["\n (?:\n [\n :\n A-Z\n _\n a-z\n À-Ö\n Ø-ö\n ø-˿\n Ͱ-ͽ\n Ϳ-῿\n ‌-‍\n ⁰-↏\n Ⰰ-⿯\n 、-퟿\n 豈-﷏\n ﷰ-�\n ]\n\n |\n\n [\ud800-\udb7f][\udc00-\udfff]\n )\n"],["\n (?:\n [\n :\n A-Z\n _\n a-z\n \\xC0-\\xD6\n \\xD8-\\xF6\n \\xF8-\\u02FF\n \\u0370-\\u037D\n \\u037F-\\u1FFF\n \\u200C-\\u200D\n \\u2070-\\u218F\n \\u2C00-\\u2FEF\n \\u3001-\\uD7FF\n \\uF900-\\uFDCF\n \\uFDF0-\\uFFFD\n ]\n\n |\n\n [\\uD800-\\uDB7F][\\uDC00-\\uDFFF]\n )\n"]);return b=function(){return n},n}function g(){var n=y(["\n [^<&]+\n"]);return g=function(){return n},n}function C(){var n=y(["\n (?:\n [\n \t\n \n\n \r\n -퟿\n -�\n ]\n\n |\n\n [\ud800-\udbff][\udc00-\udfff]\n )\n"],["\n (?:\n [\n \\t\n \\n\n \\r\n \\x20-\\uD7FF\n \\uE000-\\uFFFD\n ]\n\n |\n\n [\\uD800-\\uDBFF][\\uDC00-\\uDFFF]\n )\n"]);return C=function(){return n},n}function y(n,e){return e||(e=n.slice(0)),n.raw=e,n}function F(n){for(var e=n.length,t=n.raw,r=e-1,o="",u=arguments.length,i=new Array(u>1?u-1:0),a=1;a<u;a++)i[a-1]=arguments[a];for(var c=0;c<e;++c)o+=t[c].replace(/(^|[^\\])\/\/.*$/gm,"$1").replace(/\s+/g,""),c<r&&(o+=i[c].source);return new RegExp(o)}e.Char=F(C()),e.CharData=F(g()),e.NameStartChar=F(b()),e.NameChar=F(x(),e.NameStartChar),e.Name=F(m(),e.NameStartChar,e.NameChar),e.Reference=F(h()),e.S=F(v()),e.Eq=F(d(),e.S,e.S),e.Attribute=F(p(),e.Name,e.Eq,e.Reference,e.Reference),e.CDSect=F(s(),e.Char),e.EmptyElemTag=F(l(),e.Name,e.S,e.Attribute,e.S),e.ETag=F(f(),e.Name,e.S),e.STag=F(c(),e.Name,e.S,e.Attribute,e.S),e.CharOnly=F(a(),e.Char),e.Comment=F(i(),e.Char,e.Char),e.doctypedecl=F(u(),e.S,e.S),e.PI=F(o(),e.Name,e.S,e.Char),e.XMLDecl=F(r(),e.S),e.Anchored={},e.Global={},Object.keys(e).forEach(function(n){if("Anchored"!==n&&"CharOnly"!==n&&"Global"!==n){var t=e[n];e.Anchored[n]=new RegExp("^"+t.source),e.Global[n]=new RegExp(t.source,"g")}})}])});
!function(n,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports["parse-xml"]=e():n.parseXml=e()}("undefined"!=typeof self?self:this,(function(){return function(n){var e={};function t(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}return t.m=n,t.c=e,t.d=function(n,e,r){t.o(n,e)||Object.defineProperty(n,e,{enumerable:!0,get:r})},t.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},t.t=function(n,e){if(1&e&&(n=t(n)),8&e)return n;if(4&e&&"object"==typeof n&&n&&n.__esModule)return n;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:n}),2&e&&"string"!=typeof n)for(var o in n)t.d(r,o,function(e){return n[e]}.bind(null,o));return r},t.n=function(n){var e=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(e,"a",e),e},t.o=function(n,e){return Object.prototype.hasOwnProperty.call(n,e)},t.p="",t(t.s=0)}([function(n,e,t){"use strict";var r,o=Object.freeze([]),u=Object.freeze(Object.create(null)),i=Object.freeze({"&amp;":"&","&apos;":"'","&gt;":">","&lt;":"<","&quot;":'"'}),a="cdata",c="comment",f="element",l="text";function s(n,e){e.parent=n.parent,e.toJSON=C,n.parent.children.push(e)}function p(n,e){var t=n.parent.children,r=t[t.length-1];void 0!==r&&r.type===l?r.text+=e:s(n,{type:l,text:e})}function d(n){var e=S(n,r.Anchored.CDSect),t=e[0],o=e[1];return void 0!==t&&(n.options.preserveCdata?s(n,{type:a,text:o}):p(n,o),!0)}function v(n){var e=S(n,r.Anchored.CharData)[0];if(void 0===e)return!1;var t=e.indexOf("]]>");return-1!==t&&(n.pos=n.prevPos+t,b(n,"Element content may not contain the CDATA section close delimiter `]]>`")),r.CharOnly.test(e)||(n.pos=n.prevPos+e.search(new RegExp("(?!"+r.Char.source+")")),b(n,"Element content contains an invalid character")),p(n,e),!0}function h(n){var e=S(n,r.Anchored.Comment)[1];return void 0!==e&&(n.options.preserveComments&&s(n,{type:c,content:e.trim()}),!0)}function m(n){return h(n)||x(n)||function(n){return S(n,r.Anchored.S).length>0}(n)}function x(n){var e=S(n,r.Anchored.PI),t=e[0],o=e[1];return void 0!==t&&("xml"===o.toLowerCase()&&(n.pos=n.prevPos,b(n,"XML declaration is only allowed at the start of the document")),!0)}function g(n){var e=S(n,r.Anchored.Reference)[0];return void 0!==e&&(p(n,n.replaceReference(e)),!0)}function b(n,e){for(var t=n.pos,r=n.xml,o=1,u="",i=1,a=0;a<t;++a){var c=r[a];"\n"===c?(o=1,u="",i+=1):(o+=1,u+=c)}var f=r.indexOf("\n",t),l=0;(u+=-1===f?r.slice(t):r.slice(t,f)).length>50&&(o<40?u=u.slice(0,50):(l=o-20,u=u.slice(l,o+30)));var s=new Error(e+" (line "+i+", column "+o+")\n "+u+"\n"+" ".repeat(o-l+1)+"^\n");throw s.column=o,s.excerpt=u,s.line=i,s.pos=t,s}function C(){var n=Object.assign(Object.create(null),this);return delete n.parent,n}function y(n,e){return e.replace(/[\x20\t\r\n]/g," ").replace(r.Global.Reference,n.replaceReference)}function F(n){if("#"===n[1]){var e;e="x"===n[2]?parseInt(n.slice(3,-1),16):parseInt(n.slice(2,-1),10),isNaN(e)&&(this.pos=this.prevPos,b(this,"Invalid character entity `"+n+"`"));var t=String.fromCodePoint(e);return r.Char.test(t)||(this.pos=this.prevPos,b(this,"Invalid character entity `"+n+"`")),t}var o=i[n];if(void 0!==o)return o;if(this.options.resolveUndefinedEntity){var u=this.options.resolveUndefinedEntity(n);if(null!=u)return u}if(this.options.ignoreUndefinedEntities)return n;this.pos=this.prevPos,b(this,"Named entity isn't defined: `"+n+"`")}function S(n,e){var t=n.pos,r=n.slice,u=n.xml;null===r&&(t>0?(r=u.slice(t),n.slice=r):r=u);var i=r.match(e);return null===i?o:(n.prevPos=n.pos,n.pos+=i[0].length,n.slice=null,i)}n.exports=function(n,e){void 0===e&&(e=u),void 0===r&&(r=t(1)),"\ufeff"===n[0]&&(n=n.slice(1));var o={type:"document",children:[],parent:null,toJSON:C},i={length:(n=n.replace(/\r\n?/g,"\n")).length,options:e,parent:o,pos:0,prevPos:0,slice:null,xml:n};for(i.replaceReference=F.bind(i),function(n){var e=n.pos;S(n,r.Anchored.XMLDecl);for(;m(n););if(function(n){return S(n,r.Anchored.doctypedecl).length>0}(n))for(;m(n););n.pos}(i),function n(e){var t=S(e,r.Anchored.EmptyElemTag),o=t[0],u=t[1],i=t[2],a=void 0!==o;if(!a){var c=S(e,r.Anchored.STag);if(o=c[0],u=c[1],i=c[2],void 0===o)return!1}var l=e.parent,p=function(n,e){var t=Object.create(null);if(!e)return t;for(var o=e.match(r.Global.Attribute).sort(),u=0,i=o.length;u<i;++u){var a=o[u],c=a.match(r.Eq),f=a.slice(0,c.index),l=a.slice(c.index+c[0].length);f in t&&(n.pos=n.prevPos,b(n,"Attribute `"+f+"` redefined")),l=y(n,l.slice(1,-1)),"xml:space"===f&&"default"!==l&&"preserve"!==l&&(n.pos=n.prevPos,b(n,'Value of the `xml:space` attribute must be "default" or "preserve"')),t[f]=l}return t}(e,i),m={type:f,name:u,attributes:p,children:[]},C=p["xml:space"];("preserve"===C||"default"!==C&&l.preserveWhitespace)&&(m.preserveWhitespace=!0);if(!a){for(e.parent=m,v(e);n(e)||g(e)||d(e)||x(e)||h(e);)v(e);S(e,r.Anchored.ETag)[1]!==u&&(e.pos=e.prevPos,b(e,"Missing end tag for element "+u)),e.parent=l}return s(e,m),!0}(i)||b(i,"Root element is missing or invalid");m(i););return function(n){return n.pos>=n.length-1}(i)||b(i,"Extra content at the end of the document"),o}},function(n,e,t){"use strict";function r(){var n=y(["\n <?xml\n ","\n [sS]+?\n ?>\n"],["\n <\\?xml\n ","\n [\\s\\S]+?\n \\?>\n"]);return r=function(){return n},n}function o(){var n=y(["\n <?\n // Group 1: PITarget\n (\n ","\n )\n\n (?:\n ","\n (?:",")*?\n )?\n ?>\n"],["\n <\\?\n // Group 1: PITarget\n (\n ","\n )\n\n (?:\n ","\n (?:",")*?\n )?\n \\?>\n"]);return o=function(){return n},n}function u(){var n=y(["\n <!DOCTYPE\n ","\n\n [^[>]*\n\n (?:\n [ [sS]+? ]\n (?:",")?\n )?\n >\n"],["\n <!DOCTYPE\n ","\n\n [^[>]*\n\n (?:\n \\[ [\\s\\S]+? \\]\n (?:",")?\n )?\n >\n"]);return u=function(){return n},n}function i(){var n=y(["\n \x3c!--\n // Group 1: Comment text (optional)\n (\n (?:\n (?!-) ","\n | - (?!-) ","\n )*\n )\n --\x3e\n"]);return i=function(){return n},n}function a(){var n=y(["\n ^(?:",")*$\n"]);return a=function(){return n},n}function c(){var n=y(["\n <\n // Group 1: Start tag name\n (",")\n\n // Group 2: Attributes (optional)\n (\n (?:\n ","\n ","\n )*\n )\n\n (?:",")?\n >\n"]);return c=function(){return n},n}function f(){var n=y(["\n </\n // Group 1: End tag name\n (",")\n (?:",")?\n >\n"]);return f=function(){return n},n}function l(){var n=y(["\n <\n // Group 1: Element name\n (",")\n\n // Group 2: Attributes (optional)\n (\n (?:\n ","\n ","\n )*\n )\n\n (?:",")?\n />\n"]);return l=function(){return n},n}function s(){var n=y(["\n <![CDATA[\n // Group 1: CData text content (optional)\n (\n (?:",")*?\n )\n ]]>\n"],["\n <!\\[CDATA\\[\n // Group 1: CData text content (optional)\n (\n (?:",")*?\n )\n \\]\\]>\n"]);return s=function(){return n},n}function p(){var n=y(["\n ","\n ",'\n\n (?:\n "(?:\n [^<&"] | ',"\n )*\"\n\n |\n\n '(?:\n [^<&'] | ","\n )*'\n )\n"]);return p=function(){return n},n}function d(){var n=y(["\n (?:",")?\n =\n (?:",")?\n"]);return d=function(){return n},n}function v(){var n=y(["\n [ \t\r\n]+\n"],["\n [\\x20\\t\\r\\n]+\n"]);return v=function(){return n},n}function h(){var n=y(["\n &S+?;\n"],["\n &\\S+?;\n"]);return h=function(){return n},n}function m(){var n=y(["\n ","\n (?:",")*\n"]);return m=function(){return n},n}function x(){var n=y(["\n (?:\n ","\n\n |\n\n [\n .\n 0-9\n ·\n ̀-ͯ\n ‿-⁀\n -\n ]\n )\n"],["\n (?:\n ","\n\n |\n\n [\n .\n 0-9\n \\xB7\n \\u0300-\\u036F\n \\u203F-\\u2040\n -\n ]\n )\n"]);return x=function(){return n},n}function g(){var n=y(["\n (?:\n [\n :\n A-Z\n _\n a-z\n À-Ö\n Ø-ö\n ø-˿\n Ͱ-ͽ\n Ϳ-῿\n ‌-‍\n ⁰-↏\n Ⰰ-⿯\n 、-퟿\n 豈-﷏\n ﷰ-�\n ]\n\n |\n\n [\ud800-\udb7f][\udc00-\udfff]\n )\n"],["\n (?:\n [\n :\n A-Z\n _\n a-z\n \\xC0-\\xD6\n \\xD8-\\xF6\n \\xF8-\\u02FF\n \\u0370-\\u037D\n \\u037F-\\u1FFF\n \\u200C-\\u200D\n \\u2070-\\u218F\n \\u2C00-\\u2FEF\n \\u3001-\\uD7FF\n \\uF900-\\uFDCF\n \\uFDF0-\\uFFFD\n ]\n\n |\n\n [\\uD800-\\uDB7F][\\uDC00-\\uDFFF]\n )\n"]);return g=function(){return n},n}function b(){var n=y(["\n [^<&]+\n"]);return b=function(){return n},n}function C(){var n=y(["\n (?:\n [\n \t\n \n\n \r\n -퟿\n -�\n ]\n\n |\n\n [\ud800-\udbff][\udc00-\udfff]\n )\n"],["\n (?:\n [\n \\t\n \\n\n \\r\n \\x20-\\uD7FF\n \\uE000-\\uFFFD\n ]\n\n |\n\n [\\uD800-\\uDBFF][\\uDC00-\\uDFFF]\n )\n"]);return C=function(){return n},n}function y(n,e){return e||(e=n.slice(0)),n.raw=e,n}function F(n){for(var e=n.length,t=n.raw,r=e-1,o="",u=arguments.length,i=new Array(u>1?u-1:0),a=1;a<u;a++)i[a-1]=arguments[a];for(var c=0;c<e;++c)o+=t[c].replace(/(^|[^\\])\/\/.*$/gm,"$1").replace(/\s+/g,""),c<r&&(o+=i[c].source);return new RegExp(o)}e.Char=F(C()),e.CharData=F(b()),e.NameStartChar=F(g()),e.NameChar=F(x(),e.NameStartChar),e.Name=F(m(),e.NameStartChar,e.NameChar),e.Reference=F(h()),e.S=F(v()),e.Eq=F(d(),e.S,e.S),e.Attribute=F(p(),e.Name,e.Eq,e.Reference,e.Reference),e.CDSect=F(s(),e.Char),e.EmptyElemTag=F(l(),e.Name,e.S,e.Attribute,e.S),e.ETag=F(f(),e.Name,e.S),e.STag=F(c(),e.Name,e.S,e.Attribute,e.S),e.CharOnly=F(a(),e.Char),e.Comment=F(i(),e.Char,e.Char),e.doctypedecl=F(u(),e.S,e.S),e.PI=F(o(),e.Name,e.S,e.Char),e.XMLDecl=F(r(),e.S),e.Anchored={},e.Global={},Object.keys(e).forEach((function(n){if("Anchored"!==n&&"CharOnly"!==n&&"Global"!==n){var t=e[n];e.Anchored[n]=new RegExp("^"+t.source),e.Global[n]=new RegExp(t.source,"g")}}))}])}));
{
"name": "@rgrove/parse-xml",
"version": "2.0.1",
"version": "2.0.2",
"description": "A fast, safe, compliant XML parser for Node.js and browsers.",

@@ -35,20 +35,19 @@ "keywords": [

"test": "nyc --check-coverage --lines 100 mocha tests/*.test.js --delay --reporter dot",
"test:browser": "(sleep 5 && open 'http://localhost:8080/tests/browser/') & webpack-dev-server --config tests/webpack.config.test.js --watch"
"test:browser": "(sleep 5 && open 'http://localhost:8080/tests/browser/') & webpack-dev-server --config tests/webpack.config.js --watch"
},
"devDependencies": {
"@babel/cli": "^7.2.3",
"@babel/core": "^7.2.2",
"@babel/preset-env": "^7.3.1",
"async": "^2.6.1",
"babel-eslint": "^10.0.1",
"@babel/cli": "^7.7.5",
"@babel/core": "^7.7.5",
"@babel/preset-env": "^7.7.6",
"@rgrove/eslint-config": "^1.4.0",
"async": "^3.1.0",
"babel-loader": "^8.0.5",
"eslint": "^5.13.0",
"eslint-plugin-babel": "^5.3.0",
"mocha": "^5.2.0",
"nyc": "^13.2.0",
"webpack": "^4.29.3",
"webpack-cli": "^3.2.3",
"webpack-dev-server": "^3.1.14"
"eslint": "^6.7.2",
"mocha": "^6.2.2",
"nyc": "^14.1.1",
"webpack": "^4.41.2",
"webpack-cli": "^3.3.10",
"webpack-dev-server": "^3.9.0"
},
"dependencies": {}
}

@@ -60,3 +60,3 @@ 'use strict';

while (consumeMisc(state)) {}
while (consumeMisc(state)) {} // eslint-disable-line no-empty

@@ -251,6 +251,6 @@ if (!isEof(state)) {

while (consumeMisc(state)) {}
while (consumeMisc(state)) {} // eslint-disable-line no-empty
if (consumeDoctypeDecl(state)) {
while (consumeMisc(state)) {}
while (consumeMisc(state)) {} // eslint-disable-line no-empty
}

@@ -334,3 +334,3 @@

function nodeToJson() {
let json = Object.assign(Object.create(null), this);
let json = Object.assign(Object.create(null), this); // eslint-disable-line no-invalid-this
delete json.parent;

@@ -342,5 +342,4 @@ return json;

return value
.replace(Syntax.Global.Reference, state.replaceReference)
.replace(Syntax.Global.S, ' ')
.trim();
.replace(/[\x20\t\r\n]/g, ' ')
.replace(Syntax.Global.Reference, state.replaceReference);
}

@@ -386,3 +385,3 @@

function replaceReference(ref) {
let state = this;
let state = this; // eslint-disable-line no-invalid-this

@@ -389,0 +388,0 @@ if (ref[1] === '#') {

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc