27 lines
		
	
	
		
			834 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			834 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | /** | ||
|  |  * Members that have overloads get long unwieldy anchors because they must be distinguished | ||
|  |  * by their parameter lists. | ||
|  |  * But the primary overload doesn't not need this distinction, so can just be the name of the member. | ||
|  |  */ | ||
|  | module.exports = function simplifyMemberAnchors() { | ||
|  |   return { | ||
|  |     $runAfter: ['extra-docs-added'], | ||
|  |     $runBefore: ['computing-paths'], | ||
|  |     $process: function(docs) { | ||
|  |       return docs.forEach(doc => { | ||
|  |         if (doc.members) { | ||
|  |           doc.members.forEach(member => member.anchor = computeAnchor(member)); | ||
|  |         } | ||
|  |         if (doc.statics) { | ||
|  |           doc.statics.forEach(member => member.anchor = computeAnchor(member)); | ||
|  |         } | ||
|  |       }); | ||
|  |     } | ||
|  |   }; | ||
|  | }; | ||
|  | 
 | ||
|  | function computeAnchor(member) { | ||
|  |   // if the member is a "call" type then it has no name
 | ||
|  |   return encodeURI(member.name.trim() || 'call'); | ||
|  | } |