mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
222 lines
9.1 KiB
TypeScript
222 lines
9.1 KiB
TypeScript
import { NgModule } from '@angular/core';
|
|
import { RouterModule } from '@angular/router';
|
|
import { EditItemPageComponent } from './edit-item-page.component';
|
|
import { ItemWithdrawComponent } from './item-withdraw/item-withdraw.component';
|
|
import { ItemReinstateComponent } from './item-reinstate/item-reinstate.component';
|
|
import { ItemPrivateComponent } from './item-private/item-private.component';
|
|
import { ItemPublicComponent } from './item-public/item-public.component';
|
|
import { ItemDeleteComponent } from './item-delete/item-delete.component';
|
|
import { ItemBitstreamsComponent } from './item-bitstreams/item-bitstreams.component';
|
|
import { ItemCollectionMapperComponent } from './item-collection-mapper/item-collection-mapper.component';
|
|
import { ItemMoveComponent } from './item-move/item-move.component';
|
|
import { ItemRegisterDoiComponent } from './item-register-doi/item-register-doi.component';
|
|
import { ItemRelationshipsComponent } from './item-relationships/item-relationships.component';
|
|
import { I18nBreadcrumbResolver } from '../../core/breadcrumbs/i18n-breadcrumb.resolver';
|
|
import { ItemVersionHistoryComponent } from './item-version-history/item-version-history.component';
|
|
import { ItemAuthorizationsComponent } from './item-authorizations/item-authorizations.component';
|
|
import { ResourcePolicyTargetResolver } from '../../shared/resource-policies/resolvers/resource-policy-target.resolver';
|
|
import { ResourcePolicyResolver } from '../../shared/resource-policies/resolvers/resource-policy.resolver';
|
|
import { ResourcePolicyCreateComponent } from '../../shared/resource-policies/create/resource-policy-create.component';
|
|
import { ResourcePolicyEditComponent } from '../../shared/resource-policies/edit/resource-policy-edit.component';
|
|
import { I18nBreadcrumbsService } from '../../core/breadcrumbs/i18n-breadcrumbs.service';
|
|
import {
|
|
ITEM_EDIT_AUTHORIZATIONS_PATH,
|
|
ITEM_EDIT_DELETE_PATH,
|
|
ITEM_EDIT_MOVE_PATH,
|
|
ITEM_EDIT_PRIVATE_PATH,
|
|
ITEM_EDIT_PUBLIC_PATH,
|
|
ITEM_EDIT_REINSTATE_PATH,
|
|
ITEM_EDIT_WITHDRAW_PATH,
|
|
ITEM_EDIT_REGISTER_DOI_PATH
|
|
} from './edit-item-page.routing-paths';
|
|
import { ItemPageReinstateGuard } from './item-page-reinstate.guard';
|
|
import { ItemPageWithdrawGuard } from './item-page-withdraw.guard';
|
|
import { ItemPageMetadataGuard } from './item-page-metadata.guard';
|
|
import { ItemPageAdministratorGuard } from '../item-page-administrator.guard';
|
|
import { ItemPageStatusGuard } from './item-page-status.guard';
|
|
import { ItemPageBitstreamsGuard } from './item-page-bitstreams.guard';
|
|
import { ItemPageRelationshipsGuard } from './item-page-relationships.guard';
|
|
import { ItemPageVersionHistoryGuard } from './item-page-version-history.guard';
|
|
import { ItemPageCollectionMapperGuard } from './item-page-collection-mapper.guard';
|
|
import { ItemPageCurateGuard } from './item-page-curate.guard';
|
|
import { ItemPageAccessControlGuard } from './item-page-access-control.guard';
|
|
import { ThemedDsoEditMetadataComponent } from '../../dso-shared/dso-edit-metadata/themed-dso-edit-metadata.component';
|
|
import { ItemPageRegisterDoiGuard } from './item-page-register-doi.guard';
|
|
import { ItemCurateComponent } from './item-curate/item-curate.component';
|
|
import { ThemedItemStatusComponent } from './item-status/themed-item-status.component';
|
|
import { ItemAccessControlComponent } from './item-access-control/item-access-control.component';
|
|
|
|
/**
|
|
* Routing module that handles the routing for the Edit Item page administrator functionality
|
|
*/
|
|
@NgModule({
|
|
imports: [
|
|
RouterModule.forChild([
|
|
{
|
|
path: '',
|
|
resolve: {
|
|
breadcrumb: I18nBreadcrumbResolver
|
|
},
|
|
data: { breadcrumbKey: 'item.edit' },
|
|
children: [
|
|
{
|
|
path: '',
|
|
component: EditItemPageComponent,
|
|
children: [
|
|
{
|
|
path: '',
|
|
redirectTo: 'status',
|
|
pathMatch: 'full'
|
|
},
|
|
{
|
|
path: 'status',
|
|
component: ThemedItemStatusComponent,
|
|
data: { title: 'item.edit.tabs.status.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageStatusGuard]
|
|
},
|
|
{
|
|
path: 'bitstreams',
|
|
component: ItemBitstreamsComponent,
|
|
data: { title: 'item.edit.tabs.bitstreams.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageBitstreamsGuard]
|
|
},
|
|
{
|
|
path: 'metadata',
|
|
component: ThemedDsoEditMetadataComponent,
|
|
data: { title: 'item.edit.tabs.metadata.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageMetadataGuard]
|
|
},
|
|
{
|
|
path: 'curate',
|
|
component: ItemCurateComponent,
|
|
data: { title: 'item.edit.tabs.curate.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageCurateGuard]
|
|
},
|
|
{
|
|
path: 'relationships',
|
|
component: ItemRelationshipsComponent,
|
|
data: { title: 'item.edit.tabs.relationships.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageRelationshipsGuard]
|
|
},
|
|
/* TODO - uncomment & fix when view page exists
|
|
{
|
|
path: 'view',
|
|
component: ItemBitstreamsComponent,
|
|
data: { title: 'item.edit.tabs.view.title', showBreadcrumbs: true }
|
|
}, */
|
|
/* TODO - uncomment & fix when curate page exists
|
|
{
|
|
path: 'curate',
|
|
component: ItemBitstreamsComponent,
|
|
data: { title: 'item.edit.tabs.curate.title', showBreadcrumbs: true }
|
|
}, */
|
|
{
|
|
path: 'versionhistory',
|
|
component: ItemVersionHistoryComponent,
|
|
data: { title: 'item.edit.tabs.versionhistory.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageVersionHistoryGuard]
|
|
},
|
|
{
|
|
path: 'access-control',
|
|
component: ItemAccessControlComponent,
|
|
data: { title: 'item.edit.tabs.access-control.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageAccessControlGuard]
|
|
},
|
|
{
|
|
path: 'mapper',
|
|
component: ItemCollectionMapperComponent,
|
|
data: { title: 'item.edit.tabs.item-mapper.title', showBreadcrumbs: true },
|
|
canActivate: [ItemPageCollectionMapperGuard]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
path: 'mapper',
|
|
component: ItemCollectionMapperComponent,
|
|
},
|
|
{
|
|
path: ITEM_EDIT_WITHDRAW_PATH,
|
|
component: ItemWithdrawComponent,
|
|
canActivate: [ItemPageWithdrawGuard]
|
|
},
|
|
{
|
|
path: ITEM_EDIT_REINSTATE_PATH,
|
|
component: ItemReinstateComponent,
|
|
canActivate: [ItemPageReinstateGuard]
|
|
},
|
|
{
|
|
path: ITEM_EDIT_PRIVATE_PATH,
|
|
component: ItemPrivateComponent,
|
|
},
|
|
{
|
|
path: ITEM_EDIT_PUBLIC_PATH,
|
|
component: ItemPublicComponent,
|
|
},
|
|
{
|
|
path: ITEM_EDIT_DELETE_PATH,
|
|
component: ItemDeleteComponent,
|
|
},
|
|
{
|
|
path: ITEM_EDIT_MOVE_PATH,
|
|
component: ItemMoveComponent,
|
|
data: { title: 'item.edit.move.title' },
|
|
},
|
|
{
|
|
path: ITEM_EDIT_REGISTER_DOI_PATH,
|
|
component: ItemRegisterDoiComponent,
|
|
canActivate: [ItemPageRegisterDoiGuard],
|
|
data: { title: 'item.edit.register-doi.title' },
|
|
},
|
|
{
|
|
path: ITEM_EDIT_AUTHORIZATIONS_PATH,
|
|
children: [
|
|
{
|
|
path: 'create',
|
|
resolve: {
|
|
resourcePolicyTarget: ResourcePolicyTargetResolver
|
|
},
|
|
component: ResourcePolicyCreateComponent,
|
|
data: { title: 'resource-policies.create.page.title' }
|
|
},
|
|
{
|
|
path: 'edit',
|
|
resolve: {
|
|
resourcePolicy: ResourcePolicyResolver
|
|
},
|
|
component: ResourcePolicyEditComponent,
|
|
data: { title: 'resource-policies.edit.page.title' }
|
|
},
|
|
{
|
|
path: '',
|
|
component: ItemAuthorizationsComponent,
|
|
data: { title: 'item.edit.authorizations.title' }
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
])
|
|
],
|
|
providers: [
|
|
I18nBreadcrumbResolver,
|
|
I18nBreadcrumbsService,
|
|
ResourcePolicyResolver,
|
|
ResourcePolicyTargetResolver,
|
|
ItemPageReinstateGuard,
|
|
ItemPageWithdrawGuard,
|
|
ItemPageAdministratorGuard,
|
|
ItemPageMetadataGuard,
|
|
ItemPageCurateGuard,
|
|
ItemPageStatusGuard,
|
|
ItemPageBitstreamsGuard,
|
|
ItemPageRelationshipsGuard,
|
|
ItemPageVersionHistoryGuard,
|
|
ItemPageCollectionMapperGuard,
|
|
ItemPageAccessControlGuard,
|
|
ItemPageRegisterDoiGuard,
|
|
]
|
|
})
|
|
export class EditItemPageRoutingModule {
|
|
|
|
}
|