@cratis/scene.blueprint.approvals 0.0.0-stage → 4.53.1

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 (130) hide show
  1. package/README.md +66 -2
  2. package/approvalsApplication.ts +28 -0
  3. package/approvalsParts.ts +50 -0
  4. package/approvalsQueries.ts +58 -0
  5. package/approvalsScreenSet.ts +24 -0
  6. package/blueprint.ts +16 -0
  7. package/blueprintCatalog.json +171 -0
  8. package/dist/cjs/approvalsApplication.js +49 -0
  9. package/dist/cjs/approvalsApplication.js.map +1 -0
  10. package/dist/cjs/approvalsParts.js +131 -0
  11. package/dist/cjs/approvalsParts.js.map +1 -0
  12. package/dist/cjs/approvalsQueries.js +68 -0
  13. package/dist/cjs/approvalsQueries.js.map +1 -0
  14. package/dist/cjs/approvalsScreenSet.js +61 -0
  15. package/dist/cjs/approvalsScreenSet.js.map +1 -0
  16. package/dist/cjs/blueprint.js +19 -0
  17. package/dist/cjs/blueprint.js.map +1 -0
  18. package/dist/cjs/index.js +67 -0
  19. package/dist/cjs/index.js.map +1 -0
  20. package/dist/cjs/manifest.js +71 -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 +23 -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 +111 -0
  32. package/dist/cjs/templates/formTemplates.js.map +1 -0
  33. package/dist/cjs/templates/index.js +31 -0
  34. package/dist/cjs/templates/index.js.map +1 -0
  35. package/dist/cjs/templates/listTemplates.js +221 -0
  36. package/dist/cjs/templates/listTemplates.js.map +1 -0
  37. package/dist/cjs/templates/recordTemplates.js +97 -0
  38. package/dist/cjs/templates/recordTemplates.js.map +1 -0
  39. package/dist/cjs/templates/wizardTemplate.js +77 -0
  40. package/dist/cjs/templates/wizardTemplate.js.map +1 -0
  41. package/dist/esm/approvalsApplication.d.ts +10 -0
  42. package/dist/esm/approvalsApplication.d.ts.map +1 -0
  43. package/dist/esm/approvalsApplication.js +44 -0
  44. package/dist/esm/approvalsApplication.js.map +1 -0
  45. package/dist/esm/approvalsParts.d.ts +13 -0
  46. package/dist/esm/approvalsParts.d.ts.map +1 -0
  47. package/dist/esm/approvalsParts.js +114 -0
  48. package/dist/esm/approvalsParts.js.map +1 -0
  49. package/dist/esm/approvalsQueries.d.ts +51 -0
  50. package/dist/esm/approvalsQueries.d.ts.map +1 -0
  51. package/dist/esm/approvalsQueries.js +63 -0
  52. package/dist/esm/approvalsQueries.js.map +1 -0
  53. package/dist/esm/approvalsScreenSet.d.ts +7 -0
  54. package/dist/esm/approvalsScreenSet.d.ts.map +1 -0
  55. package/dist/esm/approvalsScreenSet.js +59 -0
  56. package/dist/esm/approvalsScreenSet.js.map +1 -0
  57. package/dist/esm/blueprint.d.ts +3 -0
  58. package/dist/esm/blueprint.d.ts.map +1 -0
  59. package/dist/esm/blueprint.js +17 -0
  60. package/dist/esm/blueprint.js.map +1 -0
  61. package/dist/esm/index.d.ts +12 -0
  62. package/dist/esm/index.d.ts.map +1 -0
  63. package/dist/esm/index.js +17 -0
  64. package/dist/esm/index.js.map +1 -0
  65. package/dist/esm/manifest.d.ts +3 -0
  66. package/dist/esm/manifest.d.ts.map +1 -0
  67. package/dist/esm/manifest.js +69 -0
  68. package/dist/esm/manifest.js.map +1 -0
  69. package/dist/esm/navigation.d.ts +5 -0
  70. package/dist/esm/navigation.d.ts.map +1 -0
  71. package/dist/esm/navigation.js +113 -0
  72. package/dist/esm/navigation.js.map +1 -0
  73. package/dist/esm/package.json +3 -0
  74. package/dist/esm/packageName.d.ts +2 -0
  75. package/dist/esm/packageName.d.ts.map +1 -0
  76. package/dist/esm/packageName.js +6 -0
  77. package/dist/esm/packageName.js.map +1 -0
  78. package/dist/esm/screens/index.d.ts +3 -0
  79. package/dist/esm/screens/index.d.ts.map +1 -0
  80. package/dist/esm/screens/index.js +21 -0
  81. package/dist/esm/screens/index.js.map +1 -0
  82. package/dist/esm/templateProvenance.d.ts +3 -0
  83. package/dist/esm/templateProvenance.d.ts.map +1 -0
  84. package/dist/esm/templateProvenance.js +22 -0
  85. package/dist/esm/templateProvenance.js.map +1 -0
  86. package/dist/esm/templates/formTemplates.d.ts +6 -0
  87. package/dist/esm/templates/formTemplates.d.ts.map +1 -0
  88. package/dist/esm/templates/formTemplates.js +106 -0
  89. package/dist/esm/templates/formTemplates.js.map +1 -0
  90. package/dist/esm/templates/index.d.ts +7 -0
  91. package/dist/esm/templates/index.d.ts.map +1 -0
  92. package/dist/esm/templates/index.js +20 -0
  93. package/dist/esm/templates/index.js.map +1 -0
  94. package/dist/esm/templates/listTemplates.d.ts +6 -0
  95. package/dist/esm/templates/listTemplates.d.ts.map +1 -0
  96. package/dist/esm/templates/listTemplates.js +216 -0
  97. package/dist/esm/templates/listTemplates.js.map +1 -0
  98. package/dist/esm/templates/recordTemplates.d.ts +3 -0
  99. package/dist/esm/templates/recordTemplates.d.ts.map +1 -0
  100. package/dist/esm/templates/recordTemplates.js +95 -0
  101. package/dist/esm/templates/recordTemplates.js.map +1 -0
  102. package/dist/esm/templates/wizardTemplate.d.ts +3 -0
  103. package/dist/esm/templates/wizardTemplate.d.ts.map +1 -0
  104. package/dist/esm/templates/wizardTemplate.js +75 -0
  105. package/dist/esm/templates/wizardTemplate.js.map +1 -0
  106. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  107. package/index.ts +14 -0
  108. package/manifest.ts +44 -0
  109. package/navigation.ts +54 -0
  110. package/package.json +78 -4
  111. package/packageName.ts +5 -0
  112. package/sampleData/approvals-general.json +1269 -0
  113. package/sampleData/approvals-nordic.json +1269 -0
  114. package/screens/index.ts +21 -0
  115. package/templateProvenance.ts +15 -0
  116. package/templates/formTemplates.ts +61 -0
  117. package/templates/index.ts +19 -0
  118. package/templates/listTemplates.ts +116 -0
  119. package/templates/recordTemplates.ts +45 -0
  120. package/templates/wizardTemplate.ts +33 -0
  121. package/thumbnails/AllRequests.svg +13 -0
  122. package/thumbnails/ApprovalInbox.svg +23 -0
  123. package/thumbnails/DecisionDialog.svg +11 -0
  124. package/thumbnails/MyRequests.svg +13 -0
  125. package/thumbnails/NewRequestWizard.svg +14 -0
  126. package/thumbnails/RequestPage.svg +11 -0
  127. package/thumbnails/RequestTypeEditForm.svg +14 -0
  128. package/thumbnails/RequestTypeQuickCreate.svg +11 -0
  129. package/thumbnails/RequestTypes.svg +13 -0
  130. package/thumbnails/approvals.svg +9 -0
