@uptime.app/contracts 2.0.39-rc.0 → 2.0.39
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/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 +60 -60
- 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 +25 -25
- package/src/b2b-organisation/b2b-organisation-events.ts +21 -21
- 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 +11 -11
- package/src/b2b-organisation/b2b-organisation.ts +33 -33
- package/src/brand/brand-events.ts +21 -21
- package/src/brand/brand.ts +26 -26
- 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 +64 -64
- 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-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 +33 -33
- package/src/hack/hack.ts +117 -117
- package/src/hack/publish-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 +81 -81
- 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 +2574 -2574
- package/src/hack-mapping/test-data/expected-app-full-hack.json +2507 -2507
- package/src/hack-mapping/test-data/expected-app-hack-metadata.json +90 -90
- package/src/hack-mapping/test-data/expected-app-restricted-hack.json +797 -797
- 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 +27 -27
- package/src/index.ts +177 -177
- 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/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 +29 -29
- 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/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 +80 -80
- 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 +183 -183
- 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/get-user.ts +60 -60
- package/src/user/user-events.ts +30 -30
- 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
package/src/segment/segment.ts
CHANGED
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
export interface SegmentVoice {
|
|
2
|
-
id: string;
|
|
3
|
-
language: string;
|
|
4
|
-
name: string;
|
|
5
|
-
countryCode: string;
|
|
6
|
-
speechProvider: string;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export interface Segment {
|
|
10
|
-
id: string;
|
|
11
|
-
v: number;
|
|
12
|
-
createdAt: string;
|
|
13
|
-
updatedAt: string;
|
|
14
|
-
hackId: string;
|
|
15
|
-
type: SegmentType;
|
|
16
|
-
title: string;
|
|
17
|
-
sections: SegmentSection[];
|
|
18
|
-
keywords: string[];
|
|
19
|
-
actions: SegmentAction[];
|
|
20
|
-
speech: SegmentSpeech[];
|
|
21
|
-
textSummary?: string;
|
|
22
|
-
lastUpdatedFromPendingSegmentId?: string;
|
|
23
|
-
hackType: string;
|
|
24
|
-
/** use @uptime.app/text-to-speech-contracts */
|
|
25
|
-
locale: string;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export type SegmentType =
|
|
29
|
-
'overview' | 'favourite-quote' | 'in-a-nutshell' |
|
|
30
|
-
'introduction' | 'here-are-the-insights' |
|
|
31
|
-
'insight-one' | 'insight-two' | 'insight-three' |
|
|
32
|
-
'put-in-action' | 'conclusion' |
|
|
33
|
-
'shareable-overview' | 'download-app-to-see-more';
|
|
34
|
-
|
|
35
|
-
export type CardType = 'hack-cover' | 'action';
|
|
36
|
-
|
|
37
|
-
export interface SegmentAction {
|
|
38
|
-
title: string;
|
|
39
|
-
cards: SegmentTextCard[];
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export interface SegmentTextCard {
|
|
43
|
-
id: string;
|
|
44
|
-
markdown: string;
|
|
45
|
-
segmentType: SegmentType;
|
|
46
|
-
cardType?: CardType;
|
|
47
|
-
isTitle?: boolean;
|
|
48
|
-
speech?: TextCardSpeech[];
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export interface SegmentSection {
|
|
52
|
-
heading?: string;
|
|
53
|
-
cards: SegmentTextCard[];
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export interface SegmentSpeech {
|
|
57
|
-
voice: SegmentVoice;
|
|
58
|
-
withHeading: {
|
|
59
|
-
url: string;
|
|
60
|
-
lengthSeconds: number;
|
|
61
|
-
};
|
|
62
|
-
withoutHeading: {
|
|
63
|
-
url: string;
|
|
64
|
-
lengthSeconds: number;
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export interface TextCardSpeech {
|
|
69
|
-
voiceId: string;
|
|
70
|
-
withHeading: {
|
|
71
|
-
timestamps: {
|
|
72
|
-
startsAt: number;
|
|
73
|
-
endsAt: number;
|
|
74
|
-
};
|
|
75
|
-
};
|
|
76
|
-
withoutHeading: {
|
|
77
|
-
timestamps: {
|
|
78
|
-
startsAt: number;
|
|
79
|
-
endsAt: number;
|
|
80
|
-
};
|
|
81
|
-
};
|
|
82
|
-
}
|
|
1
|
+
export interface SegmentVoice {
|
|
2
|
+
id: string;
|
|
3
|
+
language: string;
|
|
4
|
+
name: string;
|
|
5
|
+
countryCode: string;
|
|
6
|
+
speechProvider: string;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface Segment {
|
|
10
|
+
id: string;
|
|
11
|
+
v: number;
|
|
12
|
+
createdAt: string;
|
|
13
|
+
updatedAt: string;
|
|
14
|
+
hackId: string;
|
|
15
|
+
type: SegmentType;
|
|
16
|
+
title: string;
|
|
17
|
+
sections: SegmentSection[];
|
|
18
|
+
keywords: string[];
|
|
19
|
+
actions: SegmentAction[];
|
|
20
|
+
speech: SegmentSpeech[];
|
|
21
|
+
textSummary?: string;
|
|
22
|
+
lastUpdatedFromPendingSegmentId?: string;
|
|
23
|
+
hackType: string;
|
|
24
|
+
/** use @uptime.app/text-to-speech-contracts */
|
|
25
|
+
locale: string;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export type SegmentType =
|
|
29
|
+
'overview' | 'favourite-quote' | 'in-a-nutshell' |
|
|
30
|
+
'introduction' | 'here-are-the-insights' |
|
|
31
|
+
'insight-one' | 'insight-two' | 'insight-three' |
|
|
32
|
+
'put-in-action' | 'conclusion' |
|
|
33
|
+
'shareable-overview' | 'download-app-to-see-more';
|
|
34
|
+
|
|
35
|
+
export type CardType = 'hack-cover' | 'action';
|
|
36
|
+
|
|
37
|
+
export interface SegmentAction {
|
|
38
|
+
title: string;
|
|
39
|
+
cards: SegmentTextCard[];
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface SegmentTextCard {
|
|
43
|
+
id: string;
|
|
44
|
+
markdown: string;
|
|
45
|
+
segmentType: SegmentType;
|
|
46
|
+
cardType?: CardType;
|
|
47
|
+
isTitle?: boolean;
|
|
48
|
+
speech?: TextCardSpeech[];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface SegmentSection {
|
|
52
|
+
heading?: string;
|
|
53
|
+
cards: SegmentTextCard[];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface SegmentSpeech {
|
|
57
|
+
voice: SegmentVoice;
|
|
58
|
+
withHeading: {
|
|
59
|
+
url: string;
|
|
60
|
+
lengthSeconds: number;
|
|
61
|
+
};
|
|
62
|
+
withoutHeading: {
|
|
63
|
+
url: string;
|
|
64
|
+
lengthSeconds: number;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface TextCardSpeech {
|
|
69
|
+
voiceId: string;
|
|
70
|
+
withHeading: {
|
|
71
|
+
timestamps: {
|
|
72
|
+
startsAt: number;
|
|
73
|
+
endsAt: number;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
withoutHeading: {
|
|
77
|
+
timestamps: {
|
|
78
|
+
startsAt: number;
|
|
79
|
+
endsAt: number;
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
}
|
package/src/skin/skin-events.ts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { Skin } from './skin';
|
|
2
|
-
|
|
3
|
-
export interface SkinCreatedEvent {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'SkinCreated';
|
|
6
|
-
payload: Skin;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export interface SkinUpdatedEvent {
|
|
10
|
-
id: string;
|
|
11
|
-
type: 'SkinUpdated';
|
|
12
|
-
payload: Skin;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export interface SkinDeletedEvent {
|
|
16
|
-
id: string;
|
|
17
|
-
type: 'SkinDeleted';
|
|
18
|
-
payload: Skin;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export type SkinChangedEvent = SkinCreatedEvent | SkinUpdatedEvent | SkinDeletedEvent;
|
|
1
|
+
import { Skin } from './skin';
|
|
2
|
+
|
|
3
|
+
export interface SkinCreatedEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'SkinCreated';
|
|
6
|
+
payload: Skin;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface SkinUpdatedEvent {
|
|
10
|
+
id: string;
|
|
11
|
+
type: 'SkinUpdated';
|
|
12
|
+
payload: Skin;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface SkinDeletedEvent {
|
|
16
|
+
id: string;
|
|
17
|
+
type: 'SkinDeleted';
|
|
18
|
+
payload: Skin;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export type SkinChangedEvent = SkinCreatedEvent | SkinUpdatedEvent | SkinDeletedEvent;
|
package/src/skin/skin.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
export interface Skin {
|
|
3
|
-
id: string;
|
|
4
|
-
v: number;
|
|
5
|
-
createdAt: string;
|
|
6
|
-
updatedAt: string;
|
|
1
|
+
|
|
2
|
+
export interface Skin {
|
|
3
|
+
id: string;
|
|
4
|
+
v: number;
|
|
5
|
+
createdAt: string;
|
|
6
|
+
updatedAt: string;
|
|
7
7
|
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { Spark } from './spark';
|
|
2
|
-
import { SparkBoardType } from './spark-board';
|
|
3
|
-
|
|
4
|
-
export interface SparkBoardReadModel {
|
|
5
|
-
// the spark board id
|
|
6
|
-
id: string;
|
|
7
|
-
// the version of the read model
|
|
8
|
-
v: number;
|
|
9
|
-
updatedAt: string;
|
|
10
|
-
createdAt: string;
|
|
11
|
-
sparkBoardVersion: number;
|
|
12
|
-
userId: string;
|
|
13
|
-
boardName: string;
|
|
14
|
-
boardType?: SparkBoardType;
|
|
15
|
-
sparkCount: number;
|
|
16
|
-
firstSparks: Spark[];
|
|
17
|
-
}
|
|
1
|
+
import { Spark } from './spark';
|
|
2
|
+
import { SparkBoardType } from './spark-board';
|
|
3
|
+
|
|
4
|
+
export interface SparkBoardReadModel {
|
|
5
|
+
// the spark board id
|
|
6
|
+
id: string;
|
|
7
|
+
// the version of the read model
|
|
8
|
+
v: number;
|
|
9
|
+
updatedAt: string;
|
|
10
|
+
createdAt: string;
|
|
11
|
+
sparkBoardVersion: number;
|
|
12
|
+
userId: string;
|
|
13
|
+
boardName: string;
|
|
14
|
+
boardType?: SparkBoardType;
|
|
15
|
+
sparkCount: number;
|
|
16
|
+
firstSparks: Spark[];
|
|
17
|
+
}
|
package/src/spark/spark-board.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export interface SparkBoard {
|
|
2
|
-
id: string;
|
|
3
|
-
v: number;
|
|
4
|
-
createdAt: string;
|
|
5
|
-
updatedAt: string;
|
|
6
|
-
userId: string;
|
|
7
|
-
boardName: string;
|
|
8
|
-
boardType?: SparkBoardType;
|
|
9
|
-
isPublic: boolean;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export type SparkBoardType = 'default';
|
|
1
|
+
export interface SparkBoard {
|
|
2
|
+
id: string;
|
|
3
|
+
v: number;
|
|
4
|
+
createdAt: string;
|
|
5
|
+
updatedAt: string;
|
|
6
|
+
userId: string;
|
|
7
|
+
boardName: string;
|
|
8
|
+
boardType?: SparkBoardType;
|
|
9
|
+
isPublic: boolean;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type SparkBoardType = 'default';
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
import { Spark } from './spark';
|
|
2
|
-
import { SparkBoard } from './spark-board';
|
|
3
|
-
|
|
4
|
-
export interface SparkCreatedEvent {
|
|
5
|
-
id: string;
|
|
6
|
-
type: 'SparkCreated';
|
|
7
|
-
payload: Spark;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface SparkUpdatedEvent {
|
|
11
|
-
id: string;
|
|
12
|
-
type: 'SparkUpdated';
|
|
13
|
-
payload: Spark;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export interface SparkDeletedEvent {
|
|
17
|
-
id: string;
|
|
18
|
-
type: 'SparkDeleted';
|
|
19
|
-
payload: Spark;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export type SparkChangedEvent = SparkCreatedEvent | SparkUpdatedEvent | SparkDeletedEvent;
|
|
23
|
-
|
|
24
|
-
export interface SparkBoardCreatedEvent {
|
|
25
|
-
id: string;
|
|
26
|
-
type: 'SparkBoardCreated';
|
|
27
|
-
payload: SparkBoard;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export interface SparkBoardUpdatedEvent {
|
|
31
|
-
id: string;
|
|
32
|
-
type: 'SparkBoardUpdated';
|
|
33
|
-
payload: SparkBoard;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface SparkBoardDeletedEvent {
|
|
37
|
-
id: string;
|
|
38
|
-
type: 'SparkBoardDeleted';
|
|
39
|
-
payload: SparkBoard;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export type SparkBoardChangedEvent = SparkBoardCreatedEvent | SparkBoardUpdatedEvent | SparkBoardDeletedEvent;
|
|
1
|
+
import { Spark } from './spark';
|
|
2
|
+
import { SparkBoard } from './spark-board';
|
|
3
|
+
|
|
4
|
+
export interface SparkCreatedEvent {
|
|
5
|
+
id: string;
|
|
6
|
+
type: 'SparkCreated';
|
|
7
|
+
payload: Spark;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface SparkUpdatedEvent {
|
|
11
|
+
id: string;
|
|
12
|
+
type: 'SparkUpdated';
|
|
13
|
+
payload: Spark;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface SparkDeletedEvent {
|
|
17
|
+
id: string;
|
|
18
|
+
type: 'SparkDeleted';
|
|
19
|
+
payload: Spark;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export type SparkChangedEvent = SparkCreatedEvent | SparkUpdatedEvent | SparkDeletedEvent;
|
|
23
|
+
|
|
24
|
+
export interface SparkBoardCreatedEvent {
|
|
25
|
+
id: string;
|
|
26
|
+
type: 'SparkBoardCreated';
|
|
27
|
+
payload: SparkBoard;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface SparkBoardUpdatedEvent {
|
|
31
|
+
id: string;
|
|
32
|
+
type: 'SparkBoardUpdated';
|
|
33
|
+
payload: SparkBoard;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface SparkBoardDeletedEvent {
|
|
37
|
+
id: string;
|
|
38
|
+
type: 'SparkBoardDeleted';
|
|
39
|
+
payload: SparkBoard;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export type SparkBoardChangedEvent = SparkBoardCreatedEvent | SparkBoardUpdatedEvent | SparkBoardDeletedEvent;
|
package/src/spark/spark.ts
CHANGED
|
@@ -1,80 +1,80 @@
|
|
|
1
|
-
import { CardType, SegmentType } from '../segment/segment';
|
|
2
|
-
import { Profile } from '../profile/profile';
|
|
3
|
-
import { SupportedLocale } from '../localisation/supported-locales';
|
|
4
|
-
import { ThemeTemplate } from '../theme/theme';
|
|
5
|
-
import { Hack } from '../hack/hack';
|
|
6
|
-
|
|
7
|
-
export interface Spark {
|
|
8
|
-
id: string;
|
|
9
|
-
v: number;
|
|
10
|
-
createdAt: string;
|
|
11
|
-
updatedAt: string;
|
|
12
|
-
userId: string;
|
|
13
|
-
hackId: string;
|
|
14
|
-
segmentId: string;
|
|
15
|
-
card: SparkedCard;
|
|
16
|
-
boardId: string;
|
|
17
|
-
theme: {
|
|
18
|
-
fontFamily: string;
|
|
19
|
-
light: ThemeTemplate;
|
|
20
|
-
dark: ThemeTemplate;
|
|
21
|
-
player?: {
|
|
22
|
-
light: {
|
|
23
|
-
backgroundColor: string;
|
|
24
|
-
},
|
|
25
|
-
dark: {
|
|
26
|
-
backgroundColor: string;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
note?: string;
|
|
31
|
-
hack: SparkHack;
|
|
32
|
-
baseLocaleHackId: string;
|
|
33
|
-
locale: SupportedLocale;
|
|
34
|
-
language: string;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export interface SparkedCard {
|
|
38
|
-
id: string;
|
|
39
|
-
markdown: string;
|
|
40
|
-
segmentType: SegmentType;
|
|
41
|
-
isTitle?: boolean;
|
|
42
|
-
cardType?: CardType;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// matches Profile of EnrichedHack interface
|
|
46
|
-
export type SparkHack = Pick<Hack,
|
|
47
|
-
'id'
|
|
48
|
-
| 'title'
|
|
49
|
-
| 'owner'
|
|
50
|
-
| 'themeId'
|
|
51
|
-
| 'isHidden'
|
|
52
|
-
| 'editorialTags'
|
|
53
|
-
| 'coverUrl'
|
|
54
|
-
| 'topics'
|
|
55
|
-
| 'type'
|
|
56
|
-
| 'affiliate'
|
|
57
|
-
| 'contributors'
|
|
58
|
-
| 'createdAt'
|
|
59
|
-
| 'updatedAt'
|
|
60
|
-
| 'v'
|
|
61
|
-
| 'sourceData'
|
|
62
|
-
| 'subjects' >
|
|
63
|
-
& {
|
|
64
|
-
profile: Profile
|
|
65
|
-
| {
|
|
66
|
-
deleted: boolean;
|
|
67
|
-
uptimeOwned: boolean;
|
|
68
|
-
avatarUrl: string;
|
|
69
|
-
};
|
|
70
|
-
segments: Pick<Hack['segments'],
|
|
71
|
-
'inANutshell'
|
|
72
|
-
| 'favouriteQuote'
|
|
73
|
-
| 'introduction'
|
|
74
|
-
| 'insights'
|
|
75
|
-
| 'conclusion'
|
|
76
|
-
| 'overview'
|
|
77
|
-
| 'hereAreTheInsights'
|
|
78
|
-
| 'putInAction'>;
|
|
79
|
-
acl: string[]
|
|
80
|
-
};
|
|
1
|
+
import { CardType, SegmentType } from '../segment/segment';
|
|
2
|
+
import { Profile } from '../profile/profile';
|
|
3
|
+
import { SupportedLocale } from '../localisation/supported-locales';
|
|
4
|
+
import { ThemeTemplate } from '../theme/theme';
|
|
5
|
+
import { Hack } from '../hack/hack';
|
|
6
|
+
|
|
7
|
+
export interface Spark {
|
|
8
|
+
id: string;
|
|
9
|
+
v: number;
|
|
10
|
+
createdAt: string;
|
|
11
|
+
updatedAt: string;
|
|
12
|
+
userId: string;
|
|
13
|
+
hackId: string;
|
|
14
|
+
segmentId: string;
|
|
15
|
+
card: SparkedCard;
|
|
16
|
+
boardId: string;
|
|
17
|
+
theme: {
|
|
18
|
+
fontFamily: string;
|
|
19
|
+
light: ThemeTemplate;
|
|
20
|
+
dark: ThemeTemplate;
|
|
21
|
+
player?: {
|
|
22
|
+
light: {
|
|
23
|
+
backgroundColor: string;
|
|
24
|
+
},
|
|
25
|
+
dark: {
|
|
26
|
+
backgroundColor: string;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
note?: string;
|
|
31
|
+
hack: SparkHack;
|
|
32
|
+
baseLocaleHackId: string;
|
|
33
|
+
locale: SupportedLocale;
|
|
34
|
+
language: string;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface SparkedCard {
|
|
38
|
+
id: string;
|
|
39
|
+
markdown: string;
|
|
40
|
+
segmentType: SegmentType;
|
|
41
|
+
isTitle?: boolean;
|
|
42
|
+
cardType?: CardType;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// matches Profile of EnrichedHack interface
|
|
46
|
+
export type SparkHack = Pick<Hack,
|
|
47
|
+
'id'
|
|
48
|
+
| 'title'
|
|
49
|
+
| 'owner'
|
|
50
|
+
| 'themeId'
|
|
51
|
+
| 'isHidden'
|
|
52
|
+
| 'editorialTags'
|
|
53
|
+
| 'coverUrl'
|
|
54
|
+
| 'topics'
|
|
55
|
+
| 'type'
|
|
56
|
+
| 'affiliate'
|
|
57
|
+
| 'contributors'
|
|
58
|
+
| 'createdAt'
|
|
59
|
+
| 'updatedAt'
|
|
60
|
+
| 'v'
|
|
61
|
+
| 'sourceData'
|
|
62
|
+
| 'subjects' >
|
|
63
|
+
& {
|
|
64
|
+
profile: Profile
|
|
65
|
+
| {
|
|
66
|
+
deleted: boolean;
|
|
67
|
+
uptimeOwned: boolean;
|
|
68
|
+
avatarUrl: string;
|
|
69
|
+
};
|
|
70
|
+
segments: Pick<Hack['segments'],
|
|
71
|
+
'inANutshell'
|
|
72
|
+
| 'favouriteQuote'
|
|
73
|
+
| 'introduction'
|
|
74
|
+
| 'insights'
|
|
75
|
+
| 'conclusion'
|
|
76
|
+
| 'overview'
|
|
77
|
+
| 'hereAreTheInsights'
|
|
78
|
+
| 'putInAction'>;
|
|
79
|
+
acl: string[]
|
|
80
|
+
};
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { TextSegment, Voice } from './text-segment';
|
|
2
|
-
|
|
3
|
-
export interface CreateSpeechFromTextCommand {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'CreateSpeechFromText';
|
|
6
|
-
payload: {
|
|
7
|
-
locale: string;
|
|
8
|
-
textSegments: TextSegment[];
|
|
9
|
-
/** voices to generate. If omitted then all voices for the given locale will be generated */
|
|
10
|
-
voiceIds?: string[]
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface CreateSpeechWithVoiceCommand {
|
|
15
|
-
id: string;
|
|
16
|
-
type: 'CreateSpeechWithVoice';
|
|
17
|
-
payload: {
|
|
18
|
-
locale: string;
|
|
19
|
-
textSegments: TextSegment[];
|
|
20
|
-
voice: Voice;
|
|
21
|
-
};
|
|
22
|
-
}
|
|
1
|
+
import { TextSegment, Voice } from './text-segment';
|
|
2
|
+
|
|
3
|
+
export interface CreateSpeechFromTextCommand {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'CreateSpeechFromText';
|
|
6
|
+
payload: {
|
|
7
|
+
locale: string;
|
|
8
|
+
textSegments: TextSegment[];
|
|
9
|
+
/** voices to generate. If omitted then all voices for the given locale will be generated */
|
|
10
|
+
voiceIds?: string[]
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface CreateSpeechWithVoiceCommand {
|
|
15
|
+
id: string;
|
|
16
|
+
type: 'CreateSpeechWithVoice';
|
|
17
|
+
payload: {
|
|
18
|
+
locale: string;
|
|
19
|
+
textSegments: TextSegment[];
|
|
20
|
+
voice: Voice;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { TextSegmentWithSpeech } from './text-segment';
|
|
2
|
-
|
|
3
|
-
export interface SpeechFromTextCreatedEvent {
|
|
4
|
-
id: string;
|
|
5
|
-
type: 'SpeechFromTextCreated';
|
|
6
|
-
payload: {
|
|
7
|
-
locale: string;
|
|
8
|
-
textSegments: TextSegmentWithSpeech[];
|
|
9
|
-
};
|
|
10
|
-
}
|
|
1
|
+
import { TextSegmentWithSpeech } from './text-segment';
|
|
2
|
+
|
|
3
|
+
export interface SpeechFromTextCreatedEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
type: 'SpeechFromTextCreated';
|
|
6
|
+
payload: {
|
|
7
|
+
locale: string;
|
|
8
|
+
textSegments: TextSegmentWithSpeech[];
|
|
9
|
+
};
|
|
10
|
+
}
|