ttrss/lib/dojo/_base/declare.js

8 lines
7.5 KiB
JavaScript

/*
Copyright (c) 2004-2016, The JS Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
//>>built
define("dojo/_base/declare",["./kernel","../has","./lang"],function(_1,_2,_3){var _4=_3.mixin,op=Object.prototype,_5=op.toString,_6,_7=0,_8="constructor";if(!_2("csp-restrictions")){_6=new Function;}else{_6=function(){};}function _9(_a,_b){throw new Error("declare"+(_b?" "+_b:"")+": "+_a);};function _c(_d,_e){var _f=[],_10=[{cls:0,refs:[]}],_11={},_12=1,l=_d.length,i=0,j,lin,_13,top,_14,rec,_15,_16;for(;i<l;++i){_13=_d[i];if(!_13){_9("mixin #"+i+" is unknown. Did you use dojo.require to pull it in?",_e);}else{if(_5.call(_13)!="[object Function]"){_9("mixin #"+i+" is not a callable constructor.",_e);}}lin=_13._meta?_13._meta.bases:[_13];top=0;for(j=lin.length-1;j>=0;--j){_14=lin[j].prototype;if(!_14.hasOwnProperty("declaredClass")){_14.declaredClass="uniqName_"+(_7++);}_15=_14.declaredClass;if(!_11.hasOwnProperty(_15)){_11[_15]={count:0,refs:[],cls:lin[j]};++_12;}rec=_11[_15];if(top&&top!==rec){rec.refs.push(top);++top.count;}top=rec;}++top.count;_10[0].refs.push(top);}while(_10.length){top=_10.pop();_f.push(top.cls);--_12;while(_16=top.refs,_16.length==1){top=_16[0];if(!top||--top.count){top=0;break;}_f.push(top.cls);--_12;}if(top){for(i=0,l=_16.length;i<l;++i){top=_16[i];if(!--top.count){_10.push(top);}}}}if(_12){_9("can't build consistent linearization",_e);}_13=_d[0];_f[0]=_13?_13._meta&&_13===_f[_f.length-_13._meta.bases.length]?_13._meta.bases.length:1:0;return _f;};function _17(_18,a,f,g){var _19,_1a,_1b,_1c,_1d,_1e,_1f,opf,pos,_20=this._inherited=this._inherited||{};if(typeof _18==="string"){_19=_18;_18=a;a=f;f=g;}if(typeof _18==="function"){_1c=_18;_18=a;a=f;}else{try{_1c=_18.callee;}catch(e){if(e instanceof TypeError){_9("strict mode inherited() requires the caller function to be passed before arguments",this.declaredClass);}else{throw e;}}}_19=_19||_1c.nom;if(!_19){_9("can't deduce a name to call inherited()",this.declaredClass);}f=g=0;_1d=this.constructor._meta;_1b=_1d.bases;pos=_20.p;if(_19!=_8){if(_20.c!==_1c){pos=0;_1e=_1b[0];_1d=_1e._meta;if(_1d.hidden[_19]!==_1c){_1a=_1d.chains;if(_1a&&typeof _1a[_19]=="string"){_9("calling chained method with inherited: "+_19,this.declaredClass);}do{_1d=_1e._meta;_1f=_1e.prototype;if(_1d&&(_1f[_19]===_1c&&_1f.hasOwnProperty(_19)||_1d.hidden[_19]===_1c)){break;}}while(_1e=_1b[++pos]);pos=_1e?pos:-1;}}_1e=_1b[++pos];if(_1e){_1f=_1e.prototype;if(_1e._meta&&_1f.hasOwnProperty(_19)){f=_1f[_19];}else{opf=op[_19];do{_1f=_1e.prototype;f=_1f[_19];if(f&&(_1e._meta?_1f.hasOwnProperty(_19):f!==opf)){break;}}while(_1e=_1b[++pos]);}}f=_1e&&f||op[_19];}else{if(_20.c!==_1c){pos=0;_1d=_1b[0]._meta;if(_1d&&_1d.ctor!==_1c){_1a=_1d.chains;if(!_1a||_1a.constructor!=="manual"){_9("calling chained constructor with inherited",this.declaredClass);}while(_1e=_1b[++pos]){_1d=_1e._meta;if(_1d&&_1d.ctor===_1c){break;}}pos=_1e?pos:-1;}}while(_1e=_1b[++pos]){_1d=_1e._meta;f=_1d?_1d.ctor:_1e;if(f){break;}}f=_1e&&f;}_20.c=f;_20.p=pos;if(f){return a===true?f:f.apply(this,a||_18);}};function _21(_22,_23,a){if(typeof _22==="string"){if(typeof _23==="function"){return this.__inherited(_22,_23,a,true);}return this.__inherited(_22,_23,true);}else{if(typeof _22==="function"){return this.__inherited(_22,_23,true);}}return this.__inherited(_22,true);};function _24(_25,a1,a2,a3){var f=this.getInherited(_25,a1,a2);if(f){return f.apply(this,a3||a2||a1||_25);}};var _26=_1.config.isDebug?_24:_17;function _27(cls){var _28=this.constructor._meta.bases;for(var i=0,l=_28.length;i<l;++i){if(_28[i]===cls){return true;}}return this instanceof cls;};function _29(_2a,_2b){for(var _2c in _2b){if(_2c!=_8&&_2b.hasOwnProperty(_2c)){_2a[_2c]=_2b[_2c];}}if(_2("bug-for-in-skips-shadowed")){for(var _2d=_3._extraNames,i=_2d.length;i;){_2c=_2d[--i];if(_2c!=_8&&_2b.hasOwnProperty(_2c)){_2a[_2c]=_2b[_2c];}}}};function _2e(_2f,_30){var _31,t;for(_31 in _30){t=_30[_31];if((t!==op[_31]||!(_31 in op))&&_31!=_8){if(_5.call(t)=="[object Function]"){t.nom=_31;}_2f[_31]=t;}}if(_2("bug-for-in-skips-shadowed")&&_30){for(var _32=_3._extraNames,i=_32.length;i;){_31=_32[--i];t=_30[_31];if((t!==op[_31]||!(_31 in op))&&_31!=_8){if(_5.call(t)=="[object Function]"){t.nom=_31;}_2f[_31]=t;}}}return _2f;};function _33(_34){_35.safeMixin(this.prototype,_34);return this;};function _36(_37,_38){if(!(_37 instanceof Array||typeof _37==="function")){_38=_37;_37=undefined;}_38=_38||{};_37=_37||[];return _35([this].concat(_37),_38);};function _39(_3a,_3b){return function(){var a=arguments,_3c=a,a0=a[0],f,i,m,l=_3a.length,_3d;if(!(this instanceof a.callee)){return _3e(a);}if(_3b&&(a0&&a0.preamble||this.preamble)){_3d=new Array(_3a.length);_3d[0]=a;for(i=0;;){a0=a[0];if(a0){f=a0.preamble;if(f){a=f.apply(this,a)||a;}}f=_3a[i].prototype;f=f.hasOwnProperty("preamble")&&f.preamble;if(f){a=f.apply(this,a)||a;}if(++i==l){break;}_3d[i]=a;}}for(i=l-1;i>=0;--i){f=_3a[i];m=f._meta;f=m?m.ctor:f;if(f){f.apply(this,_3d?_3d[i]:a);}}f=this.postscript;if(f){f.apply(this,_3c);}};};function _3f(_40,_41){return function(){var a=arguments,t=a,a0=a[0],f;if(!(this instanceof a.callee)){return _3e(a);}if(_41){if(a0){f=a0.preamble;if(f){t=f.apply(this,t)||t;}}f=this.preamble;if(f){f.apply(this,t);}}if(_40){_40.apply(this,a);}f=this.postscript;if(f){f.apply(this,a);}};};function _42(_43){return function(){var a=arguments,i=0,f,m;if(!(this instanceof a.callee)){return _3e(a);}for(;f=_43[i];++i){m=f._meta;f=m?m.ctor:f;if(f){f.apply(this,a);break;}}f=this.postscript;if(f){f.apply(this,a);}};};function _44(_45,_46,_47){return function(){var b,m,f,i=0,_48=1;if(_47){i=_46.length-1;_48=-1;}for(;b=_46[i];i+=_48){m=b._meta;f=(m?m.hidden:b.prototype)[_45];if(f){f.apply(this,arguments);}}};};function _49(_4a){_6.prototype=_4a.prototype;var t=new _6;_6.prototype=null;return t;};function _3e(_4b){var _4c=_4b.callee,t=_49(_4c);_4c.apply(t,_4b);return t;};function _35(_4d,_4e,_4f){if(typeof _4d!="string"){_4f=_4e;_4e=_4d;_4d="";}_4f=_4f||{};var _50,i,t,_51,_52,_53,_54,_55=1,_56=_4e;if(_5.call(_4e)=="[object Array]"){_53=_c(_4e,_4d);t=_53[0];_55=_53.length-t;_4e=_53[_55];}else{_53=[0];if(_4e){if(_5.call(_4e)=="[object Function]"){t=_4e._meta;_53=_53.concat(t?t.bases:_4e);}else{_9("base class is not a callable constructor.",_4d);}}else{if(_4e!==null){_9("unknown base class. Did you use dojo.require to pull it in?",_4d);}}}if(_4e){for(i=_55-1;;--i){_50=_49(_4e);if(!i){break;}t=_53[i];(t._meta?_29:_4)(_50,t.prototype);if(_2("csp-restrictions")){_51=function(){};}else{_51=new Function;}_51.superclass=_4e;_51.prototype=_50;_4e=_50.constructor=_51;}}else{_50={};}_35.safeMixin(_50,_4f);t=_4f.constructor;if(t!==op.constructor){t.nom=_8;_50.constructor=t;}for(i=_55-1;i;--i){t=_53[i]._meta;if(t&&t.chains){_54=_4(_54||{},t.chains);}}if(_50["-chains-"]){_54=_4(_54||{},_50["-chains-"]);}if(_4e&&_4e.prototype&&_4e.prototype["-chains-"]){_54=_4(_54||{},_4e.prototype["-chains-"]);}t=!_54||!_54.hasOwnProperty(_8);_53[0]=_51=(_54&&_54.constructor==="manual")?_42(_53):(_53.length==1?_3f(_4f.constructor,t):_39(_53,t));_51._meta={bases:_53,hidden:_4f,chains:_54,parents:_56,ctor:_4f.constructor};_51.superclass=_4e&&_4e.prototype;_51.extend=_33;_51.createSubclass=_36;_51.prototype=_50;_50.constructor=_51;_50.getInherited=_21;_50.isInstanceOf=_27;_50.inherited=_26;_50.__inherited=_17;if(_4d){_50.declaredClass=_4d;_3.setObject(_4d,_51);}if(_54){for(_52 in _54){if(_50[_52]&&typeof _54[_52]=="string"&&_52!=_8){t=_50[_52]=_44(_52,_53,_54[_52]==="after");t.nom=_52;}}}return _51;};_1.safeMixin=_35.safeMixin=_2e;_1.declare=_35;return _35;});