@@ -0,0 +1,1269 @@
1
+ {
2
+ "id": "approvals-nordic",
3
+ "title": "Approvals · Nordic",
4
+ "locale": "nb-NO",
5
+ "owner": "blueprint:approvals",
6
+ "sets": [
7
+ {
8
+ "shape": "ApprovalsSettings",
9
+ "rows": [
10
+ {
11
+ "locale": "nb-NO",
12
+ "currency": "NOK"
13
+ }
14
+ ]
15
+ },
16
+ {
17
+ "shape": "InboxRequests",
18
+ "rows": [
19
+ {
20
+ "id": "req-1",
21
+ "reference": "R-2050",
22
+ "title": "Permisjon: Magnus Dahl",
23
+ "type": "Permisjon",
24
+ "requester": "Magnus Dahl",
25
+ "approver": "Sofie Berg",
26
+ "status": "Sendt inn",
27
+ "tone": "info",
28
+ "amount": 1860,
29
+ "amountLabel": "Beløp",
30
+ "submitted": "2026-10-01",
31
+ "waiting": "2 t",
32
+ "dates": "3.-7. nov",
33
+ "step": "Manager",
34
+ "detail": "Magnus Dahl - Permisjon - 2 t"
35
+ },
36
+ {
37
+ "id": "req-2",
38
+ "reference": "R-2051",
39
+ "title": "Utlegg: Sofie Berg",
40
+ "type": "Utlegg",
41
+ "requester": "Sofie Berg",
42
+ "approver": "Henrik Lund",
43
+ "status": "Sendt inn",
44
+ "tone": "warning",
45
+ "amount": 1240,
46
+ "amountLabel": "Beløp",
47
+ "submitted": "2026-10-02",
48
+ "waiting": "1 d",
49
+ "dates": "12. okt",
50
+ "step": "Finance",
51
+ "detail": "Sofie Berg - Utlegg - 1 d"
52
+ },
53
+ {
54
+ "id": "req-3",
55
+ "reference": "R-2052",
56
+ "title": "Innkjøp: Henrik Lund",
57
+ "type": "Innkjøp",
58
+ "requester": "Henrik Lund",
59
+ "approver": "Kari Nordmann",
60
+ "status": "Sendt inn",
61
+ "tone": "info",
62
+ "amount": 18500,
63
+ "amountLabel": "Beløp",
64
+ "submitted": "2026-10-03",
65
+ "waiting": "3 d",
66
+ "dates": "20.-24. okt",
67
+ "step": "Director",
68
+ "detail": "Henrik Lund - Innkjøp - 3 d"
69
+ },
70
+ {
71
+ "id": "req-6",
72
+ "reference": "R-2055",
73
+ "title": "Permisjon: Ingrid Solberg",
74
+ "type": "Permisjon",
75
+ "requester": "Ingrid Solberg",
76
+ "approver": "Magnus Dahl",
77
+ "status": "Sendt inn",
78
+ "tone": "warning",
79
+ "amount": 9400,
80
+ "amountLabel": "Beløp",
81
+ "submitted": "2026-10-06",
82
+ "waiting": "6 d",
83
+ "dates": "3.-7. nov",
84
+ "step": "Director",
85
+ "detail": "Ingrid Solberg - Permisjon - 6 d"
86
+ },
87
+ {
88
+ "id": "req-10",
89
+ "reference": "R-2059",
90
+ "title": "Fakturagodkjenning: Kari Nordmann",
91
+ "type": "Fakturagodkjenning",
92
+ "requester": "Kari Nordmann",
93
+ "approver": "Ola Hansen",
94
+ "status": "Sendt inn",
95
+ "tone": "warning",
96
+ "amount": 76000,
97
+ "amountLabel": "Beløp",
98
+ "submitted": "2026-10-10",
99
+ "waiting": "3 t",
100
+ "dates": "2.-3. des",
101
+ "step": "Manager",
102
+ "detail": "Kari Nordmann - Fakturagodkjenning - 3 t"
103
+ }
104
+ ]
105
+ },
106
+ {
107
+ "shape": "InboxColumns",
108
+ "rows": [
109
+ {
110
+ "field": "title",
111
+ "header": "Forespørsel"
112
+ },
113
+ {
114
+ "field": "requester",
115
+ "header": "Forespurt av"
116
+ },
117
+ {
118
+ "field": "amount",
119
+ "header": "Beløp",
120
+ "kind": "currency",
121
+ "currency": "NOK"
122
+ },
123
+ {
124
+ "field": "waiting",
125
+ "header": "Ventet"
126
+ },
127
+ {
128
+ "field": "submitted",
129
+ "header": "Sendt inn",
130
+ "kind": "date"
131
+ }
132
+ ]
133
+ },
134
+ {
135
+ "shape": "InboxFilterFields",
136
+ "rows": [
137
+ {
138
+ "name": "type",
139
+ "label": "Type",
140
+ "type": "select",
141
+ "options": [
142
+ "Permisjon",
143
+ "Utlegg",
144
+ "Innkjøp",
145
+ "Reise",
146
+ "Fakturagodkjenning"
147
+ ]
148
+ },
149
+ {
150
+ "name": "requester",
151
+ "label": "Forespurt av",
152
+ "type": "select",
153
+ "options": [
154
+ "Ingrid Solberg",
155
+ "Magnus Dahl",
156
+ "Sofie Berg",
157
+ "Henrik Lund",
158
+ "Kari Nordmann",
159
+ "Ola Hansen"
160
+ ]
161
+ },
162
+ {
163
+ "name": "submitted",
164
+ "label": "Sendt inn",
165
+ "type": "date"
166
+ }
167
+ ]
168
+ },
169
+ {
170
+ "shape": "InboxViews",
171
+ "rows": [
172
+ {
173
+ "id": "all",
174
+ "label": "Alle ventende"
175
+ },
176
+ {
177
+ "id": "overdue",
178
+ "label": "Forfalt"
179
+ },
180
+ {
181
+ "id": "mine",
182
+ "label": "Store beløp"
183
+ }
184
+ ]
185
+ },
186
+ {
187
+ "shape": "MyRequests",
188
+ "rows": [
189
+ {
190
+ "id": "mine-1",
191
+ "reference": "R-2050",
192
+ "title": "Permisjon: Ingrid Solberg",
193
+ "type": "Permisjon",
194
+ "requester": "Ingrid Solberg",
195
+ "approver": "Sofie Berg",
196
+ "status": "Sendt inn",
197
+ "tone": "info",
198
+ "amount": 1860,
199
+ "amountLabel": "Beløp",
200
+ "submitted": "2026-10-01",
201
+ "waiting": "2 t",
202
+ "dates": "3.-7. nov",
203
+ "step": "Manager"
204
+ },
205
+ {
206
+ "id": "mine-2",
207
+ "reference": "R-2051",
208
+ "title": "Utlegg: Ingrid Solberg",
209
+ "type": "Utlegg",
210
+ "requester": "Ingrid Solberg",
211
+ "approver": "Henrik Lund",
212
+ "status": "Godkjent",
213
+ "tone": "success",
214
+ "amount": 1240,
215
+ "amountLabel": "Beløp",
216
+ "submitted": "2026-10-02",
217
+ "waiting": "1 d",
218
+ "dates": "12. okt",
219
+ "step": "Finance"
220
+ },
221
+ {
222
+ "id": "mine-3",
223
+ "reference": "R-2052",
224
+ "title": "Innkjøp: Ingrid Solberg",
225
+ "type": "Innkjøp",
226
+ "requester": "Ingrid Solberg",
227
+ "approver": "Kari Nordmann",
228
+ "status": "Utkast",
229
+ "tone": "neutral",
230
+ "amount": 18500,
231
+ "amountLabel": "Beløp",
232
+ "submitted": "2026-10-03",
233
+ "waiting": "3 d",
234
+ "dates": "20.-24. okt",
235
+ "step": "Director"
236
+ },
237
+ {
238
+ "id": "mine-4",
239
+ "reference": "R-2053",
240
+ "title": "Reise: Ingrid Solberg",
241
+ "type": "Reise",
242
+ "requester": "Ingrid Solberg",
243
+ "approver": "Ola Hansen",
244
+ "status": "Avslått",
245
+ "tone": "danger",
246
+ "amount": 2860,
247
+ "amountLabel": "Beløp",
248
+ "submitted": "2026-10-04",
249
+ "waiting": "5 t",
250
+ "dates": "15. nov",
251
+ "step": "Manager"
252
+ },
253
+ {
254
+ "id": "mine-5",
255
+ "reference": "R-2054",
256
+ "title": "Fakturagodkjenning: Ingrid Solberg",
257
+ "type": "Fakturagodkjenning",
258
+ "requester": "Ingrid Solberg",
259
+ "approver": "Ingrid Solberg",
260
+ "status": "Endringer ønskes",
261
+ "tone": "warning",
262
+ "amount": 640,
263
+ "amountLabel": "Beløp",
264
+ "submitted": "2026-10-05",
265
+ "waiting": "2 d",
266
+ "dates": "2.-3. des",
267
+ "step": "Finance"
268
+ },
269
+ {
270
+ "id": "mine-6",
271
+ "reference": "R-2055",
272
+ "title": "Permisjon: Ingrid Solberg",
273
+ "type": "Permisjon",
274
+ "requester": "Ingrid Solberg",
275
+ "approver": "Magnus Dahl",
276
+ "status": "Sendt inn",
277
+ "tone": "info",
278
+ "amount": 9400,
279
+ "amountLabel": "Beløp",
280
+ "submitted": "2026-10-06",
281
+ "waiting": "6 d",
282
+ "dates": "3.-7. nov",
283
+ "step": "Director"
284
+ }
285
+ ]
286
+ },
287
+ {
288
+ "shape": "MyRequestColumns",
289
+ "rows": [
290
+ {
291
+ "field": "reference",
292
+ "header": "ID"
293
+ },
294
+ {
295
+ "field": "title",
296
+ "header": "Forespørsel"
297
+ },
298
+ {
299
+ "field": "status",
300
+ "header": "Status",
301
+ "kind": "status",
302
+ "tones": {
303
+ "Utkast": "neutral",
304
+ "Sendt inn": "info",
305
+ "Godkjent": "success",
306
+ "Avslått": "danger",
307
+ "Endringer ønskes": "warning"
308
+ }
309
+ },
310
+ {
311
+ "field": "approver",
312
+ "header": "Godkjenner"
313
+ },
314
+ {
315
+ "field": "amount",
316
+ "header": "Beløp",
317
+ "kind": "currency",
318
+ "currency": "NOK"
319
+ },
320
+ {
321
+ "field": "submitted",
322
+ "header": "Sendt inn",
323
+ "kind": "date"
324
+ }
325
+ ]
326
+ },
327
+ {
328
+ "shape": "MyRequestFilterFields",
329
+ "rows": [
330
+ {
331
+ "name": "status",
332
+ "label": "Status",
333
+ "type": "select",
334
+ "options": [
335
+ "Utkast",
336
+ "Sendt inn",
337
+ "Godkjent",
338
+ "Avslått",
339
+ "Endringer ønskes"
340
+ ]
341
+ },
342
+ {
343
+ "name": "type",
344
+ "label": "Type",
345
+ "type": "select",
346
+ "options": [
347
+ "Permisjon",
348
+ "Utlegg",
349
+ "Innkjøp",
350
+ "Reise",
351
+ "Fakturagodkjenning"
352
+ ]
353
+ },
354
+ {
355
+ "name": "submitted",
356
+ "label": "Sendt inn",
357
+ "type": "date"
358
+ }
359
+ ]
360
+ },
361
+ {
362
+ "shape": "MyRequestViews",
363
+ "rows": [
364
+ {
365
+ "id": "all",
366
+ "label": "Alle mine"
367
+ },
368
+ {
369
+ "id": "drafts",
370
+ "label": "Utkast"
371
+ },
372
+ {
373
+ "id": "open",
374
+ "label": "Åpne"
375
+ }
376
+ ]
377
+ },
378
+ {
379
+ "shape": "MyRequestColumnChoices",
380
+ "rows": [
381
+ {
382
+ "id": "reference",
383
+ "label": "ID",
384
+ "locked": true
385
+ },
386
+ {
387
+ "id": "title",
388
+ "label": "Forespørsel"
389
+ },
390
+ {
391
+ "id": "status",
392
+ "label": "Status"
393
+ },
394
+ {
395
+ "id": "approver",
396
+ "label": "Godkjenner"
397
+ },
398
+ {
399
+ "id": "amount",
400
+ "label": "Beløp"
401
+ },
402
+ {
403
+ "id": "submitted",
404
+ "label": "Sendt inn"
405
+ }
406
+ ]
407
+ },
408
+ {
409
+ "shape": "MyRequestSelection",
410
+ "rows": []
411
+ },
412
+ {
413
+ "shape": "AllRequests",
414
+ "rows": [
415
+ {
416
+ "id": "req-1",
417
+ "reference": "R-2050",
418
+ "title": "Permisjon: Magnus Dahl",
419
+ "type": "Permisjon",
420
+ "requester": "Magnus Dahl",
421
+ "approver": "Sofie Berg",
422
+ "status": "Sendt inn",
423
+ "tone": "info",
424
+ "amount": 1860,
425
+ "amountLabel": "Beløp",
426
+ "submitted": "2026-10-01",
427
+ "waiting": "2 t",
428
+ "dates": "3.-7. nov",
429
+ "step": "Manager"
430
+ },
431
+ {
432
+ "id": "req-2",
433
+ "reference": "R-2051",
434
+ "title": "Utlegg: Sofie Berg",
435
+ "type": "Utlegg",
436
+ "requester": "Sofie Berg",
437
+ "approver": "Henrik Lund",
438
+ "status": "Sendt inn",
439
+ "tone": "warning",
440
+ "amount": 1240,
441
+ "amountLabel": "Beløp",
442
+ "submitted": "2026-10-02",
443
+ "waiting": "1 d",
444
+ "dates": "12. okt",
445
+ "step": "Finance"
446
+ },
447
+ {
448
+ "id": "req-3",
449
+ "reference": "R-2052",
450
+ "title": "Innkjøp: Henrik Lund",
451
+ "type": "Innkjøp",
452
+ "requester": "Henrik Lund",
453
+ "approver": "Kari Nordmann",
454
+ "status": "Sendt inn",
455
+ "tone": "info",
456
+ "amount": 18500,
457
+ "amountLabel": "Beløp",
458
+ "submitted": "2026-10-03",
459
+ "waiting": "3 d",
460
+ "dates": "20.-24. okt",
461
+ "step": "Director"
462
+ },
463
+ {
464
+ "id": "req-4",
465
+ "reference": "R-2053",
466
+ "title": "Reise: Kari Nordmann",
467
+ "type": "Reise",
468
+ "requester": "Kari Nordmann",
469
+ "approver": "Ola Hansen",
470
+ "status": "Godkjent",
471
+ "tone": "success",
472
+ "amount": 2860,
473
+ "amountLabel": "Beløp",
474
+ "submitted": "2026-10-04",
475
+ "waiting": "5 t",
476
+ "dates": "15. nov",
477
+ "step": "Manager"
478
+ },
479
+ {
480
+ "id": "req-5",
481
+ "reference": "R-2054",
482
+ "title": "Fakturagodkjenning: Ola Hansen",
483
+ "type": "Fakturagodkjenning",
484
+ "requester": "Ola Hansen",
485
+ "approver": "Ingrid Solberg",
486
+ "status": "Avslått",
487
+ "tone": "danger",
488
+ "amount": 640,
489
+ "amountLabel": "Beløp",
490
+ "submitted": "2026-10-05",
491
+ "waiting": "2 d",
492
+ "dates": "2.-3. des",
493
+ "step": "Finance"
494
+ },
495
+ {
496
+ "id": "req-6",
497
+ "reference": "R-2055",
498
+ "title": "Permisjon: Ingrid Solberg",
499
+ "type": "Permisjon",
500
+ "requester": "Ingrid Solberg",
501
+ "approver": "Magnus Dahl",
502
+ "status": "Sendt inn",
503
+ "tone": "warning",
504
+ "amount": 9400,
505
+ "amountLabel": "Beløp",
506
+ "submitted": "2026-10-06",
507
+ "waiting": "6 d",
508
+ "dates": "3.-7. nov",
509
+ "step": "Director"
510
+ },
511
+ {
512
+ "id": "req-7",
513
+ "reference": "R-2056",
514
+ "title": "Utlegg: Magnus Dahl",
515
+ "type": "Utlegg",
516
+ "requester": "Magnus Dahl",
517
+ "approver": "Sofie Berg",
518
+ "status": "Utkast",
519
+ "tone": "neutral",
520
+ "amount": 2140,
521
+ "amountLabel": "Beløp",
522
+ "submitted": "2026-10-07",
523
+ "waiting": "1 t",
524
+ "dates": "12. okt",
525
+ "step": "Manager"
526
+ },
527
+ {
528
+ "id": "req-8",
529
+ "reference": "R-2057",
530
+ "title": "Innkjøp: Sofie Berg",
531
+ "type": "Innkjøp",
532
+ "requester": "Sofie Berg",
533
+ "approver": "Henrik Lund",
534
+ "status": "Endringer ønskes",
535
+ "tone": "warning",
536
+ "amount": 5200,
537
+ "amountLabel": "Beløp",
538
+ "submitted": "2026-10-08",
539
+ "waiting": "4 d",
540
+ "dates": "20.-24. okt",
541
+ "step": "Finance"
542
+ },
543
+ {
544
+ "id": "req-9",
545
+ "reference": "R-2058",
546
+ "title": "Reise: Henrik Lund",
547
+ "type": "Reise",
548
+ "requester": "Henrik Lund",
549
+ "approver": "Kari Nordmann",
550
+ "status": "Godkjent",
551
+ "tone": "success",
552
+ "amount": 320,
553
+ "amountLabel": "Beløp",
554
+ "submitted": "2026-10-09",
555
+ "waiting": "2 d",
556
+ "dates": "15. nov",
557
+ "step": "Director"
558
+ },
559
+ {
560
+ "id": "req-10",
561
+ "reference": "R-2059",
562
+ "title": "Fakturagodkjenning: Kari Nordmann",
563
+ "type": "Fakturagodkjenning",
564
+ "requester": "Kari Nordmann",
565
+ "approver": "Ola Hansen",
566
+ "status": "Sendt inn",
567
+ "tone": "warning",
568
+ "amount": 76000,
569
+ "amountLabel": "Beløp",
570
+ "submitted": "2026-10-10",
571
+ "waiting": "3 t",
572
+ "dates": "2.-3. des",
573
+ "step": "Manager"
574
+ }
575
+ ]
576
+ },
577
+ {
578
+ "shape": "AllRequestColumns",
579
+ "rows": [
580
+ {
581
+ "field": "reference",
582
+ "header": "ID"
583
+ },
584
+ {
585
+ "field": "title",
586
+ "header": "Forespørsel"
587
+ },
588
+ {
589
+ "field": "requester",
590
+ "header": "Forespurt av"
591
+ },
592
+ {
593
+ "field": "approver",
594
+ "header": "Nåværende godkjenner"
595
+ },
596
+ {
597
+ "field": "status",
598
+ "header": "Status",
599
+ "kind": "status",
600
+ "tones": {
601
+ "Utkast": "neutral",
602
+ "Sendt inn": "info",
603
+ "Godkjent": "success",
604
+ "Avslått": "danger",
605
+ "Endringer ønskes": "warning"
606
+ }
607
+ },
608
+ {
609
+ "field": "amount",
610
+ "header": "Beløp",
611
+ "kind": "currency",
612
+ "currency": "NOK"
613
+ }
614
+ ]
615
+ },
616
+ {
617
+ "shape": "AllRequestFilterFields",
618
+ "rows": [
619
+ {
620
+ "name": "status",
621
+ "label": "Status",
622
+ "type": "select",
623
+ "options": [
624
+ "Utkast",
625
+ "Sendt inn",
626
+ "Godkjent",
627
+ "Avslått",
628
+ "Endringer ønskes"
629
+ ]
630
+ },
631
+ {
632
+ "name": "type",
633
+ "label": "Type",
634
+ "type": "select",
635
+ "options": [
636
+ "Permisjon",
637
+ "Utlegg",
638
+ "Innkjøp",
639
+ "Reise",
640
+ "Fakturagodkjenning"
641
+ ]
642
+ },
643
+ {
644
+ "name": "requester",
645
+ "label": "Forespurt av",
646
+ "type": "select",
647
+ "options": [
648
+ "Ingrid Solberg",
649
+ "Magnus Dahl",
650
+ "Sofie Berg",
651
+ "Henrik Lund",
652
+ "Kari Nordmann",
653
+ "Ola Hansen"
654
+ ]
655
+ },
656
+ {
657
+ "name": "submitted",
658
+ "label": "Sendt inn",
659
+ "type": "date"
660
+ }
661
+ ]
662
+ },
663
+ {
664
+ "shape": "AllRequestViews",
665
+ "rows": [
666
+ {
667
+ "id": "all",
668
+ "label": "Alle forespørsler"
669
+ },
670
+ {
671
+ "id": "open",
672
+ "label": "Åpne"
673
+ },
674
+ {
675
+ "id": "rejected",
676
+ "label": "Avslåtte"
677
+ }
678
+ ]
679
+ },
680
+ {
681
+ "shape": "AllRequestColumnChoices",
682
+ "rows": [
683
+ {
684
+ "id": "reference",
685
+ "label": "ID",
686
+ "locked": true
687
+ },
688
+ {
689
+ "id": "title",
690
+ "label": "Forespørsel"
691
+ },
692
+ {
693
+ "id": "requester",
694
+ "label": "Forespurt av"
695
+ },
696
+ {
697
+ "id": "approver",
698
+ "label": "Nåværende godkjenner"
699
+ },
700
+ {
701
+ "id": "status",
702
+ "label": "Status"
703
+ },
704
+ {
705
+ "id": "amount",
706
+ "label": "Beløp"
707
+ }
708
+ ]
709
+ },
710
+ {
711
+ "shape": "AllRequestSelection",
712
+ "rows": []
713
+ },
714
+ {
715
+ "shape": "RequestTypes",
716
+ "rows": [
717
+ {
718
+ "id": "type-1",
719
+ "title": "Permisjon",
720
+ "name": "Permisjon",
721
+ "approvers": "Leder → HR",
722
+ "steps": 2,
723
+ "active": "Ja",
724
+ "asks": "Datoer, type permisjon og vikar"
725
+ },
726
+ {
727
+ "id": "type-2",
728
+ "title": "Utlegg",
729
+ "name": "Utlegg",
730
+ "approvers": "Leder → Økonomi",
731
+ "steps": 2,
732
+ "active": "Ja",
733
+ "asks": "Kvitteringer, beløp og kostnadssted"
734
+ },
735
+ {
736
+ "id": "type-3",
737
+ "title": "Innkjøp",
738
+ "name": "Innkjøp",
739
+ "approvers": "Leder → Økonomi → Direktør",
740
+ "steps": 3,
741
+ "active": "Ja",
742
+ "asks": "Hva, fra hvem og tilbudet"
743
+ },
744
+ {
745
+ "id": "type-4",
746
+ "title": "Reise",
747
+ "name": "Reise",
748
+ "approvers": "Leder → Økonomi",
749
+ "steps": 2,
750
+ "active": "Ja",
751
+ "asks": "Hvor, når og anslag"
752
+ },
753
+ {
754
+ "id": "type-5",
755
+ "title": "Fakturagodkjenning",
756
+ "name": "Fakturagodkjenning",
757
+ "approvers": "Økonomi → Direktør",
758
+ "steps": 2,
759
+ "active": "Nei",
760
+ "asks": "Fakturaen og bestillingen"
761
+ }
762
+ ]
763
+ },
764
+ {
765
+ "shape": "RequestTypeColumns",
766
+ "rows": [
767
+ {
768
+ "field": "name",
769
+ "header": "Navn"
770
+ },
771
+ {
772
+ "field": "approvers",
773
+ "header": "Godkjenningstrinn"
774
+ },
775
+ {
776
+ "field": "steps",
777
+ "header": "Trinn"
778
+ },
779
+ {
780
+ "field": "active",
781
+ "header": "Aktiv"
782
+ }
783
+ ]
784
+ },
785
+ {
786
+ "shape": "RequestTypeFilterFields",
787
+ "rows": [
788
+ {
789
+ "name": "active",
790
+ "label": "Aktiv",
791
+ "type": "select",
792
+ "options": [
793
+ "Ja",
794
+ "Nei"
795
+ ]
796
+ }
797
+ ]
798
+ },
799
+ {
800
+ "shape": "RequestTypeViews",
801
+ "rows": [
802
+ {
803
+ "id": "all",
804
+ "label": "Alle typer"
805
+ },
806
+ {
807
+ "id": "active",
808
+ "label": "Bare aktive"
809
+ }
810
+ ]
811
+ },
812
+ {
813
+ "shape": "RequestTypeColumnChoices",
814
+ "rows": [
815
+ {
816
+ "id": "name",
817
+ "label": "Navn",
818
+ "locked": true
819
+ },
820
+ {
821
+ "id": "approvers",
822
+ "label": "Godkjenningstrinn"
823
+ },
824
+ {
825
+ "id": "steps",
826
+ "label": "Trinn"
827
+ },
828
+ {
829
+ "id": "active",
830
+ "label": "Aktiv"
831
+ }
832
+ ]
833
+ },
834
+ {
835
+ "shape": "RequestTypeSelection",
836
+ "rows": []
837
+ },
838
+ {
839
+ "shape": "RequestWizardSteps",
840
+ "rows": [
841
+ {
842
+ "id": "type",
843
+ "label": "Type forespørsel",
844
+ "valid": true
845
+ },
846
+ {
847
+ "id": "details",
848
+ "label": "Detaljer",
849
+ "valid": true
850
+ },
851
+ {
852
+ "id": "attachments",
853
+ "label": "Vedlegg",
854
+ "valid": true
855
+ },
856
+ {
857
+ "id": "review",
858
+ "label": "Se over og send inn",
859
+ "valid": true
860
+ }
861
+ ]
862
+ },
863
+ {
864
+ "shape": "RequestTypeSections",
865
+ "rows": [
866
+ {
867
+ "id": "type",
868
+ "title": "Type forespørsel",
869
+ "columns": 1,
870
+ "fields": [
871
+ {
872
+ "name": "type",
873
+ "label": "Type forespørsel",
874
+ "type": "select",
875
+ "options": [
876
+ "Permisjon",
877
+ "Utlegg",
878
+ "Innkjøp",
879
+ "Reise",
880
+ "Fakturagodkjenning"
881
+ ],
882
+ "required": true
883
+ },
884
+ {
885
+ "name": "note",
886
+ "label": "Typen avgjør hva neste steg spør om og hvem som godkjenner."
887
+ }
888
+ ]
889
+ }
890
+ ]
891
+ },
892
+ {
893
+ "shape": "RequestDetailSections",
894
+ "rows": [
895
+ {
896
+ "id": "details",
897
+ "title": "Detaljer",
898
+ "columns": 2,
899
+ "fields": [
900
+ {
901
+ "name": "title",
902
+ "label": "Forespørsel",
903
+ "required": true,
904
+ "span": 2
905
+ },
906
+ {
907
+ "name": "amount",
908
+ "label": "Beløp",
909
+ "type": "currency"
910
+ },
911
+ {
912
+ "name": "from",
913
+ "label": "Fra",
914
+ "type": "date",
915
+ "required": true
916
+ },
917
+ {
918
+ "name": "to",
919
+ "label": "Til",
920
+ "type": "date"
921
+ },
922
+ {
923
+ "name": "reason",
924
+ "label": "Begrunnelse",
925
+ "type": "richText",
926
+ "span": 2,
927
+ "required": true
928
+ }
929
+ ]
930
+ }
931
+ ]
932
+ },
933
+ {
934
+ "shape": "RequestReviewValues",
935
+ "rows": [
936
+ {
937
+ "id": "req-1",
938
+ "reference": "R-2050",
939
+ "title": "Permisjon: Ingrid Solberg",
940
+ "type": "Permisjon",
941
+ "requester": "Magnus Dahl",
942
+ "approver": "Sofie Berg",
943
+ "status": "Sendt inn",
944
+ "tone": "info",
945
+ "amount": 1860,
946
+ "amountLabel": "Beløp",
947
+ "submitted": "2026-10-01",
948
+ "waiting": "2 t",
949
+ "dates": "3.-7. nov",
950
+ "step": "Manager",
951
+ "from": "2026-11-03",
952
+ "to": "2026-11-07",
953
+ "reason": "<p>Ferie avtalt med teamet; vikar er ordnet.</p>"
954
+ }
955
+ ]
956
+ },
957
+ {
958
+ "shape": "RequestReviewSections",
959
+ "rows": [
960
+ {
961
+ "id": "review",
962
+ "title": "Se over og send inn",
963
+ "columns": 2,
964
+ "fields": [
965
+ {
966
+ "name": "type",
967
+ "label": "Type forespørsel"
968
+ },
969
+ {
970
+ "name": "title",
971
+ "label": "Forespørsel",
972
+ "span": 2
973
+ },
974
+ {
975
+ "name": "amount",
976
+ "label": "Beløp",
977
+ "type": "currency"
978
+ },
979
+ {
980
+ "name": "from",
981
+ "label": "Fra",
982
+ "type": "date"
983
+ },
984
+ {
985
+ "name": "to",
986
+ "label": "Til",
987
+ "type": "date"
988
+ },
989
+ {
990
+ "name": "reason",
991
+ "label": "Begrunnelse",
992
+ "type": "richText",
993
+ "span": 2
994
+ }
995
+ ]
996
+ }
997
+ ]
998
+ },
999
+ {
1000
+ "shape": "RequestRecord",
1001
+ "rows": [
1002
+ {
1003
+ "id": "req-2",
1004
+ "reference": "R-2051",
1005
+ "title": "Utlegg: Sofie Berg",
1006
+ "type": "Utlegg",
1007
+ "requester": "Sofie Berg",
1008
+ "approver": "Henrik Lund",
1009
+ "status": "Sendt inn",
1010
+ "tone": "warning",
1011
+ "amount": 1240,
1012
+ "amountLabel": "Beløp",
1013
+ "submitted": "2026-10-02",
1014
+ "waiting": "1 d",
1015
+ "dates": "12. okt",
1016
+ "step": "Finance",
1017
+ "from": "2026-11-03",
1018
+ "to": "2026-11-07",
1019
+ "reason": "<p>Ferie avtalt med teamet; vikar er ordnet.</p>",
1020
+ "department": "Drift",
1021
+ "costCentre": "4120"
1022
+ }
1023
+ ]
1024
+ },
1025
+ {
1026
+ "shape": "RequestSummary",
1027
+ "rows": [
1028
+ {
1029
+ "status": "Sendt inn",
1030
+ "tone": "info",
1031
+ "amount": 1240,
1032
+ "amountLabel": "Beløp",
1033
+ "people": [
1034
+ {
1035
+ "name": "Sofie Berg"
1036
+ },
1037
+ {
1038
+ "name": "Henrik Lund"
1039
+ }
1040
+ ]
1041
+ }
1042
+ ]
1043
+ },
1044
+ {
1045
+ "shape": "RequestSections",
1046
+ "rows": [
1047
+ {
1048
+ "id": "request",
1049
+ "title": "Om forespørselen",
1050
+ "columns": 2,
1051
+ "fields": [
1052
+ {
1053
+ "name": "type",
1054
+ "label": "Type forespørsel"
1055
+ },
1056
+ {
1057
+ "name": "requester",
1058
+ "label": "Forespurt av"
1059
+ },
1060
+ {
1061
+ "name": "department",
1062
+ "label": "Avdeling"
1063
+ },
1064
+ {
1065
+ "name": "costCentre",
1066
+ "label": "Kostnadssted"
1067
+ },
1068
+ {
1069
+ "name": "from",
1070
+ "label": "Fra",
1071
+ "type": "date"
1072
+ },
1073
+ {
1074
+ "name": "to",
1075
+ "label": "Til",
1076
+ "type": "date"
1077
+ },
1078
+ {
1079
+ "name": "reason",
1080
+ "label": "Begrunnelse",
1081
+ "type": "richText",
1082
+ "span": 2
1083
+ }
1084
+ ]
1085
+ }
1086
+ ]
1087
+ },
1088
+ {
1089
+ "shape": "RequestChain",
1090
+ "rows": [
1091
+ {
1092
+ "label": "Leder",
1093
+ "approver": "Sofie Berg",
1094
+ "state": "approved",
1095
+ "at": "2026-10-03T09:15:00Z",
1096
+ "comment": "Greit for meg."
1097
+ },
1098
+ {
1099
+ "label": "Økonomi",
1100
+ "approver": "Henrik Lund",
1101
+ "state": "current"
1102
+ },
1103
+ {
1104
+ "label": "Direktør",
1105
+ "approver": "Magnus Dahl",
1106
+ "state": "pending"
1107
+ }
1108
+ ]
1109
+ },
1110
+ {
1111
+ "shape": "RequestAttachments",
1112
+ "rows": [
1113
+ {
1114
+ "id": "a1",
1115
+ "name": "Kvittering-2026-10-02.pdf",
1116
+ "size": "184 KB",
1117
+ "added": "2026-10-02",
1118
+ "owner": "Sofie Berg"
1119
+ },
1120
+ {
1121
+ "id": "a2",
1122
+ "name": "Tilbud-Fjordtech.pdf",
1123
+ "size": "1.2 MB",
1124
+ "added": "2026-10-02",
1125
+ "owner": "Sofie Berg"
1126
+ }
1127
+ ]
1128
+ },
1129
+ {
1130
+ "shape": "AttachmentColumns",
1131
+ "rows": [
1132
+ {
1133
+ "field": "name",
1134
+ "header": "Fil"
1135
+ },
1136
+ {
1137
+ "field": "size",
1138
+ "header": "Størrelse"
1139
+ },
1140
+ {
1141
+ "field": "owner",
1142
+ "header": "Lagt til av"
1143
+ },
1144
+ {
1145
+ "field": "added",
1146
+ "header": "Lagt til",
1147
+ "kind": "date"
1148
+ }
1149
+ ]
1150
+ },
1151
+ {
1152
+ "shape": "RequestComments",
1153
+ "rows": [
1154
+ {
1155
+ "id": "Henrik Lund-14",
1156
+ "actor": "Henrik Lund",
1157
+ "action": "stilte et spørsmål",
1158
+ "kind": "comment",
1159
+ "at": "2026-10-14T09:30:00Z",
1160
+ "body": "Er tilbudet fortsatt gyldig etter 30. oktober?"
1161
+ },
1162
+ {
1163
+ "id": "Sofie Berg-3",
1164
+ "actor": "Sofie Berg",
1165
+ "action": "godkjente lederleddet",
1166
+ "kind": "status",
1167
+ "at": "2026-10-03T09:30:00Z",
1168
+ "body": "Greit for meg."
1169
+ },
1170
+ {
1171
+ "id": "Sofie Berg-2",
1172
+ "actor": "Sofie Berg",
1173
+ "action": "sendte inn forespørselen",
1174
+ "kind": "status",
1175
+ "at": "2026-10-02T09:30:00Z"
1176
+ }
1177
+ ]
1178
+ },
1179
+ {
1180
+ "shape": "RequestTabs",
1181
+ "rows": [
1182
+ {
1183
+ "id": "overview",
1184
+ "label": "Oversikt"
1185
+ },
1186
+ {
1187
+ "id": "attachments",
1188
+ "label": "Vedlegg",
1189
+ "badge": "2"
1190
+ },
1191
+ {
1192
+ "id": "history",
1193
+ "label": "Historikk"
1194
+ }
1195
+ ]
1196
+ },
1197
+ {
1198
+ "shape": "DecisionSections",
1199
+ "rows": [
1200
+ {
1201
+ "id": "decision",
1202
+ "title": "Avgjørelse",
1203
+ "columns": 1,
1204
+ "fields": [
1205
+ {
1206
+ "name": "decision",
1207
+ "label": "Avgjørelse",
1208
+ "type": "select",
1209
+ "options": [
1210
+ "Godkjenn",
1211
+ "Avslå",
1212
+ "Be om endringer"
1213
+ ],
1214
+ "required": true
1215
+ },
1216
+ {
1217
+ "name": "comment",
1218
+ "label": "Kommentar til forespørselen",
1219
+ "type": "richText"
1220
+ }
1221
+ ]
1222
+ }
1223
+ ]
1224
+ },
1225
+ {
1226
+ "shape": "RequestTypeEditorSections",
1227
+ "rows": [
1228
+ {
1229
+ "id": "type",
1230
+ "title": "Forespørselstype",
1231
+ "columns": 2,
1232
+ "fields": [
1233
+ {
1234
+ "name": "name",
1235
+ "label": "Navn",
1236
+ "required": true
1237
+ },
1238
+ {
1239
+ "name": "active",
1240
+ "label": "Aktiv",
1241
+ "type": "select",
1242
+ "options": [
1243
+ "Ja",
1244
+ "Nei"
1245
+ ]
1246
+ },
1247
+ {
1248
+ "name": "steps",
1249
+ "label": "Godkjenningstrinn",
1250
+ "span": 2
1251
+ },
1252
+ {
1253
+ "name": "asks",
1254
+ "label": "Hva den spør om",
1255
+ "type": "richText",
1256
+ "span": 2
1257
+ }
1258
+ ]
1259
+ }
1260
+ ]
1261
+ },
1262
+ {
1263
+ "shape": "ApprovalsFormErrors",
1264
+ "rows": [
1265
+ {}
1266
+ ]
1267
+ }
1268
+ ]
1269
+ }