chore(doc-gen): capture docs for modules from comments Closes #1258 docs(*): add module description jsdoc tags docs(*): add @public tag to public modules chore(doc-gen): fix overview-dump template The template was referencing an invalid property chore(doc-gen): use `@exportedAs` and `@public` rather than `@publicModule` This commit refactors how we describe components that are re-exported in another module. For example the "public" modules like `angular/angular` and `angular/annotations` are public but they only re-export components from "private" modules. Previously, you must apply the `@publicModule` tag to a component that was to be re-exported. Applying this tag caused the destination module to become public. Now, you specify that a module is public by applying the `@public` tag and then you can "re-export" components to other modules by applying the `@exportedAs` giving the name of the module from which the component will be re-exported. tag. This tag can be used multiple times on a single component, allowing the component to be exported on multiple modules. docs(*): rename `@publicModule` to `@exportedAs` The `@publicModule` dgeni tag has been replaced by the `@exportedAs` dgeni tag on components that are to be re-exported on another module. Closes #1290
		
			
				
	
	
		
			31 lines
		
	
	
		
			985 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			985 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| var _ = require('lodash');
 | |
| 
 | |
| module.exports = function captureModuleDocs(log, getJSDocComment) {
 | |
| 
 | |
|   return {
 | |
|     $runAfter: ['captureClassMembers'],
 | |
|     $runBefore: ['parsing-tags'],
 | |
|     $process: function(docs) {
 | |
|       // Generate docs for each module's file's comments not already captured
 | |
|       _.forEach(docs, function(moduleDoc) {
 | |
| 
 | |
|         if ( moduleDoc.docType !== 'module' ) return;
 | |
| 
 | |
|         moduleDoc.extraComments = [];
 | |
|         _.forEach(moduleDoc.comments, function(comment) {
 | |
|           var jsDocComment = getJSDocComment(comment);
 | |
|           if (jsDocComment) {
 | |
|             jsDocComment.docType = 'moduleDoc';
 | |
|             jsDocComment.moduleDoc = moduleDoc;
 | |
|             moduleDoc.extraComments.push(jsDocComment);
 | |
|             docs.push(jsDocComment);
 | |
| //            console.log('found', jsDocComment.content);
 | |
|           }
 | |
|         });
 | |
|         if ( moduleDoc.extraComments.length > 0 ) {
 | |
| //          console.log(moduleDoc.extraComments.length);
 | |
|         }
 | |
|       });
 | |
|     }
 | |
|   };
 | |
| }; |