Introduces support for extracting SEO metadata from document content by adding a new DocumentSeoDto, updating renderers to handle a new [doc-seo] section, and exposing this data in the project document page. The page now uses the SEO description if available, improving meta tag generation. Also adds error handling for scrollspy initialization in vs.js.
Replaced backslash with forward slash in the project path for TickerQ demo app in the solution file to ensure consistency across platforms. Also clarified documentation on configuring TimeTicker properties for specific jobs.
Moved the TOC generation for documents to occur after navigation DTO initialization, ensuring TOC items are generated only when document content is available. This improves code clarity and maintains correct TOC population.
Relocated ITocGeneratorService and TocHeading to the Application.Contracts project, and TocGeneratorService to the Application project. This improves project structure by separating contracts and implementations from the web layer.
Replaces the use of a fixed max TOC level with a level count parameter in TOC generation methods and logic. This change improves flexibility by allowing the number of heading levels included in the TOC to be specified, rather than a maximum heading level value.
Enhanced TocGeneratorService by refactoring heading parsing, optimizing inline text extraction, and improving handling of empty or invalid markdown. Added helper methods for pipeline creation, heading construction, and inline processing for better readability and maintainability.
Replaces flat TocHeading list with hierarchical TocItem structure for document table of contents. Updates rendering logic, service interface, and implementation to support nested headings and configurable levels.