themes-editorial/blocks/byline.schema.json
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

37 lines
1.1 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Byline",
"description": "Article byline with author name, optional photo, optional read-time, and dateline.",
"type": "object",
"properties": {
"authorSlug": {
"type": "string",
"title": "Author Slug",
"description": "Slug of the author whose name and photo should be rendered.",
"x-editor": "slug"
},
"showPhoto": {
"type": "string",
"title": "Show Photo",
"description": "Render the author's avatar to the left of the name.",
"x-editor": "select",
"enum": ["false", "true"],
"default": "true"
},
"showReadTime": {
"type": "string",
"title": "Show Read Time",
"description": "Include the read-time estimate next to the dateline.",
"x-editor": "select",
"enum": ["false", "true"],
"default": "true"
},
"dateline": {
"type": "string",
"title": "Dateline",
"description": "Optional explicit dateline (e.g. \"London, March 14\"). Rendered in small caps.",
"x-editor": "text"
}
}
}