aboutsummaryrefslogtreecommitdiff
path: root/lib/kernel/lectionary.mli
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-19 08:27:22 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-19 08:27:22 +0200
commit5828571fa31a0480838d1ede210002ab50768c64 (patch)
treebe4bbb946c2e75cdc268f858b0575edbbbbcf401 /lib/kernel/lectionary.mli
parentda9cf402ceed8102aec1a9d008f8e918a23d39f3 (diff)
downloadcolitur-5828571fa31a0480838d1ede210002ab50768c64.tar.gz
colitur-5828571fa31a0480838d1ede210002ab50768c64.zip
feat(render): the view model
Shapes a civil year of resolved days into the value a template renders against. This layer is why the engine can stay logic-less: a month grid needs leading blank cells, week bucketing and an in-month test, and a logic-less template can compute none of it. Both weeks and days are offered at every level -- the booklet walks days, the grid walks weeks -- so the two artefacts cannot drift. Colours are six booleans, not hex: hex bakes a presentation policy into the engine, and LaTeX, groff and HTML each want a different colour expression. Asserted: exactly one of the six is true on every day of a whole year, so a template keying off them can never get none or two. Padding cells carry every field a real day carries, empty, so a template never hits a missing key mid-grid.
Diffstat (limited to 'lib/kernel/lectionary.mli')
0 files changed, 0 insertions, 0 deletions