@pop-party/create-game 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +30 -0
  3. package/bin/create-game.js +28 -0
  4. package/package.json +34 -0
  5. package/src/cli-arguments.js +47 -0
  6. package/src/generate-game.js +150 -0
  7. package/starter/ASSET-NOTICES.json +73 -0
  8. package/starter/content/art/manifest.json +13573 -0
  9. package/starter/content/audio/host-audios.json +3 -0
  10. package/starter/content/blobs/1c14e1db26cfb96105b2cbf60591a18329834078cc65e14373715d4ec06f07ef.svg +5 -0
  11. package/starter/content/blobs/2d1298fc8597b4b13dc74c8a4093ce7c8d6027ef955c4af31ed6a6d03034d527.svg +3 -0
  12. package/starter/content/blobs/4d1b3ad12d64d7f145e282dc44b2c510d8cc36c0a609fcef831fe9c59270bf35.svg +8 -0
  13. package/starter/content/blobs/7a3a06ea1280a916254e2af034762e798b11e45f5eb7a1f4e0ba1a3ad4b8af48.svg +3 -0
  14. package/starter/content/blobs/8785460bf8b2311bfd2a5c06e97f9faac0deafd584b8f3de428c38399e2df16d.svg +6 -0
  15. package/starter/content/blobs/8dbc40965debd1f9f516461ed2b6ca0dd95557f8a762dbeaf67459e4b343497a.svg +8 -0
  16. package/starter/content/blobs/a531c3ee6f5bfa5b478b6ecda5799f1031ceea367ca9d93585545b3de0ed34d7.svg +7 -0
  17. package/starter/content/blobs/d54e3eae53b88a705370aa028c3ea55297d549e3521aca6a41435f87e4a18167.svg +6 -0
  18. package/starter/content/constants.json +22 -0
  19. package/starter/content/content-bundle.json +96 -0
  20. package/starter/content/flow.json +1594 -0
  21. package/starter/content/game-data/runtime.json +39 -0
  22. package/starter/content/layouts/controller.json +737 -0
  23. package/starter/content/layouts/stage.json +195 -0
  24. package/starter/content/prompts/prompts.json +125 -0
  25. package/starter/content/semantic-roles.json +86 -0
