Index: node_modules/vulcanize/node_modules/whacko/node_modules/parse5/lib/tree_construction/doctype.js |
diff --git a/node_modules/vulcanize/node_modules/whacko/node_modules/parse5/lib/tree_construction/doctype.js b/node_modules/vulcanize/node_modules/whacko/node_modules/parse5/lib/tree_construction/doctype.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..413c05a6a7a0d79e1d94d365f5820b034f9e12cf |
--- /dev/null |
+++ b/node_modules/vulcanize/node_modules/whacko/node_modules/parse5/lib/tree_construction/doctype.js |
@@ -0,0 +1,109 @@ |
+'use strict'; |
+ |
+//Const |
+var VALID_DOCTYPE_NAME = 'html', |
+ QUIRKS_MODE_SYSTEM_ID = 'http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd', |
+ QUIRKS_MODE_PUBLIC_ID_PREFIXES = [ |
+ "+//silmaril//dtd html pro v0r11 19970101//en", |
+ "-//advasoft ltd//dtd html 3.0 aswedit + extensions//en", |
+ "-//as//dtd html 3.0 aswedit + extensions//en", |
+ "-//ietf//dtd html 2.0 level 1//en", |
+ "-//ietf//dtd html 2.0 level 2//en", |
+ "-//ietf//dtd html 2.0 strict level 1//en", |
+ "-//ietf//dtd html 2.0 strict level 2//en", |
+ "-//ietf//dtd html 2.0 strict//en", |
+ "-//ietf//dtd html 2.0//en", |
+ "-//ietf//dtd html 2.1e//en", |
+ "-//ietf//dtd html 3.0//en", |
+ "-//ietf//dtd html 3.0//en//", |
+ "-//ietf//dtd html 3.2 final//en", |
+ "-//ietf//dtd html 3.2//en", |
+ "-//ietf//dtd html 3//en", |
+ "-//ietf//dtd html level 0//en", |
+ "-//ietf//dtd html level 0//en//2.0", |
+ "-//ietf//dtd html level 1//en", |
+ "-//ietf//dtd html level 1//en//2.0", |
+ "-//ietf//dtd html level 2//en", |
+ "-//ietf//dtd html level 2//en//2.0", |
+ "-//ietf//dtd html level 3//en", |
+ "-//ietf//dtd html level 3//en//3.0", |
+ "-//ietf//dtd html strict level 0//en", |
+ "-//ietf//dtd html strict level 0//en//2.0", |
+ "-//ietf//dtd html strict level 1//en", |
+ "-//ietf//dtd html strict level 1//en//2.0", |
+ "-//ietf//dtd html strict level 2//en", |
+ "-//ietf//dtd html strict level 2//en//2.0", |
+ "-//ietf//dtd html strict level 3//en", |
+ "-//ietf//dtd html strict level 3//en//3.0", |
+ "-//ietf//dtd html strict//en", |
+ "-//ietf//dtd html strict//en//2.0", |
+ "-//ietf//dtd html strict//en//3.0", |
+ "-//ietf//dtd html//en", |
+ "-//ietf//dtd html//en//2.0", |
+ "-//ietf//dtd html//en//3.0", |
+ "-//metrius//dtd metrius presentational//en", |
+ "-//microsoft//dtd internet explorer 2.0 html strict//en", |
+ "-//microsoft//dtd internet explorer 2.0 html//en", |
+ "-//microsoft//dtd internet explorer 2.0 tables//en", |
+ "-//microsoft//dtd internet explorer 3.0 html strict//en", |
+ "-//microsoft//dtd internet explorer 3.0 html//en", |
+ "-//microsoft//dtd internet explorer 3.0 tables//en", |
+ "-//netscape comm. corp.//dtd html//en", |
+ "-//netscape comm. corp.//dtd strict html//en", |
+ "-//o'reilly and associates//dtd html 2.0//en", |
+ "-//o'reilly and associates//dtd html extended 1.0//en", |
+ "-//spyglass//dtd html 2.0 extended//en", |
+ "-//sq//dtd html 2.0 hotmetal + extensions//en", |
+ "-//sun microsystems corp.//dtd hotjava html//en", |
+ "-//sun microsystems corp.//dtd hotjava strict html//en", |
+ "-//w3c//dtd html 3 1995-03-24//en", |
+ "-//w3c//dtd html 3.2 draft//en", |
+ "-//w3c//dtd html 3.2 final//en", |
+ "-//w3c//dtd html 3.2//en", |
+ "-//w3c//dtd html 3.2s draft//en", |
+ "-//w3c//dtd html 4.0 frameset//en", |
+ "-//w3c//dtd html 4.0 transitional//en", |
+ "-//w3c//dtd html experimental 19960712//en", |
+ "-//w3c//dtd html experimental 970421//en", |
+ "-//w3c//dtd w3 html//en", |
+ "-//w3o//dtd w3 html 3.0//en", |
+ "-//w3o//dtd w3 html 3.0//en//", |
+ "-//webtechs//dtd mozilla html 2.0//en", |
+ "-//webtechs//dtd mozilla html//en" |
+ ], |
+ QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES = [ |
+ '-//w3c//dtd html 4.01 frameset//', |
+ '-//w3c//dtd html 4.01 transitional//' |
+ ], |
+ QUIRKS_MODE_PUBLIC_IDS = [ |
+ '-//w3o//dtd w3 html strict 3.0//en//', |
+ '-/w3c/dtd html 4.0 transitional/en', |
+ 'html' |
+ ]; |
+ |
+exports.isQuirks = function (name, publicId, systemId) { |
+ if (name !== VALID_DOCTYPE_NAME) |
+ return true; |
+ |
+ if (systemId && systemId.toLowerCase() === QUIRKS_MODE_SYSTEM_ID) |
+ return true; |
+ |
+ if (publicId !== null) { |
+ publicId = publicId.toLowerCase(); |
+ |
+ if (QUIRKS_MODE_PUBLIC_IDS.indexOf(publicId) > -1) |
+ return true; |
+ |
+ var prefixes = QUIRKS_MODE_PUBLIC_ID_PREFIXES; |
+ |
+ if (systemId === null) |
+ prefixes = prefixes.concat(QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES); |
+ |
+ for (var i = 0; i < prefixes.length; i++) { |
+ if (publicId.indexOf(prefixes[i]) === 0) |
+ return true; |
+ } |
+ } |
+ |
+ return false; |
+}; |