@uptime.app/contracts 3.0.20-rc.2 → 3.0.20
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/cjs/b2b-organisation/b2b-organisation-group-events.d.ts +18 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-events.d.ts.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-events.js +3 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-events.js.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership-events.d.ts +18 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership-events.d.ts.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership-events.js +3 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership-events.js.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership.d.ts +10 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership.d.ts.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership.js +3 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group-membership.js.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group.d.ts +14 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group.d.ts.map +1 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group.js +9 -0
- package/dist/cjs/b2b-organisation/b2b-organisation-group.js.map +1 -0
- package/dist/cjs/course-enrollment/course-enrollment.d.ts +0 -2
- package/dist/cjs/course-enrollment/course-enrollment.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +4 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/b2b-organisation/b2b-organisation-group-events.d.ts +18 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-events.d.ts.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-events.js +2 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-events.js.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership-events.d.ts +18 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership-events.d.ts.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership-events.js +2 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership-events.js.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership.d.ts +10 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership.d.ts.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership.js +2 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group-membership.js.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group.d.ts +14 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group.d.ts.map +1 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group.js +6 -0
- package/dist/esm/b2b-organisation/b2b-organisation-group.js.map +1 -0
- package/dist/esm/course-enrollment/course-enrollment.d.ts +0 -2
- package/dist/esm/course-enrollment/course-enrollment.d.ts.map +1 -1
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/package.json +2 -2
- package/src/access-control/collection-access-control.ts +28 -28
- package/src/access-control/hack-access-control.ts +32 -32
- package/src/access-control/profile-access-control.ts +27 -27
- package/src/app-hack/app-full-hack.ts +9 -9
- package/src/app-hack/app-hack-metadata.ts +61 -61
- package/src/app-hack/app-restricted-hack.ts +22 -22
- package/src/b2b-content-access/b2b-content-access.ts +57 -57
- package/src/b2b-organisation/b2b-carousel.ts +33 -33
- package/src/b2b-organisation/b2b-org-idp-mapping.ts +27 -27
- package/src/b2b-organisation/b2b-organisation-events.ts +21 -21
- package/src/b2b-organisation/b2b-organisation-group-events.ts +21 -0
- package/src/b2b-organisation/b2b-organisation-group-membership-events.ts +21 -0
- package/src/b2b-organisation/b2b-organisation-group-membership.ts +9 -0
- package/src/b2b-organisation/b2b-organisation-group.ts +15 -0
- package/src/b2b-organisation/b2b-organisation-invitation.ts +45 -45
- package/src/b2b-organisation/b2b-organisation-member-events.ts +21 -21
- package/src/b2b-organisation/b2b-organisation-member.ts +19 -19
- package/src/b2b-organisation/b2b-organisation.ts +35 -35
- package/src/brand/brand-events.ts +21 -21
- package/src/brand/brand.ts +27 -27
- package/src/catalogue/catalogue.ts +147 -147
- package/src/cms-hack/cms-searchable-hack.ts +44 -44
- package/src/collection/collection-events.ts +21 -21
- package/src/collection/collection.ts +57 -57
- package/src/collection/enriched-collection-events.ts +18 -18
- package/src/collection/enriched-collection.ts +61 -61
- package/src/course/course-events.ts +20 -20
- package/src/course/course.ts +25 -25
- package/src/course-enrollment/course-enrollment-events.ts +21 -21
- package/src/course-enrollment/course-enrollment.ts +33 -35
- package/src/creator/creator-events.ts +32 -32
- package/src/creator/creator.ts +7 -7
- package/src/distribution/collection-distribution.ts +17 -17
- package/src/distribution/distribution-events.ts +61 -61
- package/src/distribution/hack-distribution.ts +18 -18
- package/src/draft-hack/draft-hack-events.ts +21 -21
- package/src/draft-hack/draft-hack.ts +190 -190
- package/src/draft-hack-generation/draft-hack-generation-commands.ts +10 -10
- package/src/draft-hack-generation/draft-hack-generation-events.ts +52 -52
- package/src/draft-hack-generation/draft-hack-generation.ts +39 -39
- package/src/enriched-b2b-organisation/enriched-b2b-organisation-events.ts +21 -21
- package/src/enriched-b2b-organisation/enriched-b2b-organisation.ts +37 -37
- package/src/enriched-hack/enriched-hack-events.ts +21 -21
- package/src/enriched-hack/enriched-hack.ts +109 -109
- package/src/enrichment-asset/hack-enrichment-video-events.ts +55 -55
- package/src/enrichment-asset/hack-enrichment-video.ts +40 -40
- package/src/entitlement/user-entitlements-commands.ts +54 -54
- package/src/entitlement/user-entitlements-events.ts +29 -29
- package/src/entitlement/user-entitlements.ts +18 -18
- package/src/flashcard/flashcard-events.ts +85 -85
- package/src/flashcard/flashcard.ts +138 -138
- package/src/hack/extracted-subject.ts +31 -31
- package/src/hack/hack-events.ts +21 -21
- package/src/hack/hack-published.ts +21 -21
- package/src/hack/hack-with-voice-events.ts +20 -20
- package/src/hack/hack-with-voice.ts +36 -36
- package/src/hack/hack.ts +127 -127
- package/src/hack/publish-hack-command.ts +20 -20
- package/src/hack/republish-hack-command.ts +20 -20
- package/src/hack-mapping/access-helper.ts +6 -6
- package/src/hack-mapping/app-full-hack.test.ts +12 -12
- package/src/hack-mapping/app-full-hack.ts +14 -14
- package/src/hack-mapping/app-hack-metadata.test.ts +22 -22
- package/src/hack-mapping/app-hack-metadata.ts +82 -82
- package/src/hack-mapping/app-restricted-hack.test.ts +11 -11
- package/src/hack-mapping/app-restricted-hack.ts +21 -21
- package/src/hack-mapping/remove-undefined-fields.ts +9 -9
- package/src/hack-mapping/test-data/enriched-hack.json +2576 -2576
- package/src/hack-mapping/test-data/expected-app-full-hack.json +2509 -2509
- package/src/hack-mapping/test-data/expected-app-hack-metadata.json +93 -93
- package/src/hack-mapping/test-data/expected-app-restricted-hack.json +799 -799
- package/src/hack-metadata/hack-metadata-events.ts +21 -21
- package/src/hack-metadata/hack-metadata.ts +17 -17
- package/src/hack-of-the-day/hack-of-the-day-events.ts +21 -21
- package/src/hack-of-the-day/hack-of-the-day.ts +13 -13
- package/src/hack-statistics/hack-statistics-events.ts +21 -21
- package/src/hack-statistics/hack-statistics.ts +9 -9
- package/src/hackbot/hack-generation-commands.ts +44 -44
- package/src/hackbot/hack-generation-trigger-events.ts +21 -21
- package/src/hackbot/hack-generation-trigger.ts +56 -56
- package/src/history/history-events.ts +21 -21
- package/src/history/history.ts +46 -46
- package/src/identity-provider/domain-identity-provider-events.ts +20 -20
- package/src/identity-provider/domain-identity-provider.ts +10 -10
- package/src/identity-provider/identity-provider-events.ts +20 -20
- package/src/identity-provider/identity-provider.ts +46 -46
- package/src/index.ts +210 -205
- package/src/interest/interest-events.ts +21 -21
- package/src/interest/interest.ts +15 -15
- package/src/knowledge-source/knowledge-source-events.ts +21 -21
- package/src/knowledge-source/knowledge-source.ts +43 -43
- package/src/knowledge-source-parsing/knowledge-source-metadata.ts +52 -52
- package/src/knowledge-source-parsing/knowledge-source-parsing-commands.ts +41 -41
- package/src/knowledge-source-parsing/knowledge-source-parsing-events.ts +30 -30
- package/src/knowledge-source-parsing/podcast-metadata.ts +44 -44
- package/src/knowledge-source-parsing/podcast-parsing-events.ts +28 -28
- package/src/knowledge-source-parsing/user-hack-generation-options.ts +7 -7
- package/src/learn-upon/get-sqsso-url.ts +13 -13
- package/src/learn-upon/learn-upon-commands.ts +32 -32
- package/src/learn-upon/learn-upon-course-enrollment-events.ts +21 -21
- package/src/learn-upon/learn-upon-course-enrollment.ts +62 -62
- package/src/learn-upon/learn-upon-course-events.ts +21 -21
- package/src/learn-upon/learn-upon-course.ts +105 -105
- package/src/learn-upon/learn-upon-portal-events.ts +20 -20
- package/src/learn-upon/learn-upon-portal.ts +12 -12
- package/src/learn-upon/learn-upon-user-mapping-events.ts +18 -18
- package/src/learn-upon/learn-upon-user-mapping.ts +9 -9
- package/src/learn-upon/learn-upon-webhook-events.ts +80 -80
- package/src/learn-upon/learn-upon-webhook-types.ts +346 -346
- package/src/learn-upon/unenroll.ts +6 -6
- package/src/localisation/live-locales.ts +45 -45
- package/src/localisation/locale-language.ts +4 -4
- package/src/localisation/supported-languages.ts +11 -11
- package/src/localisation/supported-locales.ts +67 -67
- package/src/message-bus/context.ts +7 -7
- package/src/moderation/hack-moderation-result-events.ts +18 -18
- package/src/moderation/hack-moderation-result.ts +27 -27
- package/src/partner/partner-events.ts +21 -21
- package/src/partner/partner.ts +7 -7
- package/src/pending-hack/pending-hack-events.ts +20 -20
- package/src/pending-hack/pending-hack-with-voice-events.ts +20 -20
- package/src/pending-hack/pending-hack-with-voice.ts +25 -25
- package/src/pending-hack/pending-hack.ts +78 -78
- package/src/preferences/preferences-events.ts +15 -15
- package/src/preferences/preferences.ts +35 -35
- package/src/profile/profile-events.ts +41 -41
- package/src/profile/profile.ts +36 -36
- package/src/profile/translated-profile.ts +13 -13
- package/src/referral/referral-events.ts +41 -41
- package/src/referral/referral.ts +76 -76
- package/src/saved/saved-collection-events.ts +19 -19
- package/src/saved/saved-collection.ts +8 -8
- package/src/segment/segment-commands.ts +75 -75
- package/src/segment/segment-events.ts +42 -42
- package/src/segment/segment-with-voice.ts +8 -8
- package/src/segment/segment.ts +82 -82
- package/src/service-simulator/mock-request-response.ts +17 -17
- package/src/skin/skin-events.ts +21 -21
- package/src/skin/skin.ts +6 -6
- package/src/spark/spark-board-read-model.ts +17 -17
- package/src/spark/spark-board.ts +12 -12
- package/src/spark/spark-events.ts +42 -42
- package/src/spark/spark.ts +75 -75
- package/src/text-to-speech/create-speech-commands.ts +22 -22
- package/src/text-to-speech/speech-created-events.ts +10 -10
- package/src/text-to-speech/supported-voices.ts +222 -222
- package/src/text-to-speech/text-segment.ts +29 -29
- package/src/theme/theme-events.ts +21 -21
- package/src/theme/theme.ts +68 -68
- package/src/translation/translation-events.ts +73 -73
- package/src/translation/translation.ts +25 -25
- package/src/trending/trending-events.ts +21 -21
- package/src/trending/trending-hacks.ts +8 -8
- package/src/user/cognito-user-authentication-log.ts +7 -7
- package/src/user/get-user.ts +63 -63
- package/src/user/user-events.ts +32 -32
- package/src/user-context/user-context-events.ts +21 -21
- package/src/user-context/user-context.ts +15 -15
- package/src/user-notification-context/user-notification-context-events.ts +21 -21
- package/src/user-notification-context/user-notification-context.ts +9 -9
- package/src/user-statistics/user-statistics-events.ts +97 -97
- package/src/user-statistics/user-statistics.ts +82 -82
- package/src/video-cropping/video-cropping-events.ts +43 -43
- package/src/video-cropping/video-metadata.ts +12 -12
- package/tsconfig.cjs.json +7 -7
- package/tsconfig.npm.json +22 -22
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
export interface Collection {
|
|
2
|
-
id: string;
|
|
3
|
-
v: number;
|
|
4
|
-
createdAt: string;
|
|
5
|
-
updatedAt: string;
|
|
6
|
-
|
|
7
|
-
title: string;
|
|
8
|
-
/** added 21/02/2023 use @uptime.app/localisation-contracts SupportedLocale */
|
|
9
|
-
locale: string;
|
|
10
|
-
/** added 21/02/2023 */
|
|
11
|
-
baseLocaleCollectionId: string;
|
|
12
|
-
/** added May 2023. Only set on collections that are translations */
|
|
13
|
-
baseLocaleCollectionVersion?: number;
|
|
14
|
-
subtitle?: string;
|
|
15
|
-
iconUrl?: string;
|
|
16
|
-
coverUrl?: string;
|
|
17
|
-
backgroundColor?: string;
|
|
18
|
-
description: string;
|
|
19
|
-
isPublished: boolean;
|
|
20
|
-
visibility?: CollectionVisibility;
|
|
21
|
-
tags?: string[];
|
|
22
|
-
rank?: number;
|
|
23
|
-
notificationMessage?: string;
|
|
24
|
-
type: CollectionType;
|
|
25
|
-
backdrop?: BackdropMetadata;
|
|
26
|
-
|
|
27
|
-
/** Added on June 2022. Not all messages on the archive will have this property. */
|
|
28
|
-
collectionHacks: CollectionHack[];
|
|
29
|
-
owner: string;
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* @deprecated you should use new 'collectionHacks' property
|
|
33
|
-
*/
|
|
34
|
-
hackIds: string[];
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export type CollectionType = 'collection' | 'backdrop';
|
|
38
|
-
|
|
39
|
-
export interface CollectionVisibility {
|
|
40
|
-
/* ISO date */
|
|
41
|
-
startDate: string;
|
|
42
|
-
/* ISO date */
|
|
43
|
-
endDate: string;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export interface CollectionHack {
|
|
47
|
-
hackId: string;
|
|
48
|
-
/**
|
|
49
|
-
* @maxLength 300
|
|
50
|
-
*/
|
|
51
|
-
blurb?: string;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export interface BackdropMetadata {
|
|
55
|
-
/* e.g. "2022-02-09T10:00:00" */
|
|
56
|
-
backdropDate: string;
|
|
57
|
-
}
|
|
1
|
+
export interface Collection {
|
|
2
|
+
id: string;
|
|
3
|
+
v: number;
|
|
4
|
+
createdAt: string;
|
|
5
|
+
updatedAt: string;
|
|
6
|
+
|
|
7
|
+
title: string;
|
|
8
|
+
/** added 21/02/2023 use @uptime.app/localisation-contracts SupportedLocale */
|
|
9
|
+
locale: string;
|
|
10
|
+
/** added 21/02/2023 */
|
|
11
|
+
baseLocaleCollectionId: string;
|
|
12
|
+
/** added May 2023. Only set on collections that are translations */
|
|
13
|
+
baseLocaleCollectionVersion?: number;
|
|
14
|
+
subtitle?: string;
|
|
15
|
+
iconUrl?: string;
|
|
16
|
+
coverUrl?: string;
|
|
17
|
+
backgroundColor?: string;
|
|
18
|
+
description: string;
|
|
19
|
+
isPublished: boolean;
|
|
20
|
+
visibility?: CollectionVisibility;
|
|
21
|
+
tags?: string[];
|
|
22
|
+
rank?: number;
|
|
23
|
+
notificationMessage?: string;
|
|
24
|
+
type: CollectionType;
|
|
25
|
+
backdrop?: BackdropMetadata;
|
|
26
|
+
|
|
27
|
+
/** Added on June 2022. Not all messages on the archive will have this property. */
|
|
28
|
+
collectionHacks: CollectionHack[];
|
|
29
|
+
owner: string;
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @deprecated you should use new 'collectionHacks' property
|
|
33
|
+
*/
|
|
34
|
+
hackIds: string[];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export type CollectionType = 'collection' | 'backdrop';
|
|
38
|
+
|
|
39
|
+
export interface CollectionVisibility {
|
|
40
|
+
/* ISO date */
|
|
41
|
+
startDate: string;
|
|
42
|
+
/* ISO date */
|
|
43
|
+
endDate: string;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface CollectionHack {
|
|
47
|
+
hackId: string;
|
|
48
|
+
/**
|
|
49
|
+
* @maxLength 300
|
|
50
|
+
*/
|
|
51
|
+
blurb?: string;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface BackdropMetadata {
|
|
55
|
+
/* e.g. "2022-02-09T10:00:00" */
|
|
56
|
+
backdropDate: string;
|
|
57
|
+
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { EnrichedCollection } from './enriched-collection';
|
|
2
|
-
|
|
3
|
-
export interface EnrichedCollectionCreatedEvent {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'EnrichedCollectionCreated';
|
|
6
|
-
payload: EnrichedCollection;
|
|
7
|
-
}
|
|
8
|
-
export interface EnrichedCollectionUpdatedEvent {
|
|
9
|
-
id: string;
|
|
10
|
-
type: 'EnrichedCollectionUpdated';
|
|
11
|
-
payload: EnrichedCollection;
|
|
12
|
-
}
|
|
13
|
-
export interface EnrichedCollectionDeletedEvent {
|
|
14
|
-
id: string;
|
|
15
|
-
type: 'EnrichedCollectionDeleted';
|
|
16
|
-
payload: EnrichedCollection;
|
|
17
|
-
}
|
|
18
|
-
export type EnrichedCollectionChangedEvent = EnrichedCollectionCreatedEvent | EnrichedCollectionUpdatedEvent | EnrichedCollectionDeletedEvent;
|
|
1
|
+
import { EnrichedCollection } from './enriched-collection';
|
|
2
|
+
|
|
3
|
+
export interface EnrichedCollectionCreatedEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'EnrichedCollectionCreated';
|
|
6
|
+
payload: EnrichedCollection;
|
|
7
|
+
}
|
|
8
|
+
export interface EnrichedCollectionUpdatedEvent {
|
|
9
|
+
id: string;
|
|
10
|
+
type: 'EnrichedCollectionUpdated';
|
|
11
|
+
payload: EnrichedCollection;
|
|
12
|
+
}
|
|
13
|
+
export interface EnrichedCollectionDeletedEvent {
|
|
14
|
+
id: string;
|
|
15
|
+
type: 'EnrichedCollectionDeleted';
|
|
16
|
+
payload: EnrichedCollection;
|
|
17
|
+
}
|
|
18
|
+
export type EnrichedCollectionChangedEvent = EnrichedCollectionCreatedEvent | EnrichedCollectionUpdatedEvent | EnrichedCollectionDeletedEvent;
|
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
import { AppHackMetadata } from '../app-hack/app-hack-metadata';
|
|
2
|
-
import { ProfileMetadata } from '../profile/profile';
|
|
3
|
-
import { BackdropMetadata } from './collection';
|
|
4
|
-
|
|
5
|
-
export interface EnrichedCollection {
|
|
6
|
-
id: string;
|
|
7
|
-
v: number;
|
|
8
|
-
createdAt: string;
|
|
9
|
-
updatedAt: string;
|
|
10
|
-
locale: string,
|
|
11
|
-
language: string;
|
|
12
|
-
baseLocaleCollectionId: string;
|
|
13
|
-
title: string;
|
|
14
|
-
subtitle?: string;
|
|
15
|
-
coverUrl?: string;
|
|
16
|
-
iconUrl?: string;
|
|
17
|
-
backgroundColor?: string;
|
|
18
|
-
description: string;
|
|
19
|
-
tags: string[];
|
|
20
|
-
rank?: number;
|
|
21
|
-
acl: string[];
|
|
22
|
-
catalogues: string[];
|
|
23
|
-
isPublished: boolean;
|
|
24
|
-
owner: string;
|
|
25
|
-
hacks: EnrichCollectionHack[];
|
|
26
|
-
backdrop?: BackdropMetadata;
|
|
27
|
-
isBackdrop: boolean;
|
|
28
|
-
profile: EnrichCollectionProfile;
|
|
29
|
-
notificationMessage?: string;
|
|
30
|
-
includeInEmailNotifications: boolean;
|
|
31
|
-
includeInPushNotifications: boolean;
|
|
32
|
-
includeInRecommendations: boolean;
|
|
33
|
-
includeInSearchResults: boolean;
|
|
34
|
-
includeInWebsite: boolean;
|
|
35
|
-
isHidden: boolean;
|
|
36
|
-
visibility?: Visibility;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface EnrichCollectionHack {
|
|
40
|
-
blurb?: string;
|
|
41
|
-
hack: AppHackMetadata;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export interface ExistingProfile {
|
|
45
|
-
id: string;
|
|
46
|
-
name: string;
|
|
47
|
-
avatarUrl: string;
|
|
48
|
-
handle: string;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export type DeletedProfile = ProfileMetadata;
|
|
52
|
-
|
|
53
|
-
export interface Visibility {
|
|
54
|
-
/* ISO date */
|
|
55
|
-
startDate: string;
|
|
56
|
-
/* ISO date */
|
|
57
|
-
endDate: string;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
// matches pattern found in the hack enrichment service where the EnrichedHackProfile may be an actual Profile or it may have been deleted
|
|
61
|
-
export type EnrichCollectionProfile = ExistingProfile | DeletedProfile;
|
|
1
|
+
import { AppHackMetadata } from '../app-hack/app-hack-metadata';
|
|
2
|
+
import { ProfileMetadata } from '../profile/profile';
|
|
3
|
+
import { BackdropMetadata } from './collection';
|
|
4
|
+
|
|
5
|
+
export interface EnrichedCollection {
|
|
6
|
+
id: string;
|
|
7
|
+
v: number;
|
|
8
|
+
createdAt: string;
|
|
9
|
+
updatedAt: string;
|
|
10
|
+
locale: string,
|
|
11
|
+
language: string;
|
|
12
|
+
baseLocaleCollectionId: string;
|
|
13
|
+
title: string;
|
|
14
|
+
subtitle?: string;
|
|
15
|
+
coverUrl?: string;
|
|
16
|
+
iconUrl?: string;
|
|
17
|
+
backgroundColor?: string;
|
|
18
|
+
description: string;
|
|
19
|
+
tags: string[];
|
|
20
|
+
rank?: number;
|
|
21
|
+
acl: string[];
|
|
22
|
+
catalogues: string[];
|
|
23
|
+
isPublished: boolean;
|
|
24
|
+
owner: string;
|
|
25
|
+
hacks: EnrichCollectionHack[];
|
|
26
|
+
backdrop?: BackdropMetadata;
|
|
27
|
+
isBackdrop: boolean;
|
|
28
|
+
profile: EnrichCollectionProfile;
|
|
29
|
+
notificationMessage?: string;
|
|
30
|
+
includeInEmailNotifications: boolean;
|
|
31
|
+
includeInPushNotifications: boolean;
|
|
32
|
+
includeInRecommendations: boolean;
|
|
33
|
+
includeInSearchResults: boolean;
|
|
34
|
+
includeInWebsite: boolean;
|
|
35
|
+
isHidden: boolean;
|
|
36
|
+
visibility?: Visibility;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface EnrichCollectionHack {
|
|
40
|
+
blurb?: string;
|
|
41
|
+
hack: AppHackMetadata;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface ExistingProfile {
|
|
45
|
+
id: string;
|
|
46
|
+
name: string;
|
|
47
|
+
avatarUrl: string;
|
|
48
|
+
handle: string;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export type DeletedProfile = ProfileMetadata;
|
|
52
|
+
|
|
53
|
+
export interface Visibility {
|
|
54
|
+
/* ISO date */
|
|
55
|
+
startDate: string;
|
|
56
|
+
/* ISO date */
|
|
57
|
+
endDate: string;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// matches pattern found in the hack enrichment service where the EnrichedHackProfile may be an actual Profile or it may have been deleted
|
|
61
|
+
export type EnrichCollectionProfile = ExistingProfile | DeletedProfile;
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { Course } from './course';
|
|
2
|
-
|
|
3
|
-
export interface CourseCreatedEvent {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'CourseCreated';
|
|
6
|
-
payload: Course;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export interface CourseUpdatedEvent {
|
|
10
|
-
id: string;
|
|
11
|
-
type: 'CourseUpdated';
|
|
12
|
-
payload: Course;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export interface CourseDeletedEvent {
|
|
16
|
-
id: string;
|
|
17
|
-
type: 'CourseDeleted';
|
|
18
|
-
payload: Course;
|
|
19
|
-
}
|
|
20
|
-
|
|
1
|
+
import { Course } from './course';
|
|
2
|
+
|
|
3
|
+
export interface CourseCreatedEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'CourseCreated';
|
|
6
|
+
payload: Course;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface CourseUpdatedEvent {
|
|
10
|
+
id: string;
|
|
11
|
+
type: 'CourseUpdated';
|
|
12
|
+
payload: Course;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface CourseDeletedEvent {
|
|
16
|
+
id: string;
|
|
17
|
+
type: 'CourseDeleted';
|
|
18
|
+
payload: Course;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
21
|
export type CourseChangedEvent = CourseCreatedEvent | CourseUpdatedEvent | CourseDeletedEvent;
|
package/src/course/course.ts
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
export interface Course {
|
|
3
|
-
id: string;
|
|
4
|
-
uptimeLearnUponPortalId: string;
|
|
5
|
-
v: number;
|
|
6
|
-
createdAt: string;
|
|
7
|
-
updatedAt: string;
|
|
8
|
-
title: string;
|
|
9
|
-
coverUrl?: string;
|
|
10
|
-
moduleCount: number;
|
|
11
|
-
isCertified: boolean;
|
|
12
|
-
isCataloged: boolean;
|
|
13
|
-
dueDate?: string;
|
|
14
|
-
accessExpiresAt?: string;
|
|
15
|
-
publishedAt?: string;
|
|
16
|
-
status: 'published' | 'draft' | 'archived' | 'under_revision' | 'deleted';
|
|
17
|
-
shortDescription?: string;
|
|
18
|
-
descriptionText?: string;
|
|
19
|
-
descriptionHtml?: string;
|
|
20
|
-
objectivesText?: string;
|
|
21
|
-
objectivesHtml?: string;
|
|
22
|
-
difficulty: 'not_applicable' | 'basic' | 'intermediate' | 'advanced';
|
|
23
|
-
length?: number;
|
|
24
|
-
lengthUnit?: string;
|
|
25
|
-
}
|
|
1
|
+
|
|
2
|
+
export interface Course {
|
|
3
|
+
id: string;
|
|
4
|
+
uptimeLearnUponPortalId: string;
|
|
5
|
+
v: number;
|
|
6
|
+
createdAt: string;
|
|
7
|
+
updatedAt: string;
|
|
8
|
+
title: string;
|
|
9
|
+
coverUrl?: string;
|
|
10
|
+
moduleCount: number;
|
|
11
|
+
isCertified: boolean;
|
|
12
|
+
isCataloged: boolean;
|
|
13
|
+
dueDate?: string;
|
|
14
|
+
accessExpiresAt?: string;
|
|
15
|
+
publishedAt?: string;
|
|
16
|
+
status: 'published' | 'draft' | 'archived' | 'under_revision' | 'deleted';
|
|
17
|
+
shortDescription?: string;
|
|
18
|
+
descriptionText?: string;
|
|
19
|
+
descriptionHtml?: string;
|
|
20
|
+
objectivesText?: string;
|
|
21
|
+
objectivesHtml?: string;
|
|
22
|
+
difficulty: 'not_applicable' | 'basic' | 'intermediate' | 'advanced';
|
|
23
|
+
length?: number;
|
|
24
|
+
lengthUnit?: string;
|
|
25
|
+
}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { CourseEnrollment } from './course-enrollment';
|
|
2
|
-
|
|
3
|
-
export interface CourseEnrollmentCreatedEvent {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'CourseEnrollmentCreated';
|
|
6
|
-
payload: CourseEnrollment;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export interface CourseEnrollmentUpdatedEvent {
|
|
10
|
-
id: string;
|
|
11
|
-
type: 'CourseEnrollmentUpdated';
|
|
12
|
-
payload: CourseEnrollment;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export interface CourseEnrollmentDeletedEvent {
|
|
16
|
-
id: string;
|
|
17
|
-
type: 'CourseEnrollmentDeleted';
|
|
18
|
-
payload: CourseEnrollment;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export type CourseEnrollmentChangedEvent = CourseEnrollmentCreatedEvent | CourseEnrollmentUpdatedEvent | CourseEnrollmentDeletedEvent;
|
|
1
|
+
import { CourseEnrollment } from './course-enrollment';
|
|
2
|
+
|
|
3
|
+
export interface CourseEnrollmentCreatedEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'CourseEnrollmentCreated';
|
|
6
|
+
payload: CourseEnrollment;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface CourseEnrollmentUpdatedEvent {
|
|
10
|
+
id: string;
|
|
11
|
+
type: 'CourseEnrollmentUpdated';
|
|
12
|
+
payload: CourseEnrollment;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface CourseEnrollmentDeletedEvent {
|
|
16
|
+
id: string;
|
|
17
|
+
type: 'CourseEnrollmentDeleted';
|
|
18
|
+
payload: CourseEnrollment;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export type CourseEnrollmentChangedEvent = CourseEnrollmentCreatedEvent | CourseEnrollmentUpdatedEvent | CourseEnrollmentDeletedEvent;
|
|
@@ -1,35 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
export interface CourseEnrollment {
|
|
3
|
-
/** maps to LearnUponWebhookCourseEnrollment.id */
|
|
4
|
-
id: string;
|
|
5
|
-
v: number;
|
|
6
|
-
createdAt: string;
|
|
7
|
-
updatedAt: string;
|
|
8
|
-
/** maps to Course.title */
|
|
9
|
-
courseTitle: string;
|
|
10
|
-
/** maps to Course.coverUrl */
|
|
11
|
-
courseCoverUrl?: string;
|
|
12
|
-
/** uptime user id */
|
|
13
|
-
userId: string;
|
|
14
|
-
/** maps to Course.id */
|
|
15
|
-
courseId: string;
|
|
16
|
-
dueDate?: string;
|
|
17
|
-
accessExpiresAt?: string;
|
|
18
|
-
/** maps to Course.moduleCount */
|
|
19
|
-
moduleCount: number;
|
|
20
|
-
/** maps to Course.isCertified */
|
|
21
|
-
isCertified: boolean;
|
|
22
|
-
/** LearnUponWebhookCourseEnrollment.eventCreated */
|
|
23
|
-
enrolledAt: string;
|
|
24
|
-
/** maps to LearnUponWebhookCourseCompletion.enrollmentStatus && LearnUponWebhookModuleCompletions*/
|
|
25
|
-
status: 'not_started' | 'in_progress' | 'completed' | 'passed' | 'failed' | 'pending_review';
|
|
26
|
-
percentageComplete: number;
|
|
27
|
-
completedModuleCount: number;
|
|
28
|
-
startedAt?: string;
|
|
29
|
-
completedAt?: string;
|
|
30
|
-
lastInteractedAt?: string;
|
|
31
|
-
enrollmentUpdatedAt?: string;
|
|
32
|
-
unenrolled?: boolean;
|
|
33
|
-
|
|
34
|
-
courseShortDescription?: string;
|
|
35
|
-
}
|
|
1
|
+
|
|
2
|
+
export interface CourseEnrollment {
|
|
3
|
+
/** maps to LearnUponWebhookCourseEnrollment.id */
|
|
4
|
+
id: string;
|
|
5
|
+
v: number;
|
|
6
|
+
createdAt: string;
|
|
7
|
+
updatedAt: string;
|
|
8
|
+
/** maps to Course.title */
|
|
9
|
+
courseTitle: string;
|
|
10
|
+
/** maps to Course.coverUrl */
|
|
11
|
+
courseCoverUrl?: string;
|
|
12
|
+
/** uptime user id */
|
|
13
|
+
userId: string;
|
|
14
|
+
/** maps to Course.id */
|
|
15
|
+
courseId: string;
|
|
16
|
+
dueDate?: string;
|
|
17
|
+
accessExpiresAt?: string;
|
|
18
|
+
/** maps to Course.moduleCount */
|
|
19
|
+
moduleCount: number;
|
|
20
|
+
/** maps to Course.isCertified */
|
|
21
|
+
isCertified: boolean;
|
|
22
|
+
/** LearnUponWebhookCourseEnrollment.eventCreated */
|
|
23
|
+
enrolledAt: string;
|
|
24
|
+
/** maps to LearnUponWebhookCourseCompletion.enrollmentStatus && LearnUponWebhookModuleCompletions*/
|
|
25
|
+
status: 'not_started' | 'in_progress' | 'completed' | 'passed' | 'failed' | 'pending_review';
|
|
26
|
+
percentageComplete: number;
|
|
27
|
+
completedModuleCount: number;
|
|
28
|
+
startedAt?: string;
|
|
29
|
+
completedAt?: string;
|
|
30
|
+
lastInteractedAt?: string;
|
|
31
|
+
enrollmentUpdatedAt?: string;
|
|
32
|
+
unenrolled?: boolean;
|
|
33
|
+
}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { Creator } from './creator';
|
|
2
|
-
|
|
3
|
-
export interface CreatorCreatedEvent {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'CreatorCreated',
|
|
6
|
-
payload: Creator;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
export interface CreatorUpdatedEvent {
|
|
11
|
-
id: string;
|
|
12
|
-
type: 'CreatorUpdated',
|
|
13
|
-
payload: Creator;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export interface CreatorDeletedEvent {
|
|
17
|
-
id: string;
|
|
18
|
-
type: 'CreatorDeleted',
|
|
19
|
-
payload: Creator;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export type CreatorChangedEvent = CreatorCreatedEvent | CreatorUpdatedEvent | CreatorDeletedEvent;
|
|
23
|
-
|
|
24
|
-
export interface BecomeACreatorCommandPayload {
|
|
25
|
-
userId: string;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface BecomeACreatorCommand {
|
|
29
|
-
id: string;
|
|
30
|
-
type: 'BecomeACreator',
|
|
31
|
-
payload: BecomeACreatorCommandPayload;
|
|
32
|
-
}
|
|
1
|
+
import { Creator } from './creator';
|
|
2
|
+
|
|
3
|
+
export interface CreatorCreatedEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'CreatorCreated',
|
|
6
|
+
payload: Creator;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
export interface CreatorUpdatedEvent {
|
|
11
|
+
id: string;
|
|
12
|
+
type: 'CreatorUpdated',
|
|
13
|
+
payload: Creator;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface CreatorDeletedEvent {
|
|
17
|
+
id: string;
|
|
18
|
+
type: 'CreatorDeleted',
|
|
19
|
+
payload: Creator;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export type CreatorChangedEvent = CreatorCreatedEvent | CreatorUpdatedEvent | CreatorDeletedEvent;
|
|
23
|
+
|
|
24
|
+
export interface BecomeACreatorCommandPayload {
|
|
25
|
+
userId: string;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface BecomeACreatorCommand {
|
|
29
|
+
id: string;
|
|
30
|
+
type: 'BecomeACreator',
|
|
31
|
+
payload: BecomeACreatorCommandPayload;
|
|
32
|
+
}
|
package/src/creator/creator.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export interface Creator {
|
|
2
|
-
id: string;
|
|
3
|
-
v: number;
|
|
4
|
-
createdAt: string;
|
|
5
|
-
updatedAt: string;
|
|
6
|
-
owner: string;
|
|
7
|
-
}
|
|
1
|
+
export interface Creator {
|
|
2
|
+
id: string;
|
|
3
|
+
v: number;
|
|
4
|
+
createdAt: string;
|
|
5
|
+
updatedAt: string;
|
|
6
|
+
owner: string;
|
|
7
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export interface CollectionDistribution extends CollectionDistributionProperties {
|
|
2
|
-
id: string;
|
|
3
|
-
v: number;
|
|
4
|
-
createdAt: string;
|
|
5
|
-
updatedAt: string;
|
|
6
|
-
collectionId: string;
|
|
7
|
-
baseLocaleCollectionId: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface CollectionDistributionProperties {
|
|
11
|
-
includeInEmailNotifications: boolean;
|
|
12
|
-
includeInPushNotifications: boolean;
|
|
13
|
-
includeInRecommendations: boolean;
|
|
14
|
-
includeInSearchResults: boolean;
|
|
15
|
-
includeInWebsite: boolean;
|
|
16
|
-
isHidden: boolean;
|
|
17
|
-
}
|
|
1
|
+
export interface CollectionDistribution extends CollectionDistributionProperties {
|
|
2
|
+
id: string;
|
|
3
|
+
v: number;
|
|
4
|
+
createdAt: string;
|
|
5
|
+
updatedAt: string;
|
|
6
|
+
collectionId: string;
|
|
7
|
+
baseLocaleCollectionId: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface CollectionDistributionProperties {
|
|
11
|
+
includeInEmailNotifications: boolean;
|
|
12
|
+
includeInPushNotifications: boolean;
|
|
13
|
+
includeInRecommendations: boolean;
|
|
14
|
+
includeInSearchResults: boolean;
|
|
15
|
+
includeInWebsite: boolean;
|
|
16
|
+
isHidden: boolean;
|
|
17
|
+
}
|