LikeSliverBuilder<T extends Object> class

LikeSliverBuilder<T>

A dedicated sliver-compatible version of LikeBuilder engineered for rendering network lifecycle states directly inside a CustomScrollView.

Instead of building a single box widget, its builder functions return a list of slivers (List<Widget>).

CustomScrollView Scroll Integration

In traditional Flutter development, placing a standard CircularProgressIndicator or error Container directly into a CustomScrollView's slivers property causes a crash! LikeSliverBuilder prevents this by automatically wrapping default placeholders inside sliver containers (e.g. wrapping standard loaders inside a SliverFillRemaining).

Example Usage:

CustomScrollView(
  slivers: [
    SliverAppBar(title: Text('User Feed')),
    LikeSliverBuilder<List<Post>>(
      observe: () => feedProvider.postsState,
      onLoading: () => [
        SliverToBoxAdapter(child: LinearProgressIndicator()),
      ],
      onSuccess: (posts, isRefreshing, isSWR) {
        return [
          SliverList(
            delegate: SliverChildBuilderDelegate(
              (context, index) => PostCard(posts[index]),
              childCount: posts.length,
            ),
          ),
        ];
      },
    ),
  ],
);
Inheritance

Constructors

LikeSliverBuilder({Key? key, required dynamic observe(), required List<Widget> onSuccess(T data, bool isRefreshing, bool isFromStaleWhileRevalidate), List<Widget> onLoading()?, List<Widget> onIdle()?, List<Widget> onError(LikeError error)?, List<Widget> onException(String message)?, void listener(LikeStateResponse response)?})
const

Properties

hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
listener → void Function(LikeStateResponse response)?
listener
final
observe → dynamic Function()
observe
final
onError List<Widget> Function(LikeError error)?
onError
final
onException List<Widget> Function(String message)?
onException
final
onIdle List<Widget> Function()?
onIdle
final
onLoading List<Widget> Function()?
onLoading
final
onSuccess List<Widget> Function(T data, bool isRefreshing, bool isFromStaleWhileRevalidate)
onSuccess
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<LikeSliverBuilder<T>>
Creates the mutable state for this widget at a given location in the tree.
override
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