From e963aa9af08122ab4adb392b0b4d67576993accd Mon Sep 17 00:00:00 2001 From: Samuel Date: Thu, 18 Jun 2020 15:20:55 +0200 Subject: [PATCH] CC License Submission Step - feedback --- src/app/core/core.module.ts | 8 +- ...ubmission-cc-licence-link.resource-type.ts | 2 +- .../submission-cc-licence.resource-type.ts | 2 +- .../submission-cc-license-url.model.ts | 8 +- .../models}/submission-cc-license.model.ts | 8 +- .../workspaceitem-section-cc-license.model.ts | 2 +- .../submission-cc-license-data.service.ts | 10 +-- .../submission-cc-license-url-data.service.ts | 10 +-- ...mission-section-cc-licenses.component.scss | 0 .../submission-form-collection.component.html | 90 ++++++++++--------- ...bmission-form-collection.component.spec.ts | 6 +- ...mission-section-cc-licenses.component.html | 19 ++-- ...mission-section-cc-licenses.component.scss | 3 + ...sion-section-cc-licenses.component.spec.ts | 24 ++--- ...ubmission-section-cc-licenses.component.ts | 24 ++--- src/app/submission/submission.module.ts | 3 +- src/assets/i18n/en.json5 | 4 +- 17 files changed, 115 insertions(+), 108 deletions(-) rename src/app/core/{shared => submission/models}/submission-cc-licence-link.resource-type.ts (78%) rename src/app/core/{shared => submission/models}/submission-cc-licence.resource-type.ts (77%) rename src/app/core/{shared => submission/models}/submission-cc-license-url.model.ts (62%) rename src/app/core/{shared => submission/models}/submission-cc-license.model.ts (71%) rename src/app/core/{data => submission}/submission-cc-license-data.service.ts (87%) rename src/app/core/{data => submission}/submission-cc-license-url-data.service.ts (76%) delete mode 100644 src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.scss rename src/app/{shared/submission-section-cc-licenses => submission/sections/cc-license}/submission-section-cc-licenses.component.html (90%) create mode 100644 src/app/submission/sections/cc-license/submission-section-cc-licenses.component.scss rename src/app/{shared/submission-section-cc-licenses => submission/sections/cc-license}/submission-section-cc-licenses.component.spec.ts (89%) rename src/app/{shared/submission-section-cc-licenses => submission/sections/cc-license}/submission-section-cc-licenses.component.ts (88%) diff --git a/src/app/core/core.module.ts b/src/app/core/core.module.ts index 93aa34d68d..8fe4d60260 100644 --- a/src/app/core/core.module.ts +++ b/src/app/core/core.module.ts @@ -145,10 +145,10 @@ import { Version } from './shared/version.model'; import { VersionHistory } from './shared/version-history.model'; import { WorkflowActionDataService } from './data/workflow-action-data.service'; import { WorkflowAction } from './tasks/models/workflow-action-object.model'; -import { SubmissionCcLicenseDataService } from './data/submission-cc-license-data.service'; -import { SubmissionCcLicence } from './shared/submission-cc-license.model'; -import { SubmissionCcLicenceUrl } from './shared/submission-cc-license-url.model'; -import { SubmissionCcLicenseUrlDataService } from './data/submission-cc-license-url-data.service'; +import { SubmissionCcLicenseDataService } from './submission/submission-cc-license-data.service'; +import { SubmissionCcLicence } from './submission/models/submission-cc-license.model'; +import { SubmissionCcLicenceUrl } from './submission/models/submission-cc-license-url.model'; +import { SubmissionCcLicenseUrlDataService } from './submission/submission-cc-license-url-data.service'; /** * When not in production, endpoint responses can be mocked for testing purposes diff --git a/src/app/core/shared/submission-cc-licence-link.resource-type.ts b/src/app/core/submission/models/submission-cc-licence-link.resource-type.ts similarity index 78% rename from src/app/core/shared/submission-cc-licence-link.resource-type.ts rename to src/app/core/submission/models/submission-cc-licence-link.resource-type.ts index b96adbfe6e..b4e38970f0 100644 --- a/src/app/core/shared/submission-cc-licence-link.resource-type.ts +++ b/src/app/core/submission/models/submission-cc-licence-link.resource-type.ts @@ -1,4 +1,4 @@ -import { ResourceType } from './resource-type'; +import { ResourceType } from '../../shared/resource-type'; /** * The resource type for License diff --git a/src/app/core/shared/submission-cc-licence.resource-type.ts b/src/app/core/submission/models/submission-cc-licence.resource-type.ts similarity index 77% rename from src/app/core/shared/submission-cc-licence.resource-type.ts rename to src/app/core/submission/models/submission-cc-licence.resource-type.ts index 1e65a433f6..a15b8a0c66 100644 --- a/src/app/core/shared/submission-cc-licence.resource-type.ts +++ b/src/app/core/submission/models/submission-cc-licence.resource-type.ts @@ -1,4 +1,4 @@ -import { ResourceType } from './resource-type'; +import { ResourceType } from '../../shared/resource-type'; /** * The resource type for License diff --git a/src/app/core/shared/submission-cc-license-url.model.ts b/src/app/core/submission/models/submission-cc-license-url.model.ts similarity index 62% rename from src/app/core/shared/submission-cc-license-url.model.ts rename to src/app/core/submission/models/submission-cc-license-url.model.ts index 8ee444544c..a7c933ecb1 100644 --- a/src/app/core/shared/submission-cc-license-url.model.ts +++ b/src/app/core/submission/models/submission-cc-license-url.model.ts @@ -1,8 +1,8 @@ import { autoserialize, inheritSerialization } from 'cerialize'; -import { typedObject } from '../cache/builders/build-decorators'; -import { excludeFromEquals } from '../utilities/equals.decorators'; -import { ResourceType } from './resource-type'; -import { HALResource } from './hal-resource.model'; +import { typedObject } from '../../cache/builders/build-decorators'; +import { excludeFromEquals } from '../../utilities/equals.decorators'; +import { ResourceType } from '../../shared/resource-type'; +import { HALResource } from '../../shared/hal-resource.model'; import { SUBMISSION_CC_LICENSE_URL } from './submission-cc-licence-link.resource-type'; @typedObject diff --git a/src/app/core/shared/submission-cc-license.model.ts b/src/app/core/submission/models/submission-cc-license.model.ts similarity index 71% rename from src/app/core/shared/submission-cc-license.model.ts rename to src/app/core/submission/models/submission-cc-license.model.ts index 20de01a826..92c48fdbfe 100644 --- a/src/app/core/shared/submission-cc-license.model.ts +++ b/src/app/core/submission/models/submission-cc-license.model.ts @@ -1,8 +1,8 @@ import { autoserialize, inheritSerialization } from 'cerialize'; -import { typedObject } from '../cache/builders/build-decorators'; -import { excludeFromEquals } from '../utilities/equals.decorators'; -import { ResourceType } from './resource-type'; -import { HALResource } from './hal-resource.model'; +import { typedObject } from '../../cache/builders/build-decorators'; +import { excludeFromEquals } from '../../utilities/equals.decorators'; +import { ResourceType } from '../../shared/resource-type'; +import { HALResource } from '../../shared/hal-resource.model'; import { SUBMISSION_CC_LICENSE } from './submission-cc-licence.resource-type'; @typedObject diff --git a/src/app/core/submission/models/workspaceitem-section-cc-license.model.ts b/src/app/core/submission/models/workspaceitem-section-cc-license.model.ts index 9cc7af771c..ed7d68354c 100644 --- a/src/app/core/submission/models/workspaceitem-section-cc-license.model.ts +++ b/src/app/core/submission/models/workspaceitem-section-cc-license.model.ts @@ -1,4 +1,4 @@ -import {Option} from '../../shared/submission-cc-license.model'; +import { Option } from './submission-cc-license.model'; /** * An interface to represent the submission's creative commons license section data. diff --git a/src/app/core/data/submission-cc-license-data.service.ts b/src/app/core/submission/submission-cc-license-data.service.ts similarity index 87% rename from src/app/core/data/submission-cc-license-data.service.ts rename to src/app/core/submission/submission-cc-license-data.service.ts index 33e0f8ebac..5e738e0327 100644 --- a/src/app/core/data/submission-cc-license-data.service.ts +++ b/src/app/core/submission/submission-cc-license-data.service.ts @@ -7,11 +7,11 @@ import { RemoteDataBuildService } from '../cache/builders/remote-data-build.serv import { ObjectCacheService } from '../cache/object-cache.service'; import { CoreState } from '../core.reducers'; import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { DataService } from './data.service'; -import { RequestService } from './request.service'; -import { SUBMISSION_CC_LICENSE } from '../shared/submission-cc-licence.resource-type'; -import { Field, Option, SubmissionCcLicence } from '../shared/submission-cc-license.model'; -import { DefaultChangeAnalyzer } from './default-change-analyzer.service'; +import { DataService } from '../data/data.service'; +import { RequestService } from '../data/request.service'; +import { SUBMISSION_CC_LICENSE } from './models/submission-cc-licence.resource-type'; +import { Field, Option, SubmissionCcLicence } from './models/submission-cc-license.model'; +import { DefaultChangeAnalyzer } from '../data/default-change-analyzer.service'; import { getRemoteDataPayload, getSucceededRemoteData, diff --git a/src/app/core/data/submission-cc-license-url-data.service.ts b/src/app/core/submission/submission-cc-license-url-data.service.ts similarity index 76% rename from src/app/core/data/submission-cc-license-url-data.service.ts rename to src/app/core/submission/submission-cc-license-url-data.service.ts index 581b7e2141..08e1c16fa3 100644 --- a/src/app/core/data/submission-cc-license-url-data.service.ts +++ b/src/app/core/submission/submission-cc-license-url-data.service.ts @@ -7,11 +7,11 @@ import { RemoteDataBuildService } from '../cache/builders/remote-data-build.serv import { ObjectCacheService } from '../cache/object-cache.service'; import { CoreState } from '../core.reducers'; import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { DataService } from './data.service'; -import { RequestService } from './request.service'; -import { DefaultChangeAnalyzer } from './default-change-analyzer.service'; -import { SubmissionCcLicenceUrl } from '../shared/submission-cc-license-url.model'; -import { SUBMISSION_CC_LICENSE_URL } from '../shared/submission-cc-licence-link.resource-type'; +import { DataService } from '../data/data.service'; +import { RequestService } from '../data/request.service'; +import { DefaultChangeAnalyzer } from '../data/default-change-analyzer.service'; +import { SubmissionCcLicenceUrl } from './models/submission-cc-license-url.model'; +import { SUBMISSION_CC_LICENSE_URL } from './models/submission-cc-licence-link.resource-type'; @Injectable() @dataService(SUBMISSION_CC_LICENSE_URL) diff --git a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.scss b/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.scss deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/app/submission/form/collection/submission-form-collection.component.html b/src/app/submission/form/collection/submission-form-collection.component.html index 1e3c07c703..6f4a8a864c 100644 --- a/src/app/submission/form/collection/submission-form-collection.component.html +++ b/src/app/submission/form/collection/submission-form-collection.component.html @@ -1,44 +1,50 @@ - - - - - - - - {{ selectedCollectionName$ | async }} - - - - -
- +
+
+
+ + {{ 'submission.sections.general.collection' | translate }} +
- -
- - -
- + - + +
+
diff --git a/src/app/submission/form/collection/submission-form-collection.component.spec.ts b/src/app/submission/form/collection/submission-form-collection.component.spec.ts index a964d9cd81..105d94b966 100644 --- a/src/app/submission/form/collection/submission-form-collection.component.spec.ts +++ b/src/app/submission/form/collection/submission-form-collection.component.spec.ts @@ -26,7 +26,6 @@ import { PageInfo } from '../../../core/shared/page-info.model'; import { Collection } from '../../../core/shared/collection.model'; import { createTestComponent } from '../../../shared/testing/utils.test'; import { CollectionDataService } from '../../../core/data/collection-data.service'; -import { SharedModule } from '../../../shared/shared.module'; const subcommunities = [Object.assign(new Community(), { name: 'SubCommunity 1', @@ -224,7 +223,6 @@ describe('SubmissionFormCollectionComponent Component', () => { FormsModule, ReactiveFormsModule, NgbModule, - SharedModule, TranslateModule.forRoot() ], declarations: [ @@ -368,8 +366,8 @@ describe('SubmissionFormCollectionComponent Component', () => { comp.searchListCollection$ = observableOf(mockCollectionList); fixture.detectChanges(); - dropdowBtn = fixture.debugElement.query(By.css('#dsSelectMenuButton')); - dropdownMenu = fixture.debugElement.query(By.css('#dsSelectDropdownMenu')); + dropdowBtn = fixture.debugElement.query(By.css('#collectionControlsMenuButton')); + dropdownMenu = fixture.debugElement.query(By.css('#collectionControlsDropdownMenu')); }); it('should have dropdown menu closed', () => { diff --git a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.html b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.html similarity index 90% rename from src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.html rename to src/app/submission/sections/cc-license/submission-section-cc-licenses.component.html index 6818b4d254..d862cb598a 100644 --- a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.html +++ b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.html @@ -1,11 +1,10 @@
+ [disabled]="!submissionCcLicenses"> - + {{ getSelectedCcLicense().name }} @@ -92,11 +91,13 @@ - +
+ +
@@ -120,7 +121,7 @@
- +
diff --git a/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.scss b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.scss new file mode 100644 index 0000000000..62a902b79a --- /dev/null +++ b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.scss @@ -0,0 +1,3 @@ +.options-select-menu { + max-height: 25vh; +} diff --git a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.spec.ts b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.spec.ts similarity index 89% rename from src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.spec.ts rename to src/app/submission/sections/cc-license/submission-section-cc-licenses.component.spec.ts index 78ea927af6..a69ab2971d 100644 --- a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.spec.ts +++ b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.spec.ts @@ -1,22 +1,22 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { SubmissionSectionCcLicensesComponent } from './submission-section-cc-licenses.component'; -import { SUBMISSION_CC_LICENSE } from '../../core/shared/submission-cc-licence.resource-type'; +import { SUBMISSION_CC_LICENSE } from '../../../core/submission/models/submission-cc-licence.resource-type'; import { of as observableOf } from 'rxjs'; -import { SubmissionCcLicenseDataService } from '../../core/data/submission-cc-license-data.service'; +import { SubmissionCcLicenseDataService } from '../../../core/submission/submission-cc-license-data.service'; import { DebugElement } from '@angular/core'; import { By } from '@angular/platform-browser'; -import { SharedModule } from '../shared.module'; -import { SectionsService } from '../../submission/sections/sections.service'; -import { SectionDataObject } from '../../submission/sections/models/section-data.model'; -import { SectionsType } from '../../submission/sections/sections-type'; -import { RemoteData } from '../../core/data/remote-data'; +import { SharedModule } from '../../../shared/shared.module'; +import { SectionsService } from '../sections.service'; +import { SectionDataObject } from '../models/section-data.model'; +import { SectionsType } from '../sections-type'; +import { RemoteData } from '../../../core/data/remote-data'; import { TranslateModule } from '@ngx-translate/core'; -import { PageInfo } from '../../core/shared/page-info.model'; -import { PaginatedList } from '../../core/data/paginated-list'; -import { SubmissionCcLicence } from '../../core/shared/submission-cc-license.model'; +import { PageInfo } from '../../../core/shared/page-info.model'; +import { PaginatedList } from '../../../core/data/paginated-list'; +import { SubmissionCcLicence } from '../../../core/submission/models/submission-cc-license.model'; import { cold } from 'jasmine-marbles'; -import { JsonPatchOperationsBuilder } from '../../core/json-patch/builder/json-patch-operations-builder'; -import { SubmissionCcLicenseUrlDataService } from '../../core/data/submission-cc-license-url-data.service'; +import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; +import { SubmissionCcLicenseUrlDataService } from '../../../core/submission/submission-cc-license-url-data.service'; describe('SubmissionSectionCcLicensesComponent', () => { diff --git a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.ts b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.ts similarity index 88% rename from src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.ts rename to src/app/submission/sections/cc-license/submission-section-cc-licenses.component.ts index 6c3d52de55..d2aa78d030 100644 --- a/src/app/shared/submission-section-cc-licenses/submission-section-cc-licenses.component.ts +++ b/src/app/submission/sections/cc-license/submission-section-cc-licenses.component.ts @@ -1,19 +1,19 @@ import { Component, Inject } from '@angular/core'; import { Observable, of as observableOf, Subscription } from 'rxjs'; -import { Field, Option, SubmissionCcLicence } from '../../core/shared/submission-cc-license.model'; -import { getRemoteDataPayload, getSucceededRemoteData } from '../../core/shared/operators'; +import { Field, Option, SubmissionCcLicence } from '../../../core/submission/models/submission-cc-license.model'; +import { getRemoteDataPayload, getSucceededRemoteData } from '../../../core/shared/operators'; import { distinctUntilChanged, filter, map } from 'rxjs/operators'; -import { SubmissionCcLicenseDataService } from '../../core/data/submission-cc-license-data.service'; +import { SubmissionCcLicenseDataService } from '../../../core/submission/submission-cc-license-data.service'; import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap'; -import { renderSectionFor } from '../../submission/sections/sections-decorator'; -import { SectionsType } from '../../submission/sections/sections-type'; -import { SectionModelComponent } from '../../submission/sections/models/section.model'; -import { SectionDataObject } from '../../submission/sections/models/section-data.model'; -import { SectionsService } from '../../submission/sections/sections.service'; -import { WorkspaceitemSectionCcLicenseObject } from '../../core/submission/models/workspaceitem-section-cc-license.model'; -import { JsonPatchOperationPathCombiner } from '../../core/json-patch/builder/json-patch-operation-path-combiner'; -import { isNotEmpty } from '../empty.util'; -import { JsonPatchOperationsBuilder } from '../../core/json-patch/builder/json-patch-operations-builder'; +import { renderSectionFor } from '../sections-decorator'; +import { SectionsType } from '../sections-type'; +import { SectionModelComponent } from '../models/section.model'; +import { SectionDataObject } from '../models/section-data.model'; +import { SectionsService } from '../sections.service'; +import { WorkspaceitemSectionCcLicenseObject } from '../../../core/submission/models/workspaceitem-section-cc-license.model'; +import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; +import { isNotEmpty } from '../../../shared/empty.util'; +import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; /** * This component represents the submission section to select the Creative Commons license. diff --git a/src/app/submission/submission.module.ts b/src/app/submission/submission.module.ts index dc38c976e0..93bf06b193 100644 --- a/src/app/submission/submission.module.ts +++ b/src/app/submission/submission.module.ts @@ -28,8 +28,7 @@ import { SubmissionSectionUploadFileViewComponent } from './sections/upload/file import { SubmissionSectionUploadAccessConditionsComponent } from './sections/upload/accessConditions/submission-section-upload-access-conditions.component'; import { SubmissionSubmitComponent } from './submit/submission-submit.component'; import { storeModuleConfig } from '../app.reducer'; -import { CoreState } from '../core/core.reducers'; -import { SubmissionSectionCcLicensesComponent } from '../shared/submission-section-cc-licenses/submission-section-cc-licenses.component'; +import { SubmissionSectionCcLicensesComponent } from './sections/cc-license/submission-section-cc-licenses.component'; @NgModule({ imports: [ diff --git a/src/assets/i18n/en.json5 b/src/assets/i18n/en.json5 index f60ef5c08b..5d1ae0f9f9 100644 --- a/src/assets/i18n/en.json5 +++ b/src/assets/i18n/en.json5 @@ -2537,9 +2537,9 @@ "submission.sections.ccLicense.type": "License Type", - "submission.sections.ccLicense.select": "Select a license…", + "submission.sections.ccLicense.select": "Select a license type…", - "submission.sections.ccLicense.change": "Change your license…", + "submission.sections.ccLicense.change": "Change your license type…", "submission.sections.ccLicense.none": "No licenses available",