Skip to main content

Badge — converter mapping

Source badgebadge. This page shows the recognizer rule and every option on the shortcode, with how the converter fills it — so you can see at a glance which options are mapped, which are reproduced via CSS, and which are left for manual editing.

Recognizer

Priority30
Recognizerbadge
Matches whenA small pill / chip / label — a short rounded element with sub-tag text, a leading/trailing icon, and an optional link (an eyebrow, a status badge, a "what’s new" chip).
Becomesbadge
Recognizer block shape{ t:'badge', tag_text, message, link, icon, align, cs }
FallbackDegrades to code_block.

The text, message, link, a trailing inline icon, and alignment map to native options. The badge then renders in a neutral default look (soft / pill / md) — the source colours are not reproduced (no hi-fi base for badges), so the colour options stay empty.

Option coverage

11/30 options mapped natively (37%) — 🟡 0 via CSS · ⚠️ 5 gaps (derivable, not yet) · ⚪ 14 default · ⚙️ 1 auto.

5 derivable gaps

The ⚠️ rows below are options a source realistically expresses that the converter doesn't derive yet — the real to-do list for improving this element's fidelity. The ⚪ default rows are intentional (no reliable signal, or a UnysonPlus-specific choice).

OptionTabTypeStatusMapped from / note
tag_textContenttext✅ Nativeset from b.tag_text
messageContenttext✅ Nativeset from b.message
linkContenttext✅ Nativeset from b.link href
leadingContentselect✅ Nativeset to 'icon' when a leading inline SVG captured, else 'none'
leading_iconContenticon✅ Nativeset from captured leading inline SVG markup
trailing_iconContenticon✅ Nativeset from b.icon via icon_value
styleDesignimage-picker✅ Nativederived: outline when pill border present, subtle when fill present, else soft default
shapeDesignselect⚪ Unmappedhardcoded 'pill'; source border-radius not mapped to shape buckets
sizeDesignselect⚪ Unmappedhardcoded 'md'
alignDesignselect✅ Nativeset from b.align (start/center/end)
tag_styleDesignselect⚪ Unmappedhardcoded 'filled'
hoverDesignselect⚪ Unmappedhardcoded 'lift'
pill_colorStylingpredefined-colors-color-picker-compact✅ Nativeset from resolved pill border/fill (Tailwind + computed style)
text_colorStylingpredefined-colors-color-picker-compact✅ Nativeset from resolved message text color (msgCls)
tag_colorStylingpredefined-colors-color-picker-compact✅ Nativeset from resolved tag fill (tagCls), when a real non-black color
gradient_fromStylingpredefined-colors-color-picker-compact⚪ Unmappedalways none_color; gradient style never selected by mapper
gradient_toStylingpredefined-colors-color-picker-compact⚪ Unmappedalways none_color
link_targetLink & SEOselect⚪ Unmappedhardcoded 'auto'
rel_nofollowLink & SEOswitch⚠️ Gapsource anchor rel attribute detectable; mapper hardcodes 'no'
rel_sponsoredLink & SEOswitch⚠️ Gapsource anchor rel attribute detectable; hardcoded 'no'
rel_ugcLink & SEOswitch⚠️ Gapsource anchor rel attribute detectable; hardcoded 'no'
aria_labelLink & SEOtext⚠️ Gapsource element aria-label attribute detectable; mapper leaves blank
title_attrLink & SEOtext⚠️ Gapsource element title attribute detectable; mapper leaves blank
dismissibleLink & SEOswitch⚪ UnmappedUnysonPlus behavior; no reliable static-DOM signal
dismiss_idLink & SEOtext⚪ UnmappedUnysonPlus-specific; not derived
schema_enableLink & SEOswitch⚪ Unmappednot derived; hardcoded 'no'
schema_nameLink & SEOtext⚪ Unmappednot derived
schema_dateLink & SEOtext⚪ Unmappednot derived
animation · gsap_motion · interaction · text_effect · scroll_* · flip_card · motion_path · confetti · …Animationsmulti-picker⚪ UnmappedDefault — Animation Engine effects (no source mapping)
spacing · css_id · css_class · custom_css · element_position · element_overflow · dc_*Advancedtext / code-editor⚪ UnmappedDefault — outer spacing + per-instance advanced fields, set by hand
unique_id · custom_attrs · responsive_hideAdvancedgroup⚙️ AutoPlumbing — generated / not set

Status legend

  • Native — Set as the native option from the source.
  • 🟡 Via CSS — Reproduced via scoped CSS / the styler; the native option is left empty (candidate to promote to a native mapping).
  • ⚠️ Gap — A source signal exists, but the converter does not derive this yet — a mapping worth adding (a real TODO, not a limitation).
  • Unmapped — Left at default — no reliable source signal, or an intentional/UnysonPlus-specific choice with nothing to translate.
  • ⚙️ Auto — Plumbing (unique id, custom attrs). Excluded from the coverage percentage.

← Back to Element Mapping