]>
git.wh0rd.org - tt-rss.git/blob - lib/dojo/aspect.js
498f5d11d2c5c1c6466e71b7003e87b83382e47c
2 Copyright (c) 2004-2016, The JS Foundation All Rights Reserved.
3 Available via Academic Free License >= 2.1 OR the modified BSD license.
4 see: http://dojotoolkit.org/license for details
8 define("dojo/aspect",[],function(){"use strict";var _1
;function _2(_3
,_4
,_5
,_6
){var _7
=_3
[_4
];var _8
=_4
=="around";var _9
;if(_8
){var _a
=_5(function(){return _7
.advice(this,arguments
);});_9
={remove:function(){if(_a
){_a
=_3
=_5
=null;}},advice:function(_b
,_c
){return _a
?_a
.apply(_b
,_c
):_7
.advice(_b
,_c
);}};}else{_9
={remove:function(){if(_9
.advice
){var _d
=_9
.previous
;var _e
=_9
.next
;if(!_e
&&!_d
){delete _3
[_4
];}else{if(_d
){_d
.next
=_e
;}else{_3
[_4
]=_e
;}if(_e
){_e
.previous
=_d
;}}_3
=_5
=_9
.advice
=null;}},id
:_3
.nextId
++,advice
:_5
,receiveArguments
:_6
};}if(_7
&&!_8
){if(_4
=="after"){while(_7
.next
&&(_7
=_7
.next
)){}_7
.next
=_9
;_9
.previous
=_7
;}else{if(_4
=="before"){_3
[_4
]=_9
;_9
.next
=_7
;_7
.previous
=_9
;}}}else{_3
[_4
]=_9
;}return _9
;};function _f(_10
){return function(_11
,_12
,_13
,_14
){var _15
=_11
[_12
],_16
;if(!_15
||_15
.target
!=_11
){_11
[_12
]=_16=function(){var _17
=_16
.nextId
;var _18
=arguments
;var _19
=_16
.before
;while(_19
){if(_19
.advice
){_18
=_19
.advice
.apply(this,_18
)||_18
;}_19
=_19
.next
;}if(_16
.around
){var _1a
=_16
.around
.advice(this,_18
);}var _1b
=_16
.after
;while(_1b
&&_1b
.id
<_17
){if(_1b
.advice
){if(_1b
.receiveArguments
){var _1c
=_1b
.advice
.apply(this,_18
);_1a
=_1c
===_1
?_1a
:_1c
;}else{_1a
=_1b
.advice
.call(this,_1a
,_18
);}}_1b
=_1b
.next
;}return _1a
;};if(_15
){_16
.around
={advice:function(_1d
,_1e
){return _15
.apply(_1d
,_1e
);}};}_16
.target
=_11
;_16
.nextId
=_16
.nextId
||0;}var _1f
=_2((_16
||_15
),_10
,_13
,_14
);_13
=null;return _1f
;};};var _20
=_f("after");var _21
=_f("before");var _22
=_f("around");return {before
:_21
,around
:_22
,after
:_20
};});