mirror of
https://git.tt-rss.org/git/tt-rss.git
synced 2025-12-15 09:35:56 +00:00
upgrade dojo to 1.8.3 (refs #570)
This commit is contained in:
85
lib/dojo/request/registry.js.uncompressed.js
Normal file
85
lib/dojo/request/registry.js.uncompressed.js
Normal file
@@ -0,0 +1,85 @@
|
||||
define("dojo/request/registry", [
|
||||
'require',
|
||||
'../_base/array',
|
||||
'./default!platform',
|
||||
'./util'
|
||||
], function(require, array, fallbackProvider, util){
|
||||
var providers = [];
|
||||
|
||||
function request(url, options){
|
||||
var matchers = providers.slice(0),
|
||||
i = 0,
|
||||
matcher;
|
||||
|
||||
while(matcher=matchers[i++]){
|
||||
if(matcher(url, options)){
|
||||
return matcher.request.call(null, url, options);
|
||||
}
|
||||
}
|
||||
|
||||
return fallbackProvider.apply(null, arguments);
|
||||
}
|
||||
|
||||
function createMatcher(match, provider){
|
||||
var matcher;
|
||||
|
||||
if(provider){
|
||||
if(match.test){
|
||||
// RegExp
|
||||
matcher = function(url){
|
||||
return match.test(url);
|
||||
};
|
||||
}else if(match.apply && match.call){
|
||||
matcher = function(){
|
||||
return match.apply(null, arguments);
|
||||
};
|
||||
}else{
|
||||
matcher = function(url){
|
||||
return url === match;
|
||||
};
|
||||
}
|
||||
|
||||
matcher.request = provider;
|
||||
}else{
|
||||
// If only one argument was passed, assume it is a provider function
|
||||
// to apply unconditionally to all URLs
|
||||
matcher = function(){
|
||||
return true;
|
||||
};
|
||||
|
||||
matcher.request = match;
|
||||
}
|
||||
|
||||
return matcher;
|
||||
}
|
||||
|
||||
request.register = function(url, provider, first){
|
||||
var matcher = createMatcher(url, provider);
|
||||
providers[(first ? 'unshift' : 'push')](matcher);
|
||||
|
||||
return {
|
||||
remove: function(){
|
||||
var idx;
|
||||
if(~(idx = array.indexOf(providers, matcher))){
|
||||
providers.splice(idx, 1);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
request.load = function(id, parentRequire, loaded, config){
|
||||
if(id){
|
||||
// if there's an id, load and set the fallback provider
|
||||
require([id], function(fallback){
|
||||
fallbackProvider = fallback;
|
||||
loaded(request);
|
||||
});
|
||||
}else{
|
||||
loaded(request);
|
||||
}
|
||||
};
|
||||
|
||||
util.addCommonMethods(request);
|
||||
|
||||
return request;
|
||||
});
|
||||
Reference in New Issue
Block a user