%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /data/old/home/stash/atlassian/stash/3.7.1/atlassian-stash/static/util/
Upload File :
Create Path :
Current File : //data/old/home/stash/atlassian/stash/3.7.1/atlassian-stash/static/util/feature-loader-min.js

define("util/feature-loader",["aui","jquery","lodash","require","util/events"],function(C,G,E,D,F){function A(J,I){if(typeof J.load!=="function"||typeof J.unload!=="function"){throw new Error("Modules require both a load and unload callback. Please use:\n"+H(I))}}function H(I){return"FeatureLoader.registerHandler('"+I+"', /urlMatcher/, {\n    load : loadFn,\n    unload : unloadFn,\n    keyboardShortcutContexts : [ 'changeset', ... ]});"}function B(K){if(!(this instanceof B)){return new B(K)}K=G.extend({},B.defaults,K);var b=window.location.href;var L=[];var d={};var Y=G.Deferred().resolve();var Q;var W=false;var J;var I;function U(f){J=f}function e(f){I=f}function N(f,i,h){var g;if(E.has(d,f)){throw new Error("A handler with the name '"+f+"' already exists.")}if(!h){throw new Error("No module or module name was provided. Please use:\n"+H(f))}if(typeof h==="string"){g=d[f]={name:f,urlRegex:i,moduleName:h}}else{A(h,f);g=d[f]={name:f,urlRegex:i,module:h}}if(W&&!Q&&E.contains(X(window.location.href),g)){P(g)}return this}function S(g){if(!E.contains(L,g)){return G.Deferred().resolve()}var f=g.module.unload(J);L=E.without(L,g);function h(){F.trigger(K.unloadedEvent,null,g)}if(f&&f.then){return f.then(h)}else{h();return G.Deferred().resolve()}}function P(g){if(E.contains(L,g)){return G.Deferred().resolve()}if(!g.module){g.module=D(g.moduleName);A(g.module,g.name)}var f=g.module.load(J);L.push(g);function h(){F.trigger(K.loadedEvent,null,g)}if(f&&f.then){return f.then(h)}else{h();return G.Deferred().resolve()}}function R(){if(W&&b===window.location.href){return }b=window.location.href;var f=X(b);if(f.length){E.each(f,function(g){F.trigger(K.requestedEvent,null,g.name)});if(!Q){Q=true;Y.then(a)}}else{if(!W){F.trigger(K.errorEvent,null,{message:C.I18n.getText("stash.web.featureloader.nohandler"),code:B.NO_HANDLER})}else{window.location.reload()}}}function a(){Q=false;var k=X(window.location.href);var h=E.difference(k,L);var j=E.difference(L,k);var f=h.length||j.length;if(f){var g=function(){if(!L.length){G(J).empty();return G.Deferred().resolve()}return G.when.apply(G,E.map(j,S))};var i=function(){return G.when.apply(G,E.map(h,P))};var l=function(){return g().then(i)};Y=l().then(function(){if(I){I.resetContexts()}})}}function X(f){return E.filter(d,function(g){return g.urlRegex&&g.urlRegex.test(f)})}function T(){return L.slice()}function M(){R()}function Z(f){return f.module&&f.module.keyboardShortcutContexts||[]}function O(f){var g=E.chain(L).map(Z).flatten().uniq().value();E.each(g,function(h){f.enableContext(h)})}function V(f){U(f);R();F.on("memoir.changestate",M);F.on("stash.widget.keyboard-shortcuts.register-contexts",O);W=true}function c(){F.off("memoir.changestate",M);F.off("stash.widget.keyboard-shortcuts.register-contexts",O)}this.registerHandler=N;this.setElement=U;this.setKeyboardShortcuts=e;this.current=T;this.init=V;this.destroy=c;return this}B.defaults={unloadedEvent:"stash.util.feature-loader.unloaded",loadedEvent:"stash.util.feature-loader.loaded",requestedEvent:"stash.util.feature-loader.loadRequested",errorEvent:"stash.util.feature-loader.errorOccurred"};B.NO_HANDLER="NO_HANDLER";return B});

Zerion Mini Shell 1.0