@bitmovin/player-web-x 10.2.0-beta.8 → 10.2.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 (267) hide show
  1. package/bundles/playerx-bitmovin-v8-core.js +2 -2
  2. package/bundles/playerx-bitmovin-v8.js +2 -2
  3. package/bundles/playerx-core.js +2 -2
  4. package/bundles/playerx-dash.js +2 -2
  5. package/bundles/playerx-hls-ts-audio.d.ts +1 -0
  6. package/bundles/playerx-hls-ts-audio.js +2 -2
  7. package/bundles/playerx-hls.js +2 -2
  8. package/bundles/playerx-playback.d.ts +1 -0
  9. package/bundles/playerx-playback.js +2 -2
  10. package/bundles/playerx-tv.js +2 -2
  11. package/package.json +1 -1
  12. package/packages/playerx-adaptation.package.js +2 -2
  13. package/packages/playerx-advertising-api.package.js +2 -2
  14. package/packages/playerx-advertising-base.package.js +2 -2
  15. package/packages/playerx-advertising-bitmovin.package.js +2 -2
  16. package/packages/playerx-analytics.package.d.ts +1 -0
  17. package/packages/playerx-analytics.package.js +2 -2
  18. package/packages/playerx-bitmovin-advertising-bundle.package.js +2 -2
  19. package/packages/playerx-bitmovin-source-api.package.js +2 -2
  20. package/packages/playerx-bitmovin-ui.package.js +2 -2
  21. package/packages/playerx-bitmovin-v8-core.package.js +2 -2
  22. package/packages/playerx-bitmovin-v8-static-api.package.js +2 -2
  23. package/packages/playerx-bitmovin-video-element-utils.package.js +2 -2
  24. package/packages/playerx-capabilities.package.js +2 -2
  25. package/packages/playerx-container-mp4.package.js +2 -2
  26. package/packages/playerx-container-ts.package.js +2 -2
  27. package/packages/playerx-core.package.js +2 -2
  28. package/packages/playerx-dash-manifest-technology.package.js +2 -2
  29. package/packages/playerx-dash-manifest.package.js +2 -2
  30. package/packages/playerx-dash-parsing.package.js +2 -2
  31. package/packages/playerx-dash-translation.package.js +2 -2
  32. package/packages/playerx-dash.package.js +2 -2
  33. package/packages/playerx-data.package.js +2 -2
  34. package/packages/playerx-event-bus.package.js +2 -2
  35. package/packages/playerx-hls-manifest-technology.package.js +2 -2
  36. package/packages/playerx-hls-manifest.package.js +2 -2
  37. package/packages/playerx-hls-parsing.package.js +2 -2
  38. package/packages/playerx-hls-translation.package.js +2 -2
  39. package/packages/playerx-hls.package.js +2 -2
  40. package/packages/playerx-media-state.package.d.ts +1 -0
  41. package/packages/playerx-media-state.package.js +10 -0
  42. package/packages/playerx-mse-playback.package.js +2 -2
  43. package/packages/playerx-mse-presentation.package.js +2 -2
  44. package/packages/playerx-native-playback.package.js +2 -2
  45. package/packages/playerx-native-presentation.package.js +2 -2
  46. package/packages/playerx-network.package.js +2 -2
  47. package/packages/playerx-no-adaptation.package.d.ts +1 -0
  48. package/packages/playerx-no-adaptation.package.js +2 -2
  49. package/packages/playerx-platform-detection.package.d.ts +1 -0
  50. package/packages/playerx-platform-detection.package.js +10 -0
  51. package/packages/playerx-playback-api.package.js +2 -2
  52. package/packages/playerx-playback-technology.package.js +2 -2
  53. package/packages/playerx-playback.package.js +2 -2
  54. package/packages/playerx-player-api.package.js +2 -2
  55. package/packages/playerx-safari.package.d.ts +1 -0
  56. package/packages/playerx-safari.package.js +10 -0
  57. package/packages/playerx-segment-processing.package.js +2 -2
  58. package/packages/playerx-source.package.js +2 -2
  59. package/packages/playerx-sources-api.package.js +2 -2
  60. package/packages/playerx-stream-data-structure.package.js +2 -2
  61. package/packages/playerx-streaming.package.js +2 -2
  62. package/packages/playerx-subtitle-api.package.js +2 -2
  63. package/packages/playerx-subtitle-base.package.js +2 -2
  64. package/packages/playerx-subtitle-format-detection.package.js +2 -2
  65. package/packages/playerx-subtitle-native-renderer.package.js +2 -2
  66. package/packages/playerx-subtitles.package.js +2 -2
  67. package/packages/playerx-trick-play.package.js +2 -2
  68. package/packages/playerx-ts-transmuxer.package.js +2 -2
  69. package/packages/playerx-tv.package.js +2 -2
  70. package/packages/playerx-ui.package.d.ts +1 -0
  71. package/packages/playerx-ui.package.js +2 -2
  72. package/packages/playerx-video-element-controller.package.d.ts +1 -0
  73. package/packages/playerx-video-element-controller.package.js +10 -0
  74. package/packages/playerx-view-mode.package.js +2 -2
  75. package/packages/playerx-web-vtt.package.js +2 -2
  76. package/playerx-framework-utils.js +2 -2
  77. package/types/Types.d.ts +3 -0
  78. package/types/bundles/BitmovinV8.bundle.d.ts +7 -1
  79. package/types/bundles/BitmovinV8Core.bundle.d.ts +6 -0
  80. package/types/bundles/Core.bundle.d.ts +6 -0
  81. package/types/bundles/Dash.bundle.d.ts +7 -1
  82. package/types/bundles/Hls.bundle.d.ts +7 -1
  83. package/types/bundles/HlsTsAudio.bundle.d.ts +32 -0
  84. package/types/bundles/Playback.bundle.d.ts +34 -0
  85. package/types/bundles/Tv.bundle.d.ts +7 -1
  86. package/types/packages/adaptation/Adaptation.package.d.ts +9 -2
  87. package/types/packages/adaptation/AdaptationAlgorithm.d.ts +4 -0
  88. package/types/packages/adaptation/AdaptationStateAtom.d.ts +13 -16
  89. package/types/packages/adaptation/NoAdaptation.package.d.ts +12 -0
  90. package/types/packages/adaptation/StartupQuality.d.ts +5 -0
  91. package/types/packages/adaptation/Types.d.ts +24 -4
  92. package/types/packages/adaptation/WishConfigAtom.d.ts +4 -23
  93. package/types/packages/adaptation/WishDataAtom.d.ts +9 -2
  94. package/types/packages/advertising/BitmovinAdvertisingBundle.package.d.ts +3 -1
  95. package/types/packages/advertising/api/AdvertisingApi.package.d.ts +3 -1
  96. package/types/packages/advertising/api/AdvertisingEvents.d.ts +47 -7
  97. package/types/packages/advertising/api/Types.d.ts +110 -11
  98. package/types/packages/advertising/api/api-conversion/AdApiCache.d.ts +14 -0
  99. package/types/packages/advertising/api/content-source/AdBreakAtom.d.ts +19 -0
  100. package/types/packages/advertising/api/content-source/Types.d.ts +36 -0
  101. package/types/packages/advertising/base/AdExtension.d.ts +11 -0
  102. package/types/packages/advertising/base/AdIconAtom.d.ts +20 -0
  103. package/types/packages/advertising/base/AdIconPosition.d.ts +8 -0
  104. package/types/packages/advertising/base/AdPosition.d.ts +1 -0
  105. package/types/packages/advertising/base/AdQuartile.d.ts +5 -0
  106. package/types/packages/advertising/base/AdResource.d.ts +16 -0
  107. package/types/packages/advertising/base/AdSchedule.d.ts +2 -2
  108. package/types/packages/advertising/base/AdTagAtom.d.ts +1 -1
  109. package/types/packages/advertising/base/AdType.d.ts +4 -0
  110. package/types/packages/advertising/base/AdvertisingBase.package.d.ts +2 -0
  111. package/types/packages/advertising/base/BaseAdAtom.d.ts +27 -5
  112. package/types/packages/advertising/base/{BaseAdBreakAtom.d.ts → BaseAdPodAtom.d.ts} +8 -6
  113. package/types/packages/advertising/base/BaseAdPodState.d.ts +7 -0
  114. package/types/packages/advertising/base/BaseAdState.d.ts +7 -0
  115. package/types/packages/advertising/base/ClickThroughAtom.d.ts +11 -0
  116. package/types/packages/advertising/base/CompanionAdAtom.d.ts +18 -0
  117. package/types/packages/advertising/base/Types.d.ts +19 -29
  118. package/types/packages/advertising/bitmovin/AdvertisingBitmovin.package.d.ts +2 -0
  119. package/types/packages/advertising/bitmovin/Types.d.ts +17 -10
  120. package/types/packages/analytics/Analytics.package.d.ts +17 -0
  121. package/types/packages/analytics/Types.d.ts +20 -0
  122. package/types/packages/browser-specific/safari/Safari.package.d.ts +5 -0
  123. package/types/packages/browser-specific/safari/Types.d.ts +24 -0
  124. package/types/packages/capabilities/Capabilities.package.d.ts +2 -0
  125. package/types/packages/capabilities/Types.d.ts +1 -1
  126. package/types/packages/container/container-mp4/ContainerMp4.package.d.ts +4 -0
  127. package/types/packages/container/container-ts/ContainerTs.package.d.ts +5 -1
  128. package/types/packages/container/ts-transmuxer/TsTransmuxer.package.d.ts +4 -0
  129. package/types/packages/core/Constants.d.ts +7 -0
  130. package/types/packages/core/Core.package.d.ts +2 -0
  131. package/types/packages/core/Types.d.ts +3 -2
  132. package/types/packages/core/metrics/MetricsAtom.d.ts +1 -1
  133. package/types/packages/{adaptation → core/state}/RingBufferAtom.d.ts +2 -2
  134. package/types/packages/core/state/StateMachineAtom.d.ts +13 -12
  135. package/types/packages/core/state/state-effect/Types.d.ts +2 -2
  136. package/types/packages/core/technology/Types.d.ts +2 -2
  137. package/types/packages/core/utils/ArrayHelper.d.ts +0 -2
  138. package/types/packages/core/utils/DomUtils.d.ts +5 -2
  139. package/types/packages/data/Data.package.d.ts +2 -0
  140. package/types/packages/data/Types.d.ts +7 -1
  141. package/types/packages/event-bus/EventBus.package.d.ts +2 -0
  142. package/types/packages/manifest/dash/DashManifest.package.d.ts +2 -0
  143. package/types/packages/manifest/dash/parsing/DashParsing.package.d.ts +2 -0
  144. package/types/packages/manifest/dash/parsing/Errors.d.ts +1 -1
  145. package/types/packages/manifest/dash/root/Dash.package.d.ts +2 -0
  146. package/types/packages/manifest/dash/root/Types.d.ts +3 -1
  147. package/types/packages/manifest/dash/technology/DashManifestTechnology.package.d.ts +2 -0
  148. package/types/packages/manifest/dash/technology/Types.d.ts +2 -1
  149. package/types/packages/manifest/dash/translation/DashTranslation.package.d.ts +2 -0
  150. package/types/packages/manifest/hls/HlsManifest.package.d.ts +2 -0
  151. package/types/packages/manifest/hls/parsing/Constants.d.ts +47 -0
  152. package/types/packages/manifest/hls/parsing/Errors.d.ts +1 -1
  153. package/types/packages/manifest/hls/parsing/HlsParsing.package.d.ts +2 -0
  154. package/types/packages/manifest/hls/parsing/Types.d.ts +5 -48
  155. package/types/packages/manifest/hls/parsing/m3u8/TranslatorStream.d.ts +1 -0
  156. package/types/packages/manifest/hls/root/Hls.package.d.ts +8 -1
  157. package/types/packages/manifest/hls/technology/HlsManifestTechnology.package.d.ts +2 -0
  158. package/types/packages/manifest/hls/technology/Types.d.ts +2 -1
  159. package/types/packages/manifest/hls/translation/HlsTranslation.package.d.ts +7 -0
  160. package/types/packages/manifest/hls/translation/Types.d.ts +10 -11
  161. package/types/packages/manifest/hls/translation/segments/StreamHelpers.d.ts +14 -0
  162. package/types/packages/manifest/hls/translation/stream/TracksToSelectionGroups.d.ts +6 -0
  163. package/types/packages/manifest/hls/translation/stream/UnknownTrackToMediaTrackTranslator.d.ts +4 -0
  164. package/types/packages/media-state/MediaInfoAtoms.d.ts +18 -0
  165. package/types/packages/media-state/MediaState.d.ts +10 -0
  166. package/types/packages/media-state/MediaState.package.d.ts +24 -0
  167. package/types/packages/media-state/MediaStateAtom.d.ts +16 -0
  168. package/types/packages/media-state/MediaStateTransitionType.d.ts +11 -0
  169. package/types/packages/media-state/SeekRestrictionAtom.d.ts +2 -0
  170. package/types/packages/media-state/Types.d.ts +48 -0
  171. package/types/packages/media-state/controllers/video-element/StaleTransitionTracker.d.ts +10 -0
  172. package/types/packages/media-state/controllers/video-element/Types.d.ts +35 -0
  173. package/types/packages/media-state/controllers/video-element/VideoElementController.package.d.ts +18 -0
  174. package/types/packages/network/HttpRequestMethod.d.ts +5 -0
  175. package/types/packages/network/HttpRequestType.d.ts +11 -0
  176. package/types/packages/network/HttpResponseType.d.ts +7 -0
  177. package/types/packages/network/Network.package.d.ts +2 -0
  178. package/types/packages/network/NetworkAtom.d.ts +15 -0
  179. package/types/packages/network/NetworkTask.d.ts +8 -7
  180. package/types/packages/network/Types.d.ts +17 -26
  181. package/types/packages/platform-detection/PlatformDetection.package.d.ts +6 -0
  182. package/types/packages/platform-detection/SemanticVersion.d.ts +10 -0
  183. package/types/packages/platform-detection/Types.d.ts +11 -0
  184. package/types/packages/platform-detection/browser-detection/BrowserName.d.ts +4 -0
  185. package/types/packages/platform-detection/browser-detection/Types.d.ts +12 -0
  186. package/types/packages/platform-detection/operating-system-detection/OperatingSystemName.d.ts +3 -0
  187. package/types/packages/platform-detection/operating-system-detection/Types.d.ts +12 -0
  188. package/types/packages/platform-detection/platform-detection/PlatformType.d.ts +3 -0
  189. package/types/packages/platform-detection/platform-detection/Types.d.ts +9 -0
  190. package/types/packages/playback/Playback.package.d.ts +2 -0
  191. package/types/packages/playback/play-pause/Types.d.ts +0 -3
  192. package/types/packages/playback/volume/Types.d.ts +2 -4
  193. package/types/packages/playback-api/PlaybackApi.package.d.ts +2 -0
  194. package/types/packages/playback-api/play-pause-api/Types.d.ts +4 -3
  195. package/types/packages/playback-api/playback-api-events/Types.d.ts +11 -8
  196. package/types/packages/playback-api/time-api/Types.d.ts +4 -5
  197. package/types/packages/playback-technology/PlaybackTechnology.package.d.ts +2 -0
  198. package/types/packages/playback-technology/PlaybackTechnologyEntryType.d.ts +4 -0
  199. package/types/packages/playback-technology/Types.d.ts +6 -6
  200. package/types/packages/player-api/PlayerApi.package.d.ts +4 -0
  201. package/types/packages/player-api/PlayerEvent.d.ts +3 -0
  202. package/types/packages/player-api/Types.d.ts +4 -4
  203. package/types/packages/presentation/mse/MsePlayback.package.d.ts +2 -0
  204. package/types/packages/presentation/mse/playback-technology/Types.d.ts +2 -1
  205. package/types/packages/presentation/mse/playback-technology/atoms/MsePresentationStateAtom.d.ts +1 -4
  206. package/types/packages/presentation/mse/presentation/MsePresentation.package.d.ts +6 -2
  207. package/types/packages/presentation/mse/presentation/Types.d.ts +6 -0
  208. package/types/packages/presentation/native/NativePlayback.package.d.ts +3 -2
  209. package/types/packages/presentation/native/playback-technology/Types.d.ts +2 -1
  210. package/types/packages/presentation/native/presentation/NativePresentation.package.d.ts +2 -0
  211. package/types/packages/segment-processing/SegmentProcessing.package.d.ts +4 -1
  212. package/types/packages/segment-processing/SegmentProcessorType.d.ts +7 -0
  213. package/types/packages/segment-processing/Types.d.ts +10 -10
  214. package/types/packages/source/Source.package.d.ts +2 -0
  215. package/types/packages/source/SourceReference.d.ts +1 -1
  216. package/types/packages/source/atoms/PlaybackConfigAtom.d.ts +2 -2
  217. package/types/packages/source/atoms/SourceConfigAtom.d.ts +2 -0
  218. package/types/packages/sources-api/SourcesApi.package.d.ts +2 -0
  219. package/types/packages/sources-api/SourcesApiEvent.d.ts +7 -0
  220. package/types/packages/sources-api/Types.d.ts +4 -8
  221. package/types/packages/stream-data-structure/StreamDataStructure.package.d.ts +2 -0
  222. package/types/packages/stream-data-structure/Types.d.ts +1 -0
  223. package/types/packages/stream-data-structure/segment/Exports.d.ts +3 -3
  224. package/types/packages/stream-data-structure/segment/SegmentAtom.d.ts +11 -2
  225. package/types/packages/stream-data-structure/segment/SegmentDataAtom.d.ts +1 -7
  226. package/types/packages/stream-data-structure/segment/SegmentUtils.d.ts +3 -2
  227. package/types/packages/stream-data-structure/selection-group/SelectionGroupAtom.d.ts +1 -2
  228. package/types/packages/stream-data-structure/track/Exports.d.ts +6 -1
  229. package/types/packages/stream-data-structure/track/TrackAtom.d.ts +19 -4
  230. package/types/packages/stream-data-structure/track/TrackTypeGuards.d.ts +3 -1
  231. package/types/packages/stream-data-structure/track/TypeDetection.d.ts +25 -0
  232. package/types/packages/stream-data-structure/track/TypeDetectionTypeGuards.d.ts +4 -0
  233. package/types/packages/streaming/Streaming.package.d.ts +4 -2
  234. package/types/packages/streaming/Types.d.ts +3 -2
  235. package/types/packages/subtitles/Subtitles.package.d.ts +2 -0
  236. package/types/packages/subtitles/subtitle-api/SubtitleApi.package.d.ts +2 -0
  237. package/types/packages/subtitles/subtitle-api/SubtitleEvent.d.ts +9 -0
  238. package/types/packages/subtitles/subtitle-api/Types.d.ts +3 -9
  239. package/types/packages/subtitles/subtitle-base/SubtitleBase.package.d.ts +2 -0
  240. package/types/packages/subtitles/subtitle-format-detection/SubtitleFormatDetection.package.d.ts +2 -0
  241. package/types/packages/subtitles/subtitle-native-renderer/SubtitleNativeRenderer.package.d.ts +2 -0
  242. package/types/packages/subtitles/webvtt/WebVtt.package.d.ts +2 -0
  243. package/types/packages/trick-play/TrickPlay.package.d.ts +4 -1
  244. package/types/packages/tv/Tv.package.d.ts +2 -0
  245. package/types/packages/ui/Types.d.ts +36 -0
  246. package/types/packages/ui/Ui.package.d.ts +6 -0
  247. package/types/packages/v8-compat/BitmovinUi.package.d.ts +6 -4
  248. package/types/packages/v8-compat/BitmovinV8Core.package.d.ts +18 -4
  249. package/types/packages/v8-compat/BitmovinV8StaticApi.package.d.ts +10 -5
  250. package/types/packages/v8-compat/apis/SourceApis.d.ts +5 -0
  251. package/types/packages/v8-compat/apis/SubtitleApi.d.ts +5 -0
  252. package/types/packages/v8-compat/enums/AdditionalPlayerExportNames.d.ts +9 -0
  253. package/types/packages/v8-compat/enums/PlayerExports.d.ts +0 -7
  254. package/types/packages/v8-compat/event-handling/EventDispatcher.d.ts +11 -0
  255. package/types/packages/v8-compat/source-api/BitmovinSourceApi.package.d.ts +12 -4
  256. package/types/packages/v8-compat/video-element/BitmovinVideoElementUtils.package.d.ts +6 -4
  257. package/types/packages/view-mode/Types.d.ts +4 -6
  258. package/types/packages/view-mode/ViewMode.d.ts +5 -0
  259. package/types/packages/view-mode/ViewMode.package.d.ts +4 -0
  260. package/types/packages/view-mode/ViewModeAtom.d.ts +1 -1
  261. package/types/packages/core/FrameworkError.d.ts +0 -4
  262. package/types/packages/core/network/NetworkAtom.d.ts +0 -21
  263. package/types/packages/playback/playback-state/Types.d.ts +0 -41
  264. package/types/packages/playback/video-element-state/SeekRestrictionAtom.d.ts +0 -2
  265. package/types/packages/playback/video-element-state/Types.d.ts +0 -32
  266. package/types/packages/playback/video-element-state/VideoElementStateAtom.d.ts +0 -58
  267. package/types/packages/presentation/native/Types.d.ts +0 -12
