@cratis/scene.blueprint.bookings 0.0.0-stage → 4.78.3

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 (133) hide show
  1. package/README.md +69 -2
  2. package/blueprint.ts +16 -0
  3. package/blueprintCatalog.json +123 -0
  4. package/bookingsApplication.ts +28 -0
  5. package/bookingsParts.ts +58 -0
  6. package/bookingsQueries.ts +60 -0
  7. package/bookingsScreenSet.ts +22 -0
  8. package/dist/cjs/blueprint.js +19 -0
  9. package/dist/cjs/blueprint.js.map +1 -0
  10. package/dist/cjs/bookingsApplication.js +49 -0
  11. package/dist/cjs/bookingsApplication.js.map +1 -0
  12. package/dist/cjs/bookingsParts.js +151 -0
  13. package/dist/cjs/bookingsParts.js.map +1 -0
  14. package/dist/cjs/bookingsQueries.js +68 -0
  15. package/dist/cjs/bookingsQueries.js.map +1 -0
  16. package/dist/cjs/bookingsScreenSet.js +47 -0
  17. package/dist/cjs/bookingsScreenSet.js.map +1 -0
  18. package/dist/cjs/index.js +69 -0
  19. package/dist/cjs/index.js.map +1 -0
  20. package/dist/cjs/manifest.js +90 -0
  21. package/dist/cjs/manifest.js.map +1 -0
  22. package/dist/cjs/navigation.js +117 -0
  23. package/dist/cjs/navigation.js.map +1 -0
  24. package/dist/cjs/package.json +3 -0
  25. package/dist/cjs/packageName.js +8 -0
  26. package/dist/cjs/packageName.js.map +1 -0
  27. package/dist/cjs/screens/index.js +22 -0
  28. package/dist/cjs/screens/index.js.map +1 -0
  29. package/dist/cjs/templateProvenance.js +24 -0
  30. package/dist/cjs/templateProvenance.js.map +1 -0
  31. package/dist/cjs/templates/calendarTemplate.js +109 -0
  32. package/dist/cjs/templates/calendarTemplate.js.map +1 -0
  33. package/dist/cjs/templates/formTemplates.js +50 -0
  34. package/dist/cjs/templates/formTemplates.js.map +1 -0
  35. package/dist/cjs/templates/index.js +27 -0
  36. package/dist/cjs/templates/index.js.map +1 -0
  37. package/dist/cjs/templates/listTemplates.js +167 -0
  38. package/dist/cjs/templates/listTemplates.js.map +1 -0
  39. package/dist/cjs/templates/recordTemplates.js +129 -0
  40. package/dist/cjs/templates/recordTemplates.js.map +1 -0
  41. package/dist/cjs/templates/wizardTemplate.js +73 -0
  42. package/dist/cjs/templates/wizardTemplate.js.map +1 -0
  43. package/dist/esm/blueprint.d.ts +3 -0
  44. package/dist/esm/blueprint.d.ts.map +1 -0
  45. package/dist/esm/blueprint.js +17 -0
  46. package/dist/esm/blueprint.js.map +1 -0
  47. package/dist/esm/bookingsApplication.d.ts +10 -0
  48. package/dist/esm/bookingsApplication.d.ts.map +1 -0
  49. package/dist/esm/bookingsApplication.js +44 -0
  50. package/dist/esm/bookingsApplication.js.map +1 -0
  51. package/dist/esm/bookingsParts.d.ts +16 -0
  52. package/dist/esm/bookingsParts.d.ts.map +1 -0
  53. package/dist/esm/bookingsParts.js +133 -0
  54. package/dist/esm/bookingsParts.js.map +1 -0
  55. package/dist/esm/bookingsQueries.d.ts +41 -0
  56. package/dist/esm/bookingsQueries.d.ts.map +1 -0
  57. package/dist/esm/bookingsQueries.js +60 -0
  58. package/dist/esm/bookingsQueries.js.map +1 -0
  59. package/dist/esm/bookingsScreenSet.d.ts +7 -0
  60. package/dist/esm/bookingsScreenSet.d.ts.map +1 -0
  61. package/dist/esm/bookingsScreenSet.js +45 -0
  62. package/dist/esm/bookingsScreenSet.js.map +1 -0
  63. package/dist/esm/index.d.ts +12 -0
  64. package/dist/esm/index.d.ts.map +1 -0
  65. package/dist/esm/index.js +18 -0
  66. package/dist/esm/index.js.map +1 -0
  67. package/dist/esm/manifest.d.ts +3 -0
  68. package/dist/esm/manifest.d.ts.map +1 -0
  69. package/dist/esm/manifest.js +88 -0
  70. package/dist/esm/manifest.js.map +1 -0
  71. package/dist/esm/navigation.d.ts +5 -0
  72. package/dist/esm/navigation.d.ts.map +1 -0
  73. package/dist/esm/navigation.js +113 -0
  74. package/dist/esm/navigation.js.map +1 -0
  75. package/dist/esm/package.json +3 -0
  76. package/dist/esm/packageName.d.ts +2 -0
  77. package/dist/esm/packageName.d.ts.map +1 -0
  78. package/dist/esm/packageName.js +6 -0
  79. package/dist/esm/packageName.js.map +1 -0
  80. package/dist/esm/screens/index.d.ts +3 -0
  81. package/dist/esm/screens/index.d.ts.map +1 -0
  82. package/dist/esm/screens/index.js +20 -0
  83. package/dist/esm/screens/index.js.map +1 -0
  84. package/dist/esm/templateProvenance.d.ts +3 -0
  85. package/dist/esm/templateProvenance.d.ts.map +1 -0
  86. package/dist/esm/templateProvenance.js +22 -0
  87. package/dist/esm/templateProvenance.js.map +1 -0
  88. package/dist/esm/templates/calendarTemplate.d.ts +3 -0
  89. package/dist/esm/templates/calendarTemplate.d.ts.map +1 -0
  90. package/dist/esm/templates/calendarTemplate.js +107 -0
  91. package/dist/esm/templates/calendarTemplate.js.map +1 -0
  92. package/dist/esm/templates/formTemplates.d.ts +3 -0
  93. package/dist/esm/templates/formTemplates.d.ts.map +1 -0
  94. package/dist/esm/templates/formTemplates.js +48 -0
  95. package/dist/esm/templates/formTemplates.js.map +1 -0
  96. package/dist/esm/templates/index.d.ts +8 -0
  97. package/dist/esm/templates/index.d.ts.map +1 -0
  98. package/dist/esm/templates/index.js +18 -0
  99. package/dist/esm/templates/index.js.map +1 -0
  100. package/dist/esm/templates/listTemplates.d.ts +4 -0
  101. package/dist/esm/templates/listTemplates.d.ts.map +1 -0
  102. package/dist/esm/templates/listTemplates.js +164 -0
  103. package/dist/esm/templates/listTemplates.js.map +1 -0
  104. package/dist/esm/templates/recordTemplates.d.ts +3 -0
  105. package/dist/esm/templates/recordTemplates.d.ts.map +1 -0
  106. package/dist/esm/templates/recordTemplates.js +127 -0
  107. package/dist/esm/templates/recordTemplates.js.map +1 -0
  108. package/dist/esm/templates/wizardTemplate.d.ts +3 -0
  109. package/dist/esm/templates/wizardTemplate.d.ts.map +1 -0
  110. package/dist/esm/templates/wizardTemplate.js +71 -0
  111. package/dist/esm/templates/wizardTemplate.js.map +1 -0
  112. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  113. package/index.ts +14 -0
  114. package/manifest.ts +41 -0
  115. package/navigation.ts +54 -0
  116. package/package.json +78 -4
  117. package/packageName.ts +5 -0
  118. package/sampleData/bookings-en.json +1057 -0
  119. package/screens/index.ts +20 -0
  120. package/templateProvenance.ts +15 -0
  121. package/templates/calendarTemplate.ts +57 -0
  122. package/templates/formTemplates.ts +33 -0
  123. package/templates/index.ts +18 -0
  124. package/templates/listTemplates.ts +106 -0
  125. package/templates/recordTemplates.ts +78 -0
  126. package/templates/wizardTemplate.ts +29 -0
  127. package/thumbnails/BookingPage.svg +17 -0
  128. package/thumbnails/BookingsCalendar.svg +34 -0
  129. package/thumbnails/BookingsList.svg +29 -0
  130. package/thumbnails/BookingsQuickCreateBooking.svg +12 -0
  131. package/thumbnails/NewBookingWizard.svg +15 -0
  132. package/thumbnails/ResourcesList.svg +29 -0
  133. package/thumbnails/bookings.svg +14 -0
