diff --git a/resources/i18n/en.json5 b/resources/i18n/en.json5
index 7b814fd5bc..f874a02bdf 100644
--- a/resources/i18n/en.json5
+++ b/resources/i18n/en.json5
@@ -262,6 +262,14 @@
+
+ "admin.workflow.breadcrumbs": "Admin Workflow",
+
+ "admin.workflow.title": "Admin Workflow",
+
+
+
+
"auth.errors.invalid-user": "Invalid email address or password.",
"auth.messages.expired": "Your session has expired. Please log in again.",
@@ -1385,6 +1393,8 @@
"menu.section.toggle.statistics_task": "Toggle Statistics Task section",
+ "menu.section.workflow": "Active Workflows",
+
"mydspace.description": "",
@@ -2213,5 +2223,9 @@
"virtual-metadata.delete-item.modal-head": "The virtual metadata of this relation",
"virtual-metadata.delete-relationship.modal-head": "Select the items for which you want to save the virtual metadata as real metadata",
+
+ "workflowAdmin.search.results.head": "Active Workflows",
+
+ "workflowAdmin.search.results.head": "Active Workflows",
}
diff --git a/src/app/+admin/admin-routing.module.ts b/src/app/+admin/admin-routing.module.ts
index c3732c1ba7..5cb10c38ba 100644
--- a/src/app/+admin/admin-routing.module.ts
+++ b/src/app/+admin/admin-routing.module.ts
@@ -28,13 +28,15 @@ export function getRegistriesModulePath() {
{
path: 'search',
resolve: { breadcrumb: I18nBreadcrumbResolver },
- component: AdminWorkflowPageComponent,
- data: { title: 'admin.workflow.title', breadcrumbKey: 'admin.workflow' }
+ component: AdminSearchPageComponent,
+ data: { title: 'admin.search.title', breadcrumbKey: 'admin.search' }
},
{
path: 'workflow',
- component: AdminSearchPageComponent,
- }
+ resolve: { breadcrumb: I18nBreadcrumbResolver },
+ component: AdminWorkflowPageComponent,
+ data: { title: 'admin.workflow.title', breadcrumbKey: 'admin.workflow' }
+ },
])
],
providers: [
diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.ts b/src/app/+admin/admin-sidebar/admin-sidebar.component.ts
index e86287f85d..e35a63342a 100644
--- a/src/app/+admin/admin-sidebar/admin-sidebar.component.ts
+++ b/src/app/+admin/admin-sidebar/admin-sidebar.component.ts
@@ -447,7 +447,7 @@ export class AdminSidebarComponent extends MenuComponent implements OnInit {
model: {
type: MenuItemType.LINK,
text: 'menu.section.workflow',
- link: '/admin/worklow'
+ link: '/admin/workflow'
} as LinkMenuItemModel,
icon: 'user-check',
index: 10
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-page.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-page.component.html
index 47906405d9..404af131d1 100644
--- a/src/app/+admin/admin-workflow-page/admin-workflow-page.component.html
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-page.component.html
@@ -1,3 +1 @@
-BLABLABALAB
-
-
+
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.html
deleted file mode 100644
index 1b8daaaff0..0000000000
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.html
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
- {{ "admin.search.item.private" | translate }}
-
-
- {{ "admin.search.item.withdrawn" | translate }}
-
-
-
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.html
new file mode 100644
index 0000000000..c73a5f5a02
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.html
@@ -0,0 +1,6 @@
+
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.scss b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.scss
similarity index 100%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.scss
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.scss
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.spec.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.spec.ts
new file mode 100644
index 0000000000..33881dfe70
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.spec.ts
@@ -0,0 +1,121 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { NO_ERRORS_SCHEMA } from '@angular/core';
+import { NoopAnimationsModule } from '@angular/platform-browser/animations';
+import { TranslateModule } from '@ngx-translate/core';
+import { Observable } from 'rxjs/internal/Observable';
+import { BitstreamDataService } from '../../../../../core/data/bitstream-data.service';
+import { RemoteData } from '../../../../../core/data/remote-data';
+import { Bitstream } from '../../../../../core/shared/bitstream.model';
+import { Item } from '../../../../../core/shared/item.model';
+import { mockTruncatableService } from '../../../../../shared/mocks/mock-trucatable.service';
+import { SharedModule } from '../../../../../shared/shared.module';
+import { createSuccessfulRemoteDataObject$ } from '../../../../../shared/testing/utils';
+import { TruncatableService } from '../../../../../shared/truncatable/truncatable.service';
+import { CollectionElementLinkType } from '../../../../../shared/object-collection/collection-element-link.type';
+import { ViewMode } from '../../../../../core/shared/view-mode.model';
+import { By } from '@angular/platform-browser';
+import { RouterTestingModule } from '@angular/router/testing';
+import { ItemSearchResult } from '../../../../../shared/object-collection/shared/item-search-result.model';
+import { PoolTaskAdminWorkflowSearchResultGridElementComponent } from './pool-task-admin-workflow-search-result-grid-element.component';
+
+describe('ItemAdminSearchResultGridElementComponent', () => {
+ let component: PoolTaskAdminWorkflowSearchResultGridElementComponent;
+ let fixture: ComponentFixture;
+ let id;
+ let searchResult;
+
+ const mockBitstreamDataService = {
+ getThumbnailFor(item: Item): Observable> {
+ return createSuccessfulRemoteDataObject$(new Bitstream());
+ }
+ };
+
+ function init() {
+ id = '780b2588-bda5-4112-a1cd-0b15000a5339';
+ searchResult = new ItemSearchResult();
+ searchResult.indexableObject = new Item();
+ searchResult.indexableObject.uuid = id;
+ }
+
+ beforeEach(async(() => {
+ init();
+ TestBed.configureTestingModule(
+ {
+ declarations: [PoolTaskAdminWorkflowSearchResultGridElementComponent],
+ imports: [
+ NoopAnimationsModule,
+ TranslateModule.forRoot(),
+ RouterTestingModule.withRoutes([]),
+ SharedModule
+ ],
+ providers: [
+ { provide: TruncatableService, useValue: mockTruncatableService },
+ { provide: BitstreamDataService, useValue: mockBitstreamDataService },
+ ],
+ schemas: [NO_ERRORS_SCHEMA]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(PoolTaskAdminWorkflowSearchResultGridElementComponent);
+ component = fixture.componentInstance;
+ component.object = searchResult;
+ component.linkTypes = CollectionElementLinkType;
+ component.index = 0;
+ component.viewModes = ViewMode;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+
+ describe('when the item is not withdrawn', () => {
+ beforeEach(() => {
+ component.dso.isWithdrawn = false;
+ fixture.detectChanges();
+ });
+
+ it('should not show the withdrawn badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.withdrawn-badge'));
+ expect(badge).toBeNull();
+ });
+ });
+
+ describe('when the item is withdrawn', () => {
+ beforeEach(() => {
+ component.dso.isWithdrawn = true;
+ fixture.detectChanges();
+ });
+
+ it('should show the withdrawn badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.withdrawn-badge'));
+ expect(badge).not.toBeNull();
+ });
+ });
+
+ describe('when the item is not private', () => {
+ beforeEach(() => {
+ component.dso.isDiscoverable = true;
+ fixture.detectChanges();
+ });
+ it('should not show the private badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.private-badge'));
+ expect(badge).toBeNull();
+ });
+ });
+
+ describe('when the item is private', () => {
+ beforeEach(() => {
+ component.dso.isDiscoverable = false;
+ fixture.detectChanges();
+ });
+
+ it('should show the private badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.private-badge'));
+ expect(badge).not.toBeNull();
+ });
+ })
+});
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.ts
new file mode 100644
index 0000000000..e386ec45ae
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component.ts
@@ -0,0 +1,45 @@
+import { Component, ComponentFactoryResolver, ElementRef, OnInit, ViewChild, ViewContainerRef } from '@angular/core';
+import { Item } from '../../../../../core/shared/item.model';
+import { ViewMode } from '../../../../../core/shared/view-mode.model';
+import { getListableObjectComponent, listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
+import { Context } from '../../../../../core/shared/context.model';
+import { ItemSearchResult } from '../../../../../shared/object-collection/shared/item-search-result.model';
+import { getItemEditPath } from '../../../../../+item-page/item-page-routing.module';
+import { URLCombiner } from '../../../../../core/url-combiner/url-combiner';
+import {
+ ITEM_EDIT_DELETE_PATH,
+ ITEM_EDIT_MOVE_PATH,
+ ITEM_EDIT_PRIVATE_PATH,
+ ITEM_EDIT_PUBLIC_PATH,
+ ITEM_EDIT_REINSTATE_PATH,
+ ITEM_EDIT_WITHDRAW_PATH
+} from '../../../../../+item-page/edit-item-page/edit-item-page.routing.module';
+import { SearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/search-result-grid-element.component';
+import { TruncatableService } from '../../../../../shared/truncatable/truncatable.service';
+import { BitstreamDataService } from '../../../../../core/data/bitstream-data.service';
+import { GenericConstructor } from '../../../../../core/shared/generic-constructor';
+import { ListableObjectDirective } from '../../../../../shared/object-collection/shared/listable-object/listable-object.directive';
+import { PoolTaskSearchResult } from '../../../../../shared/object-collection/shared/pool-task-search-result.model';
+import { PoolTask } from '../../../../../core/tasks/models/pool-task-object.model';
+import { Observable } from 'rxjs';
+import { WorkflowItem } from '../../../../../core/submission/models/workflowitem.model';
+import { RemoteData } from '../../../../../core/data/remote-data';
+import { getAllSucceededRemoteData, getRemoteDataPayload } from '../../../../../core/shared/operators';
+
+@listableObjectComponent(PoolTaskSearchResult, ViewMode.GridElement, Context.AdminWorkflowSearch)
+@Component({
+ selector: 'ds-pool-task-admin-workflow-search-result-grid-element',
+ styleUrls: ['./pool-task-admin-workflow-search-result-grid-element.component.scss'],
+ templateUrl: './pool-task-admin-workflow-search-result-grid-element.component.html'
+})
+/**
+ * The component for displaying a list element for an pool task search result on the admin search page
+ */
+export class PoolTaskAdminWorkflowSearchResultGridElementComponent extends SearchResultGridElementComponent implements OnInit {
+ public wfi$: Observable;
+
+ ngOnInit(): void {
+ super.ngOnInit();
+ this.wfi$ = (this.dso.workflowitem as Observable>).pipe(getAllSucceededRemoteData(), getRemoteDataPayload());
+ }
+}
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.html
new file mode 100644
index 0000000000..6f940d097e
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.html
@@ -0,0 +1,12 @@
+
+
+
+
+ {{ "admin.workflow.item.workflow" | translate }}
+
+
+
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.scss b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.scss
similarity index 100%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.scss
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.scss
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.spec.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.spec.ts
similarity index 90%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.spec.ts
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.spec.ts
index 7036e5c5ac..61bcdde6cf 100644
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.spec.ts
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.spec.ts
@@ -17,11 +17,11 @@ import { ViewMode } from '../../../../../core/shared/view-mode.model';
import { By } from '@angular/platform-browser';
import { RouterTestingModule } from '@angular/router/testing';
import { ItemSearchResult } from '../../../../../shared/object-collection/shared/item-search-result.model';
-import { ItemAdminWorkflowSearchResultGridElementComponent } from './item-admin-workflow-search-result-grid-element.component';
+import { WorkflowItemAdminWorkflowGridElementComponent } from './workflow-item-admin-workflow-grid-element.component';
describe('ItemAdminSearchResultGridElementComponent', () => {
- let component: ItemAdminWorkflowSearchResultGridElementComponent;
- let fixture: ComponentFixture;
+ let component: WorkflowItemAdminWorkflowGridElementComponent;
+ let fixture: ComponentFixture;
let id;
let searchResult;
@@ -42,7 +42,7 @@ describe('ItemAdminSearchResultGridElementComponent', () => {
init();
TestBed.configureTestingModule(
{
- declarations: [ItemAdminWorkflowSearchResultGridElementComponent],
+ declarations: [WorkflowItemAdminWorkflowGridElementComponent],
imports: [
NoopAnimationsModule,
TranslateModule.forRoot(),
@@ -59,7 +59,7 @@ describe('ItemAdminSearchResultGridElementComponent', () => {
}));
beforeEach(() => {
- fixture = TestBed.createComponent(ItemAdminWorkflowSearchResultGridElementComponent);
+ fixture = TestBed.createComponent(WorkflowItemAdminWorkflowGridElementComponent);
component = fixture.componentInstance;
component.object = searchResult;
component.linkTypes = CollectionElementLinkType;
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.ts
similarity index 76%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.ts
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.ts
index 9b3ed12a24..f00dc4fdb4 100644
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component.ts
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component.ts
@@ -19,33 +19,32 @@ import { TruncatableService } from '../../../../../shared/truncatable/truncatabl
import { BitstreamDataService } from '../../../../../core/data/bitstream-data.service';
import { GenericConstructor } from '../../../../../core/shared/generic-constructor';
import { ListableObjectDirective } from '../../../../../shared/object-collection/shared/listable-object/listable-object.directive';
+import { WorkflowItemSearchResult } from '../../../../../shared/object-collection/shared/workflow-item-search-result.model';
+import { WorkflowItem } from '../../../../../core/submission/models/workflowitem.model';
+import { AbstractListableElementComponent } from '../../../../../shared/object-collection/shared/object-collection-element/abstract-listable-element.component';
@listableObjectComponent(ItemSearchResult, ViewMode.GridElement, Context.AdminWorkflowSearch)
@Component({
- selector: 'ds-item-admin-workflow-search-result-grid-element',
- styleUrls: ['./item-admin-workflow-search-result-grid-element.component.scss'],
- templateUrl: './item-admin-workflow-search-result-grid-element.component.html'
+ selector: 'ds-workflow-item-admin-workflow-grid-element',
+ styleUrls: ['./workflow-item-admin-workflow-grid-element.component.scss'],
+ templateUrl: './workflow-item-admin-workflow-grid-element.component.html'
})
/**
- * The component for displaying a list element for an item search result on the admin search page
+ * The component for displaying a list element for an workflow item on the admin search page
*/
-export class ItemAdminWorkflowSearchResultGridElementComponent extends SearchResultGridElementComponent implements OnInit {
+export class WorkflowItemAdminWorkflowGridElementComponent extends AbstractListableElementComponent {
@ViewChild(ListableObjectDirective, { static: true }) listableObjectDirective: ListableObjectDirective;
@ViewChild('badges', { static: true }) badges: ElementRef;
@ViewChild('buttons', { static: true }) buttons: ElementRef;
- constructor(protected truncatableService: TruncatableService,
- protected bitstreamDataService: BitstreamDataService,
- private componentFactoryResolver: ComponentFactoryResolver
- ) {
- super(truncatableService, bitstreamDataService);
+ constructor(private componentFactoryResolver: ComponentFactoryResolver) {
+ super();
}
/**
* Setup the dynamic child component
*/
ngOnInit(): void {
- super.ngOnInit();
const componentFactory = this.componentFactoryResolver.resolveComponentFactory(this.getComponent());
const viewContainerRef = this.listableObjectDirective.viewContainerRef;
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.html
deleted file mode 100644
index 14e6c1bcd1..0000000000
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.html
+++ /dev/null
@@ -1,12 +0,0 @@
-
- {{ "admin.search.item.private" | translate }}
-
-
- {{ "admin.search.item.withdrawn" | translate }}
-
-
-
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.ts
deleted file mode 100644
index 9550028919..0000000000
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-import { Component } from '@angular/core';
-import { Item } from '../../../../../core/shared/item.model';
-import { ViewMode } from '../../../../../core/shared/view-mode.model';
-import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
-import { Context } from '../../../../../core/shared/context.model';
-import { ItemSearchResult } from '../../../../../shared/object-collection/shared/item-search-result.model';
-import { SearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/search-result-list-element.component';
-
-@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.AdminWorkflowSearch)
-@Component({
- selector: 'ds-item-admin-workflow-search-result-list-element',
- styleUrls: ['./item-admin-workflow-search-result-list-element.component.scss'],
- templateUrl: './item-admin-workflow-search-result-list-element.component.html'
-})
-/**
- * The component for displaying a list element for an item search result on the admin search page
- */
-export class ItemAdminWorkflowSearchResultListElementComponent extends SearchResultListElementComponent {
-
-}
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.html
new file mode 100644
index 0000000000..e894eedb94
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.html
@@ -0,0 +1,6 @@
+
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.scss b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.scss
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.spec.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.spec.ts
new file mode 100644
index 0000000000..63f36ea033
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.spec.ts
@@ -0,0 +1,101 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { NO_ERRORS_SCHEMA } from '@angular/core';
+import { TranslateModule } from '@ngx-translate/core';
+import { TruncatableService } from '../../../../../shared/truncatable/truncatable.service';
+import { CollectionElementLinkType } from '../../../../../shared/object-collection/collection-element-link.type';
+import { ViewMode } from '../../../../../core/shared/view-mode.model';
+import { By } from '@angular/platform-browser';
+import { RouterTestingModule } from '@angular/router/testing';
+import { ItemSearchResult } from '../../../../../shared/object-collection/shared/item-search-result.model';
+import { PoolTaskAdminWorkflowSearchResultListElementComponent } from './pool-task-admin-workflow-search-result-list-element.component';
+import { Item } from '../../../../../core/shared/item.model';
+
+describe('ItemAdminSearchResultListElementComponent', () => {
+ let component: PoolTaskAdminWorkflowSearchResultListElementComponent;
+ let fixture: ComponentFixture;
+ let id;
+ let searchResult;
+
+ function init() {
+ id = '780b2588-bda5-4112-a1cd-0b15000a5339';
+ searchResult = new ItemSearchResult();
+ searchResult.indexableObject = new Item();
+ searchResult.indexableObject.uuid = id;
+ }
+
+ beforeEach(async(() => {
+ init();
+ TestBed.configureTestingModule({
+ imports: [
+ TranslateModule.forRoot(),
+ RouterTestingModule.withRoutes([])
+ ],
+ declarations: [PoolTaskAdminWorkflowSearchResultListElementComponent],
+ providers: [{ provide: TruncatableService, useValue: {} }],
+ schemas: [NO_ERRORS_SCHEMA]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(PoolTaskAdminWorkflowSearchResultListElementComponent);
+ component = fixture.componentInstance;
+ component.object = searchResult;
+ component.linkTypes = CollectionElementLinkType;
+ component.index = 0;
+ component.viewModes = ViewMode;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+
+ describe('when the item is not withdrawn', () => {
+ beforeEach(() => {
+ component.dso.isWithdrawn = false;
+ fixture.detectChanges();
+ });
+
+ it('should not show the withdrawn badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.withdrawn-badge'));
+ expect(badge).toBeNull();
+ });
+ });
+
+ describe('when the item is withdrawn', () => {
+ beforeEach(() => {
+ component.dso.isWithdrawn = true;
+ fixture.detectChanges();
+ });
+
+ it('should show the withdrawn badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.withdrawn-badge'));
+ expect(badge).not.toBeNull();
+ });
+ });
+
+ describe('when the item is not private', () => {
+ beforeEach(() => {
+ component.dso.isDiscoverable = true;
+ fixture.detectChanges();
+ });
+ it('should not show the private badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.private-badge'));
+ expect(badge).toBeNull();
+ });
+ });
+
+ describe('when the item is private', () => {
+ beforeEach(() => {
+ component.dso.isDiscoverable = false;
+ fixture.detectChanges();
+ });
+
+ it('should show the private badge', () => {
+ const badge = fixture.debugElement.query(By.css('div.private-badge'));
+ expect(badge).not.toBeNull();
+ });
+ })
+});
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.ts
new file mode 100644
index 0000000000..8a6934e755
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component.ts
@@ -0,0 +1,29 @@
+import { Component } from '@angular/core';
+import { ViewMode } from '../../../../../core/shared/view-mode.model';
+import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
+import { Context } from '../../../../../core/shared/context.model';
+import { SearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/search-result-list-element.component';
+import { PoolTaskSearchResult } from '../../../../../shared/object-collection/shared/pool-task-search-result.model';
+import { PoolTask } from '../../../../../core/tasks/models/pool-task-object.model';
+import { Observable, pipe } from 'rxjs';
+import { RemoteData } from '../../../../../core/data/remote-data';
+import { WorkflowItem } from '../../../../../core/submission/models/workflowitem.model';
+import { getAllSucceededRemoteData, getRemoteDataPayload } from '../../../../../core/shared/operators';
+
+@listableObjectComponent(PoolTaskSearchResult, ViewMode.ListElement, Context.AdminWorkflowSearch)
+@Component({
+ selector: 'ds-pooltask-admin-workflow-search-result-list-element',
+ styleUrls: ['./pool-task-admin-workflow-search-result-list-element.component.scss'],
+ templateUrl: './pool-task-admin-workflow-search-result-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an pool task search result on the admin search page
+ */
+export class PoolTaskAdminWorkflowSearchResultListElementComponent extends SearchResultListElementComponent {
+ public wfi$: Observable;
+
+ ngOnInit(): void {
+ super.ngOnInit();
+ this.wfi$ = (this.dso.workflowitem as Observable>).pipe(getAllSucceededRemoteData(), getRemoteDataPayload());
+ }
+}
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.html
new file mode 100644
index 0000000000..736aba2fce
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.html
@@ -0,0 +1,9 @@
+
+ {{ "admin.workflow.item.workflow" | translate }}
+
+
+
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.scss b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.scss
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.spec.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.spec.ts
similarity index 87%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.spec.ts
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.spec.ts
index 595a36a5b3..e406e4c28c 100644
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component.spec.ts
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.spec.ts
@@ -8,12 +8,12 @@ import { ViewMode } from '../../../../../core/shared/view-mode.model';
import { By } from '@angular/platform-browser';
import { RouterTestingModule } from '@angular/router/testing';
import { ItemSearchResult } from '../../../../../shared/object-collection/shared/item-search-result.model';
-import { ItemAdminWorkflowSearchResultListElementComponent } from './item-admin-workflow-search-result-list-element.component';
+import { WorkflowItemAdminWorkflowListElementComponent } from './workflow-item-admin-workflow-list-element.component';
import { Item } from '../../../../../core/shared/item.model';
describe('ItemAdminSearchResultListElementComponent', () => {
- let component: ItemAdminWorkflowSearchResultListElementComponent;
- let fixture: ComponentFixture;
+ let component: WorkflowItemAdminWorkflowListElementComponent;
+ let fixture: ComponentFixture;
let id;
let searchResult;
@@ -31,7 +31,7 @@ describe('ItemAdminSearchResultListElementComponent', () => {
TranslateModule.forRoot(),
RouterTestingModule.withRoutes([])
],
- declarations: [ItemAdminWorkflowSearchResultListElementComponent],
+ declarations: [WorkflowItemAdminWorkflowListElementComponent],
providers: [{ provide: TruncatableService, useValue: {} }],
schemas: [NO_ERRORS_SCHEMA]
})
@@ -39,7 +39,7 @@ describe('ItemAdminSearchResultListElementComponent', () => {
}));
beforeEach(() => {
- fixture = TestBed.createComponent(ItemAdminWorkflowSearchResultListElementComponent);
+ fixture = TestBed.createComponent(WorkflowItemAdminWorkflowListElementComponent);
component = fixture.componentInstance;
component.object = searchResult;
component.linkTypes = CollectionElementLinkType;
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.ts
new file mode 100644
index 0000000000..76698507aa
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component.ts
@@ -0,0 +1,19 @@
+import { Component } from '@angular/core';
+import { ViewMode } from '../../../../../core/shared/view-mode.model';
+import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
+import { Context } from '../../../../../core/shared/context.model';
+import { WorkflowItem } from '../../../../../core/submission/models/workflowitem.model';
+import { AbstractListableElementComponent } from '../../../../../shared/object-collection/shared/object-collection-element/abstract-listable-element.component';
+
+@listableObjectComponent(WorkflowItem, ViewMode.ListElement, Context.AdminWorkflowSearch)
+@Component({
+ selector: 'ds-workflow-item-admin-workflow-list-element',
+ styleUrls: ['./workflow-item-admin-workflow-list-element.component.scss'],
+ templateUrl: './workflow-item-admin-workflow-list-element.component.html'
+})
+/**
+ * The component for displaying a list element for an workflow item on the admin search page
+ */
+export class WorkflowItemAdminWorkflowListElementComponent extends AbstractListableElementComponent {
+
+}
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.ts
deleted file mode 100644
index 3dc7b96391..0000000000
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.ts
+++ /dev/null
@@ -1,46 +0,0 @@
-import { Component, Input } from '@angular/core';
-import { Item } from '../../../core/shared/item.model';
-import { getItemEditPath } from '../../../+item-page/item-page-routing.module';
-import { URLCombiner } from '../../../core/url-combiner/url-combiner';
-import {
- ITEM_EDIT_DELETE_PATH,
- ITEM_EDIT_MOVE_PATH,
- ITEM_EDIT_PRIVATE_PATH,
- ITEM_EDIT_PUBLIC_PATH,
- ITEM_EDIT_REINSTATE_PATH,
- ITEM_EDIT_WITHDRAW_PATH
-} from '../../../+item-page/edit-item-page/edit-item-page.routing.module';
-
-@Component({
- selector: 'ds-item-admin-workflow-search-result-actions-element',
- styleUrls: ['./item-admin-workflow-search-result-actions.component.scss'],
- templateUrl: './item-admin-workflow-search-result-actions.component.html'
-})
-/**
- * The component for displaying the actions for a list element for an item search result on the admin search page
- */
-export class ItemAdminWorkflowSearchResultActionsComponent {
- /**
- * The item to perform the actions on
- */
- @Input() public item: Item;
-
- /**
- * Whether or not to use small buttons
- */
- @Input() public small: boolean;
-
- /**
- * Returns the path to the edit page of this item
- */
- getEditPath(): string {
- return getItemEditPath(this.item.uuid)
- }
-
- /**
- * Returns the path to the withdraw page of this item
- */
- getWithdrawPath(): string {
- return new URLCombiner(this.getEditPath(), ITEM_EDIT_WITHDRAW_PATH).toString();
- }
-}
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.html b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.html
similarity index 100%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.html
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.html
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.scss b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.scss
similarity index 100%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.scss
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.scss
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.spec.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.spec.ts
similarity index 98%
rename from src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.spec.ts
rename to src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.spec.ts
index c1d42341bc..2ee8ae2e9d 100644
--- a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component.spec.ts
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.spec.ts
@@ -4,7 +4,7 @@ import { NO_ERRORS_SCHEMA } from '@angular/core';
import { TranslateModule } from '@ngx-translate/core';
import { By } from '@angular/platform-browser';
import { RouterTestingModule } from '@angular/router/testing';
-import { ItemAdminWorkflowSearchResultActionsComponent } from './item-admin-workflow-search-result-actions.component';
+import { ItemAdminWorkflowSearchResultActionsComponent } from './workflow-item-admin-workflow-actions.component';
import { Item } from '../../../core/shared/item.model';
import {
ITEM_EDIT_DELETE_PATH,
diff --git a/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.ts b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.ts
new file mode 100644
index 0000000000..a19f154f13
--- /dev/null
+++ b/src/app/+admin/admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component.ts
@@ -0,0 +1,39 @@
+import { Component, Input } from '@angular/core';
+import { getItemEditPath } from '../../../+item-page/item-page-routing.module';
+import { URLCombiner } from '../../../core/url-combiner/url-combiner';
+import { ITEM_EDIT_WITHDRAW_PATH } from '../../../+item-page/edit-item-page/edit-item-page.routing.module';
+import { WorkflowItem } from '../../../core/submission/models/workflowitem.model';
+
+@Component({
+ selector: 'ds-workflow-item-admin-workflow-actions-element',
+ styleUrls: ['./workflow-item-admin-workflow-actions.component.scss'],
+ templateUrl: './workflow-item-admin-workflow-actions.component.html'
+})
+/**
+ * The component for displaying the actions for a list element for an item on the admin workflow page
+ */
+export class WorkflowItemAdminWorkflowActionsComponent {
+ /**
+ * The item to perform the actions on
+ */
+ @Input() public wfi: WorkflowItem;
+
+ /**
+ * Whether or not to use small buttons
+ */
+ @Input() public small: boolean;
+
+ /**
+ * Returns the path to the delete page of this workflow item
+ */
+ getDeletePath(): string {
+ return getDeletePath(this.wfi.id)
+ }
+
+ /**
+ * Returns the path to the send back page of this workflow item
+ */
+ getSendBackPath(): string {
+ return getSendPath(this.wfi.id);
+ }
+}
diff --git a/src/app/+admin/admin.module.ts b/src/app/+admin/admin.module.ts
index d29d876d02..b829c8d868 100644
--- a/src/app/+admin/admin.module.ts
+++ b/src/app/+admin/admin.module.ts
@@ -12,10 +12,12 @@ import { ItemAdminSearchResultGridElementComponent } from './admin-search-page/a
import { CommunityAdminSearchResultGridElementComponent } from './admin-search-page/admin-search-results/admin-search-result-grid-element/community-search-result/community-admin-search-result-grid-element.component';
import { CollectionAdminSearchResultGridElementComponent } from './admin-search-page/admin-search-results/admin-search-result-grid-element/collection-search-result/collection-admin-search-result-grid-element.component';
import { ItemAdminSearchResultActionsComponent } from './admin-search-page/admin-search-results/item-admin-search-result-actions.component';
-import { ItemAdminWorkflowSearchResultGridElementComponent } from './admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/item-search-result/item-admin-workflow-search-result-grid-element.component';
-import { ItemAdminWorkflowSearchResultActionsComponent } from './admin-workflow-page/admin-workflow-search-results/item-admin-workflow-search-result-actions.component';
-import { ItemAdminWorkflowSearchResultListElementComponent } from './admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/item-search-result/item-admin-workflow-search-result-list-element.component';
+import { WorkflowItemAdminWorkflowGridElementComponent } from './admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/workflow-item/workflow-item-admin-workflow-grid-element.component';
+import { WorkflowItemAdminWorkflowActionsComponent } from './admin-workflow-page/admin-workflow-search-results/workflow-item-admin-workflow-actions.component';
+import { WorkflowItemAdminWorkflowListElementComponent } from './admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/workflow-item/workflow-item-admin-workflow-list-element.component';
import { AdminWorkflowPageComponent } from './admin-workflow-page/admin-workflow-page.component';
+import { PoolTaskAdminWorkflowSearchResultListElementComponent } from './admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-list-element/pool-task-item-search-result/pool-task-admin-workflow-search-result-list-element.component';
+import { PoolTaskAdminWorkflowSearchResultGridElementComponent } from './admin-workflow-page/admin-workflow-search-results/admin-workflow-search-result-grid-element/pool-task-search-result/pool-task-admin-workflow-search-result-grid-element.component';
@NgModule({
imports: [
@@ -36,9 +38,12 @@ import { AdminWorkflowPageComponent } from './admin-workflow-page/admin-workflow
CollectionAdminSearchResultGridElementComponent,
ItemAdminSearchResultActionsComponent,
- ItemAdminWorkflowSearchResultListElementComponent,
- ItemAdminWorkflowSearchResultGridElementComponent,
- ItemAdminWorkflowSearchResultActionsComponent,
+ WorkflowItemAdminWorkflowListElementComponent,
+ WorkflowItemAdminWorkflowGridElementComponent,
+ WorkflowItemAdminWorkflowActionsComponent,
+
+ PoolTaskAdminWorkflowSearchResultListElementComponent,
+ PoolTaskAdminWorkflowSearchResultGridElementComponent,
],
entryComponents: [
ItemAdminSearchResultListElementComponent,
@@ -49,9 +54,12 @@ import { AdminWorkflowPageComponent } from './admin-workflow-page/admin-workflow
CollectionAdminSearchResultGridElementComponent,
ItemAdminSearchResultActionsComponent,
- ItemAdminWorkflowSearchResultListElementComponent,
- ItemAdminWorkflowSearchResultGridElementComponent,
- ItemAdminWorkflowSearchResultActionsComponent,
+ WorkflowItemAdminWorkflowListElementComponent,
+ WorkflowItemAdminWorkflowGridElementComponent,
+ WorkflowItemAdminWorkflowActionsComponent,
+
+ PoolTaskAdminWorkflowSearchResultListElementComponent,
+ PoolTaskAdminWorkflowSearchResultGridElementComponent,
]
})
export class AdminModule {
diff --git a/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.html b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.html
new file mode 100644
index 0000000000..f8d7e427b0
--- /dev/null
+++ b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.html
@@ -0,0 +1 @@
+
diff --git a/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.scss b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.scss
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.spec.ts b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.spec.ts
new file mode 100644
index 0000000000..b42fe965c1
--- /dev/null
+++ b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { WorkflowItemDeleteComponent } from './workflow-item-delete.component';
+
+describe('WorkflowItemDeleteComponent', () => {
+ let component: WorkflowItemDeleteComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ WorkflowItemDeleteComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(WorkflowItemDeleteComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.ts b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.ts
new file mode 100644
index 0000000000..2b3bb3e934
--- /dev/null
+++ b/src/app/+workflowitems-edit-page/workflow-item-delete/workflow-item-delete.component.ts
@@ -0,0 +1,16 @@
+import { Component, OnInit } from '@angular/core';
+import { WorkflowItem } from '../../core/submission/models/workflowitem.model';
+
+@Component({
+ selector: 'ds-workflow-item-delete',
+ templateUrl: './workflow-item-delete.component.html',
+ styleUrls: ['./workflow-item-delete.component.scss']
+})
+export class WorkflowItemDeleteComponent implements OnInit {
+ wfi: WorkflowItem;
+ constructor() { }
+
+ ngOnInit() {
+ }
+
+}
diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.ts b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.ts
index 7a89f18c7d..8e301390ae 100644
--- a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.ts
+++ b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.ts
@@ -3,6 +3,7 @@ import { NgModule } from '@angular/core';
import { SharedModule } from '../shared/shared.module';
import { WorkflowItemsEditPageRoutingModule } from './workflowitems-edit-page-routing.module';
import { SubmissionModule } from '../submission/submission.module';
+import { WorkflowItemDeleteComponent } from './workflow-item-delete/workflow-item-delete.component';
@NgModule({
imports: [
@@ -11,7 +12,7 @@ import { SubmissionModule } from '../submission/submission.module';
SharedModule,
SubmissionModule,
],
- declarations: []
+ declarations: [WorkflowItemDeleteComponent]
})
/**
* This module handles all modules that need to access the workflowitems edit page.