import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

import { SearchComponent } from './containers/search.component';
import { DatasetComponent } from './containers/dataset.component';
import { CriteriaComponent } from './containers/criteria.component';
import { OutputComponent } from './containers/output.component';
import { ResultComponent } from './containers/result.component';
import { DetailComponent } from './containers/detail.component';

const routes: Routes = [
    {
        path: 'search', component: SearchComponent, children: [
            { path: '', redirectTo: 'dataset', pathMatch: 'full' },
            { path: 'dataset', component: DatasetComponent },
            { path: 'criteria/:dname', component: CriteriaComponent },
            { path: 'output/:dname', component: OutputComponent },
            { path: 'result/:dname', component: ResultComponent },
            { path: 'detail/:dname/:id', component: DetailComponent }
        ]
    }
];

@NgModule({
    imports: [RouterModule.forChild(routes)],
    exports: [RouterModule]
})
export class SearchRoutingModule { }

export const routedComponents = [
    SearchComponent,
    DatasetComponent,
    CriteriaComponent,
    OutputComponent,
    ResultComponent,
    DetailComponent
];