@cratis/scene.blueprint.contracts 0.0.0-stage → 4.71.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 (132) hide show
  1. package/README.md +66 -2
  2. package/blueprint.ts +16 -0
  3. package/blueprintCatalog.json +107 -0
  4. package/contractsApplication.ts +28 -0
  5. package/contractsParts.ts +58 -0
  6. package/contractsQueries.ts +56 -0
  7. package/contractsScreenSet.ts +21 -0
  8. package/dist/cjs/blueprint.js +19 -0
  9. package/dist/cjs/blueprint.js.map +1 -0
  10. package/dist/cjs/contractsApplication.js +49 -0
  11. package/dist/cjs/contractsApplication.js.map +1 -0
  12. package/dist/cjs/contractsParts.js +151 -0
  13. package/dist/cjs/contractsParts.js.map +1 -0
  14. package/dist/cjs/contractsQueries.js +64 -0
  15. package/dist/cjs/contractsQueries.js.map +1 -0
  16. package/dist/cjs/contractsScreenSet.js +40 -0
  17. package/dist/cjs/contractsScreenSet.js.map +1 -0
  18. package/dist/cjs/index.js +68 -0
  19. package/dist/cjs/index.js.map +1 -0
  20. package/dist/cjs/manifest.js +88 -0
  21. package/dist/cjs/manifest.js.map +1 -0
  22. package/dist/cjs/navigation.js +109 -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/formTemplates.js +50 -0
  32. package/dist/cjs/templates/formTemplates.js.map +1 -0
  33. package/dist/cjs/templates/inboxTemplate.js +55 -0
  34. package/dist/cjs/templates/inboxTemplate.js.map +1 -0
  35. package/dist/cjs/templates/index.js +25 -0
  36. package/dist/cjs/templates/index.js.map +1 -0
  37. package/dist/cjs/templates/listTemplates.js +145 -0
  38. package/dist/cjs/templates/listTemplates.js.map +1 -0
  39. package/dist/cjs/templates/recordTemplates.js +135 -0
  40. package/dist/cjs/templates/recordTemplates.js.map +1 -0
  41. package/dist/cjs/templates/timelineTemplate.js +85 -0
  42. package/dist/cjs/templates/timelineTemplate.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/contractsApplication.d.ts +10 -0
  48. package/dist/esm/contractsApplication.d.ts.map +1 -0
  49. package/dist/esm/contractsApplication.js +44 -0
  50. package/dist/esm/contractsApplication.js.map +1 -0
  51. package/dist/esm/contractsParts.d.ts +16 -0
  52. package/dist/esm/contractsParts.d.ts.map +1 -0
  53. package/dist/esm/contractsParts.js +133 -0
  54. package/dist/esm/contractsParts.js.map +1 -0
  55. package/dist/esm/contractsQueries.d.ts +38 -0
  56. package/dist/esm/contractsQueries.d.ts.map +1 -0
  57. package/dist/esm/contractsQueries.js +56 -0
  58. package/dist/esm/contractsQueries.js.map +1 -0
  59. package/dist/esm/contractsScreenSet.d.ts +7 -0
  60. package/dist/esm/contractsScreenSet.d.ts.map +1 -0
  61. package/dist/esm/contractsScreenSet.js +38 -0
  62. package/dist/esm/contractsScreenSet.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 +86 -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 +105 -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/formTemplates.d.ts +3 -0
  89. package/dist/esm/templates/formTemplates.d.ts.map +1 -0
  90. package/dist/esm/templates/formTemplates.js +48 -0
  91. package/dist/esm/templates/formTemplates.js.map +1 -0
  92. package/dist/esm/templates/inboxTemplate.d.ts +3 -0
  93. package/dist/esm/templates/inboxTemplate.d.ts.map +1 -0
  94. package/dist/esm/templates/inboxTemplate.js +53 -0
  95. package/dist/esm/templates/inboxTemplate.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 +17 -0
  99. package/dist/esm/templates/index.js.map +1 -0
  100. package/dist/esm/templates/listTemplates.d.ts +3 -0
  101. package/dist/esm/templates/listTemplates.d.ts.map +1 -0
  102. package/dist/esm/templates/listTemplates.js +143 -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 +133 -0
  107. package/dist/esm/templates/recordTemplates.js.map +1 -0
  108. package/dist/esm/templates/timelineTemplate.d.ts +3 -0
  109. package/dist/esm/templates/timelineTemplate.d.ts.map +1 -0
  110. package/dist/esm/templates/timelineTemplate.js +83 -0
  111. package/dist/esm/templates/timelineTemplate.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 +53 -0
  116. package/package.json +78 -4
  117. package/packageName.ts +5 -0
  118. package/sampleData/contracts-en.json +892 -0
  119. package/screens/index.ts +20 -0
  120. package/templateProvenance.ts +15 -0
  121. package/templates/formTemplates.ts +33 -0
  122. package/templates/inboxTemplate.ts +24 -0
  123. package/templates/index.ts +18 -0
  124. package/templates/listTemplates.ts +96 -0
  125. package/templates/recordTemplates.ts +78 -0
  126. package/templates/timelineTemplate.ts +54 -0
  127. package/thumbnails/ContractPage.svg +17 -0
  128. package/thumbnails/ContractsList.svg +29 -0
  129. package/thumbnails/ContractsQuickCreateContract.svg +12 -0
  130. package/thumbnails/ContractsReview.svg +19 -0
  131. package/thumbnails/ContractsTimeline.svg +11 -0
  132. package/thumbnails/contracts.svg +14 -0
