1
0

added missing decorator for classes that use Angular features

This commit is contained in:
Giuseppe Digilio
2020-12-04 10:16:37 +01:00
parent 09101e83f3
commit 587affd064
13 changed files with 65 additions and 30 deletions

View File

@@ -1,4 +1,4 @@
import { OnInit, Directive } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map, switchMap, take } from 'rxjs/operators'; import { map, switchMap, take } from 'rxjs/operators';
import { TranslateService } from '@ngx-translate/core'; import { TranslateService } from '@ngx-translate/core';
@@ -15,7 +15,10 @@ import { isEmpty } from '../shared/empty.util';
/** /**
* Abstract component representing a page to perform an action on a workflow item * Abstract component representing a page to perform an action on a workflow item
*/ */
@Directive() @Component({
selector: 'ds-workflowitem-action-page',
template: ''
})
export abstract class WorkflowItemActionPageComponent implements OnInit { export abstract class WorkflowItemActionPageComponent implements OnInit {
public type; public type;
public wfi$: Observable<WorkflowItem>; public wfi$: Observable<WorkflowItem>;

View File

@@ -1,9 +1,12 @@
import { EventEmitter, Input, Output, Directive } from '@angular/core'; import { Component, EventEmitter, Input, Output } from '@angular/core';
/** /**
* Abstract class that represents value input components * Abstract class that represents value input components
*/ */
@Directive() @Component({
selector: 'ds-value-input',
template: ''
})
export abstract class ValueInputComponent<T> { export abstract class ValueInputComponent<T> {
@Input() index: number; @Input() index: number;
/** /**

View File

@@ -1,8 +1,9 @@
import { Component, Inject, Input, OnInit } from '@angular/core'; import { Component, Input, OnInit } from '@angular/core';
import { import {
DynamicFormControlModel, DynamicFormControlModel,
DynamicFormValueControlModel, DynamicFormValueControlModel,
DynamicInputModel, DynamicSelectModel DynamicInputModel,
DynamicSelectModel
} from '@ng-dynamic-forms/core'; } from '@ng-dynamic-forms/core';
import { FormGroup } from '@angular/forms'; import { FormGroup } from '@angular/forms';
import { EPerson } from '../../core/eperson/models/eperson.model'; import { EPerson } from '../../core/eperson/models/eperson.model';
@@ -124,7 +125,7 @@ export class ProfilePageMetadataFormComponent implements OnInit {
*/ */
setFormValues() { setFormValues() {
this.formModel.forEach( this.formModel.forEach(
(fieldModel: DynamicInputModel | DynamicSelectModel<string>) => { (fieldModel: any) => {
if (fieldModel.name === 'email') { if (fieldModel.name === 'email') {
fieldModel.value = this.user.email; fieldModel.value = this.user.email;
} else { } else {

View File

@@ -1,4 +1,4 @@
import { Injectable, Input, OnInit, Directive } from '@angular/core'; import { Component, Input, OnInit } from '@angular/core';
import { ActivatedRoute, ActivatedRouteSnapshot } from '@angular/router'; import { ActivatedRoute, ActivatedRouteSnapshot } from '@angular/router';
import { DSpaceObject } from '../../../core/shared/dspace-object.model'; import { DSpaceObject } from '../../../core/shared/dspace-object.model';
import { RemoteData } from '../../../core/data/remote-data'; import { RemoteData } from '../../../core/data/remote-data';
@@ -15,9 +15,10 @@ export enum SelectorActionType {
/** /**
* Abstract base class that represents a wrapper for modal content used to select a DSpace Object * Abstract base class that represents a wrapper for modal content used to select a DSpace Object
*/ */
@Component({
@Directive() selector: 'ds-dso-selector-modal',
@Injectable() template: ''
})
export abstract class DSOSelectorModalWrapperComponent implements OnInit { export abstract class DSOSelectorModalWrapperComponent implements OnInit {
/** /**
* The current page's DSO * The current page's DSO

View File

@@ -1,4 +1,4 @@
import { EventEmitter, Input, Output, Directive } from '@angular/core'; import { Component, EventEmitter, Input, Output } from '@angular/core';
import { FormGroup } from '@angular/forms'; import { FormGroup } from '@angular/forms';
import { import {
@@ -19,7 +19,10 @@ import { PageInfo } from '../../../../../core/shared/page-info.model';
/** /**
* An abstract class to be extended by form components that handle vocabulary * An abstract class to be extended by form components that handle vocabulary
*/ */
@Directive() @Component({
selector: 'ds-dynamic-vocabulary',
template: ''
})
export abstract class DsDynamicVocabularyComponent extends DynamicFormControlComponent { export abstract class DsDynamicVocabularyComponent extends DynamicFormControlComponent {
@Input() abstract group: FormGroup; @Input() abstract group: FormGroup;

View File

@@ -1,4 +1,4 @@
import { Directive, EventEmitter, Input, Output } from '@angular/core'; import { Component, EventEmitter, Input, Output } from '@angular/core';
import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model'; import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model';
import { BehaviorSubject } from 'rxjs'; import { BehaviorSubject } from 'rxjs';
import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service'; import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service';
@@ -11,7 +11,10 @@ import { ProcessTaskResponse } from '../../../../core/tasks/models/process-task-
* - Add a @rendersWorkflowTaskOption annotation to your component providing the same enum value * - Add a @rendersWorkflowTaskOption annotation to your component providing the same enum value
* - Optionally overwrite createBody if the request body requires more than just the option * - Optionally overwrite createBody if the request body requires more than just the option
*/ */
@Directive() @Component({
selector: 'ds-calim-task-action-abstract',
template: ''
})
export abstract class ClaimedTaskActionsAbstractComponent { export abstract class ClaimedTaskActionsAbstractComponent {
/** /**
* The workflow task option the child component represents * The workflow task option the child component represents

View File

@@ -1,5 +1,5 @@
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { Injector, Input, Directive } from '@angular/core'; import { Component, Injector, Input } from '@angular/core';
import { find, take, tap } from 'rxjs/operators'; import { find, take, tap } from 'rxjs/operators';
@@ -18,7 +18,10 @@ import { SearchService } from '../../core/shared/search/search.service';
/** /**
* Abstract class for all different representations of mydspace actions * Abstract class for all different representations of mydspace actions
*/ */
@Directive() @Component({
selector: 'ds-mydspace-actions-abstract',
template: ''
})
export abstract class MyDSpaceActionsComponent<T extends DSpaceObject, TService extends DataService<T>> { export abstract class MyDSpaceActionsComponent<T extends DSpaceObject, TService extends DataService<T>> {
/** /**

View File

@@ -1,4 +1,4 @@
import { EventEmitter, Input, OnDestroy, OnInit, Output, Directive } from '@angular/core'; import { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';
import { take } from 'rxjs/operators'; import { take } from 'rxjs/operators';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { RemoteData } from '../../../core/data/remote-data'; import { RemoteData } from '../../../core/data/remote-data';
@@ -10,7 +10,10 @@ import { SortOptions } from '../../../core/cache/models/sort-options.model';
/** /**
* An abstract component used to select DSpaceObjects from a specific list and returning the UUIDs of the selected DSpaceObjects * An abstract component used to select DSpaceObjects from a specific list and returning the UUIDs of the selected DSpaceObjects
*/ */
@Directive() @Component({
selector: 'ds-object-select-abstract',
template: ''
})
export abstract class ObjectSelectComponent<TDomain> implements OnInit, OnDestroy { export abstract class ObjectSelectComponent<TDomain> implements OnInit, OnDestroy {
/** /**

View File

@@ -1,7 +1,7 @@
import { AbstractPaginatedDragAndDropListComponent } from './abstract-paginated-drag-and-drop-list.component'; import { AbstractPaginatedDragAndDropListComponent } from './abstract-paginated-drag-and-drop-list.component';
import { DSpaceObject } from '../../core/shared/dspace-object.model'; import { DSpaceObject } from '../../core/shared/dspace-object.model';
import { ObjectUpdatesService } from '../../core/data/object-updates/object-updates.service'; import { ObjectUpdatesService } from '../../core/data/object-updates/object-updates.service';
import { Directive, ElementRef } from '@angular/core'; import { Component, ElementRef } from '@angular/core';
import { BehaviorSubject, Observable, of as observableOf } from 'rxjs'; import { BehaviorSubject, Observable, of as observableOf } from 'rxjs';
import { PaginatedList } from '../../core/data/paginated-list'; import { PaginatedList } from '../../core/data/paginated-list';
import { RemoteData } from '../../core/data/remote-data'; import { RemoteData } from '../../core/data/remote-data';
@@ -12,7 +12,10 @@ import { createSuccessfulRemoteDataObject } from '../remote-data.utils';
import { createPaginatedList } from '../testing/utils.test'; import { createPaginatedList } from '../testing/utils.test';
import { ObjectValuesPipe } from '../utils/object-values-pipe'; import { ObjectValuesPipe } from '../utils/object-values-pipe';
@Directive() @Component({
selector: 'ds-mock-paginated-drag-drop-abstract',
template: ''
})
class MockAbstractPaginatedDragAndDropListComponent extends AbstractPaginatedDragAndDropListComponent<DSpaceObject> { class MockAbstractPaginatedDragAndDropListComponent extends AbstractPaginatedDragAndDropListComponent<DSpaceObject> {
constructor(protected objectUpdatesService: ObjectUpdatesService, constructor(protected objectUpdatesService: ObjectUpdatesService,

View File

@@ -9,7 +9,7 @@ import { hasValue } from '../empty.util';
import { paginatedListToArray } from '../../core/shared/operators'; import { paginatedListToArray } from '../../core/shared/operators';
import { DSpaceObject } from '../../core/shared/dspace-object.model'; import { DSpaceObject } from '../../core/shared/dspace-object.model';
import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop'; import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';
import { Directive, ElementRef, EventEmitter, OnDestroy, Output, ViewChild } from '@angular/core'; import { Component, ElementRef, EventEmitter, OnDestroy, Output, ViewChild } from '@angular/core';
import { PaginationComponent } from '../pagination/pagination.component'; import { PaginationComponent } from '../pagination/pagination.component';
import { ObjectValuesPipe } from '../utils/object-values-pipe'; import { ObjectValuesPipe } from '../utils/object-values-pipe';
import { compareArraysUsing } from '../../+item-page/simple/item-types/shared/item-relationships-utils'; import { compareArraysUsing } from '../../+item-page/simple/item-types/shared/item-relationships-utils';
@@ -36,7 +36,10 @@ export const compareArraysUsingFieldUuids = () =>
* *
* An example component extending from this abstract component: PaginatedDragAndDropBitstreamListComponent * An example component extending from this abstract component: PaginatedDragAndDropBitstreamListComponent
*/ */
@Directive() @Component({
selector: 'ds-paginated-drag-drop-abstract',
template: ''
})
export abstract class AbstractPaginatedDragAndDropListComponent<T extends DSpaceObject> implements OnDestroy { export abstract class AbstractPaginatedDragAndDropListComponent<T extends DSpaceObject> implements OnDestroy {
/** /**
* A view on the child pagination component * A view on the child pagination component

View File

@@ -1,4 +1,4 @@
import { Directive, Inject, OnDestroy, OnInit } from '@angular/core'; import { Component, Inject, OnDestroy, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { FormControl, FormGroup } from '@angular/forms'; import { FormControl, FormGroup } from '@angular/forms';
@@ -7,8 +7,11 @@ import { hasValue } from '../empty.util';
/** /**
* An abstract component to render StartsWith options * An abstract component to render StartsWith options
*/ */
@Directive() @Component({
export class StartsWithAbstractComponent implements OnInit, OnDestroy { selector: 'ds-start-with-abstract',
template: ''
})
export abstract class StartsWithAbstractComponent implements OnInit, OnDestroy {
/** /**
* The currently selected startsWith in string format * The currently selected startsWith in string format
*/ */

View File

@@ -1,4 +1,4 @@
import { OnInit, Directive } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { UsageReportService } from '../../core/statistics/usage-report-data.service'; import { UsageReportService } from '../../core/statistics/usage-report-data.service';
import { map, switchMap } from 'rxjs/operators'; import { map, switchMap } from 'rxjs/operators';
@@ -12,7 +12,10 @@ import { DSONameService } from '../../core/breadcrumbs/dso-name.service';
/** /**
* Class representing an abstract statistics page component. * Class representing an abstract statistics page component.
*/ */
@Directive() @Component({
selector: 'ds-statistics-page',
templateUrl: ''
})
export abstract class StatisticsPageComponent<T extends DSpaceObject> implements OnInit { export abstract class StatisticsPageComponent<T extends DSpaceObject> implements OnInit {
/** /**

View File

@@ -1,4 +1,4 @@
import { Inject, OnDestroy, OnInit, Directive } from '@angular/core'; import { Component, Inject, OnDestroy, OnInit } from '@angular/core';
import { Observable, Subscription } from 'rxjs'; import { Observable, Subscription } from 'rxjs';
import { filter, startWith } from 'rxjs/operators'; import { filter, startWith } from 'rxjs/operators';
@@ -14,7 +14,10 @@ export interface SectionDataModel {
/** /**
* An abstract model class for a submission edit form section. * An abstract model class for a submission edit form section.
*/ */
@Directive() @Component({
selector: 'ds-section-model',
template: ''
})
export abstract class SectionModelComponent implements OnDestroy, OnInit, SectionDataModel { export abstract class SectionModelComponent implements OnDestroy, OnInit, SectionDataModel {
protected abstract sectionService: SectionsService; protected abstract sectionService: SectionsService;