@@ -126,9 +126,9 @@ const getHeaderItem = (header: HeaderWithAnchor, indentation: string, lowestRank
126126 return `${ indentation . repeat ( header . rank - lowestRank ) } ${ entryPrefix } ${ header . anchor } ` ;
127127} ;
128128
129- const getHtmlHeaderContents = ( headers : Array < HeaderWithAnchor > , htmlTemplate : string | undefined , itemTemplate : string | undefined , separator : string | undefined ) : string => replaceVariables ( htmlTemplate ?? DEFAULT_HTML_TEMPLATE , [ {
129+ const getHtmlHeaderContents = ( headers : Array < HeaderWithAnchor > , lowestRank : number , htmlTemplate : string | undefined , itemTemplate : string | undefined , separator : string | undefined ) : string => replaceVariables ( htmlTemplate ?? DEFAULT_HTML_TEMPLATE , [ {
130130 key : 'ITEMS' ,
131- replace : `\n${ headers . map ( header => getHeaderItemHtml ( header , itemTemplate ) ) . join ( `\n${ separator ?? DEFAULT_SEPARATOR } \n` ) } \n` ,
131+ replace : `\n${ headers . filter ( header => header . rank === lowestRank ) . map ( header => getHeaderItemHtml ( header , itemTemplate ) ) . join ( `\n${ separator ?? DEFAULT_SEPARATOR } \n` ) } \n` ,
132132} ] ) ;
133133
134134const getHeaderItemHtml = ( header : HeaderWithAnchor , itemTemplate : string | undefined ) : string => {
@@ -165,7 +165,7 @@ export const transform = (
165165
166166 // only limit *HTML* headings by default
167167 // eslint-disable-next-line no-magic-numbers
168- const maxHeaderLevelHtml = isHtml ? 1 : ( maxHeaderLevel || 4 ) ;
168+ const maxHeaderLevelHtml = maxHeaderLevel || 4 ;
169169 const lines = content . split ( '\n' ) ;
170170 const info : SectionInfo = updateSection . parse ( lines , matchesStart ( checkOpeningComments ) , matchesEnd ( checkClosingComments ) ) ;
171171
@@ -197,7 +197,7 @@ export const transform = (
197197 const toc =
198198 inferredTitle +
199199 titleSeparator +
200- ( isHtml ? getHtmlHeaderContents ( linkedHeaders , htmlTemplate , itemTemplate , separator ) : getHeaderContents ( linkedHeaders , indentation , lowestRank , _entryPrefix ) ) +
200+ ( isHtml ? getHtmlHeaderContents ( linkedHeaders , lowestRank , htmlTemplate , itemTemplate , separator ) : getHeaderContents ( linkedHeaders , indentation , lowestRank , _entryPrefix ) ) +
201201 '\n' ;
202202 const wrappedToc = ( openingComment ?? OPENING_COMMENT ) + '\n' + wrapToc ( toc , inferredTitle , isFolding ) + '\n' + ( closingComment ?? CLOSING_COMMENT ) ;
203203 if ( currentToc === wrappedToc ) {
0 commit comments