NavigationBuilderConfig

case class NavigationBuilderConfig(entries: Seq[NavigationNodeConfig], source: SourceFragment, defaultDepth: Int, itemStyles: Set[String], excludeRoot: Boolean, excludeSections: Boolean, excludeSelf: Boolean, options: Options) extends BlockResolver

A block resolver that replaces itself with a navigation list according to this instances configuration. The resulting navigation tree can either be automatically generated from specified root nodes of the input tree or by specifying entries manually (or a combination of both).

Serves as the implementation for the navigationTree directive, but can also be inserted into the AST manually.

Value parameters:
defaultDepth

the depth for automatically generated entries (unless overridden in the entries' config)

entries

the list of manual and automatic entries to insert into the navigation tree

excludeRoot

indicates whether the root node should be excluded in automatic entries (may be overridden in the entries' config)

excludeSections

indicates whether sections within documents should be excluded in automatic entries (may be overridden in the entries' config)

excludeSelf

indicates whether the current document should be included

itemStyles

the styles to apply to all navigation items in the list as a render hint

options

optional styles and/or an id for the final navigation list

source

the source fragment that produced this navigation builder, for error reporting

Companion:
object
trait Block
class Element
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Type members

Value members

Concrete methods

def eval(cursor: DocumentCursor): Either[String, NavigationList]

Creates a navigation list for the specified document based on this instances configuration.

Creates a navigation list for the specified document based on this instances configuration.

In case of configuration errors or references to non-existing documents an error message will be returned as a Left.

def runsIn(phase: RewritePhase): Boolean

Inherited methods

def hasId: Boolean

Indicates whether this element has an id assigned.

Indicates whether this element has an id assigned.

Inherited from:
Element
def hasStyle(name: String): Boolean

Indicates whether this element has the specified style assigned.

Indicates whether this element has the specified style assigned.

Inherited from:
Element

Returns a new instance of this element with its options merged with the specified options.

Returns a new instance of this element with its options merged with the specified options.

Inherited from:
Element

Returns a new instance of this element with the new options obtained from applying the specified function to the existing value.

Returns a new instance of this element with the new options obtained from applying the specified function to the existing value.

Inherited from:
Element
def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product
def withId(id: String): Self

Returns a new instance of this element with its id set to the specified value, overriding any existing value.

Returns a new instance of this element with its id set to the specified value, overriding any existing value.

Inherited from:
Element
def withStyle(name: String): Self

Returns a new instance of this element with the specified style added to its existing styles.

Returns a new instance of this element with the specified style added to its existing styles.

Inherited from:
Element
def withStyles(styles: Iterable[String]): Self

Returns a new instance of this element with the specified styles added to its existing styles.

Returns a new instance of this element with the specified styles added to its existing styles.

Inherited from:
Element
def withStyles(style: String, styles: String*): Self

Returns a new instance of this element with the specified styles added to its existing styles.

Returns a new instance of this element with the specified styles added to its existing styles.

Inherited from:
Element

Returns a new instance of this element without its id.

Returns a new instance of this element without its id.

Inherited from:
Element

Concrete fields

lazy val unresolvedMessage: String