1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/testing/mochitest/tests/MochiKit-1.4.2/MochiKit/MochiKit.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,188 @@ 1.4 +/*** 1.5 + 1.6 +MochiKit.MochiKit 1.4.2 1.7 + 1.8 +See <http://mochikit.com/> for documentation, downloads, license, etc. 1.9 + 1.10 +(c) 2005 Bob Ippolito. All rights Reserved. 1.11 + 1.12 +***/ 1.13 + 1.14 +if (typeof(MochiKit) == 'undefined') { 1.15 + MochiKit = {}; 1.16 +} 1.17 + 1.18 +if (typeof(MochiKit.MochiKit) == 'undefined') { 1.19 + /** @id MochiKit.MochiKit */ 1.20 + MochiKit.MochiKit = {}; 1.21 +} 1.22 + 1.23 +MochiKit.MochiKit.NAME = "MochiKit.MochiKit"; 1.24 +MochiKit.MochiKit.VERSION = "1.4.2"; 1.25 +MochiKit.MochiKit.__repr__ = function () { 1.26 + return "[" + this.NAME + " " + this.VERSION + "]"; 1.27 +}; 1.28 + 1.29 +/** @id MochiKit.MochiKit.toString */ 1.30 +MochiKit.MochiKit.toString = function () { 1.31 + return this.__repr__(); 1.32 +}; 1.33 + 1.34 +/** @id MochiKit.MochiKit.SUBMODULES */ 1.35 +MochiKit.MochiKit.SUBMODULES = [ 1.36 + "Base", 1.37 + "Iter", 1.38 + "Logging", 1.39 + "DateTime", 1.40 + "Format", 1.41 + "Async", 1.42 + "DOM", 1.43 + "Selector", 1.44 + "Style", 1.45 + "LoggingPane", 1.46 + "Color", 1.47 + "Signal", 1.48 + "Position", 1.49 + "Visual", 1.50 + "DragAndDrop", 1.51 + "Sortable" 1.52 +]; 1.53 + 1.54 +if (typeof(JSAN) != 'undefined' || typeof(dojo) != 'undefined') { 1.55 + if (typeof(dojo) != 'undefined') { 1.56 + dojo.provide('MochiKit.MochiKit'); 1.57 + (function (lst) { 1.58 + for (var i = 0; i < lst.length; i++) { 1.59 + dojo.require("MochiKit." + lst[i]); 1.60 + } 1.61 + })(MochiKit.MochiKit.SUBMODULES); 1.62 + } 1.63 + if (typeof(JSAN) != 'undefined') { 1.64 + (function (lst) { 1.65 + for (var i = 0; i < lst.length; i++) { 1.66 + JSAN.use("MochiKit." + lst[i], []); 1.67 + } 1.68 + })(MochiKit.MochiKit.SUBMODULES); 1.69 + } 1.70 + (function () { 1.71 + var extend = MochiKit.Base.extend; 1.72 + var self = MochiKit.MochiKit; 1.73 + var modules = self.SUBMODULES; 1.74 + var EXPORT = []; 1.75 + var EXPORT_OK = []; 1.76 + var EXPORT_TAGS = {}; 1.77 + var i, k, m, all; 1.78 + for (i = 0; i < modules.length; i++) { 1.79 + m = MochiKit[modules[i]]; 1.80 + extend(EXPORT, m.EXPORT); 1.81 + extend(EXPORT_OK, m.EXPORT_OK); 1.82 + for (k in m.EXPORT_TAGS) { 1.83 + EXPORT_TAGS[k] = extend(EXPORT_TAGS[k], m.EXPORT_TAGS[k]); 1.84 + } 1.85 + all = m.EXPORT_TAGS[":all"]; 1.86 + if (!all) { 1.87 + all = extend(null, m.EXPORT, m.EXPORT_OK); 1.88 + } 1.89 + var j; 1.90 + for (j = 0; j < all.length; j++) { 1.91 + k = all[j]; 1.92 + self[k] = m[k]; 1.93 + } 1.94 + } 1.95 + self.EXPORT = EXPORT; 1.96 + self.EXPORT_OK = EXPORT_OK; 1.97 + self.EXPORT_TAGS = EXPORT_TAGS; 1.98 + }()); 1.99 + 1.100 +} else { 1.101 + if (typeof(MochiKit.__compat__) == 'undefined') { 1.102 + MochiKit.__compat__ = true; 1.103 + } 1.104 + (function () { 1.105 + if (typeof(document) == "undefined") { 1.106 + return; 1.107 + } 1.108 + var scripts = document.getElementsByTagName("script"); 1.109 + var kXHTMLNSURI = "http://www.w3.org/1999/xhtml"; 1.110 + var kSVGNSURI = "http://www.w3.org/2000/svg"; 1.111 + var kXLINKNSURI = "http://www.w3.org/1999/xlink"; 1.112 + var kXULNSURI = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; 1.113 + var base = null; 1.114 + var baseElem = null; 1.115 + var allScripts = {}; 1.116 + var i; 1.117 + var src; 1.118 + for (i = 0; i < scripts.length; i++) { 1.119 + src = null; 1.120 + switch (scripts[i].namespaceURI) { 1.121 + case kSVGNSURI: 1.122 + src = scripts[i].getAttributeNS(kXLINKNSURI, "href"); 1.123 + break; 1.124 + /* 1.125 + case null: // HTML 1.126 + case '': // HTML 1.127 + case kXHTMLNSURI: 1.128 + case kXULNSURI: 1.129 + */ 1.130 + default: 1.131 + src = scripts[i].getAttribute("src"); 1.132 + break; 1.133 + } 1.134 + if (!src) { 1.135 + continue; 1.136 + } 1.137 + allScripts[src] = true; 1.138 + if (src.match(/MochiKit.js(\?.*)?$/)) { 1.139 + base = src.substring(0, src.lastIndexOf('MochiKit.js')); 1.140 + baseElem = scripts[i]; 1.141 + } 1.142 + } 1.143 + if (base === null) { 1.144 + return; 1.145 + } 1.146 + var modules = MochiKit.MochiKit.SUBMODULES; 1.147 + for (var i = 0; i < modules.length; i++) { 1.148 + if (MochiKit[modules[i]]) { 1.149 + continue; 1.150 + } 1.151 + var uri = base + modules[i] + '.js'; 1.152 + if (uri in allScripts) { 1.153 + continue; 1.154 + } 1.155 + if (baseElem.namespaceURI == kSVGNSURI || 1.156 + baseElem.namespaceURI == kXULNSURI) { 1.157 + // SVG, XUL 1.158 + /* 1.159 + SVG does not support document.write, so if Safari wants to 1.160 + support SVG tests it should fix its deferred loading bug 1.161 + (see following below). 1.162 + 1.163 + */ 1.164 + var s = document.createElementNS(baseElem.namespaceURI, 'script'); 1.165 + s.setAttribute("id", "MochiKit_" + base + modules[i]); 1.166 + if (baseElem.namespaceURI == kSVGNSURI) { 1.167 + s.setAttributeNS(kXLINKNSURI, 'href', uri); 1.168 + } else { 1.169 + s.setAttribute('src', uri); 1.170 + } 1.171 + s.setAttribute("type", "application/x-javascript"); 1.172 + baseElem.parentNode.appendChild(s); 1.173 + } else { 1.174 + // HTML, XHTML 1.175 + /* 1.176 + DOM can not be used here because Safari does 1.177 + deferred loading of scripts unless they are 1.178 + in the document or inserted with document.write 1.179 + 1.180 + This is not XHTML compliant. If you want XHTML 1.181 + compliance then you must use the packed version of MochiKit 1.182 + or include each script individually (basically unroll 1.183 + these document.write calls into your XHTML source) 1.184 + 1.185 + */ 1.186 + document.write('<' + baseElem.nodeName + ' src="' + uri + 1.187 + '" type="text/javascript"></script>'); 1.188 + } 1.189 + }; 1.190 + })(); 1.191 +}