IconButton
Basic Usage with Paragon Icon
Any Paragon component or export may be added to the code example.
With tooltips
Any Paragon component or export may be added to the code example.
Active State
Any Paragon component or export may be added to the code example.
isActive=true with inverted colors
Any Paragon component or export may be added to the code example.
Inverted Colors
Any Paragon component or export may be added to the code example.
Sizes
Any Paragon component or export may be added to the code example.
Theme Variables#
CSS Variable | Computed Value |
---|---|
| |
| |
| |
| |
| |
Props API#
- className
string
A custom class name.
- iconAs
PropTypes.elementType as any
DefaultIconComponent that renders the icon, currently defaults to
Icon
- src
PropTypes.elementType as any
An icon component to render. Example import of a Paragon icon component:
import { Check } from '@openedx/paragon/icons';
- alt
string
RequiredAlt text for your icon. For best practice, avoid using alt text to describe the image in the
IconButton
. Instead, we recommend describing the function of the button. - invertColors
bool
DefaultfalseChanges icon styles for dark background
- icon
PropTypes.shape({ prefix: PropTypes.string, iconName: PropTypes.string, // eslint-disable-next-line react/forbid-prop-types icon: PropTypes.array, }) as any
Accepts a Paragon icon
- iconClassNames
string
Extra class names that will be added to the icon
- onClick
func
Default() => {}Click handler for the button
- variant
enum
'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'black' | 'brand'Default'primary'Type of button (uses Bootstrap options)
- size
enum
'sm' | 'md' | 'inline'Default'md'size of button to render
- isActive
bool
Defaultfalsewhether to show the
IconButton
in an active state, whose styling is distinct from default state - children
any
- tooltipPlacement
string
Default'top'tooltip placement can be top, left, right etc, per https://popper.js.org/docs/v2/constructors/#options
- tooltipContent
node
Requiredany valid JSX or text to be rendered as tooltip contents
- variant
enum
'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'black' | 'brand'Type of button (uses Bootstrap options)
- invertColors
bool
Changes icon styles for dark background
- iconAs unknown type
- className
string
Additional CSS class[es] to apply to this button
- alt
string
RequiredAlt text for your icon. For best practice, avoid using alt text to describe the image in the
IconButton
. Instead, we recommend describing the function of the button. - src unknown type
An icon component to render. Example import of a Paragon icon component:
import { Check } from '@openedx/paragon/icons';
- iconClassNames
string
Extra class names that will be added to the icon
- onClick unknown type
Click handler for the button
- isActive unknown type
whether to show the
IconButton
in an active state, whose styling is distinct from default state - icon unknown type
- size unknown type | unknown type | unknown type
size of button to render
- children unknown type
no children
Usage Insights#
IconButton
Project Name | Paragon Version | Instance Count | |
---|---|---|---|
frontend-app-admin-portal | 21.13.1 | 14 | |
frontend-app-authn | 22.11.2 | 4 | |
frontend-app-communications | 22.7.0 | 3 | |
frontend-app-course-authoring | 22.8.1 | 38 | |
frontend-app-discussions | 22.7.0 | 12 | |
frontend-app-enterprise-public-catalog | 21.13.1 | 2 | |
frontend-app-gradebook | 22.8.1 | 1 | |
frontend-app-learner-dashboard | 22.9.0 | 1 | |
frontend-app-learner-portal-enterprise | 21.13.1 | 5 | |
frontend-app-learner-record | 22.10.0 | 1 | |
frontend-app-learning | 22.10.0 | 8 | |
frontend-app-library-authoring | 21.11.3 | 4 | |
frontend-app-ora-grading | 21.11.3 | 5 | |
frontend-app-support-tools | 21.13.1 | 3 | |
frontend-component-header-edx | 21.13.1 | 2 | |
frontend-component-header | 22.10.0 | 1 | |
prospectus | 20.46.2 | 7 |
IconButtonWithTooltip
Project Name | Paragon Version | Instance Count | |
---|---|---|---|
frontend-app-admin-portal | 21.13.1 | 5 | |
frontend-app-course-authoring | 22.8.1 | 29 | |
frontend-app-discussions | 22.7.0 | 1 | |
frontend-app-learner-portal-enterprise | 21.13.1 | 2 | |
frontend-app-library-authoring | 21.11.3 | 1 | |
frontend-app-support-tools | 21.13.1 | 2 |