| 123456789101112131415161718192021222324252627282930313233343536 | 
							- module.exports = function createResolver(alias) {
 
- 	if(typeof alias !== "object" || Array.isArray(alias)) {
 
- 		return function(url) {
 
- 			return url
 
- 		};
 
- 	}
 
- 	alias = Object.keys(alias).map(function(key) {
 
- 		var onlyModule = false;
 
- 		var obj = alias[key];
 
- 		if(/\$$/.test(key)) {
 
- 			onlyModule = true;
 
- 			key = key.substr(0, key.length - 1);
 
- 		}
 
- 		if(typeof obj === "string") {
 
- 			obj = {
 
- 				alias: obj
 
- 			};
 
- 		}
 
- 		obj = Object.assign({
 
- 			name: key,
 
- 			onlyModule: onlyModule
 
- 		}, obj);
 
- 		return obj;
 
- 	});
 
- 	return function(url) {
 
- 		alias.forEach(function(obj) {
 
- 			var name = obj.name;
 
- 			if(url === name || (!obj.onlyModule && url.startsWith(name + "/"))) {
 
- 				url = obj.alias + url.substr(name.length);
 
- 			}
 
- 		});
 
- 		return url;
 
- 	}
 
- }
 
 
  |