@twin.org/auditable-item-stream-service 0.0.3-next.1 → 0.0.3-next.10
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.
- package/dist/es/auditableItemStreamRoutes.js +300 -77
- package/dist/es/auditableItemStreamRoutes.js.map +1 -1
- package/dist/es/auditableItemStreamService.js +88 -69
- package/dist/es/auditableItemStreamService.js.map +1 -1
- package/dist/es/entities/auditableItemStream.js +3 -3
- package/dist/es/entities/auditableItemStream.js.map +1 -1
- package/dist/types/auditableItemStreamRoutes.d.ts +17 -1
- package/dist/types/auditableItemStreamService.d.ts +16 -7
- package/dist/types/entities/auditableItemStream.d.ts +2 -2
- package/docs/changelog.md +127 -0
- package/docs/open-api/spec.json +474 -69
- package/docs/reference/classes/AuditableItemStream.md +3 -3
- package/docs/reference/classes/AuditableItemStreamService.md +10 -10
- package/docs/reference/functions/auditableItemStreamListEntriesNoStream.md +31 -0
- package/docs/reference/functions/auditableItemStreamListEntryObjectsNoStream.md +31 -0
- package/docs/reference/index.md +2 -0
- package/package.json +2 -2
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0.
|
|
3
3
|
import { HttpParameterHelper } from "@twin.org/api-models";
|
|
4
4
|
import { AuditableItemStreamContexts, AuditableItemStreamTypes } from "@twin.org/auditable-item-stream-models";
|
|
5
|
-
import { Coerce, ComponentFactory, Guards } from "@twin.org/core";
|
|
5
|
+
import { Coerce, ComponentFactory, Guards, Is } from "@twin.org/core";
|
|
6
6
|
import { SchemaOrgContexts, SchemaOrgTypes } from "@twin.org/standards-schema-org";
|
|
7
|
-
import { HeaderTypes, HttpStatusCode, MimeTypes } from "@twin.org/web";
|
|
7
|
+
import { HeaderHelper, HeaderTypes, HttpStatusCode, MimeTypes } from "@twin.org/web";
|
|
8
8
|
/**
|
|
9
9
|
* The source used when communicating about these routes.
|
|
10
10
|
*/
|
|
@@ -69,7 +69,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
69
69
|
response: {
|
|
70
70
|
statusCode: HttpStatusCode.created,
|
|
71
71
|
headers: {
|
|
72
|
-
[HeaderTypes.Location]: "ais
|
|
72
|
+
[HeaderTypes.Location]: "ais%3A1234567890"
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
}
|
|
@@ -109,8 +109,8 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
109
109
|
response: {
|
|
110
110
|
body: {
|
|
111
111
|
"@context": [
|
|
112
|
-
AuditableItemStreamContexts.
|
|
113
|
-
AuditableItemStreamContexts.
|
|
112
|
+
AuditableItemStreamContexts.Context,
|
|
113
|
+
AuditableItemStreamContexts.ContextCommon
|
|
114
114
|
],
|
|
115
115
|
type: AuditableItemStreamTypes.Stream,
|
|
116
116
|
id: "ais:1234567890",
|
|
@@ -124,11 +124,12 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
124
124
|
organizationIdentity: "did:iota:1234567890",
|
|
125
125
|
proofId: "0101010101010101010101010101010101010101010101010101010101010101",
|
|
126
126
|
immutableInterval: 10,
|
|
127
|
+
numberOfItems: 1,
|
|
127
128
|
entries: [
|
|
128
129
|
{
|
|
129
130
|
"@context": [
|
|
130
|
-
AuditableItemStreamContexts.
|
|
131
|
-
AuditableItemStreamContexts.
|
|
131
|
+
AuditableItemStreamContexts.Context,
|
|
132
|
+
AuditableItemStreamContexts.ContextCommon
|
|
132
133
|
],
|
|
133
134
|
type: AuditableItemStreamTypes.StreamEntry,
|
|
134
135
|
id: "tst:1234567890",
|
|
@@ -160,8 +161,8 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
160
161
|
},
|
|
161
162
|
body: {
|
|
162
163
|
"@context": [
|
|
163
|
-
AuditableItemStreamContexts.
|
|
164
|
-
AuditableItemStreamContexts.
|
|
164
|
+
AuditableItemStreamContexts.Context,
|
|
165
|
+
AuditableItemStreamContexts.ContextCommon
|
|
165
166
|
],
|
|
166
167
|
type: AuditableItemStreamTypes.Stream,
|
|
167
168
|
id: "ais:1234567890",
|
|
@@ -175,11 +176,12 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
175
176
|
organizationIdentity: "did:iota:1234567890",
|
|
176
177
|
proofId: "0101010101010101010101010101010101010101010101010101010101010101",
|
|
177
178
|
immutableInterval: 10,
|
|
179
|
+
numberOfItems: 1,
|
|
178
180
|
entries: [
|
|
179
181
|
{
|
|
180
182
|
"@context": [
|
|
181
|
-
AuditableItemStreamContexts.
|
|
182
|
-
AuditableItemStreamContexts.
|
|
183
|
+
AuditableItemStreamContexts.Context,
|
|
184
|
+
AuditableItemStreamContexts.ContextCommon
|
|
183
185
|
],
|
|
184
186
|
type: AuditableItemStreamTypes.StreamEntry,
|
|
185
187
|
id: "tst:1234567890",
|
|
@@ -294,16 +296,16 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
294
296
|
response: {
|
|
295
297
|
body: {
|
|
296
298
|
"@context": [
|
|
297
|
-
SchemaOrgContexts.
|
|
298
|
-
AuditableItemStreamContexts.
|
|
299
|
-
AuditableItemStreamContexts.
|
|
299
|
+
SchemaOrgContexts.Context,
|
|
300
|
+
AuditableItemStreamContexts.Context,
|
|
301
|
+
AuditableItemStreamContexts.ContextCommon
|
|
300
302
|
],
|
|
301
303
|
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamList],
|
|
302
304
|
[SchemaOrgTypes.ItemListElement]: [
|
|
303
305
|
{
|
|
304
306
|
"@context": [
|
|
305
|
-
AuditableItemStreamContexts.
|
|
306
|
-
AuditableItemStreamContexts.
|
|
307
|
+
AuditableItemStreamContexts.Context,
|
|
308
|
+
AuditableItemStreamContexts.ContextCommon
|
|
307
309
|
],
|
|
308
310
|
type: AuditableItemStreamTypes.Stream,
|
|
309
311
|
id: "ais:1234567890",
|
|
@@ -316,10 +318,10 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
316
318
|
},
|
|
317
319
|
organizationIdentity: "did:iota:1234567890",
|
|
318
320
|
proofId: "0101010101010101010101010101010101010101010101010101010101010101",
|
|
319
|
-
immutableInterval: 10
|
|
321
|
+
immutableInterval: 10,
|
|
322
|
+
numberOfItems: 0
|
|
320
323
|
}
|
|
321
|
-
]
|
|
322
|
-
[SchemaOrgTypes.NextItem]: "1"
|
|
324
|
+
]
|
|
323
325
|
}
|
|
324
326
|
}
|
|
325
327
|
}
|
|
@@ -337,16 +339,16 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
337
339
|
},
|
|
338
340
|
body: {
|
|
339
341
|
"@context": [
|
|
340
|
-
SchemaOrgContexts.
|
|
341
|
-
AuditableItemStreamContexts.
|
|
342
|
-
AuditableItemStreamContexts.
|
|
342
|
+
SchemaOrgContexts.Context,
|
|
343
|
+
AuditableItemStreamContexts.Context,
|
|
344
|
+
AuditableItemStreamContexts.ContextCommon
|
|
343
345
|
],
|
|
344
346
|
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamList],
|
|
345
347
|
[SchemaOrgTypes.ItemListElement]: [
|
|
346
348
|
{
|
|
347
349
|
"@context": [
|
|
348
|
-
AuditableItemStreamContexts.
|
|
349
|
-
AuditableItemStreamContexts.
|
|
350
|
+
AuditableItemStreamContexts.Context,
|
|
351
|
+
AuditableItemStreamContexts.ContextCommon
|
|
350
352
|
],
|
|
351
353
|
type: AuditableItemStreamTypes.Stream,
|
|
352
354
|
id: "ais:1234567890",
|
|
@@ -359,10 +361,10 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
359
361
|
},
|
|
360
362
|
organizationIdentity: "did:iota:1234567890",
|
|
361
363
|
proofId: "0101010101010101010101010101010101010101010101010101010101010101",
|
|
362
|
-
immutableInterval: 10
|
|
364
|
+
immutableInterval: 10,
|
|
365
|
+
numberOfItems: 0
|
|
363
366
|
}
|
|
364
|
-
]
|
|
365
|
-
[SchemaOrgTypes.NextItem]: "1"
|
|
367
|
+
]
|
|
366
368
|
}
|
|
367
369
|
}
|
|
368
370
|
}
|
|
@@ -378,7 +380,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
378
380
|
summary: "Create a new stream entry",
|
|
379
381
|
tag: tagsAuditableItemStream[0].name,
|
|
380
382
|
method: "POST",
|
|
381
|
-
path: `${baseRouteName}/:id`,
|
|
383
|
+
path: `${baseRouteName}/:id/entries`,
|
|
382
384
|
handler: async (httpRequestContext, request) => auditableItemStreamCreateEntry(httpRequestContext, componentName, request),
|
|
383
385
|
requestType: {
|
|
384
386
|
type: "IAuditableItemStreamCreateEntryRequest",
|
|
@@ -411,7 +413,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
411
413
|
response: {
|
|
412
414
|
statusCode: HttpStatusCode.created,
|
|
413
415
|
headers: {
|
|
414
|
-
[HeaderTypes.Location]: "ais
|
|
416
|
+
[HeaderTypes.Location]: "ais%3A1234567890%3A01010101010"
|
|
415
417
|
}
|
|
416
418
|
}
|
|
417
419
|
}
|
|
@@ -424,7 +426,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
424
426
|
summary: "Delete an entry from the stream",
|
|
425
427
|
tag: tagsAuditableItemStream[0].name,
|
|
426
428
|
method: "DELETE",
|
|
427
|
-
path: `${baseRouteName}/:id/:entryId`,
|
|
429
|
+
path: `${baseRouteName}/:id/entries/:entryId`,
|
|
428
430
|
handler: async (httpRequestContext, request) => auditableItemStreamDeleteEntry(httpRequestContext, componentName, request),
|
|
429
431
|
requestType: {
|
|
430
432
|
type: "IAuditableItemStreamDeleteRequest",
|
|
@@ -454,7 +456,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
454
456
|
summary: "Update a stream entry",
|
|
455
457
|
tag: tagsAuditableItemStream[0].name,
|
|
456
458
|
method: "PUT",
|
|
457
|
-
path: `${baseRouteName}/:id/:entryId`,
|
|
459
|
+
path: `${baseRouteName}/:id/entries/:entryId`,
|
|
458
460
|
handler: async (httpRequestContext, request) => auditableItemStreamUpdateEntry(httpRequestContext, componentName, request),
|
|
459
461
|
requestType: {
|
|
460
462
|
type: "IAuditableItemStreamUpdateEntryRequest",
|
|
@@ -491,7 +493,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
491
493
|
summary: "Get a stream entry",
|
|
492
494
|
tag: tagsAuditableItemStream[0].name,
|
|
493
495
|
method: "GET",
|
|
494
|
-
path: `${baseRouteName}/:id/:entryId`,
|
|
496
|
+
path: `${baseRouteName}/:id/entries/:entryId`,
|
|
495
497
|
handler: async (httpRequestContext, request) => auditableItemStreamGetEntry(httpRequestContext, componentName, request),
|
|
496
498
|
requestType: {
|
|
497
499
|
type: "IAuditableItemStreamGetEntryRequest",
|
|
@@ -516,8 +518,8 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
516
518
|
response: {
|
|
517
519
|
body: {
|
|
518
520
|
"@context": [
|
|
519
|
-
AuditableItemStreamContexts.
|
|
520
|
-
AuditableItemStreamContexts.
|
|
521
|
+
AuditableItemStreamContexts.Context,
|
|
522
|
+
AuditableItemStreamContexts.ContextCommon
|
|
521
523
|
],
|
|
522
524
|
type: AuditableItemStreamTypes.StreamEntry,
|
|
523
525
|
id: "tst:1234567890",
|
|
@@ -547,8 +549,8 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
547
549
|
},
|
|
548
550
|
body: {
|
|
549
551
|
"@context": [
|
|
550
|
-
AuditableItemStreamContexts.
|
|
551
|
-
AuditableItemStreamContexts.
|
|
552
|
+
AuditableItemStreamContexts.Context,
|
|
553
|
+
AuditableItemStreamContexts.ContextCommon
|
|
552
554
|
],
|
|
553
555
|
type: AuditableItemStreamTypes.StreamEntry,
|
|
554
556
|
id: "tst:1234567890",
|
|
@@ -573,10 +575,10 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
573
575
|
};
|
|
574
576
|
const getEntryObjectRoute = {
|
|
575
577
|
operationId: "auditableItemStreamGetEntryObject",
|
|
576
|
-
summary: "Get a stream entry",
|
|
578
|
+
summary: "Get a stream entry object",
|
|
577
579
|
tag: tagsAuditableItemStream[0].name,
|
|
578
580
|
method: "GET",
|
|
579
|
-
path: `${baseRouteName}/:id/:entryId/object`,
|
|
581
|
+
path: `${baseRouteName}/:id/entries/:entryId/object`,
|
|
580
582
|
handler: async (httpRequestContext, request) => auditableItemStreamGetEntryObject(httpRequestContext, componentName, request),
|
|
581
583
|
requestType: {
|
|
582
584
|
type: "IAuditableItemStreamGetEntryRequest",
|
|
@@ -643,16 +645,16 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
643
645
|
response: {
|
|
644
646
|
body: {
|
|
645
647
|
"@context": [
|
|
646
|
-
SchemaOrgContexts.
|
|
647
|
-
AuditableItemStreamContexts.
|
|
648
|
-
AuditableItemStreamContexts.
|
|
648
|
+
SchemaOrgContexts.Context,
|
|
649
|
+
AuditableItemStreamContexts.Context,
|
|
650
|
+
AuditableItemStreamContexts.ContextCommon
|
|
649
651
|
],
|
|
650
652
|
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamEntryList],
|
|
651
653
|
[SchemaOrgTypes.ItemListElement]: [
|
|
652
654
|
{
|
|
653
655
|
"@context": [
|
|
654
|
-
AuditableItemStreamContexts.
|
|
655
|
-
AuditableItemStreamContexts.
|
|
656
|
+
AuditableItemStreamContexts.Context,
|
|
657
|
+
AuditableItemStreamContexts.ContextCommon
|
|
656
658
|
],
|
|
657
659
|
type: AuditableItemStreamTypes.StreamEntry,
|
|
658
660
|
id: "tst:1234567890",
|
|
@@ -666,8 +668,7 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
666
668
|
description: "A description of the event"
|
|
667
669
|
}
|
|
668
670
|
}
|
|
669
|
-
]
|
|
670
|
-
[SchemaOrgTypes.NextItem]: "1"
|
|
671
|
+
]
|
|
671
672
|
}
|
|
672
673
|
}
|
|
673
674
|
}
|
|
@@ -685,16 +686,75 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
685
686
|
},
|
|
686
687
|
body: {
|
|
687
688
|
"@context": [
|
|
688
|
-
SchemaOrgContexts.
|
|
689
|
-
AuditableItemStreamContexts.
|
|
690
|
-
AuditableItemStreamContexts.
|
|
689
|
+
SchemaOrgContexts.Context,
|
|
690
|
+
AuditableItemStreamContexts.Context,
|
|
691
|
+
AuditableItemStreamContexts.ContextCommon
|
|
692
|
+
],
|
|
693
|
+
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamEntryList],
|
|
694
|
+
[SchemaOrgTypes.ItemListElement]: [
|
|
695
|
+
{
|
|
696
|
+
"@context": [
|
|
697
|
+
AuditableItemStreamContexts.Context,
|
|
698
|
+
AuditableItemStreamContexts.ContextCommon
|
|
699
|
+
],
|
|
700
|
+
type: AuditableItemStreamTypes.StreamEntry,
|
|
701
|
+
id: "tst:1234567890",
|
|
702
|
+
dateCreated: "2024-08-22T11:55:16.271Z",
|
|
703
|
+
proofId: "0101010101010101010101010101010101010101010101010101010101010101",
|
|
704
|
+
index: 0,
|
|
705
|
+
entryObject: {
|
|
706
|
+
"@context": "https://schema.org",
|
|
707
|
+
"@type": "Event",
|
|
708
|
+
startDate: "2011-04-09T20:00:00Z",
|
|
709
|
+
description: "A description of the event"
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
]
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
]
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
type: "INotFoundResponse"
|
|
720
|
+
}
|
|
721
|
+
]
|
|
722
|
+
};
|
|
723
|
+
const listEntriesNoStreamRoute = {
|
|
724
|
+
operationId: "auditableItemStreamListEntriesNoStream",
|
|
725
|
+
summary: "Get the entry objects for all streams",
|
|
726
|
+
tag: tagsAuditableItemStream[0].name,
|
|
727
|
+
method: "GET",
|
|
728
|
+
path: `${baseRouteName}/entries`,
|
|
729
|
+
handler: async (httpRequestContext, request) => auditableItemStreamListEntriesNoStream(httpRequestContext, componentName, request),
|
|
730
|
+
requestType: {
|
|
731
|
+
type: "IAuditableItemStreamListEntriesNoStreamRequest",
|
|
732
|
+
examples: [
|
|
733
|
+
{
|
|
734
|
+
id: "auditableItemStreamListEntriesNoStreamRequestExample",
|
|
735
|
+
request: {}
|
|
736
|
+
}
|
|
737
|
+
]
|
|
738
|
+
},
|
|
739
|
+
responseType: [
|
|
740
|
+
{
|
|
741
|
+
type: "IAuditableItemStreamListEntriesResponse",
|
|
742
|
+
examples: [
|
|
743
|
+
{
|
|
744
|
+
id: "auditableItemStreamListEntriesNoStreamResponseExample",
|
|
745
|
+
response: {
|
|
746
|
+
body: {
|
|
747
|
+
"@context": [
|
|
748
|
+
SchemaOrgContexts.Context,
|
|
749
|
+
AuditableItemStreamContexts.Context,
|
|
750
|
+
AuditableItemStreamContexts.ContextCommon
|
|
691
751
|
],
|
|
692
752
|
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamEntryList],
|
|
693
753
|
[SchemaOrgTypes.ItemListElement]: [
|
|
694
754
|
{
|
|
695
755
|
"@context": [
|
|
696
|
-
AuditableItemStreamContexts.
|
|
697
|
-
AuditableItemStreamContexts.
|
|
756
|
+
AuditableItemStreamContexts.Context,
|
|
757
|
+
AuditableItemStreamContexts.ContextCommon
|
|
698
758
|
],
|
|
699
759
|
type: AuditableItemStreamTypes.StreamEntry,
|
|
700
760
|
id: "tst:1234567890",
|
|
@@ -708,8 +768,48 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
708
768
|
description: "A description of the event"
|
|
709
769
|
}
|
|
710
770
|
}
|
|
771
|
+
]
|
|
772
|
+
}
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
]
|
|
776
|
+
},
|
|
777
|
+
{
|
|
778
|
+
type: "IAuditableItemStreamListEntriesResponse",
|
|
779
|
+
mimeType: MimeTypes.JsonLd,
|
|
780
|
+
examples: [
|
|
781
|
+
{
|
|
782
|
+
id: "auditableItemStreamJsonLdListEntriesNoStreamResponseExample",
|
|
783
|
+
response: {
|
|
784
|
+
headers: {
|
|
785
|
+
[HeaderTypes.ContentType]: MimeTypes.JsonLd
|
|
786
|
+
},
|
|
787
|
+
body: {
|
|
788
|
+
"@context": [
|
|
789
|
+
SchemaOrgContexts.Context,
|
|
790
|
+
AuditableItemStreamContexts.Context,
|
|
791
|
+
AuditableItemStreamContexts.ContextCommon
|
|
711
792
|
],
|
|
712
|
-
[SchemaOrgTypes.
|
|
793
|
+
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamEntryList],
|
|
794
|
+
[SchemaOrgTypes.ItemListElement]: [
|
|
795
|
+
{
|
|
796
|
+
"@context": [
|
|
797
|
+
AuditableItemStreamContexts.Context,
|
|
798
|
+
AuditableItemStreamContexts.ContextCommon
|
|
799
|
+
],
|
|
800
|
+
type: AuditableItemStreamTypes.StreamEntry,
|
|
801
|
+
id: "tst:1234567890",
|
|
802
|
+
dateCreated: "2024-08-22T11:55:16.271Z",
|
|
803
|
+
proofId: "0101010101010101010101010101010101010101010101010101010101010101",
|
|
804
|
+
index: 0,
|
|
805
|
+
entryObject: {
|
|
806
|
+
"@context": "https://schema.org",
|
|
807
|
+
"@type": "Event",
|
|
808
|
+
startDate: "2011-04-09T20:00:00Z",
|
|
809
|
+
description: "A description of the event"
|
|
810
|
+
}
|
|
811
|
+
}
|
|
812
|
+
]
|
|
713
813
|
}
|
|
714
814
|
}
|
|
715
815
|
}
|
|
@@ -749,9 +849,9 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
749
849
|
response: {
|
|
750
850
|
body: {
|
|
751
851
|
"@context": [
|
|
752
|
-
SchemaOrgContexts.
|
|
753
|
-
AuditableItemStreamContexts.
|
|
754
|
-
AuditableItemStreamContexts.
|
|
852
|
+
SchemaOrgContexts.Context,
|
|
853
|
+
AuditableItemStreamContexts.Context,
|
|
854
|
+
AuditableItemStreamContexts.ContextCommon
|
|
755
855
|
],
|
|
756
856
|
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamEntryObjectList],
|
|
757
857
|
[SchemaOrgTypes.ItemListElement]: [
|
|
@@ -761,8 +861,55 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
761
861
|
startDate: "2011-04-09T20:00:00Z",
|
|
762
862
|
description: "A description of the event"
|
|
763
863
|
}
|
|
864
|
+
]
|
|
865
|
+
}
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
]
|
|
869
|
+
},
|
|
870
|
+
{
|
|
871
|
+
type: "INotFoundResponse"
|
|
872
|
+
}
|
|
873
|
+
]
|
|
874
|
+
};
|
|
875
|
+
const listEntryObjectsNoStreamRoute = {
|
|
876
|
+
operationId: "auditableItemStreamListEntryObjectsNoStream",
|
|
877
|
+
summary: "Get the entry objects for all streams",
|
|
878
|
+
tag: tagsAuditableItemStream[0].name,
|
|
879
|
+
method: "GET",
|
|
880
|
+
path: `${baseRouteName}/entries/objects`,
|
|
881
|
+
handler: async (httpRequestContext, request) => auditableItemStreamListEntryObjectsNoStream(httpRequestContext, componentName, request),
|
|
882
|
+
requestType: {
|
|
883
|
+
type: "IAuditableItemStreamListEntryObjectsNoStreamRequest",
|
|
884
|
+
examples: [
|
|
885
|
+
{
|
|
886
|
+
id: "auditableItemStreamListEntryObjectsNoStreamRequestExample",
|
|
887
|
+
request: {}
|
|
888
|
+
}
|
|
889
|
+
]
|
|
890
|
+
},
|
|
891
|
+
responseType: [
|
|
892
|
+
{
|
|
893
|
+
type: "IAuditableItemStreamListEntryObjectsResponse",
|
|
894
|
+
examples: [
|
|
895
|
+
{
|
|
896
|
+
id: "auditableItemStreamListEntryObjectsNoStreamResponseExample",
|
|
897
|
+
response: {
|
|
898
|
+
body: {
|
|
899
|
+
"@context": [
|
|
900
|
+
SchemaOrgContexts.Context,
|
|
901
|
+
AuditableItemStreamContexts.Context,
|
|
902
|
+
AuditableItemStreamContexts.ContextCommon
|
|
764
903
|
],
|
|
765
|
-
[SchemaOrgTypes.
|
|
904
|
+
type: [SchemaOrgTypes.ItemList, AuditableItemStreamTypes.StreamEntryObjectList],
|
|
905
|
+
[SchemaOrgTypes.ItemListElement]: [
|
|
906
|
+
{
|
|
907
|
+
"@context": "https://schema.org",
|
|
908
|
+
"@type": "Event",
|
|
909
|
+
startDate: "2011-04-09T20:00:00Z",
|
|
910
|
+
description: "A description of the event"
|
|
911
|
+
}
|
|
912
|
+
]
|
|
766
913
|
}
|
|
767
914
|
}
|
|
768
915
|
}
|
|
@@ -785,7 +932,9 @@ export function generateRestRoutesAuditableItemStream(baseRouteName, componentNa
|
|
|
785
932
|
deleteEntryRoute,
|
|
786
933
|
updateEntryRoute,
|
|
787
934
|
listEntriesRoute,
|
|
788
|
-
|
|
935
|
+
listEntriesNoStreamRoute,
|
|
936
|
+
listEntryObjectsRoute,
|
|
937
|
+
listEntryObjectsNoStreamRoute
|
|
789
938
|
];
|
|
790
939
|
}
|
|
791
940
|
/**
|
|
@@ -823,7 +972,6 @@ export async function auditableItemStreamGet(httpRequestContext, componentName,
|
|
|
823
972
|
Guards.object(ROUTES_SOURCE, "request", request);
|
|
824
973
|
Guards.object(ROUTES_SOURCE, "request.pathParams", request.pathParams);
|
|
825
974
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.id", request.pathParams.id);
|
|
826
|
-
const mimeType = request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? "jsonld" : "json";
|
|
827
975
|
const component = ComponentFactory.get(componentName);
|
|
828
976
|
const result = await component.get(request.pathParams.id, {
|
|
829
977
|
includeEntries: Coerce.boolean(request.query?.includeEntries),
|
|
@@ -833,7 +981,9 @@ export async function auditableItemStreamGet(httpRequestContext, componentName,
|
|
|
833
981
|
});
|
|
834
982
|
return {
|
|
835
983
|
headers: {
|
|
836
|
-
[HeaderTypes.ContentType]:
|
|
984
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd
|
|
985
|
+
? MimeTypes.JsonLd
|
|
986
|
+
: MimeTypes.Json
|
|
837
987
|
},
|
|
838
988
|
body: result
|
|
839
989
|
};
|
|
@@ -886,14 +1036,18 @@ export async function auditableItemStreamDelete(httpRequestContext, componentNam
|
|
|
886
1036
|
export async function auditableItemStreamList(httpRequestContext, componentName, request) {
|
|
887
1037
|
Guards.object(ROUTES_SOURCE, "request", request);
|
|
888
1038
|
Guards.object(ROUTES_SOURCE, "request.query", request.query);
|
|
1039
|
+
const hostingComponent = ComponentFactory.get(httpRequestContext.hostingComponentType ?? "hosting");
|
|
889
1040
|
const component = ComponentFactory.get(componentName);
|
|
890
|
-
const mimeType = request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? "jsonld" : "json";
|
|
891
1041
|
const result = await component.query(HttpParameterHelper.objectFromString(request.query?.conditions), request.query?.orderBy, request.query?.orderByDirection, HttpParameterHelper.arrayFromString(request.query?.properties), request.query?.cursor, Coerce.integer(request.query?.limit));
|
|
1042
|
+
const headers = {
|
|
1043
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? MimeTypes.JsonLd : MimeTypes.Json
|
|
1044
|
+
};
|
|
1045
|
+
if (Is.stringValue(result.cursor)) {
|
|
1046
|
+
headers[HeaderTypes.Link] = HeaderHelper.createLinkHeader(await hostingComponent.buildPublicUrl(httpRequestContext.serverRequest.url), { cursor: result.cursor }, "next");
|
|
1047
|
+
}
|
|
892
1048
|
return {
|
|
893
|
-
headers
|
|
894
|
-
|
|
895
|
-
},
|
|
896
|
-
body: result
|
|
1049
|
+
headers,
|
|
1050
|
+
body: result.entries
|
|
897
1051
|
};
|
|
898
1052
|
}
|
|
899
1053
|
/**
|
|
@@ -968,14 +1122,15 @@ export async function auditableItemStreamGetEntry(httpRequestContext, componentN
|
|
|
968
1122
|
Guards.object(ROUTES_SOURCE, "request.pathParams", request.pathParams);
|
|
969
1123
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.id", request.pathParams.id);
|
|
970
1124
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.entryId", request.pathParams.entryId);
|
|
971
|
-
const mimeType = request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? "jsonld" : "json";
|
|
972
1125
|
const component = ComponentFactory.get(componentName);
|
|
973
1126
|
const result = await component.getEntry(request.pathParams.id, request.pathParams.entryId, {
|
|
974
1127
|
verifyEntry: Coerce.boolean(request.query?.verifyEntry)
|
|
975
1128
|
});
|
|
976
1129
|
return {
|
|
977
1130
|
headers: {
|
|
978
|
-
[HeaderTypes.ContentType]:
|
|
1131
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd
|
|
1132
|
+
? MimeTypes.JsonLd
|
|
1133
|
+
: MimeTypes.Json
|
|
979
1134
|
},
|
|
980
1135
|
body: result
|
|
981
1136
|
};
|
|
@@ -992,12 +1147,13 @@ export async function auditableItemStreamGetEntryObject(httpRequestContext, comp
|
|
|
992
1147
|
Guards.object(ROUTES_SOURCE, "request.pathParams", request.pathParams);
|
|
993
1148
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.id", request.pathParams.id);
|
|
994
1149
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.entryId", request.pathParams.entryId);
|
|
995
|
-
const mimeType = request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? "jsonld" : "json";
|
|
996
1150
|
const component = ComponentFactory.get(componentName);
|
|
997
1151
|
const result = await component.getEntryObject(request.pathParams.id, request.pathParams.entryId);
|
|
998
1152
|
return {
|
|
999
1153
|
headers: {
|
|
1000
|
-
[HeaderTypes.ContentType]:
|
|
1154
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd
|
|
1155
|
+
? MimeTypes.JsonLd
|
|
1156
|
+
: MimeTypes.Json
|
|
1001
1157
|
},
|
|
1002
1158
|
body: result
|
|
1003
1159
|
};
|
|
@@ -1013,8 +1169,8 @@ export async function auditableItemStreamListEntries(httpRequestContext, compone
|
|
|
1013
1169
|
Guards.object(ROUTES_SOURCE, "request", request);
|
|
1014
1170
|
Guards.object(ROUTES_SOURCE, "request.pathParams", request.pathParams);
|
|
1015
1171
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.id", request.pathParams.id);
|
|
1172
|
+
const hostingComponent = ComponentFactory.get(httpRequestContext.hostingComponentType ?? "hosting");
|
|
1016
1173
|
const component = ComponentFactory.get(componentName);
|
|
1017
|
-
const mimeType = request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? "jsonld" : "json";
|
|
1018
1174
|
const result = await component.getEntries(request.pathParams.id, {
|
|
1019
1175
|
conditions: HttpParameterHelper.objectFromString(request.query?.conditions),
|
|
1020
1176
|
includeDeleted: Coerce.boolean(request.query?.includeDeleted),
|
|
@@ -1023,11 +1179,45 @@ export async function auditableItemStreamListEntries(httpRequestContext, compone
|
|
|
1023
1179
|
limit: Coerce.integer(request.query?.limit),
|
|
1024
1180
|
cursor: request.query?.cursor
|
|
1025
1181
|
});
|
|
1182
|
+
const headers = {
|
|
1183
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? MimeTypes.JsonLd : MimeTypes.Json
|
|
1184
|
+
};
|
|
1185
|
+
if (Is.stringValue(result.cursor)) {
|
|
1186
|
+
headers[HeaderTypes.Link] = HeaderHelper.createLinkHeader(await hostingComponent.buildPublicUrl(httpRequestContext.serverRequest.url), { cursor: result.cursor }, "next");
|
|
1187
|
+
}
|
|
1026
1188
|
return {
|
|
1027
|
-
headers
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1189
|
+
headers,
|
|
1190
|
+
body: result.entries
|
|
1191
|
+
};
|
|
1192
|
+
}
|
|
1193
|
+
/**
|
|
1194
|
+
* Query the stream.
|
|
1195
|
+
* @param httpRequestContext The request context for the API.
|
|
1196
|
+
* @param componentName The name of the component to use in the routes.
|
|
1197
|
+
* @param request The request.
|
|
1198
|
+
* @returns The response object with additional http response properties.
|
|
1199
|
+
*/
|
|
1200
|
+
export async function auditableItemStreamListEntriesNoStream(httpRequestContext, componentName, request) {
|
|
1201
|
+
Guards.object(ROUTES_SOURCE, "request", request);
|
|
1202
|
+
const hostingComponent = ComponentFactory.get(httpRequestContext.hostingComponentType ?? "hosting");
|
|
1203
|
+
const component = ComponentFactory.get(componentName);
|
|
1204
|
+
const result = await component.getEntries(undefined, {
|
|
1205
|
+
conditions: HttpParameterHelper.objectFromString(request.query?.conditions),
|
|
1206
|
+
includeDeleted: Coerce.boolean(request.query?.includeDeleted),
|
|
1207
|
+
verifyEntries: Coerce.boolean(request.query?.verifyEntries),
|
|
1208
|
+
order: request.query?.order,
|
|
1209
|
+
limit: Coerce.integer(request.query?.limit),
|
|
1210
|
+
cursor: request.query?.cursor
|
|
1211
|
+
});
|
|
1212
|
+
const headers = {
|
|
1213
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? MimeTypes.JsonLd : MimeTypes.Json
|
|
1214
|
+
};
|
|
1215
|
+
if (Is.stringValue(result.cursor)) {
|
|
1216
|
+
headers[HeaderTypes.Link] = HeaderHelper.createLinkHeader(await hostingComponent.buildPublicUrl(httpRequestContext.serverRequest.url), { cursor: result.cursor }, "next");
|
|
1217
|
+
}
|
|
1218
|
+
return {
|
|
1219
|
+
headers,
|
|
1220
|
+
body: result.entries
|
|
1031
1221
|
};
|
|
1032
1222
|
}
|
|
1033
1223
|
/**
|
|
@@ -1041,8 +1231,8 @@ export async function auditableItemStreamListEntryObjects(httpRequestContext, co
|
|
|
1041
1231
|
Guards.object(ROUTES_SOURCE, "request", request);
|
|
1042
1232
|
Guards.object(ROUTES_SOURCE, "request.pathParams", request.pathParams);
|
|
1043
1233
|
Guards.stringValue(ROUTES_SOURCE, "request.pathParams.id", request.pathParams.id);
|
|
1234
|
+
const hostingComponent = ComponentFactory.get(httpRequestContext.hostingComponentType ?? "hosting");
|
|
1044
1235
|
const component = ComponentFactory.get(componentName);
|
|
1045
|
-
const mimeType = request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? "jsonld" : "json";
|
|
1046
1236
|
const result = await component.getEntryObjects(request.pathParams.id, {
|
|
1047
1237
|
conditions: HttpParameterHelper.objectFromString(request.query?.conditions),
|
|
1048
1238
|
includeDeleted: Coerce.boolean(request.query?.includeDeleted),
|
|
@@ -1050,11 +1240,44 @@ export async function auditableItemStreamListEntryObjects(httpRequestContext, co
|
|
|
1050
1240
|
limit: Coerce.integer(request.query?.limit),
|
|
1051
1241
|
cursor: request.query?.cursor
|
|
1052
1242
|
});
|
|
1243
|
+
const headers = {
|
|
1244
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? MimeTypes.JsonLd : MimeTypes.Json
|
|
1245
|
+
};
|
|
1246
|
+
if (Is.stringValue(result.cursor)) {
|
|
1247
|
+
headers[HeaderTypes.Link] = HeaderHelper.createLinkHeader(await hostingComponent.buildPublicUrl(httpRequestContext.serverRequest.url), { cursor: result.cursor }, "next");
|
|
1248
|
+
}
|
|
1053
1249
|
return {
|
|
1054
|
-
headers
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1250
|
+
headers,
|
|
1251
|
+
body: result.entries
|
|
1252
|
+
};
|
|
1253
|
+
}
|
|
1254
|
+
/**
|
|
1255
|
+
* Query the stream objects.
|
|
1256
|
+
* @param httpRequestContext The request context for the API.
|
|
1257
|
+
* @param componentName The name of the component to use in the routes.
|
|
1258
|
+
* @param request The request.
|
|
1259
|
+
* @returns The response object with additional http response properties.
|
|
1260
|
+
*/
|
|
1261
|
+
export async function auditableItemStreamListEntryObjectsNoStream(httpRequestContext, componentName, request) {
|
|
1262
|
+
Guards.object(ROUTES_SOURCE, "request", request);
|
|
1263
|
+
const hostingComponent = ComponentFactory.get(httpRequestContext.hostingComponentType ?? "hosting");
|
|
1264
|
+
const component = ComponentFactory.get(componentName);
|
|
1265
|
+
const result = await component.getEntryObjects(undefined, {
|
|
1266
|
+
conditions: HttpParameterHelper.objectFromString(request.query?.conditions),
|
|
1267
|
+
includeDeleted: Coerce.boolean(request.query?.includeDeleted),
|
|
1268
|
+
order: request.query?.order,
|
|
1269
|
+
limit: Coerce.integer(request.query?.limit),
|
|
1270
|
+
cursor: request.query?.cursor
|
|
1271
|
+
});
|
|
1272
|
+
const headers = {
|
|
1273
|
+
[HeaderTypes.ContentType]: request.headers?.[HeaderTypes.Accept] === MimeTypes.JsonLd ? MimeTypes.JsonLd : MimeTypes.Json
|
|
1274
|
+
};
|
|
1275
|
+
if (Is.stringValue(result.cursor)) {
|
|
1276
|
+
headers[HeaderTypes.Link] = HeaderHelper.createLinkHeader(await hostingComponent.buildPublicUrl(httpRequestContext.serverRequest.url), { cursor: result.cursor }, "next");
|
|
1277
|
+
}
|
|
1278
|
+
return {
|
|
1279
|
+
headers,
|
|
1280
|
+
body: result.entries
|
|
1058
1281
|
};
|
|
1059
1282
|
}
|
|
1060
1283
|
//# sourceMappingURL=auditableItemStreamRoutes.js.map
|