mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-01-29 06:27:49 +00:00
Move some vendors to devDependencies.
This commit is contained in:
14
package.json
14
package.json
@@ -16,7 +16,19 @@
|
||||
],
|
||||
"repository": "lodash/lodash",
|
||||
"scripts": { "test": "echo \"See the repository CONTRIBUTING.md for testing instructions.\"" },
|
||||
"engines": ["node", "rhino"],
|
||||
"devDependencies": {
|
||||
"curl-amd": "0.8.12",
|
||||
"dojo": "~1.10.2",
|
||||
"jquery": "~1.11.1",
|
||||
"platform": "~1.2.0",
|
||||
"qunit-extras": "~1.2.0",
|
||||
"qunitjs": "~1.11.0",
|
||||
"requirejs": "~2.1.15"
|
||||
},
|
||||
"engines": [
|
||||
"node",
|
||||
"rhino"
|
||||
],
|
||||
"files": [
|
||||
"LICENSE.txt",
|
||||
"lodash.js",
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
</head>
|
||||
<body>
|
||||
<div id="perf-toolbar"></div>
|
||||
<script src="../vendor/platform.js/platform.js"></script>
|
||||
<script src="../node_modules/platform/platform.js"></script>
|
||||
<script src="../lodash.js"></script>
|
||||
<script src="../vendor/benchmark.js/benchmark.js"></script>
|
||||
<script src="../vendor/firebug-lite/src/firebug-lite-debug.js"></script>
|
||||
|
||||
@@ -156,9 +156,9 @@
|
||||
ui.loaderPath = (function() {
|
||||
var result;
|
||||
switch (loader) {
|
||||
case 'curl': result = 'vendor/curl/dist/curl-kitchen-sink/curl.js'; break;
|
||||
case 'dojo': result = 'vendor/dojo/dojo.js'; break;
|
||||
case 'requirejs': result = 'vendor/requirejs/require.js'; break;
|
||||
case 'curl': result = 'node_modules/curl-amd/dist/curl-kitchen-sink/curl.js'; break;
|
||||
case 'dojo': result = 'node_modules/dojo/dojo.js'; break;
|
||||
case 'requirejs': result = 'node_modules/requirejs/require.js'; break;
|
||||
case null: loader = 'none'; return '';
|
||||
default: return loader;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Backbone Test Suite</title>
|
||||
<link rel="stylesheet" href="../vendor/qunit/qunit/qunit.css">
|
||||
<link rel="stylesheet" href="../node_modules/qunitjs/qunit/qunit.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="qunit"></div>
|
||||
@@ -23,10 +23,10 @@
|
||||
};
|
||||
}
|
||||
</script>
|
||||
<script src="../vendor/qunit/qunit/qunit.js"></script>
|
||||
<script src="../vendor/qunit-extras/qunit-extras.js"></script>
|
||||
<script src="../node_modules/qunitjs/qunit/qunit.js"></script>
|
||||
<script src="../node_modules/qunit-extras/qunit-extras.js"></script>
|
||||
<script src="../vendor/json-js/json2.js"></script>
|
||||
<script src="../vendor/platform.js/platform.js"></script>
|
||||
<script src="../node_modules/platform/platform.js"></script>
|
||||
<script src="./asset/test-ui.js"></script>
|
||||
<script src="../lodash.js"></script>
|
||||
<script>
|
||||
@@ -53,7 +53,7 @@
|
||||
? '<script data-dojo-config="async:1" src="' + ui.loaderPath + '"><\/script>'
|
||||
: ([
|
||||
'<script src="' + ui.buildPath + '"><\/script>',
|
||||
'<script src="../vendor/jquery/jquery.js"><\/script>',
|
||||
'<script src="../node_modules/jquery/dist/jquery.js"><\/script>',
|
||||
'<script src="../vendor/backbone/backbone.js"><\/script>',
|
||||
'<script src="../vendor/backbone/test/environment.js"><\/script>',
|
||||
'<script src="../vendor/backbone/test/noconflict.js"><\/script>',
|
||||
@@ -89,7 +89,7 @@
|
||||
'waitSeconds': 0,
|
||||
'paths': {
|
||||
'backbone': '../vendor/backbone/backbone',
|
||||
'jquery': '../vendor/jquery/jquery'
|
||||
'jquery': '../node_modules/jquery/dist/jquery'
|
||||
},
|
||||
'packages': [{
|
||||
'name': 'test',
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Lo-Dash Test Suite</title>
|
||||
<link rel="stylesheet" href="../vendor/qunit/qunit/qunit.css">
|
||||
<link rel="stylesheet" href="../node_modules/qunitjs/qunit/qunit.css">
|
||||
<style>
|
||||
#exports {
|
||||
display: none;
|
||||
@@ -22,9 +22,9 @@
|
||||
};
|
||||
}
|
||||
</script>
|
||||
<script src="../vendor/qunit/qunit/qunit.js"></script>
|
||||
<script src="../vendor/qunit-extras/qunit-extras.js"></script>
|
||||
<script src="../vendor/platform.js/platform.js"></script>
|
||||
<script src="../node_modules/qunitjs/qunit/qunit.js"></script>
|
||||
<script src="../node_modules/qunit-extras/qunit-extras.js"></script>
|
||||
<script src="../node_modules/platform/platform.js"></script>
|
||||
<script src="./asset/set.js"></script>
|
||||
<script src="./asset/weakmap.js"></script>
|
||||
<script src="./asset/test-ui.js"></script>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Underscore Test Suite</title>
|
||||
<link rel="stylesheet" href="../vendor/qunit/qunit/qunit.css">
|
||||
<link rel="stylesheet" href="../node_modules/qunitjs/qunit/qunit.css">
|
||||
<style>
|
||||
iframe {
|
||||
display: none;
|
||||
@@ -30,10 +30,10 @@
|
||||
};
|
||||
}
|
||||
</script>
|
||||
<script src="../vendor/qunit/qunit/qunit.js"></script>
|
||||
<script src="../vendor/qunit-extras/qunit-extras.js"></script>
|
||||
<script src="../vendor/jquery/jquery.js"></script>
|
||||
<script src="../vendor/platform.js/platform.js"></script>
|
||||
<script src="../node_modules/qunitjs/qunit/qunit.js"></script>
|
||||
<script src="../node_modules/qunit-extras/qunit-extras.js"></script>
|
||||
<script src="../node_modules/jquery/dist/jquery.js"></script>
|
||||
<script src="../node_modules/platform/platform.js"></script>
|
||||
<script src="./asset/test-ui.js"></script>
|
||||
<script>
|
||||
QUnit.config.asyncRetries = 10;
|
||||
|
||||
24
vendor/curl/LICENSE.txt
vendored
24
vendor/curl/LICENSE.txt
vendored
@@ -1,24 +0,0 @@
|
||||
Open Source Initiative OSI - The MIT License
|
||||
|
||||
http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
Copyright (c) 2010-2013 Brian Cavalier and John Hann
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
51
vendor/curl/dist/curl-kitchen-sink/curl.js
vendored
51
vendor/curl/dist/curl-kitchen-sink/curl.js
vendored
@@ -1,51 +0,0 @@
|
||||
(function(){/*
|
||||
MIT License (c) copyright 2010-2013 B Cavalier & J Hann MIT (c) copyright 2010-2013 B Cavalier & J Hann */
|
||||
(function(d){function h(){}function m(b,e){return 0==T.call(b).indexOf("[object "+e)}function r(b){return b&&"/"==b.charAt(b.length-1)?b.substr(0,b.length-1):b}function c(b,e){var l,g,D,a;l=1;g=b;"."==g.charAt(0)&&(D=!0,g=g.replace(U,function(b,e,g,D){g&&l++;return D||""}));if(D){D=e.split("/");a=D.length-l;if(0>a)return b;D.splice(a,l);return D.concat(g||[]).join("/")}return g}function n(b){var e=b.indexOf("!");return{g:b.substr(e+1),d:0<=e&&b.substr(0,e)}}function t(){}function k(b,e){t.prototype=
|
||||
b||Q;var l=new t;t.prototype=Q;for(var g in e)l[g]=e[g];return l}function y(){function b(b,e,l){g.push([b,e,l])}function e(b,e){for(var l,D=0;l=g[D++];)(l=l[b])&&l(e)}var l,g,D;l=this;g=[];D=function(l,a){b=l?function(b){b&&b(a)}:function(b,e){e&&e(a)};D=h;e(l?0:1,a);e=h;g=G};this.then=function(e,g,D){b(e,g,D);return l};this.k=function(b){l.F=b;D(!0,b)};this.e=function(b){l.Ba=b;D(!1,b)};this.C=function(b){e(2,b)}}function v(b){return b instanceof y||b instanceof w}function q(b,e,l,g){v(b)?b.then(e,
|
||||
l,g):e(b)}function x(b,e,l){var g;return function(){0<=--b&&e&&(g=e.apply(G,arguments));0==b&&l&&l(g);return g}}function a(){var b,e;s="";b=[].slice.call(arguments);m(b[0],"Object")&&(e=b.shift(),e=f(e));return new w(b[0],b[1],b[2],e)}function f(b,e,l){var g;s="";if(b&&(u.T(b),z=u.b(b),"preloads"in b&&(g=new w(b.preloads,G,l,J,!0),u.m(function(){J=g})),b=b.main))return new w(b,e,l)}function w(b,e,l,g,D){var a;a=u.i(z,G,[].concat(b),D);this.then=this.then=b=function(b,e){q(a,function(e){b&&b.apply(G,
|
||||
e)},function(b){if(e)e(b);else throw b;});return this};this.next=function(b,e,g){return new w(b,e,g,a)};this.config=f;(e||l)&&b(e,l);u.m(function(){q(D||J,function(){q(g,function(){u.v(a)},l)})})}function A(b){var e,l;e=b.id;e==G&&(K!==G?K={J:"Multiple anonymous defines encountered"}:(e=u.ha())||(K=b));if(e!=G){l=E[e];e in E||(l=u.n(e,z),l=u.G(l.b,e),E[e]=l);if(!v(l))throw Error("duplicate define: "+e);l.ma=!1;u.H(l,b)}}function C(){var b=u.ea(arguments);A(b)}var s,z,F,H,B=d.document,L=B&&(B.head||
|
||||
B.getElementsByTagName("head")[0]),N=L&&L.getElementsByTagName("base")[0]||null,M={},I={},p={},V="addEventListener"in d?{}:{loaded:1,complete:1},Q={},T=Q.toString,G,E={},O={},J=!1,K,S=/^\/|^[^:]+:\/\//,U=/(\.)(\.?)(?:$|\/([^\.\/]+.*)?)/g,W=/\/\*[\s\S]*?\*\/|\/\/.*?[\n\r]/g,X=/require\s*\(\s*(["'])(.*?[^\\])\1\s*\)|[^\\]?(["'])/g,Y=/\s*,\s*/,R,u;u={r:function(b,e,l){var g;b=c(b,e);if("."==b.charAt(0))return b;g=n(b);b=(e=g.d)||g.g;b in l.c&&(b=l.c[b].O||b);e&&(0>e.indexOf("/")&&!(e in l.c)&&(b=r(l.R)+
|
||||
"/"+e),b=b+"!"+g.g);return b},i:function(b,e,l,g){function a(e,g){var l,p;l=u.r(e,c.id,b);if(!g)return l;p=n(l);if(!p.d)return l;l=E[p.d];p.g="normalize"in l?l.normalize(p.g,a,c.b)||"":a(p.g);return p.d+"!"+p.g}function p(e,l,n){var f;f=l&&function(b){l.apply(G,b)};if(m(e,"String")){if(f)throw Error("require(id, callback) not allowed");n=a(e,!0);e=E[n];if(!(n in E))throw Error("Module not resolved: "+n);return(n=v(e)&&e.a)||e}q(u.v(u.i(b,c.id,e,g)),f,n)}var c;c=new y;c.id=e||"";c.ia=g;c.I=l;c.b=b;
|
||||
c.q=p;p.toUrl=function(e){return u.n(a(e,!0),b).url};c.r=a;return c},G:function(b,e,l){var g,a,p;g=u.i(b,e,G,l);a=g.k;p=x(1,function(b){g.u=b;try{return u.$(g)}catch(e){g.e(e)}});g.k=function(b){q(l||J,function(){a(E[g.id]=O[g.url]=p(b))})};g.K=function(b){q(l||J,function(){g.a&&(p(b),g.C(I))})};return g},Y:function(b,e,l,g){return u.i(b,l,G,g)},ga:function(b){return b.q},M:function(b){return b.a||(b.a={})},fa:function(b){var e=b.w;e||(e=b.w={id:b.id,uri:u.N(b),exports:u.M(b),config:function(){return b.b}},
|
||||
e.a=e.exports);return e},N:function(b){return b.url||(b.url=u.s(b.q.toUrl(b.id),b.b))},T:function(b){var e,l,g,p,c;e="curl";l="define";g=p=d;if(b&&(c=b.overwriteApi||b.ya,e=b.apiName||b.oa||e,g=b.apiContext||b.na||g,l=b.defineName||b.ta||l,p=b.defineContext||b.sa||p,F&&m(F,"Function")&&(d.curl=F),F=null,H&&m(H,"Function")&&(d.define=H),H=null,!c)){if(g[e]&&g[e]!=a)throw Error(e+" already exists");if(p[l]&&p[l]!=C)throw Error(l+" already exists");}g[e]=a;p[l]=C},b:function(b){function e(b,e){var l,
|
||||
g,f,d,s;for(s in b){f=b[s];m(f,"String")&&(f={path:b[s]});f.name=f.name||s;d=a;g=n(r(f.name));l=g.g;if(g=g.d)d=p[g],d||(d=p[g]=k(a),d.c=k(a.c),d.f=[]),delete b[s];g=f;var h=e,q=void 0;g.path=r(g.path||g.location||"");h&&(q=g.main||"./main","."==q.charAt(0)||(q="./"+q),g.O=c(q,g.name+"/"));g.b=g.config;g.b&&(g.b=k(a,g.b));g.U=l.split("/").length;l?(d.c[l]=g,d.f.push(l)):d.o=u.S(f.path,a)}}function l(b){var e=b.c;b.Q=RegExp("^("+b.f.sort(function(b,g){return e[g].U-e[b].U}).join("|").replace(/\/|\./g,
|
||||
"\\$&")+")(?=\\/|$)");delete b.f}var g,a,p,f;"baseUrl"in b&&(b.o=b.baseUrl);"main"in b&&(b.O=b.main);"preloads"in b&&(b.za=b.preloads);"pluginPath"in b&&(b.R=b.pluginPath);if("dontAddFileExt"in b||b.j)b.j=RegExp(b.dontAddFileExt||b.j);g=z;a=k(g,b);a.c=k(g.c);p=b.plugins||{};a.plugins=k(g.plugins);a.B=k(g.B,b.B);a.A=k(g.A,b.A);a.f=[];e(b.packages,!0);e(b.paths,!1);for(f in p)b=u.r(f+"!","",a),a.plugins[b.substr(0,b.length-1)]=p[f];p=a.plugins;for(f in p)if(p[f]=k(a,p[f]),b=p[f].f)p[f].f=b.concat(a.f),
|
||||
l(p[f]);for(f in g.c)a.c.hasOwnProperty(f)||a.f.push(f);l(a);return a},n:function(b,e){var l,g,a,p;l=e.c;a=S.test(b)?b:b.replace(e.Q,function(b){g=l[b]||{};p=g.b;return g.path||""});return{b:p||z,url:u.S(a,e)}},S:function(b,e){var a=e.o;return a&&!S.test(b)?r(a)+"/"+b:b},s:function(b,e){return b+((e||z).j.test(b)?"":".js")},l:function(b,e,a){var g=B.createElement("script");g.onload=g.onreadystatechange=function(a){a=a||d.event;if("load"==a.type||V[g.readyState])delete p[b.id],g.onload=g.onreadystatechange=
|
||||
g.onerror="",e()};g.onerror=function(){a(Error("Syntax or http error: "+b.url))};g.type=b.p||"text/javascript";g.charset="utf-8";g.async=!b.P;g.src=b.url;p[b.id]=g;L.insertBefore(g,N);return g},L:function(b){var e=[],a;("string"==typeof b?b:b.toSource?b.toSource():b.toString()).replace(W,"").replace(X,function(b,p,f,c){c?a=a==c?G:a:a||e.push(f);return""});return e},ea:function(b){var e,a,g,p,f,c;f=b.length;g=b[f-1];p=m(g,"Function")?g.length:-1;2==f?m(b[0],"Array")?a=b[0]:e=b[0]:3==f&&(e=b[0],a=b[1]);
|
||||
!a&&0<p&&(c=!0,a=["require","exports","module"].slice(0,p).concat(u.L(g)));return{id:e,u:a||[],D:0<=p?g:function(){return g},t:c}},$:function(b){var e;e=b.D.apply(b.t?b.a:G,b.u);e===G&&b.a&&(e=b.w?b.a=b.w.exports:b.a);return e},H:function(b,e){b.D=e.D;b.t=e.t;b.I=e.u;u.v(b)},v:function(b){function e(b,e,a){c[e]=b;a&&s(b,e)}function a(e,g){var p,f,l,c;p=x(1,function(b){f(b);k(b,g)});f=x(1,function(b){s(b,g)});l=u.ba(e,b);(c=v(l)&&l.a)&&f(c);q(l,p,b.e,b.a&&function(b){l.a&&(b==M?f(l.a):b==I&&p(l.a))})}
|
||||
function g(){b.k(c)}var p,f,c,n,d,s,k;c=[];f=b.I;n=f.length;0==f.length&&g();s=x(n,e,function(){b.K&&b.K(c)});k=x(n,e,g);for(p=0;p<n;p++)d=f[p],d in R?(k(R[d](b),p,!0),b.a&&b.C(M)):d?a(d,p):k(G,p,!0);return b},ca:function(b){u.N(b);u.l(b,function(){var e=K;K=G;!1!==b.ma&&(!e||e.J?b.e(Error(e&&e.J||"define() missing or duplicated: "+b.url)):u.H(b,e))},b.e);return b},ba:function(b,e){var a,g,p,f,c,d,s,k,m,h,r,w;a=e.r;g=e.ia;p=e.b||z;c=a(b);c in E?d=c:(f=n(c),k=f.g,d=f.d||k,m=u.n(d,p));if(!(c in E))if(w=
|
||||
u.n(k,p).b,f.d)s=d;else if(s=w.moduleLoader||w.xa||w.loader||w.wa)k=d,d=s,m=u.n(s,p);d in E?h=E[d]:m.url in O?h=E[d]=O[m.url]:(h=u.G(w,d,g),h.url=u.s(m.url,m.b),E[d]=O[m.url]=h,u.ca(h));d==s&&(f.d&&p.plugins[f.d]&&(w=p.plugins[f.d]),r=new y,q(h,function(b){var e,p,f;f=b.dynamic;k="normalize"in b?b.normalize(k,a,h.b)||"":a(k);p=s+"!"+k;e=E[p];if(!(p in E)){e=u.Y(w,p,k,g);f||(E[p]=e);var c=function(b){f||(E[p]=b);e.k(b)};c.resolve=c;c.reject=c.error=e.e;b.load(k,e.q,c,w)}r!=e&&q(e,r.k,r.e,r.C)},r.e));
|
||||
return r||h},ha:function(){var b;if(!m(d.opera,"Opera"))for(var e in p)if("interactive"==p[e].readyState){b=e;break}return b},da:function(b){var e=0,a,p;for(a=B&&(B.scripts||B.getElementsByTagName("script"));a&&(p=a[e++]);)if(b(p))return p},aa:function(){var b,e="";(b=u.da(function(b){(b=b.getAttribute("data-curl-run"))&&(e=b);return b}))&&b.setAttribute("data-curl-run","");return e},V:function(){function b(){u.l({url:p.shift()},e,e)}function e(){s&&(p.length?(u.m(a),b()):a("run.js script did not run."))}
|
||||
function a(b){throw Error(b||"Primary run.js failed. Trying fallback.");}var p=s.split(Y);p.length&&b()},m:function(b){setTimeout(b,0)}};R={require:u.ga,exports:u.M,module:u.fa};a.version="0.8.10";a.config=f;C.amd={plugins:!0,jQuery:!0,curl:"0.8.10"};z={o:"",R:"curl/plugin",j:/\?|\.js\b/,B:{},A:{},plugins:{},c:{},Q:/$^/};F=d.curl;H=d.define;F&&m(F,"Object")?(d.curl=G,f(F)):u.T();(s=u.aa())&&u.m(u.V);E.curl=a;E["curl/_privileged"]={core:u,cache:E,config:function(){return z},_define:A,_curl:a,Promise:y}})(this.window||
|
||||
"undefined"!=typeof global&&global||this);
|
||||
(function(d,h){function m(){if(!h.body)return!1;C||(C=h.createTextNode(""));try{return h.body.removeChild(h.body.appendChild(C)),C=A,!0}catch(a){return!1}}function r(){var c;c=t[h[n]]&&m();if(!v&&c){v=!0;for(clearTimeout(w);a=f.pop();)a();y&&(h[n]="complete");for(var d;d=k.shift();)d()}return c}function c(){r();v||(w=setTimeout(c,q))}var n="readyState",t={loaded:1,interactive:1,complete:1},k=[],y=h&&"string"!=typeof h[n],v=!1,q=10,x,a,f=[],w,A,C;x="addEventListener"in d?function(a,f){a.addEventListener(f,
|
||||
r,!1);return function(){a.removeEventListener(f,r,!1)}}:function(a,f){a.attachEvent("on"+f,r);return function(){a.detachEvent(f,r)}};h&&!r()&&(f=[x(d,"load"),x(h,"readystatechange"),x(d,"DOMContentLoaded")],w=setTimeout(c,q));define("curl/domReady",function(){function a(f){v?f():k.push(f)}a.then=a;a.amd=!0;return a})})(this,this.document);var P;
|
||||
(function(d,h){define("curl/shim/dojo18",["curl/_privileged"],function(m){function r(f){f.has||(f.has=a);f.on||(f.on=n);f.idle||(f.idle=c);f.async=!0}function c(){for(var a in k)if(k[a]instanceof y)return!1;return!0}function n(){}var t,k,y,v;t=m._curl;k=m.cache;y=m.Promise;v=m.core.i;var q,x,a;q=m.b().va||{};x=h&&h.createElement("div");a=function(a){return"function"==typeof q[a]?q[a]=q[a](d,h,x):q[a]};a.add=function(f,c,d,k){if(void 0===q[f]||k)q[f]=c;if(d)return a(f)};q["dojo-loader"]=!1;k["dojo/_base/loader"]=
|
||||
0;"undefined"==typeof P&&(r(t),P=t);m.core.i=function(){var a=v.apply(this,arguments);r(a.q);return a};return!0})})("object"==typeof global?global:this.window||this.global,"object"==typeof document&&document);
|
||||
(function(d,h,m){define("curl/plugin/js",["curl/_privileged"],function(d){function c(a,f,c){function k(){h||(n<new Date?c():setTimeout(k,10))}var n,h,q;n=(new Date).valueOf()+(a.la||3E5);c&&a.a&&setTimeout(k,10);q=d.core.l(a,function(){h=!0;a.a&&(a.F=m(a.a));!a.a||a.F?f(q):c()},function(a){h=!0;c(a)})}function n(a,f){c(a,function(){var c=k.shift();q=0<k.length;c&&n.apply(null,c);f.k(a.F||!0)},function(a){f.e(a)})}var t={},k=[],y=h&&!0==h.createElement("script").async,v,q,x=/\?|\.js\b/;v=d.Promise;
|
||||
return{dynamic:!0,normalize:function(a,c){var d=a.indexOf("!");return 0<=d?c(a.substr(0,d))+a.substr(d):c(a)},load:function(a,f,d,h){function m(a){(d.error||function(a){throw a;})(a)}var r,z,F,H,B;r=0<a.indexOf("!order");z=a.indexOf("!exports=");F=0<z?a.substr(z+9):h.a;H="prefetch"in h?h.prefetch:!0;a=r||0<z?a.substr(0,a.indexOf("!")):a;z=(z=h.dontAddFileExt||h.j)?RegExp(z):x;B=f.toUrl(a);z.test(B)||(B=B.lastIndexOf(".")<=B.lastIndexOf("/")?B+".js":B);B in t?t[B]instanceof v?t[B].then(d,m):d(t[B]):
|
||||
(a={name:a,url:B,P:r,a:F,la:h.timeout},t[B]=f=new v,f.then(function(a){t[B]=a;d(a)},m),r&&!y&&q?(k.push([a,f]),H&&(a.p="text/cache",c(a,function(a){a&&a.parentNode.removeChild(a)},function(){}),a.p="")):(q=q||r,n(a,f)))},cramPlugin:"../cram/js"}})})(this,this.document,function(d){try{return eval(d)}catch(h){}});
|
||||
define("curl/plugin/_fetchText",[],function(){var d,h;h=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"];d=function(){if("undefined"!==typeof XMLHttpRequest)d=function(){return new XMLHttpRequest};else for(var m=d=function(){throw Error("getXhr(): XMLHttpRequest not available");};0<h.length&&d===m;)(function(h){try{new ActiveXObject(h),d=function(){return new ActiveXObject(h)}}catch(c){}})(h.shift());return d()};return function(h,r,c){var n=d();n.open("GET",h,!0);n.onreadystatechange=function(){4===
|
||||
n.readyState&&(400>n.status?r(n.responseText):c(Error("fetchText() failed. status: "+n.statusText)))};n.send(null)}});define("curl/plugin/text",["./_fetchText"],function(d){function h(d){throw d;}return{load:function(m,r,c){d(r.toUrl(m),c,c.error||h)},cramPlugin:"../cram/text"}});
|
||||
define("curl/plugin/async",function(){return{load:function(d,h,m){function r(c){"function"==typeof m.error&&m.error(c)}h([d],function(c){"function"==typeof c.then?c.then(function(d){0==arguments.length&&(d=c);m(d)},r):m(c)},m.error||function(c){throw c;})},analyze:function(d,h,m){m(d)}}});
|
||||
(function(d){function h(){var a;a=s[A]("link");a.rel="stylesheet";a.type="text/css";return a}function m(a,c){a.onload=function(){I.load=I.load||!0;c()}}function r(a,c){a.onerror=function(){I.error=I.error||!0;c()}}function c(a,c,f){B.push({url:a,W:c,Z:function(){f(Error(M))}});(a=t())&&n(a)}function n(a){var c,f;c=B.shift();f=a.styleSheet;c?(a.onload=function(){c.W(c.ka);n(a)},a.onerror=function(){c.Z();n(a)},c.ka=f.imports[f.addImport(c.url)]):(a.onload=a.onerror=w,H.push(a))}function t(){var a;
|
||||
a=H.shift();!a&&F.length<L&&(a=s.createElement("style"),F.push(a),z.appendChild(a));return a}function k(a){var c,f,d;if(!a.href||s.readyState&&"complete"!=s.readyState)return!1;c=!1;try{if(f=a.sheet)d=f.cssRules,c=null===d,!c&&d&&(f.insertRule("-curl-css-test {}",0),f.deleteRule(0),c=!0)}catch(k){c="[object Opera]"!=Object.prototype.toString.call(window.opera)&&/security|denied/i.test(k.message)}return c}function y(a,c,f){I.load||(k(a)?f(a.sheet):a.onload==w||!a.onload||C(function(){y(a,c,f)},c))}
|
||||
function v(c,f,d){function k(){c.onload!=w&&c.onload&&(c.onload=c.onerror=w,a(function(){d(c.sheet)}))}m(c,k);y(c,f,k)}function q(a,c){r(a,function(){a.onload!=w&&a.onload&&(a.onload=a.onerror=w,c(Error(M)))})}function x(a,c,f,d){var k;k=h();v(k,d,c);q(k,f);k.href=a;z.appendChild(k)}function a(a){function c(){s.readyState&&"complete"!=s.readyState?C(c,10):a()}c()}function f(a){return a.lastIndexOf(".")<=a.lastIndexOf("/")?a+".css":a}function w(){}var A="createElement",C=d.setTimeout,s=d.document,
|
||||
z;d=s&&s.createStyleSheet&&!(10<=s.documentMode);var F=[],H=[],B=[],L=12,N,M="HTTP or network error.",I={};s&&(z=s.head||s.getElementsByTagName("head")[0],N=d?c:x);define("curl/plugin/css",{normalize:function(a,c){var f,d;if(!a)return a;f=a.split(",");d=[];for(var k=0,h=f.length;k<h;k++)d.push(c(f[k]));return d.join(",")},load:function(a,c,d,k){function n(a){1<q.length&&r.push(a);0==--t&&d(1==q.length?a:r)}function m(a){(d.e||function(a){throw a;})(a)}var r,q,s,t,v;r=[];q=(a||"").split(",");s=k.cssWatchPeriod||
|
||||
50;k=k.cssNoWait;t=q.length;for(v=0;v<q.length;v++){a=q[v];var x;a=f(c.toUrl(a));k?(x=h(),x.href=a,z.appendChild(x),n(x.sheet||x.styleSheet)):N(a,n,m,s)}},cramPlugin:"../cram/css"})})(this);
|
||||
(function(d){var h=d.document,m=/^\/\//,r;h&&(r=h.head||(h.head=h.getElementsByTagName("head")[0]));define("curl/plugin/link",{load:function(c,d,t,k){c=d.toUrl(c);c=c.lastIndexOf(".")<=c.lastIndexOf("/")?c+".css":c;k=c=(k="fixSchemalessUrls"in k?k.fixSchemalessUrls:h.location.protocol)?c.replace(m,k+"//"):c;c=h.createElement("link");c.rel="stylesheet";c.type="text/css";c.href=k;r.appendChild(c);t(c.sheet||c.styleSheet)}})})(this);
|
||||
(function(d){define("curl/plugin/json",["./_fetchText"],function(h){function m(c){throw c;}function r(c,d,k){return function(h){try{d(c(h))}catch(m){k(m)}}}var c;c="undefined"!=typeof JSON&&JSON.parse;return{load:function(n,t,k,y){function v(a){k(d("("+a+")"))}function q(a){return JSON.parse(a)}var x;x=k.error||m;y.Ea?(c||m(Error("Cannot use strictJSONParse without JSON.parse")),y=r(q,k,x)):y=r(v,k,x);h(t.toUrl(n),y,x)},cramPlugin:"../cram/json"}})})(function(d){return(0,eval)(d)});
|
||||
define("curl/plugin/domReady",["../domReady"],function(d){return{load:function(h,m,r){d(r)}}});(function(d){define("curl/shim/_fetchText",function(){function h(c,d,h){r.Aa(c,function(c,k){c?h(c):d(k.toString())})}function m(d,h,m){var r;d=n.parse(d,!1,!0);r="";c.get(d,function(c){c.h("data",function(a){r+=a}).h("end",function(){h(r)}).h("error",m)}).h("error",m)}var r,c,n;r=d("fs");c=d("http");n=d("url");var t;t=/^https?:/;return function(c,d,n){t.test(c)?m(c,d,n):h(c,d,n)}})})(P);define.amd.Da=!0;
|
||||
"undefined"!==typeof module&&(module.a=curl);
|
||||
(function(d,h){define("curl/shim/ssjs",["curl/_privileged","./_fetchText"],function(m,r){function c(a,c,d){try{h(a.url),c()}catch(f){d(f)}}function n(a,c,f){var k;try{k=a.url.replace(/\.js$/,""),d(k),c()}catch(h){f(h)}}function t(a,c,f){var k;a=d("url").parse(a.url,!1,!0);k="";C.get(a,function(a){a.h("data",function(a){k+=a}).h("end",function(){y(k);c()}).h("error",f)}).h("error",f)}function k(a){throw Error("ssjs: unable to load module in current environment: "+a.url);}function y(a){eval(a)}function v(a){return a&&
|
||||
a.replace(w,function(a,c){return c})}function q(a){return a&&":"!=a[a.length-1]?a+":":a}var x,a,f,w,A,C,s,z;if("object"!=typeof window||!window.qa&&!window.navigator){x=m.pa;a=m.b();f=/^\w+:\/\//;w=/(^\w+:)?.*$/;"undefined"==typeof XMLHttpRequest&&(x["curl/plugin/_fetchText"]=r);A=q(a.ra)||v(a.o)||"http:";if(h)s=z=c;else if(d){s=n;try{C=d("http"),z=t}catch(F){z=k}}else s=z=k;"object"===typeof process&&process.ja&&(m.X.m=process.ja);m.X.l=function(a,c,d){/^\/\//.test(a.url)&&(a.url=A+a.url);return f.test(a.url)?
|
||||
z(a,c,d):s(a,c,d)}}})})(P,void 0);
|
||||
(function(d,h,m){define("curl/loader/cjsm11",["../plugin/_fetchText","curl/_privileged"],function(d,c){function n(c,a){n="text"in c?function(a,c){a.text=c}:function(a,c){a.appendChild(h.createTextNode(c))};n(c,a)}function t(c,a,d){d=d?"////# sourceURL="+d.replace(/\s/g,"%20")+"":"";return"define('"+a+"',['require','exports','module'],function(require,exports,module,define){"+c+"\n});\n"+d+"\n"}var k,y,v,q;y=(k=h&&(h.head||h.getElementsByTagName("head")[0]))&&k.getElementsByTagName("base")[0]||null;
|
||||
v=c.core.L;q=c.core.s;t.load=function(c,a,f,w){var A,C,s;A=f.error||function(a){throw a;};C=q(a.toUrl(c),w);s=!1!==w.injectSourceUrl&&C;d(C,function(d){var r;r=v(d);a(r,function(){d=t(d,c,s);if(w.injectScript){var r=d,q=h.createElement("script");n(q,r);q.charset="utf-8";k.insertBefore(q,y)}else m(d);f(a(c))},A)},A)};t.cramPlugin="../cram/cjsm11";return t})})(this,this.document,function(d){eval(d)});
|
||||
define("curl/plugin/locale",function(){function d(d,c){var h;if(d&&(h=d.locale,"function"==typeof h&&(h=h(d,c)),"string"==typeof h))return h;if("undefined"==typeof window)return!1;h=window.clientInformation||window.navigator;return(h&&(h.language||h.userLanguage)||"").toLowerCase()}function h(d,c){return d.replace(m,(c?"/"+c:"")+"$&")}var m;m=/(\.js)?$/;d.toModuleId=h;d.load=function(m,c,n,t){function k(){var a=Error("Unable to find correct locale for "+m);if(n.error)n.error(a);else throw a;}var y,
|
||||
v;y=d(t,m);v=t.localeToModuleId||h;t=y?v(m,y):m;try{n(c(t))}catch(q){v=y?v(m,!1):m;if(v==t)return k();try{n(c(v))}catch(x){if(!0!==y)return k();c(["i18n!"+m],n,k)}}};return d});
|
||||
define("curl/plugin/i18n",["./locale"],function(d){function h(d,h,c,n,t){d([h],function(d){n(d,c)},t)}return{load:function(m,r,c,n){function t(a,c){x[c]=a;k()}function k(){var d;if(++a==f.length)if(0==x.length)y(Error('No i18n bundles found: "'+m+'", locale "'+q+'"'));else{d=x[0]||{};for(A=1;A<x.length;A++){var h=x[A],k={},n=void 0;for(n in d)k[n]=d[n];if(h)for(n in h)k[n]=h[n];d=k}c(d)}}var y,v,q,x,a,f,w,A;y=c.error;m||y(Error("blank i18n bundle id."));v=n.localeToModuleId||d.Fa;q=d(n,m);f=[m];x=
|
||||
[];a=0;if(q&&!1!==n.locale)for(f=f.concat(q.split("-")),w=[],A=1;A<f.length;A++)w[A-1]=f[A],n=v(m,w.join("-")),h(r,n,A,t,k);h(r,m,0,t,k)},cramPlugin:"../cram/i18n"}});
|
||||
(function(d,h,m){define("curl/loader/legacy",["curl/_privileged"],function(r){var c,n,t;c=h&&!0==h.createElement("script").async;n=r.core.l;t=/\?|\.js\b/;return{load:function(h,r,v,q){function x(){z.p="";n(z,a,f)}function a(){var a;if(!(0<--F)){if(A)try{a=A.call(d,h)}catch(c){f(Error("Factory for legacy "+h+" failed: "+c.message))}else try{a=m(w)}catch(n){f(Error("Failed to find exports "+w+" for legacy "+h))}define(h,a);v(a)}}function f(a){(v.error||function(a){throw a;})(a)}var w,A,C,s,z,F;w=q.exports||
|
||||
q.a;A=q.factory||q.ua;if(!w&&!A)throw Error("`exports` or `factory` required for legacy: "+h);C=[].concat(q.requires||q.Ca||[]);q=(q=q.dontAddFileExt||q.j)?RegExp(q):t;s=r.toUrl(h);q.test(s)||(s=".js"!==s.substr(s.length-3)?s+".js":s);z={url:s,P:!0,p:c||!C.length?"":"text/cache"};C.length?(F=2,r(C,c?a:x,f)):F=1;n(z,a,f)},cramPlugin:"../cram/legacy"}})})(this,this.document,function(d){return(0,eval)(d)});
|
||||
}).call(this);
|
||||
195
vendor/dojo/LICENSE
vendored
195
vendor/dojo/LICENSE
vendored
@@ -1,195 +0,0 @@
|
||||
Dojo is available under *either* the terms of the modified BSD license *or* the
|
||||
Academic Free License version 2.1. As a recipient of Dojo, you may choose which
|
||||
license to receive this code under (except as noted in per-module LICENSE
|
||||
files). Some modules may not be the copyright of the Dojo Foundation. These
|
||||
modules contain explicit declarations of copyright in both the LICENSE files in
|
||||
the directories in which they reside and in the code itself. No external
|
||||
contributions are allowed under licenses which are fundamentally incompatible
|
||||
with the AFL or BSD licenses that Dojo is distributed under.
|
||||
|
||||
The text of the AFL and BSD licenses is reproduced below.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
The "New" BSD License:
|
||||
**********************
|
||||
|
||||
Copyright (c) 2005-2014, The Dojo Foundation
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
* Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
* Neither the name of the Dojo Foundation nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
The Academic Free License, v. 2.1:
|
||||
**********************************
|
||||
|
||||
This Academic Free License (the "License") applies to any original work of
|
||||
authorship (the "Original Work") whose owner (the "Licensor") has placed the
|
||||
following notice immediately following the copyright notice for the Original
|
||||
Work:
|
||||
|
||||
Licensed under the Academic Free License version 2.1
|
||||
|
||||
1) Grant of Copyright License. Licensor hereby grants You a world-wide,
|
||||
royalty-free, non-exclusive, perpetual, sublicenseable license to do the
|
||||
following:
|
||||
|
||||
a) to reproduce the Original Work in copies;
|
||||
|
||||
b) to prepare derivative works ("Derivative Works") based upon the Original
|
||||
Work;
|
||||
|
||||
c) to distribute copies of the Original Work and Derivative Works to the
|
||||
public;
|
||||
|
||||
d) to perform the Original Work publicly; and
|
||||
|
||||
e) to display the Original Work publicly.
|
||||
|
||||
2) Grant of Patent License. Licensor hereby grants You a world-wide,
|
||||
royalty-free, non-exclusive, perpetual, sublicenseable license, under patent
|
||||
claims owned or controlled by the Licensor that are embodied in the Original
|
||||
Work as furnished by the Licensor, to make, use, sell and offer for sale the
|
||||
Original Work and Derivative Works.
|
||||
|
||||
3) Grant of Source Code License. The term "Source Code" means the preferred
|
||||
form of the Original Work for making modifications to it and all available
|
||||
documentation describing how to modify the Original Work. Licensor hereby
|
||||
agrees to provide a machine-readable copy of the Source Code of the Original
|
||||
Work along with each copy of the Original Work that Licensor distributes.
|
||||
Licensor reserves the right to satisfy this obligation by placing a
|
||||
machine-readable copy of the Source Code in an information repository
|
||||
reasonably calculated to permit inexpensive and convenient access by You for as
|
||||
long as Licensor continues to distribute the Original Work, and by publishing
|
||||
the address of that information repository in a notice immediately following
|
||||
the copyright notice that applies to the Original Work.
|
||||
|
||||
4) Exclusions From License Grant. Neither the names of Licensor, nor the names
|
||||
of any contributors to the Original Work, nor any of their trademarks or
|
||||
service marks, may be used to endorse or promote products derived from this
|
||||
Original Work without express prior written permission of the Licensor. Nothing
|
||||
in this License shall be deemed to grant any rights to trademarks, copyrights,
|
||||
patents, trade secrets or any other intellectual property of Licensor except as
|
||||
expressly stated herein. No patent license is granted to make, use, sell or
|
||||
offer to sell embodiments of any patent claims other than the licensed claims
|
||||
defined in Section 2. No right is granted to the trademarks of Licensor even if
|
||||
such marks are included in the Original Work. Nothing in this License shall be
|
||||
interpreted to prohibit Licensor from licensing under different terms from this
|
||||
License any Original Work that Licensor otherwise would have a right to
|
||||
license.
|
||||
|
||||
5) This section intentionally omitted.
|
||||
|
||||
6) Attribution Rights. You must retain, in the Source Code of any Derivative
|
||||
Works that You create, all copyright, patent or trademark notices from the
|
||||
Source Code of the Original Work, as well as any notices of licensing and any
|
||||
descriptive text identified therein as an "Attribution Notice." You must cause
|
||||
the Source Code for any Derivative Works that You create to carry a prominent
|
||||
Attribution Notice reasonably calculated to inform recipients that You have
|
||||
modified the Original Work.
|
||||
|
||||
7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that
|
||||
the copyright in and to the Original Work and the patent rights granted herein
|
||||
by Licensor are owned by the Licensor or are sublicensed to You under the terms
|
||||
of this License with the permission of the contributor(s) of those copyrights
|
||||
and patent rights. Except as expressly stated in the immediately proceeding
|
||||
sentence, the Original Work is provided under this License on an "AS IS" BASIS
|
||||
and WITHOUT WARRANTY, either express or implied, including, without limitation,
|
||||
the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU.
|
||||
This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No
|
||||
license to Original Work is granted hereunder except under this disclaimer.
|
||||
|
||||
8) Limitation of Liability. Under no circumstances and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise, shall the
|
||||
Licensor be liable to any person for any direct, indirect, special, incidental,
|
||||
or consequential damages of any character arising as a result of this License
|
||||
or the use of the Original Work including, without limitation, damages for loss
|
||||
of goodwill, work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses. This limitation of liability shall not
|
||||
apply to liability for death or personal injury resulting from Licensor's
|
||||
negligence to the extent applicable law prohibits such limitation. Some
|
||||
jurisdictions do not allow the exclusion or limitation of incidental or
|
||||
consequential damages, so this exclusion and limitation may not apply to You.
|
||||
|
||||
9) Acceptance and Termination. If You distribute copies of the Original Work or
|
||||
a Derivative Work, You must make a reasonable effort under the circumstances to
|
||||
obtain the express assent of recipients to the terms of this License. Nothing
|
||||
else but this License (or another written agreement between Licensor and You)
|
||||
grants You permission to create Derivative Works based upon the Original Work
|
||||
or to exercise any of the rights granted in Section 1 herein, and any attempt
|
||||
to do so except under the terms of this License (or another written agreement
|
||||
between Licensor and You) is expressly prohibited by U.S. copyright law, the
|
||||
equivalent laws of other countries, and by international treaty. Therefore, by
|
||||
exercising any of the rights granted to You in Section 1 herein, You indicate
|
||||
Your acceptance of this License and all of its terms and conditions.
|
||||
|
||||
10) Termination for Patent Action. This License shall terminate automatically
|
||||
and You may no longer exercise any of the rights granted to You by this License
|
||||
as of the date You commence an action, including a cross-claim or counterclaim,
|
||||
against Licensor or any licensee alleging that the Original Work infringes a
|
||||
patent. This termination provision shall not apply for an action alleging
|
||||
patent infringement by combinations of the Original Work with other software or
|
||||
hardware.
|
||||
|
||||
11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this
|
||||
License may be brought only in the courts of a jurisdiction wherein the
|
||||
Licensor resides or in which Licensor conducts its primary business, and under
|
||||
the laws of that jurisdiction excluding its conflict-of-law provisions. The
|
||||
application of the United Nations Convention on Contracts for the International
|
||||
Sale of Goods is expressly excluded. Any use of the Original Work outside the
|
||||
scope of this License or after its termination shall be subject to the
|
||||
requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et
|
||||
seq., the equivalent laws of other countries, and international treaty. This
|
||||
section shall survive the termination of this License.
|
||||
|
||||
12) Attorneys Fees. In any action to enforce the terms of this License or
|
||||
seeking damages relating thereto, the prevailing party shall be entitled to
|
||||
recover its costs and expenses, including, without limitation, reasonable
|
||||
attorneys' fees and costs incurred in connection with such action, including
|
||||
any appeal of such action. This section shall survive the termination of this
|
||||
License.
|
||||
|
||||
13) Miscellaneous. This License represents the complete agreement concerning
|
||||
the subject matter hereof. If any provision of this License is held to be
|
||||
unenforceable, such provision shall be reformed only to the extent necessary to
|
||||
make it enforceable.
|
||||
|
||||
14) Definition of "You" in This License. "You" throughout this License, whether
|
||||
in upper or lower case, means an individual or a legal entity exercising rights
|
||||
under, and complying with all of the terms of, this License. For legal
|
||||
entities, "You" includes any entity that controls, is controlled by, or is
|
||||
under common control with you. For purposes of this definition, "control" means
|
||||
(i) the power, direct or indirect, to cause the direction or management of such
|
||||
entity, whether by contract or otherwise, or (ii) ownership of fifty percent
|
||||
(50%) or more of the outstanding shares, or (iii) beneficial ownership of such
|
||||
entity.
|
||||
|
||||
15) Right to Use. You may use the Original Work in all ways not otherwise
|
||||
restricted or conditioned by this License or by law, and Licensor promises not
|
||||
to interfere with or be responsible for such uses by You.
|
||||
|
||||
This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved.
|
||||
Permission is hereby granted to copy and distribute this license without
|
||||
modification. This license may not be modified without the express written
|
||||
permission of its copyright owner.
|
||||
2026
vendor/dojo/dojo.js
vendored
2026
vendor/dojo/dojo.js
vendored
File diff suppressed because it is too large
Load Diff
21
vendor/jquery/MIT-LICENSE.txt
vendored
21
vendor/jquery/MIT-LICENSE.txt
vendored
@@ -1,21 +0,0 @@
|
||||
Copyright 2014 jQuery Foundation and other contributors
|
||||
http://jquery.com/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
10337
vendor/jquery/jquery.js
vendored
10337
vendor/jquery/jquery.js
vendored
File diff suppressed because it is too large
Load Diff
21
vendor/platform.js/LICENSE.txt
vendored
21
vendor/platform.js/LICENSE.txt
vendored
@@ -1,21 +0,0 @@
|
||||
Copyright 2014 Benjamin Tan <http://d10.github.io/>
|
||||
Copyright 2011-2014 John-David Dalton <http://allyoucanleet.com/>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
1111
vendor/platform.js/platform.js
vendored
1111
vendor/platform.js/platform.js
vendored
File diff suppressed because it is too large
Load Diff
20
vendor/qunit-extras/LICENSE.txt
vendored
20
vendor/qunit-extras/LICENSE.txt
vendored
@@ -1,20 +0,0 @@
|
||||
Copyright 2011-2014 John-David Dalton <http://allyoucanleet.com/>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
726
vendor/qunit-extras/qunit-extras.js
vendored
726
vendor/qunit-extras/qunit-extras.js
vendored
@@ -1,726 +0,0 @@
|
||||
/*!
|
||||
* QUnit Extras v1.2.0
|
||||
* Copyright 2011-2014 John-David Dalton <http://allyoucanleet.com/>
|
||||
* Based on a gist by Jörn Zaefferer <https://gist.github.com/722381>
|
||||
* Available under MIT license <http://mths.be/mit>
|
||||
*/
|
||||
;(function() {
|
||||
|
||||
/** Used as a safe reference for `undefined` in pre ES5 environments */
|
||||
var undefined;
|
||||
|
||||
/** Used as a horizontal rule in console output */
|
||||
var hr = '----------------------------------------';
|
||||
|
||||
/** Used for native method references */
|
||||
var arrayProto = Array.prototype;
|
||||
|
||||
/** Native method shortcut */
|
||||
var push = arrayProto.push,
|
||||
unshift = arrayProto.unshift;
|
||||
|
||||
/** Used to match HTML entities */
|
||||
var reEscapedHtml = /(&|<|>|"|')/g;
|
||||
|
||||
/** Used to match parts of the assert message */
|
||||
var reDied = /^Died on test #\d+/,
|
||||
reExpected = /Expected: *<\/th><td><pre>([\s\S]*?)<\/pre>/,
|
||||
reMessage = /^<span class='test-message'>([\s\S]*?)<\/span>/;
|
||||
|
||||
/** Used to associate color names with their corresponding codes */
|
||||
var ansiCodes = {
|
||||
'bold': 1,
|
||||
'green': 32,
|
||||
'magenta': 35,
|
||||
'red': 31
|
||||
};
|
||||
|
||||
/** Used to convert HTML entities to characters */
|
||||
var htmlUnescapes = {
|
||||
'&': '&',
|
||||
'<': '<',
|
||||
'>': '>',
|
||||
'"': '"',
|
||||
''': "'"
|
||||
};
|
||||
|
||||
/** Used to determine if values are of the language type Object */
|
||||
var objectTypes = {
|
||||
'function': true,
|
||||
'object': true
|
||||
};
|
||||
|
||||
/** Used as a reference to the global object */
|
||||
var root = (objectTypes[typeof window] && window) || this;
|
||||
|
||||
/** Detect free variable `exports` */
|
||||
var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports;
|
||||
|
||||
/** Detect free variable `module` */
|
||||
var freeModule = objectTypes[typeof module] && module && !module.nodeType && module;
|
||||
|
||||
/** Detect free variable `global` from Node.js or Browserified code and use it as `root` */
|
||||
var freeGlobal = freeExports && freeModule && typeof global == 'object' && global;
|
||||
if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal)) {
|
||||
root = freeGlobal;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
* Checks if a given value is present in an array using strict equality
|
||||
* for comparisons, i.e. `===`.
|
||||
*
|
||||
* @private
|
||||
* @param {Array} array The array to iterate over.
|
||||
* @param {*} value The value to check for.
|
||||
* @returns {boolean} Returns `true` if the `value` is found, else `false`.
|
||||
*/
|
||||
function contains(array, value) {
|
||||
var index = -1,
|
||||
length = array ? array.length : 0;
|
||||
|
||||
while (++index < length) {
|
||||
if (array[index] === value) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if `value` is the language type of `Object`.
|
||||
* (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
|
||||
*
|
||||
* @private
|
||||
* @param {*} value The value to check.
|
||||
* @returns {boolean} Returns `true` if `value` is an object, else `false`.
|
||||
*/
|
||||
function isObject(value) {
|
||||
var type = typeof value;
|
||||
return type == 'function' || (value && type == 'object') || false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a string with `text` repeated `n` number of times.
|
||||
*
|
||||
* @private
|
||||
* @param {string} text The text to repeat.
|
||||
* @param {number} n The number of times to repeat `text`.
|
||||
* @returns {string} The created string.
|
||||
*/
|
||||
function repeat(text, n) {
|
||||
return Array(n + 1).join(text);
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolves the value of `property` on `object`. If `object` is falsey then
|
||||
* `undefined` is returned.
|
||||
*
|
||||
* @private
|
||||
* @param {Object} object The object to inspect.
|
||||
* @param {string} property The property to get the value of.
|
||||
* @returns {*} Returns the resolved value.
|
||||
*/
|
||||
function result(object, property) {
|
||||
return object ? object[property] : undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts the HTML entities `&`, `<`, `>`, `"`, and `'`
|
||||
* in `string` to their corresponding characters.
|
||||
*
|
||||
* @private
|
||||
* @param {string} string The string to unescape.
|
||||
* @returns {string} Returns the unescaped string.
|
||||
*/
|
||||
function unescape(string) {
|
||||
return string == null ? '' : String(string).replace(reEscapedHtml, unescapeHtmlChar);
|
||||
}
|
||||
|
||||
/**
|
||||
* Used by `unescape` to convert HTML entities to characters.
|
||||
*
|
||||
* @private
|
||||
* @param {string} match The matched character to unescape.
|
||||
* @returns {string} Returns the unescaped character.
|
||||
*/
|
||||
function unescapeHtmlChar(match) {
|
||||
return htmlUnescapes[match];
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a function that provides `value` to the wrapper function as its
|
||||
* first argument. Additional arguments provided to the function are appended
|
||||
* to those provided to the wrapper function. The wrapper is executed with
|
||||
* the `this` binding of the created function.
|
||||
*
|
||||
* @private
|
||||
* @param {*} value The value to wrap.
|
||||
* @param {Function} wrapper The wrapper function.
|
||||
* @returns {Function} Returns the new function.
|
||||
*/
|
||||
function wrap(value, wrapper) {
|
||||
return function() {
|
||||
var args = [value];
|
||||
push.apply(args, arguments);
|
||||
return wrapper.apply(this, args);
|
||||
};
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
* Installs the QUnit additions on the given `context` object.
|
||||
*
|
||||
* @memberOf exports
|
||||
* @param {Object} context The context object.
|
||||
*/
|
||||
function runInContext(context) {
|
||||
|
||||
/** Object references */
|
||||
var phantom = context.phantom,
|
||||
define = context.define,
|
||||
document = !phantom && context.document,
|
||||
process = phantom || context.process,
|
||||
amd = define && define.amd,
|
||||
console = context.console,
|
||||
java = !document && context.java,
|
||||
print = context.print,
|
||||
require = context.require;
|
||||
|
||||
/** Detects if running on Node.js */
|
||||
var isNode = isObject(process) && typeof process.on == 'function';
|
||||
|
||||
/** Detects if running in a PhantomJS web page */
|
||||
var isPhantomPage = typeof context.callPhantom == 'function';
|
||||
|
||||
/** Detects if QUnit Extras should log to the console */
|
||||
var isSilent = document && !isPhantomPage;
|
||||
|
||||
/** Used to indicate if running in Windows */
|
||||
var isWindows = isNode && process.platform == 'win32';
|
||||
|
||||
/** Used to indicate if ANSI escape codes are supported */
|
||||
var isAnsiSupported = (function() {
|
||||
if (isNode && process.stdout && !process.stdout.isTTY) {
|
||||
return false;
|
||||
}
|
||||
if (isWindows || getEnv('COLORTERM')) {
|
||||
return true;
|
||||
}
|
||||
return /^(?:ansi|cygwin|linux|screen|xterm|vt100)$|color/i.test(getEnv('TERM'));
|
||||
}());
|
||||
|
||||
/** Used to display the wait throbber */
|
||||
var throbberDelay = 500,
|
||||
waitCount = -1;
|
||||
|
||||
/** Shorten `context.QUnit.QUnit` to `context.QUnit` */
|
||||
var QUnit = context.QUnit = context.QUnit.QUnit || context.QUnit;
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
* Schedules timer-based callbacks.
|
||||
*
|
||||
* @private
|
||||
* @param {Function|string} fn The function to call.
|
||||
* @param {number} delay The number of milliseconds to delay the `fn` call.
|
||||
* @param {Array} args Arguments to invoke `fn` with.
|
||||
* @param {boolean} repeated A flag to specify whether `fn` is called repeatedly.
|
||||
* @returns {number} The ID of the timeout.
|
||||
*/
|
||||
function schedule(fn, delay, args, repeated) {
|
||||
// Rhino 1.7RC4 will error assigning `task` below
|
||||
// https://bugzilla.mozilla.org/show_bug.cgi?id=775566
|
||||
var task = ids[++counter] = new JavaAdapter(java.util.TimerTask, {
|
||||
'run': function() {
|
||||
fn.apply(context, args);
|
||||
}
|
||||
});
|
||||
// support non-functions
|
||||
if (typeof fn != 'function') {
|
||||
fn = (function(code) {
|
||||
code = String(code);
|
||||
return function() { eval(code); };
|
||||
}(fn));
|
||||
}
|
||||
// used by setInterval
|
||||
if (repeated) {
|
||||
timer.schedule(task, delay, delay);
|
||||
}
|
||||
// used by setTimeout
|
||||
else {
|
||||
timer.schedule(task, delay);
|
||||
}
|
||||
return counter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Clears the delay set by `setInterval` or `setTimeout`.
|
||||
*
|
||||
* @memberOf context
|
||||
* @param {number} id The ID of the timeout to be cleared.
|
||||
*/
|
||||
function clearTimer(id) {
|
||||
if (ids[id]) {
|
||||
ids[id].cancel();
|
||||
timer.purge();
|
||||
delete ids[id];
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Executes a code snippet or function repeatedly, with a delay between each call.
|
||||
*
|
||||
* @memberOf context
|
||||
* @param {Function|string} fn The function to call or string to evaluate.
|
||||
* @param {number} delay The number of milliseconds to delay each `fn` call.
|
||||
* @param {...*} [args] Arguments to invoke `fn` with.
|
||||
* @returns {number} The ID of the timeout.
|
||||
*/
|
||||
function setInterval(fn, delay) {
|
||||
return schedule(fn, delay, slice.call(arguments, 2), true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Executes a code snippet or a function after specified delay.
|
||||
*
|
||||
* @memberOf context
|
||||
* @param {Function|string} fn The function to call or string to evaluate.
|
||||
* @param {number} delay The number of milliseconds to delay the `fn` call.
|
||||
* @param {...*} [args] Arguments to invoke `fn` with.
|
||||
* @returns {number} The ID of the timeout.
|
||||
*/
|
||||
function setTimeout(fn, delay) {
|
||||
return schedule(fn, delay, slice.call(arguments, 2));
|
||||
}
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
* Gets the environment variable value by a given name.
|
||||
*
|
||||
* @private
|
||||
* @param {string} name The name of the environment variable to get.
|
||||
* @returns {*} Returns the environment variable value.
|
||||
*/
|
||||
function getEnv(name) {
|
||||
if (isNode) {
|
||||
return process.env[name];
|
||||
}
|
||||
if (java) {
|
||||
return java.lang.System.getenv(name);
|
||||
}
|
||||
if (!amd && typeof require == 'function') {
|
||||
try {
|
||||
return require('system').env[name];
|
||||
} catch(e) {}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds text color to the terminal output of `string`.
|
||||
*
|
||||
* @private
|
||||
* @param {string} colorName The name of the color to add.
|
||||
* @param {string} string The string to add colors to.
|
||||
* @returns {string} Returns the colored string.
|
||||
*/
|
||||
function color(colorName, string) {
|
||||
return isAnsiSupported
|
||||
? ('\x1B[' + ansiCodes[colorName] + 'm' + string + '\x1B[0m')
|
||||
: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Writes an inline message to standard output.
|
||||
*
|
||||
* @private
|
||||
* @param {string} [text=''] The text to log.
|
||||
*/
|
||||
var logInline = (function() {
|
||||
if (!isNode || isWindows) {
|
||||
return function() {};
|
||||
}
|
||||
// cleanup any inline logs when exited via `ctrl+c`
|
||||
process.on('SIGINT', function() {
|
||||
logInline();
|
||||
process.exit();
|
||||
});
|
||||
|
||||
var prevLine = '';
|
||||
return function(text) {
|
||||
var blankLine = repeat(' ', prevLine.length);
|
||||
if (text == null) {
|
||||
text = '';
|
||||
}
|
||||
if (text.length > hr.length) {
|
||||
text = text.slice(0, hr.length - 3) + '...';
|
||||
}
|
||||
prevLine = text;
|
||||
process.stdout.write(text + blankLine.slice(text.length) + '\r');
|
||||
}
|
||||
}());
|
||||
|
||||
/**
|
||||
* Writes the wait throbber to standard output.
|
||||
*
|
||||
* @private
|
||||
*/
|
||||
function logThrobber() {
|
||||
logInline('Please wait' + repeat('.', (++waitCount % 3) + 1));
|
||||
}
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
* The number of retries async tests have to succeed.
|
||||
*
|
||||
* @memberOf QUnit.config
|
||||
* @type number
|
||||
*/
|
||||
QUnit.config.asyncRetries = 0;
|
||||
|
||||
/**
|
||||
* An object of excused tests and assertions.
|
||||
*
|
||||
* @memberOf QUnit.config
|
||||
* @type Object
|
||||
*/
|
||||
QUnit.config.excused = {};
|
||||
|
||||
/**
|
||||
* An object used to hold "extras" information about the current running test.
|
||||
*
|
||||
* @memberOf QUnit.config
|
||||
* @type Object
|
||||
*/
|
||||
QUnit.config.extrasData = {
|
||||
|
||||
/**
|
||||
* The data object for the active test module.
|
||||
*
|
||||
* @memberOf QUnit.config.extrasData
|
||||
* @type Object
|
||||
*/
|
||||
'module': {},
|
||||
|
||||
/**
|
||||
* The data object for Sauce Labs.
|
||||
*
|
||||
* @memberOf QUnit.config.extrasData
|
||||
* @type Object
|
||||
*/
|
||||
'sauce': {
|
||||
|
||||
/**
|
||||
* An array of failed test details.
|
||||
*
|
||||
* @memberOf QUnit.config.extrasData.sauce
|
||||
* @type Array
|
||||
*/
|
||||
'tests': []
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Converts an object into a string representation.
|
||||
*
|
||||
* @memberOf QUnit
|
||||
* @type Function
|
||||
* @param {Object} object The object to stringify.
|
||||
* @returns {string} The result string.
|
||||
*/
|
||||
QUnit.jsDump.parsers.object = (function() {
|
||||
var func = QUnit.jsDump.parsers.object;
|
||||
if (isSilent) {
|
||||
return func;
|
||||
}
|
||||
return function(object) {
|
||||
if (typeof object.rhinoException != 'object') {
|
||||
return func(object);
|
||||
}
|
||||
return object.name +
|
||||
' { message: "' + object.message +
|
||||
'", fileName: "' + object.fileName +
|
||||
'", lineNumber: ' + object.lineNumber + ' }';
|
||||
};
|
||||
}());
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
// add a callback to be triggered after every assertion
|
||||
QUnit.log(function(details) {
|
||||
QUnit.config.extrasData.module.logs.push(details);
|
||||
});
|
||||
|
||||
// add a callback to be triggered at the start of every test module
|
||||
QUnit.moduleStart(function(details) {
|
||||
var module = QUnit.config.extrasData.module;
|
||||
module.name = details.name;
|
||||
module.logs = [];
|
||||
module.printed = false;
|
||||
});
|
||||
|
||||
// add a callback to be triggered at the start of every test
|
||||
QUnit.testStart(function(details) {
|
||||
var config = QUnit.config,
|
||||
test = config.current;
|
||||
|
||||
var excused = config.excused || {},
|
||||
excusedTests = excused[details.module],
|
||||
excusedAsserts = excusedTests && excusedTests[details.name];
|
||||
|
||||
// allow async tests to retry
|
||||
if (test.async && !test.retries) {
|
||||
test.retries = 0;
|
||||
test.finish = wrap(test.finish, function(finish) {
|
||||
var asserts = this.assertions,
|
||||
config = QUnit.config,
|
||||
index = -1,
|
||||
length = asserts.length,
|
||||
logs = config.extrasData.module.logs,
|
||||
queue = config.queue;
|
||||
|
||||
while (++index < length) {
|
||||
var assert = asserts[index];
|
||||
if (!assert.result && this.retries < config.asyncRetries) {
|
||||
var oldLength = queue.length;
|
||||
logs.length -= asserts.length;
|
||||
asserts.length = 0;
|
||||
|
||||
this.retries++;
|
||||
this.queue();
|
||||
|
||||
unshift.apply(queue, queue.splice(oldLength, queue.length - oldLength));
|
||||
return;
|
||||
}
|
||||
}
|
||||
finish.call(this);
|
||||
});
|
||||
}
|
||||
// nothing to excuse
|
||||
if (!excusedAsserts) {
|
||||
return;
|
||||
}
|
||||
// excuse the entire test
|
||||
if (excusedAsserts === true) {
|
||||
test.async = false;
|
||||
test.callback = function() {};
|
||||
test.expected = 0;
|
||||
return;
|
||||
}
|
||||
// excuse specific assertions
|
||||
test.finish = wrap(test.finish, function(finish) {
|
||||
var asserts = this.assertions,
|
||||
config = QUnit.config,
|
||||
expected = this.expected,
|
||||
items = asserts.slice(),
|
||||
length = items.length;
|
||||
|
||||
if (expected == null) {
|
||||
if (config.requireExpects) {
|
||||
expected = length;
|
||||
items.push('Expected number of assertions to be defined, but expect() was not called.');
|
||||
} else if (!length) {
|
||||
expected = 1;
|
||||
items.push('Expected at least one assertion, but none were run - call expect(0) to accept zero assertions.');
|
||||
}
|
||||
} else if (expected != length) {
|
||||
items.push('Expected ' + expected + ' assertions, but ' + length + ' were run');
|
||||
}
|
||||
var index = -1;
|
||||
length = items.length;
|
||||
|
||||
while (++index < length) {
|
||||
var assert = items[index],
|
||||
isStr = typeof assert == 'string',
|
||||
message = assert.message;
|
||||
|
||||
var assertMessage = isStr ? assert : unescape(result(reMessage.exec(message), 1)),
|
||||
assertValue = isStr ? assert : unescape(result(reExpected.exec(message), 1)),
|
||||
assertDied = result(reDied.exec(assertMessage), 0);
|
||||
|
||||
if ((assertMessage && contains(excusedAsserts, assertMessage)) ||
|
||||
(assertDied && contains(excusedAsserts, assertDied)) ||
|
||||
(assertValue && (
|
||||
contains(excusedAsserts, assertValue) ||
|
||||
contains(excusedAsserts, assertValue.replace(/\s+/g, ''))
|
||||
))) {
|
||||
if (isStr) {
|
||||
while (asserts.length < expected) {
|
||||
asserts.push({ 'result': true });
|
||||
}
|
||||
asserts.length = expected;
|
||||
}
|
||||
else {
|
||||
assert.result = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
finish.call(this);
|
||||
});
|
||||
});
|
||||
|
||||
// add a callback to be triggered after a test is completed
|
||||
QUnit.testDone(function(details) {
|
||||
var config = QUnit.config,
|
||||
data = config.extrasData,
|
||||
failures = details.failed,
|
||||
hidepassed = config.hidepassed,
|
||||
module = data.module,
|
||||
moduleLogs = module.logs,
|
||||
sauceTests = data.sauce.tests;
|
||||
|
||||
if (hidepassed && !failures) {
|
||||
return;
|
||||
}
|
||||
if (!isSilent) {
|
||||
logInline();
|
||||
if (!module.printed) {
|
||||
module.printed = true;
|
||||
console.log(hr);
|
||||
console.log(color('bold', module.name));
|
||||
console.log(hr);
|
||||
}
|
||||
console.log(' ' + (failures ? color('red', 'FAIL') : color('green', 'PASS')) + ' - ' + details.name);
|
||||
}
|
||||
if (!failures) {
|
||||
return;
|
||||
}
|
||||
var index = -1,
|
||||
length = moduleLogs.length;
|
||||
|
||||
while(++index < length) {
|
||||
var entry = moduleLogs[index];
|
||||
if (hidepassed && entry.result) {
|
||||
continue;
|
||||
}
|
||||
var expected = entry.expected,
|
||||
result = entry.result,
|
||||
type = typeof expected != 'undefined' ? 'EQ' : 'OK';
|
||||
|
||||
var message = [
|
||||
result ? color('green', 'PASS') : color('red', 'FAIL'),
|
||||
type,
|
||||
entry.message || 'ok'
|
||||
];
|
||||
|
||||
if (!result && type == 'EQ') {
|
||||
message.push(color('magenta', 'Expected: ' + expected + ', Actual: ' + entry.actual));
|
||||
}
|
||||
if (!isSilent) {
|
||||
console.log(' ' + message.join(' | '));
|
||||
}
|
||||
if (!entry.result) {
|
||||
sauceTests.push(entry);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// add a callback to be triggered when all testing has completed
|
||||
QUnit.done(function(details) {
|
||||
var failures = details.failed,
|
||||
statusColor = failures ? 'magenta' : 'green';
|
||||
|
||||
if (!isSilent) {
|
||||
logInline();
|
||||
console.log(hr);
|
||||
console.log(color(statusColor, ' PASS: ' + details.passed + ' FAIL: ' + failures + ' TOTAL: ' + details.total));
|
||||
console.log(color(statusColor, ' Finished in ' + details.runtime + ' milliseconds.'));
|
||||
console.log(hr);
|
||||
}
|
||||
// exit out of Node.js or PhantomJS
|
||||
try {
|
||||
if (failures) {
|
||||
process.exit(1);
|
||||
} else {
|
||||
process.exit(0);
|
||||
}
|
||||
} catch(e) {}
|
||||
|
||||
// exit out of Narwhal, Rhino, or RingoJS
|
||||
try {
|
||||
if (failures) {
|
||||
java.lang.System.exit(1);
|
||||
} else {
|
||||
quit();
|
||||
}
|
||||
} catch(e) {}
|
||||
|
||||
// assign results to `global_test_results` for Sauce Labs
|
||||
details.tests = QUnit.config.extrasData.sauce.tests;
|
||||
context.global_test_results = details;
|
||||
});
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
// replace poisoned `raises` method
|
||||
context.raises = QUnit.raises = QUnit['throws'] || QUnit.raises;
|
||||
|
||||
// add CLI extras
|
||||
if (!document) {
|
||||
// Timeout fallbacks based on the work of Andrea Giammarchi and Weston C.
|
||||
// https://github.com/WebReflection/wru/blob/master/src/rhinoTimers.js
|
||||
// http://stackoverflow.com/questions/2261705/how-to-run-a-javascript-function-asynchronously-without-using-settimeout
|
||||
try {
|
||||
var counter = 0,
|
||||
ids = {},
|
||||
slice = Array.prototype.slice,
|
||||
timer = new java.util.Timer;
|
||||
|
||||
(function() {
|
||||
var getDescriptor = Object.getOwnPropertyDescriptor || function() {
|
||||
return { 'writable': true };
|
||||
};
|
||||
|
||||
var descriptor;
|
||||
if ((!context.clearInterval || ((descriptor = getDescriptor(context, 'clearInterval')) && (descriptor.writable || descriptor.set))) &&
|
||||
(!context.setInterval || ((descriptor = getDescriptor(context, 'setInterval')) && (descriptor.writable || descriptor.set)))) {
|
||||
context.clearInterval = clearTimer;
|
||||
context.setInterval = setInterval;
|
||||
}
|
||||
if ((!context.clearTimeout || ((descriptor = getDescriptor(context, 'clearTimeout')) && (descriptor.writable || descriptor.set))) &&
|
||||
(!context.setTimeout || ((descriptor = getDescriptor(context, 'setTimeout')) && (descriptor.writable || descriptor.set)))) {
|
||||
context.clearTimeout = clearTimer;
|
||||
context.setTimeout = setTimeout;
|
||||
}
|
||||
}());
|
||||
} catch(e) {}
|
||||
|
||||
// expose QUnit API on `context`
|
||||
// exclude `module` because some environments have it as a built-in object
|
||||
('asyncTest deepEqual equal equals expect notDeepEqual notEqual notStrictEqual ' +
|
||||
'ok raises same start stop strictEqual test throws').replace(/\S+/g, function(methodName) {
|
||||
context[methodName] = QUnit[methodName];
|
||||
});
|
||||
|
||||
// add `console.log` support to Narwhal, Rhino, and RingoJS
|
||||
if (!console) {
|
||||
console = context.console = { 'log': function() {} };
|
||||
}
|
||||
// RingoJS removes ANSI escape codes in `console.log`, but not in `print`
|
||||
if (java && typeof print == 'function') {
|
||||
console.log = print;
|
||||
}
|
||||
// start log throbber
|
||||
if (!isSilent) {
|
||||
context.setInterval(logThrobber, throbberDelay);
|
||||
}
|
||||
// must call `QUnit.start` in the test file if not loaded in a browser
|
||||
QUnit.config.autostart = false;
|
||||
QUnit.init();
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
// export QUnit Extras
|
||||
if (freeExports) {
|
||||
freeExports.runInContext = runInContext;
|
||||
} else {
|
||||
runInContext(root);
|
||||
}
|
||||
}.call(this));
|
||||
21
vendor/qunit/MIT-LICENSE.txt
vendored
21
vendor/qunit/MIT-LICENSE.txt
vendored
@@ -1,21 +0,0 @@
|
||||
Copyright 2013 jQuery Foundation and other contributors
|
||||
http://jquery.com/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
244
vendor/qunit/qunit/qunit.css
vendored
244
vendor/qunit/qunit/qunit.css
vendored
@@ -1,244 +0,0 @@
|
||||
/**
|
||||
* QUnit v1.11.0 - A JavaScript Unit Testing Framework
|
||||
*
|
||||
* http://qunitjs.com
|
||||
*
|
||||
* Copyright 2012 jQuery Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* http://jquery.org/license
|
||||
*/
|
||||
|
||||
/** Font Family and Sizes */
|
||||
|
||||
#qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult {
|
||||
font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
|
||||
}
|
||||
|
||||
#qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; }
|
||||
#qunit-tests { font-size: smaller; }
|
||||
|
||||
|
||||
/** Resets */
|
||||
|
||||
#qunit-tests, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult, #qunit-modulefilter {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
|
||||
/** Header */
|
||||
|
||||
#qunit-header {
|
||||
padding: 0.5em 0 0.5em 1em;
|
||||
|
||||
color: #8699a4;
|
||||
background-color: #0d3349;
|
||||
|
||||
font-size: 1.5em;
|
||||
line-height: 1em;
|
||||
font-weight: normal;
|
||||
|
||||
border-radius: 5px 5px 0 0;
|
||||
-moz-border-radius: 5px 5px 0 0;
|
||||
-webkit-border-top-right-radius: 5px;
|
||||
-webkit-border-top-left-radius: 5px;
|
||||
}
|
||||
|
||||
#qunit-header a {
|
||||
text-decoration: none;
|
||||
color: #c2ccd1;
|
||||
}
|
||||
|
||||
#qunit-header a:hover,
|
||||
#qunit-header a:focus {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
#qunit-testrunner-toolbar label {
|
||||
display: inline-block;
|
||||
padding: 0 .5em 0 .1em;
|
||||
}
|
||||
|
||||
#qunit-banner {
|
||||
height: 5px;
|
||||
}
|
||||
|
||||
#qunit-testrunner-toolbar {
|
||||
padding: 0.5em 0 0.5em 2em;
|
||||
color: #5E740B;
|
||||
background-color: #eee;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#qunit-userAgent {
|
||||
padding: 0.5em 0 0.5em 2.5em;
|
||||
background-color: #2b81af;
|
||||
color: #fff;
|
||||
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
|
||||
}
|
||||
|
||||
#qunit-modulefilter-container {
|
||||
float: right;
|
||||
}
|
||||
|
||||
/** Tests: Pass/Fail */
|
||||
|
||||
#qunit-tests {
|
||||
list-style-position: inside;
|
||||
}
|
||||
|
||||
#qunit-tests li {
|
||||
padding: 0.4em 0.5em 0.4em 2.5em;
|
||||
border-bottom: 1px solid #fff;
|
||||
list-style-position: inside;
|
||||
}
|
||||
|
||||
#qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#qunit-tests li strong {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#qunit-tests li a {
|
||||
padding: 0.5em;
|
||||
color: #c2ccd1;
|
||||
text-decoration: none;
|
||||
}
|
||||
#qunit-tests li a:hover,
|
||||
#qunit-tests li a:focus {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
#qunit-tests li .runtime {
|
||||
float: right;
|
||||
font-size: smaller;
|
||||
}
|
||||
|
||||
.qunit-assert-list {
|
||||
margin-top: 0.5em;
|
||||
padding: 0.5em;
|
||||
|
||||
background-color: #fff;
|
||||
|
||||
border-radius: 5px;
|
||||
-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
}
|
||||
|
||||
.qunit-collapsed {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#qunit-tests table {
|
||||
border-collapse: collapse;
|
||||
margin-top: .2em;
|
||||
}
|
||||
|
||||
#qunit-tests th {
|
||||
text-align: right;
|
||||
vertical-align: top;
|
||||
padding: 0 .5em 0 0;
|
||||
}
|
||||
|
||||
#qunit-tests td {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
#qunit-tests pre {
|
||||
margin: 0;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
#qunit-tests del {
|
||||
background-color: #e0f2be;
|
||||
color: #374e0c;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#qunit-tests ins {
|
||||
background-color: #ffcaca;
|
||||
color: #500;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/*** Test Counts */
|
||||
|
||||
#qunit-tests b.counts { color: black; }
|
||||
#qunit-tests b.passed { color: #5E740B; }
|
||||
#qunit-tests b.failed { color: #710909; }
|
||||
|
||||
#qunit-tests li li {
|
||||
padding: 5px;
|
||||
background-color: #fff;
|
||||
border-bottom: none;
|
||||
list-style-position: inside;
|
||||
}
|
||||
|
||||
/*** Passing Styles */
|
||||
|
||||
#qunit-tests li li.pass {
|
||||
color: #3c510c;
|
||||
background-color: #fff;
|
||||
border-left: 10px solid #C6E746;
|
||||
}
|
||||
|
||||
#qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; }
|
||||
#qunit-tests .pass .test-name { color: #366097; }
|
||||
|
||||
#qunit-tests .pass .test-actual,
|
||||
#qunit-tests .pass .test-expected { color: #999999; }
|
||||
|
||||
#qunit-banner.qunit-pass { background-color: #C6E746; }
|
||||
|
||||
/*** Failing Styles */
|
||||
|
||||
#qunit-tests li li.fail {
|
||||
color: #710909;
|
||||
background-color: #fff;
|
||||
border-left: 10px solid #EE5757;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
#qunit-tests > li:last-child {
|
||||
border-radius: 0 0 5px 5px;
|
||||
-moz-border-radius: 0 0 5px 5px;
|
||||
-webkit-border-bottom-right-radius: 5px;
|
||||
-webkit-border-bottom-left-radius: 5px;
|
||||
}
|
||||
|
||||
#qunit-tests .fail { color: #000000; background-color: #EE5757; }
|
||||
#qunit-tests .fail .test-name,
|
||||
#qunit-tests .fail .module-name { color: #000000; }
|
||||
|
||||
#qunit-tests .fail .test-actual { color: #EE5757; }
|
||||
#qunit-tests .fail .test-expected { color: green; }
|
||||
|
||||
#qunit-banner.qunit-fail { background-color: #EE5757; }
|
||||
|
||||
|
||||
/** Result */
|
||||
|
||||
#qunit-testresult {
|
||||
padding: 0.5em 0.5em 0.5em 2.5em;
|
||||
|
||||
color: #2b81af;
|
||||
background-color: #D2E0E6;
|
||||
|
||||
border-bottom: 1px solid white;
|
||||
}
|
||||
#qunit-testresult .module-name {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/** Fixture */
|
||||
|
||||
#qunit-fixture {
|
||||
position: absolute;
|
||||
top: -10000px;
|
||||
left: -10000px;
|
||||
width: 1000px;
|
||||
height: 1000px;
|
||||
}
|
||||
2152
vendor/qunit/qunit/qunit.js
vendored
2152
vendor/qunit/qunit/qunit.js
vendored
File diff suppressed because it is too large
Load Diff
58
vendor/requirejs/LICENSE
vendored
58
vendor/requirejs/LICENSE
vendored
@@ -1,58 +0,0 @@
|
||||
RequireJS is released under two licenses: new BSD, and MIT. You may pick the
|
||||
license that best suits your development needs. The text of both licenses are
|
||||
provided below.
|
||||
|
||||
|
||||
The "New" BSD License:
|
||||
----------------------
|
||||
|
||||
Copyright (c) 2010-2014, The Dojo Foundation
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
* Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
* Neither the name of the Dojo Foundation nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
|
||||
|
||||
MIT License
|
||||
-----------
|
||||
|
||||
Copyright (c) 2010-2014, The Dojo Foundation
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
2076
vendor/requirejs/require.js
vendored
2076
vendor/requirejs/require.js
vendored
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user