Skip to main content

Overview

Outlets are widgets that render presentations. They watch a surface and rebuild when the active item changes.

Basic outlet

class MyOutlet extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return PresentumOutlet<CampaignItem, AppSurface, CampaignVariant>(
      surface: AppSurface.homeTopBanner,
      builder: (context, item) {
        return BannerWidget(
          title: item.metadata['title'] as String,
          onClose: () => context
              .presentum<CampaignItem, AppSurface, CampaignVariant>()
              .markDismissed(item),
        );
      },
    );
  }
}
Learn more about outlets ->

Production example

See popup host implementation

Real-world dialog management with queuing