PhosphorIcon class

Widget that renders Phosphor icons in any style, including Duotone.

Accepts IconData (Thin, Light, Regular, Bold, Fill styles) or PhosphorDuotoneIconData (Duotone style). The correct type is returned automatically by the package's constant classes.

Examples

// Flat styles — accepts standard Flutter IconData
PhosphorIcon(PhosphorIconsRegular.storefront)
PhosphorIcon(PhosphorIconsBold.heart, color: Colors.red, size: 32)

// Shortcut via PhosphorIcons
PhosphorIcon(PhosphorIcons.storefrontFill, color: Colors.deepPurple)

// Duotone — two layers with configurable opacity
PhosphorIcon(
  PhosphorIconsDuotone.storefront,
  color: Colors.indigo,
  duotoneSecondaryOpacity: 0.25,
)

// Shadows
PhosphorIcon(
  PhosphorIconsBold.heart,
  color: Colors.red,
  shadows: [Shadow(color: Colors.black26, blurRadius: 4, offset: Offset(0, 2))],
)

PT Widget que renderiza ícones Phosphor em qualquer estilo, incluindo Duotone.

Aceita IconData (estilos Thin, Light, Regular, Bold, Fill) ou PhosphorDuotoneIconData (estilo Duotone). O tipo correto é retornado automaticamente pelas classes de constantes do pacote.

Inheritance

Constructors

PhosphorIcon(Object icon, {Key? key, double? size, double? fill, double? weight, double? grade, double? opticalSize, Color? color, List<Shadow>? shadows, double duotoneSecondaryOpacity = 0.20, Color? duotoneSecondaryColor, String? semanticLabel, TextDirection? textDirection})
Creates a Phosphor icon widget.
const

Properties

color → Color?
Icon color. Inherits from IconTheme if not provided.
final
duotoneSecondaryColor → Color?
Color of the fill layer in the Duotone style.
final
duotoneSecondaryOpacity → double
Opacity of the fill layer in the Duotone style.
final
fill → double?
The fill axis value, between 0.0 and 1.0.
final
grade → double?
The grade axis value.
final
hashCode → int
The hash code for this object.
no setterinherited
icon → Object
The icon to render. Must be IconData or PhosphorDuotoneIconData.
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
opticalSize → double?
The optical size axis value. Must be greater than 0.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
semanticLabel → String?
Semantic label for accessibility.
final
shadows → List<Shadow>?
A list of Shadows that will be painted underneath the icon.
final
size → double?
Icon size in logical pixels. Inherits from IconTheme if not provided.
final
textDirection → TextDirection?
Text direction. Overrides the direction inherited from the context.
final
weight → double?
The stroke weight axis value. Must be greater than 0.
final

Methods

build(BuildContext context) → Widget
Describes the part of the user interface represented by this widget.
override
createElement() → StatelessElement
Creates a StatelessElement to manage this widget's location in the tree.
inherited
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited