mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 18:14:17 +00:00
resolve conflicts after main alignment
This commit is contained in:
@@ -313,7 +313,10 @@ export class LdnServiceFormComponent implements OnInit, OnDestroy {
|
||||
*/
|
||||
selectInboundItemFilter(filterValue: string, index: number): void {
|
||||
const filterArray = (this.formModel.get('notifyServiceInboundPatterns') as FormArray);
|
||||
filterArray.controls[index].patchValue({constraint: filterValue, constraintFormatted: this.translateService.instant(filterValue + '.label')});
|
||||
filterArray.controls[index].patchValue({
|
||||
constraint: filterValue,
|
||||
constraintFormatted: this.translateService.instant((filterValue !== '' ? filterValue : 'ldn.no-filter') + '.label')
|
||||
});
|
||||
filterArray.markAllAsTouched();
|
||||
}
|
||||
|
||||
|
@@ -6,22 +6,37 @@ import { I18nBreadcrumbResolver } from '../../core/breadcrumbs/i18n-breadcrumb.r
|
||||
import { I18nBreadcrumbsService } from '../../core/breadcrumbs/i18n-breadcrumbs.service';
|
||||
import { PUBLICATION_CLAIMS_PATH } from './admin-notifications-routing-paths';
|
||||
import { AdminNotificationsPublicationClaimPageComponent } from './admin-notifications-publication-claim-page/admin-notifications-publication-claim-page.component';
|
||||
import { AdminNotificationsPublicationClaimPageResolver } from './admin-notifications-publication-claim-page/admin-notifications-publication-claim-page-resolver.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 {
|
||||
SiteAdministratorGuard
|
||||
} from '../../core/data/feature-authorization/feature-authorization-guard/site-administrator.guard';
|
||||
import { QualityAssuranceBreadcrumbResolver } from '../../core/breadcrumbs/quality-assurance-breadcrumb.resolver';
|
||||
import { QualityAssuranceBreadcrumbService } from '../../core/breadcrumbs/quality-assurance-breadcrumb.service';
|
||||
import {
|
||||
QualityAssuranceEventsPageResolver
|
||||
} from '../../quality-assurance-notifications-pages/quality-assurance-events-page/quality-assurance-events-page.resolver';
|
||||
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 {
|
||||
QualityAssuranceTopicsPageResolver
|
||||
} from '../../quality-assurance-notifications-pages/quality-assurance-topics-page/quality-assurance-topics-page-resolver.service';
|
||||
import {
|
||||
QualityAssuranceSourcePageComponent
|
||||
} from '../../quality-assurance-notifications-pages/quality-assurance-source-page-component/quality-assurance-source-page.component';
|
||||
import {
|
||||
QualityAssuranceSourcePageResolver
|
||||
} from '../../quality-assurance-notifications-pages/quality-assurance-source-page-component/quality-assurance-source-page-resolver.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 {
|
||||
QualityAssuranceEventsPageComponent
|
||||
} from '../../quality-assurance-notifications-pages/quality-assurance-events-page/quality-assurance-events-page.component';
|
||||
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
@@ -44,11 +59,11 @@ import {
|
||||
{
|
||||
canActivate: [ AuthenticatedGuard ],
|
||||
path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId`,
|
||||
component: AdminQualityAssuranceTopicsPageComponent,
|
||||
component: QualityAssuranceTopicsPageComponent,
|
||||
pathMatch: 'full',
|
||||
resolve: {
|
||||
breadcrumb: QualityAssuranceBreadcrumbResolver,
|
||||
openaireQualityAssuranceTopicsParams: AdminQualityAssuranceTopicsPageResolver
|
||||
openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver
|
||||
},
|
||||
data: {
|
||||
title: 'admin.quality-assurance.page.title',
|
||||
@@ -59,11 +74,11 @@ import {
|
||||
{
|
||||
canActivate: [ AuthenticatedGuard ],
|
||||
path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/target/:targetId`,
|
||||
component: AdminQualityAssuranceTopicsPageComponent,
|
||||
component: QualityAssuranceTopicsPageComponent,
|
||||
pathMatch: 'full',
|
||||
resolve: {
|
||||
breadcrumb: I18nBreadcrumbResolver,
|
||||
openaireQualityAssuranceTopicsParams: AdminQualityAssuranceTopicsPageResolver
|
||||
openaireQualityAssuranceTopicsParams: QualityAssuranceTopicsPageResolver
|
||||
},
|
||||
data: {
|
||||
title: 'admin.quality-assurance.page.title',
|
||||
@@ -74,11 +89,11 @@ import {
|
||||
{
|
||||
canActivate: [ SiteAdministratorGuard ],
|
||||
path: `${QUALITY_ASSURANCE_EDIT_PATH}`,
|
||||
component: AdminQualityAssuranceSourcePageComponent,
|
||||
component: QualityAssuranceSourcePageComponent,
|
||||
pathMatch: 'full',
|
||||
resolve: {
|
||||
breadcrumb: I18nBreadcrumbResolver,
|
||||
openaireQualityAssuranceSourceParams: AdminQualityAssuranceSourcePageResolver,
|
||||
openaireQualityAssuranceSourceParams: QualityAssuranceSourcePageResolver,
|
||||
sourceData: SourceDataResolver
|
||||
},
|
||||
data: {
|
||||
@@ -90,11 +105,11 @@ import {
|
||||
{
|
||||
canActivate: [ AuthenticatedGuard ],
|
||||
path: `${QUALITY_ASSURANCE_EDIT_PATH}/:sourceId/:topicId`,
|
||||
component: AdminQualityAssuranceEventsPageComponent,
|
||||
component: QualityAssuranceEventsPageComponent,
|
||||
pathMatch: 'full',
|
||||
resolve: {
|
||||
breadcrumb: QualityAssuranceBreadcrumbResolver,
|
||||
openaireQualityAssuranceEventsParams: AdminQualityAssuranceEventsPageResolver
|
||||
openaireQualityAssuranceEventsParams: QualityAssuranceEventsPageResolver
|
||||
},
|
||||
data: {
|
||||
title: 'admin.notifications.event.page.title',
|
||||
@@ -109,10 +124,10 @@ import {
|
||||
I18nBreadcrumbsService,
|
||||
AdminNotificationsPublicationClaimPageResolver,
|
||||
SourceDataResolver,
|
||||
AdminQualityAssuranceSourcePageResolver,
|
||||
AdminQualityAssuranceTopicsPageResolver,
|
||||
AdminQualityAssuranceEventsPageResolver,
|
||||
AdminQualityAssuranceSourcePageResolver,
|
||||
QualityAssuranceSourcePageResolver,
|
||||
QualityAssuranceTopicsPageResolver,
|
||||
QualityAssuranceEventsPageResolver,
|
||||
QualityAssuranceSourcePageResolver,
|
||||
QualityAssuranceBreadcrumbResolver,
|
||||
QualityAssuranceBreadcrumbService
|
||||
]
|
||||
|
@@ -4,11 +4,17 @@ import { getQualityAssuranceEditRoute } from './admin-notifications/admin-notifi
|
||||
|
||||
export const REGISTRIES_MODULE_PATH = 'registries';
|
||||
export const NOTIFICATIONS_MODULE_PATH = 'notifications';
|
||||
export const LDN_PATH = 'ldn';
|
||||
|
||||
|
||||
export function getRegistriesModuleRoute() {
|
||||
return new URLCombiner(getAdminModuleRoute(), REGISTRIES_MODULE_PATH).toString();
|
||||
}
|
||||
|
||||
export function getLdnServicesModuleRoute() {
|
||||
return new URLCombiner(getAdminModuleRoute(), LDN_PATH).toString();
|
||||
}
|
||||
|
||||
export function getNotificationsModuleRoute() {
|
||||
return new URLCombiner(getAdminModuleRoute(), NOTIFICATIONS_MODULE_PATH).toString();
|
||||
}
|
||||
|
@@ -6,7 +6,7 @@ import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.reso
|
||||
import { AdminWorkflowPageComponent } from './admin-workflow-page/admin-workflow-page.component';
|
||||
import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service';
|
||||
import { AdminCurationTasksComponent } from './admin-curation-tasks/admin-curation-tasks.component';
|
||||
import { REGISTRIES_MODULE_PATH } from './admin-routing-paths';
|
||||
import { LDN_PATH, NOTIFICATIONS_MODULE_PATH, REGISTRIES_MODULE_PATH } from './admin-routing-paths';
|
||||
import { BatchImportPageComponent } from './admin-import-batch-page/batch-import-page.component';
|
||||
import {
|
||||
SiteAdministratorGuard
|
||||
@@ -15,6 +15,11 @@ import {
|
||||
@NgModule({
|
||||
imports: [
|
||||
RouterModule.forChild([
|
||||
{
|
||||
path: NOTIFICATIONS_MODULE_PATH,
|
||||
loadChildren: () => import('./admin-notifications/admin-notifications.module')
|
||||
.then((m) => m.AdminNotificationsModule),
|
||||
},
|
||||
{
|
||||
path: REGISTRIES_MODULE_PATH,
|
||||
loadChildren: () => import('./admin-registries/admin-registries.module')
|
||||
@@ -63,6 +68,17 @@ import {
|
||||
data: {title: 'admin.system-wide-alert.title', breadcrumbKey: 'admin.system-wide-alert'},
|
||||
canActivate: [SiteAdministratorGuard]
|
||||
},
|
||||
{
|
||||
path: LDN_PATH,
|
||||
children: [
|
||||
{ path: '', pathMatch: 'full', redirectTo: 'services' },
|
||||
{
|
||||
path: 'services',
|
||||
loadChildren: () => import('./admin-ldn-services/admin-ldn-services.module')
|
||||
.then((m) => m.AdminLdnServicesModule),
|
||||
}
|
||||
],
|
||||
},
|
||||
])
|
||||
],
|
||||
providers: [
|
||||
|
@@ -2,10 +2,7 @@ import { Breadcrumb } from '../../breadcrumbs/breadcrumb/breadcrumb.model';
|
||||
import { BreadcrumbsProviderService } from './breadcrumbsProviderService';
|
||||
import { Observable, of as observableOf } from 'rxjs';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { map } from 'rxjs/operators';
|
||||
import { getFirstCompletedRemoteData } from '../shared/operators';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { QualityAssuranceTopicDataService } from '../notifications/qa/topics/quality-assurance-topic-data.service';
|
||||
|
||||
|
||||
|
||||
@@ -19,7 +16,6 @@ export class QualityAssuranceBreadcrumbService implements BreadcrumbsProviderSer
|
||||
|
||||
private QUALITY_ASSURANCE_BREADCRUMB_KEY = 'admin.quality-assurance.breadcrumbs';
|
||||
constructor(
|
||||
protected qualityAssuranceService: QualityAssuranceTopicDataService,
|
||||
private translationService: TranslateService,
|
||||
) {
|
||||
|
||||
@@ -32,18 +28,14 @@ export class QualityAssuranceBreadcrumbService implements BreadcrumbsProviderSer
|
||||
* @param url The url to use as a link for this breadcrumb
|
||||
*/
|
||||
getBreadcrumbs(key: string, url: string): Observable<Breadcrumb[]> {
|
||||
const sourceId = key.split(':')[0];
|
||||
const topicId = key.split(':')[2];
|
||||
const args = key.split(':');
|
||||
const sourceId = args[0];
|
||||
const topicId = args.length > 2 ? args[args.length - 1] : args[1];
|
||||
|
||||
if (topicId) {
|
||||
return this.qualityAssuranceService.getTopic(topicId).pipe(
|
||||
getFirstCompletedRemoteData(),
|
||||
map((topic) => {
|
||||
return [new Breadcrumb(this.translationService.instant(this.QUALITY_ASSURANCE_BREADCRUMB_KEY), url),
|
||||
return observableOf( [new Breadcrumb(this.translationService.instant(this.QUALITY_ASSURANCE_BREADCRUMB_KEY), url),
|
||||
new Breadcrumb(sourceId, `${url}${sourceId}`),
|
||||
new Breadcrumb(topicId.replace(/[!:]/g, '/'), undefined)];
|
||||
})
|
||||
);
|
||||
new Breadcrumb(topicId, undefined)]);
|
||||
} else {
|
||||
return observableOf([new Breadcrumb(this.translationService.instant(this.QUALITY_ASSURANCE_BREADCRUMB_KEY), url),
|
||||
new Breadcrumb(sourceId, `${url}${sourceId}`)]);
|
||||
|
@@ -186,8 +186,18 @@ import { ValueListBrowseDefinition } from './shared/value-list-browse-definition
|
||||
import { NonHierarchicalBrowseDefinition } from './shared/non-hierarchical-browse-definition';
|
||||
import { BulkAccessConditionOptions } from './config/models/bulk-access-condition-options.model';
|
||||
import { CorrectionTypeDataService } from './submission/correctiontype-data.service';
|
||||
import { SuggestionTarget } from './suggestion-notifications/models/suggestion-target.model';
|
||||
import { SuggestionSource } from './suggestion-notifications/models/suggestion-source.model';
|
||||
import { LdnServicesService } from '../admin/admin-ldn-services/ldn-services-data/ldn-services-data.service';
|
||||
import { LdnItemfiltersService } from '../admin/admin-ldn-services/ldn-services-data/ldn-itemfilters-data.service';
|
||||
import {
|
||||
CoarNotifyConfigDataService
|
||||
} from '../submission/sections/section-coar-notify/coar-notify-config-data.service';
|
||||
import { NotifyRequestsStatusDataService } from './data/notify-services-status-data.service';
|
||||
import { SuggestionTarget } from './notifications/models/suggestion-target.model';
|
||||
import { SuggestionSource } from './notifications/models/suggestion-source.model';
|
||||
import { NotifyRequestsStatus } from '../item-page/simple/notify-requests-status/notify-requests-status.model';
|
||||
import { LdnService } from '../admin/admin-ldn-services/ldn-services-model/ldn-services.model';
|
||||
import { Itemfilter } from '../admin/admin-ldn-services/ldn-services-model/ldn-service-itemfilters';
|
||||
import { SubmissionCoarNotifyConfig } from '../submission/sections/section-coar-notify/submission-coar-notify.config';
|
||||
|
||||
/**
|
||||
* When not in production, endpoint responses can be mocked for testing purposes
|
||||
@@ -311,7 +321,11 @@ const PROVIDERS = [
|
||||
OrcidQueueDataService,
|
||||
OrcidHistoryDataService,
|
||||
SupervisionOrderDataService,
|
||||
CorrectionTypeDataService
|
||||
CorrectionTypeDataService,
|
||||
LdnServicesService,
|
||||
LdnItemfiltersService,
|
||||
CoarNotifyConfigDataService,
|
||||
NotifyRequestsStatusDataService
|
||||
];
|
||||
|
||||
/**
|
||||
@@ -392,7 +406,11 @@ export const models =
|
||||
ItemRequest,
|
||||
BulkAccessConditionOptions,
|
||||
SuggestionTarget,
|
||||
SuggestionSource
|
||||
SuggestionSource,
|
||||
LdnService,
|
||||
Itemfilter,
|
||||
SubmissionCoarNotifyConfig,
|
||||
NotifyRequestsStatus,
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
|
@@ -27,29 +27,20 @@ import {
|
||||
QualityAssuranceSourceDataService
|
||||
} from '../core/notifications/qa/source/quality-assurance-source-data.service';
|
||||
import { EPersonDataComponent } from './qa/events/ePerson-data/ePerson-data.component';
|
||||
import { PublicationClaimComponent } from '../suggestion-notifications/suggestion-targets/publication-claim/publication-claim.component';
|
||||
import { SuggestionActionsComponent } from '../suggestion-notifications/suggestion-actions/suggestion-actions.component';
|
||||
import {
|
||||
SuggestionListElementComponent
|
||||
} from '../suggestion-notifications/suggestion-list-element/suggestion-list-element.component';
|
||||
import { SuggestionActionsComponent } from './suggestion-actions/suggestion-actions.component';
|
||||
import { PublicationClaimComponent } from './suggestion-targets/publication-claim/publication-claim.component';
|
||||
import { SuggestionListElementComponent } from './suggestion-list-element/suggestion-list-element.component';
|
||||
import {
|
||||
SuggestionEvidencesComponent
|
||||
} from '../suggestion-notifications/suggestion-list-element/suggestion-evidences/suggestion-evidences.component';
|
||||
import { SuggestionsPopupComponent } from '../suggestion-notifications/suggestions-popup/suggestions-popup.component';
|
||||
import {
|
||||
SuggestionsNotificationComponent
|
||||
} from '../suggestion-notifications/suggestions-notification/suggestions-notification.component';
|
||||
import { SuggestionsService } from '../suggestion-notifications/suggestions.service';
|
||||
import { SuggestionsDataService } from '../core/suggestion-notifications/suggestions-data.service';
|
||||
import {
|
||||
SuggestionSourceDataService
|
||||
} from '../core/suggestion-notifications/source/suggestion-source-data.service';
|
||||
import {
|
||||
SuggestionTargetDataService
|
||||
} from '../core/suggestion-notifications/target/suggestion-target-data.service';
|
||||
import {
|
||||
SuggestionTargetsStateService
|
||||
} from '../suggestion-notifications/suggestion-targets/suggestion-targets.state.service';
|
||||
} from './suggestion-list-element/suggestion-evidences/suggestion-evidences.component';
|
||||
import { SuggestionsPopupComponent } from './suggestions-popup/suggestions-popup.component';
|
||||
import { SuggestionsNotificationComponent } from './suggestions-notification/suggestions-notification.component';
|
||||
import { SuggestionsService } from './suggestions.service';
|
||||
import { SuggestionSourceDataService } from '../core/notifications/source/suggestion-source-data.service';
|
||||
import { SuggestionTargetDataService } from '../core/notifications/target/suggestion-target-data.service';
|
||||
import { SuggestionTargetsStateService } from './suggestion-targets/suggestion-targets.state.service';
|
||||
import { SuggestionsDataService } from '../core/notifications/suggestions-data.service';
|
||||
|
||||
|
||||
|
||||
const MODULES = [
|
||||
|
@@ -26,7 +26,7 @@ import {
|
||||
ProjectEntryImportModalComponent,
|
||||
QualityAssuranceEventData
|
||||
} from '../project-entry-import-modal/project-entry-import-modal.component';
|
||||
import { getFirstCompletedRemoteData } from '../../../core/shared/operators';
|
||||
import { getFirstCompletedRemoteData, getRemoteDataPayload } from '../../../core/shared/operators';
|
||||
import { PaginationService } from '../../../core/pagination/pagination.service';
|
||||
import { Item } from '../../../core/shared/item.model';
|
||||
import { FindListOptions } from '../../../core/data/find-list-options.model';
|
||||
@@ -34,6 +34,8 @@ import { AuthorizationDataService } from '../../../core/data/feature-authorizati
|
||||
import { FeatureID } from '../../../core/data/feature-authorization/feature-id';
|
||||
import { NoContent } from '../../../core/shared/NoContent.model';
|
||||
import { environment } from '../../../../environments/environment';
|
||||
import { getItemPageRoute } from '../../../item-page/item-page-routing-paths';
|
||||
import { ItemDataService } from '../../../core/data/item-data.service';
|
||||
|
||||
/**
|
||||
* Component to display the Quality Assurance event list.
|
||||
@@ -119,6 +121,22 @@ export class QualityAssuranceEventsComponent implements OnInit, OnDestroy {
|
||||
*/
|
||||
protected subs: Subscription[] = [];
|
||||
|
||||
/**
|
||||
* The target item id, retrieved from the topic-id composition.
|
||||
*/
|
||||
public targetId: string;
|
||||
|
||||
/**
|
||||
* The URL of the item page/target.
|
||||
*/
|
||||
public itemPageUrl: string;
|
||||
|
||||
/**
|
||||
* Plain topic name (without the source id)
|
||||
*/
|
||||
public selectedTopicName: string;
|
||||
|
||||
|
||||
/**
|
||||
* Observable that emits a boolean value indicating whether the user is an admin.
|
||||
*/
|
||||
@@ -132,6 +150,8 @@ export class QualityAssuranceEventsComponent implements OnInit, OnDestroy {
|
||||
* @param {QualityAssuranceEventDataService} qualityAssuranceEventRestService
|
||||
* @param {PaginationService} paginationService
|
||||
* @param {TranslateService} translateService
|
||||
* @param authorizationService
|
||||
* @param itemService
|
||||
*/
|
||||
constructor(
|
||||
private activatedRoute: ActivatedRoute,
|
||||
@@ -141,6 +161,7 @@ export class QualityAssuranceEventsComponent implements OnInit, OnDestroy {
|
||||
private paginationService: PaginationService,
|
||||
private translateService: TranslateService,
|
||||
private authorizationService: AuthorizationDataService,
|
||||
private itemService: ItemDataService,
|
||||
) {
|
||||
}
|
||||
|
||||
@@ -161,6 +182,10 @@ export class QualityAssuranceEventsComponent implements OnInit, OnDestroy {
|
||||
const regEx = /!/g;
|
||||
this.showTopic = id.replace(regEx, '/');
|
||||
this.topic = id;
|
||||
const splitList = this.showTopic?.split(':');
|
||||
this.targetId = splitList.length > 2 ? splitList.pop() : null;
|
||||
this.selectedTopicName = splitList[1];
|
||||
this.sourceId = splitList[0];
|
||||
return this.getQualityAssuranceEvents();
|
||||
})
|
||||
).subscribe(
|
||||
@@ -471,4 +496,21 @@ export class QualityAssuranceEventsComponent implements OnInit, OnDestroy {
|
||||
delete(qaEvent: QualityAssuranceEventData): Observable<RemoteData<NoContent>> {
|
||||
return this.qualityAssuranceEventRestService.deleteQAEvent(qaEvent);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an Observable that emits the title of the target item.
|
||||
* The target item is retrieved by its ID using the itemService.
|
||||
* The title is extracted from the first metadata value of the item.
|
||||
* The item page URL is also set in the component.
|
||||
* @returns An Observable that emits the title of the target item.
|
||||
*/
|
||||
public getTargetItemTitle(): Observable<string> {
|
||||
return this.itemService.findById(this.targetId).pipe(
|
||||
take(1),
|
||||
getFirstCompletedRemoteData(),
|
||||
getRemoteDataPayload(),
|
||||
tap((item: Item) => this.itemPageUrl = getItemPageRoute(item)),
|
||||
map((item: Item) => item.firstMetadataValue('dc.title'))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@@ -10,9 +10,7 @@ import {
|
||||
import { hasValue } from '../../../shared/empty.util';
|
||||
import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model';
|
||||
import { NotificationsStateService } from '../../notifications-state.service';
|
||||
import {
|
||||
AdminQualityAssuranceTopicsPageParams
|
||||
} from '../../../admin/admin-notifications/admin-quality-assurance-topics-page/admin-quality-assurance-topics-page-resolver.service';
|
||||
|
||||
import { PaginationService } from '../../../core/pagination/pagination.service';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { ItemDataService } from '../../../core/data/item-data.service';
|
||||
@@ -20,6 +18,9 @@ import { getFirstCompletedRemoteData, getRemoteDataPayload } from '../../../core
|
||||
import { Item } from '../../../core/shared/item.model';
|
||||
import { getItemPageRoute } from '../../../item-page/item-page-routing-paths';
|
||||
import { getNotificatioQualityAssuranceRoute } from '../../../admin/admin-routing-paths';
|
||||
import {
|
||||
QualityAssuranceTopicsPageParams
|
||||
} from '../../../quality-assurance-notifications-pages/quality-assurance-topics-page/quality-assurance-topics-page-resolver.service';
|
||||
|
||||
/**
|
||||
* Component to display the Quality Assurance topic list.
|
||||
@@ -79,8 +80,9 @@ export class QualityAssuranceTopicsComponent implements OnInit, OnDestroy, After
|
||||
* Initialize the component variables.
|
||||
* @param {PaginationService} paginationService
|
||||
* @param {ActivatedRoute} activatedRoute
|
||||
* @param itemService
|
||||
* @param {NotificationsStateService} notificationsStateService
|
||||
* @param {QualityAssuranceTopicsService} qualityAssuranceTopicsService
|
||||
* @param router
|
||||
*/
|
||||
constructor(
|
||||
private paginationService: PaginationService,
|
||||
@@ -163,7 +165,7 @@ export class QualityAssuranceTopicsComponent implements OnInit, OnDestroy, After
|
||||
*
|
||||
* @param eventsRouteParams
|
||||
*/
|
||||
protected updatePaginationFromRouteParams(eventsRouteParams: AdminQualityAssuranceTopicsPageParams) {
|
||||
protected updatePaginationFromRouteParams(eventsRouteParams: QualityAssuranceTopicsPageParams) {
|
||||
if (eventsRouteParams.currentPage) {
|
||||
this.paginationConfig.currentPage = eventsRouteParams.currentPage;
|
||||
}
|
||||
|
@@ -286,6 +286,7 @@ import { QualityAssuranceEventDataService } from '../core/notifications/qa/event
|
||||
import { QualityAssuranceSourceDataService } from '../core/notifications/qa/source/quality-assurance-source-data.service';
|
||||
import { DynamicComponentLoaderDirective } from './abstract-component-loader/dynamic-component-loader.directive';
|
||||
import { StartsWithLoaderComponent } from './starts-with/starts-with-loader.component';
|
||||
import { IpV4Validator } from './utils/ipV4.validator';
|
||||
|
||||
const MODULES = [
|
||||
CommonModule,
|
||||
@@ -496,6 +497,7 @@ const DIRECTIVES = [
|
||||
HoverClassDirective,
|
||||
ContextHelpDirective,
|
||||
DynamicComponentLoaderDirective,
|
||||
IpV4Validator,
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
|
@@ -141,9 +141,9 @@ export class SubmissionSectionCoarNotifyComponent extends SectionModelComponent
|
||||
this.operationsBuilder.flushOperation(this.pathCombiner.getPath([pattern, '-']));
|
||||
}
|
||||
|
||||
if (!hasPrevValueStored || (selectedService?.id && hasPrevValueStored)) {
|
||||
if (!hasPrevValueStored || (selectedService?.id && hasPrevValueStored) || (!hasValue(selectedService) && hasPrevValueStored)) {
|
||||
// add the path when there is no previous value stored
|
||||
this.operationsBuilder.add(this.pathCombiner.getPath([pattern, '-']), [selectedService.id], false, true);
|
||||
this.operationsBuilder.add(this.pathCombiner.getPath([pattern, '-']), hasValue(selectedService) ? [selectedService.id] : [], false, true);
|
||||
}
|
||||
// set the previous value to the new value
|
||||
this.previousServices[pattern].services[index] = this.ldnServiceByPattern[pattern].services[index];
|
||||
|
@@ -6097,4 +6097,6 @@
|
||||
"filter.search.text.placeholder": "Search text",
|
||||
|
||||
"advancesearch.form.submit": "Add",
|
||||
|
||||
"ldn.no-filter.label": "None",
|
||||
}
|
||||
|
Reference in New Issue
Block a user