Template Components

Icon Reference

Complete reference of valid icon names available for use in VaultPDF documents. Includes status, information, content, system, and form control icons.

This guide lists all valid icon names available for use in VaultPDF documents, including conditional styles, cards, tables, and other components.

Status Icons

Use these icons to indicate status, state, or result conditions.

Icon NameVisualUse Case
checkGreen checkmarkSuccess, approved, completed
circlealertCircle with exclamationAlert, warning, attention needed
warningTriangle warningWarning, caution, risky
clockClock or timerPending, in progress, time-based
statusTrending or activityTrending up, active, status indicator
xRed close or XFailed, error, critical issue

Information Icons

Use these icons for informational or labeling purposes.

Icon NameVisualUse Case
infoInfo circleGeneral information, note
tagTag or labelCategory, tag, classification
starStar or favoriteFavorite, important, highlighted

Content Icons

Use these icons for document, file, and content types.

Icon NameVisualUse Case
file-textDocument with text linesText document, report
fileDocument iconGeneric file, attachment
packageBox or packagePackage, shipment, container
listBullet listList, checklist, items
imagePhoto or imageImage, picture, visual content
barcodeBarcodeBarcode, SKU, product code
qrQR codeQR code, scanned content
percentPercentage symbolPercentage, ratio, proportion

System Icons

Use these icons for organizational, security, and communication elements.

Icon NameVisualUse Case
buildingBuilding or organizationOrganization, company, facility
shieldSecurity shieldSecurity, compliance, protected
phonePhone numberPhone contact, telephone
emailEmail addressEmail, message, communication
linkURL or hyperlinkLink, reference, URL

Form Controls

Use these icons for checkbox and radio button states.

Icon NameVisualUse Case
checkbox-checkedChecked boxSelected, enabled, true
checkbox-uncheckedEmpty boxUnselected, disabled, false
radio-checkedSelected radio buttonSelected option
radio-uncheckedUnselected radio buttonUnselected option

Usage Examples

In Conditional Styles

{
  "key": "status",
  "label": "Status",
  "conditionalStyles": [
    {
      "value": "APPROVED",
      "icon": "check",
      "color": "#4CAF50",
      "styleTarget": "icon"
    },
    {
      "value": "PENDING",
      "icon": "clock",
      "color": "#FF9800",
      "styleTarget": "icon"
    },
    {
      "value": "REJECTED",
      "icon": "x",
      "color": "#D32F2F",
      "styleTarget": "icon"
    },
    {
      "value": "WARNING",
      "icon": "circlealert",
      "color": "#FF9800",
      "styleTarget": "icon"
    }
  ]
}

In Cards

{
  "type": "card",
  "title": "Order Status",
  "fields": [
    {
      "key": "orderStatus",
      "label": "Status",
      "conditionalStyles": [
        {
          "value": "COMPLETED",
          "icon": "check",
          "color": "#4CAF50"
        },
        {
          "value": "SHIPPED",
          "icon": "package",
          "color": "#2196F3"
        }
      ]
    }
  ]
}

In Tables

{
  "type": "table",
  "title": "Security Audit",
  "columns": [
    {
      "key": "auditItem",
      "label": "Item"
    },
    {
      "key": "result",
      "label": "Result",
      "conditionalStyles": [
        {
          "value": "PASSED",
          "icon": "check",
          "color": "#4CAF50",
          "displayMode": "icon"
        },
        {
          "value": "FAILED",
          "icon": "x",
          "color": "#D32F2F",
          "displayMode": "icon"
        },
        {
          "value": "NOT_TESTED",
          "icon": "info",
          "color": "#999999",
          "displayMode": "icon"
        }
      ]
    }
  ]
}

Migration Guide

If you are updating from older icon names, use this mapping:

Old Name (❌)New Name (✅)
AlertCirclecirclealert
CheckCirclecheck
AlertTrianglewarning
Clockclock
TrendingUpstatus
TrendingDownstatus
Loaderstatus
Activitystatus
Editfile-text
Trashx
Downloadfile
Uploadfile
Copyfile
Serverbuilding
Databasepackage
Wifilink
WifiOfflink
HardDriveshield
MessageSquareinfo
Mailemail
Bellinfo
Flagtag

Icon Placement Best Practices

With displayMode

  • displayMode: "icon" - Icon only (best for status indicators)
  • displayMode: "label" - Text only (no icon)
  • displayMode: "iconAndLabel" - Icon plus text (default, best for descriptions)

With styleTarget

  • styleTarget: "icon" - Apply colors to icon only
  • styleTarget: "text" - Apply colors to text only
  • styleTarget: "cell" - Apply colors to entire cell background

Examples

Status icon with green color:

{
  "value": "ACTIVE",
  "icon": "check",
  "color": "#4CAF50",
  "displayMode": "icon",
  "styleTarget": "icon"
}

Alert with red background:

