mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-15 05:53:03 +00:00
#150 Generalised AbstractListableElementComponent instead of grid/list specific implementations
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
import { Component, Inject } from '@angular/core';
|
||||
|
||||
import { Collection } from '../../../core/shared/collection.model';
|
||||
import { ObjectGridElementComponent } from '../object-grid-element/object-grid-element.component';
|
||||
import { renderElementsFor} from '../../object-collection/shared/dso-element-decorator';
|
||||
import { ViewMode } from '../../../+search-page/search-options.model';
|
||||
import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component';
|
||||
|
||||
|
||||
@Component({
|
||||
@@ -13,4 +13,4 @@ import { ViewMode } from '../../../+search-page/search-options.model';
|
||||
})
|
||||
|
||||
@renderElementsFor(Collection, ViewMode.Grid)
|
||||
export class CollectionGridElementComponent extends ObjectGridElementComponent<Collection> {}
|
||||
export class CollectionGridElementComponent extends AbstractListableElementComponent<Collection> {}
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { Component, Input, Inject } from '@angular/core';
|
||||
|
||||
import { Community } from '../../../core/shared/community.model';
|
||||
import { ObjectGridElementComponent } from '../object-grid-element/object-grid-element.component';
|
||||
import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component';
|
||||
import { renderElementsFor} from '../../object-collection/shared/dso-element-decorator';
|
||||
import { ViewMode } from '../../../+search-page/search-options.model';
|
||||
|
||||
@@ -12,4 +12,4 @@ import { ViewMode } from '../../../+search-page/search-options.model';
|
||||
})
|
||||
|
||||
@renderElementsFor(Community, ViewMode.Grid)
|
||||
export class CommunityGridElementComponent extends ObjectGridElementComponent<Community> {}
|
||||
export class CommunityGridElementComponent extends AbstractListableElementComponent<Community> {}
|
||||
|
@@ -2,7 +2,7 @@ import { Component, Input, Inject } from '@angular/core';
|
||||
|
||||
import { Item } from '../../../core/shared/item.model';
|
||||
import { renderElementsFor} from '../../object-collection/shared/dso-element-decorator';
|
||||
import { ObjectGridElementComponent } from '../object-grid-element/object-grid-element.component';
|
||||
import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component';
|
||||
import { ViewMode } from '../../../+search-page/search-options.model';
|
||||
|
||||
@Component({
|
||||
@@ -12,4 +12,4 @@ import { ViewMode } from '../../../+search-page/search-options.model';
|
||||
})
|
||||
|
||||
@renderElementsFor(Item, ViewMode.Grid)
|
||||
export class ItemGridElementComponent extends ObjectGridElementComponent<Item> {}
|
||||
export class ItemGridElementComponent extends AbstractListableElementComponent<Item> {}
|
||||
|
@@ -1,5 +0,0 @@
|
||||
@import '../../../../styles/variables';
|
||||
:host {
|
||||
display: block;
|
||||
margin-bottom: $spacer;
|
||||
}
|
@@ -1,14 +0,0 @@
|
||||
import { Component, Inject } from '@angular/core';
|
||||
import { ListableObject } from '../../object-collection/shared/listable-object.model';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-object-grid-element',
|
||||
styleUrls: ['./object-grid-element.component.scss'],
|
||||
templateUrl: './object-grid-element.component.html'
|
||||
})
|
||||
export class ObjectGridElementComponent <T extends ListableObject> {
|
||||
object: T;
|
||||
public constructor(@Inject('objectElementProvider') public gridable: ListableObject) {
|
||||
this.object = gridable as T;
|
||||
}
|
||||
}
|
@@ -4,7 +4,7 @@ import { SearchResult } from '../../../+search-page/search-result.model';
|
||||
import { DSpaceObject } from '../../../core/shared/dspace-object.model';
|
||||
import { Metadatum } from '../../../core/shared/metadatum.model';
|
||||
import { isEmpty, hasNoValue } from '../../empty.util';
|
||||
import { ObjectGridElementComponent } from '../object-grid-element/object-grid-element.component';
|
||||
import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component';
|
||||
import { ListableObject } from '../../object-collection/shared/listable-object.model';
|
||||
|
||||
@Component({
|
||||
@@ -12,7 +12,7 @@ import { ListableObject } from '../../object-collection/shared/listable-object.m
|
||||
template: ``
|
||||
})
|
||||
|
||||
export class SearchResultGridElementComponent<T extends SearchResult<K>, K extends DSpaceObject> extends ObjectGridElementComponent<T> {
|
||||
export class SearchResultGridElementComponent<T extends SearchResult<K>, K extends DSpaceObject> extends AbstractListableElementComponent<T> {
|
||||
dso: K;
|
||||
|
||||
public constructor(@Inject('objectElementProvider') public gridable: ListableObject) {
|
||||
|
Reference in New Issue
Block a user