@uptime.app/contracts 1.0.37 → 1.0.38-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/cjs/index.d.ts +2 -0
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +2 -0
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/translation/translation-events.d.ts +68 -0
  6. package/dist/cjs/translation/translation-events.d.ts.map +1 -0
  7. package/dist/cjs/translation/translation-events.js +3 -0
  8. package/dist/cjs/translation/translation-events.js.map +1 -0
  9. package/dist/cjs/translation/translation.d.ts +21 -0
  10. package/dist/cjs/translation/translation.d.ts.map +1 -0
  11. package/dist/cjs/translation/translation.js +3 -0
  12. package/dist/cjs/translation/translation.js.map +1 -0
  13. package/dist/esm/index.d.ts +2 -0
  14. package/dist/esm/index.d.ts.map +1 -1
  15. package/dist/esm/index.js +2 -0
  16. package/dist/esm/index.js.map +1 -1
  17. package/dist/esm/translation/translation-events.d.ts +68 -0
  18. package/dist/esm/translation/translation-events.d.ts.map +1 -0
  19. package/dist/esm/translation/translation-events.js +2 -0
  20. package/dist/esm/translation/translation-events.js.map +1 -0
  21. package/dist/esm/translation/translation.d.ts +21 -0
  22. package/dist/esm/translation/translation.d.ts.map +1 -0
  23. package/dist/esm/translation/translation.js +2 -0
  24. package/dist/esm/translation/translation.js.map +1 -0
  25. package/package.json +2 -2
  26. package/src/access-control/collection-access-control.ts +28 -28
  27. package/src/access-control/hack-access-control.ts +29 -29
  28. package/src/app-hack/app-full-hack.ts +9 -9
  29. package/src/app-hack/app-hack-metadata.ts +58 -58
  30. package/src/app-hack/app-restricted-hack.ts +22 -22
  31. package/src/b2b-organisation/b2b-organisation-events.ts +21 -21
  32. package/src/b2b-organisation/b2b-organisation-member-events.ts +21 -21
  33. package/src/b2b-organisation/b2b-organisation-member.ts +8 -8
  34. package/src/b2b-organisation/b2b-organisation.ts +14 -14
  35. package/src/brand/brand-events.ts +21 -21
  36. package/src/brand/brand.ts +19 -19
  37. package/src/collection/collection-events.ts +21 -21
  38. package/src/collection/collection.ts +58 -58
  39. package/src/collection/enriched-collection-events.ts +18 -18
  40. package/src/collection/enriched-collection.ts +64 -64
  41. package/src/distribution/collection-distribution.ts +17 -17
  42. package/src/distribution/distribution-events.ts +61 -61
  43. package/src/distribution/hack-distribution.ts +18 -18
  44. package/src/draft-hack/draft-hack-events.ts +21 -21
  45. package/src/draft-hack/draft-hack.ts +189 -189
  46. package/src/draft-hack-generation/draft-hack-generation-events.ts +42 -42
  47. package/src/draft-hack-generation/draft-hack-generation.ts +39 -39
  48. package/src/enriched-hack/enriched-hack-events.ts +21 -21
  49. package/src/enriched-hack/enriched-hack.ts +103 -103
  50. package/src/entitlement/user-entitlements-events.ts +20 -20
  51. package/src/entitlement/user-entitlements.ts +17 -17
  52. package/src/hack/extracted-subject.ts +31 -31
  53. package/src/hack/hack-events.ts +21 -21
  54. package/src/hack/hack-published.ts +21 -21
  55. package/src/hack/hack-with-voice-events.ts +20 -20
  56. package/src/hack/hack-with-voice.ts +33 -33
  57. package/src/hack/hack.ts +116 -116
  58. package/src/hack/publish-hack-command.ts +18 -18
  59. package/src/hack-metadata/hack-metadata-events.ts +21 -21
  60. package/src/hack-metadata/hack-metadata.ts +17 -17
  61. package/src/hack-of-the-day/hack-of-the-day-events.ts +21 -21
  62. package/src/hack-of-the-day/hack-of-the-day.ts +13 -13
  63. package/src/index.ts +98 -95
  64. package/src/knowledge-source/knowledge-source-events.ts +21 -21
  65. package/src/knowledge-source/knowledge-source.ts +43 -43
  66. package/src/localisation/live-locales.ts +37 -37
  67. package/src/localisation/locale-language.ts +4 -4
  68. package/src/localisation/supported-languages.ts +11 -11
  69. package/src/localisation/supported-locales.ts +61 -61
  70. package/src/moderation/hack-moderation-result-events.ts +18 -18
  71. package/src/moderation/hack-moderation-result.ts +27 -27
  72. package/src/pending-hack/pending-hack-events.ts +20 -20
  73. package/src/pending-hack/pending-hack-with-voice-events.ts +20 -20
  74. package/src/pending-hack/pending-hack-with-voice.ts +25 -25
  75. package/src/pending-hack/pending-hack.ts +77 -77
  76. package/src/profile/profile-events.ts +41 -41
  77. package/src/profile/profile.ts +27 -27
  78. package/src/profile/translated-profile.ts +13 -13
  79. package/src/segment/segment-commands.ts +70 -70
  80. package/src/segment/segment-events.ts +42 -42
  81. package/src/segment/segment-with-voice.ts +8 -8
  82. package/src/segment/segment.ts +82 -82
  83. package/src/skin/skin-events.ts +21 -21
  84. package/src/skin/skin.ts +6 -6
  85. package/src/text-to-speech/create-speech-commands.ts +20 -20
  86. package/src/text-to-speech/speech-created-events.ts +10 -10
  87. package/src/text-to-speech/supported-voices.ts +127 -127
  88. package/src/text-to-speech/text-segment.ts +29 -29
  89. package/src/theme/theme-events.ts +21 -21
  90. package/src/theme/theme.ts +68 -68
  91. package/src/translation/translation-events.ts +75 -0
  92. package/src/translation/translation.ts +21 -0
  93. package/src/trending/trending-events.ts +21 -21
  94. package/src/trending/trending-hacks.ts +8 -8
  95. package/src/user-context/user-context-events.ts +21 -21
  96. package/src/user-context/user-context.ts +16 -16
  97. package/src/user-notification-context/user-notification-context-events.ts +21 -21
  98. package/src/user-notification-context/user-notification-context.ts +9 -9
  99. package/tsconfig.cjs.json +7 -7
  100. package/tsconfig.npm.json +21 -21
