62264: Grouped logical entity types together into separate modules

This commit is contained in:
Kristof De Langhe
2019-05-09 17:51:11 +02:00
parent dcaeb71d68
commit 2166e0633c
61 changed files with 150 additions and 69 deletions

View File

@@ -33,6 +33,7 @@ const ITEM_EDIT_DELETE_PATH = 'delete';
{
path: '',
redirectTo: 'status',
pathMatch: 'full'
},
{
path: 'status',

View File

@@ -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 {

View File

@@ -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

View File

@@ -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({

View File

@@ -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({

View File

@@ -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({

View File

@@ -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({

View File

@@ -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({

View File

@@ -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({

View File

@@ -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 {
}

View File

@@ -0,0 +1 @@
@import '../../../../../styles/variables';

View File

@@ -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({

View File

@@ -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({

View File

@@ -0,0 +1 @@
@import '../../../../../styles/variables';

View File

@@ -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({

View File

@@ -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({

View File

@@ -0,0 +1 @@
@import '../../../../../styles/variables';

View File

@@ -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({

View File

@@ -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({

View File

@@ -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({

View File

@@ -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({

View File

@@ -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 {
}

View File

@@ -1 +0,0 @@
@import '../../../../../../styles/variables';

View File

@@ -1 +0,0 @@
@import '../../../../../../styles/variables';

View File

@@ -1 +0,0 @@
@import '../../../../../../styles/variables';

View File

@@ -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,