import 'package:fluro/fluro.dart';
import 'package:fluro/src/fluro_router.dart';
import 'package:yumi/modules/user/settings/account/set/pwd/reset_pwd_page.dart';
import 'package:yumi/modules/user/settings/account/set/pwd/set_pwd_page.dart';
import 'package:yumi/modules/user/settings/settings_page.dart';

import 'package:yumi/app/routes/sc_router_init.dart';
import 'package:yumi/modules/user/settings/about/about_page.dart';
import 'package:yumi/modules/user/settings/account/account_page.dart';
import 'package:yumi/modules/user/settings/account/delete/delete_account_page.dart';
import 'package:yumi/modules/user/settings/account/set/set_account_page.dart';
import 'package:yumi/modules/user/settings/blacklist/user_blacklist_page.dart';

class SettingsRoute implements SCIRouterProvider {
  static String settings = '/me/settings';
  static String account = '/me/settings/account';
  static String blockedList = '/me/settings/blockedList';
  static String setAccount = '/me/settings/account/setAccount';
  static String deleteAccount = '/me/settings/account/deleteAccount';
  static String resetPwd = '/me/settings/account/setAccount/resetPwd';
  static String setPwd = '/me/settings/account/setAccount/setPwd';
  static String about = '/me/settings/account/about';

  @override
  void initRouter(FluroRouter router) {
    router.define(
      settings,
      handler: Handler(handlerFunc: (_, params) => SettingsPage()),
    );
    router.define(
      account,
      handler: Handler(handlerFunc: (_, params) => AccountPage()),
    );
    router.define(
      setAccount,
      handler: Handler(handlerFunc: (_, params) => SetAccountPage()),
    );

    router.define(
      deleteAccount,
      handler: Handler(handlerFunc: (_, params) => DeleteAccountPage()),
    );
    router.define(
      setPwd,
      handler: Handler(handlerFunc: (_, params) => SetPwdPage()),
    );
    router.define(
      resetPwd,
      handler: Handler(handlerFunc: (_, params) => ResetPwdPage()),
    );
    router.define(
      about,
      handler: Handler(handlerFunc: (_, params) => AboutPage()),
    );

    router.define(
      blockedList,
      handler: Handler(handlerFunc: (_, params) => UserBlockedListPage()),
    );

  }
}
