next
Version:
The React Framework
52 lines (51 loc) • 1.42 kB
JavaScript
// This utility is based on https://github.com/zertosh/htmlescape
// License: https://github.com/zertosh/htmlescape/blob/0527ca7156a524d256101bb310a9f970f63078ad/LICENSE
;
Object.defineProperty(exports, "__esModule", {
value: true
});
0 && (module.exports = {
ESCAPE_REGEX: null,
htmlEscapeAttributeString: null,
htmlEscapeJsonString: null
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
ESCAPE_REGEX: function() {
return ESCAPE_REGEX;
},
htmlEscapeAttributeString: function() {
return htmlEscapeAttributeString;
},
htmlEscapeJsonString: function() {
return htmlEscapeJsonString;
}
});
const ESCAPE_LOOKUP = {
'&': '\\u0026',
'>': '\\u003e',
'<': '\\u003c',
'\u2028': '\\u2028',
'\u2029': '\\u2029'
};
const ESCAPE_REGEX = /[&><\u2028\u2029]/g;
const ATTRIBUTE_ESCAPE_LOOKUP = {
'&': '&',
'"': '"',
"'": ''',
'<': '<',
'>': '>'
};
const ATTRIBUTE_ESCAPE_REGEX = /[&"'<>]/g;
function htmlEscapeJsonString(str) {
return str.replace(ESCAPE_REGEX, (match)=>ESCAPE_LOOKUP[match]);
}
function htmlEscapeAttributeString(str) {
return str.replace(ATTRIBUTE_ESCAPE_REGEX, (match)=>ATTRIBUTE_ESCAPE_LOOKUP[match]);
}
//# sourceMappingURL=htmlescape.js.map