diff --git a/src/app/shared/item/item-alerts/item-alerts.component.html b/src/app/item-page/alerts/item-alerts.component.html similarity index 100% rename from src/app/shared/item/item-alerts/item-alerts.component.html rename to src/app/item-page/alerts/item-alerts.component.html diff --git a/src/app/shared/item/item-alerts/item-alerts.component.scss b/src/app/item-page/alerts/item-alerts.component.scss similarity index 100% rename from src/app/shared/item/item-alerts/item-alerts.component.scss rename to src/app/item-page/alerts/item-alerts.component.scss diff --git a/src/app/shared/item/item-alerts/item-alerts.component.spec.ts b/src/app/item-page/alerts/item-alerts.component.spec.ts similarity index 97% rename from src/app/shared/item/item-alerts/item-alerts.component.spec.ts rename to src/app/item-page/alerts/item-alerts.component.spec.ts index fed81199fd..a933eb6a58 100644 --- a/src/app/shared/item/item-alerts/item-alerts.component.spec.ts +++ b/src/app/item-page/alerts/item-alerts.component.spec.ts @@ -2,7 +2,7 @@ import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ItemAlertsComponent } from './item-alerts.component'; import { TranslateModule } from '@ngx-translate/core'; import { NO_ERRORS_SCHEMA } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; +import { Item } from '../../core/shared/item.model'; import { By } from '@angular/platform-browser'; describe('ItemAlertsComponent', () => { diff --git a/src/app/shared/item/item-alerts/item-alerts.component.ts b/src/app/item-page/alerts/item-alerts.component.ts similarity index 80% rename from src/app/shared/item/item-alerts/item-alerts.component.ts rename to src/app/item-page/alerts/item-alerts.component.ts index 4c2d60d24c..d7a84db015 100644 --- a/src/app/shared/item/item-alerts/item-alerts.component.ts +++ b/src/app/item-page/alerts/item-alerts.component.ts @@ -1,6 +1,6 @@ import { Component, Input } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -import { AlertType } from '../../alert/aletr-type'; +import { Item } from '../../core/shared/item.model'; +import { AlertType } from '../../shared/alert/aletr-type'; @Component({ selector: 'ds-item-alerts', diff --git a/src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.html b/src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.html similarity index 100% rename from src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.html rename to src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.html diff --git a/src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.spec.ts b/src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.spec.ts similarity index 90% rename from src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.spec.ts rename to src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.spec.ts index cc44ef8587..cbfbdf361f 100644 --- a/src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.spec.ts +++ b/src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.spec.ts @@ -1,30 +1,30 @@ import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; -import { AuthService } from '../../core/auth/auth.service'; +import { AuthService } from '../../../core/auth/auth.service'; import { of as observableOf } from 'rxjs'; -import { Bitstream } from '../../core/shared/bitstream.model'; -import { AuthorizationDataService } from '../../core/data/feature-authorization/authorization-data.service'; +import { Bitstream } from '../../../core/shared/bitstream.model'; +import { AuthorizationDataService } from '../../../core/data/feature-authorization/authorization-data.service'; import { createFailedRemoteDataObject$, createSuccessfulRemoteDataObject, createSuccessfulRemoteDataObject$ -} from '../remote-data.utils'; +} from '../../../shared/remote-data.utils'; import { ActivatedRoute, Router } from '@angular/router'; import { TranslateModule } from '@ngx-translate/core'; import { CommonModule } from '@angular/common'; import { BitstreamRequestACopyPageComponent } from './bitstream-request-a-copy-page.component'; import { By } from '@angular/platform-browser'; -import { RouterStub } from '../testing/router.stub'; +import { RouterStub } from '../../../shared/testing/router.stub'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; -import { NotificationsServiceStub } from '../testing/notifications-service.stub'; -import { ItemRequestDataService } from '../../core/data/item-request-data.service'; -import { NotificationsService } from '../notifications/notifications.service'; -import { DSONameService } from '../../core/breadcrumbs/dso-name.service'; -import { DSONameServiceMock } from '../mocks/dso-name.service.mock'; -import { Item } from '../../core/shared/item.model'; -import { EPerson } from '../../core/eperson/models/eperson.model'; -import { ItemRequest } from '../../core/shared/item-request.model'; +import { NotificationsServiceStub } from '../../../shared/testing/notifications-service.stub'; +import { ItemRequestDataService } from '../../../core/data/item-request-data.service'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { DSONameService } from '../../../core/breadcrumbs/dso-name.service'; +import { DSONameServiceMock } from '../../../shared/mocks/dso-name.service.mock'; +import { Item } from '../../../core/shared/item.model'; +import { EPerson } from '../../../core/eperson/models/eperson.model'; +import { ItemRequest } from '../../../core/shared/item-request.model'; import { Location } from '@angular/common'; -import { BitstreamDataService } from '../../core/data/bitstream-data.service'; +import { BitstreamDataService } from '../../../core/data/bitstream-data.service'; describe('BitstreamRequestACopyPageComponent', () => { diff --git a/src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.ts b/src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.ts similarity index 85% rename from src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.ts rename to src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.ts index 511079a701..59819a4a66 100644 --- a/src/app/shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component.ts +++ b/src/app/item-page/bitstreams/request-a-copy/bitstream-request-a-copy-page.component.ts @@ -1,25 +1,25 @@ import { Component, OnDestroy, OnInit } from '@angular/core'; import { filter, map, switchMap, take } from 'rxjs/operators'; import { ActivatedRoute, Router } from '@angular/router'; -import { hasValue, isNotEmpty } from '../empty.util'; -import { getFirstCompletedRemoteData, getFirstSucceededRemoteDataPayload } from '../../core/shared/operators'; -import { Bitstream } from '../../core/shared/bitstream.model'; -import { AuthorizationDataService } from '../../core/data/feature-authorization/authorization-data.service'; -import { FeatureID } from '../../core/data/feature-authorization/feature-id'; -import { AuthService } from '../../core/auth/auth.service'; +import { hasValue, isNotEmpty } from '../../../shared/empty.util'; +import { getFirstCompletedRemoteData, getFirstSucceededRemoteDataPayload } from '../../../core/shared/operators'; +import { Bitstream } from '../../../core/shared/bitstream.model'; +import { AuthorizationDataService } from '../../../core/data/feature-authorization/authorization-data.service'; +import { FeatureID } from '../../../core/data/feature-authorization/feature-id'; +import { AuthService } from '../../../core/auth/auth.service'; import { combineLatest as observableCombineLatest, Observable, of as observableOf, Subscription } from 'rxjs'; -import { getBitstreamDownloadRoute, getForbiddenRoute } from '../../app-routing-paths'; +import { getBitstreamDownloadRoute, getForbiddenRoute } from '../../../app-routing-paths'; import { TranslateService } from '@ngx-translate/core'; -import { EPerson } from '../../core/eperson/models/eperson.model'; +import { EPerson } from '../../../core/eperson/models/eperson.model'; import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms'; -import { ItemRequestDataService } from '../../core/data/item-request-data.service'; -import { ItemRequest } from '../../core/shared/item-request.model'; -import { Item } from '../../core/shared/item.model'; -import { NotificationsService } from '../notifications/notifications.service'; -import { DSONameService } from '../../core/breadcrumbs/dso-name.service'; +import { ItemRequestDataService } from '../../../core/data/item-request-data.service'; +import { ItemRequest } from '../../../core/shared/item-request.model'; +import { Item } from '../../../core/shared/item.model'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { DSONameService } from '../../../core/breadcrumbs/dso-name.service'; import { Location } from '@angular/common'; -import { BitstreamDataService } from '../../core/data/bitstream-data.service'; -import { getItemPageRoute } from '../../item-page/item-page-routing-paths'; +import { BitstreamDataService } from '../../../core/data/bitstream-data.service'; +import { getItemPageRoute } from '../../item-page-routing-paths'; @Component({ selector: 'ds-bitstream-request-a-copy-page', diff --git a/src/app/item-page/edit-item-page/edit-item-page.module.ts b/src/app/item-page/edit-item-page/edit-item-page.module.ts index 3ed741bc1a..fafbae0bd4 100644 --- a/src/app/item-page/edit-item-page/edit-item-page.module.ts +++ b/src/app/item-page/edit-item-page/edit-item-page.module.ts @@ -36,6 +36,7 @@ import { ItemVersionHistoryComponent } from './item-version-history/item-version import { ItemAuthorizationsComponent } from './item-authorizations/item-authorizations.component'; import { ObjectValuesPipe } from '../../shared/utils/object-values-pipe'; import { ResourcePoliciesModule } from '../../shared/resource-policies/resource-policies.module'; +import { ItemVersionsModule } from '../versions/item-versions.module'; /** @@ -50,7 +51,8 @@ import { ResourcePoliciesModule } from '../../shared/resource-policies/resource- SearchPageModule, DragDropModule, ResourcePoliciesModule, - NgbModule + NgbModule, + ItemVersionsModule, ], declarations: [ EditItemPageComponent, diff --git a/src/app/item-page/full/field-components/file-section/full-file-section.component.spec.ts b/src/app/item-page/full/field-components/file-section/full-file-section.component.spec.ts index 396e6c3216..9a4bd05587 100644 --- a/src/app/item-page/full/field-components/file-section/full-file-section.component.spec.ts +++ b/src/app/item-page/full/field-components/file-section/full-file-section.component.spec.ts @@ -7,7 +7,7 @@ import { TranslateLoaderMock } from '../../../../shared/mocks/translate-loader.m import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { VarDirective } from '../../../../shared/utils/var.directive'; import { FileSizePipe } from '../../../../shared/utils/file-size-pipe'; -import { MetadataFieldWrapperComponent } from '../../../field-components/metadata-field-wrapper/metadata-field-wrapper.component'; +import { MetadataFieldWrapperComponent } from '../../../../shared/metadata-field-wrapper/metadata-field-wrapper.component'; import { BitstreamDataService } from '../../../../core/data/bitstream-data.service'; import { NO_ERRORS_SCHEMA } from '@angular/core'; import { Bitstream } from '../../../../core/shared/bitstream.model'; diff --git a/src/app/item-page/item-page-routing.module.ts b/src/app/item-page/item-page-routing.module.ts index add2c3d768..bda09be458 100644 --- a/src/app/item-page/item-page-routing.module.ts +++ b/src/app/item-page/item-page-routing.module.ts @@ -14,9 +14,7 @@ import { ThemedItemPageComponent } from './simple/themed-item-page.component'; import { ThemedFullItemPageComponent } from './full/themed-full-item-page.component'; import { MenuItemType } from '../shared/menu/menu-item-type.model'; import { VersionPageComponent } from './version-page/version-page/version-page.component'; -import { - BitstreamRequestACopyPageComponent -} from '../shared/bitstream-request-a-copy-page/bitstream-request-a-copy-page.component'; +import { BitstreamRequestACopyPageComponent } from './bitstreams/request-a-copy/bitstream-request-a-copy-page.component'; import { REQUEST_COPY_MODULE_PATH } from '../app-routing-paths'; import { OrcidPageComponent } from './orcid-page/orcid-page.component'; import { OrcidPageGuard } from './orcid-page/orcid-page.guard'; diff --git a/src/app/item-page/item-page.module.ts b/src/app/item-page/item-page.module.ts index de9f2f60c5..39c2580921 100644 --- a/src/app/item-page/item-page.module.ts +++ b/src/app/item-page/item-page.module.ts @@ -47,6 +47,11 @@ import { NgbAccordionModule } from '@ng-bootstrap/ng-bootstrap'; import { OrcidSyncSettingsComponent } from './orcid-page/orcid-sync-settings/orcid-sync-settings.component'; import { OrcidQueueComponent } from './orcid-page/orcid-queue/orcid-queue.component'; import { UploadModule } from '../shared/upload/upload.module'; +import { ItemAlertsComponent } from './alerts/item-alerts.component'; +import { ItemVersionsModule } from './versions/item-versions.module'; +import { BitstreamRequestACopyPageComponent } from './bitstreams/request-a-copy/bitstream-request-a-copy-page.component'; +import { FileSectionComponent } from './simple/field-components/file-section/file-section.component'; +import { ItemSharedModule } from './item-shared.module'; const ENTRY_COMPONENTS = [ @@ -56,6 +61,7 @@ const ENTRY_COMPONENTS = [ ]; const DECLARATIONS = [ + FileSectionComponent, ThemedFileSectionComponent, ItemPageComponent, ThemedItemPageComponent, @@ -82,7 +88,10 @@ const DECLARATIONS = [ OrcidPageComponent, OrcidAuthComponent, OrcidSyncSettingsComponent, - OrcidQueueComponent + OrcidQueueComponent, + ItemAlertsComponent, + VersionedItemComponent, + BitstreamRequestACopyPageComponent, ]; @NgModule({ @@ -91,6 +100,8 @@ const DECLARATIONS = [ SharedModule.withEntryComponents(), ItemPageRoutingModule, EditItemPageModule, + ItemVersionsModule, + ItemSharedModule, StatisticsModule.forRoot(), JournalEntitiesModule.withEntryComponents(), ResearchEntitiesModule.withEntryComponents(), @@ -100,10 +111,10 @@ const DECLARATIONS = [ ], declarations: [ ...DECLARATIONS, - VersionedItemComponent + ], exports: [ - ...DECLARATIONS + ...DECLARATIONS, ] }) export class ItemPageModule { diff --git a/src/app/item-page/item-shared.module.ts b/src/app/item-page/item-shared.module.ts index b191b6c4b3..c558b11692 100644 --- a/src/app/item-page/item-shared.module.ts +++ b/src/app/item-page/item-shared.module.ts @@ -7,10 +7,32 @@ import { TranslateModule } from '@ngx-translate/core'; import { DYNAMIC_FORM_CONTROL_MAP_FN } from '@ng-dynamic-forms/core'; import { dsDynamicFormControlMapFn } from '../shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component'; import { TabbedRelatedEntitiesSearchComponent } from './simple/related-entities/tabbed-related-entities-search/tabbed-related-entities-search.component'; +import { ItemVersionsDeleteModalComponent } from './versions/item-versions-delete-modal/item-versions-delete-modal.component'; +import { ItemVersionsSummaryModalComponent } from './versions/item-versions-summary-modal/item-versions-summary-modal.component'; +import { MetadataValuesComponent } from './field-components/metadata-values/metadata-values.component'; +import { DsoPageVersionButtonComponent } from '../shared/dso-page/dso-page-version-button/dso-page-version-button.component'; +import { PersonPageClaimButtonComponent } from '../shared/dso-page/person-page-claim-button/person-page-claim-button.component'; +import { GenericItemPageFieldComponent } from './simple/field-components/specific-field/generic/generic-item-page-field.component'; +import { MetadataRepresentationListComponent } from './simple/metadata-representation-list/metadata-representation-list.component'; +import { RelatedItemsComponent } from './simple/related-items/related-items-component'; +import { DsoPageOrcidButtonComponent } from '../shared/dso-page/dso-page-orcid-button/dso-page-orcid-button.component'; + +const ENTRY_COMPONENTS = [ + ItemVersionsDeleteModalComponent, + ItemVersionsSummaryModalComponent, +]; const COMPONENTS = [ + ...ENTRY_COMPONENTS, RelatedEntitiesSearchComponent, - TabbedRelatedEntitiesSearchComponent + TabbedRelatedEntitiesSearchComponent, + MetadataValuesComponent, + DsoPageVersionButtonComponent, + PersonPageClaimButtonComponent, + GenericItemPageFieldComponent, + MetadataRepresentationListComponent, + RelatedItemsComponent, + DsoPageOrcidButtonComponent ]; @NgModule({ @@ -30,7 +52,8 @@ const COMPONENTS = [ { provide: DYNAMIC_FORM_CONTROL_MAP_FN, useValue: dsDynamicFormControlMapFn - } + }, + ...ENTRY_COMPONENTS, ] }) export class ItemSharedModule { } diff --git a/src/app/item-page/media-viewer/media-viewer-video/media-viewer-video.component.spec.ts b/src/app/item-page/media-viewer/media-viewer-video/media-viewer-video.component.spec.ts index 354ba57727..846b5878f4 100644 --- a/src/app/item-page/media-viewer/media-viewer-video/media-viewer-video.component.spec.ts +++ b/src/app/item-page/media-viewer/media-viewer-video/media-viewer-video.component.spec.ts @@ -8,7 +8,7 @@ import { MediaViewerItem } from '../../../core/shared/media-viewer-item.model'; import { TranslateLoaderMock } from '../../../shared/mocks/translate-loader.mock'; import { FileSizePipe } from '../../../shared/utils/file-size-pipe'; import { VarDirective } from '../../../shared/utils/var.directive'; -import { MetadataFieldWrapperComponent } from '../../field-components/metadata-field-wrapper/metadata-field-wrapper.component'; +import { MetadataFieldWrapperComponent } from '../../../shared/metadata-field-wrapper/metadata-field-wrapper.component'; import { MockBitstreamFormat1 } from '../../../shared/mocks/item.mock'; import { MediaViewerVideoComponent } from './media-viewer-video.component'; import { By } from '@angular/platform-browser'; diff --git a/src/app/item-page/media-viewer/media-viewer.component.spec.ts b/src/app/item-page/media-viewer/media-viewer.component.spec.ts index 39a35ebe61..3369574f20 100644 --- a/src/app/item-page/media-viewer/media-viewer.component.spec.ts +++ b/src/app/item-page/media-viewer/media-viewer.component.spec.ts @@ -13,7 +13,7 @@ import { BitstreamDataService } from '../../core/data/bitstream-data.service'; import { NO_ERRORS_SCHEMA } from '@angular/core'; import { MediaViewerItem } from '../../core/shared/media-viewer-item.model'; import { VarDirective } from '../../shared/utils/var.directive'; -import { MetadataFieldWrapperComponent } from '../field-components/metadata-field-wrapper/metadata-field-wrapper.component'; +import { MetadataFieldWrapperComponent } from '../../shared/metadata-field-wrapper/metadata-field-wrapper.component'; import { FileSizePipe } from '../../shared/utils/file-size-pipe'; describe('MediaViewerComponent', () => { diff --git a/src/app/item-page/simple/field-components/file-section/file-section.component.spec.ts b/src/app/item-page/simple/field-components/file-section/file-section.component.spec.ts index 2d185aef9c..dfeb253ec4 100644 --- a/src/app/item-page/simple/field-components/file-section/file-section.component.spec.ts +++ b/src/app/item-page/simple/field-components/file-section/file-section.component.spec.ts @@ -13,7 +13,7 @@ import { of as observableOf } from 'rxjs'; import { MockBitstreamFormat1 } from '../../../../shared/mocks/item.mock'; import { FileSizePipe } from '../../../../shared/utils/file-size-pipe'; import { PageInfo } from '../../../../core/shared/page-info.model'; -import { MetadataFieldWrapperComponent } from '../../../field-components/metadata-field-wrapper/metadata-field-wrapper.component'; +import { MetadataFieldWrapperComponent } from '../../../../shared/metadata-field-wrapper/metadata-field-wrapper.component'; import { createPaginatedList } from '../../../../shared/testing/utils.test'; import { NotificationsService } from '../../../../shared/notifications/notifications.service'; import { NotificationsServiceStub } from '../../../../shared/testing/notifications-service.stub'; diff --git a/src/app/item-page/simple/item-types/untyped-item/untyped-item.component.spec.ts b/src/app/item-page/simple/item-types/untyped-item/untyped-item.component.spec.ts index 57f546fbec..176a692f4b 100644 --- a/src/app/item-page/simple/item-types/untyped-item/untyped-item.component.spec.ts +++ b/src/app/item-page/simple/item-types/untyped-item/untyped-item.component.spec.ts @@ -36,7 +36,7 @@ import { VersionDataService } from '../../../../core/data/version-data.service'; import { RouterTestingModule } from '@angular/router/testing'; import { WorkspaceitemDataService } from '../../../../core/submission/workspaceitem-data.service'; import { SearchService } from '../../../../core/shared/search/search.service'; -import { ItemVersionsSharedService } from '../../../../shared/item/item-versions/item-versions-shared.service'; +import { ItemVersionsSharedService } from '../../../versions/item-versions-shared.service'; const noMetadata = new MetadataMap(); diff --git a/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.spec.ts b/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.spec.ts index 9aeea8b11e..fcd82ce678 100644 --- a/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.spec.ts +++ b/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.spec.ts @@ -5,7 +5,7 @@ import { VersionHistoryDataService } from '../../../../core/data/version-history import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; import { VersionDataService } from '../../../../core/data/version-data.service'; import { NotificationsService } from '../../../../shared/notifications/notifications.service'; -import { ItemVersionsSharedService } from '../../../../shared/item/item-versions/item-versions-shared.service'; +import { ItemVersionsSharedService } from '../../../versions/item-versions-shared.service'; import { Item } from '../../../../core/shared/item.model'; import { createSuccessfulRemoteDataObject$ } from '../../../../shared/remote-data.utils'; import { buildPaginatedList } from '../../../../core/data/paginated-list.model'; @@ -20,6 +20,7 @@ import { ItemDataService } from '../../../../core/data/item-data.service'; import { Version } from '../../../../core/shared/version.model'; import { RouteService } from '../../../../core/services/route.service'; import { TranslateLoaderMock } from '../../../../shared/testing/translate-loader.mock'; +import { ItemSharedModule } from '../../../item-shared.module'; const mockItem: Item = Object.assign(new Item(), { bundles: createSuccessfulRemoteDataObject$(buildPaginatedList(new PageInfo(), [])), @@ -66,6 +67,7 @@ describe('VersionedItemComponent', () => { useClass: TranslateLoaderMock, } }), + ItemSharedModule, ], providers: [ { provide: VersionHistoryDataService, useValue: versionHistoryServiceSpy }, diff --git a/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.ts b/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.ts index 7f61cee10b..0cedc3bb10 100644 --- a/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.ts +++ b/src/app/item-page/simple/item-types/versioned-item/versioned-item.component.ts @@ -1,6 +1,6 @@ import { Component } from '@angular/core'; import { ItemComponent } from '../shared/item.component'; -import { ItemVersionsSummaryModalComponent } from '../../../../shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component'; +import { ItemVersionsSummaryModalComponent } from '../../../versions/item-versions-summary-modal/item-versions-summary-modal.component'; import { getFirstCompletedRemoteData, getFirstSucceededRemoteDataPayload } from '../../../../core/shared/operators'; import { RemoteData } from '../../../../core/data/remote-data'; import { Version } from '../../../../core/shared/version.model'; @@ -9,7 +9,7 @@ import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { VersionHistoryDataService } from '../../../../core/data/version-history-data.service'; import { TranslateService } from '@ngx-translate/core'; import { VersionDataService } from '../../../../core/data/version-data.service'; -import { ItemVersionsSharedService } from '../../../../shared/item/item-versions/item-versions-shared.service'; +import { ItemVersionsSharedService } from '../../../versions/item-versions-shared.service'; import { Router } from '@angular/router'; import { WorkspaceitemDataService } from '../../../../core/submission/workspaceitem-data.service'; import { SearchService } from '../../../../core/shared/search/search.service'; diff --git a/src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.html b/src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.html similarity index 100% rename from src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.html rename to src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.html diff --git a/src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.scss b/src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.scss similarity index 100% rename from src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.scss rename to src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.scss diff --git a/src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.spec.ts b/src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.spec.ts similarity index 100% rename from src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.spec.ts rename to src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.spec.ts diff --git a/src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.ts b/src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.ts similarity index 100% rename from src/app/shared/item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component.ts rename to src/app/item-page/versions/item-versions-delete-modal/item-versions-delete-modal.component.ts diff --git a/src/app/shared/item/item-versions/item-versions-shared.service.spec.ts b/src/app/item-page/versions/item-versions-shared.service.spec.ts similarity index 75% rename from src/app/shared/item/item-versions/item-versions-shared.service.spec.ts rename to src/app/item-page/versions/item-versions-shared.service.spec.ts index a9f9596548..d4adbf681f 100644 --- a/src/app/shared/item/item-versions/item-versions-shared.service.spec.ts +++ b/src/app/item-page/versions/item-versions-shared.service.spec.ts @@ -2,15 +2,15 @@ import { TestBed } from '@angular/core/testing'; import { ItemVersionsSharedService } from './item-versions-shared.service'; import { ActivatedRoute } from '@angular/router'; -import { VersionDataService } from '../../../core/data/version-data.service'; -import { AuthService } from '../../../core/auth/auth.service'; -import { NotificationsService } from '../../notifications/notifications.service'; +import { VersionDataService } from '../../core/data/version-data.service'; +import { AuthService } from '../../core/auth/auth.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; import { TranslateService } from '@ngx-translate/core'; -import { VersionHistoryDataService } from '../../../core/data/version-history-data.service'; -import { WorkspaceitemDataService } from '../../../core/submission/workspaceitem-data.service'; -import { WorkflowItemDataService } from '../../../core/submission/workflowitem-data.service'; -import { createFailedRemoteDataObject, createSuccessfulRemoteDataObject } from '../../remote-data.utils'; -import { Version } from '../../../core/shared/version.model'; +import { VersionHistoryDataService } from '../../core/data/version-history-data.service'; +import { WorkspaceitemDataService } from '../../core/submission/workspaceitem-data.service'; +import { WorkflowItemDataService } from '../../core/submission/workflowitem-data.service'; +import { createFailedRemoteDataObject, createSuccessfulRemoteDataObject } from '../../shared/remote-data.utils'; +import { Version } from '../../core/shared/version.model'; describe('ItemVersionsSharedService', () => { let service: ItemVersionsSharedService; diff --git a/src/app/shared/item/item-versions/item-versions-shared.service.ts b/src/app/item-page/versions/item-versions-shared.service.ts similarity index 84% rename from src/app/shared/item/item-versions/item-versions-shared.service.ts rename to src/app/item-page/versions/item-versions-shared.service.ts index 996623509c..09104f5ddc 100644 --- a/src/app/shared/item/item-versions/item-versions-shared.service.ts +++ b/src/app/item-page/versions/item-versions-shared.service.ts @@ -1,8 +1,8 @@ import { Injectable } from '@angular/core'; -import { NotificationsService } from '../../notifications/notifications.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; import { TranslateService } from '@ngx-translate/core'; -import { RemoteData } from '../../../core/data/remote-data'; -import { Version } from '../../../core/shared/version.model'; +import { RemoteData } from '../../core/data/remote-data'; +import { Version } from '../../core/shared/version.model'; @Injectable({ providedIn: 'root' diff --git a/src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.html b/src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.html similarity index 100% rename from src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.html rename to src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.html diff --git a/src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.scss b/src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.scss similarity index 100% rename from src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.scss rename to src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.scss diff --git a/src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.spec.ts b/src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.spec.ts similarity index 100% rename from src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.spec.ts rename to src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.spec.ts diff --git a/src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.ts b/src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.ts similarity index 93% rename from src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.ts rename to src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.ts index 23ee62e628..8f2c7bd62e 100644 --- a/src/app/shared/item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component.ts +++ b/src/app/item-page/versions/item-versions-summary-modal/item-versions-summary-modal.component.ts @@ -1,7 +1,7 @@ import { Component, EventEmitter, OnInit, Output } from '@angular/core'; import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; import { BehaviorSubject } from 'rxjs'; -import { ModalBeforeDismiss } from '../../../interfaces/modal-before-dismiss.interface'; +import { ModalBeforeDismiss } from '../../../shared/interfaces/modal-before-dismiss.interface'; @Component({ selector: 'ds-item-versions-summary-modal', diff --git a/src/app/shared/item/item-versions/item-versions.component.html b/src/app/item-page/versions/item-versions.component.html similarity index 100% rename from src/app/shared/item/item-versions/item-versions.component.html rename to src/app/item-page/versions/item-versions.component.html diff --git a/src/app/shared/item/item-versions/item-versions.component.scss b/src/app/item-page/versions/item-versions.component.scss similarity index 100% rename from src/app/shared/item/item-versions/item-versions.component.scss rename to src/app/item-page/versions/item-versions.component.scss diff --git a/src/app/shared/item/item-versions/item-versions.component.spec.ts b/src/app/item-page/versions/item-versions.component.spec.ts similarity index 87% rename from src/app/shared/item/item-versions/item-versions.component.spec.ts rename to src/app/item-page/versions/item-versions.component.spec.ts index d4dbc336ab..999176d996 100644 --- a/src/app/shared/item/item-versions/item-versions.component.spec.ts +++ b/src/app/item-page/versions/item-versions.component.spec.ts @@ -2,33 +2,33 @@ import { ItemVersionsComponent } from './item-versions.component'; import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; -import { VarDirective } from '../../utils/var.directive'; +import { VarDirective } from '../../shared/utils/var.directive'; import { TranslateModule } from '@ngx-translate/core'; import { NO_ERRORS_SCHEMA } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -import { Version } from '../../../core/shared/version.model'; -import { VersionHistory } from '../../../core/shared/version-history.model'; -import { VersionHistoryDataService } from '../../../core/data/version-history-data.service'; +import { Item } from '../../core/shared/item.model'; +import { Version } from '../../core/shared/version.model'; +import { VersionHistory } from '../../core/shared/version-history.model'; +import { VersionHistoryDataService } from '../../core/data/version-history-data.service'; import { BrowserModule, By } from '@angular/platform-browser'; -import { createSuccessfulRemoteDataObject$ } from '../../remote-data.utils'; -import { createPaginatedList } from '../../testing/utils.test'; +import { createSuccessfulRemoteDataObject$ } from '../../shared/remote-data.utils'; +import { createPaginatedList } from '../../shared/testing/utils.test'; import { EMPTY, of, of as observableOf } from 'rxjs'; -import { PaginationService } from '../../../core/pagination/pagination.service'; -import { PaginationServiceStub } from '../../testing/pagination-service.stub'; -import { AuthService } from '../../../core/auth/auth.service'; -import { VersionDataService } from '../../../core/data/version-data.service'; -import { ItemDataService } from '../../../core/data/item-data.service'; +import { PaginationService } from '../../core/pagination/pagination.service'; +import { PaginationServiceStub } from '../../shared/testing/pagination-service.stub'; +import { AuthService } from '../../core/auth/auth.service'; +import { VersionDataService } from '../../core/data/version-data.service'; +import { ItemDataService } from '../../core/data/item-data.service'; import { FormBuilder, FormsModule, ReactiveFormsModule } from '@angular/forms'; -import { NotificationsService } from '../../notifications/notifications.service'; -import { NotificationsServiceStub } from '../../testing/notifications-service.stub'; -import { AuthorizationDataService } from '../../../core/data/feature-authorization/authorization-data.service'; -import { FeatureID } from '../../../core/data/feature-authorization/feature-id'; -import { WorkspaceitemDataService } from '../../../core/submission/workspaceitem-data.service'; -import { WorkflowItemDataService } from '../../../core/submission/workflowitem-data.service'; -import { ConfigurationDataService } from '../../../core/data/configuration-data.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { NotificationsServiceStub } from '../../shared/testing/notifications-service.stub'; +import { AuthorizationDataService } from '../../core/data/feature-authorization/authorization-data.service'; +import { FeatureID } from '../../core/data/feature-authorization/feature-id'; +import { WorkspaceitemDataService } from '../../core/submission/workspaceitem-data.service'; +import { WorkflowItemDataService } from '../../core/submission/workflowitem-data.service'; +import { ConfigurationDataService } from '../../core/data/configuration-data.service'; import { Router } from '@angular/router'; -import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; import { CommonModule } from '@angular/common'; +import { ItemSharedModule } from '../item-shared.module'; describe('ItemVersionsComponent', () => { let component: ItemVersionsComponent; @@ -137,7 +137,7 @@ describe('ItemVersionsComponent', () => { TestBed.configureTestingModule({ declarations: [ItemVersionsComponent, VarDirective], - imports: [TranslateModule.forRoot(), CommonModule, NgbModule, FormsModule, ReactiveFormsModule, BrowserModule], + imports: [TranslateModule.forRoot(), CommonModule, FormsModule, ReactiveFormsModule, BrowserModule, ItemSharedModule], providers: [ {provide: PaginationService, useValue: new PaginationServiceStub()}, {provide: FormBuilder, useValue: new FormBuilder()}, diff --git a/src/app/shared/item/item-versions/item-versions.component.ts b/src/app/item-page/versions/item-versions.component.ts similarity index 91% rename from src/app/shared/item/item-versions/item-versions.component.ts rename to src/app/item-page/versions/item-versions.component.ts index b7b8182658..e0fc623f49 100644 --- a/src/app/shared/item/item-versions/item-versions.component.ts +++ b/src/app/item-page/versions/item-versions.component.ts @@ -1,7 +1,7 @@ import { Component, Input, OnInit } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -import { Version } from '../../../core/shared/version.model'; -import { RemoteData } from '../../../core/data/remote-data'; +import { Item } from '../../core/shared/item.model'; +import { Version } from '../../core/shared/version.model'; +import { RemoteData } from '../../core/data/remote-data'; import { BehaviorSubject, combineLatest, @@ -9,7 +9,7 @@ import { of, Subscription, } from 'rxjs'; -import { VersionHistory } from '../../../core/shared/version-history.model'; +import { VersionHistory } from '../../core/shared/version-history.model'; import { getAllSucceededRemoteData, getAllSucceededRemoteDataPayload, @@ -17,37 +17,37 @@ import { getFirstSucceededRemoteData, getFirstSucceededRemoteDataPayload, getRemoteDataPayload -} from '../../../core/shared/operators'; +} from '../../core/shared/operators'; import { map, mergeMap, startWith, switchMap, take, tap } from 'rxjs/operators'; -import { PaginatedList } from '../../../core/data/paginated-list.model'; -import { PaginationComponentOptions } from '../../pagination/pagination-component-options.model'; -import { VersionHistoryDataService } from '../../../core/data/version-history-data.service'; -import { PaginatedSearchOptions } from '../../search/models/paginated-search-options.model'; -import { AlertType } from '../../alert/aletr-type'; -import { followLink } from '../../utils/follow-link-config.model'; -import { hasValue, hasValueOperator } from '../../empty.util'; -import { PaginationService } from '../../../core/pagination/pagination.service'; +import { PaginatedList } from '../../core/data/paginated-list.model'; +import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; +import { VersionHistoryDataService } from '../../core/data/version-history-data.service'; +import { PaginatedSearchOptions } from '../../shared/search/models/paginated-search-options.model'; +import { AlertType } from '../../shared/alert/aletr-type'; +import { followLink } from '../../shared/utils/follow-link-config.model'; +import { hasValue, hasValueOperator } from '../../shared/empty.util'; +import { PaginationService } from '../../core/pagination/pagination.service'; import { getItemEditVersionhistoryRoute, getItemPageRoute, getItemVersionRoute -} from '../../../item-page/item-page-routing-paths'; +} from '../item-page-routing-paths'; import { FormBuilder } from '@angular/forms'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { ItemVersionsSummaryModalComponent } from './item-versions-summary-modal/item-versions-summary-modal.component'; -import { NotificationsService } from '../../notifications/notifications.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; import { TranslateService } from '@ngx-translate/core'; import { ItemVersionsDeleteModalComponent } from './item-versions-delete-modal/item-versions-delete-modal.component'; -import { VersionDataService } from '../../../core/data/version-data.service'; -import { ItemDataService } from '../../../core/data/item-data.service'; +import { VersionDataService } from '../../core/data/version-data.service'; +import { ItemDataService } from '../../core/data/item-data.service'; import { Router } from '@angular/router'; -import { AuthorizationDataService } from '../../../core/data/feature-authorization/authorization-data.service'; -import { FeatureID } from '../../../core/data/feature-authorization/feature-id'; +import { AuthorizationDataService } from '../../core/data/feature-authorization/authorization-data.service'; +import { FeatureID } from '../../core/data/feature-authorization/feature-id'; import { ItemVersionsSharedService } from './item-versions-shared.service'; -import { WorkspaceItem } from '../../../core/submission/models/workspaceitem.model'; -import { WorkspaceitemDataService } from '../../../core/submission/workspaceitem-data.service'; -import { WorkflowItemDataService } from '../../../core/submission/workflowitem-data.service'; -import { ConfigurationDataService } from '../../../core/data/configuration-data.service'; +import { WorkspaceItem } from '../../core/submission/models/workspaceitem.model'; +import { WorkspaceitemDataService } from '../../core/submission/workspaceitem-data.service'; +import { WorkflowItemDataService } from '../../core/submission/workflowitem-data.service'; +import { ConfigurationDataService } from '../../core/data/configuration-data.service'; @Component({ selector: 'ds-item-versions', diff --git a/src/app/item-page/versions/item-versions.module.ts b/src/app/item-page/versions/item-versions.module.ts new file mode 100644 index 0000000000..577844488d --- /dev/null +++ b/src/app/item-page/versions/item-versions.module.ts @@ -0,0 +1,32 @@ +/** + * The contents of this file are subject to the license and copyright + * detailed in the LICENSE and NOTICE files at the root of the source + * tree and available online at + * + * http://www.dspace.org/license/ + */ + +import { NgModule } from '@angular/core'; +import { SharedModule } from '../../shared/shared.module'; +import { ItemVersionsComponent } from './item-versions.component'; +import { ItemVersionsNoticeComponent } from './notice/item-versions-notice.component'; + +const DECLARATIONS = [ + ItemVersionsComponent, + ItemVersionsNoticeComponent, +]; + +@NgModule({ + imports: [ + SharedModule, + ], + declarations: [ + ...DECLARATIONS, + ], + exports: [ + ...DECLARATIONS, + ], +}) +export class ItemVersionsModule { + +} diff --git a/src/app/shared/item/item-versions/notice/item-versions-notice.component.html b/src/app/item-page/versions/notice/item-versions-notice.component.html similarity index 100% rename from src/app/shared/item/item-versions/notice/item-versions-notice.component.html rename to src/app/item-page/versions/notice/item-versions-notice.component.html diff --git a/src/app/shared/item/item-versions/notice/item-versions-notice.component.spec.ts b/src/app/item-page/versions/notice/item-versions-notice.component.spec.ts similarity index 90% rename from src/app/shared/item/item-versions/notice/item-versions-notice.component.spec.ts rename to src/app/item-page/versions/notice/item-versions-notice.component.spec.ts index 2849ba4909..fb29e54a21 100644 --- a/src/app/shared/item/item-versions/notice/item-versions-notice.component.spec.ts +++ b/src/app/item-page/versions/notice/item-versions-notice.component.spec.ts @@ -3,13 +3,13 @@ import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { TranslateModule } from '@ngx-translate/core'; import { RouterTestingModule } from '@angular/router/testing'; import { NO_ERRORS_SCHEMA } from '@angular/core'; -import { VersionHistory } from '../../../../core/shared/version-history.model'; -import { Version } from '../../../../core/shared/version.model'; -import { Item } from '../../../../core/shared/item.model'; -import { VersionHistoryDataService } from '../../../../core/data/version-history-data.service'; +import { VersionHistory } from '../../../core/shared/version-history.model'; +import { Version } from '../../../core/shared/version.model'; +import { Item } from '../../../core/shared/item.model'; +import { VersionHistoryDataService } from '../../../core/data/version-history-data.service'; import { By } from '@angular/platform-browser'; -import { createSuccessfulRemoteDataObject$ } from '../../../remote-data.utils'; -import { createPaginatedList } from '../../../testing/utils.test'; +import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils'; +import { createPaginatedList } from '../../../shared/testing/utils.test'; import { of } from 'rxjs'; import { take } from 'rxjs/operators'; diff --git a/src/app/shared/item/item-versions/notice/item-versions-notice.component.ts b/src/app/item-page/versions/notice/item-versions-notice.component.ts similarity index 81% rename from src/app/shared/item/item-versions/notice/item-versions-notice.component.ts rename to src/app/item-page/versions/notice/item-versions-notice.component.ts index a292ea65c6..8a8f5ff76f 100644 --- a/src/app/shared/item/item-versions/notice/item-versions-notice.component.ts +++ b/src/app/item-page/versions/notice/item-versions-notice.component.ts @@ -1,19 +1,19 @@ import { Component, Input, OnInit } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; +import { Item } from '../../../core/shared/item.model'; import { Observable } from 'rxjs'; -import { RemoteData } from '../../../../core/data/remote-data'; -import { VersionHistory } from '../../../../core/shared/version-history.model'; -import { Version } from '../../../../core/shared/version.model'; -import { hasValue, hasValueOperator } from '../../../empty.util'; +import { RemoteData } from '../../../core/data/remote-data'; +import { VersionHistory } from '../../../core/shared/version-history.model'; +import { Version } from '../../../core/shared/version.model'; +import { hasValue, hasValueOperator } from '../../../shared/empty.util'; import { getAllSucceededRemoteData, getFirstSucceededRemoteDataPayload, getRemoteDataPayload -} from '../../../../core/shared/operators'; +} from '../../../core/shared/operators'; import { map, startWith, switchMap } from 'rxjs/operators'; -import { VersionHistoryDataService } from '../../../../core/data/version-history-data.service'; -import { AlertType } from '../../../alert/aletr-type'; -import { getItemPageRoute } from '../../../../item-page/item-page-routing-paths'; +import { VersionHistoryDataService } from '../../../core/data/version-history-data.service'; +import { AlertType } from '../../../shared/alert/aletr-type'; +import { getItemPageRoute } from '../../item-page-routing-paths'; @Component({ selector: 'ds-item-versions-notice', diff --git a/src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.html b/src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.html similarity index 100% rename from src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.html rename to src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.html diff --git a/src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.scss b/src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.scss similarity index 100% rename from src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.scss rename to src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.scss diff --git a/src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.spec.ts b/src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.spec.ts similarity index 100% rename from src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.spec.ts rename to src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.spec.ts diff --git a/src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.ts b/src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.ts similarity index 100% rename from src/app/item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.ts rename to src/app/shared/metadata-field-wrapper/metadata-field-wrapper.component.ts diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 5e3742e5b9..d50cfd95bf 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -225,17 +225,14 @@ import { import { ImportableListItemControlComponent } from './object-collection/shared/importable-list-item-control/importable-list-item-control.component'; -import { ItemVersionsComponent } from './item/item-versions/item-versions.component'; import { LogInContainerComponent } from './log-in/container/log-in-container.component'; import { LogInShibbolethComponent } from './log-in/methods/shibboleth/log-in-shibboleth.component'; import { LogInPasswordComponent } from './log-in/methods/password/log-in-password.component'; import { LogInComponent } from './log-in/log-in.component'; import { BundleListElementComponent } from './object-list/bundle-list-element/bundle-list-element.component'; import { MissingTranslationHelper } from './translate/missing-translation.helper'; -import { ItemVersionsNoticeComponent } from './item/item-versions/notice/item-versions-notice.component'; import { FileValidator } from './utils/require-file.validator'; import { FileValueAccessorDirective } from './utils/file-value-accessor.directive'; -import { FileSectionComponent } from '../item-page/simple/field-components/file-section/file-section.component'; import { ModifyItemOverviewComponent } from '../item-page/edit-item-page/modify-item-overview/modify-item-overview.component'; @@ -268,44 +265,23 @@ import { AuthorizedCollectionSelectorComponent } from './dso-selector/dso-selector/authorized-collection-selector/authorized-collection-selector.component'; import { DsoPageEditButtonComponent } from './dso-page/dso-page-edit-button/dso-page-edit-button.component'; -import { DsoPageVersionButtonComponent } from './dso-page/dso-page-version-button/dso-page-version-button.component'; import { HoverClassDirective } from './hover-class.directive'; import { ValidationSuggestionsComponent } from './input-suggestions/validation-suggestions/validation-suggestions.component'; -import { ItemAlertsComponent } from './item/item-alerts/item-alerts.component'; import { ItemSearchResultGridElementComponent } from './object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component'; -import { BitstreamDownloadPageComponent } from './bitstream-download-page/bitstream-download-page.component'; -import { - GenericItemPageFieldComponent -} from '../item-page/simple/field-components/specific-field/generic/generic-item-page-field.component'; -import { - MetadataRepresentationListComponent -} from '../item-page/simple/metadata-representation-list/metadata-representation-list.component'; -import { RelatedItemsComponent } from '../item-page/simple/related-items/related-items-component'; import { SearchNavbarComponent } from '../search-navbar/search-navbar.component'; import { ThemedSearchNavbarComponent } from '../search-navbar/themed-search-navbar.component'; -import { - ItemVersionsSummaryModalComponent -} from './item/item-versions/item-versions-summary-modal/item-versions-summary-modal.component'; -import { - ItemVersionsDeleteModalComponent -} from './item/item-versions/item-versions-delete-modal/item-versions-delete-modal.component'; import { ScopeSelectorModalComponent } from './search-form/scope-selector-modal/scope-selector-modal.component'; -import { - BitstreamRequestACopyPageComponent -} from './bitstream-request-a-copy-page/bitstream-request-a-copy-page.component'; import { DsSelectComponent } from './ds-select/ds-select.component'; import { LogInOidcComponent } from './log-in/methods/oidc/log-in-oidc.component'; import { ThemedItemListPreviewComponent } from './object-list/my-dspace-result-list-element/item-list-preview/themed-item-list-preview.component'; import { RSSComponent } from './rss-feed/rss.component'; -import { DsoPageOrcidButtonComponent } from './dso-page/dso-page-orcid-button/dso-page-orcid-button.component'; import { LogInOrcidComponent } from './log-in/methods/orcid/log-in-orcid.component'; import { BrowserOnlyPipe } from './utils/browser-only.pipe'; import { ThemedLoadingComponent } from './loading/themed-loading.component'; -import { PersonPageClaimButtonComponent } from './dso-page/person-page-claim-button/person-page-claim-button.component'; import { SearchExportCsvComponent } from './search/search-export-csv/search-export-csv.component'; import { ItemPageTitleFieldComponent @@ -367,7 +343,6 @@ const COMPONENTS = [ UserMenuComponent, DsSelectComponent, ErrorComponent, - FileSectionComponent, LangSwitchComponent, LoadingComponent, ThemedLoadingComponent, @@ -421,8 +396,6 @@ const COMPONENTS = [ SelectableListItemControlComponent, ImportableListItemControlComponent, LogInContainerComponent, - ItemVersionsComponent, - ItemVersionsNoticeComponent, ModifyItemOverviewComponent, ImpersonateNavbarComponent, EntityDropdownComponent, @@ -434,6 +407,8 @@ const COMPONENTS = [ SearchNavbarComponent, ItemPageTitleFieldComponent, ThemedSearchNavbarComponent, + DsoPageEditButtonComponent, + MetadataFieldWrapperComponent, ]; const ENTRY_COMPONENTS = [ @@ -484,7 +459,6 @@ const ENTRY_COMPONENTS = [ CollectionDropdownComponent, FileDownloadLinkComponent, BitstreamDownloadPageComponent, - BitstreamRequestACopyPageComponent, CurationFormComponent, ExportMetadataSelectorComponent, ImportBatchSelectorComponent, @@ -497,20 +471,6 @@ const ENTRY_COMPONENTS = [ ScopeSelectorModalComponent, ]; -const SHARED_ITEM_PAGE_COMPONENTS = [ - MetadataFieldWrapperComponent, - MetadataValuesComponent, - DsoPageEditButtonComponent, - DsoPageVersionButtonComponent, - PersonPageClaimButtonComponent, - ItemAlertsComponent, - GenericItemPageFieldComponent, - MetadataRepresentationListComponent, - RelatedItemsComponent, - DsoPageOrcidButtonComponent - -]; - const PROVIDERS = [ TruncatableService, MockAdminGuard, @@ -546,9 +506,6 @@ const DIRECTIVES = [ ...COMPONENTS, ...ENTRY_COMPONENTS, ...DIRECTIVES, - ...SHARED_ITEM_PAGE_COMPONENTS, - ItemVersionsSummaryModalComponent, - ItemVersionsDeleteModalComponent, ], providers: [ ...PROVIDERS @@ -558,7 +515,6 @@ const DIRECTIVES = [ ...PIPES, ...COMPONENTS, ...ENTRY_COMPONENTS, - ...SHARED_ITEM_PAGE_COMPONENTS, ...DIRECTIVES, TranslateModule, ] diff --git a/src/themes/custom/lazy-theme.module.ts b/src/themes/custom/lazy-theme.module.ts index d2ac0ae787..202f2c9635 100644 --- a/src/themes/custom/lazy-theme.module.ts +++ b/src/themes/custom/lazy-theme.module.ts @@ -114,6 +114,8 @@ import { ObjectListComponent } from './app/shared/object-list/object-list.compon import { BrowseByMetadataPageComponent } from './app/browse-by/browse-by-metadata-page/browse-by-metadata-page.component'; import { BrowseByDatePageComponent } from './app/browse-by/browse-by-date-page/browse-by-date-page.component'; import { BrowseByTitlePageComponent } from './app/browse-by/browse-by-title-page/browse-by-title-page.component'; +import { ItemVersionsModule } from '../../app/item-page/versions/item-versions.module'; +import { ItemSharedModule } from '../../app/item-page/item-shared.module'; const DECLARATIONS = [ FileSectionComponent, @@ -189,8 +191,10 @@ const DECLARATIONS = [ CommunityPageModule, CoreModule, DragDropModule, + ItemSharedModule, ItemPageModule, EditItemPageModule, + ItemVersionsModule, FormsModule, HomePageModule, HttpClientModule, diff --git a/src/themes/dspace/lazy-theme.module.ts b/src/themes/dspace/lazy-theme.module.ts index a4e8027a15..6ece4d9755 100644 --- a/src/themes/dspace/lazy-theme.module.ts +++ b/src/themes/dspace/lazy-theme.module.ts @@ -55,6 +55,8 @@ import { } from '../../app/shared/resource-policies/resource-policies.module'; import { ComcolModule } from '../../app/shared/comcol/comcol.module'; import { RootModule } from '../../app/root.module'; +import { ItemVersionsModule } from '../../app/item-page/versions/item-versions.module'; +import { ItemSharedModule } from 'src/app/item-page/item-shared.module'; const DECLARATIONS = [ ]; @@ -76,8 +78,10 @@ const DECLARATIONS = [ CommunityPageModule, CoreModule, DragDropModule, + ItemSharedModule, ItemPageModule, EditItemPageModule, + ItemVersionsModule, FormsModule, HomePageModule, HttpClientModule,