Package-level declarations

Types

Link copied to clipboard

Abstract extension of ComposableViewHolder designed to be actionable, meaning it can trigger an action when clicked. The action to be performed is defined by the doAction supplier. Subclasses must implement the bindData method to bind data to the Composable content.

Link copied to clipboard

A utility class for converting between ComposableType and an integer representation using bitwise operations. This is used to efficiently represent different combinations of ComposableFrames as view types in a RecyclerView.

Link copied to clipboard
class ComposableFactory(val composableStrategy: ComposableStrategy)

Factory for creating and managing composable views.

Link copied to clipboard
interface ComposableFrame

Represents a frame that can be composed within a view.

Link copied to clipboard

A strategy to pick a ComposableType for composing a ViewHolder for a given ViewData.

Link copied to clipboard
interface ComposableType

Represents the structure of a composable item by defining the different frames it can contain.

Link copied to clipboard
data class ComposableTypeImpl(val leftFrame: ComposableFrame? = null, val iconFrame: ComposableFrame? = null, val titleFrame: ComposableFrame? = null, val widgetFrame: ComposableFrame? = null) : ComposableType

Default implementation of the ComposableType interface.

Link copied to clipboard

Defines the different types of composable views that can be used.

Link copied to clipboard
abstract class ComposableViewHolder(val frameView: View)

This abstract class design to encapsulate the view holder delegate functions to work with different view types.

Link copied to clipboard

Default concrete implementation of ComposableStrategy.