mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
69115: Moving enum options to components
This commit is contained in:
@@ -2,14 +2,12 @@ import { EventEmitter, Input, Output } from '@angular/core';
|
||||
import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model';
|
||||
import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject';
|
||||
import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service';
|
||||
import { WorkflowTaskOptions } from '../workflow-task-options.model';
|
||||
import { ProcessTaskResponse } from '../../../../core/tasks/models/process-task-response';
|
||||
|
||||
/**
|
||||
* Abstract component for rendering a claimed task's action
|
||||
* To create a child-component for a new option:
|
||||
* - Make sure the option is defined in the WorkflowTaskOptions enum
|
||||
* - Set the "option" of the component to the enum value
|
||||
* - Set the "option" of the component
|
||||
* - 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
|
||||
*/
|
||||
@@ -17,7 +15,7 @@ export abstract class ClaimedTaskActionsAbstractComponent {
|
||||
/**
|
||||
* The workflow task option the child component represents
|
||||
*/
|
||||
abstract option: WorkflowTaskOptions;
|
||||
abstract option: string;
|
||||
|
||||
/**
|
||||
* The Claimed Task to display an action for
|
||||
|
@@ -1,10 +1,11 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { ClaimedTaskActionsAbstractComponent } from '../abstract/claimed-task-actions-abstract.component';
|
||||
import { rendersWorkflowTaskOption } from '../switcher/claimed-task-actions-decorator';
|
||||
import { WorkflowTaskOptions } from '../workflow-task-options.model';
|
||||
import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service';
|
||||
|
||||
@rendersWorkflowTaskOption(WorkflowTaskOptions.Approve)
|
||||
export const WORKFLOW_TASK_OPTION_APPROVE = 'submit_approve';
|
||||
|
||||
@rendersWorkflowTaskOption(WORKFLOW_TASK_OPTION_APPROVE)
|
||||
@Component({
|
||||
selector: 'ds-claimed-task-actions-approve',
|
||||
styleUrls: ['./claimed-task-actions-approve.component.scss'],
|
||||
@@ -17,7 +18,7 @@ export class ClaimedTaskActionsApproveComponent extends ClaimedTaskActionsAbstra
|
||||
/**
|
||||
* This component represents the approve option
|
||||
*/
|
||||
option = WorkflowTaskOptions.Approve;
|
||||
option = WORKFLOW_TASK_OPTION_APPROVE;
|
||||
|
||||
constructor(protected claimedTaskService: ClaimedTaskDataService) {
|
||||
super(claimedTaskService);
|
||||
|
@@ -16,7 +16,7 @@ import { RequestService } from '../../../core/data/request.service';
|
||||
import { SearchService } from '../../../core/shared/search/search.service';
|
||||
import { WorkflowAction } from '../../../core/tasks/models/workflow-action-object.model';
|
||||
import { WorkflowActionDataService } from '../../../core/data/workflow-action-data.service';
|
||||
import { WorkflowTaskOptions } from './workflow-task-options.model';
|
||||
import { WORKFLOW_TASK_OPTION_RETURN_TO_POOL } from './return-to-pool/claimed-task-actions-return-to-pool.component';
|
||||
|
||||
/**
|
||||
* This component represents actions related to ClaimedTask object.
|
||||
@@ -47,7 +47,7 @@ export class ClaimedTaskActionsComponent extends MyDSpaceActionsComponent<Claime
|
||||
* The option used to render the "return to pool" component
|
||||
* Every claimed task contains this option
|
||||
*/
|
||||
public returnToPoolOption = WorkflowTaskOptions.ReturnToPool;
|
||||
public returnToPoolOption = WORKFLOW_TASK_OPTION_RETURN_TO_POOL;
|
||||
|
||||
/**
|
||||
* Initialize instance variables
|
||||
|
@@ -1,10 +1,11 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { ClaimedTaskActionsAbstractComponent } from '../abstract/claimed-task-actions-abstract.component';
|
||||
import { rendersWorkflowTaskOption } from '../switcher/claimed-task-actions-decorator';
|
||||
import { WorkflowTaskOptions } from '../workflow-task-options.model';
|
||||
import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service';
|
||||
|
||||
@rendersWorkflowTaskOption(WorkflowTaskOptions.EditMetadata)
|
||||
export const WORKFLOW_TASK_OPTION_EDIT_METADATA = 'submit_edit_metadata';
|
||||
|
||||
@rendersWorkflowTaskOption(WORKFLOW_TASK_OPTION_EDIT_METADATA)
|
||||
@Component({
|
||||
selector: 'ds-claimed-task-actions-edit-metadata',
|
||||
styleUrls: ['./claimed-task-actions-edit-metadata.component.scss'],
|
||||
@@ -17,7 +18,7 @@ export class ClaimedTaskActionsEditMetadataComponent extends ClaimedTaskActionsA
|
||||
/**
|
||||
* This component represents the edit metadata option
|
||||
*/
|
||||
option = WorkflowTaskOptions.EditMetadata;
|
||||
option = WORKFLOW_TASK_OPTION_EDIT_METADATA;
|
||||
|
||||
constructor(protected claimedTaskService: ClaimedTaskDataService) {
|
||||
super(claimedTaskService);
|
||||
|
@@ -5,9 +5,10 @@ import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';
|
||||
import { ClaimedTaskActionsAbstractComponent } from '../abstract/claimed-task-actions-abstract.component';
|
||||
import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service';
|
||||
import { rendersWorkflowTaskOption } from '../switcher/claimed-task-actions-decorator';
|
||||
import { WorkflowTaskOptions } from '../workflow-task-options.model';
|
||||
|
||||
@rendersWorkflowTaskOption(WorkflowTaskOptions.Reject)
|
||||
export const WORKFLOW_TASK_OPTION_REJECT = 'submit_reject';
|
||||
|
||||
@rendersWorkflowTaskOption(WORKFLOW_TASK_OPTION_REJECT)
|
||||
@Component({
|
||||
selector: 'ds-claimed-task-actions-reject',
|
||||
styleUrls: ['./claimed-task-actions-reject.component.scss'],
|
||||
@@ -18,9 +19,9 @@ import { WorkflowTaskOptions } from '../workflow-task-options.model';
|
||||
*/
|
||||
export class ClaimedTaskActionsRejectComponent extends ClaimedTaskActionsAbstractComponent implements OnInit {
|
||||
/**
|
||||
* This component represents the edit metadata option
|
||||
* This component represents the reject option
|
||||
*/
|
||||
option = WorkflowTaskOptions.Reject;
|
||||
option = WORKFLOW_TASK_OPTION_REJECT;
|
||||
|
||||
/**
|
||||
* The reject form group
|
||||
|
@@ -1,11 +1,12 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { ClaimedTaskActionsAbstractComponent } from '../abstract/claimed-task-actions-abstract.component';
|
||||
import { rendersWorkflowTaskOption } from '../switcher/claimed-task-actions-decorator';
|
||||
import { WorkflowTaskOptions } from '../workflow-task-options.model';
|
||||
import { ClaimedTaskDataService } from '../../../../core/tasks/claimed-task-data.service';
|
||||
import { ProcessTaskResponse } from '../../../../core/tasks/models/process-task-response';
|
||||
|
||||
@rendersWorkflowTaskOption(WorkflowTaskOptions.ReturnToPool)
|
||||
export const WORKFLOW_TASK_OPTION_RETURN_TO_POOL = 'return_to_pool';
|
||||
|
||||
@rendersWorkflowTaskOption(WORKFLOW_TASK_OPTION_RETURN_TO_POOL)
|
||||
@Component({
|
||||
selector: 'ds-claimed-task-actions-return-to-pool',
|
||||
styleUrls: ['./claimed-task-actions-return-to-pool.component.scss'],
|
||||
@@ -16,9 +17,9 @@ import { ProcessTaskResponse } from '../../../../core/tasks/models/process-task-
|
||||
*/
|
||||
export class ClaimedTaskActionsReturnToPoolComponent extends ClaimedTaskActionsAbstractComponent {
|
||||
/**
|
||||
* This component represents the edit metadata option
|
||||
* This component represents the return to pool option
|
||||
*/
|
||||
option = WorkflowTaskOptions.ReturnToPool;
|
||||
option = WORKFLOW_TASK_OPTION_RETURN_TO_POOL;
|
||||
|
||||
constructor(protected claimedTaskService: ClaimedTaskDataService) {
|
||||
super(claimedTaskService);
|
||||
|
@@ -1,10 +0,0 @@
|
||||
/**
|
||||
* An enum listing all possible workflow task options
|
||||
* Used to render components for the options and building request bodies
|
||||
*/
|
||||
export enum WorkflowTaskOptions {
|
||||
Approve = 'submit_approve',
|
||||
Reject = 'submit_reject',
|
||||
EditMetadata = 'submit_edit_metadata',
|
||||
ReturnToPool = 'return_to_pool'
|
||||
}
|
Reference in New Issue
Block a user