mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-15 22:13:02 +00:00
[DURACOM-271] Renamed and reorganized suggestion data services
This commit is contained in:
@@ -27,12 +27,12 @@ import { WORKSPACEITEM } from './eperson/models/workspaceitem.resource-type';
|
|||||||
import { FEEDBACK } from './feedback/models/feedback.resource-type';
|
import { FEEDBACK } from './feedback/models/feedback.resource-type';
|
||||||
import { METADATA_FIELD } from './metadata/metadata-field.resource-type';
|
import { METADATA_FIELD } from './metadata/metadata-field.resource-type';
|
||||||
import { METADATA_SCHEMA } from './metadata/metadata-schema.resource-type';
|
import { METADATA_SCHEMA } from './metadata/metadata-schema.resource-type';
|
||||||
import { SUGGESTION } from './notifications/models/suggestion-objects.resource-type';
|
|
||||||
import { SUGGESTION_SOURCE } from './notifications/models/suggestion-source-object.resource-type';
|
|
||||||
import { SUGGESTION_TARGET } from './notifications/models/suggestion-target-object.resource-type';
|
|
||||||
import { QUALITY_ASSURANCE_EVENT_OBJECT } from './notifications/qa/models/quality-assurance-event-object.resource-type';
|
import { QUALITY_ASSURANCE_EVENT_OBJECT } from './notifications/qa/models/quality-assurance-event-object.resource-type';
|
||||||
import { QUALITY_ASSURANCE_SOURCE_OBJECT } from './notifications/qa/models/quality-assurance-source-object.resource-type';
|
import { QUALITY_ASSURANCE_SOURCE_OBJECT } from './notifications/qa/models/quality-assurance-source-object.resource-type';
|
||||||
import { QUALITY_ASSURANCE_TOPIC_OBJECT } from './notifications/qa/models/quality-assurance-topic-object.resource-type';
|
import { QUALITY_ASSURANCE_TOPIC_OBJECT } from './notifications/qa/models/quality-assurance-topic-object.resource-type';
|
||||||
|
import { SUGGESTION } from './notifications/suggestions/models/suggestion-objects.resource-type';
|
||||||
|
import { SUGGESTION_SOURCE } from './notifications/suggestions/models/suggestion-source-object.resource-type';
|
||||||
|
import { SUGGESTION_TARGET } from './notifications/suggestions/models/suggestion-target-object.resource-type';
|
||||||
import { ORCID_HISTORY } from './orcid/model/orcid-history.resource-type';
|
import { ORCID_HISTORY } from './orcid/model/orcid-history.resource-type';
|
||||||
import { ORCID_QUEUE } from './orcid/model/orcid-queue.resource-type';
|
import { ORCID_QUEUE } from './orcid/model/orcid-queue.resource-type';
|
||||||
import { RESEARCHER_PROFILE } from './profile/model/researcher-profile.resource-type';
|
import { RESEARCHER_PROFILE } from './profile/model/researcher-profile.resource-type';
|
||||||
@@ -131,9 +131,9 @@ export const LAZY_DATA_SERVICES: LazyDataServicesMap = new Map([
|
|||||||
[QUALITY_ASSURANCE_EVENT_OBJECT.value, () => import('./notifications/qa/events/quality-assurance-event-data.service').then(m => m.QualityAssuranceEventDataService)],
|
[QUALITY_ASSURANCE_EVENT_OBJECT.value, () => import('./notifications/qa/events/quality-assurance-event-data.service').then(m => m.QualityAssuranceEventDataService)],
|
||||||
[QUALITY_ASSURANCE_SOURCE_OBJECT.value, () => import('./notifications/qa/source/quality-assurance-source-data.service').then(m => m.QualityAssuranceSourceDataService)],
|
[QUALITY_ASSURANCE_SOURCE_OBJECT.value, () => import('./notifications/qa/source/quality-assurance-source-data.service').then(m => m.QualityAssuranceSourceDataService)],
|
||||||
[QUALITY_ASSURANCE_TOPIC_OBJECT.value, () => import('./notifications/qa/topics/quality-assurance-topic-data.service').then(m => m.QualityAssuranceTopicDataService)],
|
[QUALITY_ASSURANCE_TOPIC_OBJECT.value, () => import('./notifications/qa/topics/quality-assurance-topic-data.service').then(m => m.QualityAssuranceTopicDataService)],
|
||||||
[SUGGESTION.value, () => import('./notifications/suggestions-data.service').then(m => m.SuggestionsDataService)],
|
[SUGGESTION.value, () => import('./notifications/suggestions/suggestion-data.service').then(m => m.SuggestionDataService)],
|
||||||
[SUGGESTION_SOURCE.value, () => import('./notifications/source/suggestion-source-data.service').then(m => m.SuggestionSourceDataService)],
|
[SUGGESTION_SOURCE.value, () => import('./notifications/suggestions/source/suggestion-source-data.service').then(m => m.SuggestionSourceDataService)],
|
||||||
[SUGGESTION_TARGET.value, () => import('./notifications/target/suggestion-target-data.service').then(m => m.SuggestionTargetDataService)],
|
[SUGGESTION_TARGET.value, () => import('./notifications/suggestions/target/suggestion-target-data.service').then(m => m.SuggestionTargetDataService)],
|
||||||
[DUPLICATE.value, () => import('./submission/submission-duplicate-data.service').then(m => m.SubmissionDuplicateDataService)],
|
[DUPLICATE.value, () => import('./submission/submission-duplicate-data.service').then(m => m.SubmissionDuplicateDataService)],
|
||||||
[CorrectionType.type.value, () => import('./submission/correctiontype-data.service').then(m => m.CorrectionTypeDataService)],
|
[CorrectionType.type.value, () => import('./submission/correctiontype-data.service').then(m => m.CorrectionTypeDataService)],
|
||||||
]);
|
]);
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
import { ResourceType } from '../../shared/resource-type';
|
import { ResourceType } from '../../../shared/resource-type';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The resource type for the Suggestion object
|
* The resource type for the Suggestion object
|
@@ -1,4 +1,4 @@
|
|||||||
import { ResourceType } from '../../shared/resource-type';
|
import { ResourceType } from '../../../shared/resource-type';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The resource type for the Suggestion Source object
|
* The resource type for the Suggestion Source object
|
@@ -3,11 +3,11 @@ import {
|
|||||||
deserialize,
|
deserialize,
|
||||||
} from 'cerialize';
|
} from 'cerialize';
|
||||||
|
|
||||||
import { typedObject } from '../../cache/builders/build-decorators';
|
import { typedObject } from '../../../cache/builders/build-decorators';
|
||||||
import { CacheableObject } from '../../cache/cacheable-object.model';
|
import { CacheableObject } from '../../../cache/cacheable-object.model';
|
||||||
import { HALLink } from '../../shared/hal-link.model';
|
import { HALLink } from '../../../shared/hal-link.model';
|
||||||
import { ResourceType } from '../../shared/resource-type';
|
import { ResourceType } from '../../../shared/resource-type';
|
||||||
import { excludeFromEquals } from '../../utilities/equals.decorators';
|
import { excludeFromEquals } from '../../../utilities/equals.decorators';
|
||||||
import { SUGGESTION_SOURCE } from './suggestion-source-object.resource-type';
|
import { SUGGESTION_SOURCE } from './suggestion-source-object.resource-type';
|
||||||
|
|
||||||
/**
|
/**
|
@@ -1,4 +1,4 @@
|
|||||||
import { ResourceType } from '../../shared/resource-type';
|
import { ResourceType } from '../../../shared/resource-type';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The resource type for the Suggestion Target object
|
* The resource type for the Suggestion Target object
|
@@ -3,11 +3,11 @@ import {
|
|||||||
deserialize,
|
deserialize,
|
||||||
} from 'cerialize';
|
} from 'cerialize';
|
||||||
|
|
||||||
import { typedObject } from '../../cache/builders/build-decorators';
|
import { typedObject } from '../../../cache/builders/build-decorators';
|
||||||
import { CacheableObject } from '../../cache/cacheable-object.model';
|
import { CacheableObject } from '../../../cache/cacheable-object.model';
|
||||||
import { HALLink } from '../../shared/hal-link.model';
|
import { HALLink } from '../../../shared/hal-link.model';
|
||||||
import { ResourceType } from '../../shared/resource-type';
|
import { ResourceType } from '../../../shared/resource-type';
|
||||||
import { excludeFromEquals } from '../../utilities/equals.decorators';
|
import { excludeFromEquals } from '../../../utilities/equals.decorators';
|
||||||
import { SUGGESTION_TARGET } from './suggestion-target-object.resource-type';
|
import { SUGGESTION_TARGET } from './suggestion-target-object.resource-type';
|
||||||
|
|
||||||
/**
|
/**
|
@@ -4,15 +4,15 @@ import {
|
|||||||
deserialize,
|
deserialize,
|
||||||
} from 'cerialize';
|
} from 'cerialize';
|
||||||
|
|
||||||
import { typedObject } from '../../cache/builders/build-decorators';
|
import { typedObject } from '../../../cache/builders/build-decorators';
|
||||||
import { CacheableObject } from '../../cache/cacheable-object.model';
|
import { CacheableObject } from '../../../cache/cacheable-object.model';
|
||||||
import { HALLink } from '../../shared/hal-link.model';
|
import { HALLink } from '../../../shared/hal-link.model';
|
||||||
import {
|
import {
|
||||||
MetadataMap,
|
MetadataMap,
|
||||||
MetadataMapSerializer,
|
MetadataMapSerializer,
|
||||||
} from '../../shared/metadata.models';
|
} from '../../../shared/metadata.models';
|
||||||
import { ResourceType } from '../../shared/resource-type';
|
import { ResourceType } from '../../../shared/resource-type';
|
||||||
import { excludeFromEquals } from '../../utilities/equals.decorators';
|
import { excludeFromEquals } from '../../../utilities/equals.decorators';
|
||||||
import { SUGGESTION } from './suggestion-objects.resource-type';
|
import { SUGGESTION } from './suggestion-objects.resource-type';
|
||||||
|
|
||||||
/**
|
/**
|
@@ -7,21 +7,21 @@ import {
|
|||||||
import { of as observableOf } from 'rxjs';
|
import { of as observableOf } from 'rxjs';
|
||||||
import { TestScheduler } from 'rxjs/testing';
|
import { TestScheduler } from 'rxjs/testing';
|
||||||
|
|
||||||
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../../../shared/notifications/notifications.service';
|
||||||
import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils';
|
import { createSuccessfulRemoteDataObject$ } from '../../../../shared/remote-data.utils';
|
||||||
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../../cache/builders/remote-data-build.service';
|
||||||
import { ObjectCacheService } from '../../cache/object-cache.service';
|
import { ObjectCacheService } from '../../../cache/object-cache.service';
|
||||||
import { RestResponse } from '../../cache/response.models';
|
import { RestResponse } from '../../../cache/response.models';
|
||||||
import { CoreState } from '../../core-state.model';
|
import { CoreState } from '../../../core-state.model';
|
||||||
import { FindAllData } from '../../data/base/find-all-data';
|
import { FindAllData } from '../../../data/base/find-all-data';
|
||||||
import { testFindAllDataImplementation } from '../../data/base/find-all-data.spec';
|
import { testFindAllDataImplementation } from '../../../data/base/find-all-data.spec';
|
||||||
import { DefaultChangeAnalyzer } from '../../data/default-change-analyzer.service';
|
import { DefaultChangeAnalyzer } from '../../../data/default-change-analyzer.service';
|
||||||
import { RemoteData } from '../../data/remote-data';
|
import { RemoteData } from '../../../data/remote-data';
|
||||||
import { GetRequest } from '../../data/request.models';
|
import { GetRequest } from '../../../data/request.models';
|
||||||
import { RequestService } from '../../data/request.service';
|
import { RequestService } from '../../../data/request.service';
|
||||||
import { RequestEntry } from '../../data/request-entry.model';
|
import { RequestEntry } from '../../../data/request-entry.model';
|
||||||
import { RequestEntryState } from '../../data/request-entry-state.model';
|
import { RequestEntryState } from '../../../data/request-entry-state.model';
|
||||||
import { HALEndpointService } from '../../shared/hal-endpoint.service';
|
import { HALEndpointService } from '../../../shared/hal-endpoint.service';
|
||||||
import { SuggestionSource } from '../models/suggestion-source.model';
|
import { SuggestionSource } from '../models/suggestion-source.model';
|
||||||
import { SuggestionSourceDataService } from './suggestion-source-data.service';
|
import { SuggestionSourceDataService } from './suggestion-source-data.service';
|
||||||
|
|
@@ -3,22 +3,22 @@ import { Injectable } from '@angular/core';
|
|||||||
import { Store } from '@ngrx/store';
|
import { Store } from '@ngrx/store';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../../../shared/notifications/notifications.service';
|
||||||
import { FollowLinkConfig } from '../../../shared/utils/follow-link-config.model';
|
import { FollowLinkConfig } from '../../../../shared/utils/follow-link-config.model';
|
||||||
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../../cache/builders/remote-data-build.service';
|
||||||
import { ObjectCacheService } from '../../cache/object-cache.service';
|
import { ObjectCacheService } from '../../../cache/object-cache.service';
|
||||||
import { CoreState } from '../../core-state.model';
|
import { CoreState } from '../../../core-state.model';
|
||||||
import {
|
import {
|
||||||
FindAllData,
|
FindAllData,
|
||||||
FindAllDataImpl,
|
FindAllDataImpl,
|
||||||
} from '../../data/base/find-all-data';
|
} from '../../../data/base/find-all-data';
|
||||||
import { IdentifiableDataService } from '../../data/base/identifiable-data.service';
|
import { IdentifiableDataService } from '../../../data/base/identifiable-data.service';
|
||||||
import { DefaultChangeAnalyzer } from '../../data/default-change-analyzer.service';
|
import { DefaultChangeAnalyzer } from '../../../data/default-change-analyzer.service';
|
||||||
import { FindListOptions } from '../../data/find-list-options.model';
|
import { FindListOptions } from '../../../data/find-list-options.model';
|
||||||
import { PaginatedList } from '../../data/paginated-list.model';
|
import { PaginatedList } from '../../../data/paginated-list.model';
|
||||||
import { RemoteData } from '../../data/remote-data';
|
import { RemoteData } from '../../../data/remote-data';
|
||||||
import { RequestService } from '../../data/request.service';
|
import { RequestService } from '../../../data/request.service';
|
||||||
import { HALEndpointService } from '../../shared/hal-endpoint.service';
|
import { HALEndpointService } from '../../../shared/hal-endpoint.service';
|
||||||
import { SuggestionSource } from '../models/suggestion-source.model';
|
import { SuggestionSource } from '../models/suggestion-source.model';
|
||||||
|
|
||||||
/**
|
/**
|
@@ -6,22 +6,22 @@ import {
|
|||||||
import { of as observableOf } from 'rxjs';
|
import { of as observableOf } from 'rxjs';
|
||||||
import { TestScheduler } from 'rxjs/testing';
|
import { TestScheduler } from 'rxjs/testing';
|
||||||
|
|
||||||
import { NotificationsService } from '../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
||||||
import { createSuccessfulRemoteDataObject$ } from '../../shared/remote-data.utils';
|
import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils';
|
||||||
import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
||||||
import { RequestParam } from '../cache/models/request-param.model';
|
import { RequestParam } from '../../cache/models/request-param.model';
|
||||||
import { ObjectCacheService } from '../cache/object-cache.service';
|
import { ObjectCacheService } from '../../cache/object-cache.service';
|
||||||
import { RestResponse } from '../cache/response.models';
|
import { RestResponse } from '../../cache/response.models';
|
||||||
import { RemoteData } from '../data/remote-data';
|
import { RemoteData } from '../../data/remote-data';
|
||||||
import { RequestService } from '../data/request.service';
|
import { RequestService } from '../../data/request.service';
|
||||||
import { RequestEntry } from '../data/request-entry.model';
|
import { RequestEntry } from '../../data/request-entry.model';
|
||||||
import { RequestEntryState } from '../data/request-entry-state.model';
|
import { RequestEntryState } from '../../data/request-entry-state.model';
|
||||||
import { HALEndpointService } from '../shared/hal-endpoint.service';
|
import { HALEndpointService } from '../../shared/hal-endpoint.service';
|
||||||
import { SuggestionsDataService } from './suggestions-data.service';
|
import { SuggestionDataService } from './suggestion-data.service';
|
||||||
|
|
||||||
describe('SuggestionDataService test', () => {
|
describe('SuggestionDataService test', () => {
|
||||||
let scheduler: TestScheduler;
|
let scheduler: TestScheduler;
|
||||||
let service: SuggestionsDataService;
|
let service: SuggestionDataService;
|
||||||
let requestService: RequestService;
|
let requestService: RequestService;
|
||||||
let rdbService: RemoteDataBuildService;
|
let rdbService: RemoteDataBuildService;
|
||||||
let objectCache: ObjectCacheService;
|
let objectCache: ObjectCacheService;
|
||||||
@@ -40,7 +40,7 @@ describe('SuggestionDataService test', () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
function initTestService() {
|
function initTestService() {
|
||||||
return new SuggestionsDataService(
|
return new SuggestionDataService(
|
||||||
requestService,
|
requestService,
|
||||||
rdbService,
|
rdbService,
|
||||||
objectCache,
|
objectCache,
|
@@ -2,32 +2,31 @@ import { HttpClient } from '@angular/common/http';
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
import { NotificationsService } from '../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
||||||
import { FollowLinkConfig } from '../../shared/utils/follow-link-config.model';
|
import { FollowLinkConfig } from '../../../shared/utils/follow-link-config.model';
|
||||||
import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
||||||
import { RequestParam } from '../cache/models/request-param.model';
|
import { RequestParam } from '../../cache/models/request-param.model';
|
||||||
import { ObjectCacheService } from '../cache/object-cache.service';
|
import { ObjectCacheService } from '../../cache/object-cache.service';
|
||||||
import {
|
import {
|
||||||
DeleteData,
|
DeleteData,
|
||||||
DeleteDataImpl,
|
DeleteDataImpl,
|
||||||
} from '../data/base/delete-data';
|
} from '../../data/base/delete-data';
|
||||||
import { IdentifiableDataService } from '../data/base/identifiable-data.service';
|
import { IdentifiableDataService } from '../../data/base/identifiable-data.service';
|
||||||
import { SearchDataImpl } from '../data/base/search-data';
|
import { SearchDataImpl } from '../../data/base/search-data';
|
||||||
import { FindListOptions } from '../data/find-list-options.model';
|
import { FindListOptions } from '../../data/find-list-options.model';
|
||||||
import { PaginatedList } from '../data/paginated-list.model';
|
import { PaginatedList } from '../../data/paginated-list.model';
|
||||||
import { RemoteData } from '../data/remote-data';
|
import { RemoteData } from '../../data/remote-data';
|
||||||
import { RequestService } from '../data/request.service';
|
import { RequestService } from '../../data/request.service';
|
||||||
import { HALEndpointService } from '../shared/hal-endpoint.service';
|
import { HALEndpointService } from '../../shared/hal-endpoint.service';
|
||||||
import { NoContent } from '../shared/NoContent.model';
|
import { NoContent } from '../../shared/NoContent.model';
|
||||||
import { Suggestion } from './models/suggestion.model';
|
import { Suggestion } from './models/suggestion.model';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The service handling all Suggestion Target REST requests.
|
* The service handling all Suggestion Target REST requests.
|
||||||
*/
|
*/
|
||||||
@Injectable({ providedIn: 'root' })
|
@Injectable({ providedIn: 'root' })
|
||||||
export class SuggestionsDataService extends IdentifiableDataService<Suggestion> {
|
export class SuggestionDataService extends IdentifiableDataService<Suggestion> {
|
||||||
|
|
||||||
protected searchFindBySourceMethod = 'findBySource';
|
|
||||||
protected searchFindByTargetAndSourceMethod = 'findByTargetAndSource';
|
protected searchFindByTargetAndSourceMethod = 'findByTargetAndSource';
|
||||||
|
|
||||||
private deleteData: DeleteData<Suggestion>;
|
private deleteData: DeleteData<Suggestion>;
|
@@ -7,24 +7,24 @@ import {
|
|||||||
import { of as observableOf } from 'rxjs';
|
import { of as observableOf } from 'rxjs';
|
||||||
import { TestScheduler } from 'rxjs/testing';
|
import { TestScheduler } from 'rxjs/testing';
|
||||||
|
|
||||||
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../../../shared/notifications/notifications.service';
|
||||||
import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils';
|
import { createSuccessfulRemoteDataObject$ } from '../../../../shared/remote-data.utils';
|
||||||
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../../cache/builders/remote-data-build.service';
|
||||||
import { RequestParam } from '../../cache/models/request-param.model';
|
import { RequestParam } from '../../../cache/models/request-param.model';
|
||||||
import { ObjectCacheService } from '../../cache/object-cache.service';
|
import { ObjectCacheService } from '../../../cache/object-cache.service';
|
||||||
import { RestResponse } from '../../cache/response.models';
|
import { RestResponse } from '../../../cache/response.models';
|
||||||
import { CoreState } from '../../core-state.model';
|
import { CoreState } from '../../../core-state.model';
|
||||||
import { FindAllData } from '../../data/base/find-all-data';
|
import { FindAllData } from '../../../data/base/find-all-data';
|
||||||
import { testFindAllDataImplementation } from '../../data/base/find-all-data.spec';
|
import { testFindAllDataImplementation } from '../../../data/base/find-all-data.spec';
|
||||||
import { SearchData } from '../../data/base/search-data';
|
import { SearchData } from '../../../data/base/search-data';
|
||||||
import { testSearchDataImplementation } from '../../data/base/search-data.spec';
|
import { testSearchDataImplementation } from '../../../data/base/search-data.spec';
|
||||||
import { DefaultChangeAnalyzer } from '../../data/default-change-analyzer.service';
|
import { DefaultChangeAnalyzer } from '../../../data/default-change-analyzer.service';
|
||||||
import { RemoteData } from '../../data/remote-data';
|
import { RemoteData } from '../../../data/remote-data';
|
||||||
import { GetRequest } from '../../data/request.models';
|
import { GetRequest } from '../../../data/request.models';
|
||||||
import { RequestService } from '../../data/request.service';
|
import { RequestService } from '../../../data/request.service';
|
||||||
import { RequestEntry } from '../../data/request-entry.model';
|
import { RequestEntry } from '../../../data/request-entry.model';
|
||||||
import { RequestEntryState } from '../../data/request-entry-state.model';
|
import { RequestEntryState } from '../../../data/request-entry-state.model';
|
||||||
import { HALEndpointService } from '../../shared/hal-endpoint.service';
|
import { HALEndpointService } from '../../../shared/hal-endpoint.service';
|
||||||
import { SuggestionTarget } from '../models/suggestion-target.model';
|
import { SuggestionTarget } from '../models/suggestion-target.model';
|
||||||
import { SuggestionTargetDataService } from './suggestion-target-data.service';
|
import { SuggestionTargetDataService } from './suggestion-target-data.service';
|
||||||
|
|
@@ -3,27 +3,27 @@ import { Injectable } from '@angular/core';
|
|||||||
import { Store } from '@ngrx/store';
|
import { Store } from '@ngrx/store';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../../../shared/notifications/notifications.service';
|
||||||
import { FollowLinkConfig } from '../../../shared/utils/follow-link-config.model';
|
import { FollowLinkConfig } from '../../../../shared/utils/follow-link-config.model';
|
||||||
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../../cache/builders/remote-data-build.service';
|
||||||
import { RequestParam } from '../../cache/models/request-param.model';
|
import { RequestParam } from '../../../cache/models/request-param.model';
|
||||||
import { ObjectCacheService } from '../../cache/object-cache.service';
|
import { ObjectCacheService } from '../../../cache/object-cache.service';
|
||||||
import { CoreState } from '../../core-state.model';
|
import { CoreState } from '../../../core-state.model';
|
||||||
import {
|
import {
|
||||||
FindAllData,
|
FindAllData,
|
||||||
FindAllDataImpl,
|
FindAllDataImpl,
|
||||||
} from '../../data/base/find-all-data';
|
} from '../../../data/base/find-all-data';
|
||||||
import { IdentifiableDataService } from '../../data/base/identifiable-data.service';
|
import { IdentifiableDataService } from '../../../data/base/identifiable-data.service';
|
||||||
import {
|
import {
|
||||||
SearchData,
|
SearchData,
|
||||||
SearchDataImpl,
|
SearchDataImpl,
|
||||||
} from '../../data/base/search-data';
|
} from '../../../data/base/search-data';
|
||||||
import { DefaultChangeAnalyzer } from '../../data/default-change-analyzer.service';
|
import { DefaultChangeAnalyzer } from '../../../data/default-change-analyzer.service';
|
||||||
import { FindListOptions } from '../../data/find-list-options.model';
|
import { FindListOptions } from '../../../data/find-list-options.model';
|
||||||
import { PaginatedList } from '../../data/paginated-list.model';
|
import { PaginatedList } from '../../../data/paginated-list.model';
|
||||||
import { RemoteData } from '../../data/remote-data';
|
import { RemoteData } from '../../../data/remote-data';
|
||||||
import { RequestService } from '../../data/request.service';
|
import { RequestService } from '../../../data/request.service';
|
||||||
import { HALEndpointService } from '../../shared/hal-endpoint.service';
|
import { HALEndpointService } from '../../../shared/hal-endpoint.service';
|
||||||
import { SuggestionTarget } from '../models/suggestion-target.model';
|
import { SuggestionTarget } from '../models/suggestion-target.model';
|
||||||
|
|
||||||
@Injectable({ providedIn: 'root' })
|
@Injectable({ providedIn: 'root' })
|
||||||
@@ -55,19 +55,26 @@ export class SuggestionTargetDataService extends IdentifiableDataService<Suggest
|
|||||||
* The source for which to find targets.
|
* The source for which to find targets.
|
||||||
* @param options
|
* @param options
|
||||||
* Find list options object.
|
* Find list options object.
|
||||||
|
* @param useCachedVersionIfAvailable
|
||||||
|
* If this is true, the request will only be sent if there's no valid cached version. Defaults to true
|
||||||
|
* @param reRequestOnStale
|
||||||
|
* Whether or not the request should automatically be re-requested
|
||||||
* @param linksToFollow
|
* @param linksToFollow
|
||||||
* List of {@link FollowLinkConfig} that indicate which {@link HALLink}s should be automatically resolved.
|
* List of {@link FollowLinkConfig} that indicate which {@link HALLink}s should be automatically resolved.
|
||||||
|
*
|
||||||
* @return Observable<RemoteData<PaginatedList<SuggestionTarget>>>
|
* @return Observable<RemoteData<PaginatedList<SuggestionTarget>>>
|
||||||
* The list of Suggestion Target.
|
* The list of Suggestion Target.
|
||||||
*/
|
*/
|
||||||
public getTargets(
|
public getTargetsBySource(
|
||||||
source: string,
|
source: string,
|
||||||
options: FindListOptions = {},
|
options: FindListOptions = {},
|
||||||
|
useCachedVersionIfAvailable = true,
|
||||||
|
reRequestOnStale = true,
|
||||||
...linksToFollow: FollowLinkConfig<SuggestionTarget>[]
|
...linksToFollow: FollowLinkConfig<SuggestionTarget>[]
|
||||||
): Observable<RemoteData<PaginatedList<SuggestionTarget>>> {
|
): Observable<RemoteData<PaginatedList<SuggestionTarget>>> {
|
||||||
options.searchParams = [new RequestParam('source', source)];
|
options.searchParams = [new RequestParam('source', source)];
|
||||||
|
|
||||||
return this.searchBy(this.searchFindBySourceMethod, options, true, true, ...linksToFollow);
|
return this.searchBy(this.searchFindBySourceMethod, options, useCachedVersionIfAvailable, reRequestOnStale, ...linksToFollow);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
@@ -30,11 +30,11 @@ import { EPerson } from './eperson/models/eperson.model';
|
|||||||
import { Group } from './eperson/models/group.model';
|
import { Group } from './eperson/models/group.model';
|
||||||
import { MetadataField } from './metadata/metadata-field.model';
|
import { MetadataField } from './metadata/metadata-field.model';
|
||||||
import { MetadataSchema } from './metadata/metadata-schema.model';
|
import { MetadataSchema } from './metadata/metadata-schema.model';
|
||||||
import { SuggestionSource } from './notifications/models/suggestion-source.model';
|
|
||||||
import { SuggestionTarget } from './notifications/models/suggestion-target.model';
|
|
||||||
import { QualityAssuranceEventObject } from './notifications/qa/models/quality-assurance-event.model';
|
import { QualityAssuranceEventObject } from './notifications/qa/models/quality-assurance-event.model';
|
||||||
import { QualityAssuranceSourceObject } from './notifications/qa/models/quality-assurance-source.model';
|
import { QualityAssuranceSourceObject } from './notifications/qa/models/quality-assurance-source.model';
|
||||||
import { QualityAssuranceTopicObject } from './notifications/qa/models/quality-assurance-topic.model';
|
import { QualityAssuranceTopicObject } from './notifications/qa/models/quality-assurance-topic.model';
|
||||||
|
import { SuggestionSource } from './notifications/suggestions/models/suggestion-source.model';
|
||||||
|
import { SuggestionTarget } from './notifications/suggestions/models/suggestion-target.model';
|
||||||
import { OrcidHistory } from './orcid/model/orcid-history.model';
|
import { OrcidHistory } from './orcid/model/orcid-history.model';
|
||||||
import { OrcidQueue } from './orcid/model/orcid-queue.model';
|
import { OrcidQueue } from './orcid/model/orcid-queue.model';
|
||||||
import { ResearcherProfile } from './profile/model/researcher-profile.model';
|
import { ResearcherProfile } from './profile/model/researcher-profile.model';
|
||||||
|
@@ -12,7 +12,7 @@ import {
|
|||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { take } from 'rxjs/operators';
|
import { take } from 'rxjs/operators';
|
||||||
|
|
||||||
import { Suggestion } from '../../core/notifications/models/suggestion.model';
|
import { Suggestion } from '../../core/notifications/suggestions/models/suggestion.model';
|
||||||
import { Collection } from '../../core/shared/collection.model';
|
import { Collection } from '../../core/shared/collection.model';
|
||||||
import { ItemType } from '../../core/shared/item-relationships/item-type.model';
|
import { ItemType } from '../../core/shared/item-relationships/item-type.model';
|
||||||
import { ThemedCreateItemParentSelectorComponent } from '../../shared/dso-selector/modal-wrappers/create-item-parent-selector/themed-create-item-parent-selector.component';
|
import { ThemedCreateItemParentSelectorComponent } from '../../shared/dso-selector/modal-wrappers/create-item-parent-selector/themed-create-item-parent-selector.component';
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
import { Suggestion } from '../../core/notifications/models/suggestion.model';
|
import { Suggestion } from '../../core/notifications/suggestions/models/suggestion.model';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A simple interface to unite a specific suggestion and the id of the chosen collection
|
* A simple interface to unite a specific suggestion and the id of the chosen collection
|
||||||
|
@@ -8,7 +8,7 @@ import {
|
|||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
|
||||||
import { SuggestionEvidences } from '../../../core/notifications/models/suggestion.model';
|
import { SuggestionEvidences } from '../../../core/notifications/suggestions/models/suggestion.model';
|
||||||
import { fadeIn } from '../../../shared/animations/fade';
|
import { fadeIn } from '../../../shared/animations/fade';
|
||||||
import { ObjectKeysPipe } from '../../../shared/utils/object-keys-pipe';
|
import { ObjectKeysPipe } from '../../../shared/utils/object-keys-pipe';
|
||||||
|
|
||||||
|
@@ -8,7 +8,7 @@ import {
|
|||||||
} from '@angular/core';
|
} from '@angular/core';
|
||||||
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
|
import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { Suggestion } from 'src/app/core/notifications/models/suggestion.model';
|
import { Suggestion } from 'src/app/core/notifications/suggestions/models/suggestion.model';
|
||||||
|
|
||||||
import { ItemSearchResultListElementComponent } from '../../../themes/custom/app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
|
import { ItemSearchResultListElementComponent } from '../../../themes/custom/app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
|
||||||
import { Item } from '../../core/shared/item.model';
|
import { Item } from '../../core/shared/item.model';
|
||||||
|
@@ -22,7 +22,7 @@ import {
|
|||||||
take,
|
take,
|
||||||
} from 'rxjs/operators';
|
} from 'rxjs/operators';
|
||||||
|
|
||||||
import { SuggestionTarget } from '../../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { PaginationService } from '../../../core/pagination/pagination.service';
|
import { PaginationService } from '../../../core/pagination/pagination.service';
|
||||||
import { hasValue } from '../../../shared/empty.util';
|
import { hasValue } from '../../../shared/empty.util';
|
||||||
import { ThemedLoadingComponent } from '../../../shared/loading/themed-loading.component';
|
import { ThemedLoadingComponent } from '../../../shared/loading/themed-loading.component';
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
/* eslint-disable max-classes-per-file */
|
/* eslint-disable max-classes-per-file */
|
||||||
import { Action } from '@ngrx/store';
|
import { Action } from '@ngrx/store';
|
||||||
|
|
||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { type } from '../../shared/ngrx/type';
|
import { type } from '../../shared/ngrx/type';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -15,7 +15,7 @@ import {
|
|||||||
} from 'rxjs/operators';
|
} from 'rxjs/operators';
|
||||||
|
|
||||||
import { PaginatedList } from '../../core/data/paginated-list.model';
|
import { PaginatedList } from '../../core/data/paginated-list.model';
|
||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { NotificationsService } from '../../shared/notifications/notifications.service';
|
import { NotificationsService } from '../../shared/notifications/notifications.service';
|
||||||
import { SuggestionsService } from '../suggestions.service';
|
import { SuggestionsService } from '../suggestions.service';
|
||||||
import {
|
import {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import {
|
import {
|
||||||
SuggestionTargetActionTypes,
|
SuggestionTargetActionTypes,
|
||||||
SuggestionTargetsActions,
|
SuggestionTargetsActions,
|
||||||
|
@@ -6,8 +6,7 @@ import {
|
|||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
import { map } from 'rxjs/operators';
|
import { map } from 'rxjs/operators';
|
||||||
|
|
||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { SuggestionNotificationsState } from '../../notifications/notifications.reducer';
|
|
||||||
import {
|
import {
|
||||||
getCurrentUserSuggestionTargetsSelector,
|
getCurrentUserSuggestionTargetsSelector,
|
||||||
getCurrentUserSuggestionTargetsVisitedSelector,
|
getCurrentUserSuggestionTargetsVisitedSelector,
|
||||||
@@ -17,6 +16,7 @@ import {
|
|||||||
isSuggestionTargetLoadedSelector,
|
isSuggestionTargetLoadedSelector,
|
||||||
suggestionTargetObjectSelector,
|
suggestionTargetObjectSelector,
|
||||||
} from '../../suggestion-notifications/selectors';
|
} from '../../suggestion-notifications/selectors';
|
||||||
|
import { SuggestionNotificationsState } from '../notifications.reducer';
|
||||||
import {
|
import {
|
||||||
ClearSuggestionTargetsAction,
|
ClearSuggestionTargetsAction,
|
||||||
MarkUserSuggestionsAsVisitedAction,
|
MarkUserSuggestionsAsVisitedAction,
|
||||||
|
@@ -7,9 +7,9 @@ import {
|
|||||||
SortOptions,
|
SortOptions,
|
||||||
} from '../core/cache/models/sort-options.model';
|
} from '../core/cache/models/sort-options.model';
|
||||||
import { FindListOptions } from '../core/data/find-list-options.model';
|
import { FindListOptions } from '../core/data/find-list-options.model';
|
||||||
import { SuggestionTarget } from '../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { SuggestionsDataService } from '../core/notifications/suggestions-data.service';
|
import { SuggestionDataService } from '../core/notifications/suggestions/suggestion-data.service';
|
||||||
import { SuggestionTargetDataService } from '../core/notifications/target/suggestion-target-data.service';
|
import { SuggestionTargetDataService } from '../core/notifications/suggestions/target/suggestion-target-data.service';
|
||||||
import { ResearcherProfile } from '../core/profile/model/researcher-profile.model';
|
import { ResearcherProfile } from '../core/profile/model/researcher-profile.model';
|
||||||
import { ResearcherProfileDataService } from '../core/profile/researcher-profile-data.service';
|
import { ResearcherProfileDataService } from '../core/profile/researcher-profile-data.service';
|
||||||
import { ResourceType } from '../core/shared/resource-type';
|
import { ResourceType } from '../core/shared/resource-type';
|
||||||
@@ -22,7 +22,7 @@ describe('SuggestionsService test', () => {
|
|||||||
let scheduler: TestScheduler;
|
let scheduler: TestScheduler;
|
||||||
let service: SuggestionsService;
|
let service: SuggestionsService;
|
||||||
let researcherProfileService: ResearcherProfileDataService;
|
let researcherProfileService: ResearcherProfileDataService;
|
||||||
let suggestionsDataService: SuggestionsDataService;
|
let suggestionsDataService: SuggestionDataService;
|
||||||
let suggestionTargetDataService: SuggestionTargetDataService;
|
let suggestionTargetDataService: SuggestionTargetDataService;
|
||||||
let translateService: any = {
|
let translateService: any = {
|
||||||
instant: (str) => str,
|
instant: (str) => str,
|
||||||
@@ -89,7 +89,7 @@ describe('SuggestionsService test', () => {
|
|||||||
sort: sortOptions,
|
sort: sortOptions,
|
||||||
};
|
};
|
||||||
service.getTargets('source', 10, 1);
|
service.getTargets('source', 10, 1);
|
||||||
expect(suggestionTargetDataService.getTargets).toHaveBeenCalledWith('source', findListOptions);
|
expect(suggestionTargetDataService.getTargetsBySource).toHaveBeenCalledWith('source', findListOptions);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should get suggestions', () => {
|
it('should get suggestions', () => {
|
||||||
|
@@ -11,7 +11,7 @@ import { RouterLink } from '@angular/router';
|
|||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { SuggestionTargetsStateService } from '../suggestion-targets/suggestion-targets.state.service';
|
import { SuggestionTargetsStateService } from '../suggestion-targets/suggestion-targets.state.service';
|
||||||
import { SuggestionsService } from '../suggestions.service';
|
import { SuggestionsService } from '../suggestions.service';
|
||||||
|
|
||||||
|
@@ -22,7 +22,7 @@ import {
|
|||||||
takeUntil,
|
takeUntil,
|
||||||
} from 'rxjs/operators';
|
} from 'rxjs/operators';
|
||||||
|
|
||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { fromTopEnter } from '../../shared/animations/fromTop';
|
import { fromTopEnter } from '../../shared/animations/fromTop';
|
||||||
import { isNotEmpty } from '../../shared/empty.util';
|
import { isNotEmpty } from '../../shared/empty.util';
|
||||||
import { SuggestionTargetsStateService } from '../suggestion-targets/suggestion-targets.state.service';
|
import { SuggestionTargetsStateService } from '../suggestion-targets/suggestion-targets.state.service';
|
||||||
|
@@ -21,10 +21,10 @@ import {
|
|||||||
import { FindListOptions } from '../core/data/find-list-options.model';
|
import { FindListOptions } from '../core/data/find-list-options.model';
|
||||||
import { PaginatedList } from '../core/data/paginated-list.model';
|
import { PaginatedList } from '../core/data/paginated-list.model';
|
||||||
import { RemoteData } from '../core/data/remote-data';
|
import { RemoteData } from '../core/data/remote-data';
|
||||||
import { Suggestion } from '../core/notifications/models/suggestion.model';
|
import { Suggestion } from '../core/notifications/suggestions/models/suggestion.model';
|
||||||
import { SuggestionTarget } from '../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { SuggestionsDataService } from '../core/notifications/suggestions-data.service';
|
import { SuggestionDataService } from '../core/notifications/suggestions/suggestion-data.service';
|
||||||
import { SuggestionTargetDataService } from '../core/notifications/target/suggestion-target-data.service';
|
import { SuggestionTargetDataService } from '../core/notifications/suggestions/target/suggestion-target-data.service';
|
||||||
import { ResearcherProfile } from '../core/profile/model/researcher-profile.model';
|
import { ResearcherProfile } from '../core/profile/model/researcher-profile.model';
|
||||||
import { ResearcherProfileDataService } from '../core/profile/researcher-profile-data.service';
|
import { ResearcherProfileDataService } from '../core/profile/researcher-profile-data.service';
|
||||||
import { NoContent } from '../core/shared/NoContent.model';
|
import { NoContent } from '../core/shared/NoContent.model';
|
||||||
@@ -62,12 +62,12 @@ export class SuggestionsService {
|
|||||||
* Initialize the service variables.
|
* Initialize the service variables.
|
||||||
* @param {ResearcherProfileDataService} researcherProfileService
|
* @param {ResearcherProfileDataService} researcherProfileService
|
||||||
* @param {SuggestionTargetDataService} suggestionTargetDataService
|
* @param {SuggestionTargetDataService} suggestionTargetDataService
|
||||||
* @param {SuggestionsDataService} suggestionsDataService
|
* @param {SuggestionDataService} suggestionsDataService
|
||||||
* @param translateService
|
* @param translateService
|
||||||
*/
|
*/
|
||||||
constructor(
|
constructor(
|
||||||
private researcherProfileService: ResearcherProfileDataService,
|
private researcherProfileService: ResearcherProfileDataService,
|
||||||
private suggestionsDataService: SuggestionsDataService,
|
private suggestionsDataService: SuggestionDataService,
|
||||||
private suggestionTargetDataService: SuggestionTargetDataService,
|
private suggestionTargetDataService: SuggestionTargetDataService,
|
||||||
private translateService: TranslateService,
|
private translateService: TranslateService,
|
||||||
) {
|
) {
|
||||||
@@ -94,7 +94,7 @@ export class SuggestionsService {
|
|||||||
sort: sortOptions,
|
sort: sortOptions,
|
||||||
};
|
};
|
||||||
|
|
||||||
return this.suggestionTargetDataService.getTargets(source, findListOptions).pipe(
|
return this.suggestionTargetDataService.getTargetsBySource(source, findListOptions).pipe(
|
||||||
getFinishedRemoteData(),
|
getFinishedRemoteData(),
|
||||||
take(1),
|
take(1),
|
||||||
map((rd: RemoteData<PaginatedList<SuggestionTarget>>) => {
|
map((rd: RemoteData<PaginatedList<SuggestionTarget>>) => {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
import { SuggestionTarget } from '../../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { ResourceType } from '../../core/shared/resource-type';
|
import { ResourceType } from '../../core/shared/resource-type';
|
||||||
|
|
||||||
// REST Mock ---------------------------------------------------------------------
|
// REST Mock ---------------------------------------------------------------------
|
||||||
|
@@ -2,8 +2,8 @@
|
|||||||
// REST Mock ---------------------------------------------------------------------
|
// REST Mock ---------------------------------------------------------------------
|
||||||
// -------------------------------------------------------------------------------
|
// -------------------------------------------------------------------------------
|
||||||
|
|
||||||
import { Suggestion } from '../../core/notifications/models/suggestion.model';
|
import { Suggestion } from '../../core/notifications/suggestions/models/suggestion.model';
|
||||||
import { SUGGESTION } from '../../core/notifications/models/suggestion-objects.resource-type';
|
import { SUGGESTION } from '../../core/notifications/suggestions/models/suggestion-objects.resource-type';
|
||||||
|
|
||||||
export const mockSuggestionPublicationOne: Suggestion = {
|
export const mockSuggestionPublicationOne: Suggestion = {
|
||||||
id: '24694773',
|
id: '24694773',
|
||||||
|
@@ -4,7 +4,7 @@ import {
|
|||||||
MemoizedSelector,
|
MemoizedSelector,
|
||||||
} from '@ngrx/store';
|
} from '@ngrx/store';
|
||||||
|
|
||||||
import { SuggestionTarget } from '../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import {
|
import {
|
||||||
suggestionNotificationsSelector,
|
suggestionNotificationsSelector,
|
||||||
SuggestionNotificationsState,
|
SuggestionNotificationsState,
|
||||||
|
@@ -37,8 +37,8 @@ import {
|
|||||||
import { FindListOptions } from '../core/data/find-list-options.model';
|
import { FindListOptions } from '../core/data/find-list-options.model';
|
||||||
import { PaginatedList } from '../core/data/paginated-list.model';
|
import { PaginatedList } from '../core/data/paginated-list.model';
|
||||||
import { RemoteData } from '../core/data/remote-data';
|
import { RemoteData } from '../core/data/remote-data';
|
||||||
import { Suggestion } from '../core/notifications/models/suggestion.model';
|
import { Suggestion } from '../core/notifications/suggestions/models/suggestion.model';
|
||||||
import { SuggestionTarget } from '../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { PaginationService } from '../core/pagination/pagination.service';
|
import { PaginationService } from '../core/pagination/pagination.service';
|
||||||
import { redirectOn4xx } from '../core/shared/authorized.operators';
|
import { redirectOn4xx } from '../core/shared/authorized.operators';
|
||||||
import { getFirstSucceededRemoteDataPayload } from '../core/shared/operators';
|
import { getFirstSucceededRemoteDataPayload } from '../core/shared/operators';
|
||||||
|
@@ -8,8 +8,8 @@ import { Observable } from 'rxjs';
|
|||||||
import { find } from 'rxjs/operators';
|
import { find } from 'rxjs/operators';
|
||||||
|
|
||||||
import { RemoteData } from '../core/data/remote-data';
|
import { RemoteData } from '../core/data/remote-data';
|
||||||
import { SuggestionTarget } from '../core/notifications/models/suggestion-target.model';
|
import { SuggestionTarget } from '../core/notifications/suggestions/models/suggestion-target.model';
|
||||||
import { SuggestionTargetDataService } from '../core/notifications/target/suggestion-target-data.service';
|
import { SuggestionTargetDataService } from '../core/notifications/suggestions/target/suggestion-target-data.service';
|
||||||
import { hasValue } from '../shared/empty.util';
|
import { hasValue } from '../shared/empty.util';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user