stormcloud-video-player 0.8.57 → 0.8.58

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.
@@ -309,34 +309,8 @@ __export(AdConfigManager_exports, {
309
309
  });
310
310
  module.exports = __toCommonJS(AdConfigManager_exports);
311
311
  // src/utils/vastEnvironmentSignals.ts
312
- var AIRY_ANDROID_APP_ID = "com.freeairytv.android";
313
- var AIRY_WEBOS_APP_ID = "com.freeairytv.webos";
314
- var AIRY_TIZEN_APP_ID = "com.freeairytv.samsung";
315
- var AIRY_ROKU_APP_ID = "com.freeairytv.roku";
316
- var AIRY_APP_NAME = "AiryTV Movies & TV";
317
- var AIRY_DEFAULT_CONTENT_URL = "https://live.airy.tv";
318
312
  var CTV_SESSION_STORAGE_KEY = "stormcloud.ctv.sid";
319
313
  var PLAYER_ID_STORAGE_KEY = "stormcloud.player.id";
320
- var LG_TEST_APP_ID = "com.hulu.plus";
321
- var LG_TEST_APP_NAME = "Hulu";
322
- var LG_TEST_CONTENT_URL = "https://www.hulu.com/live-tv";
323
- var _lgTestDeviceId;
324
- function getLgTestDeviceId() {
325
- if (!_lgTestDeviceId) _lgTestDeviceId = createUuid();
326
- return _lgTestDeviceId;
327
- }
328
- function isLgWebOS() {
329
- if (typeof navigator === "undefined") return false;
330
- return /Web0S|webOS|LG Browser|LGSTB|LGE/i.test(navigator.userAgent);
331
- }
332
- function getDefaultAppId() {
333
- if (typeof navigator === "undefined") return AIRY_ANDROID_APP_ID;
334
- var ua = navigator.userAgent;
335
- if (/Web0S|webOS|LG Browser|LGSTB|LGE/i.test(ua)) return AIRY_WEBOS_APP_ID;
336
- if (/Tizen|Samsung/i.test(ua)) return AIRY_TIZEN_APP_ID;
337
- if (/Roku/i.test(ua)) return AIRY_ROKU_APP_ID;
338
- return AIRY_ANDROID_APP_ID;
339
- }
340
314
  var DEVICE_ID_STORAGE_KEYS = [
341
315
  "rdid",
342
316
  "ifa",
@@ -357,23 +331,29 @@ function resolveVastEnvironmentSignals(isCtv) {
357
331
  var _ref;
358
332
  var bridgeSignals = readNativeBridgeSignals();
359
333
  var platformDevice = readPlatformNativeDeviceId();
360
- var lg = isCtv && isLgWebOS();
361
- var deviceId = bridgeSignals.deviceId || readStoredDeviceId() || platformDevice.deviceId || (lg && platformDevice.limitAdTracking !== true ? getLgTestDeviceId() : void 0);
362
- var deviceIdType = bridgeSignals.deviceIdType || readStoredString("deviceIdType") || readStoredString("idtype") || platformDevice.deviceIdType || inferDeviceIdType() || (lg ? "lgudid" : void 0);
334
+ var realDeviceId = bridgeSignals.deviceId || readStoredDeviceId() || platformDevice.deviceId;
335
+ var deviceId = realDeviceId;
336
+ var deviceIdType = bridgeSignals.deviceIdType || readStoredString("deviceIdType") || readStoredString("idtype") || platformDevice.deviceIdType || inferDeviceIdType();
363
337
  var platformLat = bridgeSignals.deviceId ? bridgeSignals.limitAdTracking : platformDevice.limitAdTracking;
364
338
  var limitAdTracking = deviceId != null ? (_ref = platformLat !== null && platformLat !== void 0 ? platformLat : readStoredLimitAdTracking()) !== null && _ref !== void 0 ? _ref : false : void 0;
339
+ if (!deviceId && isCtv) {
340
+ var dpid = getOrCreateStoredUuid(PLAYER_ID_STORAGE_KEY);
341
+ if (dpid) {
342
+ var _ref1;
343
+ deviceId = dpid;
344
+ deviceIdType = "dpid";
345
+ limitAdTracking = (_ref1 = platformLat !== null && platformLat !== void 0 ? platformLat : readStoredLimitAdTracking()) !== null && _ref1 !== void 0 ? _ref1 : false;
346
+ }
347
+ }
365
348
  if (isCtv) {
366
349
  return _object_spread_props(_object_spread({
367
350
  isCtv: true,
368
- contentUrl: bridgeSignals.contentUrl || readStoredString("contentUrl") || (lg ? LG_TEST_CONTENT_URL : AIRY_DEFAULT_CONTENT_URL),
369
- appId: bridgeSignals.appId || readStoredString("appId") || readStoredString("msid") || (lg ? LG_TEST_APP_ID : getDefaultAppId()),
370
- appName: bridgeSignals.appName || readStoredString("appName") || readStoredString("an") || (lg ? LG_TEST_APP_NAME : AIRY_APP_NAME),
371
351
  sessionId: getOrCreateCtvSessionId()
372
352
  }, deviceId ? {
373
353
  deviceId: deviceId
374
- } : {}, deviceIdType ? {
354
+ } : {}, deviceId && deviceIdType ? {
375
355
  deviceIdType: deviceIdType
376
- } : {}, limitAdTracking != null ? {
356
+ } : {}, deviceId && limitAdTracking != null ? {
377
357
  limitAdTracking: limitAdTracking
378
358
  } : {}), {
379
359
  deviceTypeHint: 5
@@ -383,9 +363,9 @@ function resolveVastEnvironmentSignals(isCtv) {
383
363
  isCtv: false
384
364
  }, deviceId ? {
385
365
  deviceId: deviceId
386
- } : {}, deviceIdType ? {
366
+ } : {}, deviceId && deviceIdType ? {
387
367
  deviceIdType: deviceIdType
388
- } : {}, limitAdTracking != null ? {
368
+ } : {}, deviceId && limitAdTracking != null ? {
389
369
  limitAdTracking: limitAdTracking
390
370
  } : {});
391
371
  }
@@ -816,7 +796,6 @@ var UNEXPANDED_MACRO_PATTERN = /^(\[[^\]]*\]|\{[^}]*\}|%%[^%]*%%)$/;
816
796
  var INVALID_VAST_PARAM_KEY = /^\s|\s$/;
817
797
  var EXAMPLE_COM_URL = /example\.com/i;
818
798
  var CTV_UNSUPPORTED_PARAMS = [
819
- "description_url",
820
799
  "tfcd",
821
800
  "npa",
822
801
  "min_ad_duration",
@@ -907,18 +886,6 @@ var INLINE_DEVICE_MACRO_REPLACEMENTS = [
907
886
  return ctx.limitAdTracking != null ? ctx.limitAdTracking ? "1" : "0" : void 0;
908
887
  }
909
888
  },
910
- {
911
- pattern: /%%MSID%%/gi,
912
- getValue: function getValue(ctx) {
913
- return ctx.appId;
914
- }
915
- },
916
- {
917
- pattern: /%%APP_NAME%%/gi,
918
- getValue: function getValue(ctx) {
919
- return ctx.appName;
920
- }
921
- },
922
889
  {
923
890
  pattern: /%%SESSION_ID%%/gi,
924
891
  getValue: function getValue(ctx) {
@@ -1109,7 +1076,7 @@ function applyVastMacros(baseUrl, ctx) {
1109
1076
  return replaceCorrelatorFallback(expandedUrl, ctx.correlator);
1110
1077
  }
1111
1078
  var params = url.searchParams;
1112
- removeBrokenAppNameOrphans(params, ctx.appName);
1079
+ removeBrokenAppNameOrphans(params);
1113
1080
  params.set("correlator", ctx.correlator);
1114
1081
  params.set("scor", ctx.streamCorrelator);
1115
1082
  if (ctx.isCtv) {
@@ -1148,18 +1115,14 @@ function applyVastMacros(baseUrl, ctx) {
1148
1115
  if (ctx.podMaxAds != null) {
1149
1116
  params.set("pmad", String(Math.max(1, Math.round(ctx.podMaxAds))));
1150
1117
  }
1151
- var requestUrl = ctx.contentUrl || ctx.pageUrl;
1152
- if (requestUrl) {
1153
- params.set("url", requestUrl);
1154
- if (!ctx.isCtv) {
1155
- params.set("description_url", requestUrl);
1156
- }
1157
- } else {
1158
- var existingUrl = params.get("url") || "";
1159
- if (EXAMPLE_COM_URL.test(existingUrl)) {
1160
- params.delete("url");
1161
- params.delete("description_url");
1162
- }
1118
+ if (!ctx.isCtv && ctx.pageUrl) {
1119
+ params.set("url", ctx.pageUrl);
1120
+ params.set("description_url", ctx.pageUrl);
1121
+ }
1122
+ var existingUrl = params.get("url") || "";
1123
+ if (EXAMPLE_COM_URL.test(existingUrl)) {
1124
+ params.delete("url");
1125
+ params.delete("description_url");
1163
1126
  }
1164
1127
  if (ctx.adWillPlayMuted != null) {
1165
1128
  params.set("vpmute", ctx.adWillPlayMuted ? "1" : "0");
@@ -1167,13 +1130,6 @@ function applyVastMacros(baseUrl, ctx) {
1167
1130
  if (ctx.adWillAutoPlay != null) {
1168
1131
  params.set("vpa", ctx.adWillAutoPlay ? "auto" : "click");
1169
1132
  }
1170
- if (ctx.appId) {
1171
- params.set("msid", ctx.appId);
1172
- }
1173
- if (ctx.appName) {
1174
- removeBrokenAppNameOrphans(params, ctx.appName);
1175
- params.set("an", ctx.appName);
1176
- }
1177
1133
  if (ctx.sessionId) {
1178
1134
  params.set("sid", ctx.sessionId);
1179
1135
  }
@@ -1224,7 +1180,7 @@ function applyVastMacros(baseUrl, ctx) {
1224
1180
  }
1225
1181
  }
1226
1182
  }
1227
- removeBrokenAppNameOrphans(params, ctx.appName);
1183
+ removeBrokenAppNameOrphans(params);
1228
1184
  return url.toString();
1229
1185
  }
1230
1186
  function replaceCorrelatorFallback(baseUrl, correlator) {
@@ -2213,6 +2169,18 @@ var AdConfigManager = /*#__PURE__*/ function() {
2213
2169
  };
2214
2170
  }
2215
2171
  },
2172
+ {
2173
+ key: "getPalDescriptionUrl",
2174
+ value: function getPalDescriptionUrl() {
2175
+ if (!this.apiVastTagUrl) return void 0;
2176
+ try {
2177
+ var params = new URL(this.apiVastTagUrl).searchParams;
2178
+ return params.get("description_url") || params.get("url") || void 0;
2179
+ } catch (unused) {
2180
+ return void 0;
2181
+ }
2182
+ }
2183
+ },
2216
2184
  {
2217
2185
  key: "generatePodVastUrl",
2218
2186
  value: function generatePodVastUrl(baseUrl, podParams, adPlayer, palNonce, inAdBreak) {
@@ -2227,12 +2195,9 @@ var AdConfigManager = /*#__PURE__*/ function() {
2227
2195
  podMinDurationMs: podParams.minDurationMs,
2228
2196
  podMaxDurationMs: podParams.maxDurationMs,
2229
2197
  isCtv: envSignals.isCtv,
2230
- contentUrl: envSignals.contentUrl,
2231
2198
  pageUrl: !envSignals.isCtv && typeof window !== "undefined" ? toDevSafeUrl(window.location.href) : void 0,
2232
2199
  adWillPlayMuted: adWillPlayMuted,
2233
2200
  adWillAutoPlay: !!this.config.autoplay,
2234
- appId: envSignals.appId,
2235
- appName: envSignals.appName,
2236
2201
  sessionId: envSignals.sessionId,
2237
2202
  deviceId: envSignals.deviceId,
2238
2203
  deviceIdType: envSignals.deviceIdType,