import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { CrudActionResolver } from 'ng-stalk/core/crud';
import { AuthenticationGuard } from '../../guard/authentication.guard';
import { <%= classify(name) %>PageComponent } from './<%= dasherize(name) %>-page/<%= dasherize(name) %>-page.component';
import { <%= classify(name) %>Resolver } from './resolver/<%= dasherize(name) %>.resolver';

const routes: Routes = [
  {
    path: '',
    children: [
      {
        path: '',
        component: <%= classify(name) %>PageComponent,
      },
      {
        path: ':action/:id',
        component: <%= classify(name) %>PageComponent,
        resolve: {
          model: <%= classify(name) %>Resolver,
          action: CrudActionResolver
        }
      },
    ],
    canLoad: [
      AuthenticationGuard
    ],
    canActivateChild: [
      AuthenticationGuard
    ],
    canActivate: [
      AuthenticationGuard
    ]
  }
];

@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})
export class <%= classify(name) %>RoutingModule { }
