LayoutConfiguration<T extends ContentItem> class abstract

Base class for configuring the visual layout of a content item.

Layout configurations define how a content item should be presented on screen. They handle:

  • Visual structure and arrangement
  • Responsive design
  • Theme integration
  • Content-specific styling

Each content type can have multiple layout variants, allowing the same content to be displayed differently in different contexts.

Example:

class BlogPostLayout extends LayoutConfiguration<BlogPost> {
  @override
  Widget build(BuildContext context, BlogPost content) {
    return Column(
      children: [
        Text(content.title, style: Theme.of(context).textTheme.headlineLarge),
        Text(content.content),
      ],
    );
  }
}
Implemented types

Constructors

LayoutConfiguration({required String schemaType})
Creates an instance of LayoutConfiguration.
LayoutConfiguration.fromJson(Map<String, dynamic> json)
Converts the JSON representation of the layout configuration to an instance of LayoutConfiguration.
factory

Properties

contentType → Type
final
hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
schemaType → String
The schema type of the content item.
final

Methods

build(BuildContext context, T content) → Widget
Builds the layout widget tree for the given content item.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

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