content: // Project imports:
  import '../../core/boorus/defaults/widgets.dart';
  import '../../core/boorus/engine/engine.dart';
  import '../../core/configs/config.dart';
  import '../../core/configs/create/widgets.dart';
  import '../../core/configs/manage/widgets.dart';
  import '../../core/downloads/filename/types.dart';
  import '../../core/home/custom_home.dart';
  import 'artists/widgets.dart';
  import 'configs/widgets.dart';
  import 'favorites/widgets.dart';
  import 'home/types.dart';
  import 'home/widgets.dart';
  import 'post_details/widgets.dart';
  
  class MoebooruBuilder extends BaseBooruBuilder {
    MoebooruBuilder();
  
    @override
    CreateConfigPageBuilder get createConfigPageBuilder =>
        (
          context,
          id, {
          backgroundColor,
        }) => CreateBooruConfigScope(
          id: id,
          config: BooruConfig.defaultConfig(
            booruType: id.booruType,
            url: id.url,
            customDownloadFileNameFormat: kDefaultCustomDownloadFileNameFormat,
          ),
          child: CreateMoebooruConfigPage(
            backgroundColor: backgroundColor,
          ),
        );
  
    @override
    HomePageBuilder get homePageBuilder =>
        (context) => const MoebooruHomePage();
  
    @override
    UpdateConfigPageBuilder get updateConfigPageBuilder =>
        (
          context,
          id, {
          backgroundColor,
          initialTab,
        }) => UpdateBooruConfigScope(
          id: id,
          child: CreateMoebooruConfigPage(
            backgroundColor: backgroundColor,
            initialTab: initialTab,
          ),
        );
  
    @override
    ArtistPageBuilder? get artistPageBuilder =>
        (context, artistName) => MoebooruArtistPage(
          artistName: artistName,
        );
  
    @override
    CharacterPageBuilder? get characterPageBuilder =>
        (context, characterName) => MoebooruArtistPage(
          artistName: characterName,
        );
  
    @override
    FavoritesPageBuilder? get favoritesPageBuilder =>
        (context) => const MoebooruFavoritesPage();
  
    @override
    PostDetailsPageBuilder get postDetailsPageBuilder =>
        (context, payload) => MoebooruPostDetailsPage.fromRouteData(payload);
  
    @override
    Map<CustomHomeViewKey, CustomHomeDataBuilder> get customHomeViewBuilders =>
        kMoebooruAltHomeView;
  
    @override
    final postDetailsUIBuilder = moebooruPostDetailsUIBuilder;
  }
  