diff --git a/src/app/admin/admin-ldn-services/admin-ldn-services.module.ts b/src/app/admin/admin-ldn-services/admin-ldn-services.module.ts index 45ec696cd3..94963fafce 100644 --- a/src/app/admin/admin-ldn-services/admin-ldn-services.module.ts +++ b/src/app/admin/admin-ldn-services/admin-ldn-services.module.ts @@ -2,7 +2,6 @@ import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { AdminLdnServicesRoutingModule } from './admin-ldn-services-routing.module'; import { LdnServicesOverviewComponent } from './ldn-services-directory/ldn-services-directory.component'; -import { SharedModule } from '../../shared/shared.module'; import { LdnServiceFormComponent } from './ldn-service-form/ldn-service-form.component'; import { FormsModule } from '@angular/forms'; import { LdnItemfiltersService } from './ldn-services-data/ldn-itemfilters-data.service'; @@ -11,7 +10,6 @@ import { LdnItemfiltersService } from './ldn-services-data/ldn-itemfilters-data. @NgModule({ imports: [ CommonModule, - SharedModule, AdminLdnServicesRoutingModule, FormsModule ], diff --git a/src/app/admin/admin-notifications/admin-notifications-routes.ts b/src/app/admin/admin-notifications/admin-notifications-routes.ts index 2efc89562d..bc343e6afa 100644 --- a/src/app/admin/admin-notifications/admin-notifications-routes.ts +++ b/src/app/admin/admin-notifications/admin-notifications-routes.ts @@ -3,52 +3,90 @@ import { Route, RouterModule } from '@angular/router'; import { AuthenticatedGuard } from '../../core/auth/authenticated.guard'; import { I18nBreadcrumbResolver } from '../../core/breadcrumbs/i18n-breadcrumb.resolver'; import { I18nBreadcrumbsService } from '../../core/breadcrumbs/i18n-breadcrumbs.service'; -import { QUALITY_ASSURANCE_EDIT_PATH } from './admin-notifications-routing-paths'; -import { - AdminQualityAssuranceTopicsPageComponent -} from './admin-quality-assurance-topics-page/admin-quality-assurance-topics-page.component'; -import { - AdminQualityAssuranceEventsPageComponent -} from './admin-quality-assurance-events-page/admin-quality-assurance-events-page.component'; -import { - AdminQualityAssuranceTopicsPageResolver -} from './admin-quality-assurance-topics-page/admin-quality-assurance-topics-page-resolver.service'; -import { - AdminQualityAssuranceEventsPageResolver -} from './admin-quality-assurance-events-page/admin-quality-assurance-events-page.resolver'; -import { - AdminQualityAssuranceSourcePageComponent -} from './admin-quality-assurance-source-page-component/admin-quality-assurance-source-page.component'; -import { - AdminQualityAssuranceSourcePageResolver -} from './admin-quality-assurance-source-page-component/admin-quality-assurance-source-page-resolver.service'; +import { PUBLICATION_CLAIMS_PATH, QUALITY_ASSURANCE_EDIT_PATH } from './admin-notifications-routing-paths'; import { QualityAssuranceBreadcrumbResolver } from '../../core/breadcrumbs/quality-assurance-breadcrumb.resolver'; import { QualityAssuranceBreadcrumbService } from '../../core/breadcrumbs/quality-assurance-breadcrumb.service'; import { SourceDataResolver -} from './admin-quality-assurance-source-page-component/admin-quality-assurance-source-data.resolver'; +} from '../../quality-assurance-notifications-pages/quality-assurance-source-page-component/quality-assurance-source-data.resolver'; +import { + QualityAssuranceSourcePageResolver +} from '../../quality-assurance-notifications-pages/quality-assurance-source-page-component/quality-assurance-source-page-resolver.service'; +import { + QualityAssuranceEventsPageResolver +} from '../../quality-assurance-notifications-pages/quality-assurance-events-page/quality-assurance-events-page.resolver'; +import { + QualityAssuranceTopicsPageResolver +} from '../../quality-assurance-notifications-pages/quality-assurance-topics-page/quality-assurance-topics-page-resolver.service'; +import { + AdminNotificationsPublicationClaimPageComponent +} from './admin-notifications-publication-claim-page/admin-notifications-publication-claim-page.component'; +import { + AdminNotificationsPublicationClaimPageResolver +} from '../../quality-assurance-notifications-pages/notifications-suggestion-targets-page/notifications-suggestion-targets-page-resolver.service'; +import { + QualityAssuranceTopicsPageComponent +} from '../../quality-assurance-notifications-pages/quality-assurance-topics-page/quality-assurance-topics-page.component'; +import { + QualityAssuranceSourcePageComponent +} from '../../quality-assurance-notifications-pages/quality-assurance-source-page-component/quality-assurance-source-page.component'; +import { + QualityAssuranceEventsPageComponent +} from '../../quality-assurance-notifications-pages/quality-assurance-events-page/quality-assurance-events-page.component'; const providers = [ I18nBreadcrumbResolver, I18nBreadcrumbsService, SourceDataResolver, - AdminQualityAssuranceTopicsPageResolver, - AdminQualityAssuranceEventsPageResolver, - AdminQualityAssuranceSourcePageResolver, + QualityAssuranceTopicsPageResolver, + QualityAssuranceEventsPageResolver, + QualityAssuranceSourcePageResolver, QualityAssuranceBreadcrumbResolver, QualityAssuranceBreadcrumbService ]; export const ROUTES: Route[] = [ RouterModule.forChild([ + { + canActivate: [ AuthenticatedGuard ], + path: `${PUBLICATION_CLAIMS_PATH}`, + component: AdminNotificationsPublicationClaimPageComponent, + pathMatch: 'full', + resolve: { + breadcrumb: I18nBreadcrumbResolver, + suggestionTargetParams: AdminNotificationsPublicationClaimPageResolver + }, + providers, + data: { + title: 'admin.notifications.publicationclaim.page.title', + breadcrumbKey: 'admin.notifications.publicationclaim', + showBreadcrumbsFluid: false + } + }, { canActivate: [AuthenticatedGuard], path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId`, - component: AdminQualityAssuranceTopicsPageComponent, + component: QualityAssuranceTopicsPageComponent, pathMatch: 'full', resolve: { breadcrumb: QualityAssuranceBreadcrumbResolver, - openaireQualityAssuranceTopicsParams: AdminQualityAssuranceTopicsPageResolver + openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver + }, + providers, + data: { + title: 'admin.quality-assurance.page.title', + breadcrumbKey: 'admin.quality-assurance', + showBreadcrumbsFluid: false + } + }, + { + canActivate: [ AuthenticatedGuard ], + path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/target/:targetId`, + component: QualityAssuranceTopicsPageComponent, + pathMatch: 'full', + resolve: { + breadcrumb: I18nBreadcrumbResolver, + openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver }, providers, data: { @@ -60,11 +98,11 @@ export const ROUTES: Route[] = [ { canActivate: [AuthenticatedGuard], path: `${QUALITY_ASSURANCE_EDIT_PATH}`, - component: AdminQualityAssuranceSourcePageComponent, + component: QualityAssuranceSourcePageComponent, pathMatch: 'full', resolve: { breadcrumb: I18nBreadcrumbResolver, - openaireQualityAssuranceSourceParams: AdminQualityAssuranceSourcePageResolver, + openaireQualityAssuranceSourceParams: QualityAssuranceSourcePageResolver, sourceData: SourceDataResolver }, providers, @@ -77,11 +115,11 @@ export const ROUTES: Route[] = [ { canActivate: [AuthenticatedGuard], path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/:topicId`, - component: AdminQualityAssuranceEventsPageComponent, + component: QualityAssuranceEventsPageComponent, pathMatch: 'full', resolve: { breadcrumb: QualityAssuranceBreadcrumbResolver, - openaireQualityAssuranceEventsParams: AdminQualityAssuranceEventsPageResolver + openaireQualityAssuranceEventsParams: QualityAssuranceEventsPageResolver }, providers, data: { diff --git a/src/app/admin/admin-reports/admin-reports.module.ts b/src/app/admin/admin-reports/admin-reports.module.ts index 70dfba8a07..f43735999c 100644 --- a/src/app/admin/admin-reports/admin-reports.module.ts +++ b/src/app/admin/admin-reports/admin-reports.module.ts @@ -2,7 +2,6 @@ import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FilteredCollectionsComponent } from './filtered-collections/filtered-collections.component'; import { RouterModule } from '@angular/router'; -import { SharedModule } from '../../shared/shared.module'; import { FormModule } from '../../shared/form/form.module'; import { FilteredItemsComponent } from './filtered-items/filtered-items.component'; import { AdminReportsRoutingModule } from './admin-reports-routing.module'; @@ -12,7 +11,6 @@ import { FiltersComponent } from './filters-section/filters-section.component'; @NgModule({ imports: [ CommonModule, - SharedModule, RouterModule, FormModule, AdminReportsRoutingModule, diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 9411c0010f..69b43424b0 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -44,19 +44,20 @@ import { EffectsModule } from '@ngrx/effects'; import { submissionReducers, SubmissionState } from './submission/submission.reducers'; import { submissionEffects } from './submission/submission.effects'; import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-check-guard.guard'; +import { NOTIFICATIONS_MODULE_PATH } from './admin/admin-routing-paths'; @NgModule({ imports: [ RouterModule.forRoot([ - { path: INTERNAL_SERVER_ERROR, component: ThemedPageInternalServerErrorComponent }, - { path: ERROR_PAGE , component: ThemedPageErrorComponent }, + {path: INTERNAL_SERVER_ERROR, component: ThemedPageInternalServerErrorComponent}, + {path: ERROR_PAGE, component: ThemedPageErrorComponent}, { path: '', canActivate: [AuthBlockingGuard], canActivateChild: [ServerCheckGuard], resolve: [MenuResolver], children: [ - { path: '', redirectTo: '/home', pathMatch: 'full' }, + {path: '', redirectTo: '/home', pathMatch: 'full'}, { path: 'reload/:rnd', component: ThemedPageNotFoundComponent, @@ -67,7 +68,7 @@ import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-c path: 'home', loadChildren: () => import('./home-page/home-page-routes') .then((m) => m.ROUTES), - data: { showBreadcrumbs: false }, + data: {showBreadcrumbs: false}, canActivate: [EndUserAgreementCurrentUserGuard] }, { @@ -160,19 +161,18 @@ import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-c .then((m) => m.ROUTES), canActivate: [EndUserAgreementCurrentUserGuard] }, - // TODO: switch routing modules to routing files - // { - // path: NOTIFICATIONS_MODULE_PATH, - // loadChildren: () => import('./admin/admin-notifications/admin-notifications.module') - // .then((m) => m.AdminNotificationsModule), - // canActivate: [AuthenticatedGuard, EndUserAgreementCurrentUserGuard] - // }, - // { - // path: NOTIFICATIONS_MODULE_PATH, - // loadChildren: () => import('./quality-assurance-notifications-pages/notifications-pages.module') - // .then((m) => m.NotificationsPageModule), - // canActivate: [AuthenticatedGuard, EndUserAgreementCurrentUserGuard] - // }, + { + path: NOTIFICATIONS_MODULE_PATH, + loadChildren: () => import('./admin/admin-notifications/admin-notifications-routes') + .then((m) => m.ROUTES), + canActivate: [AuthenticatedGuard, EndUserAgreementCurrentUserGuard] + }, + { + path: NOTIFICATIONS_MODULE_PATH, + loadChildren: () => import('./quality-assurance-notifications-pages/notifications-pages-routes') + .then((m) => m.ROUTES), + canActivate: [AuthenticatedGuard, EndUserAgreementCurrentUserGuard] + }, { path: 'login', loadChildren: () => import('./login-page/login-page-routes') @@ -189,9 +189,9 @@ import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-c .then((m) => m.ROUTES), providers: [ importProvidersFrom( - StoreModule.forFeature('submission', submissionReducers, storeModuleConfig as StoreConfig), - EffectsModule.forFeature(submissionEffects), - )], + StoreModule.forFeature('submission', submissionReducers, storeModuleConfig as StoreConfig), + EffectsModule.forFeature(submissionEffects), + )], canActivate: [EndUserAgreementCurrentUserGuard] }, { @@ -234,7 +234,8 @@ import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-c .then((m) => m.ROUTES), canActivate: [AuthenticatedGuard, EndUserAgreementCurrentUserGuard] }, - { path: SUGGESTION_MODULE_PATH, + { + path: SUGGESTION_MODULE_PATH, loadChildren: () => import('./suggestions-page/suggestions-page.module') .then((m) => m.SuggestionsPageModule), canActivate: [AuthenticatedGuard, EndUserAgreementCurrentUserGuard] @@ -274,7 +275,7 @@ import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-c .then((m) => m.ROUTES), canActivate: [AuthenticatedGuard] }, - { path: '**', pathMatch: 'full', component: ThemedPageNotFoundComponent } + {path: '**', pathMatch: 'full', component: ThemedPageNotFoundComponent} ] } ], { @@ -285,7 +286,7 @@ import { ForgotPasswordCheckGuard } from './core/rest-property/forgot-password-c initialNavigation: 'enabledBlocking', preloadingStrategy: NoPreloading, onSameUrlNavigation: 'reload', -}) + }) ], exports: [RouterModule], }) diff --git a/src/app/notifications/qa/events/ePerson-data/ePerson-data.component.ts b/src/app/notifications/qa/events/ePerson-data/ePerson-data.component.ts index f1a9c8c592..31b839f5d6 100644 --- a/src/app/notifications/qa/events/ePerson-data/ePerson-data.component.ts +++ b/src/app/notifications/qa/events/ePerson-data/ePerson-data.component.ts @@ -3,10 +3,16 @@ import { EPersonDataService } from '../../../../core/eperson/eperson-data.servic import { getFirstCompletedRemoteData, getRemoteDataPayload } from '../../../../core/shared/operators'; import { Observable } from 'rxjs'; import { EPerson } from '../../../../core/eperson/models/eperson.model'; +import { AsyncPipe, NgIf } from '@angular/common'; @Component({ selector: 'ds-eperson-data', templateUrl: './ePerson-data.component.html', + standalone: true, + imports: [ + NgIf, + AsyncPipe + ], styleUrls: ['./ePerson-data.component.scss'] }) /** diff --git a/src/app/notifications/suggestion-targets/publication-claim/publication-claim.component.ts b/src/app/notifications/suggestion-targets/publication-claim/publication-claim.component.ts index 1b6d70cba4..eb5554545c 100644 --- a/src/app/notifications/suggestion-targets/publication-claim/publication-claim.component.ts +++ b/src/app/notifications/suggestion-targets/publication-claim/publication-claim.component.ts @@ -1,5 +1,5 @@ import { Component, Input, OnInit } from '@angular/core'; -import { Router } from '@angular/router'; +import { Router, RouterLink } from '@angular/router'; import { Observable, Subscription } from 'rxjs'; import { distinctUntilChanged, take } from 'rxjs/operators'; @@ -12,6 +12,10 @@ import { PaginationService } from '../../../core/pagination/pagination.service'; import { SuggestionTarget } from '../../../core/notifications/models/suggestion-target.model'; import { SuggestionTargetsStateService } from '../suggestion-targets.state.service'; import { SuggestionsService } from '../../suggestions.service'; +import { LoadingComponent } from '../../../shared/loading/loading.component'; +import { AsyncPipe, NgIf } from '@angular/common'; +import { TranslateModule } from '@ngx-translate/core'; +import { PaginationComponent } from '../../../shared/pagination/pagination.component'; /** * Component to display the Suggestion Target list. @@ -20,6 +24,15 @@ import { SuggestionsService } from '../../suggestions.service'; selector: 'ds-publication-claim', templateUrl: './publication-claim.component.html', styleUrls: ['./publication-claim.component.scss'], + imports: [ + LoadingComponent, + AsyncPipe, + TranslateModule, + PaginationComponent, + NgIf, + RouterLink + ], + standalone: true }) export class PublicationClaimComponent implements OnInit { diff --git a/src/app/notifications/suggestions-notification/suggestions-notification.component.ts b/src/app/notifications/suggestions-notification/suggestions-notification.component.ts index 107da67fce..8621ad5a09 100644 --- a/src/app/notifications/suggestions-notification/suggestions-notification.component.ts +++ b/src/app/notifications/suggestions-notification/suggestions-notification.component.ts @@ -4,6 +4,9 @@ import { SuggestionTargetsStateService } from '../suggestion-targets/suggestion- import { SuggestionsService } from '../suggestions.service'; import { Observable } from 'rxjs'; import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model'; +import { RouterLink } from '@angular/router'; +import { TranslateModule } from '@ngx-translate/core'; +import { AsyncPipe, NgForOf, NgIf } from '@angular/common'; /** * Show suggestions notification, used on myDSpace and Profile pages @@ -11,6 +14,14 @@ import { SuggestionTarget } from '../../core/notifications/models/suggestion-tar @Component({ selector: 'ds-suggestions-notification', templateUrl: './suggestions-notification.component.html', + standalone: true, + imports: [ + RouterLink, + TranslateModule, + AsyncPipe, + NgIf, + NgForOf + ], styleUrls: ['./suggestions-notification.component.scss'] }) export class SuggestionsNotificationComponent implements OnInit { diff --git a/src/app/notifications/suggestions-popup/suggestions-popup.component.ts b/src/app/notifications/suggestions-popup/suggestions-popup.component.ts index 1921c4fe93..ed9ac87f93 100644 --- a/src/app/notifications/suggestions-popup/suggestions-popup.component.ts +++ b/src/app/notifications/suggestions-popup/suggestions-popup.component.ts @@ -9,6 +9,9 @@ import { trigger } from '@angular/animations'; import { fromTopEnter } from '../../shared/animations/fromTop'; import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model'; +import { AsyncPipe, NgForOf, NgIf } from '@angular/common'; +import { TranslateModule } from '@ngx-translate/core'; +import { RouterLink } from '@angular/router'; /** * Show suggestions on a popover window, used on the homepage @@ -22,6 +25,14 @@ import { SuggestionTarget } from '../../core/notifications/models/suggestion-tar fromTopEnter ]) ], + imports: [ + AsyncPipe, + TranslateModule, + RouterLink, + NgIf, + NgForOf + ], + standalone: true }) export class SuggestionsPopupComponent implements OnInit, OnDestroy { diff --git a/src/app/quality-assurance-notifications-pages/notifications-pages-routes.ts b/src/app/quality-assurance-notifications-pages/notifications-pages-routes.ts new file mode 100644 index 0000000000..27b587286e --- /dev/null +++ b/src/app/quality-assurance-notifications-pages/notifications-pages-routes.ts @@ -0,0 +1,140 @@ +import { Route } from '@angular/router'; + +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver'; +import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service'; +import { + NOTIFICATIONS_RECITER_SUGGESTION_PATH, + QUALITY_ASSURANCE_EDIT_PATH +} from './notifications-pages-routing-paths'; +import { + NotificationsSuggestionTargetsPageComponent +} from './notifications-suggestion-targets-page/notifications-suggestion-targets-page.component'; +import { + AdminNotificationsPublicationClaimPageResolver +} from './notifications-suggestion-targets-page/notifications-suggestion-targets-page-resolver.service'; +import { + QualityAssuranceTopicsPageComponent +} from './quality-assurance-topics-page/quality-assurance-topics-page.component'; +import { + QualityAssuranceEventsPageComponent +} from './quality-assurance-events-page/quality-assurance-events-page.component'; +import { + QualityAssuranceTopicsPageResolver +} from './quality-assurance-topics-page/quality-assurance-topics-page-resolver.service'; +import { + QualityAssuranceEventsPageResolver +} from './quality-assurance-events-page/quality-assurance-events-page.resolver'; +import { + QualityAssuranceSourcePageComponent +} from './quality-assurance-source-page-component/quality-assurance-source-page.component'; +import { + QualityAssuranceSourcePageResolver +} from './quality-assurance-source-page-component/quality-assurance-source-page-resolver.service'; +import { QualityAssuranceBreadcrumbResolver } from '../core/breadcrumbs/quality-assurance-breadcrumb.resolver'; +import { QualityAssuranceBreadcrumbService } from '../core/breadcrumbs/quality-assurance-breadcrumb.service'; +import { SourceDataResolver } from './quality-assurance-source-page-component/quality-assurance-source-data.resolver'; + +const providers = [ + I18nBreadcrumbResolver, + I18nBreadcrumbsService, + AdminNotificationsPublicationClaimPageResolver, + SourceDataResolver, + QualityAssuranceSourcePageResolver, + QualityAssuranceTopicsPageResolver, + QualityAssuranceEventsPageResolver, + QualityAssuranceSourcePageResolver, + QualityAssuranceBreadcrumbResolver, + QualityAssuranceBreadcrumbService +]; + +export const ROUTES: Route[] = [ + { + canActivate: [AuthenticatedGuard], + path: `${NOTIFICATIONS_RECITER_SUGGESTION_PATH}`, + component: NotificationsSuggestionTargetsPageComponent, + pathMatch: 'full', + providers, + resolve: { + breadcrumb: I18nBreadcrumbResolver, + reciterSuggestionTargetParams: AdminNotificationsPublicationClaimPageResolver + }, + data: { + title: 'admin.notifications.recitersuggestion.page.title', + breadcrumbKey: 'admin.notifications.recitersuggestion', + showBreadcrumbsFluid: false + } + }, + { + canActivate: [AuthenticatedGuard], + path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId`, + component: QualityAssuranceTopicsPageComponent, + pathMatch: 'full', + providers, + resolve: { + breadcrumb: QualityAssuranceBreadcrumbResolver, + openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver + }, + data: { + title: 'admin.quality-assurance.page.title', + breadcrumbKey: 'admin.quality-assurance', + showBreadcrumbsFluid: false + } + }, + { + canActivate: [AuthenticatedGuard], + path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/target/:targetId`, + component: QualityAssuranceTopicsPageComponent, + pathMatch: 'full', + providers, + resolve: { + breadcrumb: I18nBreadcrumbResolver, + openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver + }, + data: { + title: 'admin.quality-assurance.page.title', + breadcrumbKey: 'admin.quality-assurance', + showBreadcrumbsFluid: false + } + }, + { + canActivate: [AuthenticatedGuard], + path: `${QUALITY_ASSURANCE_EDIT_PATH}`, + component: QualityAssuranceSourcePageComponent, + pathMatch: 'full', + providers, + resolve: { + breadcrumb: I18nBreadcrumbResolver, + openaireQualityAssuranceSourceParams: QualityAssuranceSourcePageResolver, + sourceData: SourceDataResolver + }, + data: { + title: 'admin.notifications.source.breadcrumbs', + breadcrumbKey: 'admin.notifications.source', + showBreadcrumbsFluid: false + } + }, + { + canActivate: [AuthenticatedGuard], + path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/:topicId`, + component: QualityAssuranceEventsPageComponent, + pathMatch: 'full', + providers, + resolve: { + breadcrumb: QualityAssuranceBreadcrumbResolver, + openaireQualityAssuranceEventsParams: QualityAssuranceEventsPageResolver + }, + data: { + title: 'admin.notifications.event.page.title', + breadcrumbKey: 'admin.notifications.event', + showBreadcrumbsFluid: false + } + } +]; + +/** + * Routing module for the Notifications section of the admin sidebar + */ +export class NotificationsPageRoutingModule { + +} diff --git a/src/app/quality-assurance-notifications-pages/notifications-pages-routing.module.ts b/src/app/quality-assurance-notifications-pages/notifications-pages-routing.module.ts deleted file mode 100644 index c57b22a028..0000000000 --- a/src/app/quality-assurance-notifications-pages/notifications-pages-routing.module.ts +++ /dev/null @@ -1,122 +0,0 @@ -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; - -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver'; -import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service'; -import { NOTIFICATIONS_RECITER_SUGGESTION_PATH } from './notifications-pages-routing-paths'; -import { NotificationsSuggestionTargetsPageComponent } from './notifications-suggestion-targets-page/notifications-suggestion-targets-page.component'; -import { AdminNotificationsPublicationClaimPageResolver } from './notifications-suggestion-targets-page/notifications-suggestion-targets-page-resolver.service'; -import { QUALITY_ASSURANCE_EDIT_PATH } from './notifications-pages-routing-paths'; -import { QualityAssuranceTopicsPageComponent } from './quality-assurance-topics-page/quality-assurance-topics-page.component'; -import { QualityAssuranceEventsPageComponent } from './quality-assurance-events-page/quality-assurance-events-page.component'; -import { QualityAssuranceTopicsPageResolver } from './quality-assurance-topics-page/quality-assurance-topics-page-resolver.service'; -import { QualityAssuranceEventsPageResolver } from './quality-assurance-events-page/quality-assurance-events-page.resolver'; -import { QualityAssuranceSourcePageComponent } from './quality-assurance-source-page-component/quality-assurance-source-page.component'; -import { QualityAssuranceSourcePageResolver } from './quality-assurance-source-page-component/quality-assurance-source-page-resolver.service'; -import { QualityAssuranceBreadcrumbResolver } from '../core/breadcrumbs/quality-assurance-breadcrumb.resolver'; -import { QualityAssuranceBreadcrumbService } from '../core/breadcrumbs/quality-assurance-breadcrumb.service'; -import { - SourceDataResolver -} from './quality-assurance-source-page-component/quality-assurance-source-data.resolver'; - -@NgModule({ - imports: [ - RouterModule.forChild([ - { - canActivate: [ AuthenticatedGuard ], - path: `${NOTIFICATIONS_RECITER_SUGGESTION_PATH}`, - component: NotificationsSuggestionTargetsPageComponent, - pathMatch: 'full', - resolve: { - breadcrumb: I18nBreadcrumbResolver, - reciterSuggestionTargetParams: AdminNotificationsPublicationClaimPageResolver - }, - data: { - title: 'admin.notifications.recitersuggestion.page.title', - breadcrumbKey: 'admin.notifications.recitersuggestion', - showBreadcrumbsFluid: false - } - }, - { - canActivate: [ AuthenticatedGuard ], - path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId`, - component: QualityAssuranceTopicsPageComponent, - pathMatch: 'full', - resolve: { - breadcrumb: QualityAssuranceBreadcrumbResolver, - openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver - }, - data: { - title: 'admin.quality-assurance.page.title', - breadcrumbKey: 'admin.quality-assurance', - showBreadcrumbsFluid: false - } - }, - { - canActivate: [ AuthenticatedGuard ], - path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/target/:targetId`, - component: QualityAssuranceTopicsPageComponent, - pathMatch: 'full', - resolve: { - breadcrumb: I18nBreadcrumbResolver, - openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver - }, - data: { - title: 'admin.quality-assurance.page.title', - breadcrumbKey: 'admin.quality-assurance', - showBreadcrumbsFluid: false - } - }, - { - canActivate: [ AuthenticatedGuard ], - path: `${QUALITY_ASSURANCE_EDIT_PATH}`, - component: QualityAssuranceSourcePageComponent, - pathMatch: 'full', - resolve: { - breadcrumb: I18nBreadcrumbResolver, - openaireQualityAssuranceSourceParams: QualityAssuranceSourcePageResolver, - sourceData: SourceDataResolver - }, - data: { - title: 'admin.notifications.source.breadcrumbs', - breadcrumbKey: 'admin.notifications.source', - showBreadcrumbsFluid: false - } - }, - { - canActivate: [ AuthenticatedGuard ], - path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/:topicId`, - component: QualityAssuranceEventsPageComponent, - pathMatch: 'full', - resolve: { - breadcrumb: QualityAssuranceBreadcrumbResolver, - openaireQualityAssuranceEventsParams: QualityAssuranceEventsPageResolver - }, - data: { - title: 'admin.notifications.event.page.title', - breadcrumbKey: 'admin.notifications.event', - showBreadcrumbsFluid: false - } - } - ]) - ], - providers: [ - I18nBreadcrumbResolver, - I18nBreadcrumbsService, - AdminNotificationsPublicationClaimPageResolver, - SourceDataResolver, - QualityAssuranceSourcePageResolver, - QualityAssuranceTopicsPageResolver, - QualityAssuranceEventsPageResolver, - QualityAssuranceSourcePageResolver, - QualityAssuranceBreadcrumbResolver, - QualityAssuranceBreadcrumbService - ] -}) -/** - * Routing module for the Notifications section of the admin sidebar - */ -export class NotificationsPageRoutingModule { - -} diff --git a/src/app/quality-assurance-notifications-pages/notifications-pages.module.ts b/src/app/quality-assurance-notifications-pages/notifications-pages.module.ts index bf5c608bf7..0301279c69 100644 --- a/src/app/quality-assurance-notifications-pages/notifications-pages.module.ts +++ b/src/app/quality-assurance-notifications-pages/notifications-pages.module.ts @@ -1,27 +1,22 @@ import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; -import { NotificationsPageRoutingModule } from './notifications-pages-routing.module'; import { NotificationsSuggestionTargetsPageComponent } from './notifications-suggestion-targets-page/notifications-suggestion-targets-page.component'; import { QualityAssuranceTopicsPageComponent } from './quality-assurance-topics-page/quality-assurance-topics-page.component'; import { QualityAssuranceEventsPageComponent } from './quality-assurance-events-page/quality-assurance-events-page.component'; import { QualityAssuranceSourcePageComponent } from './quality-assurance-source-page-component/quality-assurance-source-page.component'; import { NotificationsModule } from '../notifications/notifications.module'; -import { SharedModule } from '../shared/shared.module'; import { CoreModule } from '../core/core.module'; @NgModule({ imports: [ CommonModule, - SharedModule, CoreModule.forRoot(), - NotificationsPageRoutingModule, - NotificationsModule + NotificationsModule, + QualityAssuranceEventsPageComponent, + QualityAssuranceTopicsPageComponent ], declarations: [ - NotificationsSuggestionTargetsPageComponent, - QualityAssuranceTopicsPageComponent, - QualityAssuranceEventsPageComponent, QualityAssuranceSourcePageComponent ], entryComponents: [] diff --git a/src/app/quality-assurance-notifications-pages/notifications-suggestion-targets-page/notifications-suggestion-targets-page.component.ts b/src/app/quality-assurance-notifications-pages/notifications-suggestion-targets-page/notifications-suggestion-targets-page.component.ts index 65b7f7667e..012ac60957 100644 --- a/src/app/quality-assurance-notifications-pages/notifications-suggestion-targets-page/notifications-suggestion-targets-page.component.ts +++ b/src/app/quality-assurance-notifications-pages/notifications-suggestion-targets-page/notifications-suggestion-targets-page.component.ts @@ -1,9 +1,16 @@ import { Component } from '@angular/core'; +import { + PublicationClaimComponent +} from '../../notifications/suggestion-targets/publication-claim/publication-claim.component'; @Component({ selector: 'ds-notifications-reciter-page', templateUrl: './notifications-suggestion-targets-page.component.html', - styleUrls: ['./notifications-suggestion-targets-page.component.scss'] + styleUrls: ['./notifications-suggestion-targets-page.component.scss'], + imports: [ + PublicationClaimComponent + ], + standalone: true }) export class NotificationsSuggestionTargetsPageComponent {