account_router.dart 973 Bytes
import 'package:fluro/fluro.dart';
import 'package:Parlando/routers/i_router.dart';

import 'page/account_edit_page.dart';
import 'page/account_page.dart';
import 'page/work_player.dart';

class AccountRouter implements IRouterProvider {
  static String accountPage = '/account';
  static String accountEditPage = '/account/edit';
  static String workPlayer = '/account/work/player';

  @override
  void initRouter(FluroRouter router) {
    router.define(accountPage, handler: Handler(handlerFunc: (_, __) {
      return const AccountPage(
        isSelfPage: true,
      );
    }));
    router.define(accountEditPage, handler: Handler(handlerFunc: (_, __) {
      return AccountEditPage();
    }));
    router.define(
      workPlayer,
      handler: Handler(
        handlerFunc: (_, Map<String, List<String>> params) {
          String? id = params['id']?.first;
          return WorkPlayer(
            id: int.parse(id!),
          );
        },
      ),
    );
  }
}