@streamscloud/embeddable 16.0.7 → 16.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/dist/ads/ad-card/types.d.ts +1 -1
  2. package/dist/ads/ad-card/types.js +1 -1
  3. package/dist/articles/article/article-layout.svelte +32 -0
  4. package/dist/articles/article/article-layout.svelte.d.ts +9 -0
  5. package/dist/articles/article/article-proxy.svelte +8 -0
  6. package/dist/articles/article/article-proxy.svelte.d.ts +12 -0
  7. package/dist/articles/article/article-section.svelte +52 -0
  8. package/dist/articles/article/article-section.svelte.d.ts +9 -0
  9. package/dist/articles/article/article-view.svelte +41 -0
  10. package/dist/articles/article/article-view.svelte.d.ts +8 -0
  11. package/dist/articles/article/cmp.article.svelte +36 -0
  12. package/dist/articles/article/cmp.article.svelte.d.ts +12 -0
  13. package/dist/articles/article/cmp.facts-container.svelte +27 -0
  14. package/dist/articles/article/cmp.facts-container.svelte.d.ts +7 -0
  15. package/dist/articles/article/fields/alt-text.svelte +15 -0
  16. package/dist/articles/article/fields/alt-text.svelte.d.ts +6 -0
  17. package/dist/articles/article/fields/article-field.svelte +45 -0
  18. package/dist/articles/article/fields/article-field.svelte.d.ts +8 -0
  19. package/dist/articles/article/fields/byline-field.svelte +23 -0
  20. package/dist/articles/article/fields/byline-field.svelte.d.ts +8 -0
  21. package/dist/articles/article/fields/image-field.svelte +8 -0
  22. package/dist/articles/article/fields/image-field.svelte.d.ts +7 -0
  23. package/dist/articles/article/fields/media-field.svelte +8 -0
  24. package/dist/articles/article/fields/media-field.svelte.d.ts +7 -0
  25. package/dist/articles/article/fields/media-gallery-field.svelte +8 -0
  26. package/dist/articles/article/fields/media-gallery-field.svelte.d.ts +7 -0
  27. package/dist/articles/article/fields/rich-text-field.svelte +19 -0
  28. package/dist/articles/article/fields/rich-text-field.svelte.d.ts +7 -0
  29. package/dist/articles/article/fields/text-field.svelte +24 -0
  30. package/dist/articles/article/fields/text-field.svelte.d.ts +7 -0
  31. package/dist/articles/article/fields/types.d.ts +72 -0
  32. package/dist/articles/article/fields/types.js +1 -0
  33. package/dist/articles/article/fields/video-field.svelte +8 -0
  34. package/dist/articles/article/fields/video-field.svelte.d.ts +7 -0
  35. package/dist/articles/article/helpers.d.ts +5 -0
  36. package/dist/articles/article/helpers.js +27 -0
  37. package/dist/articles/article/index.d.ts +8 -0
  38. package/dist/articles/article/index.js +5 -0
  39. package/dist/articles/article/styles-transformer.d.ts +47 -0
  40. package/dist/articles/article/styles-transformer.js +38 -0
  41. package/dist/articles/article/types.d.ts +32 -0
  42. package/dist/articles/article/types.js +1 -0
  43. package/dist/articles/article-dialog/article-dialog-localization.d.ts +3 -0
  44. package/dist/articles/article-dialog/article-dialog-localization.js +9 -0
  45. package/dist/articles/article-dialog/cmp.article-dialog.svelte +104 -0
  46. package/dist/articles/article-dialog/cmp.article-dialog.svelte.d.ts +9 -0
  47. package/dist/articles/article-dialog/index.d.ts +6 -0
  48. package/dist/articles/article-dialog/index.js +10 -0
  49. package/dist/articles/article-dialog/types.d.ts +6 -0
  50. package/dist/articles/data-providers/index.d.ts +1 -0
  51. package/dist/articles/data-providers/index.js +1 -0
  52. package/dist/articles/data-providers/types.d.ts +14 -0
  53. package/dist/articles/data-providers/types.js +1 -0
  54. package/dist/core/enums.d.ts +15 -50
  55. package/dist/core/enums.js +1 -61
  56. package/dist/core/graphql.d.ts +4 -1
  57. package/dist/core/graphql.js +3 -3
  58. package/dist/core/media/index.d.ts +0 -1
  59. package/dist/core/media/index.js +0 -1
  60. package/dist/core/media/media-item-url.service.d.ts +6 -2
  61. package/dist/core/media/media-item-url.service.js +1 -3
  62. package/dist/external-api/article/cmp.embed-article.svelte +98 -0
  63. package/dist/external-api/article/cmp.embed-article.svelte.d.ts +47 -0
  64. package/dist/external-api/article/index.d.ts +1 -0
  65. package/dist/external-api/article/index.js +1 -0
  66. package/dist/external-api/data-providers/article/article-data-provider.d.ts +4 -0
  67. package/dist/external-api/data-providers/article/article-data-provider.js +32 -0
  68. package/dist/external-api/data-providers/article/index.d.ts +1 -0
  69. package/dist/external-api/data-providers/article/index.js +1 -0
  70. package/dist/external-api/data-providers/article/operations.generated.d.ts +104 -0
  71. package/dist/external-api/data-providers/article/operations.generated.js +262 -0
  72. package/dist/external-api/data-providers/article/operations.graphql +99 -0
  73. package/dist/external-api/data-providers/internal-media-center-data-provider.svelte.js +6 -5
  74. package/dist/external-api/data-providers/internal-short-video-player-items-provider.d.ts +1 -1
  75. package/dist/external-api/data-providers/internal-short-video-player-items-provider.js +2 -4
  76. package/dist/external-api/data-providers/internal-streams-player-data-provider.js +1 -1
  77. package/dist/external-api/data-providers/mapper.d.ts +1 -1
  78. package/dist/external-api/data-providers/mapper.js +5 -6
  79. package/dist/external-api/data-providers/mocks/mock-content-management-handler.svelte.js +2 -3
  80. package/dist/external-api/data-providers/post-data-loaders/posts-loader.d.ts +1 -1
  81. package/dist/external-api/data-providers/post-data-loaders/posts-loader.js +0 -1
  82. package/dist/external-api/data-providers/stream-data-loaders/mapper.js +1 -2
  83. package/dist/external-api/data-providers/stream-data-loaders/stream-pages-loader.d.ts +1 -1
  84. package/dist/external-api/data-providers/stream-data-loaders/stream-pages-loader.js +1 -2
  85. package/dist/external-api/data-providers/stream-data-loaders/streams-loader.d.ts +1 -1
  86. package/dist/external-api/data-providers/stream-data-loaders/streams-loader.js +1 -2
  87. package/dist/external-api/index.d.ts +2 -1
  88. package/dist/external-api/index.js +2 -1
  89. package/dist/media-center/config/types.d.ts +4 -1
  90. package/dist/media-center/config/types.js +1 -1
  91. package/dist/media-center/media-center/cmp.media-center-proxy.svelte +9 -4
  92. package/dist/media-center/media-center/cmp.media-center-proxy.svelte.d.ts +2 -3
  93. package/dist/media-center/media-center/discover/data-loading.js +1 -2
  94. package/dist/media-center/media-center/discover/discover-view-handler.svelte.js +1 -2
  95. package/dist/media-center/media-center/discover/discover-view.svelte +1 -1
  96. package/dist/media-center/media-center/index.d.ts +0 -1
  97. package/dist/media-center/media-center/index.js +0 -1
  98. package/dist/media-center/media-center/media-center-settings.svelte.d.ts +1 -1
  99. package/dist/media-center/media-center/media-center-settings.svelte.js +2 -2
  100. package/dist/media-center/media-center/media-center-view.svelte +1 -1
  101. package/dist/media-center/media-center/menu/menu.svelte +1 -1
  102. package/dist/media-center/media-center/moments/moments-feed-handler.svelte.d.ts +1 -1
  103. package/dist/media-center/media-center/moments/moments-feed-handler.svelte.js +2 -3
  104. package/dist/media-center/media-center/moments/moments-state.svelte.d.ts +1 -1
  105. package/dist/media-center/media-center/moments/moments-state.svelte.js +1 -3
  106. package/dist/media-center/media-center/posts-feed/feed-providers-generator.js +1 -2
  107. package/dist/media-center/media-center/posts-feed/posts-feed-handler.svelte.d.ts +1 -1
  108. package/dist/media-center/media-center/posts-feed/posts-feed-handler.svelte.js +2 -2
  109. package/dist/media-page/cmp.media-page.svelte +10 -9
  110. package/dist/media-page/index.js +4 -4
  111. package/dist/posts/attachments/cmp.attachments.svelte +2 -3
  112. package/dist/posts/model/post-model.d.ts +2 -1
  113. package/dist/posts/model/post-model.js +2 -1
  114. package/dist/posts/post-viewer/attachments-horizontal.svelte +1 -2
  115. package/dist/posts/post-viewer/cmp.post-viewer.svelte +12 -5
  116. package/dist/posts/post-viewer/cmp.post-viewer.svelte.d.ts +1 -0
  117. package/dist/posts/post-viewer/mapper.js +6 -7
  118. package/dist/posts/post-viewer/post-texts.svelte +8 -1
  119. package/dist/posts/post-viewer/post-texts.svelte.d.ts +3 -0
  120. package/dist/posts/posts-player/cmp.posts-player.svelte +23 -13
  121. package/dist/posts/posts-player/cmp.posts-player.svelte.d.ts +2 -0
  122. package/dist/posts/posts-player/index.d.ts +8 -1
  123. package/dist/posts/posts-player/index.js +7 -1
  124. package/dist/posts/posts-player/posts-player-proxy.svelte +3 -2
  125. package/dist/posts/posts-player/posts-player-proxy.svelte.d.ts +2 -0
  126. package/dist/posts/posts-player/posts-player-view.svelte +21 -9
  127. package/dist/posts/posts-player/types.d.ts +3 -0
  128. package/dist/products/price-helper.d.ts +1 -1
  129. package/dist/products/price-helper.js +3 -4
  130. package/dist/streams/layout/models/mapper.d.ts +1 -1
  131. package/dist/streams/layout/models/mapper.js +2 -6
  132. package/dist/streams/layout/models/stream-layout-media-item-model.d.ts +1 -1
  133. package/dist/streams/layout/models/stream-layout-media-item-model.js +1 -1
  134. package/dist/streams/layout/models/stream-layout-short-video-model.d.ts +1 -1
  135. package/dist/streams/layout/models/stream-layout-short-video-model.js +1 -1
  136. package/dist/streams/streams-player/cmp.streams-player.svelte +22 -13
  137. package/dist/streams/streams-player/stream-overview.svelte +1 -1
  138. package/dist/streams/streams-player/streams-player-proxy.svelte +1 -1
  139. package/dist/ui/media-items/index.d.ts +3 -0
  140. package/dist/ui/media-items/index.js +3 -0
  141. package/dist/ui/{media-item-view → media-items/media-item-view}/cmp.media-item-view.svelte +23 -5
  142. package/dist/ui/{media-item-view → media-items/media-item-view}/cmp.media-item-view.svelte.d.ts +5 -3
  143. package/dist/ui/{media-items-gallery → media-items/media-items-gallery}/cmp.media-items-gallery.svelte +37 -32
  144. package/dist/ui/{media-items-gallery → media-items/media-items-gallery}/cmp.media-items-gallery.svelte.d.ts +5 -3
  145. package/dist/ui/{media-items-gallery/types.d.ts → media-items/media-items-gallery/gallery-layout.d.ts} +1 -1
  146. package/dist/ui/{media-items-gallery/types.js → media-items/media-items-gallery/gallery-layout.js} +1 -1
  147. package/dist/ui/media-items/types.d.ts +14 -0
  148. package/dist/ui/media-items/types.js +1 -0
  149. package/dist/ui/shadow-dom/cmp.shadow-root.svelte +3 -2
  150. package/dist/ui/shadow-dom/index.d.ts +1 -1
  151. package/dist/ui/shadow-dom/index.js +1 -1
  152. package/dist/ui/shadow-dom/shadow-root-service.d.ts +1 -0
  153. package/dist/ui/shadow-dom/shadow-root-service.js +8 -0
  154. package/package.json +11 -3
  155. package/dist/core/media/types.d.ts +0 -13
  156. package/dist/posts/posts-player/posts-player-host-settings.svelte.d.ts +0 -20
  157. package/dist/posts/posts-player/posts-player-host-settings.svelte.js +0 -15
  158. package/dist/streams/streams-player/streams-player-host-settings.svelte.d.ts +0 -20
  159. package/dist/streams/streams-player/streams-player-host-settings.svelte.js +0 -15
  160. /package/dist/{core/media → articles/article-dialog}/types.js +0 -0
  161. /package/dist/ui/{media-item-view → media-items/media-item-view}/index.d.ts +0 -0
  162. /package/dist/ui/{media-item-view → media-items/media-item-view}/index.js +0 -0
  163. /package/dist/ui/{media-items-gallery → media-items/media-items-gallery}/index.d.ts +0 -0
  164. /package/dist/ui/{media-items-gallery → media-items/media-items-gallery}/index.js +0 -0