@@ -0,0 +1,1057 @@
1
+ {
2
+ "id": "bookings-en",
3
+ "title": "Bookings · English",
4
+ "locale": "en-GB",
5
+ "owner": "blueprint:bookings",
6
+ "sets": [
7
+ {
8
+ "shape": "BookingsSettings",
9
+ "rows": [
10
+ {
11
+ "locale": "en-GB",
12
+ "currency": "GBP",
13
+ "today": "2026-10-15",
14
+ "firstDay": 1
15
+ }
16
+ ]
17
+ },
18
+ {
19
+ "shape": "Bookings",
20
+ "rows": [
21
+ {
22
+ "id": "booking-1",
23
+ "reference": "BK-4410",
24
+ "resource": "Fjord meeting room",
25
+ "bookedBy": "Grace Hopper",
26
+ "date": "2026-10-15",
27
+ "from": "09:00",
28
+ "until": "11:00",
29
+ "people": 8,
30
+ "status": "Checked in"
31
+ },
32
+ {
33
+ "id": "booking-2",
34
+ "reference": "BK-4411",
35
+ "resource": "Projector kit",
36
+ "bookedBy": "Grace Hopper",
37
+ "date": "2026-10-15",
38
+ "from": "09:00",
39
+ "until": "11:00",
40
+ "people": 1,
41
+ "status": "Checked in"
42
+ },
43
+ {
44
+ "id": "booking-3",
45
+ "reference": "BK-4412",
46
+ "resource": "Workshop studio",
47
+ "bookedBy": "Alan Turing",
48
+ "date": "2026-10-16",
49
+ "from": "13:00",
50
+ "until": "16:00",
51
+ "people": 18,
52
+ "status": "Confirmed"
53
+ },
54
+ {
55
+ "id": "booking-4",
56
+ "reference": "BK-4413",
57
+ "resource": "Pool car, electric",
58
+ "bookedBy": "Katherine Johnson",
59
+ "date": "2026-10-16",
60
+ "from": "08:00",
61
+ "until": "17:00",
62
+ "people": 2,
63
+ "status": "Confirmed"
64
+ },
65
+ {
66
+ "id": "booking-5",
67
+ "reference": "BK-4414",
68
+ "resource": "Aurora meeting room",
69
+ "bookedBy": "Alan Turing",
70
+ "date": "2026-10-19",
71
+ "from": "10:00",
72
+ "until": "11:30",
73
+ "people": 5,
74
+ "status": "Confirmed"
75
+ },
76
+ {
77
+ "id": "booking-6",
78
+ "reference": "BK-4415",
79
+ "resource": "Conference camera",
80
+ "bookedBy": "Katherine Johnson",
81
+ "date": "2026-10-19",
82
+ "from": "10:00",
83
+ "until": "11:30",
84
+ "people": 1,
85
+ "status": "Requested"
86
+ },
87
+ {
88
+ "id": "booking-7",
89
+ "reference": "BK-4416",
90
+ "resource": "Fjord meeting room",
91
+ "bookedBy": "Katherine Johnson",
92
+ "date": "2026-10-20",
93
+ "from": "14:00",
94
+ "until": "15:00",
95
+ "people": 10,
96
+ "status": "Requested"
97
+ },
98
+ {
99
+ "id": "booking-8",
100
+ "reference": "BK-4417",
101
+ "resource": "Quiet room",
102
+ "bookedBy": "Grace Hopper",
103
+ "date": "2026-10-21",
104
+ "from": "09:30",
105
+ "until": "10:30",
106
+ "people": 2,
107
+ "status": "Confirmed"
108
+ },
109
+ {
110
+ "id": "booking-9",
111
+ "reference": "BK-4418",
112
+ "resource": "Workshop studio",
113
+ "bookedBy": "Grace Hopper",
114
+ "date": "2026-10-22",
115
+ "from": "09:00",
116
+ "until": "12:00",
117
+ "people": 20,
118
+ "status": "Requested"
119
+ },
120
+ {
121
+ "id": "booking-10",
122
+ "reference": "BK-4419",
123
+ "resource": "Pool car, electric",
124
+ "bookedBy": "Alan Turing",
125
+ "date": "2026-10-23",
126
+ "from": "07:30",
127
+ "until": "12:00",
128
+ "people": 2,
129
+ "status": "Confirmed"
130
+ },
131
+ {
132
+ "id": "booking-11",
133
+ "reference": "BK-4409",
134
+ "resource": "Aurora meeting room",
135
+ "bookedBy": "Grace Hopper",
136
+ "date": "2026-10-14",
137
+ "from": "15:00",
138
+ "until": "16:00",
139
+ "people": 4,
140
+ "status": "Completed"
141
+ },
142
+ {
143
+ "id": "booking-12",
144
+ "reference": "BK-4408",
145
+ "resource": "Fjord meeting room",
146
+ "bookedBy": "Alan Turing",
147
+ "date": "2026-10-13",
148
+ "from": "10:00",
149
+ "until": "12:00",
150
+ "people": 9,
151
+ "status": "Cancelled"
152
+ }
153
+ ]
154
+ },
155
+ {
156
+ "shape": "BookingColumns",
157
+ "rows": [
158
+ {
159
+ "field": "reference",
160
+ "header": "Booking"
161
+ },
162
+ {
163
+ "field": "resource",
164
+ "header": "Resource"
165
+ },
166
+ {
167
+ "field": "bookedBy",
168
+ "header": "Booked by"
169
+ },
170
+ {
171
+ "field": "date",
172
+ "header": "Date",
173
+ "kind": "date"
174
+ },
175
+ {
176
+ "field": "from",
177
+ "header": "From"
178
+ },
179
+ {
180
+ "field": "until",
181
+ "header": "Until"
182
+ },
183
+ {
184
+ "field": "status",
185
+ "header": "Status",
186
+ "kind": "status",
187
+ "tones": {
188
+ "Requested": "info",
189
+ "Confirmed": "info",
190
+ "Checked in": "success",
191
+ "Completed": "success",
192
+ "Cancelled": "neutral"
193
+ }
194
+ }
195
+ ]
196
+ },
197
+ {
198
+ "shape": "BookingFilterFields",
199
+ "rows": [
200
+ {
201
+ "name": "resource",
202
+ "label": "Resource",
203
+ "type": "select",
204
+ "options": [
205
+ "Fjord meeting room",
206
+ "Aurora meeting room",
207
+ "Workshop studio",
208
+ "Quiet room",
209
+ "Projector kit",
210
+ "Conference camera",
211
+ "Pool car, electric",
212
+ "Cargo van"
213
+ ]
214
+ },
215
+ {
216
+ "name": "status",
217
+ "label": "Status",
218
+ "type": "select",
219
+ "options": [
220
+ "Requested",
221
+ "Confirmed",
222
+ "Checked in",
223
+ "Completed",
224
+ "Cancelled"
225
+ ]
226
+ },
227
+ {
228
+ "name": "bookedBy",
229
+ "label": "Booked by",
230
+ "type": "select",
231
+ "options": [
232
+ "Grace Hopper",
233
+ "Alan Turing",
234
+ "Katherine Johnson"
235
+ ]
236
+ },
237
+ {
238
+ "name": "date",
239
+ "label": "Date",
240
+ "type": "date"
241
+ }
242
+ ]
243
+ },
244
+ {
245
+ "shape": "BookingViews",
246
+ "rows": [
247
+ {
248
+ "id": "all",
249
+ "label": "All bookings"
250
+ },
251
+ {
252
+ "id": "mine",
253
+ "label": "My bookings"
254
+ },
255
+ {
256
+ "id": "requested",
257
+ "label": "Waiting for confirmation"
258
+ }
259
+ ]
260
+ },
261
+ {
262
+ "shape": "BookingColumnChoices",
263
+ "rows": [
264
+ {
265
+ "id": "reference",
266
+ "label": "Booking",
267
+ "locked": true
268
+ },
269
+ {
270
+ "id": "resource",
271
+ "label": "Resource"
272
+ },
273
+ {
274
+ "id": "bookedBy",
275
+ "label": "Booked by"
276
+ },
277
+ {
278
+ "id": "date",
279
+ "label": "Date"
280
+ },
281
+ {
282
+ "id": "from",
283
+ "label": "From"
284
+ },
285
+ {
286
+ "id": "until",
287
+ "label": "Until"
288
+ },
289
+ {
290
+ "id": "status",
291
+ "label": "Status"
292
+ }
293
+ ]
294
+ },
295
+ {
296
+ "shape": "BookingSelection",
297
+ "rows": []
298
+ },
299
+ {
300
+ "shape": "BookingQuickSections",
301
+ "rows": [
302
+ {
303
+ "id": "quick",
304
+ "title": "Quick booking",
305
+ "columns": 1,
306
+ "fields": [
307
+ {
308
+ "name": "resource",
309
+ "label": "Resource",
310
+ "type": "select",
311
+ "options": [
312
+ "Fjord meeting room",
313
+ "Aurora meeting room",
314
+ "Workshop studio",
315
+ "Quiet room",
316
+ "Projector kit",
317
+ "Conference camera",
318
+ "Pool car, electric",
319
+ "Cargo van"
320
+ ],
321
+ "required": true
322
+ },
323
+ {
324
+ "name": "date",
325
+ "label": "Date",
326
+ "type": "date",
327
+ "required": true
328
+ },
329
+ {
330
+ "name": "from",
331
+ "label": "From",
332
+ "type": "text",
333
+ "required": true
334
+ },
335
+ {
336
+ "name": "until",
337
+ "label": "Until",
338
+ "type": "text",
339
+ "required": true
340
+ }
341
+ ]
342
+ }
343
+ ]
344
+ },
345
+ {
346
+ "shape": "BookingRecord",
347
+ "rows": [
348
+ {
349
+ "id": "booking-1",
350
+ "reference": "BK-4410",
351
+ "resource": "Fjord meeting room",
352
+ "bookedBy": "Grace Hopper",
353
+ "date": "2026-10-15",
354
+ "from": "09:00",
355
+ "until": "11:00",
356
+ "people": 8,
357
+ "status": "Checked in",
358
+ "summary": "Weekly planning with the Bergen team",
359
+ "location": "Floor 2",
360
+ "setup": "Boardroom layout, video call ready",
361
+ "notes": "Coffee and water for eight please",
362
+ "hours": 2
363
+ }
364
+ ]
365
+ },
366
+ {
367
+ "shape": "BookingSections",
368
+ "rows": [
369
+ {
370
+ "id": "booking",
371
+ "title": "Booking details",
372
+ "columns": 2,
373
+ "fields": [
374
+ {
375
+ "name": "reference",
376
+ "label": "Booking"
377
+ },
378
+ {
379
+ "name": "resource",
380
+ "label": "Resource"
381
+ },
382
+ {
383
+ "name": "bookedBy",
384
+ "label": "Booked by"
385
+ },
386
+ {
387
+ "name": "location",
388
+ "label": "Location"
389
+ },
390
+ {
391
+ "name": "date",
392
+ "label": "Date",
393
+ "type": "date"
394
+ },
395
+ {
396
+ "name": "from",
397
+ "label": "From"
398
+ },
399
+ {
400
+ "name": "until",
401
+ "label": "Until"
402
+ },
403
+ {
404
+ "name": "setup",
405
+ "label": "Setup"
406
+ },
407
+ {
408
+ "name": "notes",
409
+ "label": "Notes",
410
+ "span": 2
411
+ }
412
+ ]
413
+ }
414
+ ]
415
+ },
416
+ {
417
+ "shape": "BookingSummary",
418
+ "rows": [
419
+ {
420
+ "status": "Checked in",
421
+ "tone": "success",
422
+ "date": "2026-10-15",
423
+ "hours": 2,
424
+ "people": 8
425
+ }
426
+ ]
427
+ },
428
+ {
429
+ "shape": "BookingActivity",
430
+ "rows": [
431
+ {
432
+ "id": "a0",
433
+ "actor": "Grace Hopper",
434
+ "action": "checked in",
435
+ "kind": "status",
436
+ "at": "2026-10-15T08:55:00Z",
437
+ "body": "Room was ready"
438
+ },
439
+ {
440
+ "id": "a1",
441
+ "actor": "Alan Turing",
442
+ "action": "confirmed the booking",
443
+ "kind": "comment",
444
+ "at": "2026-10-13T11:20:00Z",
445
+ "body": "Projector kit added"
446
+ },
447
+ {
448
+ "id": "a2",
449
+ "actor": "Grace Hopper",
450
+ "action": "requested the booking",
451
+ "kind": "created",
452
+ "at": "2026-10-12T16:45:00Z",
453
+ "body": "Through the booking wizard"
454
+ }
455
+ ]
456
+ },
457
+ {
458
+ "shape": "BookingTabs",
459
+ "rows": [
460
+ {
461
+ "id": "overview",
462
+ "label": "Overview"
463
+ },
464
+ {
465
+ "id": "attendees",
466
+ "label": "Attendees"
467
+ },
468
+ {
469
+ "id": "extras",
470
+ "label": "Extras"
471
+ },
472
+ {
473
+ "id": "activity",
474
+ "label": "Activity"
475
+ }
476
+ ]
477
+ },
478
+ {
479
+ "shape": "BookingAttendees",
480
+ "rows": [
481
+ {
482
+ "id": "at1",
483
+ "name": "Grace Hopper",
484
+ "team": "Purchasing",
485
+ "response": "Organizer"
486
+ },
487
+ {
488
+ "id": "at2",
489
+ "name": "Eleanor Marsh",
490
+ "team": "Bergen depot",
491
+ "response": "Accepted"
492
+ },
493
+ {
494
+ "id": "at3",
495
+ "name": "Tobias Reed",
496
+ "team": "Bergen depot",
497
+ "response": "Accepted"
498
+ },
499
+ {
500
+ "id": "at4",
501
+ "name": "Priya Nair",
502
+ "team": "Finance",
503
+ "response": "Maybe"
504
+ }
505
+ ]
506
+ },
507
+ {
508
+ "shape": "BookingAttendeesColumns",
509
+ "rows": [
510
+ {
511
+ "field": "name",
512
+ "header": "Name"
513
+ },
514
+ {
515
+ "field": "team",
516
+ "header": "Team"
517
+ },
518
+ {
519
+ "field": "response",
520
+ "header": "Response"
521
+ }
522
+ ]
523
+ },
524
+ {
525
+ "shape": "BookingExtras",
526
+ "rows": [
527
+ {
528
+ "id": "x1",
529
+ "item": "Projector kit",
530
+ "quantity": 1,
531
+ "status": "Confirmed"
532
+ },
533
+ {
534
+ "id": "x2",
535
+ "item": "Coffee and water",
536
+ "quantity": 8,
537
+ "status": "Requested"
538
+ }
539
+ ]
540
+ },
541
+ {
542
+ "shape": "BookingExtrasColumns",
543
+ "rows": [
544
+ {
545
+ "field": "item",
546
+ "header": "Item"
547
+ },
548
+ {
549
+ "field": "quantity",
550
+ "header": "Qty",
551
+ "kind": "number"
552
+ },
553
+ {
554
+ "field": "status",
555
+ "header": "Status"
556
+ }
557
+ ]
558
+ },
559
+ {
560
+ "shape": "Resources",
561
+ "rows": [
562
+ {
563
+ "id": "resource-1",
564
+ "name": "Fjord meeting room",
565
+ "type": "Room",
566
+ "capacity": 12,
567
+ "location": "Floor 2",
568
+ "status": "Booked"
569
+ },
570
+ {
571
+ "id": "resource-2",
572
+ "name": "Aurora meeting room",
573
+ "type": "Room",
574
+ "capacity": 6,
575
+ "location": "Floor 2",
576
+ "status": "Available"
577
+ },
578
+ {
579
+ "id": "resource-3",
580
+ "name": "Workshop studio",
581
+ "type": "Room",
582
+ "capacity": 24,
583
+ "location": "Floor 1",
584
+ "status": "Available"
585
+ },
586
+ {
587
+ "id": "resource-4",
588
+ "name": "Quiet room",
589
+ "type": "Room",
590
+ "capacity": 2,
591
+ "location": "Floor 3",
592
+ "status": "Available"
593
+ },
594
+ {
595
+ "id": "resource-5",
596
+ "name": "Projector kit",
597
+ "type": "Equipment",
598
+ "capacity": 1,
599
+ "location": "Reception",
600
+ "status": "Booked"
601
+ },
602
+ {
603
+ "id": "resource-6",
604
+ "name": "Conference camera",
605
+ "type": "Equipment",
606
+ "capacity": 1,
607
+ "location": "Reception",
608
+ "status": "Available"
609
+ },
610
+ {
611
+ "id": "resource-7",
612
+ "name": "Pool car, electric",
613
+ "type": "Vehicle",
614
+ "capacity": 4,
615
+ "location": "Basement",
616
+ "status": "Booked"
617
+ },
618
+ {
619
+ "id": "resource-8",
620
+ "name": "Cargo van",
621
+ "type": "Vehicle",
622
+ "capacity": 2,
623
+ "location": "Basement",
624
+ "status": "Maintenance"
625
+ }
626
+ ]
627
+ },
628
+ {
629
+ "shape": "ResourceColumns",
630
+ "rows": [
631
+ {
632
+ "field": "name",
633
+ "header": "Resource"
634
+ },
635
+ {
636
+ "field": "type",
637
+ "header": "Type"
638
+ },
639
+ {
640
+ "field": "capacity",
641
+ "header": "Capacity",
642
+ "kind": "number"
643
+ },
644
+ {
645
+ "field": "location",
646
+ "header": "Location"
647
+ },
648
+ {
649
+ "field": "status",
650
+ "header": "Status",
651
+ "kind": "status",
652
+ "tones": {
653
+ "Available": "success",
654
+ "Booked": "warning",
655
+ "Maintenance": "danger"
656
+ }
657
+ }
658
+ ]
659
+ },
660
+ {
661
+ "shape": "ResourceFilterFields",
662
+ "rows": [
663
+ {
664
+ "name": "type",
665
+ "label": "Type",
666
+ "type": "select",
667
+ "options": [
668
+ "Room",
669
+ "Equipment",
670
+ "Vehicle"
671
+ ]
672
+ },
673
+ {
674
+ "name": "status",
675
+ "label": "Status",
676
+ "type": "select",
677
+ "options": [
678
+ "Available",
679
+ "Booked",
680
+ "Maintenance"
681
+ ]
682
+ },
683
+ {
684
+ "name": "location",
685
+ "label": "Location",
686
+ "type": "select",
687
+ "options": [
688
+ "Floor 1",
689
+ "Floor 2",
690
+ "Floor 3",
691
+ "Reception",
692
+ "Basement"
693
+ ]
694
+ }
695
+ ]
696
+ },
697
+ {
698
+ "shape": "ResourceViews",
699
+ "rows": [
700
+ {
701
+ "id": "all",
702
+ "label": "All resources"
703
+ },
704
+ {
705
+ "id": "free",
706
+ "label": "Available now"
707
+ }
708
+ ]
709
+ },
710
+ {
711
+ "shape": "ResourceColumnChoices",
712
+ "rows": [
713
+ {
714
+ "id": "name",
715
+ "label": "Resource",
716
+ "locked": true
717
+ },
718
+ {
719
+ "id": "type",
720
+ "label": "Type"
721
+ },
722
+ {
723
+ "id": "capacity",
724
+ "label": "Capacity"
725
+ },
726
+ {
727
+ "id": "location",
728
+ "label": "Location"
729
+ },
730
+ {
731
+ "id": "status",
732
+ "label": "Status"
733
+ }
734
+ ]
735
+ },
736
+ {
737
+ "shape": "ResourceSelection",
738
+ "rows": []
739
+ },
740
+ {
741
+ "shape": "BookingEvents",
742
+ "rows": [
743
+ {
744
+ "id": "event-1",
745
+ "title": "BK-4410 · Fjord meeting room",
746
+ "start": "2026-10-15",
747
+ "end": "2026-10-15",
748
+ "category": "Checked in",
749
+ "tone": "success",
750
+ "person": "Grace Hopper"
751
+ },
752
+ {
753
+ "id": "event-2",
754
+ "title": "BK-4411 · Projector kit",
755
+ "start": "2026-10-15",
756
+ "end": "2026-10-15",
757
+ "category": "Checked in",
758
+ "tone": "success",
759
+ "person": "Grace Hopper"
760
+ },
761
+ {
762
+ "id": "event-3",
763
+ "title": "BK-4412 · Workshop studio",
764
+ "start": "2026-10-16",
765
+ "end": "2026-10-16",
766
+ "category": "Confirmed",
767
+ "tone": "success",
768
+ "person": "Alan Turing"
769
+ },
770
+ {
771
+ "id": "event-4",
772
+ "title": "BK-4413 · Pool car, electric",
773
+ "start": "2026-10-16",
774
+ "end": "2026-10-16",
775
+ "category": "Confirmed",
776
+ "tone": "success",
777
+ "person": "Katherine Johnson"
778
+ },
779
+ {
780
+ "id": "event-5",
781
+ "title": "BK-4414 · Aurora meeting room",
782
+ "start": "2026-10-19",
783
+ "end": "2026-10-19",
784
+ "category": "Confirmed",
785
+ "tone": "success",
786
+ "person": "Alan Turing"
787
+ },
788
+ {
789
+ "id": "event-6",
790
+ "title": "BK-4415 · Conference camera",
791
+ "start": "2026-10-19",
792
+ "end": "2026-10-19",
793
+ "category": "Requested",
794
+ "tone": "warning",
795
+ "person": "Katherine Johnson"
796
+ },
797
+ {
798
+ "id": "event-7",
799
+ "title": "BK-4416 · Fjord meeting room",
800
+ "start": "2026-10-20",
801
+ "end": "2026-10-20",
802
+ "category": "Requested",
803
+ "tone": "warning",
804
+ "person": "Katherine Johnson"
805
+ },
806
+ {
807
+ "id": "event-8",
808
+ "title": "BK-4417 · Quiet room",
809
+ "start": "2026-10-21",
810
+ "end": "2026-10-21",
811
+ "category": "Confirmed",
812
+ "tone": "success",
813
+ "person": "Grace Hopper"
814
+ },
815
+ {
816
+ "id": "event-9",
817
+ "title": "BK-4418 · Workshop studio",
818
+ "start": "2026-10-22",
819
+ "end": "2026-10-22",
820
+ "category": "Requested",
821
+ "tone": "warning",
822
+ "person": "Grace Hopper"
823
+ },
824
+ {
825
+ "id": "event-10",
826
+ "title": "BK-4419 · Pool car, electric",
827
+ "start": "2026-10-23",
828
+ "end": "2026-10-23",
829
+ "category": "Confirmed",
830
+ "tone": "success",
831
+ "person": "Alan Turing"
832
+ },
833
+ {
834
+ "id": "event-11",
835
+ "title": "BK-4409 · Aurora meeting room",
836
+ "start": "2026-10-14",
837
+ "end": "2026-10-14",
838
+ "category": "Completed",
839
+ "tone": "neutral",
840
+ "person": "Grace Hopper"
841
+ }
842
+ ]
843
+ },
844
+ {
845
+ "shape": "BookingEventColumns",
846
+ "rows": [
847
+ {
848
+ "field": "title",
849
+ "header": "Booking"
850
+ },
851
+ {
852
+ "field": "start",
853
+ "header": "Date",
854
+ "kind": "date"
855
+ },
856
+ {
857
+ "field": "category",
858
+ "header": "Status"
859
+ },
860
+ {
861
+ "field": "person",
862
+ "header": "Booked by"
863
+ }
864
+ ]
865
+ },
866
+ {
867
+ "shape": "BookingWizardSteps",
868
+ "rows": [
869
+ {
870
+ "id": "resource",
871
+ "label": "Resource"
872
+ },
873
+ {
874
+ "id": "when",
875
+ "label": "When"
876
+ },
877
+ {
878
+ "id": "details",
879
+ "label": "Details"
880
+ },
881
+ {
882
+ "id": "review",
883
+ "label": "Review"
884
+ }
885
+ ]
886
+ },
887
+ {
888
+ "shape": "BookingResourceSections",
889
+ "rows": [
890
+ {
891
+ "id": "resource",
892
+ "title": "What do you need?",
893
+ "columns": 2,
894
+ "fields": [
895
+ {
896
+ "name": "type",
897
+ "label": "Type",
898
+ "type": "select",
899
+ "options": [
900
+ "Room",
901
+ "Equipment",
902
+ "Vehicle"
903
+ ],
904
+ "required": true
905
+ },
906
+ {
907
+ "name": "resource",
908
+ "label": "Resource",
909
+ "type": "select",
910
+ "options": [
911
+ "Fjord meeting room",
912
+ "Aurora meeting room",
913
+ "Workshop studio",
914
+ "Quiet room",
915
+ "Projector kit",
916
+ "Conference camera",
917
+ "Pool car, electric",
918
+ "Cargo van"
919
+ ],
920
+ "required": true
921
+ },
922
+ {
923
+ "name": "people",
924
+ "label": "Number of people",
925
+ "type": "number"
926
+ }
927
+ ]
928
+ }
929
+ ]
930
+ },
931
+ {
932
+ "shape": "BookingWhenSections",
933
+ "rows": [
934
+ {
935
+ "id": "when",
936
+ "title": "When do you need it?",
937
+ "columns": 2,
938
+ "fields": [
939
+ {
940
+ "name": "date",
941
+ "label": "Date",
942
+ "type": "date",
943
+ "required": true
944
+ },
945
+ {
946
+ "name": "from",
947
+ "label": "From",
948
+ "type": "text",
949
+ "required": true
950
+ },
951
+ {
952
+ "name": "until",
953
+ "label": "Until",
954
+ "type": "text",
955
+ "required": true
956
+ },
957
+ {
958
+ "name": "repeat",
959
+ "label": "Repeat",
960
+ "type": "select",
961
+ "options": [
962
+ "Does not repeat",
963
+ "Every week",
964
+ "Every month"
965
+ ]
966
+ }
967
+ ]
968
+ }
969
+ ]
970
+ },
971
+ {
972
+ "shape": "BookingDetailSections",
973
+ "rows": [
974
+ {
975
+ "id": "details",
976
+ "title": "A few details",
977
+ "columns": 1,
978
+ "fields": [
979
+ {
980
+ "name": "title",
981
+ "label": "What is it for?",
982
+ "type": "text",
983
+ "required": true
984
+ },
985
+ {
986
+ "name": "attendees",
987
+ "label": "Attendees",
988
+ "type": "multiSelect",
989
+ "options": [
990
+ "Grace Hopper",
991
+ "Alan Turing",
992
+ "Katherine Johnson"
993
+ ]
994
+ },
995
+ {
996
+ "name": "notes",
997
+ "label": "Notes",
998
+ "type": "textarea"
999
+ }
1000
+ ]
1001
+ }
1002
+ ]
1003
+ },
1004
+ {
1005
+ "shape": "BookingReviewSections",
1006
+ "rows": [
1007
+ {
1008
+ "id": "review",
1009
+ "title": "Check your booking",
1010
+ "columns": 2,
1011
+ "fields": [
1012
+ {
1013
+ "name": "resource",
1014
+ "label": "Resource"
1015
+ },
1016
+ {
1017
+ "name": "date",
1018
+ "label": "Date",
1019
+ "type": "date"
1020
+ },
1021
+ {
1022
+ "name": "from",
1023
+ "label": "From"
1024
+ },
1025
+ {
1026
+ "name": "until",
1027
+ "label": "Until"
1028
+ },
1029
+ {
1030
+ "name": "title",
1031
+ "label": "What is it for?",
1032
+ "span": 2
1033
+ }
1034
+ ]
1035
+ }
1036
+ ]
1037
+ },
1038
+ {
1039
+ "shape": "BookingReviewValues",
1040
+ "rows": [
1041
+ {
1042
+ "resource": "Aurora meeting room",
1043
+ "date": "2026-10-19",
1044
+ "from": "10:00",
1045
+ "until": "11:30",
1046
+ "title": "Design review"
1047
+ }
1048
+ ]
1049
+ },
1050
+ {
1051
+ "shape": "BookingsFormErrors",
1052
+ "rows": [
1053
+ {}
1054
+ ]
1055
+ }
1056
+ ]
1057
+ }