Interface icons
Use .search. Enumerate every supported name with LumenIconName.allCases.
Trigger a native action with a required accessible label and platform icon.
Apple availability
Import LumenUI in the target that uses this component. iPad support follows the iOS package baseline and uses native iPad layout behavior.
Native example
Use for compact, familiar actions. Prefer a text button when the icon alone would make the action difficult to understand.
LumenIconButton(
name: .settings,
label: "Settings",
action: openSettings
)Apple icon catalog
Search the visual catalogs, copy the displayed Lumen name, then use the Apple spelling below. The package includes both catalogs without another native dependency.
Reference
The primary shared and platform-specific options exposed by LumenIconButton.
| API | Values or type | Default | Description |
|---|---|---|---|
| name or systemName | LumenIconName or SF Symbol name | Exactly one required | Selects a generated catalog icon or a platform-specific custom graphic. |
| label | String | Required | Provides the accessible action name. |
| action | Callback | Required | Runs the action. |
| intent | primary · secondary · quiet · danger | quiet | Selects the semantic action treatment. |
| size | sm · md · lg | md | Selects shared icon and control metrics. |
| SwiftUI .disabled | Boolean | false | Controls native disabled state. |
Native behavior
Use for compact, familiar actions. Prefer a text button when the icon alone would make the action difficult to understand.
The accessible label is required and becomes the native button name. Touch targets remain at least 44 units on mobile.
Shared component