@@ -0,0 +1,32 @@
1
+ import { GetEmbedArticleDocument } from './operations.generated';
2
+ /** Creates an ArticleDataProvider that fetches articles via the GetEmbedArticle GraphQL query. */
3
+ export const createArticleDataProvider = (graphql) => ({
4
+ fetchArticle: async (input) => {
5
+ const { id, slug } = input;
6
+ const result = await graphql.query(GetEmbedArticleDocument, { input: { id, slug } }).toPromise();
7
+ const article = result.data?.article;
8
+ if (!article) {
9
+ return null;
10
+ }
11
+ return {
12
+ sections: article.sections.map((section) => ({
13
+ id: section.id,
14
+ facts: section.facts,
15
+ styles: section.styles,
16
+ layouts: section.layouts.map((layout) => ({
17
+ id: layout.id,
18
+ styles: layout.styles,
19
+ fields: layout.fields.map((field) => ({
20
+ id: field.id,
21
+ name: field.name,
22
+ description: field.description,
23
+ styles: field.styles,
24
+ fieldData: field.fieldData
25
+ }))
26
+ }))
27
+ })),
28
+ metadata: { displayDate: article.publishedAt ?? '' },
29
+ seo: article.seo
30
+ };
31
+ }
32
+ });
@@ -0,0 +1 @@
1
+ export { createArticleDataProvider } from './article-data-provider';
@@ -0,0 +1 @@
1
+ export { createArticleDataProvider } from './article-data-provider';
@@ -0,0 +1,104 @@
1
+ import type * as SchemaTypes from '../../../../gql/types';
2
+ import type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';
3
+ export type GetEmbedArticleQueryVariables = SchemaTypes.Exact<{
4
+ input: SchemaTypes.EmbedArticleInput;
5
+ }>;
6
+ export type GetEmbedArticleQuery = {
7
+ article: {
8
+ id: string;
9
+ publishedAt: any | null;
10
+ seo: {
11
+ title: string;
12
+ description: string;
13
+ keywords: Array<string>;
14
+ };
15
+ sections: Array<{
16
+ id: string;
17
+ facts: string | null;
18
+ styles: {
19
+ paddingTop: number | null;
20
+ paddingBottom: number | null;
21
+ paddingLeft: number | null;
22
+ paddingRight: number | null;
23
+ } | null;
24
+ layouts: Array<{
25
+ id: string;
26
+ styles: {
27
+ paddingTop: number | null;
28
+ paddingBottom: number | null;
29
+ paddingLeft: number | null;
30
+ paddingRight: number | null;
31
+ } | null;
32
+ fields: Array<{
33
+ id: string;
34
+ name: string;
35
+ description: string | null;
36
+ styles: {
37
+ marginTop: number | null;
38
+ marginBottom: number | null;
39
+ marginLeft: number | null;
40
+ marginRight: number | null;
41
+ } | null;
42
+ fieldData: {
43
+ type: SchemaTypes.ArticleFieldType;
44
+ bylineData: {
45
+ authorName: string | null;
46
+ } | null;
47
+ imageData: {
48
+ preferredMediaFormat: SchemaTypes.MediaFormat;
49
+ altText: string | null;
50
+ image: {
51
+ type: SchemaTypes.MediaType;
52
+ url: string;
53
+ thumbnailUrl: string | null;
54
+ } | null;
55
+ } | null;
56
+ mediaData: {
57
+ preferredMediaFormat: SchemaTypes.MediaFormat;
58
+ altText: string | null;
59
+ media: {
60
+ type: SchemaTypes.MediaType;
61
+ url: string;
62
+ thumbnailUrl: string | null;
63
+ } | null;
64
+ } | null;
65
+ mediaGalleryData: {
66
+ galleryMode: SchemaTypes.GalleryFieldMode;
67
+ preferredMediaFormat: SchemaTypes.MediaFormat;
68
+ altText: string | null;
69
+ media: Array<{
70
+ type: SchemaTypes.MediaType;
71
+ url: string;
72
+ thumbnailUrl: string | null;
73
+ metadata: {
74
+ width: number;
75
+ height: number;
76
+ };
77
+ }> | null;
78
+ } | null;
79
+ richTextData: {
80
+ text: string | null;
81
+ textSize: number;
82
+ } | null;
83
+ textData: {
84
+ text: string | null;
85
+ textMode: SchemaTypes.TextFieldMode;
86
+ textSize: number;
87
+ textWeight: SchemaTypes.TextFieldWeight;
88
+ } | null;
89
+ videoData: {
90
+ preferredMediaFormat: SchemaTypes.MediaFormat;
91
+ altText: string | null;
92
+ video: {
93
+ type: SchemaTypes.MediaType;
94
+ url: string;
95
+ thumbnailUrl: string | null;
96
+ } | null;
97
+ } | null;
98
+ };
99
+ }>;
100
+ }>;
101
+ }>;
102
+ } | null;
103
+ };
104
+ export declare const GetEmbedArticleDocument: DocumentNode<GetEmbedArticleQuery, GetEmbedArticleQueryVariables>;
@@ -0,0 +1,262 @@
1
+ export const GetEmbedArticleDocument = {
2
+ kind: 'Document',
3
+ definitions: [
4
+ {
5
+ kind: 'OperationDefinition',
6
+ operation: 'query',
7
+ name: { kind: 'Name', value: 'GetEmbedArticle' },
8
+ variableDefinitions: [
9
+ {
10
+ kind: 'VariableDefinition',
11
+ variable: { kind: 'Variable', name: { kind: 'Name', value: 'input' } },
12
+ type: { kind: 'NonNullType', type: { kind: 'NamedType', name: { kind: 'Name', value: 'EmbedArticleInput' } } }
13
+ }
14
+ ],
15
+ selectionSet: {
16
+ kind: 'SelectionSet',
17
+ selections: [
18
+ {
19
+ kind: 'Field',
20
+ alias: { kind: 'Name', value: 'article' },
21
+ name: { kind: 'Name', value: 'embedArticle' },
22
+ arguments: [{ kind: 'Argument', name: { kind: 'Name', value: 'input' }, value: { kind: 'Variable', name: { kind: 'Name', value: 'input' } } }],
23
+ selectionSet: {
24
+ kind: 'SelectionSet',
25
+ selections: [
26
+ { kind: 'Field', name: { kind: 'Name', value: 'id' } },
27
+ { kind: 'Field', name: { kind: 'Name', value: 'publishedAt' } },
28
+ {
29
+ kind: 'Field',
30
+ name: { kind: 'Name', value: 'seo' },
31
+ selectionSet: {
32
+ kind: 'SelectionSet',
33
+ selections: [
34
+ { kind: 'Field', name: { kind: 'Name', value: 'title' } },
35
+ { kind: 'Field', name: { kind: 'Name', value: 'description' } },
36
+ { kind: 'Field', name: { kind: 'Name', value: 'keywords' } }
37
+ ]
38
+ }
39
+ },
40
+ {
41
+ kind: 'Field',
42
+ name: { kind: 'Name', value: 'sections' },
43
+ selectionSet: {
44
+ kind: 'SelectionSet',
45
+ selections: [
46
+ { kind: 'Field', name: { kind: 'Name', value: 'id' } },
47
+ { kind: 'Field', name: { kind: 'Name', value: 'facts' } },
48
+ {
49
+ kind: 'Field',
50
+ name: { kind: 'Name', value: 'styles' },
51
+ selectionSet: {
52
+ kind: 'SelectionSet',
53
+ selections: [
54
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingTop' } },
55
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingBottom' } },
56
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingLeft' } },
57
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingRight' } }
58
+ ]
59
+ }
60
+ },
61
+ {
62
+ kind: 'Field',
63
+ name: { kind: 'Name', value: 'layouts' },
64
+ selectionSet: {
65
+ kind: 'SelectionSet',
66
+ selections: [
67
+ { kind: 'Field', name: { kind: 'Name', value: 'id' } },
68
+ {
69
+ kind: 'Field',
70
+ name: { kind: 'Name', value: 'styles' },
71
+ selectionSet: {
72
+ kind: 'SelectionSet',
73
+ selections: [
74
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingTop' } },
75
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingBottom' } },
76
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingLeft' } },
77
+ { kind: 'Field', name: { kind: 'Name', value: 'paddingRight' } }
78
+ ]
79
+ }
80
+ },
81
+ {
82
+ kind: 'Field',
83
+ name: { kind: 'Name', value: 'fields' },
84
+ selectionSet: {
85
+ kind: 'SelectionSet',
86
+ selections: [
87
+ { kind: 'Field', name: { kind: 'Name', value: 'id' } },
88
+ { kind: 'Field', name: { kind: 'Name', value: 'name' } },
89
+ { kind: 'Field', name: { kind: 'Name', value: 'description' } },
90
+ {
91
+ kind: 'Field',
92
+ name: { kind: 'Name', value: 'styles' },
93
+ selectionSet: {
94
+ kind: 'SelectionSet',
95
+ selections: [
96
+ { kind: 'Field', name: { kind: 'Name', value: 'marginTop' } },
97
+ { kind: 'Field', name: { kind: 'Name', value: 'marginBottom' } },
98
+ { kind: 'Field', name: { kind: 'Name', value: 'marginLeft' } },
99
+ { kind: 'Field', name: { kind: 'Name', value: 'marginRight' } }
100
+ ]
101
+ }
102
+ },
103
+ {
104
+ kind: 'Field',
105
+ name: { kind: 'Name', value: 'fieldData' },
106
+ selectionSet: {
107
+ kind: 'SelectionSet',
108
+ selections: [
109
+ { kind: 'Field', name: { kind: 'Name', value: 'type' } },
110
+ {
111
+ kind: 'Field',
112
+ name: { kind: 'Name', value: 'bylineData' },
113
+ selectionSet: { kind: 'SelectionSet', selections: [{ kind: 'Field', name: { kind: 'Name', value: 'authorName' } }] }
114
+ },
115
+ {
116
+ kind: 'Field',
117
+ name: { kind: 'Name', value: 'imageData' },
118
+ selectionSet: {
119
+ kind: 'SelectionSet',
120
+ selections: [
121
+ {
122
+ kind: 'Field',
123
+ name: { kind: 'Name', value: 'image' },
124
+ selectionSet: {
125
+ kind: 'SelectionSet',
126
+ selections: [
127
+ { kind: 'Field', name: { kind: 'Name', value: 'type' } },
128
+ { kind: 'Field', name: { kind: 'Name', value: 'url' } },
129
+ { kind: 'Field', name: { kind: 'Name', value: 'thumbnailUrl' } }
130
+ ]
131
+ }
132
+ },
133
+ { kind: 'Field', name: { kind: 'Name', value: 'preferredMediaFormat' } },
134
+ { kind: 'Field', name: { kind: 'Name', value: 'altText' } }
135
+ ]
136
+ }
137
+ },
138
+ {
139
+ kind: 'Field',
140
+ name: { kind: 'Name', value: 'mediaData' },
141
+ selectionSet: {
142
+ kind: 'SelectionSet',
143
+ selections: [
144
+ {
145
+ kind: 'Field',
146
+ name: { kind: 'Name', value: 'media' },
147
+ selectionSet: {
148
+ kind: 'SelectionSet',
149
+ selections: [
150
+ { kind: 'Field', name: { kind: 'Name', value: 'type' } },
151
+ { kind: 'Field', name: { kind: 'Name', value: 'url' } },
152
+ { kind: 'Field', name: { kind: 'Name', value: 'thumbnailUrl' } }
153
+ ]
154
+ }
155
+ },
156
+ { kind: 'Field', name: { kind: 'Name', value: 'preferredMediaFormat' } },
157
+ { kind: 'Field', name: { kind: 'Name', value: 'altText' } }
158
+ ]
159
+ }
160
+ },
161
+ {
162
+ kind: 'Field',
163
+ name: { kind: 'Name', value: 'mediaGalleryData' },
164
+ selectionSet: {
165
+ kind: 'SelectionSet',
166
+ selections: [
167
+ {
168
+ kind: 'Field',
169
+ name: { kind: 'Name', value: 'media' },
170
+ selectionSet: {
171
+ kind: 'SelectionSet',
172
+ selections: [
173
+ { kind: 'Field', name: { kind: 'Name', value: 'type' } },
174
+ { kind: 'Field', name: { kind: 'Name', value: 'url' } },
175
+ { kind: 'Field', name: { kind: 'Name', value: 'thumbnailUrl' } },
176
+ {
177
+ kind: 'Field',
178
+ name: { kind: 'Name', value: 'metadata' },
179
+ selectionSet: {
180
+ kind: 'SelectionSet',
181
+ selections: [
182
+ { kind: 'Field', name: { kind: 'Name', value: 'width' } },
183
+ { kind: 'Field', name: { kind: 'Name', value: 'height' } }
184
+ ]
185
+ }
186
+ }
187
+ ]
188
+ }
189
+ },
190
+ { kind: 'Field', name: { kind: 'Name', value: 'galleryMode' } },
191
+ { kind: 'Field', name: { kind: 'Name', value: 'preferredMediaFormat' } },
192
+ { kind: 'Field', name: { kind: 'Name', value: 'altText' } }
193
+ ]
194
+ }
195
+ },
196
+ {
197
+ kind: 'Field',
198
+ name: { kind: 'Name', value: 'richTextData' },
199
+ selectionSet: {
200
+ kind: 'SelectionSet',
201
+ selections: [
202
+ { kind: 'Field', name: { kind: 'Name', value: 'text' } },
203
+ { kind: 'Field', name: { kind: 'Name', value: 'textSize' } }
204
+ ]
205
+ }
206
+ },
207
+ {
208
+ kind: 'Field',
209
+ name: { kind: 'Name', value: 'textData' },
210
+ selectionSet: {
211
+ kind: 'SelectionSet',
212
+ selections: [
213
+ { kind: 'Field', name: { kind: 'Name', value: 'text' } },
214
+ { kind: 'Field', name: { kind: 'Name', value: 'textMode' } },
215
+ { kind: 'Field', name: { kind: 'Name', value: 'textSize' } },
216
+ { kind: 'Field', name: { kind: 'Name', value: 'textWeight' } }
217
+ ]
218
+ }
219
+ },
220
+ {
221
+ kind: 'Field',
222
+ name: { kind: 'Name', value: 'videoData' },
223
+ selectionSet: {
224
+ kind: 'SelectionSet',
225
+ selections: [
226
+ {
227
+ kind: 'Field',
228
+ name: { kind: 'Name', value: 'video' },
229
+ selectionSet: {
230
+ kind: 'SelectionSet',
231
+ selections: [
232
+ { kind: 'Field', name: { kind: 'Name', value: 'type' } },
233
+ { kind: 'Field', name: { kind: 'Name', value: 'url' } },
234
+ { kind: 'Field', name: { kind: 'Name', value: 'thumbnailUrl' } }
235
+ ]
236
+ }
237
+ },
238
+ { kind: 'Field', name: { kind: 'Name', value: 'preferredMediaFormat' } },
239
+ { kind: 'Field', name: { kind: 'Name', value: 'altText' } }
240
+ ]
241
+ }
242
+ }
243
+ ]
244
+ }
245
+ }
246
+ ]
247
+ }
248
+ }
249
+ ]
250
+ }
251
+ }
252
+ ]
253
+ }
254
+ }
255
+ ]
256
+ }
257
+ }
258
+ ]
259
+ }
260
+ }
261
+ ]
262
+ };
@@ -0,0 +1,99 @@
1
+ # noinspection GraphQLSchemaValidation
2
+ query GetEmbedArticle($input: EmbedArticleInput!) {
3
+ article: embedArticle(input: $input) {
4
+ id
5
+ publishedAt
6
+ seo {
7
+ title
8
+ description
9
+ keywords
10
+ }
11
+ sections {
12
+ id
13
+ facts
14
+ styles {
15
+ paddingTop
16
+ paddingBottom
17
+ paddingLeft
18
+ paddingRight
19
+ }
20
+ layouts {
21
+ id
22
+ styles {
23
+ paddingTop
24
+ paddingBottom
25
+ paddingLeft
26
+ paddingRight
27
+ }
28
+ fields {
29
+ id
30
+ name
31
+ description
32
+ styles {
33
+ marginTop
34
+ marginBottom
35
+ marginLeft
36
+ marginRight
37
+ }
38
+ fieldData {
39
+ type
40
+ bylineData {
41
+ authorName
42
+ }
43
+ imageData {
44
+ image {
45
+ type
46
+ url
47
+ thumbnailUrl
48
+ }
49
+ preferredMediaFormat
50
+ altText
51
+ }
52
+ mediaData {
53
+ media {
54
+ type
55
+ url
56
+ thumbnailUrl
57
+ }
58
+ preferredMediaFormat
59
+ altText
60
+ }
61
+ mediaGalleryData {
62
+ media {
63
+ type
64
+ url
65
+ thumbnailUrl
66
+ metadata {
67
+ width
68
+ height
69
+ }
70
+ }
71
+ galleryMode
72
+ preferredMediaFormat
73
+ altText
74
+ }
75
+ richTextData {
76
+ text
77
+ textSize
78
+ }
79
+ textData {
80
+ text
81
+ textMode
82
+ textSize
83
+ textWeight
84
+ }
85
+ videoData {
86
+ video {
87
+ type
88
+ url
89
+ thumbnailUrl
90
+ }
91
+ preferredMediaFormat
92
+ altText
93
+ }
94
+ }
95
+ }
96
+ }
97
+ }
98
+ }
99
+ }
@@ -1,5 +1,5 @@
1
- import { Status, StreamStatus } from '../../core/enums';
2
1
  import { createLocalGQLClient } from '../../core/graphql';
