1- var path = require ( 'path' ) ;
2-
31var parseStructureFile = require ( './parseStructureFile' ) ;
42var Summary = require ( '../models/summary' ) ;
53var SummaryModifier = require ( '../modifiers' ) . Summary ;
64var location = require ( '../utils/location' ) ;
7- var Git = require ( '../utils/git' ) ;
8- var fs = require ( '../utils/fs' ) ;
9- var walkSummary = require ( './walkSummary' ) ;
10-
11- /**
12- Create files for summary content references
13- to be rendered by a TemplateEngine
14-
15- @param {Book } book
16- @param {Summary } summary
17- @return {Promise<Summary> }
18- */
19- function generateConRefs ( book , summary ) {
20- return walkSummary ( summary , function ( article ) {
21- var sourceURL = article . getRef ( ) ;
22- if ( ! Git . isUrl ( sourceURL ) ) return ;
23-
24- // Article is a content reference
25- var gitUrl = Git . parseUrl ( sourceURL ) ;
26- var gitFilename = path . basename ( gitUrl . filepath ) ;
27- var filepath ;
28-
29- // Generate a unique filename
30- return fs . uniqueFilename ( book . getRoot ( ) , gitFilename )
31- . then ( function ( uniqueFilename ) {
32- // Create file containing include
33- filepath = path . join ( book . getRoot ( ) , uniqueFilename ) ;
34- return fs . writeFile ( filepath ,
35- '{% include "' + sourceURL + '" %}'
36- ) ;
37- } )
38- . then ( function ( ) {
39- // Change file in summary article
40- filepath = path . relative ( book . getRoot ( ) , filepath ) ;
41- summary = SummaryModifier . editArticleRef ( summary , article . getLevel ( ) , filepath ) ;
42- } ) ;
43- } )
44- . then ( function ( ) {
45- return summary ;
46- } ) ;
47- }
485
496/**
507 Parse summary in a book, the summary can only be parsed
@@ -70,9 +27,6 @@ function parseSummary(book) {
7027 summary = Summary . createFromParts ( file , result . parts ) ;
7128 }
7229
73- return generateConRefs ( book , summary ) ;
74- } )
75- . then ( function ( summary ) {
7630 // Insert readme as first entry
7731 var firstArticle = summary . getFirstArticle ( ) ;
7832
0 commit comments