diff --git a/src/app/+item-page/item-page.module.ts b/src/app/+item-page/item-page.module.ts
index 2103a548c1..b4e5ba1cd8 100644
--- a/src/app/+item-page/item-page.module.ts
+++ b/src/app/+item-page/item-page.module.ts
@@ -19,16 +19,16 @@ import { FileSectionComponent } from './simple/field-components/file-section/fil
import { CollectionsComponent } from './field-components/collections/collections.component';
import { FullItemPageComponent } from './full/full-item-page.component';
import { FullFileSectionComponent } from './full/field-components/file-section/full-file-section.component';
-import { RelatedEntitiesComponent } from './simple/related-entities/related-entities-component';
+import { RelatedItemsComponent } from './simple/related-items/related-items-component';
import { SearchPageModule } from '../+search-page/search-page.module';
-import { PublicationComponent } from './simple/entity-types/publication/publication.component';
-import { PersonComponent } from './simple/entity-types/person/person.component';
-import { OrgunitComponent } from './simple/entity-types/orgunit/orgunit.component';
-import { ProjectComponent } from './simple/entity-types/project/project.component';
-import { JournalComponent } from './simple/entity-types/journal/journal.component';
-import { JournalVolumeComponent } from './simple/entity-types/journal-volume/journal-volume.component';
-import { JournalIssueComponent } from './simple/entity-types/journal-issue/journal-issue.component';
-import { EntityComponent } from './simple/entity-types/shared/entity.component';
+import { PublicationComponent } from './simple/item-types/publication/publication.component';
+import { PersonComponent } from './simple/item-types/person/person.component';
+import { OrgunitComponent } from './simple/item-types/orgunit/orgunit.component';
+import { ProjectComponent } from './simple/item-types/project/project.component';
+import { JournalComponent } from './simple/item-types/journal/journal.component';
+import { JournalVolumeComponent } from './simple/item-types/journal-volume/journal-volume.component';
+import { JournalIssueComponent } from './simple/item-types/journal-issue/journal-issue.component';
+import { ItemComponent } from './simple/item-types/shared/item.component';
@NgModule({
imports: [
@@ -56,8 +56,8 @@ import { EntityComponent } from './simple/entity-types/shared/entity.component';
ProjectComponent,
OrgunitComponent,
PersonComponent,
- RelatedEntitiesComponent,
- EntityComponent,
+ RelatedItemsComponent,
+ ItemComponent,
GenericItemPageFieldComponent,
JournalComponent,
JournalIssueComponent,
diff --git a/src/app/+item-page/simple/item-page.component.html b/src/app/+item-page/simple/item-page.component.html
index 0db8bbf318..e59d37fb9d 100644
--- a/src/app/+item-page/simple/item-page.component.html
+++ b/src/app/+item-page/simple/item-page.component.html
@@ -1,7 +1,7 @@
diff --git a/src/app/+item-page/simple/item-page.component.spec.ts b/src/app/+item-page/simple/item-page.component.spec.ts
index bc1df00300..fbe616227f 100644
--- a/src/app/+item-page/simple/item-page.component.spec.ts
+++ b/src/app/+item-page/simple/item-page.component.spec.ts
@@ -8,14 +8,13 @@ import { ActivatedRoute } from '@angular/router';
import { ActivatedRouteStub } from '../../shared/testing/active-router-stub';
import { MetadataService } from '../../core/metadata/metadata.service';
import { VarDirective } from '../../shared/utils/var.directive';
-import { Observable } from 'rxjs';
import { RemoteData } from '../../core/data/remote-data';
import { Item } from '../../core/shared/item.model';
import { PaginatedList } from '../../core/data/paginated-list';
import { PageInfo } from '../../core/shared/page-info.model';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { By } from '@angular/platform-browser';
-import { createRelationshipsObservable } from './entity-types/shared/entity.component.spec';
+import { createRelationshipsObservable } from './item-types/shared/item.component.spec';
import { of as observableOf } from 'rxjs';
const mockItem: Item = Object.assign(new Item(), {
diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.html b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.html
similarity index 88%
rename from src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.html
rename to src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.html
index 73fee41f8f..13e977ac5c 100644
--- a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.html
+++ b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.html
@@ -16,14 +16,14 @@
-
-
-
+
-
+
diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.scss b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.scss
rename to src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.scss
diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.spec.ts b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.spec.ts
similarity index 81%
rename from src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.spec.ts
rename to src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.spec.ts
index a2db07362d..a648250b03 100644
--- a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.spec.ts
@@ -1,9 +1,8 @@
-import { Observable } from 'rxjs';
import { Item } from '../../../../core/shared/item.model';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { createRelationshipsObservable, getEntityPageFieldsTest } from '../shared/entity.component.spec';
+import { createRelationshipsObservable, getItemPageFieldsTest } from '../shared/item.component.spec';
import { JournalIssueComponent } from './journal-issue.component';
import { of as observableOf } from 'rxjs';
@@ -33,4 +32,4 @@ const mockItem: Item = Object.assign(new Item(), {
relationships: createRelationshipsObservable()
});
-describe('JournalIssueComponent', getEntityPageFieldsTest(mockItem, JournalIssueComponent));
+describe('JournalIssueComponent', getItemPageFieldsTest(mockItem, JournalIssueComponent));
diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.ts b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.ts
similarity index 75%
rename from src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.ts
rename to src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.ts
index 91d4b1ce8c..c663b15256 100644
--- a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue.component.ts
+++ b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.ts
@@ -2,22 +2,22 @@ import { Component, Inject } from '@angular/core';
import { Observable } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
-import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { rendersItemType } from '../../../../shared/items/item-type-decorator';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { ElementViewMode } from '../../../../shared/view-mode';
import { isNotEmpty } from '../../../../shared/empty.util';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('JournalIssue', ElementViewMode.Full)
+@rendersItemType('JournalIssue', ElementViewMode.Full)
@Component({
selector: 'ds-journal-issue',
styleUrls: ['./journal-issue.component.scss'],
templateUrl: './journal-issue.component.html'
})
/**
- * The component for displaying metadata and relations of an item with entity type Journal Issue
+ * The component for displaying metadata and relations of an item of the type Journal Issue
*/
-export class JournalIssueComponent extends EntityComponent {
+export class JournalIssueComponent extends ItemComponent {
/**
* The volumes related to this journal issue
*/
diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.html b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.html
similarity index 87%
rename from src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.html
rename to src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.html
index df770b06d8..a956e40fdd 100644
--- a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.html
+++ b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.html
@@ -16,14 +16,14 @@
-
-
-
+
-
+
diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.scss b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.scss
rename to src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.scss
diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.spec.ts b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.spec.ts
similarity index 79%
rename from src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.spec.ts
rename to src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.spec.ts
index 2cab243924..5442048a50 100644
--- a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.spec.ts
@@ -1,9 +1,8 @@
-import { Observable } from 'rxjs';
import { Item } from '../../../../core/shared/item.model';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { createRelationshipsObservable, getEntityPageFieldsTest } from '../shared/entity.component.spec';
+import { createRelationshipsObservable, getItemPageFieldsTest } from '../shared/item.component.spec';
import { JournalVolumeComponent } from './journal-volume.component';
import { of as observableOf } from 'rxjs';
@@ -28,4 +27,4 @@ const mockItem: Item = Object.assign(new Item(), {
relationships: createRelationshipsObservable()
});
-describe('JournalVolumeComponent', getEntityPageFieldsTest(mockItem, JournalVolumeComponent));
+describe('JournalVolumeComponent', getItemPageFieldsTest(mockItem, JournalVolumeComponent));
diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.ts b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.ts
similarity index 74%
rename from src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.ts
rename to src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.ts
index c6b9233ece..ebb6919234 100644
--- a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume.component.ts
+++ b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.ts
@@ -2,22 +2,22 @@ import { Component, Inject } from '@angular/core';
import { Observable } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
-import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { rendersItemType } from '../../../../shared/items/item-type-decorator';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { ElementViewMode } from '../../../../shared/view-mode';
import { isNotEmpty } from '../../../../shared/empty.util';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('JournalVolume', ElementViewMode.Full)
+@rendersItemType('JournalVolume', ElementViewMode.Full)
@Component({
selector: 'ds-journal-volume',
styleUrls: ['./journal-volume.component.scss'],
templateUrl: './journal-volume.component.html'
})
/**
- * The component for displaying metadata and relations of an item with entity type Journal Volume
+ * The component for displaying metadata and relations of an item of the type Journal Volume
*/
-export class JournalVolumeComponent extends EntityComponent {
+export class JournalVolumeComponent extends ItemComponent {
/**
* The journals related to this journal volume
*/
diff --git a/src/app/+item-page/simple/entity-types/journal/journal.component.html b/src/app/+item-page/simple/item-types/journal/journal.component.html
similarity index 93%
rename from src/app/+item-page/simple/entity-types/journal/journal.component.html
rename to src/app/+item-page/simple/item-types/journal/journal.component.html
index b02000a9e4..548f6304bc 100644
--- a/src/app/+item-page/simple/entity-types/journal/journal.component.html
+++ b/src/app/+item-page/simple/item-types/journal/journal.component.html
@@ -16,10 +16,10 @@
-
-
+
diff --git a/src/app/+item-page/simple/entity-types/journal/journal.component.scss b/src/app/+item-page/simple/item-types/journal/journal.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/journal/journal.component.scss
rename to src/app/+item-page/simple/item-types/journal/journal.component.scss
diff --git a/src/app/+item-page/simple/entity-types/journal/journal.component.spec.ts b/src/app/+item-page/simple/item-types/journal/journal.component.spec.ts
similarity index 96%
rename from src/app/+item-page/simple/entity-types/journal/journal.component.spec.ts
rename to src/app/+item-page/simple/item-types/journal/journal.component.spec.ts
index d9915e0410..8a18f0f727 100644
--- a/src/app/+item-page/simple/entity-types/journal/journal.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/journal/journal.component.spec.ts
@@ -1,10 +1,9 @@
import { ChangeDetectionStrategy, DebugElement, NO_ERRORS_SCHEMA } from '@angular/core';
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { TruncatableService } from '../../../../shared/truncatable/truncatable.service';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { TruncatePipe } from '../../../../shared/utils/truncate.pipe';
import { ItemDataService } from '../../../../core/data/item-data.service';
-import { Observable } from 'rxjs';
import { Item } from '../../../../core/shared/item.model';
import { By } from '@angular/platform-browser';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
diff --git a/src/app/+item-page/simple/entity-types/journal/journal.component.ts b/src/app/+item-page/simple/item-types/journal/journal.component.ts
similarity index 70%
rename from src/app/+item-page/simple/entity-types/journal/journal.component.ts
rename to src/app/+item-page/simple/item-types/journal/journal.component.ts
index 7e1e0233b6..3af725062c 100644
--- a/src/app/+item-page/simple/entity-types/journal/journal.component.ts
+++ b/src/app/+item-page/simple/item-types/journal/journal.component.ts
@@ -2,22 +2,22 @@ import { Component, Inject } from '@angular/core';
import { Observable } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
-import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { rendersItemType } from '../../../../shared/items/item-type-decorator';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { ElementViewMode } from '../../../../shared/view-mode';
import { isNotEmpty } from '../../../../shared/empty.util';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('Journal', ElementViewMode.Full)
+@rendersItemType('Journal', ElementViewMode.Full)
@Component({
selector: 'ds-journal',
styleUrls: ['./journal.component.scss'],
templateUrl: './journal.component.html'
})
/**
- * The component for displaying metadata and relations of an item with entity type Journal
+ * The component for displaying metadata and relations of an item of the type Journal
*/
-export class JournalComponent extends EntityComponent {
+export class JournalComponent extends ItemComponent {
/**
* The volumes related to this journal
*/
diff --git a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.html b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.html
similarity index 86%
rename from src/app/+item-page/simple/entity-types/orgunit/orgunit.component.html
rename to src/app/+item-page/simple/item-types/orgunit/orgunit.component.html
index e5a02b54e5..7eacf66347 100644
--- a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.html
+++ b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.html
@@ -24,18 +24,18 @@
-
-
-
+
-
-
+
-
+
diff --git a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.scss b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/orgunit/orgunit.component.scss
rename to src/app/+item-page/simple/item-types/orgunit/orgunit.component.scss
diff --git a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.spec.ts b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.spec.ts
similarity index 82%
rename from src/app/+item-page/simple/entity-types/orgunit/orgunit.component.spec.ts
rename to src/app/+item-page/simple/item-types/orgunit/orgunit.component.spec.ts
index e7e83ccc2a..bb356ba7fb 100644
--- a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.spec.ts
@@ -1,9 +1,8 @@
-import { Observable } from 'rxjs';
import { Item } from '../../../../core/shared/item.model';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { createRelationshipsObservable, getEntityPageFieldsTest } from '../shared/entity.component.spec';
+import { createRelationshipsObservable, getItemPageFieldsTest } from '../shared/item.component.spec';
import { OrgunitComponent } from './orgunit.component';
import { of as observableOf } from 'rxjs';
@@ -38,4 +37,4 @@ const mockItem: Item = Object.assign(new Item(), {
relationships: createRelationshipsObservable()
});
-describe('OrgUnitComponent', getEntityPageFieldsTest(mockItem, OrgunitComponent));
+describe('OrgUnitComponent', getItemPageFieldsTest(mockItem, OrgunitComponent));
diff --git a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.ts b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.ts
similarity index 77%
rename from src/app/+item-page/simple/entity-types/orgunit/orgunit.component.ts
rename to src/app/+item-page/simple/item-types/orgunit/orgunit.component.ts
index 1f99f29ea2..f1979b0961 100644
--- a/src/app/+item-page/simple/entity-types/orgunit/orgunit.component.ts
+++ b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.ts
@@ -2,22 +2,22 @@ import { Component, Inject, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
-import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator';
+import { rendersItemType } from '../../../../shared/items/item-type-decorator';
import { ElementViewMode } from '../../../../shared/view-mode';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { isNotEmpty } from '../../../../shared/empty.util';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('OrgUnit', ElementViewMode.Full)
+@rendersItemType('OrgUnit', ElementViewMode.Full)
@Component({
selector: 'ds-orgunit',
styleUrls: ['./orgunit.component.scss'],
templateUrl: './orgunit.component.html'
})
/**
- * The component for displaying metadata and relations of an item with entity type Organisation Unit
+ * The component for displaying metadata and relations of an item of the type Organisation Unit
*/
-export class OrgunitComponent extends EntityComponent implements OnInit {
+export class OrgunitComponent extends ItemComponent implements OnInit {
/**
* The people related to this organisation unit
*/
diff --git a/src/app/+item-page/simple/entity-types/person/person.component.html b/src/app/+item-page/simple/item-types/person/person.component.html
similarity index 92%
rename from src/app/+item-page/simple/entity-types/person/person.component.html
rename to src/app/+item-page/simple/item-types/person/person.component.html
index 548f46624d..a490361ac3 100644
--- a/src/app/+item-page/simple/entity-types/person/person.component.html
+++ b/src/app/+item-page/simple/item-types/person/person.component.html
@@ -24,14 +24,14 @@
-
-
-
+
-
+
diff --git a/src/app/+item-page/simple/entity-types/person/person.component.scss b/src/app/+item-page/simple/item-types/person/person.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/person/person.component.scss
rename to src/app/+item-page/simple/item-types/person/person.component.scss
diff --git a/src/app/+item-page/simple/entity-types/person/person.component.spec.ts b/src/app/+item-page/simple/item-types/person/person.component.spec.ts
similarity index 85%
rename from src/app/+item-page/simple/entity-types/person/person.component.spec.ts
rename to src/app/+item-page/simple/item-types/person/person.component.spec.ts
index 70eba79180..4c582f67e8 100644
--- a/src/app/+item-page/simple/entity-types/person/person.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/person/person.component.spec.ts
@@ -1,9 +1,8 @@
-import { Observable } from 'rxjs';
import { Item } from '../../../../core/shared/item.model';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { createRelationshipsObservable, getEntityPageFieldsTest } from '../shared/entity.component.spec';
+import { createRelationshipsObservable, getItemPageFieldsTest } from '../shared/item.component.spec';
import { PersonComponent } from './person.component';
import { of as observableOf } from 'rxjs';
@@ -48,4 +47,4 @@ const mockItem: Item = Object.assign(new Item(), {
relationships: createRelationshipsObservable()
});
-describe('PersonComponent', getEntityPageFieldsTest(mockItem, PersonComponent));
+describe('PersonComponent', getItemPageFieldsTest(mockItem, PersonComponent));
diff --git a/src/app/+item-page/simple/entity-types/person/person.component.ts b/src/app/+item-page/simple/item-types/person/person.component.ts
similarity index 83%
rename from src/app/+item-page/simple/entity-types/person/person.component.ts
rename to src/app/+item-page/simple/item-types/person/person.component.ts
index 2ba3a5bdcf..bb98799da5 100644
--- a/src/app/+item-page/simple/entity-types/person/person.component.ts
+++ b/src/app/+item-page/simple/item-types/person/person.component.ts
@@ -2,23 +2,23 @@ import { Component, Inject } from '@angular/core';
import { Observable , of as observableOf } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
-import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { rendersItemType } from '../../../../shared/items/item-type-decorator';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { ElementViewMode } from '../../../../shared/view-mode';
import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service';
import { isNotEmpty } from '../../../../shared/empty.util';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('Person', ElementViewMode.Full)
+@rendersItemType('Person', ElementViewMode.Full)
@Component({
selector: 'ds-person',
styleUrls: ['./person.component.scss'],
templateUrl: './person.component.html'
})
/**
- * The component for displaying metadata and relations of an item with entity type Person
+ * The component for displaying metadata and relations of an item of the type Person
*/
-export class PersonComponent extends EntityComponent {
+export class PersonComponent extends ItemComponent {
/**
* The publications related to this person
*/
diff --git a/src/app/+item-page/simple/entity-types/project/project.component.html b/src/app/+item-page/simple/item-types/project/project.component.html
similarity index 86%
rename from src/app/+item-page/simple/entity-types/project/project.component.html
rename to src/app/+item-page/simple/item-types/project/project.component.html
index 36a71bd71a..17aa8b2065 100644
--- a/src/app/+item-page/simple/entity-types/project/project.component.html
+++ b/src/app/+item-page/simple/item-types/project/project.component.html
@@ -20,18 +20,18 @@
-
-
-
+
-
-
+
-
+
diff --git a/src/app/+item-page/simple/entity-types/project/project.component.scss b/src/app/+item-page/simple/item-types/project/project.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/project/project.component.scss
rename to src/app/+item-page/simple/item-types/project/project.component.scss
diff --git a/src/app/+item-page/simple/entity-types/project/project.component.spec.ts b/src/app/+item-page/simple/item-types/project/project.component.spec.ts
similarity index 83%
rename from src/app/+item-page/simple/entity-types/project/project.component.spec.ts
rename to src/app/+item-page/simple/item-types/project/project.component.spec.ts
index c2fceb4266..e28c97f87d 100644
--- a/src/app/+item-page/simple/entity-types/project/project.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/project/project.component.spec.ts
@@ -1,9 +1,8 @@
-import { Observable } from 'rxjs';
import { Item } from '../../../../core/shared/item.model';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { createRelationshipsObservable, getEntityPageFieldsTest } from '../shared/entity.component.spec';
+import { createRelationshipsObservable, getItemPageFieldsTest } from '../shared/item.component.spec';
import { ProjectComponent } from './project.component';
import { of as observableOf } from 'rxjs';
@@ -38,4 +37,4 @@ const mockItem: Item = Object.assign(new Item(), {
relationships: createRelationshipsObservable()
});
-describe('ProjectComponent', getEntityPageFieldsTest(mockItem, ProjectComponent));
+describe('ProjectComponent', getItemPageFieldsTest(mockItem, ProjectComponent));
diff --git a/src/app/+item-page/simple/entity-types/project/project.component.ts b/src/app/+item-page/simple/item-types/project/project.component.ts
similarity index 78%
rename from src/app/+item-page/simple/entity-types/project/project.component.ts
rename to src/app/+item-page/simple/item-types/project/project.component.ts
index e31d748129..dfbdacff86 100644
--- a/src/app/+item-page/simple/entity-types/project/project.component.ts
+++ b/src/app/+item-page/simple/item-types/project/project.component.ts
@@ -2,22 +2,22 @@ import { Component, Inject, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
-import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator';
+import { rendersItemType } from '../../../../shared/items/item-type-decorator';
import { ElementViewMode } from '../../../../shared/view-mode';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { isNotEmpty } from '../../../../shared/empty.util';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('Project', ElementViewMode.Full)
+@rendersItemType('Project', ElementViewMode.Full)
@Component({
selector: 'ds-project',
styleUrls: ['./project.component.scss'],
templateUrl: './project.component.html'
})
/**
- * The component for displaying metadata and relations of an item with entity type Project
+ * The component for displaying metadata and relations of an item of the type Project
*/
-export class ProjectComponent extends EntityComponent implements OnInit {
+export class ProjectComponent extends ItemComponent implements OnInit {
/**
* The people related to this project
*/
diff --git a/src/app/+item-page/simple/entity-types/publication/publication.component.html b/src/app/+item-page/simple/item-types/publication/publication.component.html
similarity index 76%
rename from src/app/+item-page/simple/entity-types/publication/publication.component.html
rename to src/app/+item-page/simple/item-types/publication/publication.component.html
index 84cd5a151b..e619e18b01 100644
--- a/src/app/+item-page/simple/entity-types/publication/publication.component.html
+++ b/src/app/+item-page/simple/item-types/publication/publication.component.html
@@ -9,22 +9,22 @@
-
-
-
+
-
-
+
-
-
+
-
+
diff --git a/src/app/+item-page/simple/entity-types/publication/publication.component.scss b/src/app/+item-page/simple/item-types/publication/publication.component.scss
similarity index 100%
rename from src/app/+item-page/simple/entity-types/publication/publication.component.scss
rename to src/app/+item-page/simple/item-types/publication/publication.component.scss
diff --git a/src/app/+item-page/simple/entity-types/publication/publication.component.spec.ts b/src/app/+item-page/simple/item-types/publication/publication.component.spec.ts
similarity index 94%
rename from src/app/+item-page/simple/entity-types/publication/publication.component.spec.ts
rename to src/app/+item-page/simple/item-types/publication/publication.component.spec.ts
index c3c9c2cd81..603d358761 100644
--- a/src/app/+item-page/simple/entity-types/publication/publication.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/publication/publication.component.spec.ts
@@ -3,18 +3,17 @@ import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { MockTranslateLoader } from '../../../../shared/mocks/mock-translate-loader';
import { GenericItemPageFieldComponent } from '../../field-components/specific-field/generic/generic-item-page-field.component';
import { TruncatePipe } from '../../../../shared/utils/truncate.pipe';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service';
import { TruncatableService } from '../../../../shared/truncatable/truncatable.service';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { Item } from '../../../../core/shared/item.model';
-import { Observable } from 'rxjs';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
import { By } from '@angular/platform-browser';
-import { createRelationshipsObservable } from '../shared/entity.component.spec';
+import { createRelationshipsObservable } from '../shared/item.component.spec';
import { PublicationComponent } from './publication.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/+item-page/simple/entity-types/publication/publication.component.ts b/src/app/+item-page/simple/item-types/publication/publication.component.ts
similarity index 78%
rename from src/app/+item-page/simple/entity-types/publication/publication.component.ts
rename to src/app/+item-page/simple/item-types/publication/publication.component.ts
index 09481362c1..b6178893d6 100644
--- a/src/app/+item-page/simple/entity-types/publication/publication.component.ts
+++ b/src/app/+item-page/simple/item-types/publication/publication.component.ts
@@ -3,22 +3,22 @@ import { Observable } from 'rxjs';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { Item } from '../../../../core/shared/item.model';
import {
- DEFAULT_ENTITY_TYPE,
- rendersEntityType
-} from '../../../../shared/entities/entity-type-decorator';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+ DEFAULT_ITEM_TYPE,
+ rendersItemType
+} from '../../../../shared/items/item-type-decorator';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { ElementViewMode } from '../../../../shared/view-mode';
-import { EntityComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/entity.component';
+import { ItemComponent, filterRelationsByTypeLabel, relationsToItems } from '../shared/item.component';
-@rendersEntityType('Publication', ElementViewMode.Full)
-@rendersEntityType(DEFAULT_ENTITY_TYPE, ElementViewMode.Full)
+@rendersItemType('Publication', ElementViewMode.Full)
+@rendersItemType(DEFAULT_ITEM_TYPE, ElementViewMode.Full)
@Component({
selector: 'ds-publication',
styleUrls: ['./publication.component.scss'],
templateUrl: './publication.component.html',
changeDetection: ChangeDetectionStrategy.OnPush,
})
-export class PublicationComponent extends EntityComponent implements OnInit {
+export class PublicationComponent extends ItemComponent implements OnInit {
/**
* The authors related to this publication
*/
diff --git a/src/app/+item-page/simple/entity-types/shared/entity.component.spec.ts b/src/app/+item-page/simple/item-types/shared/item.component.spec.ts
similarity index 94%
rename from src/app/+item-page/simple/entity-types/shared/entity.component.spec.ts
rename to src/app/+item-page/simple/item-types/shared/item.component.spec.ts
index 9565da1e7d..30f39957db 100644
--- a/src/app/+item-page/simple/entity-types/shared/entity.component.spec.ts
+++ b/src/app/+item-page/simple/item-types/shared/item.component.spec.ts
@@ -7,27 +7,26 @@ import { ItemDataService } from '../../../../core/data/item-data.service';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { MockTranslateLoader } from '../../../../shared/mocks/mock-translate-loader';
import { ChangeDetectionStrategy, DebugElement, NO_ERRORS_SCHEMA } from '@angular/core';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
import { TruncatePipe } from '../../../../shared/utils/truncate.pipe';
import { isNotEmpty } from '../../../../shared/empty.util';
import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service';
-import { RelationshipType } from '../../../../core/shared/entities/relationship-type.model';
+import { RelationshipType } from '../../../../core/shared/item-relationships/relationship-type.model';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { RemoteData } from '../../../../core/data/remote-data';
-import { Relationship } from '../../../../core/shared/entities/relationship.model';
-import { Observable } from 'rxjs';
+import { Relationship } from '../../../../core/shared/item-relationships/relationship.model';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { compareArraysUsing, compareArraysUsingIds } from './entity.component';
+import { compareArraysUsing, compareArraysUsingIds } from './item.component';
import { of as observableOf } from 'rxjs';
/**
- * Create a generic test for an entity-page-fields component using a mockItem and the type of component
+ * Create a generic test for an item-page-fields component using a mockItem and the type of component
* @param {Item} mockItem The item to use for testing. The item needs to contain just the metadata necessary to
* execute the tests for it's component.
* @param component The type of component to create test cases for.
* @returns {() => void} Returns a specDefinition for the test.
*/
-export function getEntityPageFieldsTest(mockItem: Item, component) {
+export function getItemPageFieldsTest(mockItem: Item, component) {
return () => {
let comp: any;
let fixture: ComponentFixture
;
@@ -101,7 +100,7 @@ export function createRelationshipsObservable() {
})
])));
}
-describe('EntityComponent', () => {
+describe('ItemComponent', () => {
const arr1 = [
{
id: 1,
diff --git a/src/app/+item-page/simple/entity-types/shared/entity.component.ts b/src/app/+item-page/simple/item-types/shared/item.component.ts
similarity index 92%
rename from src/app/+item-page/simple/entity-types/shared/entity.component.ts
rename to src/app/+item-page/simple/item-types/shared/item.component.ts
index 616c14269b..5527114ec3 100644
--- a/src/app/+item-page/simple/entity-types/shared/entity.component.ts
+++ b/src/app/+item-page/simple/item-types/shared/item.component.ts
@@ -4,12 +4,12 @@ import { distinctUntilChanged, filter, flatMap, map } from 'rxjs/operators';
import { ItemDataService } from '../../../../core/data/item-data.service';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { RemoteData } from '../../../../core/data/remote-data';
-import { RelationshipType } from '../../../../core/shared/entities/relationship-type.model';
-import { Relationship } from '../../../../core/shared/entities/relationship.model';
+import { RelationshipType } from '../../../../core/shared/item-relationships/relationship-type.model';
+import { Relationship } from '../../../../core/shared/item-relationships/relationship.model';
import { Item } from '../../../../core/shared/item.model';
import { getRemoteDataPayload } from '../../../../core/shared/operators';
import { hasValue } from '../../../../shared/empty.util';
-import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component';
/**
* Operator for comparing arrays using a mapping function
@@ -83,13 +83,13 @@ export const relationsToItems = (thisId: string, ids: ItemDataService) =>
);
@Component({
- selector: 'ds-entity',
+ selector: 'ds-item',
template: ''
})
/**
* A generic component for displaying metadata and relations of an item
*/
-export class EntityComponent implements OnInit {
+export class ItemComponent implements OnInit {
/**
* Resolved relationships and types together in one observable
*/
diff --git a/src/app/+item-page/simple/related-entities/related-entities.component.html b/src/app/+item-page/simple/related-entities/related-entities.component.html
deleted file mode 100644
index f09f0ccdef..0000000000
--- a/src/app/+item-page/simple/related-entities/related-entities.component.html
+++ /dev/null
@@ -1,5 +0,0 @@
- 0" [label]="label">
-
-
-
diff --git a/src/app/+item-page/simple/related-entities/related-entities-component.ts b/src/app/+item-page/simple/related-items/related-items-component.ts
similarity index 54%
rename from src/app/+item-page/simple/related-entities/related-entities-component.ts
rename to src/app/+item-page/simple/related-items/related-items-component.ts
index 85532eacbe..6ad2f0eeb3 100644
--- a/src/app/+item-page/simple/related-entities/related-entities-component.ts
+++ b/src/app/+item-page/simple/related-items/related-items-component.ts
@@ -3,19 +3,19 @@ import { Item } from '../../../core/shared/item.model';
import * as viewMode from '../../../shared/view-mode';
@Component({
- selector: 'ds-related-entities',
- styleUrls: ['./related-entities.component.scss'],
- templateUrl: './related-entities.component.html'
+ selector: 'ds-related-items',
+ styleUrls: ['./related-items.component.scss'],
+ templateUrl: './related-items.component.html'
})
/**
- * This component is used for displaying relations between entities
- * It expects a list of entities to display and a label to put on top
+ * This component is used for displaying relations between items
+ * It expects a list of items to display and a label to put on top
*/
-export class RelatedEntitiesComponent {
+export class RelatedItemsComponent {
/**
- * A list of entities to display
+ * A list of items to display
*/
- @Input() entities: Item[];
+ @Input() items: Item[];
/**
* An i18n label to use as a title for the list (usually describes the relation)
diff --git a/src/app/+item-page/simple/related-items/related-items.component.html b/src/app/+item-page/simple/related-items/related-items.component.html
new file mode 100644
index 0000000000..bd8b7eb5f3
--- /dev/null
+++ b/src/app/+item-page/simple/related-items/related-items.component.html
@@ -0,0 +1,5 @@
+ 0" [label]="label">
+
+
+
diff --git a/src/app/+item-page/simple/related-entities/related-entities.component.scss b/src/app/+item-page/simple/related-items/related-items.component.scss
similarity index 100%
rename from src/app/+item-page/simple/related-entities/related-entities.component.scss
rename to src/app/+item-page/simple/related-items/related-items.component.scss
diff --git a/src/app/+item-page/simple/related-entities/related-entities.component.spec.ts b/src/app/+item-page/simple/related-items/related-items.component.spec.ts
similarity index 62%
rename from src/app/+item-page/simple/related-entities/related-entities.component.spec.ts
rename to src/app/+item-page/simple/related-items/related-items.component.spec.ts
index a8897c1e88..ef42ab1098 100644
--- a/src/app/+item-page/simple/related-entities/related-entities.component.spec.ts
+++ b/src/app/+item-page/simple/related-items/related-items.component.spec.ts
@@ -1,12 +1,12 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
-import { RelatedEntitiesComponent } from './related-entities-component';
+import { RelatedItemsComponent } from './related-items-component';
import { Item } from '../../../core/shared/item.model';
import { RemoteData } from '../../../core/data/remote-data';
import { PaginatedList } from '../../../core/data/paginated-list';
import { PageInfo } from '../../../core/shared/page-info.model';
import { By } from '@angular/platform-browser';
-import { createRelationshipsObservable } from '../entity-types/shared/entity.component.spec';
+import { createRelationshipsObservable } from '../item-types/shared/item.component.spec';
import { of as observableOf } from 'rxjs';
const mockItem1: Item = Object.assign(new Item(), {
@@ -19,33 +19,33 @@ const mockItem2: Item = Object.assign(new Item(), {
metadata: [],
relationships: createRelationshipsObservable()
});
-const mockEntities = [mockItem1, mockItem2];
+const mockItems = [mockItem1, mockItem2];
-describe('RelatedEntitiesComponent', () => {
- let comp: RelatedEntitiesComponent;
- let fixture: ComponentFixture;
+describe('RelatedItemsComponent', () => {
+ let comp: RelatedItemsComponent;
+ let fixture: ComponentFixture;
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [],
- declarations: [RelatedEntitiesComponent],
+ declarations: [RelatedItemsComponent],
providers: [],
schemas: [NO_ERRORS_SCHEMA]
- }).overrideComponent(RelatedEntitiesComponent, {
+ }).overrideComponent(RelatedItemsComponent, {
set: {changeDetection: ChangeDetectionStrategy.Default}
}).compileComponents();
}));
beforeEach(async(() => {
- fixture = TestBed.createComponent(RelatedEntitiesComponent);
+ fixture = TestBed.createComponent(RelatedItemsComponent);
comp = fixture.componentInstance;
- comp.entities = mockEntities;
+ comp.items = mockItems;
fixture.detectChanges();
}));
- it(`should load ${mockEntities.length} entity-type-switcher components`, () => {
- const fields = fixture.debugElement.queryAll(By.css('ds-entity-type-switcher'));
- expect(fields.length).toBe(mockEntities.length);
+ it(`should load ${mockItems.length} item-type-switcher components`, () => {
+ const fields = fixture.debugElement.queryAll(By.css('ds-item-type-switcher'));
+ expect(fields.length).toBe(mockItems.length);
});
});
diff --git a/src/app/core/cache/models/entities/normalized-entity-type.model.ts b/src/app/core/cache/models/items/normalized-item-type.model.ts
similarity index 53%
rename from src/app/core/cache/models/entities/normalized-entity-type.model.ts
rename to src/app/core/cache/models/items/normalized-item-type.model.ts
index 729aa39d7b..80ec132c42 100644
--- a/src/app/core/cache/models/entities/normalized-entity-type.model.ts
+++ b/src/app/core/cache/models/items/normalized-item-type.model.ts
@@ -1,32 +1,32 @@
import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize';
-import { EntityType } from '../../../shared/entities/entity-type.model';
+import { ItemType } from '../../../shared/item-relationships/item-type.model';
import { ResourceType } from '../../../shared/resource-type';
import { mapsTo } from '../../builders/build-decorators';
import { NormalizedObject } from '../normalized-object.model';
import { IDToUUIDSerializer } from '../../id-to-uuid-serializer';
/**
- * Normalized model class for a DSpace EntityType
+ * Normalized model class for a DSpace ItemType
*/
-@mapsTo(EntityType)
+@mapsTo(ItemType)
@inheritSerialization(NormalizedObject)
-export class NormalizedEntityType extends NormalizedObject {
+export class NormalizedItemType extends NormalizedObject {
/**
- * The label that describes the ResourceType of the Entity
+ * The label that describes the ResourceType of the Item
*/
@autoserialize
label: string;
/**
- * The identifier of this EntityType
+ * The identifier of this ItemType
*/
@autoserialize
id: string;
/**
- * The universally unique identifier of this EntityType
+ * The universally unique identifier of this ItemType
*/
- @autoserializeAs(new IDToUUIDSerializer(ResourceType.EntityType), 'id')
+ @autoserializeAs(new IDToUUIDSerializer(ResourceType.ItemType), 'id')
uuid: string;
}
diff --git a/src/app/core/cache/models/entities/normalized-relationship-type.model.ts b/src/app/core/cache/models/items/normalized-relationship-type.model.ts
similarity index 85%
rename from src/app/core/cache/models/entities/normalized-relationship-type.model.ts
rename to src/app/core/cache/models/items/normalized-relationship-type.model.ts
index ea71e217b9..271bd9cb6f 100644
--- a/src/app/core/cache/models/entities/normalized-relationship-type.model.ts
+++ b/src/app/core/cache/models/items/normalized-relationship-type.model.ts
@@ -1,5 +1,5 @@
import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize';
-import { RelationshipType } from '../../../shared/entities/relationship-type.model';
+import { RelationshipType } from '../../../shared/item-relationships/relationship-type.model';
import { ResourceType } from '../../../shared/resource-type';
import { mapsTo, relationship } from '../../builders/build-decorators';
import { NormalizedDSpaceObject } from '../normalized-dspace-object.model';
@@ -56,17 +56,17 @@ export class NormalizedRelationshipType extends NormalizedObject {
rightMinCardinality: number;
/**
- * The type of Entity found to the left of this RelationshipType
+ * The type of Item found to the left of this RelationshipType
*/
@autoserialize
- @relationship(ResourceType.EntityType, false)
+ @relationship(ResourceType.ItemType, false)
leftType: string;
/**
- * The type of Entity found to the right of this RelationshipType
+ * The type of Item found to the right of this RelationshipType
*/
@autoserialize
- @relationship(ResourceType.EntityType, false)
+ @relationship(ResourceType.ItemType, false)
rightType: string;
/**
diff --git a/src/app/core/cache/models/entities/normalized-relationship.model.ts b/src/app/core/cache/models/items/normalized-relationship.model.ts
similarity index 75%
rename from src/app/core/cache/models/entities/normalized-relationship.model.ts
rename to src/app/core/cache/models/items/normalized-relationship.model.ts
index 598687bbde..5d0ca2a9ad 100644
--- a/src/app/core/cache/models/entities/normalized-relationship.model.ts
+++ b/src/app/core/cache/models/items/normalized-relationship.model.ts
@@ -1,5 +1,5 @@
import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize';
-import { Relationship } from '../../../shared/entities/relationship.model';
+import { Relationship } from '../../../shared/item-relationships/relationship.model';
import { ResourceType } from '../../../shared/resource-type';
import { mapsTo, relationship } from '../../builders/build-decorators';
import { NormalizedObject } from '../normalized-object.model';
@@ -19,25 +19,25 @@ export class NormalizedRelationship extends NormalizedObject {
id: string;
/**
- * The identifier of the Entity to the left side of this Relationship
+ * The identifier of the Item to the left side of this Relationship
*/
@autoserialize
leftId: string;
/**
- * The identifier of the Entity to the right side of this Relationship
+ * The identifier of the Item to the right side of this Relationship
*/
@autoserialize
rightId: string;
/**
- * The place of the Entity to the left side of this Relationship
+ * The place of the Item to the left side of this Relationship
*/
@autoserialize
leftPlace: number;
/**
- * The place of the Entity to the right side of this Relationship
+ * The place of the Item to the right side of this Relationship
*/
@autoserialize
rightPlace: number;
diff --git a/src/app/core/cache/models/normalized-object-factory.ts b/src/app/core/cache/models/normalized-object-factory.ts
index 2f8cab737f..e3b2f8dcd2 100644
--- a/src/app/core/cache/models/normalized-object-factory.ts
+++ b/src/app/core/cache/models/normalized-object-factory.ts
@@ -1,6 +1,6 @@
-import { NormalizedEntityType } from './entities/normalized-entity-type.model';
-import { NormalizedRelationshipType } from './entities/normalized-relationship-type.model';
-import { NormalizedRelationship } from './entities/normalized-relationship.model';
+import { NormalizedItemType } from './items/normalized-item-type.model';
+import { NormalizedRelationshipType } from './items/normalized-relationship-type.model';
+import { NormalizedRelationship } from './items/normalized-relationship.model';
import { NormalizedBitstream } from './normalized-bitstream.model';
import { NormalizedBundle } from './normalized-bundle.model';
import { NormalizedItem } from './normalized-item.model';
@@ -44,8 +44,8 @@ export class NormalizedObjectFactory {
case ResourceType.RelationshipType: {
return NormalizedRelationshipType
}
- case ResourceType.EntityType: {
- return NormalizedEntityType
+ case ResourceType.ItemType: {
+ return NormalizedItemType
}
case ResourceType.EPerson: {
return NormalizedEPerson
diff --git a/src/app/core/shared/entities/entity-type.model.ts b/src/app/core/shared/item-relationships/item-type.model.ts
similarity index 65%
rename from src/app/core/shared/entities/entity-type.model.ts
rename to src/app/core/shared/item-relationships/item-type.model.ts
index 4532e05b19..e4f98ab653 100644
--- a/src/app/core/shared/entities/entity-type.model.ts
+++ b/src/app/core/shared/item-relationships/item-type.model.ts
@@ -2,11 +2,11 @@ import { CacheableObject } from '../../cache/object-cache.reducer';
import { ResourceType } from '../resource-type';
/**
- * Describes a type of Entity
+ * Describes a type of Item
*/
-export class EntityType implements CacheableObject {
+export class ItemType implements CacheableObject {
/**
- * The identifier of this EntityType
+ * The identifier of this ItemType
*/
id: string;
@@ -21,7 +21,7 @@ export class EntityType implements CacheableObject {
type: ResourceType;
/**
- * The universally unique identifier of this EntityType
+ * The universally unique identifier of this ItemType
*/
uuid: string;
}
diff --git a/src/app/core/shared/entities/relationship-type.model.ts b/src/app/core/shared/item-relationships/relationship-type.model.ts
similarity index 80%
rename from src/app/core/shared/entities/relationship-type.model.ts
rename to src/app/core/shared/item-relationships/relationship-type.model.ts
index 05dd0cd754..404d8cdb4b 100644
--- a/src/app/core/shared/entities/relationship-type.model.ts
+++ b/src/app/core/shared/item-relationships/relationship-type.model.ts
@@ -2,10 +2,10 @@ import { Observable } from 'rxjs';
import { CacheableObject } from '../../cache/object-cache.reducer';
import { RemoteData } from '../../data/remote-data';
import { ResourceType } from '../resource-type';
-import { EntityType } from './entity-type.model';
+import { ItemType } from './item-type.model';
/**
- * Describes a type of Relationship between multiple possible Entities
+ * Describes a type of Relationship between multiple possible Items
*/
export class RelationshipType implements CacheableObject {
/**
@@ -64,12 +64,12 @@ export class RelationshipType implements CacheableObject {
rightMinCardinality: number;
/**
- * The type of Entity found to the left of this RelationshipType
+ * The type of Item found to the left of this RelationshipType
*/
- leftType: Observable>;
+ leftType: Observable>;
/**
- * The type of Entity found to the right of this RelationshipType
+ * The type of Item found to the right of this RelationshipType
*/
- rightType: Observable>;
+ rightType: Observable>;
}
diff --git a/src/app/core/shared/entities/relationship.model.ts b/src/app/core/shared/item-relationships/relationship.model.ts
similarity index 73%
rename from src/app/core/shared/entities/relationship.model.ts
rename to src/app/core/shared/item-relationships/relationship.model.ts
index ef76b0a32a..df8f04cd8a 100644
--- a/src/app/core/shared/entities/relationship.model.ts
+++ b/src/app/core/shared/item-relationships/relationship.model.ts
@@ -5,7 +5,7 @@ import { ResourceType } from '../resource-type';
import { RelationshipType } from './relationship-type.model';
/**
- * Describes a Relationship between two Entities
+ * Describes a Relationship between two Items
*/
export class Relationship implements CacheableObject {
/**
@@ -29,22 +29,22 @@ export class Relationship implements CacheableObject {
id: string;
/**
- * The identifier of the Entity to the left side of this Relationship
+ * The identifier of the Item to the left side of this Relationship
*/
leftId: string;
/**
- * The identifier of the Entity to the right side of this Relationship
+ * The identifier of the Item to the right side of this Relationship
*/
rightId: string;
/**
- * The place of the Entity to the left side of this Relationship
+ * The place of the Item to the left side of this Relationship
*/
leftPlace: number;
/**
- * The place of the Entity to the right side of this Relationship
+ * The place of the Item to the right side of this Relationship
*/
rightPlace: number;
diff --git a/src/app/core/shared/item.model.ts b/src/app/core/shared/item.model.ts
index e8646777cf..7dadfafdd9 100644
--- a/src/app/core/shared/item.model.ts
+++ b/src/app/core/shared/item.model.ts
@@ -7,7 +7,7 @@ import { RemoteData } from '../data/remote-data';
import { Bitstream } from './bitstream.model';
import { hasValue, isNotEmpty } from '../../shared/empty.util';
import { PaginatedList } from '../data/paginated-list';
-import { Relationship } from './entities/relationship.model';
+import { Relationship } from './item-relationships/relationship.model';
export class Item extends DSpaceObject {
diff --git a/src/app/core/shared/resource-type.ts b/src/app/core/shared/resource-type.ts
index 4251f68e35..c61989dcc3 100644
--- a/src/app/core/shared/resource-type.ts
+++ b/src/app/core/shared/resource-type.ts
@@ -11,5 +11,5 @@ export enum ResourceType {
ResourcePolicy = 'resourcePolicy',
Relationship = 'relationship',
RelationshipType = 'relationshiptype',
- EntityType = 'entitytype',
+ ItemType = 'entitytype',
}
diff --git a/src/app/shared/entities/entity-type-decorator.ts b/src/app/shared/items/item-type-decorator.ts
similarity index 62%
rename from src/app/shared/entities/entity-type-decorator.ts
rename to src/app/shared/items/item-type-decorator.ts
index 9af226ea3d..509a1c754a 100644
--- a/src/app/shared/entities/entity-type-decorator.ts
+++ b/src/app/shared/items/item-type-decorator.ts
@@ -1,16 +1,16 @@
import { hasNoValue, hasValue } from '../empty.util';
import { ElementViewMode } from '../view-mode';
-export const DEFAULT_ENTITY_TYPE = 'Default';
+export const DEFAULT_ITEM_TYPE = 'Default';
const map = new Map();
/**
- * Decorator used for rendering simple item pages for an Entity by type and viewMode
+ * Decorator used for rendering simple item pages by type and viewMode
* @param type
* @param viewMode
*/
-export function rendersEntityType(type: string, viewMode: ElementViewMode) {
+export function rendersItemType(type: string, viewMode: ElementViewMode) {
return function decorator(component: any) {
if (hasNoValue(map.get(viewMode))) {
map.set(viewMode, new Map());
@@ -23,14 +23,14 @@ export function rendersEntityType(type: string, viewMode: ElementViewMode) {
}
/**
- * Get the component used for rendering an entity by type and viewMode
+ * Get the component used for rendering an item by type and viewMode
* @param type
* @param viewMode
*/
-export function getComponentByEntityType(type: string, viewMode: ElementViewMode) {
+export function getComponentByItemType(type: string, viewMode: ElementViewMode) {
let component = map.get(viewMode).get(type);
if (hasNoValue(component)) {
- component = map.get(viewMode).get(DEFAULT_ENTITY_TYPE);
+ component = map.get(viewMode).get(DEFAULT_ITEM_TYPE);
}
return component;
}
diff --git a/src/app/shared/entities/switcher/entity-type-switcher.component.html b/src/app/shared/items/switcher/item-type-switcher.component.html
similarity index 100%
rename from src/app/shared/entities/switcher/entity-type-switcher.component.html
rename to src/app/shared/items/switcher/item-type-switcher.component.html
diff --git a/src/app/shared/entities/switcher/entity-type-switcher.component.scss b/src/app/shared/items/switcher/item-type-switcher.component.scss
similarity index 100%
rename from src/app/shared/entities/switcher/entity-type-switcher.component.scss
rename to src/app/shared/items/switcher/item-type-switcher.component.scss
diff --git a/src/app/shared/entities/switcher/entity-type-switcher.component.spec.ts b/src/app/shared/items/switcher/item-type-switcher.component.spec.ts
similarity index 63%
rename from src/app/shared/entities/switcher/entity-type-switcher.component.spec.ts
rename to src/app/shared/items/switcher/item-type-switcher.component.spec.ts
index 053b03512a..67f5309793 100644
--- a/src/app/shared/entities/switcher/entity-type-switcher.component.spec.ts
+++ b/src/app/shared/items/switcher/item-type-switcher.component.spec.ts
@@ -1,4 +1,4 @@
-import { EntityTypeSwitcherComponent } from './entity-type-switcher.component';
+import { ItemTypeSwitcherComponent } from './item-type-switcher.component';
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { of as observableOf } from 'rxjs';
@@ -6,8 +6,8 @@ import { PageInfo } from '../../../core/shared/page-info.model';
import { Item } from '../../../core/shared/item.model';
import { PaginatedList } from '../../../core/data/paginated-list';
import { RemoteData } from '../../../core/data/remote-data';
-import * as decorator from '../entity-type-decorator';
-import { getComponentByEntityType } from '../entity-type-decorator';
+import * as decorator from '../item-type-decorator';
+import { getComponentByItemType } from '../item-type-decorator';
import { ElementViewMode } from '../../view-mode';
import createSpy = jasmine.createSpy;
@@ -28,23 +28,23 @@ const mockItem: Item = Object.assign(new Item(), {
});
const viewMode = ElementViewMode.Full;
-describe('EntityTypeSwitcherComponent', () => {
- let comp: EntityTypeSwitcherComponent;
- let fixture: ComponentFixture;
+describe('ItemTypeSwitcherComponent', () => {
+ let comp: ItemTypeSwitcherComponent;
+ let fixture: ComponentFixture;
beforeEach(async(() => {
TestBed.configureTestingModule({
- declarations: [ EntityTypeSwitcherComponent ],
+ declarations: [ ItemTypeSwitcherComponent ],
schemas: [ NO_ERRORS_SCHEMA ]
}).compileComponents(); // compile template and css
}));
beforeEach(async(() => {
- fixture = TestBed.createComponent(EntityTypeSwitcherComponent);
+ fixture = TestBed.createComponent(ItemTypeSwitcherComponent);
comp = fixture.componentInstance;
comp.object = mockItem;
comp.viewMode = viewMode;
- spyOnProperty(decorator, 'getComponentByEntityType').and.returnValue(createSpy('getComponentByEntityType'))
+ spyOnProperty(decorator, 'getComponentByItemType').and.returnValue(createSpy('getComponentByItemType'))
}));
describe('when calling getComponent', () => {
@@ -52,8 +52,8 @@ describe('EntityTypeSwitcherComponent', () => {
comp.getComponent();
});
- it('should call getComponentByEntityType with parameters type and viewMode', () => {
- expect(decorator.getComponentByEntityType).toHaveBeenCalledWith(relationType, viewMode);
+ it('should call getComponentByItemType with parameters type and viewMode', () => {
+ expect(decorator.getComponentByItemType).toHaveBeenCalledWith(relationType, viewMode);
});
});
diff --git a/src/app/shared/entities/switcher/entity-type-switcher.component.ts b/src/app/shared/items/switcher/item-type-switcher.component.ts
similarity index 82%
rename from src/app/shared/entities/switcher/entity-type-switcher.component.ts
rename to src/app/shared/items/switcher/item-type-switcher.component.ts
index 4b910ebebc..5599326e98 100644
--- a/src/app/shared/entities/switcher/entity-type-switcher.component.ts
+++ b/src/app/shared/items/switcher/item-type-switcher.component.ts
@@ -3,20 +3,20 @@ import { SearchResult } from '../../../+search-page/search-result.model';
import { Item } from '../../../core/shared/item.model';
import { hasValue } from '../../empty.util';
import { ItemSearchResult } from '../../object-collection/shared/item-search-result.model';
-import { getComponentByEntityType } from '../entity-type-decorator';
+import { getComponentByItemType } from '../item-type-decorator';
import { ElementViewMode } from '../../view-mode';
export const ITEM: InjectionToken = new InjectionToken('item');
@Component({
- selector: 'ds-entity-type-switcher',
- styleUrls: ['./entity-type-switcher.component.scss'],
- templateUrl: './entity-type-switcher.component.html'
+ selector: 'ds-item-type-switcher',
+ styleUrls: ['./item-type-switcher.component.scss'],
+ templateUrl: './item-type-switcher.component.html'
})
/**
* Component for determining what component to use depending on the item's relationship type (relationship.type)
*/
-export class EntityTypeSwitcherComponent implements OnInit {
+export class ItemTypeSwitcherComponent implements OnInit {
/**
* The item to determine the component for
*/
@@ -57,6 +57,6 @@ export class EntityTypeSwitcherComponent implements OnInit {
}
const type = item.findMetadata('relationship.type');
- return getComponentByEntityType(type, this.viewMode);
+ return getComponentByItemType(type, this.viewMode);
}
}
diff --git a/src/app/shared/object-list/item-list-element/entity-list-element.component.html b/src/app/shared/object-list/item-list-element/entity-list-element.component.html
deleted file mode 100644
index 777f131a23..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-list-element.component.html
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts
deleted file mode 100644
index 7f8278fcd3..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { Component } from '@angular/core';
-import { rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('JournalIssue', ElementViewMode.SetElement)
-@Component({
- selector: 'ds-journal-issue-list-element',
- styleUrls: ['./journal-issue-list-element.component.scss'],
- templateUrl: './journal-issue-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Journal Issue
- */
-export class JournalIssueListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts
deleted file mode 100644
index e68b7e462d..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { Component } from '@angular/core';
-import { rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('JournalVolume', ElementViewMode.SetElement)
-@Component({
- selector: 'ds-journal-volume-list-element',
- styleUrls: ['./journal-volume-list-element.component.scss'],
- templateUrl: './journal-volume-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Journal Volume
- */
-export class JournalVolumeListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts
deleted file mode 100644
index 23d030c77f..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { Component } from '@angular/core';
-import { rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('Journal', ElementViewMode.SetElement)
-@Component({
- selector: 'ds-journal-list-element',
- styleUrls: ['./journal-list-element.component.scss'],
- templateUrl: './journal-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Journal
- */
-export class JournalListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.ts
deleted file mode 100644
index 72bd143971..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { Component } from '@angular/core';
-import { rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('OrgUnit', ElementViewMode.SetElement)
-@Component({
- selector: 'ds-orgunit-list-element',
- styleUrls: ['./orgunit-list-element.component.scss'],
- templateUrl: './orgunit-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Organisation Unit
- */
-export class OrgUnitListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.ts
deleted file mode 100644
index 32e378c8c7..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { Component } from '@angular/core';
-import { rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('Person', ElementViewMode.SetElement)
-@Component({
- selector: 'ds-person-list-element',
- styleUrls: ['./person-list-element.component.scss'],
- templateUrl: './person-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Person
- */
-export class PersonListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.ts
deleted file mode 100644
index ffffd70a33..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { Component } from '@angular/core';
-import { rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('Project', ElementViewMode.SetElement)
-@Component({
- selector: 'ds-project-list-element',
- styleUrls: ['./project-list-element.component.scss'],
- templateUrl: './project-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Project
- */
-export class ProjectListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.ts
deleted file mode 100644
index 5e98a5657e..0000000000
--- a/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { Component } from '@angular/core';
-import { DEFAULT_ENTITY_TYPE, rendersEntityType } from '../../../../entities/entity-type-decorator';
-import { ElementViewMode } from '../../../../view-mode';
-import { EntitySearchResultComponent } from '../entity-search-result-component';
-
-@rendersEntityType('Publication', ElementViewMode.SetElement)
-@rendersEntityType(DEFAULT_ENTITY_TYPE, ElementViewMode.SetElement)
-@Component({
- selector: 'ds-publication-list-element',
- styleUrls: ['./publication-list-element.component.scss'],
- templateUrl: './publication-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item with entity type Publication
- */
-export class PublicationListElementComponent extends EntitySearchResultComponent {
-}
diff --git a/src/app/shared/object-list/item-list-element/item-list-element.component.html b/src/app/shared/object-list/item-list-element/item-list-element.component.html
new file mode 100644
index 0000000000..8cdf8cac6a
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-list-element.component.html
@@ -0,0 +1 @@
+
diff --git a/src/app/shared/object-list/item-list-element/entity-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-list-element.component.spec.ts
similarity index 62%
rename from src/app/shared/object-list/item-list-element/entity-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-list-element.component.spec.ts
index b32db3df06..11fdae7e6d 100644
--- a/src/app/shared/object-list/item-list-element/entity-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-list-element.component.spec.ts
@@ -1,13 +1,12 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
-import { EntityListElementComponent } from './entity-list-element.component';
+import { ItemListElementComponent } from './item-list-element.component';
import { Item } from '../../../core/shared/item.model';
-import { Observable } from 'rxjs';
import { RemoteData } from '../../../core/data/remote-data';
import { PaginatedList } from '../../../core/data/paginated-list';
import { PageInfo } from '../../../core/shared/page-info.model';
import { By } from '@angular/platform-browser';
-import { createRelationshipsObservable } from '../../../+item-page/simple/entity-types/shared/entity.component.spec';
+import { createRelationshipsObservable } from '../../../+item-page/simple/item-types/shared/item.component.spec';
import { of as observableOf } from 'rxjs';
const mockItem: Item = Object.assign(new Item(), {
@@ -16,32 +15,32 @@ const mockItem: Item = Object.assign(new Item(), {
relationships: createRelationshipsObservable()
});
-describe('EntityListElementComponent', () => {
- let comp: EntityListElementComponent;
- let fixture: ComponentFixture;
+describe('ItemListElementComponent', () => {
+ let comp: ItemListElementComponent;
+ let fixture: ComponentFixture;
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [],
- declarations: [EntityListElementComponent],
+ declarations: [ItemListElementComponent],
providers: [
{ provide: 'objectElementProvider', useValue: mockItem }
],
schemas: [NO_ERRORS_SCHEMA]
- }).overrideComponent(EntityListElementComponent, {
+ }).overrideComponent(ItemListElementComponent, {
set: {changeDetection: ChangeDetectionStrategy.Default}
}).compileComponents();
}));
beforeEach(async(() => {
- fixture = TestBed.createComponent(EntityListElementComponent);
+ fixture = TestBed.createComponent(ItemListElementComponent);
comp = fixture.componentInstance;
fixture.detectChanges();
}));
- it('should call an entity-type-switcher component and pass the item', () => {
- const entityTypeSwitcher = fixture.debugElement.query(By.css('ds-entity-type-switcher')).componentInstance;
- expect(entityTypeSwitcher.object).toBe(mockItem);
+ it('should call an item-type-switcher component and pass the item', () => {
+ const itemTypeSwitcher = fixture.debugElement.query(By.css('ds-item-type-switcher')).componentInstance;
+ expect(itemTypeSwitcher.object).toBe(mockItem);
});
});
diff --git a/src/app/shared/object-list/item-list-element/entity-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-list-element.component.ts
similarity index 59%
rename from src/app/shared/object-list/item-list-element/entity-list-element.component.ts
rename to src/app/shared/object-list/item-list-element/item-list-element.component.ts
index e71a868579..a9677c9777 100644
--- a/src/app/shared/object-list/item-list-element/entity-list-element.component.ts
+++ b/src/app/shared/object-list/item-list-element/item-list-element.component.ts
@@ -7,16 +7,16 @@ import { AbstractListableElementComponent } from '../../object-collection/shared
import { SetViewMode } from '../../view-mode';
@Component({
- selector: 'ds-entity-list-element',
- styleUrls: ['./entity-list-element.component.scss'],
- templateUrl: './entity-list-element.component.html'
+ selector: 'ds-item-list-element',
+ styleUrls: ['./item-list-element.component.scss'],
+ templateUrl: './item-list-element.component.html'
})
/**
- * The component used to list entities depending on type
- * Uses entity-type-switcher to determine which components to use for displaying the list
+ * The component used to list items depending on type
+ * Uses item-type-switcher to determine which components to use for displaying the list
*/
@renderElementsFor(Item, SetViewMode.List)
-export class EntityListElementComponent extends AbstractListableElementComponent- {
+export class ItemListElementComponent extends AbstractListableElementComponent
- {
ElementViewMode = viewMode.ElementViewMode;
}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/entity-search-result-component.ts b/src/app/shared/object-list/item-list-element/item-types/item-search-result-component.ts
similarity index 77%
rename from src/app/shared/object-list/item-list-element/entity-types/entity-search-result-component.ts
rename to src/app/shared/object-list/item-list-element/item-types/item-search-result-component.ts
index ed53c45395..17e7b7f173 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/entity-search-result-component.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/item-search-result-component.ts
@@ -1,19 +1,19 @@
import { Component, Inject } from '@angular/core';
import { Item } from '../../../../core/shared/item.model';
import { hasValue } from '../../../empty.util';
-import { ITEM } from '../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../items/switcher/item-type-switcher.component';
import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model';
import { TruncatableService } from '../../../truncatable/truncatable.service';
import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component';
/**
- * A generic component for displaying entity list elements
+ * A generic component for displaying item list elements
*/
@Component({
- selector: 'ds-entity-search-result',
+ selector: 'ds-item-search-result',
template: ''
})
-export class EntitySearchResultComponent extends SearchResultListElementComponent {
+export class ItemSearchResultComponent extends SearchResultListElementComponent {
item: Item;
constructor(
diff --git a/src/app/shared/object-list/item-list-element/entity-types/entity-search-result.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/item-search-result.component.spec.ts
similarity index 75%
rename from src/app/shared/object-list/item-list-element/entity-types/entity-search-result.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/item-search-result.component.spec.ts
index e9a871985b..be163f7a6c 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/entity-search-result.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/item-search-result.component.spec.ts
@@ -2,15 +2,14 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { TruncatePipe } from '../../../utils/truncate.pipe';
import { TruncatableService } from '../../../truncatable/truncatable.service';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
-import { EntitySearchResultComponent } from './entity-search-result-component';
+import { ItemSearchResultComponent } from './item-search-result-component';
import { Item } from '../../../../core/shared/item.model';
-import { Observable } from 'rxjs';
import { RemoteData } from '../../../../core/data/remote-data';
import { PaginatedList } from '../../../../core/data/paginated-list';
import { PageInfo } from '../../../../core/shared/page-info.model';
-import { ITEM } from '../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../items/switcher/item-type-switcher.component';
import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model';
-import { createRelationshipsObservable } from '../../../../+item-page/simple/entity-types/shared/entity.component.spec';
+import { createRelationshipsObservable } from '../../../../+item-page/simple/item-types/shared/item.component.spec';
import { of as observableOf } from 'rxjs';
const mockItem: Item = Object.assign(new Item(), {
@@ -23,27 +22,27 @@ const mockSearchResult = {
hitHighlights: []
} as ItemSearchResult;
-describe('EntitySearchResultComponent', () => {
- let comp: EntitySearchResultComponent;
- let fixture: ComponentFixture;
+describe('ItemSearchResultComponent', () => {
+ let comp: ItemSearchResultComponent;
+ let fixture: ComponentFixture;
describe('when injecting an Item', () => {
beforeEach(async(() => {
TestBed.configureTestingModule({
- declarations: [EntitySearchResultComponent, TruncatePipe],
+ declarations: [ItemSearchResultComponent, TruncatePipe],
providers: [
{provide: TruncatableService, useValue: {}},
{provide: ITEM, useValue: mockItem}
],
schemas: [NO_ERRORS_SCHEMA]
- }).overrideComponent(EntitySearchResultComponent, {
+ }).overrideComponent(ItemSearchResultComponent, {
set: {changeDetection: ChangeDetectionStrategy.Default}
}).compileComponents();
}));
beforeEach(async(() => {
- fixture = TestBed.createComponent(EntitySearchResultComponent);
+ fixture = TestBed.createComponent(ItemSearchResultComponent);
comp = fixture.componentInstance;
}));
@@ -57,20 +56,20 @@ describe('EntitySearchResultComponent', () => {
describe('when injecting an ItemSearchResult', () => {
beforeEach(async(() => {
TestBed.configureTestingModule({
- declarations: [EntitySearchResultComponent, TruncatePipe],
+ declarations: [ItemSearchResultComponent, TruncatePipe],
providers: [
{provide: TruncatableService, useValue: {}},
{provide: ITEM, useValue: mockSearchResult}
],
schemas: [NO_ERRORS_SCHEMA]
- }).overrideComponent(EntitySearchResultComponent, {
+ }).overrideComponent(ItemSearchResultComponent, {
set: {changeDetection: ChangeDetectionStrategy.Default}
}).compileComponents();
}));
beforeEach(async(() => {
- fixture = TestBed.createComponent(EntitySearchResultComponent);
+ fixture = TestBed.createComponent(ItemSearchResultComponent);
comp = fixture.componentInstance;
}));
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.spec.ts
similarity index 96%
rename from src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.spec.ts
index 07be07d051..4f829a6818 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.spec.ts
@@ -1,11 +1,10 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { JournalIssueListElementComponent } from './journal-issue-list-element.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.ts
new file mode 100644
index 0000000000..3b47d1ab51
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.ts
@@ -0,0 +1,16 @@
+import { Component } from '@angular/core';
+import { rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('JournalIssue', ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-journal-issue-list-element',
+ styleUrls: ['./journal-issue-list-element.component.scss'],
+ templateUrl: './journal-issue-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Journal Issue
+ */
+export class JournalIssueListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.spec.ts
similarity index 96%
rename from src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.spec.ts
index 7388d12f25..93071289b8 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.spec.ts
@@ -1,11 +1,10 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { JournalVolumeListElementComponent } from './journal-volume-list-element.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.ts
new file mode 100644
index 0000000000..39595122e1
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.ts
@@ -0,0 +1,16 @@
+import { Component } from '@angular/core';
+import { rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('JournalVolume', ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-journal-volume-list-element',
+ styleUrls: ['./journal-volume-list-element.component.scss'],
+ templateUrl: './journal-volume-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Journal Volume
+ */
+export class JournalVolumeListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.spec.ts
similarity index 95%
rename from src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.spec.ts
index 8fd8d870fa..abdeb9c00f 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.spec.ts
@@ -1,11 +1,10 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { JournalListElementComponent } from './journal-list-element.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.ts
new file mode 100644
index 0000000000..113594630e
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.ts
@@ -0,0 +1,16 @@
+import { Component } from '@angular/core';
+import { rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('Journal', ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-journal-list-element',
+ styleUrls: ['./journal-list-element.component.scss'],
+ templateUrl: './journal-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Journal
+ */
+export class JournalListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.spec.ts
similarity index 95%
rename from src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.spec.ts
index 678e1e42bc..14b86d720a 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.spec.ts
@@ -1,11 +1,10 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { OrgUnitListElementComponent } from './orgunit-list-element.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.ts
new file mode 100644
index 0000000000..6fe95e6917
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.ts
@@ -0,0 +1,16 @@
+import { Component } from '@angular/core';
+import { rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('OrgUnit', ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-orgunit-list-element',
+ styleUrls: ['./orgunit-list-element.component.scss'],
+ templateUrl: './orgunit-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Organisation Unit
+ */
+export class OrgUnitListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.spec.ts
similarity index 95%
rename from src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.spec.ts
index 3005c852af..836588c565 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/person/person-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.spec.ts
@@ -1,11 +1,10 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { PersonListElementComponent } from './person-list-element.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.ts
new file mode 100644
index 0000000000..5fd3c63f27
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.ts
@@ -0,0 +1,16 @@
+import { Component } from '@angular/core';
+import { rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('Person', ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-person-list-element',
+ styleUrls: ['./person-list-element.component.scss'],
+ templateUrl: './person-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Person
+ */
+export class PersonListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.spec.ts
similarity index 95%
rename from src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.spec.ts
index b4437ceaea..cd0cce95f2 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/project/project-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.spec.ts
@@ -1,11 +1,10 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { ProjectListElementComponent } from './project-list-element.component';
import { of as observableOf } from 'rxjs';
diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.ts
new file mode 100644
index 0000000000..ad3cb824ea
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.ts
@@ -0,0 +1,16 @@
+import { Component } from '@angular/core';
+import { rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('Project', ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-project-list-element',
+ styleUrls: ['./project-list-element.component.scss'],
+ templateUrl: './project-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Project
+ */
+export class ProjectListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.html b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.html
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.html
rename to src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.html
diff --git a/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.scss
similarity index 100%
rename from src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.scss
rename to src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.scss
diff --git a/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.spec.ts b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.spec.ts
similarity index 97%
rename from src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.spec.ts
rename to src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.spec.ts
index 9a2fdbcc0b..6f596d1938 100644
--- a/src/app/shared/object-list/item-list-element/entity-types/publication/publication-list-element.component.spec.ts
+++ b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.spec.ts
@@ -1,12 +1,11 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
import { By } from '@angular/platform-browser';
-import { Observable } from 'rxjs';
import { PublicationListElementComponent } from './publication-list-element.component';
import { Item } from '../../../../../core/shared/item.model';
import { TruncatePipe } from '../../../../utils/truncate.pipe';
import { TruncatableService } from '../../../../truncatable/truncatable.service';
-import { ITEM } from '../../../../entities/switcher/entity-type-switcher.component';
+import { ITEM } from '../../../../items/switcher/item-type-switcher.component';
import { of as observableOf } from 'rxjs';
let publicationListElementComponent: PublicationListElementComponent;
diff --git a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.ts b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.ts
new file mode 100644
index 0000000000..777cfc6013
--- /dev/null
+++ b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.ts
@@ -0,0 +1,17 @@
+import { Component } from '@angular/core';
+import { DEFAULT_ITEM_TYPE, rendersItemType } from '../../../../items/item-type-decorator';
+import { ElementViewMode } from '../../../../view-mode';
+import { ItemSearchResultComponent } from '../item-search-result-component';
+
+@rendersItemType('Publication', ElementViewMode.SetElement)
+@rendersItemType(DEFAULT_ITEM_TYPE, ElementViewMode.SetElement)
+@Component({
+ selector: 'ds-publication-list-element',
+ styleUrls: ['./publication-list-element.component.scss'],
+ templateUrl: './publication-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an item of the type Publication
+ */
+export class PublicationListElementComponent extends ItemSearchResultComponent {
+}
diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.html b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.html
index 777f131a23..8cdf8cac6a 100644
--- a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.html
+++ b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.html
@@ -1 +1 @@
-
+
diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.spec.ts b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.spec.ts
index b1f511868a..28fbbc419a 100644
--- a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.spec.ts
+++ b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.spec.ts
@@ -9,7 +9,7 @@ import { ItemSearchResultListElementComponent } from './item-search-result-list-
import { By } from '@angular/platform-browser';
import { TruncatableService } from '../../../truncatable/truncatable.service';
import { TruncatePipe } from '../../../utils/truncate.pipe';
-import { createRelationshipsObservable } from '../../../../+item-page/simple/entity-types/shared/entity.component.spec';
+import { createRelationshipsObservable } from '../../../../+item-page/simple/item-types/shared/item.component.spec';
import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model';
const mockItem: Item = Object.assign(new Item(), {
@@ -81,9 +81,9 @@ describe('ItemSearchResultListElementComponent', () => {
fixture.detectChanges();
}));
- it('should call an entity-type-switcher component and pass the item', () => {
- const entityTypeSwitcher = fixture.debugElement.query(By.css('ds-entity-type-switcher')).componentInstance;
- expect(entityTypeSwitcher.object).toBe(mockItem);
+ it('should call an item-type-switcher component and pass the item', () => {
+ const itemTypeSwitcher = fixture.debugElement.query(By.css('ds-item-type-switcher')).componentInstance;
+ expect(itemTypeSwitcher.object).toBe(mockItem);
});
});
diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts
index 106b330744..410425b865 100644
--- a/src/app/shared/shared.module.ts
+++ b/src/app/shared/shared.module.ts
@@ -13,15 +13,15 @@ import {
import { TranslateModule } from '@ngx-translate/core';
import { NgxPaginationModule } from 'ngx-pagination';
-import { EntityTypeSwitcherComponent } from './entities/switcher/entity-type-switcher.component';
-import { EntitySearchResultComponent } from './object-list/item-list-element/entity-types/entity-search-result-component';
-import { PublicationListElementComponent } from './object-list/item-list-element/entity-types/publication/publication-list-element.component';
-import { OrgUnitListElementComponent } from './object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component';
-import { PersonListElementComponent } from './object-list/item-list-element/entity-types/person/person-list-element.component';
-import { ProjectListElementComponent } from './object-list/item-list-element/entity-types/project/project-list-element.component';
-import { JournalListElementComponent } from './object-list/item-list-element/entity-types/journal/journal-list-element.component';
-import { JournalVolumeListElementComponent } from './object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component';
-import { JournalIssueListElementComponent } from './object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component';
+import { ItemTypeSwitcherComponent } from './items/switcher/item-type-switcher.component';
+import { ItemSearchResultComponent } from './object-list/item-list-element/item-types/item-search-result-component';
+import { PublicationListElementComponent } from './object-list/item-list-element/item-types/publication/publication-list-element.component';
+import { OrgUnitListElementComponent } from './object-list/item-list-element/item-types/orgunit/orgunit-list-element.component';
+import { PersonListElementComponent } from './object-list/item-list-element/item-types/person/person-list-element.component';
+import { ProjectListElementComponent } from './object-list/item-list-element/item-types/project/project-list-element.component';
+import { JournalListElementComponent } from './object-list/item-list-element/item-types/journal/journal-list-element.component';
+import { JournalVolumeListElementComponent } from './object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component';
+import { JournalIssueListElementComponent } from './object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component';
import { FileUploadModule } from 'ng2-file-upload';
@@ -34,7 +34,7 @@ import { ConsolePipe } from './utils/console.pipe';
import { CollectionListElementComponent } from './object-list/collection-list-element/collection-list-element.component';
import { CommunityListElementComponent } from './object-list/community-list-element/community-list-element.component';
-import { EntityListElementComponent } from './object-list/item-list-element/entity-list-element.component';
+import { ItemListElementComponent } from './object-list/item-list-element/item-list-element.component';
import { SearchResultListElementComponent } from './object-list/search-result-list-element/search-result-list-element.component';
import { WrapperListElementComponent } from './object-list/wrapper-list-element/wrapper-list-element.component';
import { ObjectListComponent } from './object-list/object-list.component';
@@ -167,14 +167,14 @@ const COMPONENTS = [
TruncatableComponent,
TruncatablePartComponent,
InputSuggestionsComponent,
- EntitySearchResultComponent,
- EntityTypeSwitcherComponent,
+ ItemSearchResultComponent,
+ ItemTypeSwitcherComponent,
BrowseByComponent
];
const ENTRY_COMPONENTS = [
// put shared entry components (components that are created dynamically) here
- EntityListElementComponent,
+ ItemListElementComponent,
CollectionListElementComponent,
CommunityListElementComponent,
SearchResultListElementComponent,