{
  "value": "ERROR",
  "icon": "circlealert",
  "color": "#FFFFFF",
  "bgColor": "#D32F2F",
  "displayMode": "iconAndLabel",
  "styleTarget": "cell"
}

Unicode Characters for Text-Based Styling

As an alternative to SVG icons, you can use Unicode characters directly in text fields, feature lists, and CTA labels. These are especially useful for titles, badges, and Bento Card features where a full icon registry may be overkill.

Perfect for your "View Detailed Logs" or "Buy Now" buttons.

CharacterUnicodeUse Case
\u2192Standard arrow for CTAs and navigation
\u203ANarrow arrow for breadcrumbs or subtle "Next" indicators
\u2794Heavy arrow when text is bold or standard arrow looks too thin
»\u00BBChevron for "Read More" links and navigation

Example in Bento Card CTA:

{
  "cta": {
    "primary": "Get Started →",
    "secondary": "Learn More »"
  }
}

Status & Validation (Reports)

Essential for showing pass/fail states without SVGs, especially in validation reports.

CharacterUnicodeUse Case
\u2713Standard checkmark for "Success" indicator
\u221AHeavy check (square root symbol), very common in font sets
\u00D7Cross for "Missing" or "Invalid" nodes
\u26A0Warning triangle for alerts and cautions
\u2139Info symbol for neutral footnotes or metadata

Example in Table Column:

{
  "key": "validationStatus",
  "label": "Status",
  "format": "{{value === 'PASS' ? '✓ Valid' : '✕ Invalid'}}"
}

Example in Feature List:

"features": [
  { "label": "✓ Full encryption" },
  { "label": "✓ 99.9% uptime" },
  { "label": "✕ No legacy support" }
]

List Bullets (Bento Features)

Professional structured alternatives to full icons for your features array.

CharacterUnicodeUse Case
\u25A0Solid square, matches industrial/infrastructure aesthetic
\u25A1Open square for "To-do" or "Optional" features
\u2022Classic bullet, safest and most universal choice
\u25C6Diamond adds a premium feel to lists

Example in Bento Card Features:

"features": [
  { "label": "■ Unlimited projects" },
  { "label": "■ 50 GB storage" },
  { "label": "□ Optional add-ons available" },
  { "label": "◆ Premium support tier" }
]

Financial & Metrics (Pricing/Invoices)

Specialized characters for pricing cards, invoices, and KPI summaries.

CharacterUnicodeUse Case
·\u00B7Separator for values on same line (e.g., "$250 · Monthly")
\u2206Delta symbol for showing change or increase (e.g., "22% ∆ growth")
\u2248Approximately symbol for estimated values (e.g., "≈ 85% compression")

Example in Pricing Card:

{
  "type": "bento_card",
  "props": {
    "title": "Professional",
    "heroSection": {
      "value": "$149",
      "period": "· per month",
      "description": "billed annually"
    }
  }
}

Example in KPI Summary:

{
  "features": [
    { "label": "Performance", "value": "↑ 22% ∆" },
    { "label": "Compression", "value": "≈ 85%" },
    { "label": "File size", "value": "250 KB · avg" }
  ]
}

Combining Unicode with Conditional Styles

You can use Unicode characters in conditional styling labels for clean, compact status displays:

{
  "key": "auditResult",
  "conditionalStyles": [
    {
      "value": "PASSED",
      "label": "✓ Passed",
      "color": "#4CAF50"
    },
    {
      "value": "FAILED",
      "label": "✕ Failed",
      "color": "#D32F2F"
    },
    {
      "value": "WARNING",
      "label": "⚠ Review needed",
      "color": "#FF9800"
    }
  ]
}

Troubleshooting

Icon Not Displaying

Problem: Icon does not appear even though the name is specified

Solutions:

  1. Wrong icon name - Check icon name against the valid list above
  2. Case sensitivity - Icon names are lowercase (e.g., check, not Check)
  3. Typo - Verify spelling matches exactly (e.g., circlealert, not circlealerts)
  4. Missing hyphens - Multi-word icons use hyphens (e.g., file-text, not filetext)

Icon Color Not Applying

Problem: Icon appears but with wrong color

Solutions:

  1. Check styleTarget - Ensure styleTarget is set correctly (use "icon" to color just the icon)
  2. Verify color value - Use valid hex colors (e.g., "#4CAF50") or theme tokens (e.g., "theme.success")
  3. Theme token - If using theme tokens, ensure the token exists in your configuration

Icon and Text Misaligned

Problem: Icon and text do not align properly

Solutions:

  1. Try styleTarget: "icon" - This often fixes alignment issues
  2. Adjust displayMode - Use "icon" only if text is not needed
  3. Check cell width - Narrow cells may squeeze icon and text together

Performance Tips

  • Use simple icons (check, x, info) for better rendering performance
  • Avoid using too many icons in a single table (limit to 100+ rows with icons)
  • Prefer displayMode: "icon" when space is limited
  • Icons automatically scale with text size, no need to specify separate sizes

On this page