@@ -1,5 +1,10 @@
1
1
  import type { EventBus } from '../../event-bus/Types';
2
- import type { AdType, BaseAdBreakState, BaseAdState } from '../base/Types';
2
+ import type { AdExtension } from '../base/AdExtension';
3
+ import type { AdIconHorizontalPosition, AdIconVerticalPosition } from '../base/AdIconPosition';
4
+ import type { AdResource } from '../base/AdResource';
5
+ import type { AdType } from '../base/AdType';
6
+ import type { BaseAdPodState } from '../base/BaseAdPodState';
7
+ import type { BaseAdState } from '../base/BaseAdState';
3
8
  import type { AdvertisingEventMap } from './AdvertisingEvents';
4
9
  export type AdTagConfig = {
5
10
  type: AdType;
@@ -9,41 +14,135 @@ export type PreloadConfig = {
9
14
  adManifestPreloadOffset?: number;
10
15
  adSourcePreloadOffset?: number;
11
16
  };
12
- export type AdBreakConfig = {
17
+ export type AdConfig = {
13
18
  id?: string;
14
19
  tag: AdTagConfig;
15
20
  position?: number | string;
16
21
  preloadConfig?: PreloadConfig;
17
22
  };
18
- export type Ad = {
23
+ export type ClickThrough = {
24
+ readonly url: string;
25
+ reportClicked(): void;
26
+ };
27
+ export type CompanionAd = {
28
+ readonly id: string;
29
+ readonly width: number;
30
+ readonly height: number;
31
+ readonly resource: AdResource;
32
+ readonly altText?: string;
33
+ readonly clickThrough?: ClickThrough;
34
+ reportShown(): void;
35
+ };
36
+ export type AdIcon = {
37
+ readonly program: string;
38
+ readonly width: number;
39
+ readonly height: number;
40
+ readonly xPosition: number | AdIconHorizontalPosition;
41
+ readonly yPosition: number | AdIconVerticalPosition;
42
+ readonly offset?: number;
43
+ readonly duration?: number;
44
+ readonly resource: AdResource;
45
+ readonly clickThrough?: ClickThrough;
46
+ };
47
+ type AdBase = {
19
48
  readonly id: string;
20
- readonly skippable: boolean;
49
+ readonly externalAdId: string;
21
50
  readonly skipDelay: number;
22
51
  readonly state: BaseAdState;
23
52
  readonly position: number;
53
+ readonly isLinear: boolean;
54
+ readonly error?: Error;
55
+ readonly clickThrough?: ClickThrough;
56
+ readonly companions: readonly CompanionAd[];
57
+ readonly icons: readonly AdIcon[];
58
+ readonly extensions: readonly AdExtension[];
59
+ readonly canPause: boolean;
60
+ readonly canSkip: boolean;
61
+ readonly canSetVolume: boolean;
62
+ readonly canExpand: boolean;
63
+ readonly hasTimeline: boolean;
24
64
  };
25
- export type AdBreak = {
65
+ type CanPause = {
66
+ readonly canPause: true;
67
+ readonly paused: boolean;
68
+ play(): void;
69
+ pause(): void;
70
+ };
71
+ type CannotPause = {
72
+ readonly canPause: false;
73
+ };
74
+ type CanSkip = {
75
+ readonly canSkip: true;
76
+ skip(): void;
77
+ };
78
+ type CannotSkip = {
79
+ readonly canSkip: false;
80
+ };
81
+ type CanSetVolume = {
82
+ readonly canSetVolume: true;
83
+ volume: number;
84
+ };
85
+ type CannotSetVolume = {
86
+ readonly canSetVolume: false;
87
+ };
88
+ type CanExpand = {
89
+ readonly canExpand: true;
90
+ expanded: boolean;
91
+ };
92
+ type CannotExpand = {
93
+ readonly canExpand: false;
94
+ };
95
+ type HasTimeline = {
96
+ readonly hasTimeline: true;
97
+ readonly duration: number;
98
+ readonly currentTime: number;
99
+ };
100
+ type NoTimeline = {
101
+ readonly hasTimeline: false;
102
+ };
103
+ export type Ad = AdBase & (CanPause | CannotPause) & (CanSkip | CannotSkip) & (CanSetVolume | CannotSetVolume) & (CanExpand | CannotExpand) & (HasTimeline | NoTimeline);
104
+ export type PausableAd = Ad & CanPause;
105
+ export type SkippableAd = Ad & CanSkip;
106
+ export type VolumeControllableAd = Ad & CanSetVolume;
107
+ export type ExpandableAd = Ad & CanExpand;
108
+ export type TimedAd = Ad & HasTimeline;
109
+ export type AdPod = {
26
110
  readonly id: string;
27
111
  readonly position: number;
28
112
  readonly ads: Ad[];
29
- readonly state: BaseAdBreakState;
113
+ readonly state: BaseAdPodState;
114
+ };
115
+ export declare enum AdBreakState {
116
+ Scheduled = "scheduled",
117
+ Playing = "playing",
118
+ Error = "error",
119
+ Completed = "completed"
120
+ }
121
+ export type AdBreak = {
122
+ readonly id: string;
123
+ readonly position: number;
124
+ readonly state: AdBreakState;
125
+ readonly adPods: AdPod[];
30
126
  };
31
127
  export type ContentSourceAdvertisingApi = {
32
128
  readonly isAd: false;
33
129
  readonly isLinearAdActive: boolean;
34
- schedule(adBreak: AdBreakConfig): AdBreak;
35
- discardAdBreak(adBreak: AdBreak): void;
130
+ schedule(config: AdConfig): AdPod;
131
+ discard(adPodOrAdBreak: AdPod | AdBreak): void;
36
132
  list(): AdBreak[];
37
133
  getActiveAdBreak(): AdBreak | undefined;
134
+ getActiveAdPod(): AdPod | undefined;
38
135
  getActiveAd(): Ad | undefined;
39
136
  };
40
- export type AdSourceAdvertisingApi = {
137
+ type AdSourceAdvertisingApiBase = {
41
138
  readonly isAd: true;
42
- readonly isSkippable: boolean;
43
139
  readonly skipDelay: number;
44
- skip(): void;
140
+ readonly id: string;
141
+ readonly externalAdId: string;
45
142
  };
143
+ export type AdSourceAdvertisingApi = AdSourceAdvertisingApiBase & (CanSkip | CannotSkip);
46
144
  export type AdvertisingApi = {
47
145
  ads: ContentSourceAdvertisingApi | AdSourceAdvertisingApi;
48
146
  events: EventBus<AdvertisingEventMap>;
49
147
  };
148
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { ContextWithState } from '../../../Types';
2
+ import type { AdIconAtom } from '../../base/AdIconAtom';
3
+ import type { BaseAdAtom } from '../../base/BaseAdAtom';
4
+ import type { BaseAdPodAtom } from '../../base/BaseAdPodAtom';
5
+ import type { ClickThroughAtom } from '../../base/ClickThroughAtom';
6
+ import type { CompanionAdAtom } from '../../base/CompanionAdAtom';
7
+ import type { AdBreakAtom } from '../content-source/AdBreakAtom';
8
+ import type { Ad, AdBreak, AdIcon, AdPod, ClickThrough, CompanionAd } from '../Types';
9
+ type ValueFor<K> = K extends BaseAdAtom ? Ad : K extends BaseAdPodAtom ? AdPod : K extends AdBreakAtom ? AdBreak : K extends ClickThroughAtom ? ClickThrough : K extends CompanionAdAtom ? CompanionAd : K extends AdIconAtom ? AdIcon : never;
10
+ export type AdApiCache = {
11
+ getOrCreate<K extends object>(key: K, factory: (context: ContextWithState) => ValueFor<K>): ValueFor<K>;
12
+ };
13
+ export declare function createAdApiCache(context: ContextWithState): AdApiCache;
14
+ export {};
@@ -0,0 +1,19 @@
1
+ import type { EmptyObject } from '../../../../../framework-types/BaseTypes';
2
+ import type { ArrayAtom } from '../../../core/state/ArrayStateAtom';
3
+ import type { PrimitiveAtom } from '../../../core/state/PrimitiveAtom';
4
+ import type { StateAtom } from '../../../core/state/Types';
5
+ import type { BaseAdPodAtom } from '../../base/BaseAdPodAtom';
6
+ import { AdBreakState } from '../Types';
7
+ import type { ContentSourceAdApiContext } from './Types';
8
+ type AdBreak = {
9
+ id: string;
10
+ position: number;
11
+ state: PrimitiveAtom<AdBreakState>;
12
+ adPods: ArrayAtom<BaseAdPodAtom>;
13
+ error: PrimitiveAtom<Error | undefined>;
14
+ };
15
+ export type AdBreakAtom = StateAtom<AdBreak, EmptyObject>;
16
+ export declare function createAdBreakAtom(context: ContentSourceAdApiContext, position: number, ...initialAdPods: BaseAdPodAtom[]): AdBreakAtom;
17
+ export declare function findAdBreakAtPosition(adBreaks: ArrayAtom<AdBreakAtom>, position: number): AdBreakAtom | undefined;
18
+ export declare function findAdBreakContainingPod(adBreaks: ArrayAtom<AdBreakAtom>, adPod: BaseAdPodAtom): AdBreakAtom | undefined;
19
+ export {};
@@ -0,0 +1,36 @@
1
+ import type { ApiManager } from '../../../../../framework-types/api-manager/ApiManager';
2
+ import type { EmptyObject } from '../../../../../framework-types/BaseTypes';
3
+ import type { ContextHaving, ContextUsing } from '../../../../../framework-types/execution-context/Types';
4
+ import type { StoreEffectFactory } from '../../../core/state/StoreEffectFactory';
5
+ import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../../core/Types';
6
+ import type { CoreUtils } from '../../../core/utils/Types';
7
+ import type { extendEventBusTypes } from '../../../event-bus/EventBus';
8
+ import type { EventBus, EventBusExportNames } from '../../../event-bus/Types';
9
+ import type { SourceStateAtom } from '../../../source/atoms/SourceStateAtom';
10
+ import type { SourceExportNames } from '../../../source/Types';
11
+ import type { SourcesApiExportNames } from '../../../sources-api/Types';
12
+ import type { ContextWithState } from '../../../Types';
13
+ import type { isAdPositionKnown } from '../../base/AdPosition';
14
+ import type { createBaseAdPodAtom } from '../../base/BaseAdPodAtom';
15
+ import type { BaseAdPodState } from '../../base/BaseAdPodState';
16
+ import type { BaseAdState } from '../../base/BaseAdState';
17
+ import type { AdvertisingBaseExportNames, ContentSourceAdExports } from '../../base/Types';
18
+ import type { AdvertisingEventMap } from '../AdvertisingEvents';
19
+ import type { AdApiCache } from '../api-conversion/AdApiCache';
20
+ import type { ContentSourceAdvertisingApi } from '../Types';
21
+ export type ContentSourceAdvertisingApiDependencies = {
22
+ [CoreExportNames.CoreEffects]: CoreEffects;
23
+ [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
24
+ [CoreExportNames.Utils]: CoreUtils;
25
+ [EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
26
+ [SourcesApiExportNames.SourceApiManager]: ApiManager<{
27
+ ads: ContentSourceAdvertisingApi;
28
+ }>;
29
+ [SourcesApiExportNames.SourceEventBus]: EventBus<AdvertisingEventMap>;
30
+ [AdvertisingBaseExportNames.CreateBaseAdPod]: typeof createBaseAdPodAtom;
31
+ [AdvertisingBaseExportNames.BaseAdPodState]: typeof BaseAdPodState;
32
+ [AdvertisingBaseExportNames.BaseAdState]: typeof BaseAdState;
33
+ [AdvertisingBaseExportNames.IsAdPositionKnown]: typeof isAdPositionKnown;
34
+ [SourceExportNames.SourceState]: SourceStateAtom;
35
+ } & ContentSourceAdExports;
36
+ export type ContentSourceAdApiContext = ContextHaving<ContentSourceAdvertisingApiDependencies, EmptyObject, ContextUsing<[StoreEffectFactory<'adApiCache', AdApiCache>], ContextWithState>>;
@@ -0,0 +1,11 @@
1
+ export declare enum AdExtensionSource {
2
+ Ad = "ad",
3
+ Creative = "creative"
4
+ }
5
+ export type AdExtension = {
6
+ readonly source: AdExtensionSource;
7
+ readonly name: string;
8
+ readonly value: string | undefined;
9
+ readonly attributes: Readonly<Record<string, string>>;
10
+ readonly children: readonly AdExtension[];
11
+ };
@@ -0,0 +1,20 @@
1
+ import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
+ import type { StateAtom } from '../../core/state/Types';
3
+ import type { AdIconHorizontalPosition, AdIconVerticalPosition } from './AdIconPosition';
4
+ import type { AdResource } from './AdResource';
5
+ import type { ClickThroughAtom } from './ClickThroughAtom';
6
+ import type { AdvertisingBaseContext } from './Types';
7
+ type AdIconState = {
8
+ program: string;
9
+ width: number;
10
+ height: number;
11
+ xPosition: number | AdIconHorizontalPosition;
12
+ yPosition: number | AdIconVerticalPosition;
13
+ offset: number | undefined;
14
+ duration: number | undefined;
15
+ resource: AdResource;
16
+ clickThrough: ClickThroughAtom | undefined;
17
+ };
18
+ export type AdIconAtom = StateAtom<AdIconState, EmptyObject>;
19
+ export declare function createAdIconAtom(context: AdvertisingBaseContext, data: AdIconState): AdIconAtom;
20
+ export {};
@@ -0,0 +1,8 @@
1
+ export declare enum AdIconHorizontalPosition {
2
+ Left = "left",
3
+ Right = "right"
4
+ }
5
+ export declare enum AdIconVerticalPosition {
6
+ Top = "top",
7
+ Bottom = "bottom"
8
+ }
@@ -1,4 +1,5 @@
1
1
  export declare const AdPositionNotYetKnown: unique symbol;
2
2
  export type AdPosition = (contentDuration: number) => typeof AdPositionNotYetKnown | number;
3
+ export declare function isAdPositionKnown(position: typeof AdPositionNotYetKnown | number): position is number;
3
4
  export declare function resolveAdPosition(position: unknown, contentDuration: number): number | typeof AdPositionNotYetKnown;
4
5
  export declare function createAdPosition(configuredPosition?: string | number): AdPosition;
@@ -0,0 +1,5 @@
1
+ export declare enum AdQuartile {
2
+ FirstQuartile = "first-quartile",
3
+ Midpoint = "midpoint",
4
+ ThirdQuartile = "third-quartile"
5
+ }
@@ -0,0 +1,16 @@
1
+ export declare enum AdResourceType {
2
+ Static = "static",
3
+ Iframe = "iframe",
4
+ Html = "html"
5
+ }
6
+ export type AdResource = {
7
+ type: AdResourceType.Static;
8
+ url: string;
9
+ creativeType: string;
10
+ } | {
11
+ type: AdResourceType.Iframe;
12
+ url: string;
13
+ } | {
14
+ type: AdResourceType.Html;
15
+ markup: string;
16
+ };
@@ -1,3 +1,3 @@
1
1
  import type { ArrayAtom } from '../../core/state/ArrayStateAtom';
2
- import type { BaseAdBreakAtom } from './BaseAdBreakAtom';
3
- export type AdSchedule = ArrayAtom<BaseAdBreakAtom>;
2
+ import type { BaseAdPodAtom } from './BaseAdPodAtom';
3
+ export type AdSchedule = ArrayAtom<BaseAdPodAtom>;
@@ -1,7 +1,7 @@
1
1
  import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
2
  import type { StateAtom } from '../../core/state/Types';
3
3
  import type { ContextWithState } from '../../Types';
4
- import type { AdType } from './Types';
4
+ import type { AdType } from './AdType';
5
5
  type AdTag = {
6
6
  type: AdType;
7
7
  url: string;
@@ -0,0 +1,4 @@
1
+ export declare enum AdType {
2
+ VAST = "vast",
3
+ VMAP = "vmap"
4
+ }
@@ -10,3 +10,5 @@ import type { EmptyObject } from '../../../../framework-types/BaseTypes';
10
10
  import type { AdvertisingBasePackageExports } from './Types';
11
11
  export declare const AdvertisingBasePackage: import("../../../../framework-types/package-api/Package").Package<EmptyObject, AdvertisingBasePackageExports, EmptyObject>;
12
12
  export default AdvertisingBasePackage;
13
+
14
+ export declare const version: string;
@@ -1,22 +1,44 @@
1
1
  import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
+ import type { ArrayAtom } from '../../core/state/ArrayStateAtom';
2
3
  import type { PrimitiveAtom } from '../../core/state/PrimitiveAtom';
3
4
  import type { StateAtom } from '../../core/state/Types';
4
5
  import type { Transient } from '../../core/utils/StateUtils';
6
+ import type { AdExtension } from './AdExtension';
7
+ import type { AdIconAtom } from './AdIconAtom';
5
8
  import type { AdPosition } from './AdPosition';
6
- import type { AdQuartile, AdvertisingBaseContext } from './Types';
7
- import { BaseAdState } from './Types';
9
+ import type { AdQuartile } from './AdQuartile';
10
+ import { BaseAdState } from './BaseAdState';
11
+ import type { ClickThroughAtom } from './ClickThroughAtom';
12
+ import type { CompanionAdAtom } from './CompanionAdAtom';
13
+ import type { AdvertisingBaseContext } from './Types';
8
14
  type AdState = {
9
15
  id: string;
16
+ externalAdId: string;
10
17
  position: AdPosition;
11
- isSkippable: PrimitiveAtom<boolean>;
12
18
  skipDelay: PrimitiveAtom<number>;
13
19
  quartile: PrimitiveAtom<AdQuartile | undefined>;
14
20
  state: PrimitiveAtom<BaseAdState>;
15
21
  error: PrimitiveAtom<Error | undefined>;
16
22
  sourcePreloadOffset: PrimitiveAtom<number>;
23
+ isLinear: PrimitiveAtom<boolean>;
24
+ canPause: PrimitiveAtom<boolean>;
25
+ paused: PrimitiveAtom<boolean>;
26
+ play: Transient<void>;
27
+ pause: Transient<void>;
28
+ canSkip: PrimitiveAtom<boolean>;
17
29
  skip: Transient<void>;
18
- clicked: Transient<string | undefined>;
30
+ canSetVolume: PrimitiveAtom<boolean>;
31
+ volume: PrimitiveAtom<number>;
32
+ canExpand: PrimitiveAtom<boolean>;
33
+ expanded: PrimitiveAtom<boolean>;
34
+ hasTimeline: PrimitiveAtom<boolean>;
35
+ duration: PrimitiveAtom<number>;
36
+ currentTime: PrimitiveAtom<number>;
37
+ clickThrough: ClickThroughAtom | undefined;
38
+ companions: ArrayAtom<CompanionAdAtom>;
39
+ icons: ArrayAtom<AdIconAtom>;
40
+ extensions: ArrayAtom<AdExtension>;
19
41
  };
20
42
  export type BaseAdAtom = StateAtom<AdState, EmptyObject>;
21
- export declare function createBaseAdAtom(context: AdvertisingBaseContext, id: string, position: AdPosition, adSkipDelay: number, preloadOffset: number): BaseAdAtom;
43
+ export declare function createBaseAdAtom(context: AdvertisingBaseContext, id: string, externalAdId: string, position: AdPosition, adSkipDelay: number, preloadOffset: number, clickThrough: ClickThroughAtom | undefined, initialCompanions: CompanionAdAtom[], initialIcons: AdIconAtom[], initialExtensions: AdExtension[]): BaseAdAtom;
22
44
  export {};
@@ -8,22 +8,24 @@ import { CoreExportNames } from '../../core/Types';
8
8
  import type { ContextWithState } from '../../Types';
9
9
  import type { AdPosition } from './AdPosition';
10
10
  import type { AdTagAtom } from './AdTagAtom';
11
+ import type { AdType } from './AdType';
11
12
  import type { BaseAdAtom } from './BaseAdAtom';
13
+ import type { BaseAdPodState } from './BaseAdPodState';
12
14
  import type { PreloadConfigAtom } from './PreloadConfigAtom';
13
- import type { AdType } from './Types';
14
- import { BaseAdBreakState } from './Types';
15
- type BaseAdBreak = {
15
+ import { AdvertisingBaseExportNames } from './Types';
16
+ type BaseAdPod = {
16
17
  id: string;
17
18
  position: AdPosition;
18
19
  tag: AdTagAtom;
19
- state: PrimitiveAtom<BaseAdBreakState>;
20
+ state: PrimitiveAtom<BaseAdPodState>;
20
21
  ads: ArrayAtom<BaseAdAtom>;
21
22
  preloadConfig: PreloadConfigAtom;
22
23
  error: PrimitiveAtom<Error | undefined>;
23
24
  };
24
- export type BaseAdBreakAtom = StateAtom<BaseAdBreak, EmptyObject>;
25
+ export type BaseAdPodAtom = StateAtom<BaseAdPod, EmptyObject>;
25
26
  type Context = ContextHaving<{
26
27
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
28
+ [AdvertisingBaseExportNames.BaseAdPodState]: typeof BaseAdPodState;
27
29
  }, EmptyObject, ContextWithState>;
28
- export declare function createBaseAdBreakAtom(context: Context, id: string, scheduledPosition: string | number | undefined, tagType: AdType, url: string, adManifestPreloadOffset?: number, adSourcePreloadOffset?: number): BaseAdBreakAtom;
30
+ export declare function createBaseAdPodAtom(context: Context, id: string, scheduledPosition: string | number | undefined, tagType: AdType, url: string, adManifestPreloadOffset?: number, adSourcePreloadOffset?: number): BaseAdPodAtom;
29
31
  export {};
@@ -0,0 +1,7 @@
1
+ export declare enum BaseAdPodState {
2
+ Scheduled = "scheduled",
3
+ Loaded = "loaded",
4
+ Playing = "playing",
5
+ Error = "error",
6
+ Completed = "completed"
7
+ }
@@ -0,0 +1,7 @@
1
+ export declare enum BaseAdState {
2
+ Scheduled = "scheduled",
3
+ Playing = "playing",
4
+ Completed = "completed",
5
+ Skipped = "skipped",
6
+ Error = "error"
7
+ }
@@ -0,0 +1,11 @@
1
+ import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
+ import type { StateAtom } from '../../core/state/Types';
3
+ import type { Transient } from '../../core/utils/StateUtils';
4
+ import type { AdvertisingBaseContext } from './Types';
5
+ type ClickThroughState = {
6
+ url: string;
7
+ clicked: Transient<void>;
8
+ };
9
+ export type ClickThroughAtom = StateAtom<ClickThroughState, EmptyObject>;
10
+ export declare function createClickThroughAtom(context: AdvertisingBaseContext, url: string): ClickThroughAtom;
11
+ export {};
@@ -0,0 +1,18 @@
1
+ import type { EmptyObject } from '../../../../framework-types/BaseTypes';
2
+ import type { StateAtom } from '../../core/state/Types';
3
+ import type { Transient } from '../../core/utils/StateUtils';
4
+ import type { AdResource } from './AdResource';
5
+ import type { ClickThroughAtom } from './ClickThroughAtom';
6
+ import type { AdvertisingBaseContext } from './Types';
7
+ type CompanionAdState = {
8
+ id: string;
9
+ width: number;
10
+ height: number;
11
+ resource: AdResource;
12
+ altText: string | undefined;
13
+ clickThrough: ClickThroughAtom | undefined;
14
+ shown: Transient<void>;
15
+ };
16
+ export type CompanionAdAtom = StateAtom<CompanionAdState, EmptyObject>;
17
+ export declare function createCompanionAdAtom(context: AdvertisingBaseContext, id: string, width: number, height: number, resource: AdResource, altText: string | undefined, clickThrough: ClickThroughAtom | undefined): CompanionAdAtom;
18
+ export {};
@@ -4,32 +4,16 @@ import type { CoreUtils } from '../../core/utils/Types';
4
4
  import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
5
5
  import type { SourceExportNames } from '../../source/Types';
6
6
  import type { ContextWithState } from '../../Types';
7
+ import type { AdExtensionSource } from './AdExtension';
8
+ import type { isAdPositionKnown } from './AdPosition';
9
+ import type { AdQuartile } from './AdQuartile';
7
10
  import type { AdSchedule } from './AdSchedule';
11
+ import type { AdType } from './AdType';
8
12
  import type { BaseAdAtom, createBaseAdAtom } from './BaseAdAtom';
9
- import type { createBaseAdBreakAtom } from './BaseAdBreakAtom';
10
- export declare enum AdType {
11
- VAST = "vast",
12
- VMAP = "vmap"
13
- }
14
- export declare enum AdQuartile {
15
- FirstQuartile = "first-quartile",
16
- Midpoint = "midpoint",
17
- ThirdQuartile = "third-quartile"
18
- }
19
- export declare enum BaseAdBreakState {
20
- Scheduled = "scheduled",
21
- Loaded = "loaded",
22
- Playing = "playing",
23
- Error = "error",
24
- Completed = "completed"
25
- }
26
- export declare enum BaseAdState {
27
- Scheduled = "scheduled",
28
- Playing = "playing",
29
- Completed = "completed",
30
- Skipped = "skipped",
31
- Error = "error"
32
- }
13
+ import type { createBaseAdPodAtom } from './BaseAdPodAtom';
14
+ import type { BaseAdPodState } from './BaseAdPodState';
15
+ import type { BaseAdState } from './BaseAdState';
16
+ import type { createClickThroughAtom } from './ClickThroughAtom';
33
17
  export type AdvertisingBasePackageDependencies = {
34
18
  [CoreExportNames.CoreEffects]: CoreEffects;
35
19
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
@@ -39,18 +23,24 @@ export type AdvertisingBasePackageDependencies = {
39
23
  export declare enum AdvertisingBaseExportNames {
40
24
  AdType = "ad-type",
41
25
  AdQuartile = "ad-quartile",
42
- BaseAdBreakState = "base-ad-break-state",
26
+ AdExtensionSource = "ad-extension-source",
27
+ BaseAdPodState = "base-ad-pod-state",
43
28
  BaseAdState = "base-ad-state",
44
- CreateBaseAdBreak = "create-base-ad-break",
45
- CreateBaseAd = "create-base-ad"
29
+ CreateBaseAdPod = "create-base-ad-pod",
30
+ CreateBaseAd = "create-base-ad",
31
+ CreateClickThrough = "create-click-through",
32
+ IsAdPositionKnown = "is-position-known"
46
33
  }
47
34
  export type AdvertisingBasePackageExports = {
48
35
  [AdvertisingBaseExportNames.AdType]: typeof AdType;
49
36
  [AdvertisingBaseExportNames.AdQuartile]: typeof AdQuartile;
50
- [AdvertisingBaseExportNames.BaseAdBreakState]: typeof BaseAdBreakState;
37
+ [AdvertisingBaseExportNames.AdExtensionSource]: typeof AdExtensionSource;
38
+ [AdvertisingBaseExportNames.BaseAdPodState]: typeof BaseAdPodState;
51
39
  [AdvertisingBaseExportNames.BaseAdState]: typeof BaseAdState;
52
- [AdvertisingBaseExportNames.CreateBaseAdBreak]: typeof createBaseAdBreakAtom;
40
+ [AdvertisingBaseExportNames.CreateBaseAdPod]: typeof createBaseAdPodAtom;
53
41
  [AdvertisingBaseExportNames.CreateBaseAd]: typeof createBaseAdAtom;
42
+ [AdvertisingBaseExportNames.CreateClickThrough]: typeof createClickThroughAtom;
43
+ [AdvertisingBaseExportNames.IsAdPositionKnown]: typeof isAdPositionKnown;
54
44
  };
55
45
  export type AdvertisingBaseContext = ContextHaving<AdvertisingBasePackageDependencies, AdvertisingBasePackageExports, ContextWithState>;
56
46
  export declare enum ContentSourceExportNames {
@@ -12,3 +12,5 @@ import type { EmptyObject } from '../../../../framework-types/BaseTypes';
12
12
  import type { AdvertisingBitmovinPackageDependencies, AdvertisingBitmovinPackageExports } from './Types';
13
13
  export declare const AdvertisingBitmovinPackage: import("../../../../framework-types/package-api/Package").Package<AdvertisingBitmovinPackageDependencies, AdvertisingBitmovinPackageExports, EmptyObject>;
14
14
  export default AdvertisingBitmovinPackage;
15
+
16
+ export declare const version: string;
@@ -5,21 +5,25 @@ import type { MetricsAtom } from '../../core/metrics/MetricsAtom';
5
5
  import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Types';
6
6
  import type { CoreUtils } from '../../core/utils/Types';
7
7
  import type { NetworkTask } from '../../network/NetworkTask';
8
- import type { NetworkExportNames } from '../../network/Types';
8
+ import type { HttpRequestMethod, HttpResponseType, NetworkExportNames } from '../../network/Types';
9
9
  import type { TargetPlaybackState, TargetPlaybackStateAtom } from '../../playback/play-pause/TargetPlaybackStateAtom';
10
10
  import type { PlayPauseExportNames } from '../../playback/play-pause/Types';
11
- import type { SeekRestrictionAtom } from '../../playback/video-element-state/SeekRestrictionAtom';
12
- import type { VideoElementStateExportNames } from '../../playback/video-element-state/Types';
13
- import type { VideoElementStateAtom } from '../../playback/video-element-state/VideoElementStateAtom';
14
11
  import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
15
12
  import type { createSourceReference } from '../../source/SourceReference';
16
13
  import type { SourceExportNames, SourceReferences } from '../../source/Types';
17
14
  import type { SourceRemovedError } from '../../sources-api/SourceRemovedError';
18
15
  import type { SourcesApiExportNames } from '../../sources-api/Types';
19
16
  import type { ContextWithState } from '../../Types';
17
+ import type { AdExtensionSource } from '../base/AdExtension';
18
+ import type { isAdPositionKnown } from '../base/AdPosition';
19
+ import type { AdQuartile } from '../base/AdQuartile';
20
+ import type { AdType } from '../base/AdType';
20
21
  import type { createBaseAdAtom } from '../base/BaseAdAtom';
21
- import type { createBaseAdBreakAtom } from '../base/BaseAdBreakAtom';
22
- import type { AdQuartile, AdSourceAdExports, AdType, AdvertisingBaseExportNames, BaseAdBreakState, BaseAdState, ContentSourceAdExports } from '../base/Types';
22
+ import type { createBaseAdPodAtom } from '../base/BaseAdPodAtom';
23
+ import type { BaseAdPodState } from '../base/BaseAdPodState';
24
+ import type { BaseAdState } from '../base/BaseAdState';
25
+ import type { createClickThroughAtom } from '../base/ClickThroughAtom';
26
+ import type { AdSourceAdExports, AdvertisingBaseExportNames, ContentSourceAdExports } from '../base/Types';
23
27
  export type AdvertisingBitmovinPackageDependencies = {
24
28
  [CoreExportNames.CoreEffects]: CoreEffects;
25
29
  [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
@@ -29,18 +33,21 @@ export type AdvertisingBitmovinPackageDependencies = {
29
33
  [SourceExportNames.CreateSourceReference]: typeof createSourceReference;
30
34
  [SourceExportNames.SourceReferences]: SourceReferences;
31
35
  [SourcesApiExportNames.SourceRemovedError]: typeof SourceRemovedError;
32
- [VideoElementStateExportNames.VideoElementState]: VideoElementStateAtom;
33
- [VideoElementStateExportNames.SeekRestriction]: SeekRestrictionAtom;
34
36
  [NetworkExportNames.NetworkTask]: typeof NetworkTask;
37
+ [NetworkExportNames.HttpRequestMethod]: typeof HttpRequestMethod;
38
+ [NetworkExportNames.HttpResponseType]: typeof HttpResponseType;
35
39
  [AdaptationExportNames.Metrics]: MetricsAtom;
36
40
  [PlayPauseExportNames.TargetPlaybackState]: typeof TargetPlaybackState;
37
41
  [PlayPauseExportNames.TargetPlaybackStateAtom]: TargetPlaybackStateAtom;
38
42
  [AdvertisingBaseExportNames.AdType]: typeof AdType;
39
43
  [AdvertisingBaseExportNames.AdQuartile]: typeof AdQuartile;
40
- [AdvertisingBaseExportNames.BaseAdBreakState]: typeof BaseAdBreakState;
44
+ [AdvertisingBaseExportNames.AdExtensionSource]: typeof AdExtensionSource;
45
+ [AdvertisingBaseExportNames.BaseAdPodState]: typeof BaseAdPodState;
41
46
  [AdvertisingBaseExportNames.BaseAdState]: typeof BaseAdState;
42
- [AdvertisingBaseExportNames.CreateBaseAdBreak]: typeof createBaseAdBreakAtom;
47
+ [AdvertisingBaseExportNames.CreateBaseAdPod]: typeof createBaseAdPodAtom;
43
48
  [AdvertisingBaseExportNames.CreateBaseAd]: typeof createBaseAdAtom;
49
+ [AdvertisingBaseExportNames.CreateClickThrough]: typeof createClickThroughAtom;
50
+ [AdvertisingBaseExportNames.IsAdPositionKnown]: typeof isAdPositionKnown;
44
51
  };
45
52
  export type AdvertisingBitmovinPackageExports = ContentSourceAdExports & AdSourceAdExports;
46
53
  export type AdvertisingBitmovinContext = ContextHaving<AdvertisingBitmovinPackageDependencies, AdvertisingBitmovinPackageExports, ContextWithState>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @packageDocumentation Analytics.package
3
+ *
4
+ * Analytics package enables Bitmovin Analytics Collector.
5
+ *
6
+ * Collector features are limited based on what API's are available on the PWX.
7
+ *
8
+ * ### `Analytics` Package Dependency Graph
9
+ * <svg aria-roledescription="flowchart-v2" role="graphics-document document" viewBox="-8 -8 16 16" style="max-width: 16px; background-color: transparent;" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" width="100%" id="my-svg"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#ccc;}#my-svg .error-icon{fill:#a44141;}#my-svg .error-text{fill:#ddd;stroke:#ddd;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:lightgrey;stroke:lightgrey;}#my-svg .marker.cross{stroke:lightgrey;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#ccc;}#my-svg .cluster-label text{fill:#F9FFFE;}#my-svg .cluster-label span,#my-svg p{color:#F9FFFE;}#my-svg .label text,#my-svg span,#my-svg p{fill:#ccc;color:#ccc;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#1f2020;stroke:#81B1DB;stroke-width:1px;}#my-svg .flowchart-label text{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .node .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .arrowheadPath{fill:lightgrey;}#my-svg .edgePath .path{stroke:lightgrey;stroke-width:2.0px;}#my-svg .flowchart-link{stroke:lightgrey;fill:none;}#my-svg .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#my-svg .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#my-svg .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#my-svg .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#my-svg .cluster text{fill:#F9FFFE;}#my-svg .cluster span,#my-svg p{color:#F9FFFE;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker orient="auto" markerHeight="12" markerWidth="12" markerUnits="userSpaceOnUse" refY="5" refX="6" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-pointEnd"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 0 L 10 5 L 0 10 z"/></marker><marker orient="auto" markerHeight="12" markerWidth="12" markerUnits="userSpaceOnUse" refY="5" refX="4.5" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-pointStart"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 5 L 10 10 L 10 0 z"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="11" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-circleEnd"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="-1" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-circleStart"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="12" viewBox="0 0 11 11" class="marker cross flowchart" id="my-svg_flowchart-crossEnd"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="-1" viewBox="0 0 11 11" class="marker cross flowchart" id="my-svg_flowchart-crossStart"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><g class="root"><g class="clusters"/><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"/></g></g></svg>
10
+ */
11
+ import type { EmptyObject } from '../../../framework-types/BaseTypes';
12
+ import type { Package } from '../../../framework-types/package-api/Package';
13
+ import type { AnalyticsPackageDependencies } from './Types';
14
+ export declare const AnalyticsPackage: Package<AnalyticsPackageDependencies, EmptyObject, EmptyObject>;
15
+ export default AnalyticsPackage;
16
+
17
+ export declare const version: string;