@@ -0,0 +1,892 @@
1
+ {
2
+ "id": "contracts-en",
3
+ "title": "Contracts · English",
4
+ "locale": "en-GB",
5
+ "owner": "blueprint:contracts",
6
+ "sets": [
7
+ {
8
+ "shape": "ContractsSettings",
9
+ "rows": [
10
+ {
11
+ "locale": "en-GB",
12
+ "currency": "GBP",
13
+ "today": "2026-10-15",
14
+ "firstDay": 1
15
+ }
16
+ ]
17
+ },
18
+ {
19
+ "shape": "Contracts",
20
+ "rows": [
21
+ {
22
+ "id": "contract-1",
23
+ "number": "CT-2026-014",
24
+ "title": "Annual supply of fittings",
25
+ "counterparty": "Hartwell Supply",
26
+ "type": "Supply",
27
+ "start": "2026-01-01",
28
+ "end": "2026-12-31",
29
+ "value": 184000,
30
+ "status": "Active",
31
+ "owner": "Grace Hopper"
32
+ },
33
+ {
34
+ "id": "contract-2",
35
+ "number": "CT-2026-013",
36
+ "title": "Freight and warehousing",
37
+ "counterparty": "Quayside Logistics",
38
+ "type": "Service",
39
+ "start": "2026-03-01",
40
+ "end": "2027-02-28",
41
+ "value": 215000,
42
+ "status": "Active",
43
+ "owner": "Alan Turing"
44
+ },
45
+ {
46
+ "id": "contract-3",
47
+ "number": "CT-2026-012",
48
+ "title": "Managed IT service",
49
+ "counterparty": "Lumen IT Services",
50
+ "type": "Service",
51
+ "start": "2025-11-01",
52
+ "end": "2026-10-31",
53
+ "value": 74000,
54
+ "status": "Expiring",
55
+ "owner": "Katherine Johnson"
56
+ },
57
+ {
58
+ "id": "contract-4",
59
+ "number": "CT-2026-011",
60
+ "title": "Head office lease",
61
+ "counterparty": "Strand Property",
62
+ "type": "Lease",
63
+ "start": "2024-01-01",
64
+ "end": "2028-12-31",
65
+ "value": 520000,
66
+ "status": "Active",
67
+ "owner": "Grace Hopper"
68
+ },
69
+ {
70
+ "id": "contract-5",
71
+ "number": "CT-2026-010",
72
+ "title": "Safety equipment framework",
73
+ "counterparty": "Norsk Vern",
74
+ "type": "Supply",
75
+ "start": "2026-02-01",
76
+ "end": "2027-01-31",
77
+ "value": 62000,
78
+ "status": "Active",
79
+ "owner": "Katherine Johnson"
80
+ },
81
+ {
82
+ "id": "contract-6",
83
+ "number": "CT-2026-009",
84
+ "title": "Mutual non-disclosure",
85
+ "counterparty": "Atlas Steel",
86
+ "type": "NDA",
87
+ "start": "2026-09-15",
88
+ "end": "2029-09-14",
89
+ "value": 0,
90
+ "status": "In review",
91
+ "owner": "Alan Turing"
92
+ },
93
+ {
94
+ "id": "contract-7",
95
+ "number": "CT-2026-008",
96
+ "title": "Office cleaning",
97
+ "counterparty": "Meridian Cleaning",
98
+ "type": "Service",
99
+ "start": "2026-04-01",
100
+ "end": "2027-03-31",
101
+ "value": 19000,
102
+ "status": "Active",
103
+ "owner": "Katherine Johnson"
104
+ },
105
+ {
106
+ "id": "contract-8",
107
+ "number": "CT-2026-007",
108
+ "title": "Packaging supply",
109
+ "counterparty": "Fjord Pack",
110
+ "type": "Supply",
111
+ "start": "2025-10-15",
112
+ "end": "2026-11-14",
113
+ "value": 42000,
114
+ "status": "Expiring",
115
+ "owner": "Alan Turing"
116
+ },
117
+ {
118
+ "id": "contract-9",
119
+ "number": "CT-2026-006",
120
+ "title": "Electrical components",
121
+ "counterparty": "Voltaire Electric",
122
+ "type": "Supply",
123
+ "start": "2025-06-01",
124
+ "end": "2026-08-31",
125
+ "value": 128000,
126
+ "status": "Expired",
127
+ "owner": "Grace Hopper"
128
+ },
129
+ {
130
+ "id": "contract-10",
131
+ "number": "CT-2026-005",
132
+ "title": "Pilot with Solstice Energy",
133
+ "counterparty": "Solstice Energy",
134
+ "type": "Service",
135
+ "start": "2026-10-20",
136
+ "end": "2027-04-19",
137
+ "value": 36000,
138
+ "status": "Draft",
139
+ "owner": "Katherine Johnson"
140
+ },
141
+ {
142
+ "id": "contract-11",
143
+ "number": "CT-2026-004",
144
+ "title": "Fastener supply",
145
+ "counterparty": "Bolten Fasteners",
146
+ "type": "Supply",
147
+ "start": "2025-03-01",
148
+ "end": "2026-06-30",
149
+ "value": 37500,
150
+ "status": "Terminated",
151
+ "owner": "Alan Turing"
152
+ },
153
+ {
154
+ "id": "contract-12",
155
+ "number": "CT-2026-003",
156
+ "title": "Reseller agreement",
157
+ "counterparty": "Northwind Traders",
158
+ "type": "Reseller",
159
+ "start": "2026-05-01",
160
+ "end": "2028-04-30",
161
+ "value": 0,
162
+ "status": "Active",
163
+ "owner": "Grace Hopper"
164
+ }
165
+ ]
166
+ },
167
+ {
168
+ "shape": "ContractColumns",
169
+ "rows": [
170
+ {
171
+ "field": "number",
172
+ "header": "Contract"
173
+ },
174
+ {
175
+ "field": "title",
176
+ "header": "Title"
177
+ },
178
+ {
179
+ "field": "counterparty",
180
+ "header": "Counterparty"
181
+ },
182
+ {
183
+ "field": "type",
184
+ "header": "Type"
185
+ },
186
+ {
187
+ "field": "end",
188
+ "header": "Ends",
189
+ "kind": "date"
190
+ },
191
+ {
192
+ "field": "value",
193
+ "header": "Value",
194
+ "kind": "currency"
195
+ },
196
+ {
197
+ "field": "status",
198
+ "header": "Status",
199
+ "kind": "status",
200
+ "tones": {
201
+ "Draft": "neutral",
202
+ "In review": "info",
203
+ "Active": "success",
204
+ "Expiring": "warning",
205
+ "Expired": "danger",
206
+ "Terminated": "danger"
207
+ }
208
+ }
209
+ ]
210
+ },
211
+ {
212
+ "shape": "ContractFilterFields",
213
+ "rows": [
214
+ {
215
+ "name": "status",
216
+ "label": "Status",
217
+ "type": "select",
218
+ "options": [
219
+ "Draft",
220
+ "In review",
221
+ "Active",
222
+ "Expiring",
223
+ "Expired",
224
+ "Terminated"
225
+ ]
226
+ },
227
+ {
228
+ "name": "type",
229
+ "label": "Type",
230
+ "type": "select",
231
+ "options": [
232
+ "Supply",
233
+ "Service",
234
+ "Lease",
235
+ "NDA",
236
+ "Reseller"
237
+ ]
238
+ },
239
+ {
240
+ "name": "owner",
241
+ "label": "Owner",
242
+ "type": "select",
243
+ "options": [
244
+ "Grace Hopper",
245
+ "Alan Turing",
246
+ "Katherine Johnson"
247
+ ]
248
+ },
249
+ {
250
+ "name": "end",
251
+ "label": "Ends",
252
+ "type": "date"
253
+ }
254
+ ]
255
+ },
256
+ {
257
+ "shape": "ContractViews",
258
+ "rows": [
259
+ {
260
+ "id": "all",
261
+ "label": "All contracts"
262
+ },
263
+ {
264
+ "id": "expiring",
265
+ "label": "Expiring soon"
266
+ },
267
+ {
268
+ "id": "mine",
269
+ "label": "Owned by me"
270
+ }
271
+ ]
272
+ },
273
+ {
274
+ "shape": "ContractColumnChoices",
275
+ "rows": [
276
+ {
277
+ "id": "number",
278
+ "label": "Contract",
279
+ "locked": true
280
+ },
281
+ {
282
+ "id": "title",
283
+ "label": "Title"
284
+ },
285
+ {
286
+ "id": "counterparty",
287
+ "label": "Counterparty"
288
+ },
289
+ {
290
+ "id": "type",
291
+ "label": "Type"
292
+ },
293
+ {
294
+ "id": "end",
295
+ "label": "Ends"
296
+ },
297
+ {
298
+ "id": "value",
299
+ "label": "Value"
300
+ },
301
+ {
302
+ "id": "status",
303
+ "label": "Status"
304
+ }
305
+ ]
306
+ },
307
+ {
308
+ "shape": "ContractSelection",
309
+ "rows": []
310
+ },
311
+ {
312
+ "shape": "ContractQuickSections",
313
+ "rows": [
314
+ {
315
+ "id": "quick",
316
+ "title": "New contract",
317
+ "columns": 1,
318
+ "fields": [
319
+ {
320
+ "name": "title",
321
+ "label": "Title",
322
+ "type": "text",
323
+ "required": true
324
+ },
325
+ {
326
+ "name": "counterparty",
327
+ "label": "Counterparty",
328
+ "type": "text",
329
+ "required": true
330
+ },
331
+ {
332
+ "name": "type",
333
+ "label": "Type",
334
+ "type": "select",
335
+ "options": [
336
+ "Supply",
337
+ "Service",
338
+ "Lease",
339
+ "NDA",
340
+ "Reseller"
341
+ ],
342
+ "required": true
343
+ },
344
+ {
345
+ "name": "start",
346
+ "label": "Starts",
347
+ "type": "date",
348
+ "required": true
349
+ },
350
+ {
351
+ "name": "end",
352
+ "label": "Ends",
353
+ "type": "date",
354
+ "required": true
355
+ },
356
+ {
357
+ "name": "value",
358
+ "label": "Value",
359
+ "type": "currency"
360
+ }
361
+ ]
362
+ }
363
+ ]
364
+ },
365
+ {
366
+ "shape": "ContractRecord",
367
+ "rows": [
368
+ {
369
+ "id": "contract-1",
370
+ "number": "CT-2026-014",
371
+ "title": "Annual supply of fittings",
372
+ "counterparty": "Hartwell Supply",
373
+ "type": "Supply",
374
+ "start": "2026-01-01",
375
+ "end": "2026-12-31",
376
+ "value": 184000,
377
+ "status": "Active",
378
+ "owner": "Grace Hopper",
379
+ "summary": "Fittings and fixings for every depot, priced per quarter",
380
+ "renewal": "Renews for one year unless notice is given",
381
+ "governingLaw": "England and Wales",
382
+ "billing": "Quarterly in arrears",
383
+ "daysToEnd": 77,
384
+ "noticeDays": 90
385
+ }
386
+ ]
387
+ },
388
+ {
389
+ "shape": "ContractSections",
390
+ "rows": [
391
+ {
392
+ "id": "contract",
393
+ "title": "Contract details",
394
+ "columns": 2,
395
+ "fields": [
396
+ {
397
+ "name": "number",
398
+ "label": "Contract"
399
+ },
400
+ {
401
+ "name": "title",
402
+ "label": "Title"
403
+ },
404
+ {
405
+ "name": "counterparty",
406
+ "label": "Counterparty"
407
+ },
408
+ {
409
+ "name": "type",
410
+ "label": "Type"
411
+ },
412
+ {
413
+ "name": "start",
414
+ "label": "Starts",
415
+ "type": "date"
416
+ },
417
+ {
418
+ "name": "end",
419
+ "label": "Ends",
420
+ "type": "date"
421
+ },
422
+ {
423
+ "name": "owner",
424
+ "label": "Owner"
425
+ },
426
+ {
427
+ "name": "governingLaw",
428
+ "label": "Governing law"
429
+ },
430
+ {
431
+ "name": "billing",
432
+ "label": "Billing"
433
+ },
434
+ {
435
+ "name": "renewal",
436
+ "label": "Renewal",
437
+ "span": 2
438
+ }
439
+ ]
440
+ }
441
+ ]
442
+ },
443
+ {
444
+ "shape": "ContractSummary",
445
+ "rows": [
446
+ {
447
+ "status": "Active",
448
+ "tone": "success",
449
+ "value": 184000,
450
+ "daysToEnd": 77,
451
+ "noticeDays": 90
452
+ }
453
+ ]
454
+ },
455
+ {
456
+ "shape": "ContractActivity",
457
+ "rows": [
458
+ {
459
+ "id": "a0",
460
+ "actor": "Grace Hopper",
461
+ "action": "asked for a price review before renewal",
462
+ "kind": "comment",
463
+ "at": "2026-10-10T10:15:00Z",
464
+ "body": "Notice is due by 2 October next year"
465
+ },
466
+ {
467
+ "id": "a1",
468
+ "actor": "Katherine Johnson",
469
+ "action": "signed amendment 2",
470
+ "kind": "status",
471
+ "at": "2026-07-01T09:00:00Z",
472
+ "body": "New price list from 1 July"
473
+ },
474
+ {
475
+ "id": "a2",
476
+ "actor": "Alan Turing",
477
+ "action": "uploaded the signed contract",
478
+ "kind": "created",
479
+ "at": "2025-12-19T15:30:00Z",
480
+ "body": "Both parties have signed"
481
+ }
482
+ ]
483
+ },
484
+ {
485
+ "shape": "ContractTabs",
486
+ "rows": [
487
+ {
488
+ "id": "overview",
489
+ "label": "Overview"
490
+ },
491
+ {
492
+ "id": "parties",
493
+ "label": "Parties"
494
+ },
495
+ {
496
+ "id": "obligations",
497
+ "label": "Obligations"
498
+ },
499
+ {
500
+ "id": "amendments",
501
+ "label": "Amendments"
502
+ },
503
+ {
504
+ "id": "activity",
505
+ "label": "Activity"
506
+ }
507
+ ]
508
+ },
509
+ {
510
+ "shape": "ContractParties",
511
+ "rows": [
512
+ {
513
+ "id": "p1",
514
+ "name": "Cratis Trading Ltd",
515
+ "role": "Buyer",
516
+ "signatory": "Grace Hopper",
517
+ "signed": "2025-12-18"
518
+ },
519
+ {
520
+ "id": "p2",
521
+ "name": "Hartwell Supply",
522
+ "role": "Supplier",
523
+ "signatory": "Eleanor Marsh",
524
+ "signed": "2025-12-19"
525
+ }
526
+ ]
527
+ },
528
+ {
529
+ "shape": "ContractPartiesColumns",
530
+ "rows": [
531
+ {
532
+ "field": "name",
533
+ "header": "Party"
534
+ },
535
+ {
536
+ "field": "role",
537
+ "header": "Role"
538
+ },
539
+ {
540
+ "field": "signatory",
541
+ "header": "Signatory"
542
+ },
543
+ {
544
+ "field": "signed",
545
+ "header": "Signed",
546
+ "kind": "date"
547
+ }
548
+ ]
549
+ },
550
+ {
551
+ "shape": "ContractObligations",
552
+ "rows": [
553
+ {
554
+ "id": "o1",
555
+ "clause": "4.1",
556
+ "summary": "Quarterly price review",
557
+ "owner": "Grace Hopper",
558
+ "due": "2026-12-15"
559
+ },
560
+ {
561
+ "id": "o2",
562
+ "clause": "6.3",
563
+ "summary": "Delivery within five working days",
564
+ "owner": "Alan Turing",
565
+ "due": "2026-10-31"
566
+ },
567
+ {
568
+ "id": "o3",
569
+ "clause": "9.2",
570
+ "summary": "Insurance certificate renewed every year",
571
+ "owner": "Katherine Johnson",
572
+ "due": "2026-11-30"
573
+ }
574
+ ]
575
+ },
576
+ {
577
+ "shape": "ContractObligationsColumns",
578
+ "rows": [
579
+ {
580
+ "field": "clause",
581
+ "header": "Clause"
582
+ },
583
+ {
584
+ "field": "summary",
585
+ "header": "What is promised"
586
+ },
587
+ {
588
+ "field": "owner",
589
+ "header": "Owner"
590
+ },
591
+ {
592
+ "field": "due",
593
+ "header": "Next due",
594
+ "kind": "date"
595
+ }
596
+ ]
597
+ },
598
+ {
599
+ "shape": "ContractAmendments",
600
+ "rows": [
601
+ {
602
+ "id": "m1",
603
+ "number": "Amendment 2",
604
+ "date": "2026-07-01",
605
+ "change": "New price list"
606
+ },
607
+ {
608
+ "id": "m2",
609
+ "number": "Amendment 1",
610
+ "date": "2026-03-10",
611
+ "change": "Added the Bergen depot"
612
+ }
613
+ ]
614
+ },
615
+ {
616
+ "shape": "ContractAmendmentsColumns",
617
+ "rows": [
618
+ {
619
+ "field": "number",
620
+ "header": "Amendment"
621
+ },
622
+ {
623
+ "field": "date",
624
+ "header": "Signed",
625
+ "kind": "date"
626
+ },
627
+ {
628
+ "field": "change",
629
+ "header": "What changed"
630
+ }
631
+ ]
632
+ },
633
+ {
634
+ "shape": "ContractTimelineItems",
635
+ "rows": [
636
+ {
637
+ "id": "term-1",
638
+ "title": "Annual supply of fittings",
639
+ "start": "2026-01-01",
640
+ "end": "2026-12-31",
641
+ "lane": "Hartwell Supply",
642
+ "progress": 79,
643
+ "tone": "success"
644
+ },
645
+ {
646
+ "id": "term-2",
647
+ "title": "Freight and warehousing",
648
+ "start": "2026-03-01",
649
+ "end": "2027-02-28",
650
+ "lane": "Quayside Logistics",
651
+ "progress": 63,
652
+ "tone": "success"
653
+ },
654
+ {
655
+ "id": "term-3",
656
+ "title": "Managed IT service",
657
+ "start": "2025-11-01",
658
+ "end": "2026-10-31",
659
+ "lane": "Lumen IT Services",
660
+ "progress": 96,
661
+ "tone": "warning"
662
+ },
663
+ {
664
+ "id": "term-4",
665
+ "title": "Head office lease",
666
+ "start": "2024-01-01",
667
+ "end": "2028-12-31",
668
+ "lane": "Strand Property",
669
+ "progress": 56,
670
+ "tone": "success"
671
+ },
672
+ {
673
+ "id": "term-5",
674
+ "title": "Safety equipment framework",
675
+ "start": "2026-02-01",
676
+ "end": "2027-01-31",
677
+ "lane": "Norsk Vern",
678
+ "progress": 70,
679
+ "tone": "success"
680
+ },
681
+ {
682
+ "id": "term-6",
683
+ "title": "Mutual non-disclosure",
684
+ "start": "2026-09-15",
685
+ "end": "2029-09-14",
686
+ "lane": "Atlas Steel",
687
+ "progress": 3,
688
+ "tone": "info"
689
+ },
690
+ {
691
+ "id": "term-7",
692
+ "title": "Office cleaning",
693
+ "start": "2026-04-01",
694
+ "end": "2027-03-31",
695
+ "lane": "Meridian Cleaning",
696
+ "progress": 54,
697
+ "tone": "success"
698
+ },
699
+ {
700
+ "id": "term-8",
701
+ "title": "Packaging supply",
702
+ "start": "2025-10-15",
703
+ "end": "2026-11-14",
704
+ "lane": "Fjord Pack",
705
+ "progress": 92,
706
+ "tone": "warning"
707
+ },
708
+ {
709
+ "id": "term-9",
710
+ "title": "Pilot with Solstice Energy",
711
+ "start": "2026-10-20",
712
+ "end": "2027-04-19",
713
+ "lane": "Solstice Energy",
714
+ "progress": 0,
715
+ "tone": "info"
716
+ },
717
+ {
718
+ "id": "term-10",
719
+ "title": "Reseller agreement",
720
+ "start": "2026-05-01",
721
+ "end": "2028-04-30",
722
+ "lane": "Northwind Traders",
723
+ "progress": 23,
724
+ "tone": "success"
725
+ },
726
+ {
727
+ "id": "notice-1",
728
+ "title": "Notice date: Freight and warehousing",
729
+ "start": "2026-11-30",
730
+ "end": "2026-11-30",
731
+ "lane": "Quayside Logistics",
732
+ "milestone": true,
733
+ "tone": "neutral",
734
+ "dependsOn": [
735
+ "term-2"
736
+ ]
737
+ },
738
+ {
739
+ "id": "notice-2",
740
+ "title": "Notice date: Managed IT service",
741
+ "start": "2026-07-31",
742
+ "end": "2026-07-31",
743
+ "lane": "Lumen IT Services",
744
+ "milestone": true,
745
+ "tone": "warning",
746
+ "dependsOn": [
747
+ "term-3"
748
+ ]
749
+ }
750
+ ]
751
+ },
752
+ {
753
+ "shape": "ContractTimelineColumns",
754
+ "rows": [
755
+ {
756
+ "field": "title",
757
+ "header": "Term"
758
+ },
759
+ {
760
+ "field": "lane",
761
+ "header": "Counterparty"
762
+ },
763
+ {
764
+ "field": "start",
765
+ "header": "Starts",
766
+ "kind": "date"
767
+ },
768
+ {
769
+ "field": "end",
770
+ "header": "Ends",
771
+ "kind": "date"
772
+ }
773
+ ]
774
+ },
775
+ {
776
+ "shape": "ContractMessages",
777
+ "rows": [
778
+ {
779
+ "id": "m1",
780
+ "title": "Review: Mutual non-disclosure with Atlas Steel",
781
+ "summary": "Legal needs your comments by Friday",
782
+ "sender": "Alan Turing",
783
+ "received": "2026-10-15T08:30:00Z",
784
+ "category": "Review",
785
+ "tone": "warning",
786
+ "unread": true
787
+ },
788
+ {
789
+ "id": "m2",
790
+ "title": "Signature: Pilot with Solstice Energy",
791
+ "summary": "Waiting for the second signatory",
792
+ "sender": "DocuSign",
793
+ "received": "2026-10-14T16:10:00Z",
794
+ "category": "Signature",
795
+ "tone": "info",
796
+ "unread": true
797
+ },
798
+ {
799
+ "id": "m3",
800
+ "title": "Renewal: Managed IT service ends 31 October",
801
+ "summary": "Notice date has passed, renews unless you act",
802
+ "sender": "Contracts",
803
+ "received": "2026-10-12T09:00:00Z",
804
+ "category": "Renewal",
805
+ "tone": "danger"
806
+ },
807
+ {
808
+ "id": "m4",
809
+ "title": "Amendment 2 signed: Annual supply of fittings",
810
+ "summary": "New price list from 1 July",
811
+ "sender": "Katherine Johnson",
812
+ "received": "2026-07-01T09:00:00Z",
813
+ "category": "Notice",
814
+ "tone": "success"
815
+ }
816
+ ]
817
+ },
818
+ {
819
+ "shape": "ContractMessageSections",
820
+ "rows": [
821
+ {
822
+ "id": "message",
823
+ "title": "Message",
824
+ "columns": 2,
825
+ "fields": [
826
+ {
827
+ "name": "title",
828
+ "label": "Subject"
829
+ },
830
+ {
831
+ "name": "sender",
832
+ "label": "From"
833
+ },
834
+ {
835
+ "name": "category",
836
+ "label": "What is needed"
837
+ },
838
+ {
839
+ "name": "received",
840
+ "label": "Received",
841
+ "type": "date"
842
+ },
843
+ {
844
+ "name": "summary",
845
+ "label": "Summary",
846
+ "span": 2
847
+ }
848
+ ]
849
+ }
850
+ ]
851
+ },
852
+ {
853
+ "shape": "ContractMessageValues",
854
+ "rows": [
855
+ {
856
+ "title": "Review: Mutual non-disclosure with Atlas Steel",
857
+ "sender": "Alan Turing",
858
+ "category": "Review",
859
+ "received": "2026-10-15",
860
+ "summary": "Legal needs your comments by Friday"
861
+ }
862
+ ]
863
+ },
864
+ {
865
+ "shape": "ContractMessageHistory",
866
+ "rows": [
867
+ {
868
+ "id": "h0",
869
+ "actor": "Alan Turing",
870
+ "action": "asked for your comments",
871
+ "kind": "comment",
872
+ "at": "2026-10-15T08:30:00Z",
873
+ "body": "Clause 7 on the term is the open point."
874
+ },
875
+ {
876
+ "id": "h1",
877
+ "actor": "Atlas Steel",
878
+ "action": "sent their draft",
879
+ "kind": "created",
880
+ "at": "2026-10-09T13:00:00Z",
881
+ "body": "Version 3, three years"
882
+ }
883
+ ]
884
+ },
885
+ {
886
+ "shape": "ContractsFormErrors",
887
+ "rows": [
888
+ {}
889
+ ]
890
+ }
891
+ ]
892
+ }