| 
									
										
										
										
											2017-08-04 04:28:29 +03:00
										 |  |  | /********************************************************************** | 
					
						
							|  |  |  | *  | 
					
						
							|  |  |  | * | 
					
						
							|  |  |  | * | 
					
						
							|  |  |  | **********************************************************************/ | 
					
						
							|  |  |  | ((typeof define)[0]=='u'?function(f){module.exports=f(require)}:define) | 
					
						
							|  |  |  | (function(require){ var module={} // make module AMD/node compatible...
 | 
					
						
							|  |  |  | /*********************************************************************/ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var actions = require('lib/actions') | 
					
						
							|  |  |  | var features = require('lib/features') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var core = require('features/core') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*********************************************************************/ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var Alias =  | 
					
						
							|  |  |  | module.Alias = core.ImageGridFeatures.Feature({ | 
					
						
							|  |  |  | 	title: '', | 
					
						
							|  |  |  | 	doc: '', | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	tag: 'alias', | 
					
						
							| 
									
										
										
										
											2017-08-06 12:50:38 +03:00
										 |  |  | 	suggested: [ | 
					
						
							|  |  |  | 		'ui-alias', | 
					
						
							|  |  |  | 	], | 
					
						
							| 
									
										
										
										
											2017-08-04 04:28:29 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	config: { | 
					
						
							|  |  |  | 		//aliases: {
 | 
					
						
							|  |  |  | 		//},
 | 
					
						
							|  |  |  | 	}, | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	handlers: [ | 
					
						
							| 
									
										
										
										
											2017-08-04 09:52:45 +03:00
										 |  |  | 		// load aliases...
 | 
					
						
							|  |  |  | 		['start', | 
					
						
							|  |  |  | 			function(){ | 
					
						
							|  |  |  | 				var that = this | 
					
						
							|  |  |  | 				var aliases = this.config.aliases || {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				Object.keys(aliases) | 
					
						
							|  |  |  | 					.forEach(function(alias){ | 
					
						
							|  |  |  | 						that.alias(alias, aliases[alias]) }) | 
					
						
							|  |  |  | 			}], | 
					
						
							|  |  |  | 		// store aliases in .config.aliases
 | 
					
						
							|  |  |  | 		// XXX should we guard from overriding actions???
 | 
					
						
							| 
									
										
										
										
											2017-08-04 04:28:29 +03:00
										 |  |  | 		['alias', | 
					
						
							|  |  |  | 			function(_, alias, target){ | 
					
						
							|  |  |  | 				// remove alias...
 | 
					
						
							| 
									
										
										
										
											2017-08-04 09:43:54 +03:00
										 |  |  | 				// XXX is this test enough??? ...see ActionSet.alias(..)
 | 
					
						
							|  |  |  | 				if(arguments.length == 3  | 
					
						
							|  |  |  | 						&& (target === null || target === false)){ | 
					
						
							| 
									
										
										
										
											2017-08-04 04:28:29 +03:00
										 |  |  | 					var aliases = this.config.aliases || {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					delete aliases[alias] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					if(Object.keys(alias).length == 0){ | 
					
						
							|  |  |  | 						delete this.config.aliases | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				// save alias...
 | 
					
						
							|  |  |  | 				} else { | 
					
						
							|  |  |  | 					var aliases = this.config.aliases = this.config.aliases || {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					aliases[alias] = target | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			}]], | 
					
						
							|  |  |  | }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-08-06 12:50:38 +03:00
										 |  |  | //---------------------------------------------------------------------
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var UIAliasActions = actions.Actions({ | 
					
						
							|  |  |  | 	// XXX list aliases....
 | 
					
						
							|  |  |  | 	// XXX
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	// XXX edit alias...
 | 
					
						
							|  |  |  | 	// XXX
 | 
					
						
							|  |  |  | }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var UIAlias =  | 
					
						
							|  |  |  | module.UIAlias = core.ImageGridFeatures.Feature({ | 
					
						
							|  |  |  | 	title: '', | 
					
						
							|  |  |  | 	doc: '', | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	tag: 'ui-alias', | 
					
						
							|  |  |  | 	depends: [ | 
					
						
							|  |  |  | 		'alias', | 
					
						
							|  |  |  | 		'ui', | 
					
						
							|  |  |  | 	], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	actions: UIAliasActions,  | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	handlers: [], | 
					
						
							|  |  |  | }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-08-04 04:28:29 +03:00
										 |  |  | /********************************************************************** | 
					
						
							|  |  |  | * vim:set ts=4 sw=4 :                               */ return module }) |