- Transactions Tab - Charges Tab - Standing Instructions Tab Fixes: #221
124 lines
4.4 KiB
TypeScript
124 lines
4.4 KiB
TypeScript
/** Angular Imports */
|
|
import { NgModule } from '@angular/core';
|
|
import { Routes, RouterModule } from '@angular/router';
|
|
|
|
/** Routing Imports */
|
|
import { Route } from '../core/route/route.service';
|
|
|
|
/** Translation Imports */
|
|
import { extract } from '../core/i18n/i18n.service';
|
|
|
|
/** Custom Imports */
|
|
import { GroupsComponent } from './groups.component';
|
|
import { GroupsViewComponent } from './groups-view/groups-view.component';
|
|
import { GeneralTabComponent } from './groups-view/general-tab/general-tab.component';
|
|
import { NotesTabComponent } from './groups-view/notes-tab/notes-tab.component';
|
|
import { CommitteeTabComponent } from './groups-view/committee-tab/committee-tab.component';
|
|
import { CreateGroupComponent } from './create-group/create-group.component';
|
|
import { DatatableTabsComponent } from './groups-view/datatable-tabs/datatable-tabs.component';
|
|
|
|
/** Custom Resolvers */
|
|
import { GroupViewResolver } from './common-resolvers/group-view.resolver';
|
|
import { GroupAccountsResolver } from './common-resolvers/group-account.resolver';
|
|
import { GroupSummaryResolver } from './common-resolvers/group-summary.resolver';
|
|
import { GroupNotesResolver } from './common-resolvers/group-notes.resolver';
|
|
import { OfficesResolver } from 'app/accounting/common-resolvers/offices.resolver';
|
|
import { GroupDatatablesResolver } from './common-resolvers/group-datatables.resolver';
|
|
import { GroupDatatableResolver } from './common-resolvers/group-datatable.resolver';
|
|
|
|
/** Groups Routes */
|
|
const routes: Routes = [
|
|
Route.withShell([
|
|
{
|
|
path: 'groups',
|
|
data: { title: extract('Groups'), breadcrumb: 'Groups', routeParamBreadcrumb: false },
|
|
children: [
|
|
{
|
|
path: '',
|
|
component: GroupsComponent,
|
|
},
|
|
{
|
|
path: 'create',
|
|
component: CreateGroupComponent,
|
|
data: { title: extract('Create Group'), breadcrumb: 'Create' },
|
|
resolve: {
|
|
offices: OfficesResolver
|
|
}
|
|
},
|
|
{
|
|
path: ':groupId',
|
|
data: { title: extract('View Group'), routeParamBreadcrumb: 'groupId' },
|
|
children: [
|
|
{
|
|
path: '',
|
|
component: GroupsViewComponent,
|
|
resolve: {
|
|
groupViewData: GroupViewResolver,
|
|
groupDatatables: GroupDatatablesResolver
|
|
},
|
|
children: [
|
|
{
|
|
path: 'general',
|
|
component: GeneralTabComponent,
|
|
data: { title: extract('General'), breadcrumb: 'General', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
groupAccountsData: GroupAccountsResolver,
|
|
groupSummary: GroupSummaryResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'notes',
|
|
component: NotesTabComponent,
|
|
data: { title: extract('Notes'), breadcrumb: 'Notes', routeParamBreadcrumb: false },
|
|
resolve: {
|
|
groupNotes: GroupNotesResolver
|
|
}
|
|
},
|
|
{
|
|
path: 'committee',
|
|
component: CommitteeTabComponent,
|
|
data: { title: extract('Committee'), breadcrumb: 'Committee', routeParamBreadcrumb: false }
|
|
},
|
|
{
|
|
path: 'datatables',
|
|
children: [
|
|
{
|
|
path: ':datatableName',
|
|
component: DatatableTabsComponent,
|
|
data: { title: extract('View Data Table'), routeParamBreadcrumb: 'datatableName' },
|
|
resolve: {
|
|
groupDatatable: GroupDatatableResolver
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
path: 'savingsaccounts',
|
|
loadChildren: '../savings/savings.module#SavingsModule'
|
|
},
|
|
]
|
|
}
|
|
]
|
|
}
|
|
])
|
|
];
|
|
|
|
/**
|
|
* Groups Routing Module
|
|
*
|
|
* Configures the groups routes.
|
|
*/
|
|
@NgModule({
|
|
imports: [RouterModule.forChild(routes)],
|
|
exports: [RouterModule],
|
|
providers: [GroupViewResolver,
|
|
GroupAccountsResolver,
|
|
GroupSummaryResolver,
|
|
GroupNotesResolver,
|
|
GroupDatatablesResolver,
|
|
GroupDatatableResolver]
|
|
})
|
|
export class GroupsRoutingModule { }
|