class

Hwaro::Models::ContentFilesConfig

Inherits Reference < Object

Content file publishing configuration

Allows copying non-Markdown files from content/ to the output directory (e.g. content/about/profile.jpg -> /about/profile.jpg).

Constructors

Class methods

normalize_extensions(values : Array(String)) : Array(String)
Source
normalize_ignore(values : Array(String)) : Array(String)

[content] ignore patterns: normalized like disallow_paths, with trailing slashes folded to one (the folders-only form, see IgnoreKind) and the gitignore/globset negated class [!…] spelled [^…], the form File.match? reads (it takes [!a] as "! or a").

Source
normalize_path(path : String) : String
Source
normalize_paths(values : Array(String)) : Array(String)
Source

Instance methods

allow_extensions
Source
allow_extensions=(allow_extensions : Array(String))
Source
denied?(relative_path : String) : Bool

True when the deny rules (disallow_extensions / disallow_paths) exclude relative_path, regardless of allow_extensions. Raw .json/.xml files publish without an allow-list entry, but the deny rules still apply to them.

Source
disallow_extensions
Source
disallow_extensions=(disallow_extensions : Array(String))
Source
disallow_paths
Source
disallow_paths=(disallow_paths : Array(String))
Source
enabled?
Source
ignore

[content] ignore — content-relative globs Hwaro never sees: no page, section, bundle asset or published file comes from a match. Read from [content], not [content.files], but held here because every non-page consumer of content/ already asks publish? / denied?, so they honour it without extra plumbing; the page lanes ask ignored? directly.

Source
ignore=(patterns : Array(String))
Source
ignored?(relative_path : String) : Bool

True when [content] ignore hides relative_path (content-relative). A pattern matching any ancestor directory hides the whole subtree, so _templates alone covers _templates/note.md, like _templates/**. Case-sensitive, like disallow_paths.

relative_path is only tidied (backslashes to /, a leading ./ dropped), never stripped of a leading content/ the way patterns are: that segment of a real content/content/x.md is a folder of its own.

Source
publish?(relative_path : String) : Bool
Source

Nested types