stormcloud-video-player 0.8.68 → 0.8.70

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 (42) hide show
  1. package/dist/stormcloud-vp.min.js +2 -2
  2. package/lib/Player.cjs +30 -8
  3. package/lib/Player.cjs.map +1 -1
  4. package/lib/Player.d.cts +2 -1
  5. package/lib/StormcloudPlayer.cjs +6104 -5114
  6. package/lib/StormcloudPlayer.cjs.map +1 -1
  7. package/lib/StormcloudPlayer.d.cts +1 -0
  8. package/lib/index.cjs +6217 -5149
  9. package/lib/index.cjs.map +1 -1
  10. package/lib/index.d.cts +2 -1
  11. package/lib/index.d.ts +93 -2
  12. package/lib/index.js +6199 -5158
  13. package/lib/index.js.map +1 -1
  14. package/lib/player/AdBreakOrchestrator.cjs +669 -131
  15. package/lib/player/AdBreakOrchestrator.cjs.map +1 -1
  16. package/lib/player/AdBreakOrchestrator.d.cts +27 -3
  17. package/lib/player/EdgePodRequest.cjs +136 -0
  18. package/lib/player/EdgePodRequest.cjs.map +1 -0
  19. package/lib/player/EdgePodRequest.d.cts +14 -0
  20. package/lib/player/FloorLadder.cjs +578 -0
  21. package/lib/player/FloorLadder.cjs.map +1 -0
  22. package/lib/player/FloorLadder.d.cts +74 -0
  23. package/lib/player/StormcloudVideoPlayer.cjs +6104 -5114
  24. package/lib/player/StormcloudVideoPlayer.cjs.map +1 -1
  25. package/lib/player/StormcloudVideoPlayer.d.cts +13 -1
  26. package/lib/players/HlsPlayer.cjs +6104 -5114
  27. package/lib/players/HlsPlayer.cjs.map +1 -1
  28. package/lib/players/index.cjs +6104 -5114
  29. package/lib/players/index.cjs.map +1 -1
  30. package/lib/props.cjs +30 -8
  31. package/lib/props.cjs.map +1 -1
  32. package/lib/props.d.cts +1 -0
  33. package/lib/sdk/hlsAdPlayer.cjs +120 -19
  34. package/lib/sdk/hlsAdPlayer.cjs.map +1 -1
  35. package/lib/types.d.cts +30 -2
  36. package/lib/ui/StormcloudVideoPlayer.cjs +6169 -5129
  37. package/lib/ui/StormcloudVideoPlayer.cjs.map +1 -1
  38. package/lib/ui/StormcloudVideoPlayer.d.cts +1 -0
  39. package/lib/utils/vastMacros.cjs +4 -0
  40. package/lib/utils/vastMacros.cjs.map +1 -1
  41. package/lib/utils/vastMacros.d.cts +2 -1
  42. package/package.json +1 -1
package/lib/types.d.cts CHANGED
@@ -46,6 +46,29 @@ interface StormcloudVideoPlayerConfig {
46
46
  podMaxAds?: number;
47
47
  podMaxDurationMs?: number;
48
48
  podExactDuration?: boolean;
49
+ adFloorLadderEnabled?: boolean;
50
+ adFloorLadder?: Partial<AdFloorLadderConfig>;
51
+ adFloorMinCents?: number;
52
+ adFloorMaxCents?: number;
53
+ adFloorStepCents?: number;
54
+ enableEdgePodRequest?: boolean;
55
+ edgePodUrl?: string;
56
+ }
57
+ type AdPosition = "preroll" | "midroll" | "postroll";
58
+ type FloorLadderMode = "fixed";
59
+ interface AdFloorLadderConfig {
60
+ enabled: boolean;
61
+ targetingKey: string;
62
+ minFloorCents: number;
63
+ maxFloorCents: number;
64
+ stepCents: number;
65
+ selectedFloorCents: number;
66
+ fallbackFloorCents: number;
67
+ readyFloorCents: number[];
68
+ mode: FloorLadderMode;
69
+ allowedPositions: AdPosition[];
70
+ targetAdUnitPath: string;
71
+ configurationVersion: string;
49
72
  }
50
73
  interface Scte35Marker {
51
74
  type: "start" | "end" | "progress";
@@ -58,9 +81,13 @@ interface Id3TagInfo {
58
81
  value: string | Uint8Array;
59
82
  ptsSeconds?: number;
60
83
  }
84
+ type AdRequestSource = "gam" | "edge";
85
+ interface AdRequestOptions {
86
+ source?: AdRequestSource;
87
+ }
61
88
  interface AdController {
62
89
  initialize: () => void;
63
- requestAds: (vastTagUrl: string) => Promise<void>;
90
+ requestAds: (vastTagUrl: string, options?: AdRequestOptions) => Promise<void>;
64
91
  play: () => Promise<void>;
65
92
  pause: () => void;
66
93
  resume: () => void;
@@ -81,6 +108,7 @@ interface AdController {
81
108
  getLoadedAdId?: () => string | undefined;
82
109
  getPodAdCount?: () => number;
83
110
  getPodTotalDurationMs?: () => number;
111
+ limitPodToBudget?: (maxDurationMs: number, maxAds: number) => number;
84
112
  setFunnelContext?: (context: {
85
113
  breakId?: number;
86
114
  requestId?: number;
@@ -187,4 +215,4 @@ interface AdImpressionInfo {
187
215
  timestamp: string;
188
216
  }
189
217
 
190
- export type { AdBreak, AdController, AdControllerOptions, AdDetectInfo, AdImpressionInfo, AdLoadedInfo, AdSchedule, ClientInfo, HeartbeatData, Id3TagInfo, ImaController, ImaControllerOptions, LateJoinPolicy, PlayerAnalyticsContext, Scte35Marker, StormcloudApiResponse, StormcloudVideoPlayerConfig, TrackingData };
218
+ export type { AdBreak, AdController, AdControllerOptions, AdDetectInfo, AdFloorLadderConfig, AdImpressionInfo, AdLoadedInfo, AdPosition, AdRequestOptions, AdRequestSource, AdSchedule, ClientInfo, FloorLadderMode, HeartbeatData, Id3TagInfo, ImaController, ImaControllerOptions, LateJoinPolicy, PlayerAnalyticsContext, Scte35Marker, StormcloudApiResponse, StormcloudVideoPlayerConfig, TrackingData };