go_router_tree 0.1.0
go_router_tree: ^0.1.0 copied to clipboard
Code generator that builds route trees for package:go_router.
// ignore_for_file: unused_element
import 'package:go_router_tree_annotation/go_router_tree_annotation.dart';
@RouterTreeConfig(className: 'ExampleRoutes')
const _routes = [
RouteNode(
name: 'root',
path: '/',
),
RouteNode(
name: 'onboarding',
path: '/onboarding',
),
RouteNode(
name: 'auth',
path: '/auth',
routes: [
RouteNode(
name: 'signIn',
path: 'sign-in',
),
RouteNode(
name: 'signUp',
path: 'sign-up',
),
RouteNode(
name: 'recoverPassword',
path: 'recover',
),
],
),
RouteNode(
name: 'dashboard',
path: '/dashboard',
routes: [
RouteNode(
name: 'stats',
path: 'stats',
),
RouteNode(
name: 'catalog',
path: 'catalog',
routes: [
RouteNode(
name: 'categories',
path: 'categories',
),
RouteNode(
name: 'categoryDetails',
path: ':categoryId',
routes: [
RouteNode(
name: 'categoryFilter',
path: 'filter',
),
RouteNode(
name: 'productDetails',
path: 'product/:productId',
routes: [
RouteNode(
name: 'productReviews',
path: 'reviews',
),
RouteNode(
name: 'productEdit',
path: 'edit',
),
],
),
],
),
],
),
RouteNode(
name: 'orders',
path: 'orders',
routes: [
RouteNode(
name: 'orderHistory',
path: 'history',
),
RouteNode(
name: 'orderDetails',
path: ':orderId',
routes: [
RouteNode(
name: 'trackOrder',
path: 'track',
),
RouteNode(
name: 'cancelOrder',
path: 'cancel',
),
],
),
],
),
RouteNode(
name: 'settings',
path: 'settings',
routes: [
RouteNode(
name: 'profile',
path: 'profile',
),
RouteNode(
name: 'security',
path: 'security',
routes: [
RouteNode(
name: 'twoFactor',
path: '2fa',
),
],
),
],
),
],
),
];