stormcloud-video-player 0.8.24 → 0.8.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/stormcloud-vp.min.js +1 -1
- package/lib/index.cjs +669 -126
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.cts +10 -1
- package/lib/index.d.ts +10 -1
- package/lib/index.js +666 -127
- package/lib/index.js.map +1 -1
- package/lib/player/AdBreakOrchestrator.cjs +228 -48
- package/lib/player/AdBreakOrchestrator.cjs.map +1 -1
- package/lib/player/AdBreakOrchestrator.d.cts +5 -1
- package/lib/player/AdConfigManager.cjs +81 -4
- package/lib/player/AdConfigManager.cjs.map +1 -1
- package/lib/player/AdConfigManager.d.cts +12 -1
- package/lib/player/AdPreloadPool.d.cts +1 -1
- package/lib/player/AdTimingService.cjs +7 -0
- package/lib/player/AdTimingService.cjs.map +1 -1
- package/lib/player/AdTimingService.d.cts +2 -1
- package/lib/player/HlsEngine.d.cts +1 -1
- package/lib/player/PlayerControls.d.cts +1 -1
- package/lib/player/Scte35CueManager.d.cts +1 -1
- package/lib/player/Scte35Parser.d.cts +1 -1
- package/lib/player/StormcloudVideoPlayer.cjs +665 -126
- package/lib/player/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/player/StormcloudVideoPlayer.d.cts +2 -1
- package/lib/player/playerTypes.d.cts +1 -1
- package/lib/players/HlsPlayer.cjs +665 -126
- package/lib/players/HlsPlayer.cjs.map +1 -1
- package/lib/players/HlsPlayer.d.cts +1 -1
- package/lib/players/index.cjs +665 -126
- package/lib/players/index.cjs.map +1 -1
- package/lib/sdk/hlsAdPlayer.cjs +343 -71
- package/lib/sdk/hlsAdPlayer.cjs.map +1 -1
- package/lib/sdk/hlsAdPlayer.d.cts +1 -1
- package/lib/{types-DNiBmPKK.d.cts → types-Xgz2_W1C.d.cts} +7 -0
- package/lib/ui/StormcloudVideoPlayer.cjs +665 -126
- package/lib/ui/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/ui/StormcloudVideoPlayer.d.cts +1 -1
- package/lib/utils/tracking.cjs +22 -1
- package/lib/utils/tracking.cjs.map +1 -1
- package/lib/utils/tracking.d.cts +3 -2
- package/lib/utils/vastMacros.cjs +14 -1
- package/lib/utils/vastMacros.cjs.map +1 -1
- package/lib/utils/vastMacros.d.cts +3 -0
- package/package.json +1 -1
package/lib/index.d.cts
CHANGED
|
@@ -41,6 +41,10 @@ interface StormcloudVideoPlayerConfig {
|
|
|
41
41
|
minSegmentsBeforePlay?: number;
|
|
42
42
|
ctvAdRequest?: boolean;
|
|
43
43
|
adTest?: boolean;
|
|
44
|
+
optimizedPods?: boolean;
|
|
45
|
+
podMaxAds?: number;
|
|
46
|
+
podMaxDurationMs?: number;
|
|
47
|
+
podExactDuration?: boolean;
|
|
44
48
|
}
|
|
45
49
|
interface AdController {
|
|
46
50
|
initialize: () => void;
|
|
@@ -63,6 +67,8 @@ interface AdController {
|
|
|
63
67
|
hidePlaceholder: () => void;
|
|
64
68
|
getLoadedAdDuration?: () => number | undefined;
|
|
65
69
|
getLoadedAdId?: () => string | undefined;
|
|
70
|
+
getPodAdCount?: () => number;
|
|
71
|
+
getPodTotalDurationMs?: () => number;
|
|
66
72
|
}
|
|
67
73
|
type ImaController = AdController;
|
|
68
74
|
interface AdControllerOptions {
|
|
@@ -108,6 +114,7 @@ interface TrackingData extends ClientInfo {
|
|
|
108
114
|
}
|
|
109
115
|
interface PlayerAnalyticsContext {
|
|
110
116
|
inputStreamType?: string;
|
|
117
|
+
debugAdTiming?: boolean;
|
|
111
118
|
}
|
|
112
119
|
interface HeartbeatData {
|
|
113
120
|
browserId: string;
|
|
@@ -163,6 +170,7 @@ declare class StormcloudVideoPlayer {
|
|
|
163
170
|
private get debug();
|
|
164
171
|
private createAdPlayer;
|
|
165
172
|
private generateVastUrls;
|
|
173
|
+
private generatePodVastUrl;
|
|
166
174
|
load(): Promise<void>;
|
|
167
175
|
private onManifestParsed;
|
|
168
176
|
private attach;
|
|
@@ -3924,6 +3932,7 @@ declare const IS_SAFARI: boolean;
|
|
|
3924
3932
|
declare const SUPPORTS_HLS: () => boolean;
|
|
3925
3933
|
declare const SUPPORTS_DASH: () => boolean;
|
|
3926
3934
|
|
|
3935
|
+
declare function buildAnalyticsContext(config: Pick<StormcloudVideoPlayerConfig, "debugAdTiming" | "isLiveStream">): PlayerAnalyticsContext;
|
|
3927
3936
|
declare function getClientInfo(): ClientInfo;
|
|
3928
3937
|
declare function getBrowserID(clientInfo: ClientInfo): Promise<string>;
|
|
3929
3938
|
type PlayerMetricFlags = {
|
|
@@ -4035,4 +4044,4 @@ interface PalNonceManager {
|
|
|
4035
4044
|
}
|
|
4036
4045
|
declare function createPalNonceManager(): PalNonceManager;
|
|
4037
4046
|
|
|
4038
|
-
export { type AdBreak, type AdController, type AdControllerOptions, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, DEFAULT_MQTT_CONFIG, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type MQTTConfig, type MQTTStatus, MQTT_CA_CERT_FILE, type OnProgressProps, type PalNonceManager, type PalNonceOptions, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, applyMQTTConfig, buildMQTTBrokerUrl, buildPlayerTopic, canPlay, configureMQTT, createHlsAdPlayer, createPalNonceManager, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, disconnectMQTT, ensureMQTTClient, getBrowserConfigOverrides, getBrowserID, getClientInfo, getMQTTStatus, initMQTTClient, initializePolyfills, isMQTTConfigured, isMQTTConnected, isMQTTEnabled, isMediaStream, lazy, logBrowserInfo, merge, mqttConfig, omit, parseQuery, players, publishMQTT, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsModernJS, supportsWebKitPresentationMode };
|
|
4047
|
+
export { type AdBreak, type AdController, type AdControllerOptions, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, DEFAULT_MQTT_CONFIG, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type MQTTConfig, type MQTTStatus, MQTT_CA_CERT_FILE, type OnProgressProps, type PalNonceManager, type PalNonceOptions, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, applyMQTTConfig, buildAnalyticsContext, buildMQTTBrokerUrl, buildPlayerTopic, canPlay, configureMQTT, createHlsAdPlayer, createPalNonceManager, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, disconnectMQTT, ensureMQTTClient, getBrowserConfigOverrides, getBrowserID, getClientInfo, getMQTTStatus, initMQTTClient, initializePolyfills, isMQTTConfigured, isMQTTConnected, isMQTTEnabled, isMediaStream, lazy, logBrowserInfo, merge, mqttConfig, omit, parseQuery, players, publishMQTT, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsModernJS, supportsWebKitPresentationMode };
|
package/lib/index.d.ts
CHANGED
|
@@ -41,6 +41,10 @@ interface StormcloudVideoPlayerConfig {
|
|
|
41
41
|
minSegmentsBeforePlay?: number;
|
|
42
42
|
ctvAdRequest?: boolean;
|
|
43
43
|
adTest?: boolean;
|
|
44
|
+
optimizedPods?: boolean;
|
|
45
|
+
podMaxAds?: number;
|
|
46
|
+
podMaxDurationMs?: number;
|
|
47
|
+
podExactDuration?: boolean;
|
|
44
48
|
}
|
|
45
49
|
interface AdController {
|
|
46
50
|
initialize: () => void;
|
|
@@ -63,6 +67,8 @@ interface AdController {
|
|
|
63
67
|
hidePlaceholder: () => void;
|
|
64
68
|
getLoadedAdDuration?: () => number | undefined;
|
|
65
69
|
getLoadedAdId?: () => string | undefined;
|
|
70
|
+
getPodAdCount?: () => number;
|
|
71
|
+
getPodTotalDurationMs?: () => number;
|
|
66
72
|
}
|
|
67
73
|
type ImaController = AdController;
|
|
68
74
|
interface AdControllerOptions {
|
|
@@ -108,6 +114,7 @@ interface TrackingData extends ClientInfo {
|
|
|
108
114
|
}
|
|
109
115
|
interface PlayerAnalyticsContext {
|
|
110
116
|
inputStreamType?: string;
|
|
117
|
+
debugAdTiming?: boolean;
|
|
111
118
|
}
|
|
112
119
|
interface HeartbeatData {
|
|
113
120
|
browserId: string;
|
|
@@ -163,6 +170,7 @@ declare class StormcloudVideoPlayer {
|
|
|
163
170
|
private get debug();
|
|
164
171
|
private createAdPlayer;
|
|
165
172
|
private generateVastUrls;
|
|
173
|
+
private generatePodVastUrl;
|
|
166
174
|
load(): Promise<void>;
|
|
167
175
|
private onManifestParsed;
|
|
168
176
|
private attach;
|
|
@@ -3924,6 +3932,7 @@ declare const IS_SAFARI: boolean;
|
|
|
3924
3932
|
declare const SUPPORTS_HLS: () => boolean;
|
|
3925
3933
|
declare const SUPPORTS_DASH: () => boolean;
|
|
3926
3934
|
|
|
3935
|
+
declare function buildAnalyticsContext(config: Pick<StormcloudVideoPlayerConfig, "debugAdTiming" | "isLiveStream">): PlayerAnalyticsContext;
|
|
3927
3936
|
declare function getClientInfo(): ClientInfo;
|
|
3928
3937
|
declare function getBrowserID(clientInfo: ClientInfo): Promise<string>;
|
|
3929
3938
|
type PlayerMetricFlags = {
|
|
@@ -4035,4 +4044,4 @@ interface PalNonceManager {
|
|
|
4035
4044
|
}
|
|
4036
4045
|
declare function createPalNonceManager(): PalNonceManager;
|
|
4037
4046
|
|
|
4038
|
-
export { type AdBreak, type AdController, type AdControllerOptions, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, DEFAULT_MQTT_CONFIG, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type MQTTConfig, type MQTTStatus, MQTT_CA_CERT_FILE, type OnProgressProps, type PalNonceManager, type PalNonceOptions, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, applyMQTTConfig, buildMQTTBrokerUrl, buildPlayerTopic, canPlay, configureMQTT, createHlsAdPlayer, createPalNonceManager, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, disconnectMQTT, ensureMQTTClient, getBrowserConfigOverrides, getBrowserID, getClientInfo, getMQTTStatus, initMQTTClient, initializePolyfills, isMQTTConfigured, isMQTTConnected, isMQTTEnabled, isMediaStream, lazy, logBrowserInfo, merge, mqttConfig, omit, parseQuery, players, publishMQTT, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsModernJS, supportsWebKitPresentationMode };
|
|
4047
|
+
export { type AdBreak, type AdController, type AdControllerOptions, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, DEFAULT_MQTT_CONFIG, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type MQTTConfig, type MQTTStatus, MQTT_CA_CERT_FILE, type OnProgressProps, type PalNonceManager, type PalNonceOptions, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, applyMQTTConfig, buildAnalyticsContext, buildMQTTBrokerUrl, buildPlayerTopic, canPlay, configureMQTT, createHlsAdPlayer, createPalNonceManager, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, disconnectMQTT, ensureMQTTClient, getBrowserConfigOverrides, getBrowserID, getClientInfo, getMQTTStatus, initMQTTClient, initializePolyfills, isMQTTConfigured, isMQTTConnected, isMQTTEnabled, isMediaStream, lazy, logBrowserInfo, merge, mqttConfig, omit, parseQuery, players, publishMQTT, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsModernJS, supportsWebKitPresentationMode };
|