FriendActions class
Derives the current friendship status between the signed-in user and playerId and renders the appropriate action button(s).
Returns SizedBox.shrink when playerId is the current user.
Self-gates when the viewer is an anonymous guest, since the server rejects all friend writes from guests, so instead of action buttons a guest sees a sign-in hint that routes to the account-upgrade flow in settings (or nothing, when compact). Gating here rather than in each parent keeps every embedding correct by construction.
Each button owns its mutation state machine, so this widget only needs to route on FriendStatus, with no mutation watching or coordination needed.
compact true is suited for search-result list tile trailing (single small button). compact false (default) is suited for a profile sheet (centered row of full-size buttons).
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- FriendActions
Constructors
- FriendActions({Key? key, required String playerId, bool compact = false})
-
const
Properties
Methods
-
build(
BuildContext context, WidgetRef ref) → Widget - Describes the part of the user interface represented by this widget.
-
createElement(
) → ConsumerStatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → _ConsumerState -
Creates the mutable state for this widget at a given 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