themes-editorial/blocks/blocks.yaml
Alex Dunmow efbfaea74c feat: convert to codeless .bnp — templates + manifest, Go/templ deleted (WO-WZ-021)
Convert the Editorial theme from a Go+templ wasm plugin to a fully codeless
.bnp: 7 blocks + 4 built-in overrides + email wrapper transcribed templ→pongo2
.ninjatpl (byte-faithful, parity-verified 55/55 identical), 4 page templates,
blocks/blocks.yaml (fully-qualified editorial:<key>), master_pages.json, and
manifest.yaml (system/page templates, template_overrides, email_wrapper, css
input_css_append). Schemas moved schemas/→blocks/. All Go, templ, go.mod/go.sum
deleted. plugin.mod bumped 0.1.2→0.2.0, [compatibility] dropped. Makefile
rewritten to codeless targets.

Gates: ninja plugin build → (codeless, no plugin.wasm); ninja plugin verify → OK;
check-safety → OK.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 15:27:31 +08:00

49 lines
1.8 KiB
YAML

# Editorial theme block definitions (codeless .bnp, WO-WZ-021).
# Keys are fully qualified (editorial:<key>) because the codeless loader
# registers definitions verbatim — there is no PluginBlockRegistry prefixing
# in the codeless path (unlike the wasm/templ path). The qualified keys match
# the hardcoded data-block attributes and the master_pages.json references.
blocks:
- key: editorial:masthead
title: Masthead
description: Newspaper-style masthead with Playfair wordmark and hairline rule
category: navigation
schema: masthead.schema.json
template: masthead.ninjatpl
- key: editorial:byline
title: Byline
description: Author byline with optional photo, dateline, and read time
category: theme
schema: byline.schema.json
template: byline.ninjatpl
- key: editorial:pullquote
title: Pull Quote
description: Large oxblood pull quote in Playfair italic
category: theme
schema: pullquote.schema.json
template: pullquote.ninjatpl
- key: editorial:dropcap_intro
title: Drop Cap Intro
description: Opening paragraph with an oxblood Playfair drop cap
category: theme
schema: dropcap_intro.schema.json
template: dropcap_intro.ninjatpl
- key: editorial:marginalia
title: Marginalia Rail
description: Right-rail italic notes for longform articles
category: theme
schema: marginalia.schema.json
template: marginalia.ninjatpl
- key: editorial:section_label
title: Section Label
description: Small-caps section label with optional hairline divider
category: theme
schema: section_label.schema.json
template: section_label.ninjatpl
- key: editorial:colophon
title: Colophon
description: Editorial footer with ISSN, subscribe stub, and link list
category: navigation
schema: colophon.schema.json
template: colophon.ninjatpl