diff --git a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.ts b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.ts index 223b5f7c8e..811965e145 100644 --- a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.ts +++ b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.ts @@ -33,6 +33,7 @@ const ITEM_EDIT_DELETE_PATH = 'delete'; { path: '', redirectTo: 'status', + pathMatch: 'full' }, { path: 'status', diff --git a/src/app/+item-page/item-page.module.ts b/src/app/+item-page/item-page.module.ts index 0c4ccc868b..d01363f55c 100644 --- a/src/app/+item-page/item-page.module.ts +++ b/src/app/+item-page/item-page.module.ts @@ -22,12 +22,6 @@ import { FullFileSectionComponent } from './full/field-components/file-section/f import { RelatedItemsComponent } from './simple/related-items/related-items-component'; import { SearchPageModule } from '../+search-page/search-page.module'; 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'; import { EditItemPageModule } from './edit-item-page/edit-item-page.module'; import { MetadataRepresentationListComponent } from './simple/metadata-representation-list/metadata-representation-list.component'; @@ -57,26 +51,22 @@ import { RelatedEntitiesSearchComponent } from './simple/related-entities/relate CollectionsComponent, FullFileSectionComponent, PublicationComponent, - ProjectComponent, - OrgunitComponent, - PersonComponent, RelatedItemsComponent, ItemComponent, GenericItemPageFieldComponent, - JournalComponent, - JournalIssueComponent, - JournalVolumeComponent, MetadataRepresentationListComponent, RelatedEntitiesSearchComponent ], + exports: [ + ItemComponent, + MetadataValuesComponent, + MetadataFieldWrapperComponent, + GenericItemPageFieldComponent, + RelatedEntitiesSearchComponent, + RelatedItemsComponent + ], entryComponents: [ - PublicationComponent, - ProjectComponent, - OrgunitComponent, - PersonComponent, - JournalComponent, - JournalIssueComponent, - JournalVolumeComponent + PublicationComponent ] }) export class ItemPageModule { diff --git a/src/app/app.module.ts b/src/app/app.module.ts index f9d6e50dcc..ce5a2d78a2 100755 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -37,6 +37,8 @@ import { AdminSidebarComponent } from './+admin/admin-sidebar/admin-sidebar.comp import { AdminSidebarSectionComponent } from './+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component'; import { ExpandableAdminSidebarSectionComponent } from './+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component'; import { NavbarModule } from './navbar/navbar.module'; +import { JournalEntitiesModule } from './entity-groups/journal-entities/journal-entities.module'; +import { ResearchEntitiesModule } from './entity-groups/research-entities/research-entities.module'; export function getConfig() { return ENV_CONFIG; @@ -66,6 +68,11 @@ const IMPORTS = [ StoreRouterConnectingModule, ]; +const ENTITY_IMPORTS = [ + JournalEntitiesModule, + ResearchEntitiesModule +]; + IMPORTS.push( StoreDevtoolsModule.instrument({ maxAge: 100, @@ -112,7 +119,8 @@ const EXPORTS = [ @NgModule({ imports: [ - ...IMPORTS + ...IMPORTS, + ...ENTITY_IMPORTS ], providers: [ ...PROVIDERS diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.html b/src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.html rename to src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.html diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.scss b/src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.scss similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.scss rename to src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.scss diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.spec.ts b/src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.spec.ts similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.spec.ts rename to src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.spec.ts diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.ts b/src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.ts similarity index 64% rename from src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.ts rename to src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.ts index 92a8dd9930..e1aeb7c4e6 100644 --- a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.ts +++ b/src/app/entity-groups/journal-entities/item-list-elements/journal-issue/journal-issue-list-element.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('JournalIssue', ItemViewMode.Element) @Component({ diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.html b/src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.html rename to src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.html diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.scss b/src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.scss similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.scss rename to src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.scss diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.spec.ts b/src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.spec.ts similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.spec.ts rename to src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.spec.ts diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.ts b/src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.ts similarity index 64% rename from src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.ts rename to src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.ts index 01acf3ca34..42e83ea7bd 100644 --- a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.ts +++ b/src/app/entity-groups/journal-entities/item-list-elements/journal-volume/journal-volume-list-element.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('JournalVolume', ItemViewMode.Element) @Component({ diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.html b/src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.html rename to src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.html diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.scss b/src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.scss similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.scss rename to src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.scss diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.spec.ts b/src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.spec.ts similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.spec.ts rename to src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.spec.ts diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.ts b/src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.ts similarity index 62% rename from src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.ts rename to src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.ts index a40891b452..fdcf0ba5b0 100644 --- a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.ts +++ b/src/app/entity-groups/journal-entities/item-list-elements/journal/journal-list-element.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('Journal', ItemViewMode.Element) @Component({ diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.html b/src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.html similarity index 100% rename from src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.html rename to src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.html diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.scss b/src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.scss similarity index 100% rename from src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.scss rename to src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.scss diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.spec.ts b/src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.spec.ts similarity index 100% rename from src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.spec.ts rename to src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.spec.ts diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.ts b/src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.ts similarity index 87% rename from src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.ts rename to src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.ts index 77ed54d67f..5f3d3b557d 100644 --- a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.ts +++ b/src/app/entity-groups/journal-entities/item-pages/journal-issue/journal-issue.component.ts @@ -5,8 +5,11 @@ import { Item } from '../../../../core/shared/item.model'; import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +import { ItemComponent } from '../../../../+item-page/simple/item-types/shared/item.component'; +import { + filterRelationsByTypeLabel, + relationsToItems +} from '../../../../+item-page/simple/item-types/shared/item-relationships-utils'; @rendersItemType('JournalIssue', ItemViewMode.Full) @Component({ diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.html b/src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.html similarity index 100% rename from src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.html rename to src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.html diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.scss b/src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.scss similarity index 100% rename from src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.scss rename to src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.scss diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.spec.ts b/src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.spec.ts similarity index 100% rename from src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.spec.ts rename to src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.spec.ts diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.ts b/src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.ts similarity index 86% rename from src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.ts rename to src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.ts index 616d96178a..cff840e5bd 100644 --- a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.ts +++ b/src/app/entity-groups/journal-entities/item-pages/journal-volume/journal-volume.component.ts @@ -5,8 +5,11 @@ import { Item } from '../../../../core/shared/item.model'; import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +import { ItemComponent } from '../../../../+item-page/simple/item-types/shared/item.component'; +import { + filterRelationsByTypeLabel, + relationsToItems +} from '../../../../+item-page/simple/item-types/shared/item-relationships-utils'; @rendersItemType('JournalVolume', ItemViewMode.Full) @Component({ diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.html b/src/app/entity-groups/journal-entities/item-pages/journal/journal.component.html similarity index 100% rename from src/app/+item-page/simple/item-types/journal/journal.component.html rename to src/app/entity-groups/journal-entities/item-pages/journal/journal.component.html diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.scss b/src/app/entity-groups/journal-entities/item-pages/journal/journal.component.scss similarity index 100% rename from src/app/+item-page/simple/item-types/journal/journal.component.scss rename to src/app/entity-groups/journal-entities/item-pages/journal/journal.component.scss diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.spec.ts b/src/app/entity-groups/journal-entities/item-pages/journal/journal.component.spec.ts similarity index 100% rename from src/app/+item-page/simple/item-types/journal/journal.component.spec.ts rename to src/app/entity-groups/journal-entities/item-pages/journal/journal.component.spec.ts diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.ts b/src/app/entity-groups/journal-entities/item-pages/journal/journal.component.ts similarity index 84% rename from src/app/+item-page/simple/item-types/journal/journal.component.ts rename to src/app/entity-groups/journal-entities/item-pages/journal/journal.component.ts index 0799f5c736..71da89cf4c 100644 --- a/src/app/+item-page/simple/item-types/journal/journal.component.ts +++ b/src/app/entity-groups/journal-entities/item-pages/journal/journal.component.ts @@ -5,8 +5,11 @@ import { Item } from '../../../../core/shared/item.model'; import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +import { ItemComponent } from '../../../../+item-page/simple/item-types/shared/item.component'; +import { + filterRelationsByTypeLabel, + relationsToItems +} from '../../../../+item-page/simple/item-types/shared/item-relationships-utils'; @rendersItemType('Journal', ItemViewMode.Full) @Component({ diff --git a/src/app/entity-groups/journal-entities/journal-entities.module.ts b/src/app/entity-groups/journal-entities/journal-entities.module.ts new file mode 100644 index 0000000000..50ec160650 --- /dev/null +++ b/src/app/entity-groups/journal-entities/journal-entities.module.ts @@ -0,0 +1,38 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from '../../shared/shared.module'; +import { ItemPageModule } from '../../+item-page/item-page.module'; +import { JournalComponent } from './item-pages/journal/journal.component'; +import { JournalIssueComponent } from './item-pages/journal-issue/journal-issue.component'; +import { JournalVolumeComponent } from './item-pages/journal-volume/journal-volume.component'; +import { JournalListElementComponent } from './item-list-elements/journal/journal-list-element.component'; +import { JournalIssueListElementComponent } from './item-list-elements/journal-issue/journal-issue-list-element.component'; +import { JournalVolumeListElementComponent } from './item-list-elements/journal-volume/journal-volume-list-element.component'; +import { TooltipModule } from 'ngx-bootstrap'; + +const ENTRY_COMPONENTS = [ + JournalComponent, + JournalIssueComponent, + JournalVolumeComponent, + JournalListElementComponent, + JournalIssueListElementComponent, + JournalVolumeListElementComponent +]; + +@NgModule({ + imports: [ + CommonModule, + SharedModule, + TooltipModule.forRoot(), + ItemPageModule + ], + declarations: [ + ...ENTRY_COMPONENTS + ], + entryComponents: [ + ...ENTRY_COMPONENTS + ] +}) +export class JournalEntitiesModule { + +} diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.html b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.html rename to src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.html diff --git a/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.scss b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.scss new file mode 100644 index 0000000000..1d0786105c --- /dev/null +++ b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables'; diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.spec.ts b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.spec.ts similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.spec.ts rename to src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.spec.ts diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.ts b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.ts similarity index 63% rename from src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.ts rename to src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.ts index f047aac586..9a56bb6d03 100644 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.ts +++ b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-list-element.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('OrgUnit', ItemViewMode.Element) @Component({ diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.html b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-metadata-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.html rename to src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-metadata-list-element.component.html diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.ts b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-metadata-list-element.component.ts similarity index 53% rename from src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.ts rename to src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-metadata-list-element.component.ts index 42c6c6f6a2..d59e5c6cc3 100644 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.ts +++ b/src/app/entity-groups/research-entities/item-list-elements/orgunit/orgunit-metadata-list-element.component.ts @@ -1,7 +1,7 @@ -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; import { Component } from '@angular/core'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -import { MetadataRepresentationType } from '../../../../../core/shared/metadata-representation/metadata-representation.model'; +import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('OrgUnit', ItemViewMode.Element, MetadataRepresentationType.Item) @Component({ diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.html b/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.html rename to src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.html diff --git a/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.scss b/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.scss new file mode 100644 index 0000000000..1d0786105c --- /dev/null +++ b/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables'; diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.spec.ts b/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.spec.ts similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.spec.ts rename to src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.spec.ts diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.ts b/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.ts similarity index 62% rename from src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.ts rename to src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.ts index b3834a8aab..46d90a6f2d 100644 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.ts +++ b/src/app/entity-groups/research-entities/item-list-elements/person/person-list-element.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('Person', ItemViewMode.Element) @Component({ diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.html b/src/app/entity-groups/research-entities/item-list-elements/person/person-metadata-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.html rename to src/app/entity-groups/research-entities/item-list-elements/person/person-metadata-list-element.component.html diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.ts b/src/app/entity-groups/research-entities/item-list-elements/person/person-metadata-list-element.component.ts similarity index 53% rename from src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.ts rename to src/app/entity-groups/research-entities/item-list-elements/person/person-metadata-list-element.component.ts index 959673242d..b036768d0a 100644 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.ts +++ b/src/app/entity-groups/research-entities/item-list-elements/person/person-metadata-list-element.component.ts @@ -1,7 +1,7 @@ -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; import { Component } from '@angular/core'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -import { MetadataRepresentationType } from '../../../../../core/shared/metadata-representation/metadata-representation.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('Person', ItemViewMode.Element, MetadataRepresentationType.Item) @Component({ diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.html b/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.html similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.html rename to src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.html diff --git a/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.scss b/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.scss new file mode 100644 index 0000000000..1d0786105c --- /dev/null +++ b/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables'; diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.spec.ts b/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.spec.ts similarity index 100% rename from src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.spec.ts rename to src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.spec.ts diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.ts b/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.ts similarity index 62% rename from src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.ts rename to src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.ts index 86b58c94fd..2d3e716ff4 100644 --- a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.ts +++ b/src/app/entity-groups/research-entities/item-list-elements/project/project-list-element.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../../../../shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; @rendersItemType('Project', ItemViewMode.Element) @Component({ diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.html b/src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.html similarity index 100% rename from src/app/+item-page/simple/item-types/orgunit/orgunit.component.html rename to src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.html diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.scss b/src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.scss similarity index 100% rename from src/app/+item-page/simple/item-types/orgunit/orgunit.component.scss rename to src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.scss diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.spec.ts b/src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.spec.ts similarity index 100% rename from src/app/+item-page/simple/item-types/orgunit/orgunit.component.spec.ts rename to src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.spec.ts diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.ts b/src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.ts similarity index 88% rename from src/app/+item-page/simple/item-types/orgunit/orgunit.component.ts rename to src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.ts index 96dc9a5960..cae70ce634 100644 --- a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.ts +++ b/src/app/entity-groups/research-entities/item-pages/orgunit/orgunit.component.ts @@ -5,8 +5,11 @@ import { Item } from '../../../../core/shared/item.model'; import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +import { ItemComponent } from '../../../../+item-page/simple/item-types/shared/item.component'; +import { + filterRelationsByTypeLabel, + relationsToItems +} from '../../../../+item-page/simple/item-types/shared/item-relationships-utils'; @rendersItemType('OrgUnit', ItemViewMode.Full) @Component({ diff --git a/src/app/+item-page/simple/item-types/person/person.component.html b/src/app/entity-groups/research-entities/item-pages/person/person.component.html similarity index 100% rename from src/app/+item-page/simple/item-types/person/person.component.html rename to src/app/entity-groups/research-entities/item-pages/person/person.component.html diff --git a/src/app/+item-page/simple/item-types/person/person.component.scss b/src/app/entity-groups/research-entities/item-pages/person/person.component.scss similarity index 100% rename from src/app/+item-page/simple/item-types/person/person.component.scss rename to src/app/entity-groups/research-entities/item-pages/person/person.component.scss diff --git a/src/app/+item-page/simple/item-types/person/person.component.spec.ts b/src/app/entity-groups/research-entities/item-pages/person/person.component.spec.ts similarity index 100% rename from src/app/+item-page/simple/item-types/person/person.component.spec.ts rename to src/app/entity-groups/research-entities/item-pages/person/person.component.spec.ts diff --git a/src/app/+item-page/simple/item-types/person/person.component.ts b/src/app/entity-groups/research-entities/item-pages/person/person.component.ts similarity index 90% rename from src/app/+item-page/simple/item-types/person/person.component.ts rename to src/app/entity-groups/research-entities/item-pages/person/person.component.ts index 67a2ae7a2e..8ef3ceb57e 100644 --- a/src/app/+item-page/simple/item-types/person/person.component.ts +++ b/src/app/entity-groups/research-entities/item-pages/person/person.component.ts @@ -6,8 +6,11 @@ import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-typ import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service'; import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +import { ItemComponent } from '../../../../+item-page/simple/item-types/shared/item.component'; +import { + filterRelationsByTypeLabel, + relationsToItems +} from '../../../../+item-page/simple/item-types/shared/item-relationships-utils'; @rendersItemType('Person', ItemViewMode.Full) @Component({ diff --git a/src/app/+item-page/simple/item-types/project/project.component.html b/src/app/entity-groups/research-entities/item-pages/project/project.component.html similarity index 100% rename from src/app/+item-page/simple/item-types/project/project.component.html rename to src/app/entity-groups/research-entities/item-pages/project/project.component.html diff --git a/src/app/+item-page/simple/item-types/project/project.component.scss b/src/app/entity-groups/research-entities/item-pages/project/project.component.scss similarity index 100% rename from src/app/+item-page/simple/item-types/project/project.component.scss rename to src/app/entity-groups/research-entities/item-pages/project/project.component.scss diff --git a/src/app/+item-page/simple/item-types/project/project.component.spec.ts b/src/app/entity-groups/research-entities/item-pages/project/project.component.spec.ts similarity index 100% rename from src/app/+item-page/simple/item-types/project/project.component.spec.ts rename to src/app/entity-groups/research-entities/item-pages/project/project.component.spec.ts diff --git a/src/app/+item-page/simple/item-types/project/project.component.ts b/src/app/entity-groups/research-entities/item-pages/project/project.component.ts similarity index 88% rename from src/app/+item-page/simple/item-types/project/project.component.ts rename to src/app/entity-groups/research-entities/item-pages/project/project.component.ts index cf4ffd4be1..074bc62363 100644 --- a/src/app/+item-page/simple/item-types/project/project.component.ts +++ b/src/app/entity-groups/research-entities/item-pages/project/project.component.ts @@ -5,8 +5,11 @@ import { Item } from '../../../../core/shared/item.model'; import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +import { ItemComponent } from '../../../../+item-page/simple/item-types/shared/item.component'; +import { + filterRelationsByTypeLabel, + relationsToItems +} from '../../../../+item-page/simple/item-types/shared/item-relationships-utils'; @rendersItemType('Project', ItemViewMode.Full) @Component({ diff --git a/src/app/entity-groups/research-entities/research-entities.module.ts b/src/app/entity-groups/research-entities/research-entities.module.ts new file mode 100644 index 0000000000..ba28f174df --- /dev/null +++ b/src/app/entity-groups/research-entities/research-entities.module.ts @@ -0,0 +1,42 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from '../../shared/shared.module'; +import { ItemPageModule } from '../../+item-page/item-page.module'; +import { OrgunitComponent } from './item-pages/orgunit/orgunit.component'; +import { PersonComponent } from './item-pages/person/person.component'; +import { ProjectComponent } from './item-pages/project/project.component'; +import { OrgUnitListElementComponent } from './item-list-elements/orgunit/orgunit-list-element.component'; +import { OrgUnitMetadataListElementComponent } from './item-list-elements/orgunit/orgunit-metadata-list-element.component'; +import { PersonMetadataListElementComponent } from './item-list-elements/person/person-metadata-list-element.component'; +import { PersonListElementComponent } from './item-list-elements/person/person-list-element.component'; +import { ProjectListElementComponent } from './item-list-elements/project/project-list-element.component'; +import { TooltipModule } from 'ngx-bootstrap'; + +const ENTRY_COMPONENTS = [ + OrgunitComponent, + PersonComponent, + ProjectComponent, + OrgUnitListElementComponent, + OrgUnitMetadataListElementComponent, + PersonListElementComponent, + PersonMetadataListElementComponent, + ProjectListElementComponent +]; + +@NgModule({ + imports: [ + CommonModule, + SharedModule, + TooltipModule.forRoot(), + ItemPageModule + ], + declarations: [ + ...ENTRY_COMPONENTS + ], + entryComponents: [ + ...ENTRY_COMPONENTS + ] +}) +export class ResearchEntitiesModule { + +} diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.scss deleted file mode 100644 index 5ab410dcb0..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.scss +++ /dev/null @@ -1 +0,0 @@ -@import '../../../../../../styles/variables'; diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.scss deleted file mode 100644 index 5ab410dcb0..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.scss +++ /dev/null @@ -1 +0,0 @@ -@import '../../../../../../styles/variables'; diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.scss b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.scss deleted file mode 100644 index 5ab410dcb0..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.scss +++ /dev/null @@ -1 +0,0 @@ -@import '../../../../../../styles/variables'; diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 329a588f43..8c15d231b1 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -10,15 +10,8 @@ import { TranslateModule } from '@ngx-translate/core'; import { NgxPaginationModule } from 'ngx-pagination'; import { ItemTypeSwitcherComponent } from './items/switcher/item-type-switcher.component'; -import { OrgUnitMetadataListElementComponent } from './object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component'; import { TypedItemSearchResultListElementComponent } from './object-list/item-list-element/item-types/typed-item-search-result-list-element.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'; @@ -103,7 +96,6 @@ import { LangSwitchComponent } from './lang-switch/lang-switch.component'; import { PlainTextMetadataListElementComponent } from './object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component'; import { ItemMetadataListElementComponent } from './object-list/metadata-representation-list-element/item/item-metadata-list-element.component'; import { TooltipModule } from 'ngx-bootstrap'; -import { PersonMetadataListElementComponent } from './object-list/item-list-element/item-types/person/person-metadata-list-element.component'; import { MetadataRepresentationListElementComponent } from './object-list/metadata-representation-list-element/metadata-representation-list-element.component'; import { ComColFormComponent } from './comcol-forms/comcol-form/comcol-form.component'; import { CreateComColPageComponent } from './comcol-forms/create-comcol-page/create-comcol-page.component'; @@ -246,14 +238,6 @@ const ENTRY_COMPONENTS = [ CommunityGridElementComponent, SearchResultGridElementComponent, PublicationListElementComponent, - PersonListElementComponent, - PersonMetadataListElementComponent, - OrgUnitMetadataListElementComponent, - OrgUnitListElementComponent, - ProjectListElementComponent, - JournalListElementComponent, - JournalVolumeListElementComponent, - JournalIssueListElementComponent, BrowseEntryListElementComponent, DsDynamicListComponent, DsDynamicLookupComponent,