init method

dynamic init(
  1. ComponentConstructor followingDashboardComponentConstructorDefault,
  2. ComponentEditorConstructor followingDashboardComponentEditorConstructor,
  3. ComponentConstructor followRequestsDashboardComponentConstructorDefault,
  4. ComponentEditorConstructor followRequestsDashboardComponentEditorConstructor,
  5. ComponentConstructor inviteDashboardComponentConstructorDefault,
  6. ComponentEditorConstructor inviteDashboardComponentEditorConstructor,
)

Implementation

init(
  ComponentConstructor followingDashboardComponentConstructorDefault,
  ComponentEditorConstructor followingDashboardComponentEditorConstructor,
  ComponentConstructor followRequestsDashboardComponentConstructorDefault,
  ComponentEditorConstructor
      followRequestsDashboardComponentEditorConstructor,
  ComponentConstructor inviteDashboardComponentConstructorDefault,
  ComponentEditorConstructor inviteDashboardComponentEditorConstructor,
) {
  Apis.apis()
      .getRegistryApi()
      .addInternalComponents('eliud_pkg_follow_model', [
    "followings",
    "followingDashboards",
    "followRequests",
    "followRequestsDashboards",
    "inviteDashboards",
  ]);

  Apis.apis().getRegistryApi().addDropDownSupporter(
      "followingDashboards", DropdownButtonComponentFactory());
  Apis.apis().getRegistryApi().register(
      componentName: "followingDashboards",
      componentConstructor: followingDashboardComponentConstructorDefault);
  Apis.apis().getRegistryApi().addDropDownSupporter(
      "followRequestsDashboards", DropdownButtonComponentFactory());
  Apis.apis().getRegistryApi().register(
      componentName: "followRequestsDashboards",
      componentConstructor:
          followRequestsDashboardComponentConstructorDefault);
  Apis.apis().getRegistryApi().addDropDownSupporter(
      "inviteDashboards", DropdownButtonComponentFactory());
  Apis.apis().getRegistryApi().register(
      componentName: "inviteDashboards",
      componentConstructor: inviteDashboardComponentConstructorDefault);
  Apis.apis()
      .getRegistryApi()
      .addComponentSpec('eliud_pkg_follow_model', 'follow', [
    ComponentSpec(
        'followingDashboards',
        followingDashboardComponentConstructorDefault,
        FollowingDashboardComponentSelector(),
        followingDashboardComponentEditorConstructor,
        ({String? appId}) => followingDashboardRepository(appId: appId)!),
    ComponentSpec(
        'followRequestsDashboards',
        followRequestsDashboardComponentConstructorDefault,
        FollowRequestsDashboardComponentSelector(),
        followRequestsDashboardComponentEditorConstructor,
        ({String? appId}) =>
            followRequestsDashboardRepository(appId: appId)!),
    ComponentSpec(
        'inviteDashboards',
        inviteDashboardComponentConstructorDefault,
        InviteDashboardComponentSelector(),
        inviteDashboardComponentEditorConstructor,
        ({String? appId}) => inviteDashboardRepository(appId: appId)!),
  ]);
  Apis.apis().getRegistryApi().registerRetrieveRepository(
      'eliud_pkg_follow_model',
      'followings',
      ({String? appId}) => followingRepository(appId: appId)!);
  Apis.apis().getRegistryApi().registerRetrieveRepository(
      'eliud_pkg_follow_model',
      'followingDashboards',
      ({String? appId}) => followingDashboardRepository(appId: appId)!);
  Apis.apis().getRegistryApi().registerRetrieveRepository(
      'eliud_pkg_follow_model',
      'followRequests',
      ({String? appId}) => followRequestRepository(appId: appId)!);
  Apis.apis().getRegistryApi().registerRetrieveRepository(
      'eliud_pkg_follow_model',
      'followRequestsDashboards',
      ({String? appId}) => followRequestsDashboardRepository(appId: appId)!);
  Apis.apis().getRegistryApi().registerRetrieveRepository(
      'eliud_pkg_follow_model',
      'inviteDashboards',
      ({String? appId}) => inviteDashboardRepository(appId: appId)!);
}