Commit ed4a061d authored by Romain Courteaud's avatar Romain Courteaud

Release version 0.27.0

parent b05c05f4
Pipeline #24919 passed with stage
in 0 seconds
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -781,6 +781,32 @@ if (typeof document.contains !== 'function') {
ScopeError.prototype = new Error();
ScopeError.prototype.constructor = ScopeError;
//////////////////////////////////////////
// ParserError
//////////////////////////////////////////
function DOMParserError(message) {
this.name = "DOMParserError";
if ((message !== undefined) && (typeof message !== "string")) {
throw new TypeError('You must pass a string for DOMParserError.');
}
this.message = message || "Default Message";
}
DOMParserError.prototype = new Error();
DOMParserError.prototype.constructor = DOMParserError;
//////////////////////////////////////////
// DOMParser
//////////////////////////////////////////
function parseDocumentStringOrFail(string, mime_type) {
var doc = new DOMParser().parseFromString(string, mime_type),
error_node = doc.querySelector('parsererror');
if (error_node !== null) {
// parsing failed
throw new DOMParserError(error_node.textContent);
}
return doc;
}
/////////////////////////////////////////////////////////////////
// renderJS.IframeSerializationError
/////////////////////////////////////////////////////////////////
......@@ -1901,8 +1927,7 @@ if (typeof document.contains !== 'function') {
.push(function handleDataURLAjaxResponse(xhr) {
// Insert a "base" element, in order to resolve all relative links
// which could get broken with a data url
var doc = (new DOMParser()).parseFromString(xhr.responseText,
'text/html'),
var doc = parseDocumentStringOrFail(xhr.responseText, 'text/html'),
base = doc.createElement('base'),
blob;
base.href = url;
......@@ -2200,7 +2225,7 @@ if (typeof document.contains !== 'function') {
// https://developer.mozilla.org/en-US/docs/Web/API/DOMParser
// https://developer.mozilla.org/en-US/docs/Code_snippets/HTML_to_DOM
tmp_constructor.__template_element =
(new DOMParser()).parseFromString(xhr.responseText, "text/html");
parseDocumentStringOrFail(xhr.responseText, "text/html");
parsed_html = renderJS.parseGadgetHTMLDocument(
tmp_constructor.__template_element,
url,
......@@ -2406,6 +2431,8 @@ if (typeof document.contains !== 'function') {
renderJS.ScopeError = ScopeError;
renderJS.IframeSerializationError = IframeSerializationError;
renderJS.loopEventListener = loopEventListener;
renderJS.DOMParserError = DOMParserError;
renderJS.parseDocumentStringOrFail = parseDocumentStringOrFail;
window.rJS = window.renderJS = renderJS;
window.__RenderJSGadget = RenderJSGadget;
window.__RenderJSEmbeddedGadget = RenderJSEmbeddedGadget;
......
{
"name": "renderjs",
"version": "0.26.0",
"version": "0.27.0",
"description": "RenderJs provides HTML5 gadgets",
"main": "dist/renderjs-latest.js",
"dependencies": {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment