homeShellRoutes top-level property

List homeShellRoutes
final

Implementation

final homeShellRoutes = [
  GoRoute(
    name: Routes.dashboard.name,
    path: Routes.dashboard.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const Dashboard(),
      );
    },
  ),

  // ---- SETTINGS
  GoRoute(
    name: Routes.settings.name,
    path: Routes.settings.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SettingsPage(isFullPage: true),
      );
    },
  ),
  GoRoute(
    name: Routes.licenses.name,
    path: Routes.licenses.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SettingsLicensesPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingsLabs.name,
    path: Routes.settingsLabs.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SettingsLabsPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingsChat.name,
    path: Routes.settingsChat.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const ChatSettingsPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingNotifications.name,
    path: Routes.settingNotifications.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const NotificationsSettingsPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingsSuperInvites.name,
    path: Routes.settingsSuperInvites.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SuperInvitesPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.info.name,
    path: Routes.info.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SettingsInfoPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.myProfile.name,
    path: Routes.myProfile.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const MyProfilePage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingSessions.name,
    path: Routes.settingSessions.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SessionsPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingBackup.name,
    path: Routes.settingBackup.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const BackupPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.settingLanguage.name,
    path: Routes.settingLanguage.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const LanguageSelectPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.emailAddresses.name,
    path: Routes.emailAddresses.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const EmailAddressesPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.blockedUsers.name,
    path: Routes.blockedUsers.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const BlockedUsersPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.changePassword.name,
    path: Routes.changePassword.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const ChangePasswordPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceRelatedSpaces.name,
    path: Routes.spaceRelatedSpaces.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SubSpacesPage(
          spaceIdOrAlias: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceMembers.name,
    path: Routes.spaceMembers.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SpaceMembersPage(
          spaceIdOrAlias: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spacePins.name,
    path: Routes.spacePins.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: PinsListPage(
          spaceId: state.pathParameters['spaceId'],
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceEvents.name,
    path: Routes.spaceEvents.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: EventListPage(
          spaceId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceChats.name,
    path: Routes.spaceChats.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SpaceChatsPage(
          spaceIdOrAlias: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceTasks.name,
    path: Routes.spaceTasks.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: TasksListPage(
          spaceId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.searchPublicDirectory.name,
    path: Routes.searchPublicDirectory.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SearchPublicDirectory(
          query: state.uri.queryParameters['query'],
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.space.name,
    path: Routes.space.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SpaceDetailsPage(
          spaceId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaces.name,
    path: Routes.spaces.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const SpacesPage(),
      );
    },
  ),
  // ---- Space SETTINGS
  GoRoute(
    name: Routes.spaceSettings.name,
    path: Routes.spaceSettings.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SpaceSettingsMenuIndexPage(
          spaceId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceSettingsApps.name,
    path: Routes.spaceSettingsApps.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SpaceAppsSettingsPage(
          spaceId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceSettingsVisibility.name,
    path: Routes.spaceSettingsVisibility.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      final roomId = state.pathParameters['spaceId']!;
      return NoTransitionPage(
        key: state.pageKey,
        child: WithSidebar(
          sidebar: SpaceSettingsMenu(
            spaceId: roomId,
          ),
          child: VisibilityAccessibilityPage(
            roomId: roomId,
          ),
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceSettingsNotifications.name,
    path: Routes.spaceSettingsNotifications.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: SpaceNotificationConfigurationPage(
          spaceId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.tasks.name,
    path: Routes.tasks.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const TasksListPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.taskItemDetails.name,
    path: Routes.taskItemDetails.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: TaskItemDetailPage(
          taskListId: state.pathParameters['taskListId']!,
          taskId: state.pathParameters['taskId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.taskListDetails.name,
    path: Routes.taskListDetails.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: TaskListDetailPage(
          taskListId: state.pathParameters['taskListId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.pins.name,
    path: Routes.pins.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const PinsListPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.pin.name,
    path: Routes.pin.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: PinDetailsPage(pinId: state.pathParameters['pinId']!),
      );
    },
  ),
  GoRoute(
    name: Routes.calendarEvents.name,
    path: Routes.calendarEvents.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: const EventListPage(),
      );
    },
  ),
  GoRoute(
    name: Routes.createEvent.name,
    path: Routes.createEvent.route,
    pageBuilder: (context, state) {
      final extra = state.extra;
      CalendarEvent? templateEvent;
      if (extra != null && extra is CalendarEvent) {
        templateEvent = extra;
      }
      return NoTransitionPage(
        key: state.pageKey,
        child: CreateEventPage(
          initialSelectedSpace: state.uri.queryParameters['spaceId'],
          templateEvent: templateEvent,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.calendarEvent.name,
    path: Routes.calendarEvent.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: EventDetailPage(
          calendarId: state.pathParameters['calendarId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.createSpace.name,
    path: Routes.createSpace.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: CreateSpacePage(
          initialParentsSpaceId: state.uri.queryParameters['parentSpaceId'],
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.spaceInvite.name,
    path: Routes.spaceInvite.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: InvitePage(
          roomId: state.pathParameters['spaceId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.inviteIndividual.name,
    path: Routes.inviteIndividual.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: InviteIndividualUsers(
          roomId: state.uri.queryParameters['roomId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.inviteSpaceMembers.name,
    path: Routes.inviteSpaceMembers.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: InviteSpaceMembers(
          roomId: state.uri.queryParameters['roomId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.shareInviteCode.name,
    path: Routes.shareInviteCode.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: ShareInviteCode(
          inviteCode: state.uri.queryParameters['inviteCode']!,
          roomId: state.uri.queryParameters['roomId']!,
        ),
      );
    },
  ),
  GoRoute(
    name: Routes.invitePending.name,
    path: Routes.invitePending.route,
    redirect: authGuardRedirect,
    pageBuilder: (context, state) {
      return NoTransitionPage(
        key: state.pageKey,
        child: InvitePending(
          roomId: state.uri.queryParameters['roomId']!,
        ),
      );
    },
  ),
];