# Sub-Pages — Settings Form Fields
> **Part of:** [Settings Tab](04-settings-tab.md)
> **See also:** [Entity Types](14-entity-types.md) | [Main Pages Add Modal](../main-pages/07-add-modal.md)
Form components and field configuration for Settings tabs.
## Available Form Components
| Component | Use Case |
|-----------|----------|
| `IpaTextInput` | Single-line text input |
| `IpaTextArea` | Multi-line text input |
| `IpaTextContent` | Read-only text display |
| `IpaPasswordInput` | Password field (masked) |
| `IpaNumberInput` | Numeric input with min/max |
| `IpaCheckbox` | Boolean checkbox |
| `IpaSelect` | Dropdown selection |
| `IpaCalendar` | Date picker |
For the full list, see [main-pages/07-add-modal.md](../main-pages/07-add-modal.md#available-ui-components).
## Field Editability
**Important:** Do NOT explicitly set `readOnly` or `isDisabled` props. IPA form components automatically determine editability from the **metadata**.
```tsx
// ❌ Wrong: Explicit readOnly/isDisabled
// ✅ Correct: Let metadata control editability
```
## IpaSelect Usage
Do NOT use `variant="typeahead"` in Settings pages — it changes the visual style to a text input appearance.
```tsx
// ✅ Correct: Standard dropdown
}
/>
// ❌ Avoid: Typeahead variant in Settings
```
## Using Entity Data Types
Check the TypeScript interface in `globalDataTypes.ts` for field constraints:
```typescript
export interface OtpToken {
ipatokentotptimestep: number; // Default: 30 | Minimum value: 5 | Maximum value: 2147483647
}
```
Apply constraints to form components:
```tsx
```
## Column Layout
Settings forms use **two columns** by default:
```tsx
```
**Key points:**
- First `FlexItem` contains main form with `onSubmit` and `id`
- Second `FlexItem` uses a separate `