stormcloud-video-player 0.8.75 → 0.8.76
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/Player.cjs +10 -12
- package/lib/Player.cjs.map +1 -1
- package/lib/Player.d.cts +1 -1
- package/lib/StormcloudPlayer.cjs +163 -78
- package/lib/StormcloudPlayer.cjs.map +1 -1
- package/lib/index.cjs +174 -133
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.cts +1 -1
- package/lib/index.d.ts +5 -19
- package/lib/index.js +168 -131
- package/lib/index.js.map +1 -1
- package/lib/player/AdBreakOrchestrator.cjs +45 -13
- package/lib/player/AdBreakOrchestrator.cjs.map +1 -1
- package/lib/player/AdConfigManager.cjs +17 -3
- package/lib/player/AdConfigManager.cjs.map +1 -1
- package/lib/player/AdConfigManager.d.cts +3 -0
- package/lib/player/EdgePodRequest.cjs +31 -1
- package/lib/player/EdgePodRequest.cjs.map +1 -1
- package/lib/player/EdgePodRequest.d.cts +21 -3
- package/lib/player/FloorLadder.cjs +86 -27
- package/lib/player/FloorLadder.cjs.map +1 -1
- package/lib/player/FloorLadder.d.cts +8 -7
- package/lib/player/StormcloudVideoPlayer.cjs +163 -78
- package/lib/player/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/player/StormcloudVideoPlayer.d.cts +3 -9
- package/lib/players/HlsPlayer.cjs +163 -78
- package/lib/players/HlsPlayer.cjs.map +1 -1
- package/lib/players/index.cjs +163 -78
- package/lib/players/index.cjs.map +1 -1
- package/lib/props.cjs +10 -12
- package/lib/props.cjs.map +1 -1
- package/lib/types.d.cts +3 -7
- package/lib/ui/StormcloudVideoPlayer.cjs +167 -139
- package/lib/ui/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/utils/tracking.cjs +7 -0
- package/lib/utils/tracking.cjs.map +1 -1
- package/lib/utils/tracking.d.cts +2 -1
- package/package.json +1 -1
package/lib/players/index.cjs
CHANGED
|
@@ -1766,21 +1766,19 @@ function fetchConsentSignals() {
|
|
|
1766
1766
|
});
|
|
1767
1767
|
}
|
|
1768
1768
|
// src/player/FloorLadder.ts
|
|
1769
|
-
var
|
|
1769
|
+
var DISABLED_FLOOR_LADDER_CONFIG = Object.freeze({
|
|
1770
1770
|
enabled: false,
|
|
1771
|
-
targetingKey: "
|
|
1772
|
-
minFloorCents:
|
|
1773
|
-
maxFloorCents:
|
|
1774
|
-
stepCents:
|
|
1775
|
-
selectedFloorCents:
|
|
1776
|
-
fallbackFloorCents:
|
|
1771
|
+
targetingKey: "",
|
|
1772
|
+
minFloorCents: 0,
|
|
1773
|
+
maxFloorCents: 0,
|
|
1774
|
+
stepCents: 0,
|
|
1775
|
+
selectedFloorCents: 0,
|
|
1776
|
+
fallbackFloorCents: 0,
|
|
1777
1777
|
readyFloorCents: [],
|
|
1778
1778
|
mode: "fixed",
|
|
1779
|
-
allowedPositions: [
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
targetAdUnitPath: "/21821455290/airytvadx/airytv-web",
|
|
1783
|
-
configurationVersion: "2026-09-29.1"
|
|
1779
|
+
allowedPositions: [],
|
|
1780
|
+
targetAdUnitPath: "",
|
|
1781
|
+
configurationVersion: ""
|
|
1784
1782
|
});
|
|
1785
1783
|
var DEFAULT_FLOOR_LADDER_BOUNDS = Object.freeze({
|
|
1786
1784
|
minCents: 25,
|
|
@@ -1799,15 +1797,6 @@ function generateFloorLevels(minCents, maxCents, stepCents) {
|
|
|
1799
1797
|
}
|
|
1800
1798
|
return levels;
|
|
1801
1799
|
}
|
|
1802
|
-
function resolveFloorLadderBounds() {
|
|
1803
|
-
var overrides = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
1804
|
-
var _overrides_minCents, _overrides_maxCents, _overrides_stepCents;
|
|
1805
|
-
return {
|
|
1806
|
-
minCents: (_overrides_minCents = overrides.minCents) !== null && _overrides_minCents !== void 0 ? _overrides_minCents : DEFAULT_FLOOR_LADDER_BOUNDS.minCents,
|
|
1807
|
-
maxCents: (_overrides_maxCents = overrides.maxCents) !== null && _overrides_maxCents !== void 0 ? _overrides_maxCents : DEFAULT_FLOOR_LADDER_BOUNDS.maxCents,
|
|
1808
|
-
stepCents: (_overrides_stepCents = overrides.stepCents) !== null && _overrides_stepCents !== void 0 ? _overrides_stepCents : DEFAULT_FLOOR_LADDER_BOUNDS.stepCents
|
|
1809
|
-
};
|
|
1810
|
-
}
|
|
1811
1800
|
function validateFloorCents(value, config) {
|
|
1812
1801
|
var bounds = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : DEFAULT_FLOOR_LADDER_BOUNDS;
|
|
1813
1802
|
if (!isInteger(value)) return {
|
|
@@ -1939,7 +1928,6 @@ function resolveOpportunityFloor(config, context) {
|
|
|
1939
1928
|
if (!config.enabled) return skipped("disabled");
|
|
1940
1929
|
var positions = Array.isArray(config.allowedPositions) ? config.allowedPositions : [];
|
|
1941
1930
|
if (positions.indexOf(context.position) === -1) return skipped("position_not_allowed");
|
|
1942
|
-
if (context.isCtv) return skipped("ctv_excluded");
|
|
1943
1931
|
if (!config.targetingKey) return skipped("missing_targeting_key");
|
|
1944
1932
|
if (!config.targetAdUnitPath) return skipped("missing_target_ad_unit");
|
|
1945
1933
|
var result;
|
|
@@ -2093,15 +2081,80 @@ function mergeDefined(target, update) {
|
|
|
2093
2081
|
}
|
|
2094
2082
|
return copyConfig(next);
|
|
2095
2083
|
}
|
|
2084
|
+
var AD_POSITIONS = [
|
|
2085
|
+
"preroll",
|
|
2086
|
+
"midroll",
|
|
2087
|
+
"postroll"
|
|
2088
|
+
];
|
|
2089
|
+
function finiteNumber(value) {
|
|
2090
|
+
return typeof value === "number" && isFinite(value) ? value : void 0;
|
|
2091
|
+
}
|
|
2092
|
+
function parseApiFloorLadder(raw) {
|
|
2093
|
+
if (!raw || (typeof raw === "undefined" ? "undefined" : _type_of(raw)) !== "object" || Array.isArray(raw)) return void 0;
|
|
2094
|
+
var src = raw;
|
|
2095
|
+
var out = {};
|
|
2096
|
+
if (typeof src.enabled === "boolean") out.enabled = src.enabled;
|
|
2097
|
+
if (typeof src.targetingKey === "string") out.targetingKey = src.targetingKey;
|
|
2098
|
+
if (typeof src.targetAdUnitPath === "string") out.targetAdUnitPath = src.targetAdUnitPath;
|
|
2099
|
+
if (typeof src.configurationVersion === "string") out.configurationVersion = src.configurationVersion;
|
|
2100
|
+
if (typeof src.mode === "string") out.mode = src.mode;
|
|
2101
|
+
var min = finiteNumber(src.minFloorCents);
|
|
2102
|
+
var max = finiteNumber(src.maxFloorCents);
|
|
2103
|
+
var step = finiteNumber(src.stepCents);
|
|
2104
|
+
var selected = finiteNumber(src.selectedFloorCents);
|
|
2105
|
+
var fallback = finiteNumber(src.fallbackFloorCents);
|
|
2106
|
+
if (min !== void 0) out.minFloorCents = min;
|
|
2107
|
+
if (max !== void 0) out.maxFloorCents = max;
|
|
2108
|
+
if (step !== void 0) out.stepCents = step;
|
|
2109
|
+
if (selected !== void 0) out.selectedFloorCents = selected;
|
|
2110
|
+
if (fallback !== void 0) out.fallbackFloorCents = fallback;
|
|
2111
|
+
if (Array.isArray(src.readyFloorCents)) {
|
|
2112
|
+
out.readyFloorCents = src.readyFloorCents.filter(function(cents) {
|
|
2113
|
+
return finiteNumber(cents) !== void 0;
|
|
2114
|
+
});
|
|
2115
|
+
}
|
|
2116
|
+
if (Array.isArray(src.allowedPositions)) {
|
|
2117
|
+
out.allowedPositions = src.allowedPositions.filter(function(position) {
|
|
2118
|
+
return AD_POSITIONS.indexOf(position) !== -1;
|
|
2119
|
+
});
|
|
2120
|
+
}
|
|
2121
|
+
return out;
|
|
2122
|
+
}
|
|
2096
2123
|
var FloorLadderController = /*#__PURE__*/ function() {
|
|
2097
|
-
function FloorLadderController(
|
|
2098
|
-
var selector = arguments.length >
|
|
2124
|
+
function FloorLadderController() {
|
|
2125
|
+
var selector = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : fixedFloorSelector;
|
|
2099
2126
|
_class_call_check(this, FloorLadderController);
|
|
2100
|
-
this.
|
|
2101
|
-
this.
|
|
2127
|
+
this.bounds = DEFAULT_FLOOR_LADDER_BOUNDS;
|
|
2128
|
+
this.config = copyConfig(DISABLED_FLOOR_LADDER_CONFIG);
|
|
2102
2129
|
this.selector = selector;
|
|
2103
2130
|
}
|
|
2104
2131
|
_create_class(FloorLadderController, [
|
|
2132
|
+
{
|
|
2133
|
+
key: "isEnabled",
|
|
2134
|
+
value: function isEnabled() {
|
|
2135
|
+
return this.config.enabled === true;
|
|
2136
|
+
}
|
|
2137
|
+
},
|
|
2138
|
+
{
|
|
2139
|
+
key: "applyApiConfig",
|
|
2140
|
+
value: function applyApiConfig(raw) {
|
|
2141
|
+
var parsed = parseApiFloorLadder(raw);
|
|
2142
|
+
this.config = mergeDefined(copyConfig(DISABLED_FLOOR_LADDER_CONFIG), parsed);
|
|
2143
|
+
this.bounds = Object.freeze({
|
|
2144
|
+
minCents: this.config.minFloorCents,
|
|
2145
|
+
maxCents: this.config.maxFloorCents,
|
|
2146
|
+
stepCents: this.config.stepCents
|
|
2147
|
+
});
|
|
2148
|
+
return validateFloorLadderConfig(this.config, this.bounds);
|
|
2149
|
+
}
|
|
2150
|
+
},
|
|
2151
|
+
{
|
|
2152
|
+
key: "reset",
|
|
2153
|
+
value: function reset() {
|
|
2154
|
+
this.config = copyConfig(DISABLED_FLOOR_LADDER_CONFIG);
|
|
2155
|
+
this.bounds = DEFAULT_FLOOR_LADDER_BOUNDS;
|
|
2156
|
+
}
|
|
2157
|
+
},
|
|
2105
2158
|
{
|
|
2106
2159
|
key: "get",
|
|
2107
2160
|
value: function get() {
|
|
@@ -2114,13 +2167,6 @@ var FloorLadderController = /*#__PURE__*/ function() {
|
|
|
2114
2167
|
return _object_spread({}, this.bounds);
|
|
2115
2168
|
}
|
|
2116
2169
|
},
|
|
2117
|
-
{
|
|
2118
|
-
key: "update",
|
|
2119
|
-
value: function update(update) {
|
|
2120
|
-
this.config = mergeDefined(this.config, update);
|
|
2121
|
-
return validateFloorLadderConfig(this.config, this.bounds);
|
|
2122
|
-
}
|
|
2123
|
-
},
|
|
2124
2170
|
{
|
|
2125
2171
|
key: "validate",
|
|
2126
2172
|
value: function validate() {
|
|
@@ -6353,6 +6399,9 @@ function resolvePlayerIdentitySeed(clientInfo) {
|
|
|
6353
6399
|
}
|
|
6354
6400
|
return "fingerprint:".concat(JSON.stringify(clientInfo));
|
|
6355
6401
|
}
|
|
6402
|
+
function getCachedBrowserId() {
|
|
6403
|
+
return cachedBrowserId !== null && cachedBrowserId !== void 0 ? cachedBrowserId : void 0;
|
|
6404
|
+
}
|
|
6356
6405
|
function getBrowserID(clientInfo) {
|
|
6357
6406
|
return _async_to_generator(function() {
|
|
6358
6407
|
return _ts_generator(this, function(_state) {
|
|
@@ -8022,7 +8071,7 @@ var AdConfigManager = /*#__PURE__*/ function() {
|
|
|
8022
8071
|
key: "fetchAdConfiguration",
|
|
8023
8072
|
value: function fetchAdConfiguration() {
|
|
8024
8073
|
return _async_to_generator(function() {
|
|
8025
|
-
var _data_response_ima_publisherdeskima, _data_response_ima,
|
|
8074
|
+
var _data_response, _data_response1, _data_response2, _data_response_ima_publisherdeskima, _data_response_ima, _data_response3, _data_response_options_vast_cue_tones, _data_response_options_vast, _data_response_options, _data_response4, apiUrl, headers, response, data, apiEnableEdge, apiEdgeUrl, imaPayload, decodedPayload, numberAds;
|
|
8026
8075
|
return _ts_generator(this, function(_state) {
|
|
8027
8076
|
switch(_state.label){
|
|
8028
8077
|
case 0:
|
|
@@ -8082,7 +8131,21 @@ var AdConfigManager = /*#__PURE__*/ function() {
|
|
|
8082
8131
|
];
|
|
8083
8132
|
case 4:
|
|
8084
8133
|
data = _state.sent();
|
|
8085
|
-
|
|
8134
|
+
apiEnableEdge = (_data_response = data.response) === null || _data_response === void 0 ? void 0 : _data_response.enableEdgePodRequest;
|
|
8135
|
+
apiEdgeUrl = (_data_response1 = data.response) === null || _data_response1 === void 0 ? void 0 : _data_response1.edgePodUrl;
|
|
8136
|
+
this.apiEnableEdgePodRequest = typeof apiEnableEdge === "boolean" ? apiEnableEdge : void 0;
|
|
8137
|
+
this.apiEdgePodUrl = typeof apiEdgeUrl === "string" ? apiEdgeUrl : void 0;
|
|
8138
|
+
if (this.debug) {
|
|
8139
|
+
console.log("[StormcloudVideoPlayer] Edge pod settings from API:", {
|
|
8140
|
+
enableEdgePodRequest: this.apiEnableEdgePodRequest,
|
|
8141
|
+
edgePodUrl: this.apiEdgePodUrl
|
|
8142
|
+
});
|
|
8143
|
+
}
|
|
8144
|
+
this.apiFloorLadder = (_data_response2 = data.response) === null || _data_response2 === void 0 ? void 0 : _data_response2.floorLadder;
|
|
8145
|
+
if (this.debug) {
|
|
8146
|
+
console.log(this.apiFloorLadder ? "[StormcloudVideoPlayer] Floor ladder from API:" : "[StormcloudVideoPlayer] No floorLadder block in /ads/web response", this.apiFloorLadder);
|
|
8147
|
+
}
|
|
8148
|
+
imaPayload = (_data_response3 = data.response) === null || _data_response3 === void 0 ? void 0 : (_data_response_ima = _data_response3.ima) === null || _data_response_ima === void 0 ? void 0 : (_data_response_ima_publisherdeskima = _data_response_ima["publisherdesk.ima"]) === null || _data_response_ima_publisherdeskima === void 0 ? void 0 : _data_response_ima_publisherdeskima.payload;
|
|
8086
8149
|
if (imaPayload) {
|
|
8087
8150
|
decodedPayload = imaPayload;
|
|
8088
8151
|
try {
|
|
@@ -8100,7 +8163,7 @@ var AdConfigManager = /*#__PURE__*/ function() {
|
|
|
8100
8163
|
console.warn("[StormcloudVideoPlayer] No VAST tag URL found in /ads/web response");
|
|
8101
8164
|
}
|
|
8102
8165
|
}
|
|
8103
|
-
numberAds = (
|
|
8166
|
+
numberAds = (_data_response4 = data.response) === null || _data_response4 === void 0 ? void 0 : (_data_response_options = _data_response4.options) === null || _data_response_options === void 0 ? void 0 : (_data_response_options_vast = _data_response_options.vast) === null || _data_response_options_vast === void 0 ? void 0 : (_data_response_options_vast_cue_tones = _data_response_options_vast.cue_tones) === null || _data_response_options_vast_cue_tones === void 0 ? void 0 : _data_response_options_vast_cue_tones.number_ads;
|
|
8104
8167
|
if (numberAds != null && numberAds > 0) {
|
|
8105
8168
|
this.apiNumberAds = numberAds;
|
|
8106
8169
|
if (this.debug) {
|
|
@@ -9934,7 +9997,23 @@ function resolveEdgePodBaseUrl(config) {
|
|
|
9934
9997
|
return void 0;
|
|
9935
9998
|
}
|
|
9936
9999
|
}
|
|
10000
|
+
function resolveEdgePodRequestContext(config) {
|
|
10001
|
+
var extra = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
10002
|
+
return {
|
|
10003
|
+
width: extra.width,
|
|
10004
|
+
height: extra.height,
|
|
10005
|
+
playerId: extra.playerId,
|
|
10006
|
+
contentNetwork: config.contentNetwork,
|
|
10007
|
+
contentChannel: config.channelName,
|
|
10008
|
+
contentTitle: config.programTitle
|
|
10009
|
+
};
|
|
10010
|
+
}
|
|
10011
|
+
function setOptionalParam(url, key, value) {
|
|
10012
|
+
var trimmed = value === null || value === void 0 ? void 0 : value.trim();
|
|
10013
|
+
if (trimmed) url.searchParams.set(key, trimmed);
|
|
10014
|
+
}
|
|
9937
10015
|
function buildEdgePodUrl(baseUrl, remainingMs, remainingAdLimit) {
|
|
10016
|
+
var context = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
|
|
9938
10017
|
var url = new URL(baseUrl);
|
|
9939
10018
|
var maxMs = Math.max(0, Math.floor(remainingMs));
|
|
9940
10019
|
var maxAds = Math.max(1, Math.min(EDGE_POD_MAX_ADS, Math.floor(remainingAdLimit)));
|
|
@@ -9942,6 +10021,16 @@ function buildEdgePodUrl(baseUrl, remainingMs, remainingAdLimit) {
|
|
|
9942
10021
|
url.searchParams.set("pmad", String(maxAds));
|
|
9943
10022
|
url.searchParams.set("duration", String(Math.floor(maxMs / 1e3)));
|
|
9944
10023
|
url.searchParams.set("count", String(maxAds));
|
|
10024
|
+
if (context.width != null && Number.isFinite(context.width) && context.width > 0) {
|
|
10025
|
+
url.searchParams.set("width", String(Math.round(context.width)));
|
|
10026
|
+
}
|
|
10027
|
+
if (context.height != null && Number.isFinite(context.height) && context.height > 0) {
|
|
10028
|
+
url.searchParams.set("height", String(Math.round(context.height)));
|
|
10029
|
+
}
|
|
10030
|
+
setOptionalParam(url, "pid", context.playerId);
|
|
10031
|
+
setOptionalParam(url, "cn", context.contentNetwork);
|
|
10032
|
+
setOptionalParam(url, "cc", context.contentChannel);
|
|
10033
|
+
setOptionalParam(url, "ct", context.contentTitle);
|
|
9945
10034
|
return url.toString();
|
|
9946
10035
|
}
|
|
9947
10036
|
function classifyEdgeVastResponse(result) {
|
|
@@ -10829,7 +10918,12 @@ var AdBreakOrchestrator = /*#__PURE__*/ function() {
|
|
|
10829
10918
|
return void 0;
|
|
10830
10919
|
}
|
|
10831
10920
|
try {
|
|
10832
|
-
|
|
10921
|
+
var playerId = getCachedBrowserId();
|
|
10922
|
+
return buildEdgePodUrl(baseUrl, remainingMs, remainingAds, resolveEdgePodRequestContext(this.host.config, {
|
|
10923
|
+
width: this.host.video.offsetWidth || this.host.video.clientWidth,
|
|
10924
|
+
height: this.host.video.offsetHeight || this.host.video.clientHeight,
|
|
10925
|
+
playerId: playerId
|
|
10926
|
+
}));
|
|
10833
10927
|
} catch (unused) {
|
|
10834
10928
|
this.markEdgeExhausted("invalid_edge_url");
|
|
10835
10929
|
return void 0;
|
|
@@ -12339,14 +12433,7 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
12339
12433
|
this.config = _object_spread({}, browserOverrides, config);
|
|
12340
12434
|
this.video = config.videoElement;
|
|
12341
12435
|
logBrowserInfo(config.debugAdTiming);
|
|
12342
|
-
|
|
12343
|
-
if (this.config.adFloorMinCents != null) floorBounds.minCents = this.config.adFloorMinCents;
|
|
12344
|
-
if (this.config.adFloorMaxCents != null) floorBounds.maxCents = this.config.adFloorMaxCents;
|
|
12345
|
-
if (this.config.adFloorStepCents != null) floorBounds.stepCents = this.config.adFloorStepCents;
|
|
12346
|
-
this.floorLadder = new FloorLadderController(this.config.adFloorLadder, floorBounds);
|
|
12347
|
-
this.floorLadderEnabled = this.config.adFloorLadderEnabled === true;
|
|
12348
|
-
this.warnOnInvalidFloorLadder(this.floorLadder.validate());
|
|
12349
|
-
this.edgePodBaseUrl = resolveEdgePodBaseUrl(this.config);
|
|
12436
|
+
this.floorLadder = new FloorLadderController();
|
|
12350
12437
|
this.adPlayer = this.createAdPlayer(false);
|
|
12351
12438
|
this.palNonce = createPalNonceManager();
|
|
12352
12439
|
this.cueManager = new Scte35CueManager(!!this.config.debugAdTiming, {
|
|
@@ -12453,9 +12540,8 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
12453
12540
|
return _this.edgePodBaseUrl;
|
|
12454
12541
|
},
|
|
12455
12542
|
getFloorSnapshot: function getFloorSnapshot(position) {
|
|
12456
|
-
return _this.
|
|
12457
|
-
position: position
|
|
12458
|
-
isCtv: _this.isCtvEnvironment()
|
|
12543
|
+
return _this.floorLadder.isEnabled() ? _this.floorLadder.snapshotFor({
|
|
12544
|
+
position: position
|
|
12459
12545
|
}) : void 0;
|
|
12460
12546
|
},
|
|
12461
12547
|
onAdClick: function onAdClick() {
|
|
@@ -12492,45 +12578,42 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
12492
12578
|
}
|
|
12493
12579
|
},
|
|
12494
12580
|
{
|
|
12495
|
-
key: "
|
|
12496
|
-
value: function
|
|
12497
|
-
|
|
12498
|
-
|
|
12499
|
-
|
|
12500
|
-
|
|
12501
|
-
|
|
12502
|
-
|
|
12503
|
-
key: "setAdFloorLadder",
|
|
12504
|
-
value: function setAdFloorLadder(update) {
|
|
12505
|
-
var report = this.floorLadder.update(update);
|
|
12581
|
+
key: "applyFloorLadderFromApi",
|
|
12582
|
+
value: function applyFloorLadderFromApi() {
|
|
12583
|
+
var raw = this.adConfig.apiFloorLadder;
|
|
12584
|
+
if (raw == null) {
|
|
12585
|
+
this.floorLadder.reset();
|
|
12586
|
+
return;
|
|
12587
|
+
}
|
|
12588
|
+
var report = this.floorLadder.applyApiConfig(raw);
|
|
12506
12589
|
this.warnOnInvalidFloorLadder(report);
|
|
12507
|
-
|
|
12508
|
-
|
|
12509
|
-
|
|
12510
|
-
|
|
12511
|
-
|
|
12512
|
-
|
|
12513
|
-
|
|
12514
|
-
if (enabled) this.warnOnInvalidFloorLadder(this.floorLadder.validate());
|
|
12590
|
+
if (this.debug) {
|
|
12591
|
+
console.log("[AdBreak][FLOOR] configuration applied from API", {
|
|
12592
|
+
config: this.floorLadder.get(),
|
|
12593
|
+
bounds: this.floorLadder.getBounds(),
|
|
12594
|
+
validation: report
|
|
12595
|
+
});
|
|
12596
|
+
}
|
|
12515
12597
|
}
|
|
12516
12598
|
},
|
|
12517
12599
|
{
|
|
12518
12600
|
key: "isAdFloorLadderEnabled",
|
|
12519
12601
|
value: function isAdFloorLadderEnabled() {
|
|
12520
|
-
return this.
|
|
12602
|
+
return this.floorLadder.isEnabled();
|
|
12521
12603
|
}
|
|
12522
12604
|
},
|
|
12523
12605
|
{
|
|
12524
|
-
key: "
|
|
12525
|
-
value: function
|
|
12526
|
-
|
|
12527
|
-
|
|
12606
|
+
key: "applyEdgePodFromApi",
|
|
12607
|
+
value: function applyEdgePodFromApi() {
|
|
12608
|
+
this.edgePodBaseUrl = resolveEdgePodBaseUrl({
|
|
12609
|
+
enableEdgePodRequest: this.adConfig.apiEnableEdgePodRequest,
|
|
12610
|
+
edgePodUrl: this.adConfig.apiEdgePodUrl,
|
|
12611
|
+
licenseKey: this.config.licenseKey
|
|
12612
|
+
});
|
|
12613
|
+
if (this.debug) {
|
|
12614
|
+
var _this_edgePodBaseUrl;
|
|
12615
|
+
console.log("[AdBreak][EDGE] edge pod base URL from API:", (_this_edgePodBaseUrl = this.edgePodBaseUrl) !== null && _this_edgePodBaseUrl !== void 0 ? _this_edgePodBaseUrl : "(disabled; GAM only)");
|
|
12528
12616
|
}
|
|
12529
|
-
if (update.enableEdgePodRequest === void 0) delete this.config.enableEdgePodRequest;
|
|
12530
|
-
else this.config.enableEdgePodRequest = update.enableEdgePodRequest;
|
|
12531
|
-
if (update.edgePodUrl === void 0) delete this.config.edgePodUrl;
|
|
12532
|
-
else this.config.edgePodUrl = update.edgePodUrl;
|
|
12533
|
-
this.edgePodBaseUrl = resolveEdgePodBaseUrl(this.config);
|
|
12534
12617
|
}
|
|
12535
12618
|
},
|
|
12536
12619
|
{
|
|
@@ -12543,7 +12626,7 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
12543
12626
|
key: "warnOnInvalidFloorLadder",
|
|
12544
12627
|
value: function warnOnInvalidFloorLadder(report) {
|
|
12545
12628
|
var config = this.floorLadder.get();
|
|
12546
|
-
if (report.ok || !
|
|
12629
|
+
if (report.ok || !config.enabled) return;
|
|
12547
12630
|
console.warn("[AdBreak][FLOOR] configuration has issues; invalid floors will not be sent", {
|
|
12548
12631
|
errors: report.errors,
|
|
12549
12632
|
configurationVersion: config.configurationVersion,
|
|
@@ -12618,6 +12701,8 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
12618
12701
|
4
|
|
12619
12702
|
];
|
|
12620
12703
|
case 4:
|
|
12704
|
+
this.applyFloorLadderFromApi();
|
|
12705
|
+
this.applyEdgePodFromApi();
|
|
12621
12706
|
palDescriptionUrl = this.config.ctvAdRequest ? this.adConfig.getPalDescriptionUrl() : void 0;
|
|
12622
12707
|
fetchConsentSignals().catch(function() {
|
|
12623
12708
|
return {};
|