OpenSlides/client/src/app/slides/slide-manifest.ts
FinnStutzenstein 965d23be50 more work on projector, countdowns, clos
- splitted clos-slide and clos-overlay.
- Synchronize to server, more little changes
2019-01-29 16:10:21 +01:00

33 lines
801 B
TypeScript

import { InjectionToken } from '@angular/core';
import { IdentifiableProjectorElement } from 'app/shared/models/core/projector';
/**
* Slides can have these options.
*/
export interface SlideOptions {
/**
* Should this slide be scrollable?
*/
scrollable: boolean;
/**
* Should this slide be scaleable?
*/
scaleable: boolean;
}
/**
* Is similar to router entries, so we can trick the router. Keep slideName and
* path in sync.
*/
export interface SlideManifest extends SlideOptions {
slide: string;
path: string;
loadChildren: string;
verboseName: string;
elementIdentifiers: (keyof IdentifiableProjectorElement)[];
canBeMappedToModel: boolean;
}
export const SLIDE_MANIFESTS = new InjectionToken<SlideManifest[]>('SLIDE_MANIFEST');