CLASS Site

The main configuration of the program, primarily extracted from the app.yaml file.

Properties

Params

(Dictionary<string, object>) { get; set }

Title

(string)

Description

(string?)

(string?)

BaseUrl

(Uri) { get; set }

UglyUrLs

(bool)

KindOutputFormats

(Dictionary<Kind, List>)

SuCoS

(Sucos) = new Sucos()

Options

(IGenerateOptions) { get; set }

Theme

(Theme?)

SourceContentPath

(string)

SourceStaticPath

(string)

SourceThemePath

(string)

OutputReferences

(ConcurrentDictionary<Uri, IOutput>) = []

Pages

(IEnumerable)

RegularPages

(IEnumerable)

Home

(IPage?) { get; set }

CacheManager

(SiteCacheManager) = new()

Parser

(IFrontMatterParser)

TemplateEngine

(ITemplateEngine)

Logger

(ILogger)

SourceFolders

(IEnumerable)

FilesParsedToReport

(int): Number of files parsed, used in the report.

Public Methods

ResetCache

public void ResetCache()

ScanAndParseSourceFiles

public void ScanAndParseSourceFiles(IFileSystem fs, string? directory, int level = 0, ContentSource? parent = null, FrontMatter? cascade = null)

Parameters:

  • fs (IFileSystem)
  • directory (string?)
  • level (int) (Default: 0)
  • parent (ContentSource?) (Default: null)
  • cascade (FrontMatter?) (Default: null)

PostProcessPage

public void PostProcessPage(IPage page, bool overwrite = false)

Parameters:

  • page (IPage)
  • overwrite (bool) (Default: false)

IsPageValid

public bool IsPageValid(IContentSource contentSource, IGenerateOptions? options)

Parameters:

  • contentSource (IContentSource)
  • options (IGenerateOptions?)

Returns: bool

IsDateValid

public bool IsDateValid(IContentSource contentSource, IGenerateOptions? options)

Parameters:

  • contentSource (IContentSource)
  • options (IGenerateOptions?)

Returns: bool

IsDateExpired

public bool IsDateExpired(IContentSource contentSource)

Parameters:

  • contentSource (IContentSource)

Returns: bool

IsDatePublishable

public bool IsDatePublishable(IContentSource contentSource)

Parameters:

  • contentSource (IContentSource)

Returns: bool

PageCreate

public List<Page> PageCreate(ContentSource contentSource)

Parameters:

  • contentSource (ContentSource)

Returns: List<Page>

ProcessPages

public void ProcessPages()

Create pages from content source

ContentSourceAdd

public ContentSource? ContentSourceAdd(ContentSource? contentSource)

Parameters:

  • contentSource (ContentSource?)

Returns: ContentSource?