16 lines
		
	
	
		
			572 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			16 lines
		
	
	
		
			572 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | var _ = require('lodash'); | ||
|  | 
 | ||
|  | module.exports = function moduleScopeLinkDisambiguator() { | ||
|  |   return function(url, title, currentDoc, docs) { | ||
|  |     if (docs.length > 1) { | ||
|  |       // filter out target docs that are not in the same module as the source doc
 | ||
|  |       var filteredDocs = | ||
|  |           _.filter(docs, function(doc) { return doc.moduleDoc === currentDoc.moduleDoc; }); | ||
|  |       // if all target docs are in a different module then just return the full collection of
 | ||
|  |       // ambiguous docs
 | ||
|  |       return filteredDocs.length > 0 ? filteredDocs : docs; | ||
|  |     } | ||
|  |     return docs; | ||
|  |   }; | ||
|  | }; |