The 17 components
Rules that apply to every component
- Text fields carry no HTML, no URLs and no markdown. The only exception is the
bodyofinfo, which allows markdown formatting but still refuses HTML, raw URLs and inline links. - References are ids, never addresses.
assetIdnames an image in your registry,actionIdnames one of the actions you declared on the page,linkIdnames one of your approved links. Ids are lowercase with single hyphens or underscores, a shape a URL cannot match. The server swaps each id for the real value after validation. - Icons come from a fixed vocabulary of generic names (
shield,clock,truck,message-circle, …). They are interface vocabulary, not your data, so they are a closed list. - At most one instance of each component per answer.
Props, component by component
heading
media
Landscape assets only. A portrait one belongs in
mediaCard, where it fits without stretching.
mediaCard
gallery
timeline
accordion
Rows of one theme, hidden until the visitor clicks, so the accordion carries secondary detail only. Content that answers the actual question goes to
grid, timeline, metrics, faq or info; visitor-phrased questions belong in faq.
cta
metrics
Only figures that appear literally in your material. Third-party numbers belong in
stats, where they carry a source.
grid
faq
stats
Both the number and its attribution must exist in the material. An attribution is never dropped or altered.
leadForm
The agent chooses which form to show; you own its fields and where a submission goes. A form submits internally (stored and emailed to you) or externally (posted to your own API), and only an external form may include a password — wondeya never stores one.