---
alias: "fc.page.refresh"
aliases:
  - fc.page.refresh
category: page
module: Core
---

# fc.page.refresh

Auto-refresh timer that reloads the current page data at a configurable interval.

## When to Use
- Auto-refresh a dashboard or monitoring page on a timer
- Keep a pick/pack or fulfilment page updated without manual refresh
- Show a loading spinner with optional label while waiting for the next refresh cycle

## Key Props
| Prop | Type | Required | What it controls |
|------|------|----------|------------------|
| `interval` | number | Yes | Refresh interval in seconds. Minimum enforced is 10 -- values below 10 are clamped to 10. |
| `displaySpinner` | boolean | No | When `true`, renders a centered loading spinner (and optional label) between refreshes |
| `label` | string \| TypedDynamicAttribute | No | Text or dynamic attribute shown below the spinner. Strings render directly; objects use `DynamicValue`. |
| `data` | any | No | Data context for resolving dynamic `label` attributes |

## Gotchas
- The minimum interval is 10 seconds. Setting `interval` to less than 10 (or omitting it) silently defaults to 10.
- Calls `refreshPage()` which re-fetches all page-level queries -- use sparingly on pages with heavy data.
- The timer is set once on mount and does not re-initialize if `interval` changes (empty dependency array in `useEffect`).
- When `displaySpinner` is `false` or omitted, this component renders nothing visible -- it only triggers the background timer.

## Manifest Example
```json
{
  "component": "fc.page.refresh",
  "props": {
    "interval": 30,
    "displaySpinner": true,
    "label": "Auto-refreshing every 30 seconds..."
  }
}
```

## 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.
