OpenSlides/client/src/app/site/base/base-projectable-view-model.ts
FinnStutzenstein 9f12763f8b Split AgendaItem and ListOfSpeakers
Server:
- ListOfSpeakers (LOS) is now a speprate model, containing of an id,
speakers, closed and a content_object.
- Moved all speaker related views from ItemViewSet to the new
ListOfSpeakersViewSet.
- Make Mixins for content objects of items and lists of speakers.
- Migrations: Move the lists of speakers from items to the LOS model.

Client:
- Removed the speaker repo and moved functionality to the new
ListOfSpeakersRepositoryService.
- Splitted base classes for agenda item content objects to items and
LOS.
- CurrentAgendaItemService -> CurrentListOfSpeakersSerivce
- Cleaned up the list of speakers component.
2019-05-24 08:21:59 +02:00

20 lines
706 B
TypeScript

import { Projectable, ProjectorElementBuildDeskriptor } from './projectable';
import { BaseViewModel } from './base-view-model';
import { ConfigService } from 'app/core/ui-services/config.service';
import { BaseModel } from 'app/shared/models/base/base-model';
/**
* Base view class for projectable models.
*/
export abstract class BaseProjectableViewModel<M extends BaseModel = any> extends BaseViewModel<M>
implements Projectable {
public abstract getSlide(configService?: ConfigService): ProjectorElementBuildDeskriptor;
/**
* @returns the projector title used for managing projector elements.
*/
public getProjectorTitle = () => {
return this.getTitle();
};
}