mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
[DURACOM-191] change routing for item-page
This commit is contained in:
@@ -110,14 +110,14 @@ import { ThemedPageErrorComponent } from './page-error/themed-page-error.compone
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: ITEM_MODULE_PATH,
|
path: ITEM_MODULE_PATH,
|
||||||
loadChildren: () => import('./item-page/item-page.module')
|
loadChildren: () => import('./item-page/item-page-routes')
|
||||||
.then((m) => m.ItemPageModule),
|
.then((m) => m.ROUTES),
|
||||||
canActivate: [EndUserAgreementCurrentUserGuard]
|
canActivate: [EndUserAgreementCurrentUserGuard]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'entities/:entity-type',
|
path: 'entities/:entity-type',
|
||||||
loadChildren: () => import('./item-page/item-page.module')
|
loadChildren: () => import('./item-page/item-page-routes')
|
||||||
.then((m) => m.ItemPageModule),
|
.then((m) => m.ROUTES),
|
||||||
canActivate: [EndUserAgreementCurrentUserGuard]
|
canActivate: [EndUserAgreementCurrentUserGuard]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
214
src/app/item-page/edit-item-page/edit-item-page-routes.ts
Normal file
214
src/app/item-page/edit-item-page/edit-item-page-routes.ts
Normal file
@@ -0,0 +1,214 @@
|
|||||||
|
import { Route } 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_REGISTER_DOI_PATH,
|
||||||
|
ITEM_EDIT_REINSTATE_PATH,
|
||||||
|
ITEM_EDIT_WITHDRAW_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
|
||||||
|
*/
|
||||||
|
|
||||||
|
export const ROUTES: Route[] = [
|
||||||
|
{
|
||||||
|
path: '',
|
||||||
|
resolve: {
|
||||||
|
breadcrumb: I18nBreadcrumbResolver
|
||||||
|
},
|
||||||
|
providers: [
|
||||||
|
I18nBreadcrumbResolver,
|
||||||
|
I18nBreadcrumbsService,
|
||||||
|
ResourcePolicyResolver,
|
||||||
|
ResourcePolicyTargetResolver,
|
||||||
|
ItemPageReinstateGuard,
|
||||||
|
ItemPageWithdrawGuard,
|
||||||
|
ItemPageAdministratorGuard,
|
||||||
|
ItemPageMetadataGuard,
|
||||||
|
ItemPageCurateGuard,
|
||||||
|
ItemPageStatusGuard,
|
||||||
|
ItemPageBitstreamsGuard,
|
||||||
|
ItemPageRelationshipsGuard,
|
||||||
|
ItemPageVersionHistoryGuard,
|
||||||
|
ItemPageCollectionMapperGuard,
|
||||||
|
ItemPageAccessControlGuard,
|
||||||
|
ItemPageRegisterDoiGuard,
|
||||||
|
],
|
||||||
|
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' }
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
];
|
@@ -3,7 +3,6 @@ import { CommonModule } from '@angular/common';
|
|||||||
|
|
||||||
import { NgbTooltipModule, NgbModule } from '@ng-bootstrap/ng-bootstrap';
|
import { NgbTooltipModule, NgbModule } from '@ng-bootstrap/ng-bootstrap';
|
||||||
|
|
||||||
import { EditItemPageRoutingModule } from './edit-item-page.routing.module';
|
|
||||||
import { EditItemPageComponent } from './edit-item-page.component';
|
import { EditItemPageComponent } from './edit-item-page.component';
|
||||||
import { ItemStatusComponent } from './item-status/item-status.component';
|
import { ItemStatusComponent } from './item-status/item-status.component';
|
||||||
import { ItemOperationComponent } from './item-operation/item-operation.component';
|
import { ItemOperationComponent } from './item-operation/item-operation.component';
|
||||||
@@ -53,7 +52,6 @@ import {
|
|||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
CommonModule,
|
||||||
NgbTooltipModule,
|
NgbTooltipModule,
|
||||||
EditItemPageRoutingModule,
|
|
||||||
SearchPageModule,
|
SearchPageModule,
|
||||||
DragDropModule,
|
DragDropModule,
|
||||||
ResourcePoliciesModule,
|
ResourcePoliciesModule,
|
||||||
|
@@ -1,221 +0,0 @@
|
|||||||
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 {
|
|
||||||
|
|
||||||
}
|
|
109
src/app/item-page/item-page-routes.ts
Normal file
109
src/app/item-page/item-page-routes.ts
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
import { Route } from '@angular/router';
|
||||||
|
import { ItemPageResolver } from './item-page.resolver';
|
||||||
|
import { AuthenticatedGuard } from '../core/auth/authenticated.guard';
|
||||||
|
import { ItemBreadcrumbResolver } from '../core/breadcrumbs/item-breadcrumb.resolver';
|
||||||
|
import { VersionResolver } from './version-page/version.resolver';
|
||||||
|
import { DSOBreadcrumbsService } from '../core/breadcrumbs/dso-breadcrumbs.service';
|
||||||
|
import { LinkService } from '../core/cache/builders/link.service';
|
||||||
|
import { UploadBitstreamComponent } from './bitstreams/upload/upload-bitstream.component';
|
||||||
|
import { ITEM_EDIT_PATH, ORCID_PATH, UPLOAD_BITSTREAM_PATH } from './item-page-routing-paths';
|
||||||
|
import { ItemPageAdministratorGuard } from './item-page-administrator.guard';
|
||||||
|
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
||||||
|
import { ThemedItemPageComponent } from './simple/themed-item-page.component';
|
||||||
|
import { ThemedFullItemPageComponent } from './full/themed-full-item-page.component';
|
||||||
|
import { MenuItemType } from '../shared/menu/menu-item-type.model';
|
||||||
|
import { VersionPageComponent } from './version-page/version-page/version-page.component';
|
||||||
|
import {
|
||||||
|
BitstreamRequestACopyPageComponent
|
||||||
|
} from './bitstreams/request-a-copy/bitstream-request-a-copy-page.component';
|
||||||
|
import { REQUEST_COPY_MODULE_PATH } from '../app-routing-paths';
|
||||||
|
import { OrcidPageComponent } from './orcid-page/orcid-page.component';
|
||||||
|
import { OrcidPageGuard } from './orcid-page/orcid-page.guard';
|
||||||
|
import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
|
||||||
|
|
||||||
|
export const ROUTES: Route[] = [
|
||||||
|
{
|
||||||
|
path: ':id',
|
||||||
|
resolve: {
|
||||||
|
dso: ItemPageResolver,
|
||||||
|
breadcrumb: ItemBreadcrumbResolver,
|
||||||
|
menu: DSOEditMenuResolver
|
||||||
|
},
|
||||||
|
providers: [
|
||||||
|
ItemPageResolver,
|
||||||
|
ItemBreadcrumbResolver,
|
||||||
|
DSOBreadcrumbsService,
|
||||||
|
LinkService,
|
||||||
|
ItemPageAdministratorGuard,
|
||||||
|
VersionResolver,
|
||||||
|
OrcidPageGuard
|
||||||
|
],
|
||||||
|
runGuardsAndResolvers: 'always',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: '',
|
||||||
|
component: ThemedItemPageComponent,
|
||||||
|
pathMatch: 'full',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'full',
|
||||||
|
component: ThemedFullItemPageComponent,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: ITEM_EDIT_PATH,
|
||||||
|
loadChildren: () => import('./edit-item-page/edit-item-page-routes')
|
||||||
|
.then((m) => m.ROUTES),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: UPLOAD_BITSTREAM_PATH,
|
||||||
|
component: UploadBitstreamComponent,
|
||||||
|
canActivate: [AuthenticatedGuard]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: REQUEST_COPY_MODULE_PATH,
|
||||||
|
component: BitstreamRequestACopyPageComponent,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: ORCID_PATH,
|
||||||
|
component: OrcidPageComponent,
|
||||||
|
canActivate: [AuthenticatedGuard, OrcidPageGuard]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
data: {
|
||||||
|
menu: {
|
||||||
|
public: [{
|
||||||
|
id: 'statistics_item_:id',
|
||||||
|
active: true,
|
||||||
|
visible: true,
|
||||||
|
index: 2,
|
||||||
|
model: {
|
||||||
|
type: MenuItemType.LINK,
|
||||||
|
text: 'menu.section.statistics',
|
||||||
|
link: 'statistics/items/:id/',
|
||||||
|
} as LinkMenuItemModel,
|
||||||
|
}],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'version',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: ':id',
|
||||||
|
component: VersionPageComponent,
|
||||||
|
resolve: {
|
||||||
|
dso: VersionResolver,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
],
|
||||||
|
providers: [
|
||||||
|
ItemPageResolver,
|
||||||
|
ItemBreadcrumbResolver,
|
||||||
|
DSOBreadcrumbsService,
|
||||||
|
LinkService,
|
||||||
|
ItemPageAdministratorGuard,
|
||||||
|
VersionResolver,
|
||||||
|
OrcidPageGuard
|
||||||
|
]
|
||||||
|
}
|
||||||
|
];
|
@@ -1,107 +0,0 @@
|
|||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { RouterModule } from '@angular/router';
|
|
||||||
import { ItemPageResolver } from './item-page.resolver';
|
|
||||||
import { AuthenticatedGuard } from '../core/auth/authenticated.guard';
|
|
||||||
import { ItemBreadcrumbResolver } from '../core/breadcrumbs/item-breadcrumb.resolver';
|
|
||||||
import { VersionResolver } from './version-page/version.resolver';
|
|
||||||
import { DSOBreadcrumbsService } from '../core/breadcrumbs/dso-breadcrumbs.service';
|
|
||||||
import { LinkService } from '../core/cache/builders/link.service';
|
|
||||||
import { UploadBitstreamComponent } from './bitstreams/upload/upload-bitstream.component';
|
|
||||||
import { ITEM_EDIT_PATH, ORCID_PATH, UPLOAD_BITSTREAM_PATH } from './item-page-routing-paths';
|
|
||||||
import { ItemPageAdministratorGuard } from './item-page-administrator.guard';
|
|
||||||
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
|
||||||
import { ThemedItemPageComponent } from './simple/themed-item-page.component';
|
|
||||||
import { ThemedFullItemPageComponent } from './full/themed-full-item-page.component';
|
|
||||||
import { MenuItemType } from '../shared/menu/menu-item-type.model';
|
|
||||||
import { VersionPageComponent } from './version-page/version-page/version-page.component';
|
|
||||||
import { BitstreamRequestACopyPageComponent } from './bitstreams/request-a-copy/bitstream-request-a-copy-page.component';
|
|
||||||
import { REQUEST_COPY_MODULE_PATH } from '../app-routing-paths';
|
|
||||||
import { OrcidPageComponent } from './orcid-page/orcid-page.component';
|
|
||||||
import { OrcidPageGuard } from './orcid-page/orcid-page.guard';
|
|
||||||
import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
RouterModule.forChild([
|
|
||||||
{
|
|
||||||
path: ':id',
|
|
||||||
resolve: {
|
|
||||||
dso: ItemPageResolver,
|
|
||||||
breadcrumb: ItemBreadcrumbResolver,
|
|
||||||
menu: DSOEditMenuResolver
|
|
||||||
},
|
|
||||||
runGuardsAndResolvers: 'always',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: '',
|
|
||||||
component: ThemedItemPageComponent,
|
|
||||||
pathMatch: 'full',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'full',
|
|
||||||
component: ThemedFullItemPageComponent,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: ITEM_EDIT_PATH,
|
|
||||||
loadChildren: () => import('./edit-item-page/edit-item-page.module')
|
|
||||||
.then((m) => m.EditItemPageModule),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: UPLOAD_BITSTREAM_PATH,
|
|
||||||
component: UploadBitstreamComponent,
|
|
||||||
canActivate: [AuthenticatedGuard]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: REQUEST_COPY_MODULE_PATH,
|
|
||||||
component: BitstreamRequestACopyPageComponent,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: ORCID_PATH,
|
|
||||||
component: OrcidPageComponent,
|
|
||||||
canActivate: [AuthenticatedGuard, OrcidPageGuard]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
data: {
|
|
||||||
menu: {
|
|
||||||
public: [{
|
|
||||||
id: 'statistics_item_:id',
|
|
||||||
active: true,
|
|
||||||
visible: true,
|
|
||||||
index: 2,
|
|
||||||
model: {
|
|
||||||
type: MenuItemType.LINK,
|
|
||||||
text: 'menu.section.statistics',
|
|
||||||
link: 'statistics/items/:id/',
|
|
||||||
} as LinkMenuItemModel,
|
|
||||||
}],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'version',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: ':id',
|
|
||||||
component: VersionPageComponent,
|
|
||||||
resolve: {
|
|
||||||
dso: VersionResolver,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
],
|
|
||||||
}
|
|
||||||
])
|
|
||||||
],
|
|
||||||
providers: [
|
|
||||||
ItemPageResolver,
|
|
||||||
ItemBreadcrumbResolver,
|
|
||||||
DSOBreadcrumbsService,
|
|
||||||
LinkService,
|
|
||||||
ItemPageAdministratorGuard,
|
|
||||||
VersionResolver,
|
|
||||||
OrcidPageGuard
|
|
||||||
]
|
|
||||||
|
|
||||||
})
|
|
||||||
export class ItemPageRoutingModule {
|
|
||||||
|
|
||||||
}
|
|
@@ -3,7 +3,6 @@ import { CommonModule } from '@angular/common';
|
|||||||
|
|
||||||
|
|
||||||
import { ItemPageComponent } from './simple/item-page.component';
|
import { ItemPageComponent } from './simple/item-page.component';
|
||||||
import { ItemPageRoutingModule } from './item-page-routing.module';
|
|
||||||
import { MetadataUriValuesComponent } from './field-components/metadata-uri-values/metadata-uri-values.component';
|
import { MetadataUriValuesComponent } from './field-components/metadata-uri-values/metadata-uri-values.component';
|
||||||
import {
|
import {
|
||||||
ItemPageAuthorFieldComponent
|
ItemPageAuthorFieldComponent
|
||||||
@@ -107,7 +106,6 @@ const DECLARATIONS = [
|
|||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
CommonModule,
|
||||||
ItemPageRoutingModule,
|
|
||||||
EditItemPageModule,
|
EditItemPageModule,
|
||||||
ItemVersionsModule,
|
ItemVersionsModule,
|
||||||
ItemSharedModule,
|
ItemSharedModule,
|
||||||
|
Reference in New Issue
Block a user