mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-18 15:33:04 +00:00
refactored mydspace/listelements etc
This commit is contained in:
@@ -5,20 +5,20 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { of as observableOf } from 'rxjs';
|
||||
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { ClaimedMyDSpaceResultListElementComponent } from './claimed-my-dspace-result-list-element.component';
|
||||
import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model';
|
||||
import { ClaimedSearchResultListElementComponent } from './claimed-search-result-list-element.component';
|
||||
import { ClaimedTaskSearchResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model';
|
||||
import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { WorkflowItem } from '../../../../core/submission/models/workflowitem.model';
|
||||
import { createSuccessfulRemoteDataObject } from '../../../testing/utils';
|
||||
|
||||
let component: ClaimedMyDSpaceResultListElementComponent;
|
||||
let fixture: ComponentFixture<ClaimedMyDSpaceResultListElementComponent>;
|
||||
let component: ClaimedSearchResultListElementComponent;
|
||||
let fixture: ComponentFixture<ClaimedSearchResultListElementComponent>;
|
||||
|
||||
const compIndex = 1;
|
||||
|
||||
const mockResultObject: ClaimedTaskMyDSpaceResult = new ClaimedTaskMyDSpaceResult();
|
||||
const mockResultObject: ClaimedTaskSearchResult = new ClaimedTaskSearchResult();
|
||||
mockResultObject.hitHighlights = {};
|
||||
|
||||
const item = Object.assign(new Item(), {
|
||||
@@ -59,19 +59,19 @@ describe('ClaimedMyDSpaceResultListElementComponent', () => {
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [NoopAnimationsModule],
|
||||
declarations: [ClaimedMyDSpaceResultListElementComponent],
|
||||
declarations: [ClaimedSearchResultListElementComponent],
|
||||
providers: [
|
||||
{ provide: 'objectElementProvider', useValue: (mockResultObject) },
|
||||
{ provide: 'indexElementProvider', useValue: (compIndex) }
|
||||
],
|
||||
schemas: [NO_ERRORS_SCHEMA]
|
||||
}).overrideComponent(ClaimedMyDSpaceResultListElementComponent, {
|
||||
}).overrideComponent(ClaimedSearchResultListElementComponent, {
|
||||
set: { changeDetection: ChangeDetectionStrategy.Default }
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(async(() => {
|
||||
fixture = TestBed.createComponent(ClaimedMyDSpaceResultListElementComponent);
|
||||
fixture = TestBed.createComponent(ClaimedSearchResultListElementComponent);
|
||||
component = fixture.componentInstance;
|
||||
}));
|
||||
|
@@ -4,29 +4,28 @@ import { Location, LocationStrategy, PathLocationStrategy } from '@angular/commo
|
||||
import { Observable } from 'rxjs';
|
||||
import { find } from 'rxjs/operators';
|
||||
|
||||
import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component';
|
||||
import { ViewMode } from '../../../../core/shared/view-mode.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { isNotUndefined } from '../../../empty.util';
|
||||
import { WorkflowItem } from '../../../../core/submission/models/workflowitem.model';
|
||||
import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model';
|
||||
import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { listableObjectComponent } from '../../../object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { ClaimedTaskSearchResult } from '../../../object-collection/shared/claimed-task-search-result.model';
|
||||
import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component';
|
||||
|
||||
/**
|
||||
* This component renders claimed task object for the mydspace result in the list view.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-claimed-my-dspace-result-list-element',
|
||||
selector: 'ds-claimed-search-result-list-element',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss'],
|
||||
templateUrl: './claimed-my-dspace-result-list-element.component.html',
|
||||
templateUrl: './claimed-search-result-list-element.component.html',
|
||||
providers: [Location, { provide: LocationStrategy, useClass: PathLocationStrategy }]
|
||||
})
|
||||
|
||||
@listableObjectComponent(ClaimedTaskMyDSpaceResult.name, ViewMode.ListElement)
|
||||
@listableObjectComponent(ClaimedTask.name, ViewMode.ListElement)
|
||||
export class ClaimedMyDSpaceResultListElementComponent extends MyDSpaceResultListElementComponent<ClaimedTaskMyDSpaceResult, ClaimedTask> {
|
||||
@listableObjectComponent(ClaimedTaskSearchResult.name, ViewMode.ListElement)
|
||||
export class ClaimedSearchResultListElementComponent extends SearchResultListElementComponent<ClaimedTaskSearchResult, ClaimedTask> {
|
||||
|
||||
/**
|
||||
* A boolean representing if to show submitter information
|
@@ -3,7 +3,7 @@ import { Component, Input } from '@angular/core';
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { fadeInOut } from '../../../animations/fade';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { MyDSpaceResult } from '../../../../+my-dspace-page/my-dspace-result.model';
|
||||
import { SearchResult } from '../../../../+search-page/search-result.model';
|
||||
|
||||
/**
|
||||
* This component show metadata for the given item object in the list view.
|
||||
@@ -24,7 +24,7 @@ export class ItemListPreviewComponent {
|
||||
/**
|
||||
* The mydspace result object
|
||||
*/
|
||||
@Input() object: MyDSpaceResult<any>;
|
||||
@Input() object: SearchResult<any>;
|
||||
|
||||
/**
|
||||
* Represent item's status
|
||||
|
@@ -5,16 +5,16 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { of as observableOf } from 'rxjs';
|
||||
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { ItemMyDSpaceResultListElementComponent } from './item-my-dspace-result-list-element.component';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { ItemMyDSpaceResult } from '../../../object-collection/shared/item-my-dspace-result.model';
|
||||
import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model';
|
||||
import { ItemSearchResultListElementSubmissionComponent } from './item-search-result-list-element-submission.component';
|
||||
|
||||
let component: ItemMyDSpaceResultListElementComponent;
|
||||
let fixture: ComponentFixture<ItemMyDSpaceResultListElementComponent>;
|
||||
let component: ItemSearchResultListElementSubmissionComponent;
|
||||
let fixture: ComponentFixture<ItemSearchResultListElementSubmissionComponent>;
|
||||
|
||||
const compIndex = 1;
|
||||
|
||||
const mockResultObject: ItemMyDSpaceResult = new ItemMyDSpaceResult();
|
||||
const mockResultObject: ItemSearchResult = new ItemSearchResult();
|
||||
mockResultObject.hitHighlights = {};
|
||||
|
||||
mockResultObject.indexableObject = Object.assign(new Item(), {
|
||||
@@ -51,19 +51,19 @@ describe('ItemMyDSpaceResultListElementComponent', () => {
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [NoopAnimationsModule],
|
||||
declarations: [ItemMyDSpaceResultListElementComponent],
|
||||
declarations: [ItemSearchResultListElementSubmissionComponent],
|
||||
providers: [
|
||||
{ provide: 'objectElementProvider', useValue: (mockResultObject) },
|
||||
{ provide: 'indexElementProvider', useValue: (compIndex) }
|
||||
],
|
||||
schemas: [NO_ERRORS_SCHEMA]
|
||||
}).overrideComponent(ItemMyDSpaceResultListElementComponent, {
|
||||
}).overrideComponent(ItemSearchResultListElementSubmissionComponent, {
|
||||
set: { changeDetection: ChangeDetectionStrategy.Default }
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(async(() => {
|
||||
fixture = TestBed.createComponent(ItemMyDSpaceResultListElementComponent);
|
||||
fixture = TestBed.createComponent(ItemSearchResultListElementSubmissionComponent);
|
||||
component = fixture.componentInstance;
|
||||
}));
|
||||
|
@@ -1,24 +1,24 @@
|
||||
import { Component } from '@angular/core';
|
||||
|
||||
import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component';
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { ItemMyDSpaceResult } from '../../../object-collection/shared/item-my-dspace-result.model';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { ViewMode } from '../../../../core/shared/view-mode.model';
|
||||
import { listableObjectComponent } from '../../../object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { Context } from '../../../../core/shared/context.model';
|
||||
import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model';
|
||||
import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component';
|
||||
|
||||
/**
|
||||
* This component renders item object for the mydspace result in the list view.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-workspaceitem-my-dspace-result-list-element',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss', './item-my-dspace-result-list-element.component.scss'],
|
||||
templateUrl: './item-my-dspace-result-list-element.component.html'
|
||||
selector: 'ds-item-search-result-list-element-submission',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss', './item-search-result-list-element-submission.component.scss'],
|
||||
templateUrl: './item-search-result-list-element-submission.component.html'
|
||||
})
|
||||
|
||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.Submission)
|
||||
export class ItemMyDSpaceResultListElementComponent extends MyDSpaceResultListElementComponent<ItemMyDSpaceResult, Item> {
|
||||
export class ItemSearchResultListElementSubmissionComponent extends SearchResultListElementComponent<ItemSearchResult, Item> {
|
||||
|
||||
/**
|
||||
* Represent item's status
|
@@ -1,57 +0,0 @@
|
||||
import { Component, Inject } from '@angular/core';
|
||||
|
||||
import { MyDSpaceResult } from '../../../+my-dspace-page/my-dspace-result.model';
|
||||
import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component';
|
||||
import { ListableObject } from '../../object-collection/shared/listable-object.model';
|
||||
import { DSpaceObject } from '../../../core/shared/dspace-object.model';
|
||||
import { Metadata } from '../../../core/shared/metadata.utils';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-my-dspace-result-list-element',
|
||||
template: ``
|
||||
})
|
||||
export class MyDSpaceResultListElementComponent<T extends MyDSpaceResult<K>, K extends DSpaceObject> extends AbstractListableElementComponent<T> {
|
||||
|
||||
/**
|
||||
* The result element object
|
||||
*/
|
||||
dso: K;
|
||||
|
||||
/**
|
||||
* The array index of the result element
|
||||
*/
|
||||
dsoIndex: number;
|
||||
|
||||
/**
|
||||
* Initialize instance variables
|
||||
*
|
||||
* @param {ListableObject} listable
|
||||
* @param {number} index
|
||||
*/
|
||||
public constructor(@Inject('indexElementProvider') public index: number) {
|
||||
super();
|
||||
this.dso = this.object.indexableObject;
|
||||
this.dsoIndex = this.index;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights.
|
||||
*
|
||||
* @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]].
|
||||
* @returns {string[]} the matching string values or an empty array.
|
||||
*/
|
||||
allMetadataValues(keyOrKeys: string | string[]): string[] {
|
||||
return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights.
|
||||
*
|
||||
* @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]].
|
||||
* @returns {string} the first matching string value, or `undefined`.
|
||||
*/
|
||||
firstMetadataValue(keyOrKeys: string | string[]): string {
|
||||
return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys);
|
||||
}
|
||||
|
||||
}
|
@@ -5,20 +5,20 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { of as observableOf } from 'rxjs';
|
||||
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { PoolMyDSpaceResultListElementComponent } from './pool-my-dspace-result-list-element.component';
|
||||
import { PoolTaskMyDSpaceResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model';
|
||||
import { PoolSearchResultListElementComponent } from './pool-search-result-list-element.component';
|
||||
import { PoolTaskSearchResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model';
|
||||
import { PoolTask } from '../../../../core/tasks/models/pool-task-object.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { WorkflowItem } from '../../../../core/submission/models/workflowitem.model';
|
||||
import { createSuccessfulRemoteDataObject } from '../../../testing/utils';
|
||||
|
||||
let component: PoolMyDSpaceResultListElementComponent;
|
||||
let fixture: ComponentFixture<PoolMyDSpaceResultListElementComponent>;
|
||||
let component: PoolSearchResultListElementComponent;
|
||||
let fixture: ComponentFixture<PoolSearchResultListElementComponent>;
|
||||
|
||||
const compIndex = 1;
|
||||
|
||||
const mockResultObject: PoolTaskMyDSpaceResult = new PoolTaskMyDSpaceResult();
|
||||
const mockResultObject: PoolTaskSearchResult = new PoolTaskSearchResult();
|
||||
mockResultObject.hitHighlights = {};
|
||||
|
||||
const item = Object.assign(new Item(), {
|
||||
@@ -59,19 +59,19 @@ describe('PoolMyDSpaceResultListElementComponent', () => {
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [NoopAnimationsModule],
|
||||
declarations: [PoolMyDSpaceResultListElementComponent],
|
||||
declarations: [PoolSearchResultListElementComponent],
|
||||
providers: [
|
||||
{ provide: 'objectElementProvider', useValue: (mockResultObject) },
|
||||
{ provide: 'indexElementProvider', useValue: (compIndex) }
|
||||
],
|
||||
schemas: [NO_ERRORS_SCHEMA]
|
||||
}).overrideComponent(PoolMyDSpaceResultListElementComponent, {
|
||||
}).overrideComponent(PoolSearchResultListElementComponent, {
|
||||
set: { changeDetection: ChangeDetectionStrategy.Default }
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(async(() => {
|
||||
fixture = TestBed.createComponent(PoolMyDSpaceResultListElementComponent);
|
||||
fixture = TestBed.createComponent(PoolSearchResultListElementComponent);
|
||||
component = fixture.componentInstance;
|
||||
}));
|
||||
|
@@ -3,30 +3,28 @@ import { Component, Inject, OnInit } from '@angular/core';
|
||||
import { Observable } from 'rxjs';
|
||||
import { find } from 'rxjs/operators';
|
||||
|
||||
import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component';
|
||||
import { ViewMode } from '../../../../core/shared/view-mode.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { isNotUndefined } from '../../../empty.util';
|
||||
import { ListableObject } from '../../../object-collection/shared/listable-object.model';
|
||||
import { WorkflowItem } from '../../../../core/submission/models/workflowitem.model';
|
||||
import { PoolTask } from '../../../../core/tasks/models/pool-task-object.model';
|
||||
import { PoolTaskMyDSpaceResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { listableObjectComponent } from '../../../object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model';
|
||||
import { PoolTaskSearchResult } from '../../../object-collection/shared/pool-task-search-result.model';
|
||||
import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component';
|
||||
import { TruncatableService } from '../../../truncatable/truncatable.service';
|
||||
|
||||
/**
|
||||
* This component renders pool task object for the mydspace result in the list view.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-pool-my-dspace-result-list-element',
|
||||
selector: 'ds-pool-search-result-list-element',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss'],
|
||||
templateUrl: './pool-my-dspace-result-list-element.component.html',
|
||||
templateUrl: './pool-search-result-list-element.component.html',
|
||||
})
|
||||
|
||||
@listableObjectComponent(PoolTaskMyDSpaceResult.name, ViewMode.ListElement)
|
||||
@listableObjectComponent(PoolTask.name, ViewMode.ListElement)
|
||||
export class PoolMyDSpaceResultListElementComponent extends MyDSpaceResultListElementComponent<PoolTaskMyDSpaceResult, PoolTask> implements OnInit {
|
||||
@listableObjectComponent(PoolTaskSearchResult.name, ViewMode.ListElement)
|
||||
export class PoolSearchResultListElementComponent extends SearchResultListElementComponent<PoolTaskSearchResult, PoolTask> implements OnInit {
|
||||
|
||||
/**
|
||||
* A boolean representing if to show submitter information
|
||||
@@ -43,8 +41,10 @@ export class PoolMyDSpaceResultListElementComponent extends MyDSpaceResultListEl
|
||||
*/
|
||||
public workflowitem: WorkflowItem;
|
||||
|
||||
constructor(@Inject('indexElementProvider') public index: number) {
|
||||
super(index);
|
||||
public index: number;
|
||||
|
||||
constructor(protected truncatableService: TruncatableService) {
|
||||
super(truncatableService);
|
||||
}
|
||||
|
||||
/**
|
@@ -5,19 +5,19 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { of as observableOf } from 'rxjs';
|
||||
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { WorkflowitemMyDSpaceResultListElementComponent } from './workflowitem-my-dspace-result-list-element.component';
|
||||
import { WorkflowitemMyDSpaceResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model';
|
||||
import { WorkflowItemSearchResultListElementComponent } from './workflow-item-my-search-result-list-element.component';
|
||||
import { WorkflowItemSearchResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model';
|
||||
import { WorkflowItem } from '../../../../core/submission/models/workflowitem.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { createSuccessfulRemoteDataObject } from '../../../testing/utils';
|
||||
|
||||
let component: WorkflowitemMyDSpaceResultListElementComponent;
|
||||
let fixture: ComponentFixture<WorkflowitemMyDSpaceResultListElementComponent>;
|
||||
let component: WorkflowItemSearchResultListElementComponent;
|
||||
let fixture: ComponentFixture<WorkflowItemSearchResultListElementComponent>;
|
||||
|
||||
const compIndex = 1;
|
||||
|
||||
const mockResultObject: WorkflowitemMyDSpaceResult = new WorkflowitemMyDSpaceResult();
|
||||
const mockResultObject: WorkflowItemSearchResult = new WorkflowItemSearchResult();
|
||||
mockResultObject.hitHighlights = {};
|
||||
|
||||
const item = Object.assign(new Item(), {
|
||||
@@ -56,19 +56,19 @@ describe('WorkflowitemMyDSpaceResultListElementComponent', () => {
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [NoopAnimationsModule],
|
||||
declarations: [WorkflowitemMyDSpaceResultListElementComponent],
|
||||
declarations: [WorkflowItemSearchResultListElementComponent],
|
||||
providers: [
|
||||
{ provide: 'objectElementProvider', useValue: (mockResultObject) },
|
||||
{ provide: 'indexElementProvider', useValue: (compIndex) }
|
||||
],
|
||||
schemas: [NO_ERRORS_SCHEMA]
|
||||
}).overrideComponent(WorkflowitemMyDSpaceResultListElementComponent, {
|
||||
}).overrideComponent(WorkflowItemSearchResultListElementComponent, {
|
||||
set: { changeDetection: ChangeDetectionStrategy.Default }
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(async(() => {
|
||||
fixture = TestBed.createComponent(WorkflowitemMyDSpaceResultListElementComponent);
|
||||
fixture = TestBed.createComponent(WorkflowItemSearchResultListElementComponent);
|
||||
component = fixture.componentInstance;
|
||||
}));
|
||||
|
@@ -3,29 +3,28 @@ import { Component } from '@angular/core';
|
||||
import { Observable } from 'rxjs';
|
||||
import { find } from 'rxjs/operators';
|
||||
|
||||
import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component';
|
||||
import { ViewMode } from '../../../../core/shared/view-mode.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { isNotUndefined } from '../../../empty.util';
|
||||
import { WorkflowitemMyDSpaceResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model';
|
||||
import { WorkflowItem } from '../../../../core/submission/models/workflowitem.model';
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { listableObjectComponent } from '../../../object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { WorkflowItemSearchResult } from '../../../object-collection/shared/workflowitem-search-result.model';
|
||||
import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component';
|
||||
|
||||
/**
|
||||
* This component renders workflowitem object for the mydspace result in the list view.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-workflowitem-my-dspace-result-list-element',
|
||||
selector: 'ds-workflow-item-my-dspace-result-list-element',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss'],
|
||||
templateUrl: './workflowitem-my-dspace-result-list-element.component.html',
|
||||
templateUrl: './workflow-item-search-result-list-element.component.html',
|
||||
})
|
||||
|
||||
@listableObjectComponent(WorkflowitemMyDSpaceResult.name, ViewMode.ListElement)
|
||||
@listableObjectComponent(WorkflowItem.name, ViewMode.ListElement)
|
||||
export class WorkflowitemMyDSpaceResultListElementComponent extends MyDSpaceResultListElementComponent<WorkflowitemMyDSpaceResult, WorkflowItem> {
|
||||
|
||||
@listableObjectComponent(WorkflowItemSearchResult.name, ViewMode.ListElement)
|
||||
export class WorkflowItemSearchResultListElementComponent extends SearchResultListElementComponent<WorkflowItemSearchResult, WorkflowItem> {
|
||||
|
||||
/**
|
||||
* The item object that belonging to the result object
|
||||
*/
|
||||
@@ -40,7 +39,7 @@ export class WorkflowitemMyDSpaceResultListElementComponent extends MyDSpaceResu
|
||||
* Initialize all instance variables
|
||||
*/
|
||||
ngOnInit() {
|
||||
this.initItem(this.dso.item as Observable<RemoteData<Item>>);
|
||||
this.initItem(this.dso.item as Observable<RemoteData<Item>> );
|
||||
}
|
||||
|
||||
/**
|
@@ -5,19 +5,19 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { of as observableOf } from 'rxjs';
|
||||
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { WorkspaceitemMyDSpaceResultListElementComponent } from './workspaceitem-my-dspace-result-list-element.component';
|
||||
import { WorkspaceitemMyDSpaceResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model';
|
||||
import { WorkspaceItemSearchResultListElementComponent } from './workspace-item-search-result-list-element.component';
|
||||
import { WorkflowItemSearchResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model';
|
||||
import { WorkspaceItem } from '../../../../core/submission/models/workspaceitem.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { createSuccessfulRemoteDataObject } from '../../../testing/utils';
|
||||
|
||||
let component: WorkspaceitemMyDSpaceResultListElementComponent;
|
||||
let fixture: ComponentFixture<WorkspaceitemMyDSpaceResultListElementComponent>;
|
||||
let component: WorkspaceItemSearchResultListElementComponent;
|
||||
let fixture: ComponentFixture<WorkspaceItemSearchResultListElementComponent>;
|
||||
|
||||
const compIndex = 1;
|
||||
|
||||
const mockResultObject: WorkspaceitemMyDSpaceResult = new WorkspaceitemMyDSpaceResult();
|
||||
const mockResultObject: WorkflowItemSearchResult = new WorkflowItemSearchResult();
|
||||
mockResultObject.hitHighlights = {};
|
||||
|
||||
const item = Object.assign(new Item(), {
|
||||
@@ -56,19 +56,19 @@ describe('WorkspaceitemMyDSpaceResultListElementComponent', () => {
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [NoopAnimationsModule],
|
||||
declarations: [WorkspaceitemMyDSpaceResultListElementComponent],
|
||||
declarations: [WorkspaceItemSearchResultListElementComponent],
|
||||
providers: [
|
||||
{ provide: 'objectElementProvider', useValue: (mockResultObject) },
|
||||
{ provide: 'indexElementProvider', useValue: (compIndex) }
|
||||
],
|
||||
schemas: [NO_ERRORS_SCHEMA]
|
||||
}).overrideComponent(WorkspaceitemMyDSpaceResultListElementComponent, {
|
||||
}).overrideComponent(WorkspaceItemSearchResultListElementComponent, {
|
||||
set: { changeDetection: ChangeDetectionStrategy.Default }
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(async(() => {
|
||||
fixture = TestBed.createComponent(WorkspaceitemMyDSpaceResultListElementComponent);
|
||||
fixture = TestBed.createComponent(WorkspaceItemSearchResultListElementComponent);
|
||||
component = fixture.componentInstance;
|
||||
}));
|
||||
|
@@ -3,27 +3,27 @@ import { Component } from '@angular/core';
|
||||
import { Observable } from 'rxjs';
|
||||
import { find } from 'rxjs/operators';
|
||||
|
||||
import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component';
|
||||
import { ViewMode } from '../../../../core/shared/view-mode.model';
|
||||
import { WorkspaceItem } from '../../../../core/submission/models/workspaceitem.model';
|
||||
import { WorkspaceitemMyDSpaceResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model';
|
||||
import { RemoteData } from '../../../../core/data/remote-data';
|
||||
import { isNotUndefined } from '../../../empty.util';
|
||||
import { Item } from '../../../../core/shared/item.model';
|
||||
import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type';
|
||||
import { listableObjectComponent } from '../../../object-collection/shared/listable-object/listable-object.decorator';
|
||||
import { WorkspaceItemSearchResult } from '../../../object-collection/shared/workspaceitem-search-result.model';
|
||||
import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component';
|
||||
|
||||
/**
|
||||
* This component renders workspaceitem object for the mydspace result in the list view.
|
||||
*/
|
||||
@Component({
|
||||
selector: 'ds-workspaceitem-my-dspace-result-list-element',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss', './workspaceitem-my-dspace-result-list-element.component.scss'],
|
||||
templateUrl: './workspaceitem-my-dspace-result-list-element.component.html',
|
||||
selector: 'ds-workspace-item-search-result-list-element',
|
||||
styleUrls: ['../my-dspace-result-list-element.component.scss', './workspace-item-search-result-list-element.component.scss'],
|
||||
templateUrl: './workspace-item-search-result-list-element.component.html',
|
||||
})
|
||||
|
||||
@listableObjectComponent(WorkspaceitemMyDSpaceResult.name, ViewMode.ListElement)
|
||||
export class WorkspaceitemMyDSpaceResultListElementComponent extends MyDSpaceResultListElementComponent<WorkspaceitemMyDSpaceResult, WorkspaceItem> {
|
||||
@listableObjectComponent(WorkspaceItemSearchResult.name, ViewMode.ListElement)
|
||||
export class WorkspaceItemSearchResultListElementComponent extends SearchResultListElementComponent<WorkspaceItemSearchResult, WorkspaceItem> {
|
||||
|
||||
/**
|
||||
* The item object that belonging to the result object
|
Reference in New Issue
Block a user