aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--pages/present.tsx2
-rw-r--r--timeline.schema.json23
-rw-r--r--timeline.ts6
4 files changed, 29 insertions, 5 deletions
diff --git a/.gitignore b/.gitignore
index 1890faf..ced84a7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,6 +34,3 @@ yarn-error.log*
# vercel
.vercel
-# typescript-json-validator
-timeline.validator.ts
-
diff --git a/pages/present.tsx b/pages/present.tsx
index 1e37702..9e65e29 100644
--- a/pages/present.tsx
+++ b/pages/present.tsx
@@ -225,7 +225,7 @@ export default function Present() {
<div className='info sidebyside posabs h0 b0'>
<div className='timetitle floatb'>
<h3 className='time numbers nobr' id='time'>14:00:41</h3>
- <h1 className='title nobr'>PWS Presentatie</h1>
+ <h1 className='title nobr'>{player.timeline?.name || '???'}</h1>
</div>
<div className='buttons floatb'>
<div className='inner center'>
diff --git a/timeline.schema.json b/timeline.schema.json
index aa12da1..c92e722 100644
--- a/timeline.schema.json
+++ b/timeline.schema.json
@@ -75,6 +75,19 @@
],
"type": "object"
},
+ "presentationSettings": {
+ "additionalProperties": false,
+ "properties": {
+ "controlType": {
+ "const": "FullScreen",
+ "type": "string"
+ }
+ },
+ "required": [
+ "controlType"
+ ],
+ "type": "object"
+ },
"slide": {
"additionalProperties": false,
"properties": {
@@ -136,6 +149,12 @@
"framerate": {
"type": "number"
},
+ "name": {
+ "type": "string"
+ },
+ "settings": {
+ "$ref": "#/definitions/presentationSettings"
+ },
"slides": {
"items": {
"anyOf": [
@@ -159,7 +178,9 @@
"required": [
"slides",
"framecount",
- "framerate"
+ "framerate",
+ "name",
+ "settings"
],
"type": "object"
}
diff --git a/timeline.ts b/timeline.ts
index 8bb4d98..3a51ed3 100644
--- a/timeline.ts
+++ b/timeline.ts
@@ -19,8 +19,14 @@ export interface loopSlide extends slide {
playbackType: 'PingPong' | 'Normal';
}
+export interface presentationSettings {
+ controlType: 'FullScreen';
+}
+
export default interface timeline {
slides: Array<slide | delaySlide | speedChangeSlide | loopSlide>;
framecount: number;
framerate: number;
+ name: string;
+ settings: presentationSettings;
}