@@ -1,21 +1,21 @@
1
- import { B2BOrganisation } from './b2b-organisation';
2
-
3
- export interface B2BOrganisationCreatedEvent {
4
- id: string;
5
- type: 'B2BOrganisationCreated';
6
- payload: B2BOrganisation;
7
- }
8
-
9
- export interface B2BOrganisationUpdatedEvent {
10
- id: string;
11
- type: 'B2BOrganisationUpdated';
12
- payload: B2BOrganisation;
13
- }
14
-
15
- export interface B2BOrganisationDeletedEvent {
16
- id: string;
17
- type: 'B2BOrganisationDeleted';
18
- payload: B2BOrganisation;
19
- }
20
-
21
- export type B2BOrganisationChangedEvent = B2BOrganisationCreatedEvent | B2BOrganisationUpdatedEvent | B2BOrganisationDeletedEvent;
1
+ import { B2BOrganisation } from './b2b-organisation';
2
+
3
+ export interface B2BOrganisationCreatedEvent {
4
+ id: string;
5
+ type: 'B2BOrganisationCreated';
6
+ payload: B2BOrganisation;
7
+ }
8
+
9
+ export interface B2BOrganisationUpdatedEvent {
10
+ id: string;
11
+ type: 'B2BOrganisationUpdated';
12
+ payload: B2BOrganisation;
13
+ }
14
+
15
+ export interface B2BOrganisationDeletedEvent {
16
+ id: string;
17
+ type: 'B2BOrganisationDeleted';
18
+ payload: B2BOrganisation;
19
+ }
20
+
21
+ export type B2BOrganisationChangedEvent = B2BOrganisationCreatedEvent | B2BOrganisationUpdatedEvent | B2BOrganisationDeletedEvent;
@@ -1,21 +1,21 @@
1
- import { B2BOrganisationMember } from './b2b-organisation-member';
2
-
3
- export interface B2BOrganisationMemberCreatedEvent {
4
- id: string;
5
- type: 'B2BOrganisationMemberCreated';
6
- payload: B2BOrganisationMember;
7
- }
8
-
9
- export interface B2BOrganisationMemberUpdatedEvent {
10
- id: string;
11
- type: 'B2BOrganisationMemberUpdated';
12
- payload: B2BOrganisationMember;
13
- }
14
-
15
- export interface B2BOrganisationMemberDeletedEvent {
16
- id: string;
17
- type: 'B2BOrganisationMemberDeleted';
18
- payload: B2BOrganisationMember;
19
- }
20
-
21
- export type B2BOrganisationMemberChangedEvent = B2BOrganisationMemberCreatedEvent | B2BOrganisationMemberUpdatedEvent | B2BOrganisationMemberDeletedEvent;
1
+ import { B2BOrganisationMember } from './b2b-organisation-member';
2
+
3
+ export interface B2BOrganisationMemberCreatedEvent {
4
+ id: string;
5
+ type: 'B2BOrganisationMemberCreated';
6
+ payload: B2BOrganisationMember;
7
+ }
8
+
9
+ export interface B2BOrganisationMemberUpdatedEvent {
10
+ id: string;
11
+ type: 'B2BOrganisationMemberUpdated';
12
+ payload: B2BOrganisationMember;
13
+ }
14
+
15
+ export interface B2BOrganisationMemberDeletedEvent {
16
+ id: string;
17
+ type: 'B2BOrganisationMemberDeleted';
18
+ payload: B2BOrganisationMember;
19
+ }
20
+
21
+ export type B2BOrganisationMemberChangedEvent = B2BOrganisationMemberCreatedEvent | B2BOrganisationMemberUpdatedEvent | B2BOrganisationMemberDeletedEvent;
@@ -1,9 +1,9 @@
1
- export interface B2BOrganisationMember {
2
- id: string;
3
- v: number;
4
- createdAt: string;
5
- updatedAt: string;
6
- userId: string;
7
- organisationId: string;
8
- invitationId?: string;
1
+ export interface B2BOrganisationMember {
2
+ id: string;
3
+ v: number;
4
+ createdAt: string;
5
+ updatedAt: string;
6
+ userId: string;
7
+ organisationId: string;
8
+ invitationId?: string;
9
9
  }
@@ -1,14 +1,14 @@
1
- export interface B2BOrganisation {
2
- id: string;
3
- v: number;
4
- createdAt: string;
5
- updatedAt: string;
6
- name: string; //unique
7
- owner: string; //unique
8
- code?: string;
9
- provider: string; // for now this will reference what to display in the home screen of the app for users that joined the organisation
10
- displayName: string; // for organisations that might be different but have the same name to be displayed. Ex: HP Ireland & HP US ==> we want the displayName to be HP
11
- codeUsageLimit?: number; // the max amount of times the code to join an organisation can be use
12
- urlPrefix?: string; // the prefix to use for the url of the organisation
13
- brandId?: string;
14
- }
1
+ export interface B2BOrganisation {
2
+ id: string;
3
+ v: number;
4
+ createdAt: string;
5
+ updatedAt: string;
6
+ name: string; //unique
7
+ owner: string; //unique
8
+ code?: string;
9
+ provider: string; // for now this will reference what to display in the home screen of the app for users that joined the organisation
10
+ displayName: string; // for organisations that might be different but have the same name to be displayed. Ex: HP Ireland & HP US ==> we want the displayName to be HP
11
+ codeUsageLimit?: number; // the max amount of times the code to join an organisation can be use
12
+ urlPrefix?: string; // the prefix to use for the url of the organisation
13
+ brandId?: string;
14
+ }
@@ -1,21 +1,21 @@
1
- import { Brand } from './brand';
2
-
3
- export interface BrandCreatedEvent {
4
- id: string;
5
- type: 'BrandCreated';
6
- payload: Brand;
7
- }
8
-
9
- export interface BrandUpdatedEvent {
10
- id: string;
11
- type: 'BrandUpdated';
12
- payload: Brand;
13
- }
14
-
15
- export interface BrandDeletedEvent {
16
- id: string;
17
- type: 'BrandDeleted';
18
- payload: Brand;
19
- }
20
-
21
- export type BrandChangedEvent = BrandCreatedEvent | BrandUpdatedEvent | BrandDeletedEvent;
1
+ import { Brand } from './brand';
2
+
3
+ export interface BrandCreatedEvent {
4
+ id: string;
5
+ type: 'BrandCreated';
6
+ payload: Brand;
7
+ }
8
+
9
+ export interface BrandUpdatedEvent {
10
+ id: string;
11
+ type: 'BrandUpdated';
12
+ payload: Brand;
13
+ }
14
+
15
+ export interface BrandDeletedEvent {
16
+ id: string;
17
+ type: 'BrandDeleted';
18
+ payload: Brand;
19
+ }
20
+
21
+ export type BrandChangedEvent = BrandCreatedEvent | BrandUpdatedEvent | BrandDeletedEvent;
@@ -1,20 +1,20 @@
1
- import { SupportedLocale } from '../localisation/supported-locales';
2
-
3
- export interface Brand {
4
- id: string;
5
- v: number;
6
- createdAt: string;
7
- updatedAt: string;
8
- name: string;
9
- skinId?: string;
10
- webAppDomain?: string;
11
- appName?: {
12
- [K in SupportedLocale]?: string
13
- };
14
- welcomeHacks?: WelcomeHack[];
15
- }
16
-
17
- // In case we need to add more properties to the BrandHack interface, we can do so here.
18
- export interface WelcomeHack {
19
- hackId: string;
1
+ import { SupportedLocale } from '../localisation/supported-locales';
2
+
3
+ export interface Brand {
4
+ id: string;
5
+ v: number;
6
+ createdAt: string;
7
+ updatedAt: string;
8
+ name: string;
9
+ skinId?: string;
10
+ webAppDomain?: string;
11
+ appName?: {
12
+ [K in SupportedLocale]?: string
13
+ };
14
+ welcomeHacks?: WelcomeHack[];
15
+ }
16
+
17
+ // In case we need to add more properties to the BrandHack interface, we can do so here.
18
+ export interface WelcomeHack {
19
+ hackId: string;
20
20
  }
@@ -1,21 +1,21 @@
1
- import { Collection } from './collection';
2
-
3
- export interface CollectionCreatedEvent {
4
- id: string;
5
- type: 'CollectionCreated';
6
- payload: Collection;
7
- }
8
-
9
- export interface CollectionUpdatedEvent {
10
- id: string;
11
- type: 'CollectionUpdated';
12
- payload: Collection;
13
- }
14
-
15
- export interface CollectionDeletedEvent {
16
- id: string;
17
- type: 'CollectionDeleted';
18
- payload: Collection;
19
- }
20
-
21
- export type CollectionChangedEvent = CollectionCreatedEvent | CollectionUpdatedEvent | CollectionDeletedEvent;
1
+ import { Collection } from './collection';
2
+
3
+ export interface CollectionCreatedEvent {
4
+ id: string;
5
+ type: 'CollectionCreated';
6
+ payload: Collection;
7
+ }
8
+
9
+ export interface CollectionUpdatedEvent {
10
+ id: string;
11
+ type: 'CollectionUpdated';
12
+ payload: Collection;
13
+ }
14
+
15
+ export interface CollectionDeletedEvent {
16
+ id: string;
17
+ type: 'CollectionDeleted';
18
+ payload: Collection;
19
+ }
20
+
21
+ export type CollectionChangedEvent = CollectionCreatedEvent | CollectionUpdatedEvent | CollectionDeletedEvent;
@@ -1,58 +1,58 @@
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
- // concept we are exploring: https://d0.awsstatic.com/whitepapers/Multi_Tenant_SaaS_Storage_Strategies.pdf
30
- owner?: string;
31
-
32
- /**
33
- * @deprecated you should use new 'collectionHacks' property
34
- */
35
- hackIds: string[];
36
- }
37
-
38
- export type CollectionType = 'collection' | 'backdrop';
39
-
40
- export interface CollectionVisibility {
41
- /* ISO date */
42
- startDate: string;
43
- /* ISO date */
44
- endDate: string;
45
- }
46
-
47
- export interface CollectionHack {
48
- hackId: string;
49
- /**
50
- * @maxLength 300
51
- */
52
- blurb?: string;
53
- }
54
-
55
- export interface BackdropMetadata {
56
- /* e.g. "2022-02-09T10:00:00" */
57
- backdropDate: string;
58
- }
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
+ // concept we are exploring: https://d0.awsstatic.com/whitepapers/Multi_Tenant_SaaS_Storage_Strategies.pdf
30
+ owner?: string;
31
+
32
+ /**
33
+ * @deprecated you should use new 'collectionHacks' property
34
+ */
35
+ hackIds: string[];
36
+ }
37
+
38
+ export type CollectionType = 'collection' | 'backdrop';
39
+
40
+ export interface CollectionVisibility {
41
+ /* ISO date */
42
+ startDate: string;
43
+ /* ISO date */
44
+ endDate: string;
45
+ }
46
+
47
+ export interface CollectionHack {
48
+ hackId: string;
49
+ /**
50
+ * @maxLength 300
51
+ */
52
+ blurb?: string;
53
+ }
54
+
55
+ export interface BackdropMetadata {
56
+ /* e.g. "2022-02-09T10:00:00" */
57
+ backdropDate: string;
58
+ }
@@ -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,64 +1,64 @@
1
- import { AppHackMetadata } from '../app-hack/app-hack-metadata';
2
- import { BackdropMetadata } from './collection';
3
-
4
- export interface EnrichedCollection {
5
- id: string;
6
- v: number;
7
- createdAt: string;
8
- updatedAt: string;
9
- locale: string,
10
- language: string;
11
- baseLocaleCollectionId: string;
12
- title: string;
13
- subtitle?: string;
14
- coverUrl?: string;
15
- iconUrl?: string;
16
- backgroundColor?: string;
17
- description: string;
18
- tags: string[];
19
- rank?: number;
20
- acl: string[];
21
- catalogues: string[];
22
- isPublished: boolean;
23
- owner?: string;
24
- hacks: EnrichCollectionHack[];
25
- backdrop?: BackdropMetadata;
26
- isBackdrop: boolean;
27
- profile: EnrichCollectionProfile;
28
- notificationMessage?: string;
29
- includeInEmailNotifications: boolean;
30
- includeInPushNotifications: boolean;
31
- includeInRecommendations: boolean;
32
- includeInSearchResults: boolean;
33
- includeInWebsite: boolean;
34
- isHidden: boolean;
35
- visibility?: Visibility;
36
- }
37
-
38
- export interface EnrichCollectionHack {
39
- blurb?: string;
40
- hack: AppHackMetadata;
41
- }
42
-
43
- export interface ExistingProfile {
44
- id: string;
45
- name: string;
46
- avatarUrl: string;
47
- handle: string;
48
- }
49
-
50
- export interface DeletedProfile {
51
- deleted: boolean;
52
- uptimeOwned: boolean;
53
- avatarUrl: string;
54
- }
55
-
56
- export interface Visibility {
57
- /* ISO date */
58
- startDate: string;
59
- /* ISO date */
60
- endDate: string;
61
- }
62
-
63
- // matches pattern found in the hack enrichment service where the EnrichedHackProfile may be an actual Profile or it may have been deleted
64
- export type EnrichCollectionProfile = ExistingProfile | DeletedProfile;
1
+ import { AppHackMetadata } from '../app-hack/app-hack-metadata';
2
+ import { BackdropMetadata } from './collection';
3
+
4
+ export interface EnrichedCollection {
5
+ id: string;
6
+ v: number;
7
+ createdAt: string;
8
+ updatedAt: string;
9
+ locale: string,
10
+ language: string;
11
+ baseLocaleCollectionId: string;
12
+ title: string;
13
+ subtitle?: string;
14
+ coverUrl?: string;
15
+ iconUrl?: string;
16
+ backgroundColor?: string;
17
+ description: string;
18
+ tags: string[];
19
+ rank?: number;
20
+ acl: string[];
21
+ catalogues: string[];
22
+ isPublished: boolean;
23
+ owner?: string;
24
+ hacks: EnrichCollectionHack[];
25
+ backdrop?: BackdropMetadata;
26
+ isBackdrop: boolean;
27
+ profile: EnrichCollectionProfile;
28
+ notificationMessage?: string;
29
+ includeInEmailNotifications: boolean;
30
+ includeInPushNotifications: boolean;
31
+ includeInRecommendations: boolean;
32
+ includeInSearchResults: boolean;
33
+ includeInWebsite: boolean;
34
+ isHidden: boolean;
35
+ visibility?: Visibility;
36
+ }
37
+
38
+ export interface EnrichCollectionHack {
39
+ blurb?: string;
40
+ hack: AppHackMetadata;
41
+ }
42
+
43
+ export interface ExistingProfile {
44
+ id: string;
45
+ name: string;
46
+ avatarUrl: string;
47
+ handle: string;
48
+ }
49
+
50
+ export interface DeletedProfile {
51
+ deleted: boolean;
52
+ uptimeOwned: boolean;
53
+ avatarUrl: string;
54
+ }
55
+
56
+ export interface Visibility {
57
+ /* ISO date */
58
+ startDate: string;
59
+ /* ISO date */
60
+ endDate: string;
61
+ }
62
+
63
+ // matches pattern found in the hack enrichment service where the EnrichedHackProfile may be an actual Profile or it may have been deleted
64
+ export type EnrichCollectionProfile = ExistingProfile | DeletedProfile;
@@ -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
+ }