---
alias: "fc.field.intrange"
aliases:
  - fc.field.intrange
  - intrange
category: field
module: Core
---
# fc.field.intrange

Integer range (min/max) input field with popup for entering minimum and maximum values. Supports partial ranges and negative numbers.

## When to Use
- Filter forms requiring numeric range input (e.g., quantity range, price range)
- Workflow user actions needing integer range parameters
- List/table filters for numeric columns

## Key Props
| Prop | Type | Required | What it controls |
|------|------|----------|------------------|
| `value` | `{ from?: number, to?: number }` | No | Current range values. Supports negative numbers. |
| `defaultValue` | `{ from?: number, to?: number }` | No | Initial range (workflow configuration). Can be partial. |
| `name` | string | No | Field name in the form |
| `label` | string | No | Field label (supports i18n keys) |
| `mandatory` | boolean | No | Whether the field is required |

## Data Binding
In workflow configuration, use `defaultValue` to set the initial range. The property supports flexible configuration:
- Both values: `{ from: 1, to: 100 }`
- Only minimum: `{ from: 1 }`
- Only maximum: `{ to: 100 }`
- No values: `{}` or omit `defaultValue` entirely

### Workflow Contract Properties
`name`, `label`, `type`, `source`, `value`, `options`, `defaultValue`, `mandatory`

## Descendants
No.

## Gotchas
- The input displays the current range as a formatted string. Clicking opens a popup with two input fields.
- Both `from` and `to` are optional -- partial ranges are valid.
- Negative values are supported.
- Clear resets fields to empty; Cancel restores initial values and closes; Apply confirms and closes.

## Manifest Example
```json
{
  "userActions": [
    {
      "eventName": "ApplyQuantityFilter",
      "context": [
        {
          "label": "Filter by Quantity",
          "type": "SECONDARY",
          "modules": ["adminconsole"]
        }
      ],
      "attributes": [
        {
          "name": "quantityRange",
          "label": "Quantity Range",
          "type": "intrange",
          "defaultValue": { "from": 0, "to": 1000 },
          "mandatory": false
        }
      ]
    }
  ]
}
```

When this component is used inside workflow user actions, keep the strict contract:
- Set explicit `eventName` (do not infer from `label`)
- Keep `context` and `attributes` to documented user-action fields only
- Validate module visibility with `workflow.transitions` using ALL THREE mandatory params (`module` specific name — `"all"` returns NOTHING, `flexType`, `flexVersion`)

## AI Parse Notes
- **Primary intent:** Declarative Mystique component definition for manifests.
- **Selection signals:** Match by `alias`, category, and required `Key Props`.
- **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
- **Safety checks:** Validate required props and data bindings before manifest generation.
