Number
Numeric entry. Renders as a text field in decimal input mode (so mobile
keyboards cooperate) that filters out non-numeric characters as you type;
an optional adornment shows a currency symbol as a prefix or % as a
suffix. With a decimal-places setting, values are rounded to it on blur.
Configuration
Section titled “Configuration”| Option | Values | Default | Notes |
|---|---|---|---|
| Min / Max | numbers or empty | empty | Min must not exceed max |
| Decimal places | 0–10 or empty | empty | 0 means whole numbers only |
| Adornment | None / Percent / Currency | None | Cosmetic only — the stored value is the bare number |
| Symbol | up to 4 chars | $ |
Shown when adornment is Currency |
"typeConfig": { "min": null, "max": null, "decimalPlaces": null, "adornment": "NONE", "currencySymbol": "$" }Stored answer
Section titled “Stored answer”A JSON number — never a localized string, never the adornment:
{ "partySize": 4, "budgetPct": 12.5, "zeroCount": 0 }0 is a real answer. A required number question answered with zero is
answered. Out-of-range values are stored and flagged by validation (“The
value must be at least {min}.”, “Enter a whole number.”, “Use at most
{n} decimal places.”), blocking the screen until fixed.
Rule operators
Section titled “Rule operators”equals, not equals, greater than, less than — numeric comparison,
no string coercion. Unanswered matches nothing.