2
+ import { createArticleDataProvider } from './article';
3
3
  import { InternalMediaCenterAnalyticsHandler } from './internal-media-center-analytics-handler';
4
4
  import { MockCategoryFollowingProvider, MockMediaCenterContentManagementHandler, MockMembershipHandler, MockNavigationHandler, MockPostSocialInteractionsHandler } from './mocks';
5
5
  import { GetMediaPageConfigDocument } from './operations.generated';
@@ -14,7 +14,7 @@ export class InternalMediaCenterDataProvider {
14
14
  graphql;
15
15
  constructor(input) {
16
16
  const { mediaPageId, graphqlOrigin, initiator, testingStuff, onNavigationStateChange } = input;
17
- this.graphql = createLocalGQLClient(graphqlOrigin, initiator ? { 'x-initiator': initiator } : undefined);
17
+ this.graphql = createLocalGQLClient(graphqlOrigin, { initiator });
18
18
  this.fetchModel = async () => {
19
19
  const payload = await this.graphql.query(GetMediaPageConfigDocument, { mediaPageId }).toPromise();
20
20
  if (!payload.data?.embedMediaPage) {
@@ -49,7 +49,7 @@ export class InternalMediaCenterDataProvider {
49
49
  filter: {
50
50
  mediaPageId,
51
51
  types: filter.types,
52
- statuses: [Status.Published],
52
+ statuses: ['PUBLISHED'],
53
53
  categoryId: filter.categoryId,
54
54
  ids: filter.ids,
55
55
  excludeIds: filter.excludeIds
@@ -58,7 +58,8 @@ export class InternalMediaCenterDataProvider {
58
58
  limit,
59
59
  graphql: this.graphql
60
60
  });
61
- }
61
+ },
62
+ fetchArticle: createArticleDataProvider(this.graphql).fetchArticle
62
63
  };
63
64
  this.streamPlayer = {
64
65
  getStreamsCursor: async ({ filter, limit, continuationToken }) => {
@@ -68,7 +69,7 @@ export class InternalMediaCenterDataProvider {
68
69
  categoryId: filter.categoryId,
69
70
  ids: filter.ids,
70
71
  excludeIds: filter.excludeIds,
71
- statuses: [StreamStatus.Published],
72
+ statuses: ['PUBLISHED'],
72
73
  showInFeed: true
73
74
  },
74
75
  limit,
@@ -1,4 +1,4 @@
1
- import { type PostPlayerModel } from '../../posts/posts-player';
1
+ import type { PostPlayerModel } from '../../posts/posts-player';
2
2
  import type { IFeedPlayerDataProvider } from '@streamscloud/kit/ui/player/providers';
3
3
  export declare class InternalShortVideoPlayerItemsProvider implements IFeedPlayerDataProvider<PostPlayerModel> {
4
4
  readonly kind = "feed";
@@ -1,6 +1,4 @@
1
- import { PostType } from '../..';
2
1
  import { createLocalGQLClient } from '../../core/graphql';
3
- import {} from '../../posts/posts-player';
4
2
  import { getPostsCursor } from './post-data-loaders';
5
3
  import { ContinuationToken } from '@streamscloud/kit/core';
6
4
  import { CursorDataLoader } from '@streamscloud/kit/core/data-loaders';
@@ -18,7 +16,7 @@ export class InternalShortVideoPlayerItemsProvider {
18
16
  const idsChunk = this.ids.slice(startIdIndex, endIdIndex);
19
17
  try {
20
18
  const posts = await getPostsCursor({
21
- filter: { ids: idsChunk, types: [PostType.ShortVideo] },
19
+ filter: { ids: idsChunk, types: ['SHORT_VIDEO'] },
22
20
  limit: idsChunk.length,
23
21
  graphql: this.graphql
24
22
  });
@@ -39,7 +37,7 @@ export class InternalShortVideoPlayerItemsProvider {
39
37
  });
40
38
  constructor(input) {
41
39
  const { ids, graphqlOrigin, initiator, initialId } = input;
42
- this.graphql = createLocalGQLClient(graphqlOrigin, initiator ? { 'x-initiator': initiator } : undefined);
40
+ this.graphql = createLocalGQLClient(graphqlOrigin, { initiator });
43
41
  this.ids = ids;
44
42
  ids.forEach((id, idx) => this.idOrder.set(id, idx));
45
43
  const startIndex = initialId ? ids.indexOf(initialId) : 0;
@@ -36,7 +36,7 @@ export class InternalStreamsPlayerDataProvider {
36
36
  });
37
37
  constructor(input) {
38
38
  const { ids, initialId, graphqlOrigin, initiator } = input;
39
- this.graphql = createLocalGQLClient(graphqlOrigin, initiator ? { 'x-initiator': initiator } : undefined);
39
+ this.graphql = createLocalGQLClient(graphqlOrigin, { initiator });
40
40
  this.ids = ids;
41
41
  if (initialId && this.ids.includes(initialId)) {
42
42
  this.ids = [initialId, ...this.ids.filter((id) => id !== initialId)];
@@ -1,3 +1,3 @@
1
- import { PostType } from '../../core/enums';
1
+ import type { PostType } from '../../core/enums';
2
2
  import { EntityType } from '@streamscloud/streams-analytics-collector';
3
3
  export declare function mapPostTypeToEntityType(postType: PostType): EntityType;
@@ -1,16 +1,15 @@
1
- import { PostType } from '../../core/enums';
2
1
  import { EntityType } from '@streamscloud/streams-analytics-collector';
3
2
  export function mapPostTypeToEntityType(postType) {
4
3
  switch (postType) {
5
- case PostType.Article:
4
+ case 'ARTICLE':
6
5
  return EntityType.Article;
7
- case PostType.Media:
6
+ case 'MEDIA':
8
7
  return EntityType.Media;
9
- case PostType.Moment:
8
+ case 'MOMENT':
10
9
  return EntityType.Moment;
11
- case PostType.ShortVideo:
10
+ case 'SHORT_VIDEO':
12
11
  return EntityType.ShortVideo;
13
- case PostType.Video:
12
+ case 'VIDEO':
14
13
  return EntityType.Video;
15
14
  default:
16
15
  throw new Error(`Unknown PostType: ${postType}`);