@@ -0,0 +1,737 @@
1
+ {
2
+ "canvas": {
3
+ "width": 390,
4
+ "height": 844
5
+ },
6
+ "global": {
7
+ "id": "global",
8
+ "name": "Global Layout",
9
+ "hiddenInStates": false,
10
+ "hiddenGlobals": [],
11
+ "elements": [
12
+ {
13
+ "id": "controllerplayerbanner",
14
+ "name": "Player Banner",
15
+ "selector": "#controllerPlayerBanner",
16
+ "kind": "art",
17
+ "artCompositionId": "controller-player-banner",
18
+ "layoutLayer": "content",
19
+ "hidden": false,
20
+ "locked": false,
21
+ "x": 195,
22
+ "y": 58,
23
+ "width": 338,
24
+ "height": 78,
25
+ "scale": 1,
26
+ "rotation": 0,
27
+ "tags": [],
28
+ "defaultAnimationState": "On",
29
+ "defaultText": "",
30
+ "fontSize": 58,
31
+ "autoFitText": false,
32
+ "fontFamily": "",
33
+ "fontColor": "#ffffff",
34
+ "playerBannerWidgetVersion": 1
35
+ }
36
+ ]
37
+ },
38
+ "states": [
39
+ {
40
+ "id": "join",
41
+ "name": "Join Controller",
42
+ "hiddenInStates": false,
43
+ "hiddenGlobals": [
44
+ "controllerplayerbanner"
45
+ ],
46
+ "elements": [
47
+ {
48
+ "id": "jointitle",
49
+ "name": "Join Title",
50
+ "selector": "",
51
+ "kind": "art",
52
+ "artCompositionId": "layout-text-field",
53
+ "layoutLayer": "content",
54
+ "hidden": false,
55
+ "locked": false,
56
+ "x": 195,
57
+ "y": 112,
58
+ "width": 330,
59
+ "height": 86,
60
+ "scale": 1,
61
+ "rotation": 0,
62
+ "tags": [],
63
+ "defaultAnimationState": "On",
64
+ "defaultText": "Join Lobby",
65
+ "fontSize": 54,
66
+ "autoFitText": true,
67
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
68
+ "fontColor": "#17131f"
69
+ },
70
+ {
71
+ "id": "stagecodefield",
72
+ "name": "Stage Code Field",
73
+ "selector": "#stageCodeField",
74
+ "kind": "art",
75
+ "artCompositionId": "controller-stage-code-field",
76
+ "layoutLayer": "content",
77
+ "hidden": false,
78
+ "locked": false,
79
+ "x": 195,
80
+ "y": 255,
81
+ "width": 320,
82
+ "height": 96,
83
+ "scale": 1,
84
+ "rotation": 0,
85
+ "tags": [],
86
+ "defaultAnimationState": "On",
87
+ "defaultText": "",
88
+ "fontSize": 58,
89
+ "autoFitText": false,
90
+ "fontFamily": "",
91
+ "fontColor": "#ffffff"
92
+ },
93
+ {
94
+ "id": "playernamefield",
95
+ "name": "Player Name Field",
96
+ "selector": "#playerNameField",
97
+ "kind": "art",
98
+ "artCompositionId": "controller-player-name-field",
99
+ "layoutLayer": "content",
100
+ "hidden": false,
101
+ "locked": false,
102
+ "x": 195,
103
+ "y": 375,
104
+ "width": 320,
105
+ "height": 96,
106
+ "scale": 1,
107
+ "rotation": 0,
108
+ "tags": [],
109
+ "defaultAnimationState": "On",
110
+ "defaultText": "",
111
+ "fontSize": 58,
112
+ "autoFitText": false,
113
+ "fontFamily": "",
114
+ "fontColor": "#ffffff"
115
+ },
116
+ {
117
+ "id": "controllerjoinbuttoncontainer",
118
+ "name": "Join Button Container",
119
+ "selector": "#controllerJoinButtonContainer",
120
+ "kind": "art",
121
+ "artCompositionId": "",
122
+ "layoutLayer": "content",
123
+ "hidden": false,
124
+ "locked": false,
125
+ "x": 195,
126
+ "y": 505,
127
+ "width": 260,
128
+ "height": 78,
129
+ "scale": 1,
130
+ "rotation": 0,
131
+ "tags": [],
132
+ "defaultAnimationState": "On",
133
+ "defaultText": "",
134
+ "fontSize": 58,
135
+ "autoFitText": false,
136
+ "fontFamily": "",
137
+ "fontColor": "#ffffff"
138
+ }
139
+ ]
140
+ },
141
+ {
142
+ "id": "lobby",
143
+ "name": "Lobby Controller",
144
+ "hiddenInStates": false,
145
+ "hiddenGlobals": [
146
+ "controllerplayerbanner"
147
+ ],
148
+ "elements": [
149
+ {
150
+ "id": "controlleravatar",
151
+ "name": "Player Avatar",
152
+ "selector": "#controllerAvatar",
153
+ "kind": "art",
154
+ "artCompositionId": "controller-avatar-button",
155
+ "layoutLayer": "content",
156
+ "hidden": false,
157
+ "locked": false,
158
+ "x": 195,
159
+ "y": 150,
160
+ "width": 104,
161
+ "height": 104,
162
+ "scale": 1,
163
+ "rotation": 0,
164
+ "tags": [],
165
+ "defaultAnimationState": "On",
166
+ "defaultText": "",
167
+ "fontSize": 58,
168
+ "autoFitText": false,
169
+ "fontFamily": "",
170
+ "fontColor": "#ffffff"
171
+ },
172
+ {
173
+ "id": "controllerplayername",
174
+ "name": "Player Name",
175
+ "selector": "",
176
+ "kind": "art",
177
+ "artCompositionId": "layout-text-field",
178
+ "layoutLayer": "content",
179
+ "hidden": false,
180
+ "locked": false,
181
+ "x": 195,
182
+ "y": 290,
183
+ "width": 330,
184
+ "height": 80,
185
+ "scale": 1,
186
+ "rotation": 0,
187
+ "tags": [],
188
+ "defaultAnimationState": "On",
189
+ "defaultText": "Player",
190
+ "fontSize": 66,
191
+ "autoFitText": true,
192
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
193
+ "fontColor": "#17131f"
194
+ },
195
+ {
196
+ "id": "controllermeta",
197
+ "name": "Controller Status",
198
+ "selector": "",
199
+ "kind": "art",
200
+ "artCompositionId": "layout-text-field",
201
+ "layoutLayer": "content",
202
+ "hidden": false,
203
+ "locked": false,
204
+ "x": 195,
205
+ "y": 382,
206
+ "width": 330,
207
+ "height": 48,
208
+ "scale": 1,
209
+ "rotation": 0,
210
+ "tags": [],
211
+ "defaultAnimationState": "On",
212
+ "defaultText": "Waiting in lobby",
213
+ "fontSize": 28,
214
+ "autoFitText": true,
215
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
216
+ "fontColor": "#6b5a80"
217
+ },
218
+ {
219
+ "id": "controllerlobbybuttoncontainer",
220
+ "name": "Lobby Button Container",
221
+ "selector": "#controllerLobbyButtonContainer",
222
+ "kind": "art",
223
+ "artCompositionId": "",
224
+ "layoutLayer": "content",
225
+ "hidden": false,
226
+ "locked": false,
227
+ "x": 195,
228
+ "y": 508,
229
+ "width": 260,
230
+ "height": 78,
231
+ "scale": 1,
232
+ "rotation": 0,
233
+ "tags": [],
234
+ "defaultAnimationState": "On",
235
+ "defaultText": "",
236
+ "fontSize": 58,
237
+ "autoFitText": false,
238
+ "fontFamily": "",
239
+ "fontColor": "#ffffff"
240
+ }
241
+ ]
242
+ },
243
+ {
244
+ "id": "round-intro-game-state",
245
+ "name": "Round Intro Game State",
246
+ "hiddenInStates": false,
247
+ "hiddenGlobals": [],
248
+ "elements": [
249
+ {
250
+ "id": "round-intro-game-state-controller-text",
251
+ "name": "Round Intro Game State Text Field",
252
+ "selector": "",
253
+ "kind": "art",
254
+ "artCompositionId": "layout-text-field",
255
+ "layoutLayer": "content",
256
+ "hidden": false,
257
+ "locked": false,
258
+ "x": 195,
259
+ "y": 250,
260
+ "width": 330,
261
+ "height": 140,
262
+ "scale": 1,
263
+ "rotation": 0,
264
+ "tags": [],
265
+ "defaultAnimationState": "On",
266
+ "defaultText": "Round Intro Game State",
267
+ "fontSize": 42,
268
+ "autoFitText": true,
269
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
270
+ "fontColor": "#17131f"
271
+ }
272
+ ]
273
+ },
274
+ {
275
+ "id": "crafting-game-state",
276
+ "name": "Crafting Game State",
277
+ "hiddenInStates": false,
278
+ "hiddenGlobals": [],
279
+ "elements": [
280
+ {
281
+ "id": "controllerchoiceprompt",
282
+ "name": "Choice Prompt",
283
+ "selector": "",
284
+ "kind": "art",
285
+ "artCompositionId": "layout-text-field",
286
+ "layoutLayer": "content",
287
+ "hidden": false,
288
+ "locked": false,
289
+ "x": 195,
290
+ "y": 180,
291
+ "width": 330,
292
+ "height": 120,
293
+ "scale": 1,
294
+ "rotation": 0,
295
+ "tags": [],
296
+ "defaultAnimationState": "On",
297
+ "defaultText": "Answer this question by tapping an answer",
298
+ "fontSize": 32,
299
+ "autoFitText": false,
300
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
301
+ "fontColor": "#17131f"
302
+ },
303
+ {
304
+ "id": "controllerchoicegrid",
305
+ "name": "Choice Buttons",
306
+ "selector": "#controllerChoiceGrid",
307
+ "kind": "art",
308
+ "artCompositionId": "",
309
+ "layoutLayer": "content",
310
+ "hidden": false,
311
+ "locked": false,
312
+ "x": 195,
313
+ "y": 485,
314
+ "width": 330,
315
+ "height": 420,
316
+ "scale": 1,
317
+ "rotation": 0,
318
+ "tags": [],
319
+ "defaultAnimationState": "On",
320
+ "defaultText": "",
321
+ "fontSize": 58,
322
+ "autoFitText": false,
323
+ "fontFamily": "",
324
+ "fontColor": "#ffffff"
325
+ },
326
+ {
327
+ "id": "controllerchoicedone",
328
+ "name": "Choice Done Text",
329
+ "selector": "",
330
+ "kind": "art",
331
+ "artCompositionId": "layout-text-field",
332
+ "layoutLayer": "content",
333
+ "hidden": false,
334
+ "locked": false,
335
+ "x": 195,
336
+ "y": 420,
337
+ "width": 330,
338
+ "height": 150,
339
+ "scale": 1,
340
+ "rotation": 0,
341
+ "tags": [],
342
+ "defaultAnimationState": "On",
343
+ "defaultText": "You chose:",
344
+ "fontSize": 34,
345
+ "autoFitText": true,
346
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
347
+ "fontColor": "#17131f"
348
+ },
349
+ {
350
+ "id": "controllertextprompt",
351
+ "name": "Text Input Prompt",
352
+ "selector": "",
353
+ "kind": "art",
354
+ "artCompositionId": "layout-text-field",
355
+ "layoutLayer": "content",
356
+ "hidden": false,
357
+ "locked": false,
358
+ "x": 195,
359
+ "y": 170,
360
+ "width": 330,
361
+ "height": 92,
362
+ "scale": 1,
363
+ "rotation": 0,
364
+ "tags": [],
365
+ "defaultAnimationState": "On",
366
+ "defaultText": "Write your answer",
367
+ "fontSize": 32,
368
+ "autoFitText": true,
369
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
370
+ "fontColor": "#17131f"
371
+ },
372
+ {
373
+ "id": "controllerinvalidbanner",
374
+ "name": "Invalid Submission Banner",
375
+ "selector": "#controllerInvalidBanner",
376
+ "kind": "art",
377
+ "artCompositionId": "controller-invalid-banner",
378
+ "layoutLayer": "content",
379
+ "hidden": false,
380
+ "locked": false,
381
+ "x": 195,
382
+ "y": 245,
383
+ "width": 330,
384
+ "height": 64,
385
+ "scale": 1,
386
+ "rotation": 0,
387
+ "tags": [],
388
+ "defaultAnimationState": "On",
389
+ "defaultText": "",
390
+ "fontSize": 58,
391
+ "autoFitText": false,
392
+ "fontFamily": "",
393
+ "fontColor": "#ffffff"
394
+ },
395
+ {
396
+ "id": "controllertextinput",
397
+ "name": "Text Input Field",
398
+ "selector": "#controllerTextInput",
399
+ "kind": "art",
400
+ "artCompositionId": "controller-text-input-field",
401
+ "layoutLayer": "content",
402
+ "hidden": false,
403
+ "locked": false,
404
+ "x": 195,
405
+ "y": 360,
406
+ "width": 330,
407
+ "height": 128,
408
+ "scale": 1,
409
+ "rotation": 0,
410
+ "tags": [],
411
+ "defaultAnimationState": "On",
412
+ "defaultText": "",
413
+ "fontSize": 58,
414
+ "autoFitText": false,
415
+ "fontFamily": "",
416
+ "fontColor": "#ffffff"
417
+ },
418
+ {
419
+ "id": "controllertextsubmitbuttoncontainer",
420
+ "name": "Text Submit Button Container",
421
+ "selector": "#controllerTextSubmitButtonContainer",
422
+ "kind": "art",
423
+ "artCompositionId": "",
424
+ "layoutLayer": "content",
425
+ "hidden": false,
426
+ "locked": false,
427
+ "x": 195,
428
+ "y": 475,
429
+ "width": 300,
430
+ "height": 70,
431
+ "scale": 1,
432
+ "rotation": 0,
433
+ "tags": [],
434
+ "defaultAnimationState": "On",
435
+ "defaultText": "",
436
+ "fontSize": 58,
437
+ "autoFitText": false,
438
+ "fontFamily": "",
439
+ "fontColor": "#ffffff"
440
+ },
441
+ {
442
+ "id": "controllertextdone",
443
+ "name": "Text Done Message",
444
+ "selector": "",
445
+ "kind": "art",
446
+ "artCompositionId": "layout-text-field",
447
+ "layoutLayer": "content",
448
+ "hidden": false,
449
+ "locked": false,
450
+ "x": 195,
451
+ "y": 410,
452
+ "width": 330,
453
+ "height": 150,
454
+ "scale": 1,
455
+ "rotation": 0,
456
+ "tags": [],
457
+ "defaultAnimationState": "On",
458
+ "defaultText": "You wrote:",
459
+ "fontSize": 34,
460
+ "autoFitText": true,
461
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
462
+ "fontColor": "#17131f"
463
+ }
464
+ ]
465
+ },
466
+ {
467
+ "id": "presentation-game-state",
468
+ "name": "Presentation Game State",
469
+ "hiddenInStates": false,
470
+ "hiddenGlobals": [],
471
+ "elements": [
472
+ {
473
+ "id": "presentation-game-state-controller-text",
474
+ "name": "Presentation Game State Text Field",
475
+ "selector": "",
476
+ "kind": "art",
477
+ "artCompositionId": "layout-text-field",
478
+ "layoutLayer": "content",
479
+ "hidden": false,
480
+ "locked": false,
481
+ "x": 195,
482
+ "y": 250,
483
+ "width": 330,
484
+ "height": 140,
485
+ "scale": 1,
486
+ "rotation": 0,
487
+ "tags": [],
488
+ "defaultAnimationState": "On",
489
+ "defaultText": "Presentation Game State",
490
+ "fontSize": 42,
491
+ "autoFitText": true,
492
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
493
+ "fontColor": "#17131f"
494
+ }
495
+ ]
496
+ },
497
+ {
498
+ "id": "scoreboard-game-state",
499
+ "name": "Scoreboard Game State",
500
+ "hiddenInStates": false,
501
+ "hiddenGlobals": [],
502
+ "elements": [
503
+ {
504
+ "id": "scoreboard-game-state-controller-text",
505
+ "name": "Scoreboard Game State Text Field",
506
+ "selector": "",
507
+ "kind": "art",
508
+ "artCompositionId": "layout-text-field",
509
+ "layoutLayer": "content",
510
+ "hidden": false,
511
+ "locked": false,
512
+ "x": 195,
513
+ "y": 250,
514
+ "width": 330,
515
+ "height": 140,
516
+ "scale": 1,
517
+ "rotation": 0,
518
+ "tags": [],
519
+ "defaultAnimationState": "On",
520
+ "defaultText": "Scoreboard Game State",
521
+ "fontSize": 42,
522
+ "autoFitText": true,
523
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
524
+ "fontColor": "#17131f"
525
+ }
526
+ ]
527
+ },
528
+ {
529
+ "id": "post-game-state",
530
+ "name": "Post Game State",
531
+ "hiddenInStates": false,
532
+ "hiddenGlobals": [],
533
+ "elements": [
534
+ {
535
+ "id": "post-game-state-controller-text",
536
+ "name": "Post Game State Text Field",
537
+ "selector": "",
538
+ "kind": "art",
539
+ "artCompositionId": "layout-text-field",
540
+ "layoutLayer": "content",
541
+ "hidden": false,
542
+ "locked": false,
543
+ "x": 195,
544
+ "y": 250,
545
+ "width": 330,
546
+ "height": 140,
547
+ "scale": 1,
548
+ "rotation": 0,
549
+ "tags": [],
550
+ "defaultAnimationState": "On",
551
+ "defaultText": "Post Game State",
552
+ "fontSize": 42,
553
+ "autoFitText": true,
554
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
555
+ "fontColor": "#17131f"
556
+ }
557
+ ]
558
+ },
559
+ {
560
+ "id": "writing-moment",
561
+ "name": "Writing Moment",
562
+ "hiddenInStates": false,
563
+ "hiddenGlobals": [],
564
+ "elements": [
565
+ {
566
+ "id": "controllertextprompt",
567
+ "name": "Text Input Prompt",
568
+ "selector": "",
569
+ "kind": "art",
570
+ "artCompositionId": "layout-text-field",
571
+ "layoutLayer": "content",
572
+ "hidden": false,
573
+ "locked": false,
574
+ "x": 195,
575
+ "y": 170,
576
+ "width": 330,
577
+ "height": 92,
578
+ "scale": 1,
579
+ "rotation": 0,
580
+ "tags": [],
581
+ "defaultAnimationState": "On",
582
+ "defaultText": "Write your answer",
583
+ "fontSize": 32,
584
+ "autoFitText": true,
585
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
586
+ "fontColor": "#17131f"
587
+ },
588
+ {
589
+ "id": "controllerinvalidbanner",
590
+ "name": "Invalid Submission Banner",
591
+ "selector": "#controllerInvalidBanner",
592
+ "kind": "art",
593
+ "artCompositionId": "controller-invalid-banner",
594
+ "layoutLayer": "content",
595
+ "hidden": false,
596
+ "locked": false,
597
+ "x": 195,
598
+ "y": 245,
599
+ "width": 330,
600
+ "height": 64,
601
+ "scale": 1,
602
+ "rotation": 0,
603
+ "tags": [],
604
+ "defaultAnimationState": "On",
605
+ "defaultText": "",
606
+ "fontSize": 58,
607
+ "autoFitText": false,
608
+ "fontFamily": "",
609
+ "fontColor": "#ffffff"
610
+ },
611
+ {
612
+ "id": "controllertextinput",
613
+ "name": "Text Input Field",
614
+ "selector": "#controllerTextInput",
615
+ "kind": "art",
616
+ "artCompositionId": "controller-text-input-field",
617
+ "layoutLayer": "content",
618
+ "hidden": false,
619
+ "locked": false,
620
+ "x": 195,
621
+ "y": 360,
622
+ "width": 330,
623
+ "height": 128,
624
+ "scale": 1,
625
+ "rotation": 0,
626
+ "tags": [],
627
+ "defaultAnimationState": "On",
628
+ "defaultText": "",
629
+ "fontSize": 58,
630
+ "autoFitText": false,
631
+ "fontFamily": "",
632
+ "fontColor": "#ffffff"
633
+ },
634
+ {
635
+ "id": "controllertextsubmitbuttoncontainer",
636
+ "name": "Text Submit Button Container",
637
+ "selector": "#controllerTextSubmitButtonContainer",
638
+ "kind": "art",
639
+ "artCompositionId": "",
640
+ "layoutLayer": "content",
641
+ "hidden": false,
642
+ "locked": false,
643
+ "x": 195,
644
+ "y": 475,
645
+ "width": 300,
646
+ "height": 70,
647
+ "scale": 1,
648
+ "rotation": 0,
649
+ "tags": [],
650
+ "defaultAnimationState": "On",
651
+ "defaultText": "",
652
+ "fontSize": 58,
653
+ "autoFitText": false,
654
+ "fontFamily": "",
655
+ "fontColor": "#ffffff"
656
+ },
657
+ {
658
+ "id": "controllertextdone",
659
+ "name": "Text Done Message",
660
+ "selector": "",
661
+ "kind": "art",
662
+ "artCompositionId": "layout-text-field",
663
+ "layoutLayer": "content",
664
+ "hidden": false,
665
+ "locked": false,
666
+ "x": 195,
667
+ "y": 410,
668
+ "width": 330,
669
+ "height": 150,
670
+ "scale": 1,
671
+ "rotation": 0,
672
+ "tags": [],
673
+ "defaultAnimationState": "On",
674
+ "defaultText": "You wrote:",
675
+ "fontSize": 34,
676
+ "autoFitText": true,
677
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
678
+ "fontColor": "#17131f"
679
+ }
680
+ ]
681
+ },
682
+ {
683
+ "id": "voting-moment",
684
+ "name": "Voting Moment",
685
+ "hiddenInStates": false,
686
+ "hiddenGlobals": [],
687
+ "elements": [
688
+ {
689
+ "id": "voting-moment-controller-text",
690
+ "name": "Voting Moment Text Field",
691
+ "selector": "",
692
+ "kind": "art",
693
+ "artCompositionId": "layout-text-field",
694
+ "layoutLayer": "content",
695
+ "hidden": false,
696
+ "locked": false,
697
+ "x": 195,
698
+ "y": 150,
699
+ "width": 330,
700
+ "height": 80,
701
+ "scale": 1,
702
+ "rotation": 0,
703
+ "tags": [],
704
+ "defaultAnimationState": "On",
705
+ "defaultText": "Voting Moment",
706
+ "fontSize": 42,
707
+ "autoFitText": true,
708
+ "fontFamily": "ui-rounded, \"Avenir Next\", \"Trebuchet MS\", system-ui, sans-serif",
709
+ "fontColor": "#17131f"
710
+ },
711
+ {
712
+ "id": "controllerchoicegrid",
713
+ "name": "Choice Buttons",
714
+ "selector": "#controllerChoiceGrid",
715
+ "kind": "art",
716
+ "artCompositionId": "",
717
+ "layoutLayer": "content",
718
+ "hidden": false,
719
+ "locked": false,
720
+ "x": 193.279,
721
+ "y": 420.141,
722
+ "width": 330,
723
+ "height": 420,
724
+ "scale": 1,
725
+ "rotation": 0,
726
+ "tags": [],
727
+ "defaultAnimationState": "On",
728
+ "defaultText": "",
729
+ "fontSize": 58,
730
+ "autoFitText": false,
731
+ "fontFamily": "",
732
+ "fontColor": "#ffffff"
733
+ }
734
+ ]
735
+ }
736
+ ]
737
+ }