react-native-theoplayer 8.6.0 → 8.7.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 (90) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/android/src/main/java/com/theoplayer/ads/AdsModule.kt +52 -0
  3. package/android/src/main/java/com/theoplayer/player/PlayerModule.kt +7 -0
  4. package/android/src/main/java/com/theoplayer/util/ViewResolver.kt +6 -5
  5. package/app.plugin.js +3 -2
  6. package/ios/THEOplayerRCTBridge.m +8 -0
  7. package/ios/THEOplayerRCTPlayerAPI.swift +6 -0
  8. package/ios/THEOplayerRCTTypeUtils.swift +16 -0
  9. package/ios/ads/THEOplayerRCTAdsAPI+Omid.swift +55 -0
  10. package/ios/backgroundAudio/THEOplayerRCTNowPlayingManager.swift +7 -2
  11. package/lib/commonjs/api/ads/Omid.js +17 -0
  12. package/lib/commonjs/api/ads/Omid.js.map +1 -0
  13. package/lib/commonjs/api/ads/barrel.js +11 -0
  14. package/lib/commonjs/api/ads/barrel.js.map +1 -1
  15. package/lib/commonjs/api/barrel.js +11 -0
  16. package/lib/commonjs/api/barrel.js.map +1 -1
  17. package/lib/commonjs/api/version/barrel.js +17 -0
  18. package/lib/commonjs/api/version/barrel.js.map +1 -0
  19. package/lib/commonjs/index.js +9 -1
  20. package/lib/commonjs/index.js.map +1 -1
  21. package/lib/commonjs/internal/adapter/ads/THEOplayerNativeAdsAdapter.js +5 -0
  22. package/lib/commonjs/internal/adapter/ads/THEOplayerNativeAdsAdapter.js.map +1 -1
  23. package/lib/commonjs/internal/adapter/ads/THEOplayerNativeOmid.js +25 -0
  24. package/lib/commonjs/internal/adapter/ads/THEOplayerNativeOmid.js.map +1 -0
  25. package/lib/commonjs/internal/adapter/ads/THEOplayerWebAdsAdapter.js +5 -0
  26. package/lib/commonjs/internal/adapter/ads/THEOplayerWebAdsAdapter.js.map +1 -1
  27. package/lib/commonjs/internal/version/Version.js +20 -0
  28. package/lib/commonjs/internal/version/Version.js.map +1 -0
  29. package/lib/commonjs/internal/version/Version.web.js +18 -0
  30. package/lib/commonjs/internal/version/Version.web.js.map +1 -0
  31. package/lib/commonjs/manifest.json +1 -0
  32. package/lib/module/api/ads/Omid.js +12 -0
  33. package/lib/module/api/ads/Omid.js.map +1 -0
  34. package/lib/module/api/ads/barrel.js +1 -0
  35. package/lib/module/api/ads/barrel.js.map +1 -1
  36. package/lib/module/api/barrel.js +1 -0
  37. package/lib/module/api/barrel.js.map +1 -1
  38. package/lib/module/api/version/barrel.js +2 -0
  39. package/lib/module/api/version/barrel.js.map +1 -0
  40. package/lib/module/index.js +1 -0
  41. package/lib/module/index.js.map +1 -1
  42. package/lib/module/internal/adapter/ads/THEOplayerNativeAdsAdapter.js +5 -0
  43. package/lib/module/internal/adapter/ads/THEOplayerNativeAdsAdapter.js.map +1 -1
  44. package/lib/module/internal/adapter/ads/THEOplayerNativeOmid.js +18 -0
  45. package/lib/module/internal/adapter/ads/THEOplayerNativeOmid.js.map +1 -0
  46. package/lib/module/internal/adapter/ads/THEOplayerWebAdsAdapter.js +5 -0
  47. package/lib/module/internal/adapter/ads/THEOplayerWebAdsAdapter.js.map +1 -1
  48. package/lib/module/internal/version/Version.js +11 -0
  49. package/lib/module/internal/version/Version.js.map +1 -0
  50. package/lib/module/internal/version/Version.web.js +10 -0
  51. package/lib/module/internal/version/Version.web.js.map +1 -0
  52. package/lib/module/manifest.json +1 -0
  53. package/lib/typescript/api/ads/AdsAPI.d.ts +7 -0
  54. package/lib/typescript/api/ads/AdsAPI.d.ts.map +1 -1
  55. package/lib/typescript/api/ads/Omid.d.ts +49 -0
  56. package/lib/typescript/api/ads/Omid.d.ts.map +1 -0
  57. package/lib/typescript/api/ads/barrel.d.ts +1 -0
  58. package/lib/typescript/api/ads/barrel.d.ts.map +1 -1
  59. package/lib/typescript/api/barrel.d.ts +1 -0
  60. package/lib/typescript/api/barrel.d.ts.map +1 -1
  61. package/lib/typescript/api/player/THEOplayer.d.ts +2 -0
  62. package/lib/typescript/api/player/THEOplayer.d.ts.map +1 -1
  63. package/lib/typescript/api/version/barrel.d.ts +2 -0
  64. package/lib/typescript/api/version/barrel.d.ts.map +1 -0
  65. package/lib/typescript/index.d.ts +1 -0
  66. package/lib/typescript/index.d.ts.map +1 -1
  67. package/lib/typescript/internal/adapter/ads/THEOplayerNativeAdsAdapter.d.ts +3 -0
  68. package/lib/typescript/internal/adapter/ads/THEOplayerNativeAdsAdapter.d.ts.map +1 -1
  69. package/lib/typescript/internal/adapter/ads/THEOplayerNativeOmid.d.ts +9 -0
  70. package/lib/typescript/internal/adapter/ads/THEOplayerNativeOmid.d.ts.map +1 -0
  71. package/lib/typescript/internal/adapter/ads/THEOplayerWebAdsAdapter.d.ts +2 -0
  72. package/lib/typescript/internal/adapter/ads/THEOplayerWebAdsAdapter.d.ts.map +1 -1
  73. package/lib/typescript/internal/version/Version.d.ts +3 -0
  74. package/lib/typescript/internal/version/Version.d.ts.map +1 -0
  75. package/lib/typescript/internal/version/Version.web.d.ts +3 -0
  76. package/lib/typescript/internal/version/Version.web.d.ts.map +1 -0
  77. package/package.json +3 -2
  78. package/src/api/ads/AdsAPI.ts +8 -0
  79. package/src/api/ads/Omid.ts +58 -0
  80. package/src/api/ads/barrel.ts +1 -0
  81. package/src/api/barrel.ts +1 -0
  82. package/src/api/player/THEOplayer.ts +2 -0
  83. package/src/api/version/barrel.ts +1 -0
  84. package/src/index.tsx +1 -0
  85. package/src/internal/adapter/ads/THEOplayerNativeAdsAdapter.ts +8 -0
  86. package/src/internal/adapter/ads/THEOplayerNativeOmid.ts +21 -0
  87. package/src/internal/adapter/ads/THEOplayerWebAdsAdapter.ts +7 -0
  88. package/src/internal/version/Version.ts +12 -0
  89. package/src/internal/version/Version.web.ts +11 -0
  90. package/src/manifest.json +1 -0
@@ -0,0 +1 @@
1
+ {"version":"8.7.0","buildDate":"2024-11-05T13:50:34.649Z"}
@@ -0,0 +1,12 @@
1
+ export let OmidFriendlyObstructionPurpose = /*#__PURE__*/function (OmidFriendlyObstructionPurpose) {
2
+ OmidFriendlyObstructionPurpose["VIDEO_CONTROLS"] = "videoControls";
3
+ OmidFriendlyObstructionPurpose["CLOSE_AD"] = "closeAd";
4
+ OmidFriendlyObstructionPurpose["NOT_VISIBLE"] = "notVisible";
5
+ OmidFriendlyObstructionPurpose["OTHER"] = "other";
6
+ return OmidFriendlyObstructionPurpose;
7
+ }({});
8
+
9
+ /**
10
+ * The Omid API, which can be used to add as well as remove friendly video controls overlay obstructions.
11
+ */
12
+ //# sourceMappingURL=Omid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["OmidFriendlyObstructionPurpose"],"sourceRoot":"../../../../src","sources":["api/ads/Omid.ts"],"mappings":"AAGA,WAAYA,8BAA8B,0BAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAAA,OAA9BA,8BAA8B;AAAA;;AAuC1C;AACA;AACA","ignoreList":[]}
@@ -6,4 +6,5 @@ export * from './CompanionAd';
6
6
  export * from './GoogleDai';
7
7
  export * from './GoogleImaAd';
8
8
  export * from './GoogleImaConfiguration';
9
+ export * from './Omid';
9
10
  //# sourceMappingURL=barrel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["api/ads/barrel.ts"],"mappings":"AAAA,cAAc,MAAM;AACpB,cAAc,WAAW;AACzB,cAAc,oBAAoB;AAClC,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,aAAa;AAC3B,cAAc,eAAe;AAC7B,cAAc,0BAA0B","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["api/ads/barrel.ts"],"mappings":"AAAA,cAAc,MAAM;AACpB,cAAc,WAAW;AACzB,cAAc,oBAAoB;AAClC,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,aAAa;AAC3B,cAAc,eAAe;AAC7B,cAAc,0BAA0B;AACxC,cAAc,QAAQ","ignoreList":[]}
@@ -21,4 +21,5 @@ export * from './THEOplayerView';
21
21
  export * from './playback/barrel';
22
22
  export * from './player/barrel';
23
23
  export * from './presentation/barrel';
24
+ export * from './version/barrel';
24
25
  //# sourceMappingURL=barrel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["api/barrel.ts"],"mappings":"AAAA,cAAc,cAAc;AAC5B,cAAc,cAAc;AAC5B,cAAc,0BAA0B;AACxC,cAAc,oBAAoB;AAClC,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,mBAAmB;AACjC,cAAc,qBAAqB;AACnC,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,aAAa;AAC3B,cAAc,gBAAgB;AAC9B,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,iBAAiB;AAC/B,cAAc,uBAAuB","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["api/barrel.ts"],"mappings":"AAAA,cAAc,cAAc;AAC5B,cAAc,cAAc;AAC5B,cAAc,0BAA0B;AACxC,cAAc,oBAAoB;AAClC,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,mBAAmB;AACjC,cAAc,qBAAqB;AACnC,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,aAAa;AAC3B,cAAc,gBAAgB;AAC9B,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,iBAAiB;AAC/B,cAAc,uBAAuB;AACrC,cAAc,kBAAkB","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export * from './SdkVersions';
2
+ //# sourceMappingURL=barrel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["api/version/barrel.ts"],"mappings":"AAAA,cAAc,eAAe","ignoreList":[]}
@@ -3,4 +3,5 @@ export { THEOplayerView } from './internal/THEOplayerView';
3
3
  export { ContentProtectionRegistry } from './internal/drm/ContentProtectionRegistry';
4
4
  export { MediaCache } from './internal/cache/MediaCache';
5
5
  export { PlaybackSettings } from './internal/playback/PlaybackSettings';
6
+ export { sdkVersions } from './internal/version/Version';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["THEOplayerView","ContentProtectionRegistry","MediaCache","PlaybackSettings"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,cAAc;AAC5B,SAASA,cAAc,QAAQ,2BAA2B;AAC1D,SAASC,yBAAyB,QAAQ,0CAA0C;AACpF,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,gBAAgB,QAAQ,sCAAsC","ignoreList":[]}
1
+ {"version":3,"names":["THEOplayerView","ContentProtectionRegistry","MediaCache","PlaybackSettings","sdkVersions"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,cAAc;AAC5B,SAASA,cAAc,QAAQ,2BAA2B;AAC1D,SAASC,yBAAyB,QAAQ,0CAA0C;AACpF,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,gBAAgB,QAAQ,sCAAsC;AACvE,SAASC,WAAW,QAAQ,4BAA4B","ignoreList":[]}
@@ -1,10 +1,12 @@
1
1
  import { NativeModules } from 'react-native';
2
2
  import { THEOplayerNativeGoogleDAI } from './THEOplayerNativeGoogleDAI';
3
+ import { THEOplayerNativeOmid } from './THEOplayerNativeOmid';
3
4
  const NativeAdsModule = NativeModules.THEORCTAdsModule;
4
5
  export class THEOplayerNativeAdsAdapter {
5
6
  constructor(_player) {
6
7
  this._player = _player;
7
8
  this._dai = new THEOplayerNativeGoogleDAI(this._player);
9
+ this._omid = new THEOplayerNativeOmid(this._player);
8
10
  }
9
11
  playing() {
10
12
  return NativeAdsModule.playing(this._player.nativeHandle);
@@ -27,5 +29,8 @@ export class THEOplayerNativeAdsAdapter {
27
29
  get dai() {
28
30
  return this._dai;
29
31
  }
32
+ get omid() {
33
+ return this._omid;
34
+ }
30
35
  }
31
36
  //# sourceMappingURL=THEOplayerNativeAdsAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","THEOplayerNativeGoogleDAI","NativeAdsModule","THEORCTAdsModule","THEOplayerNativeAdsAdapter","constructor","_player","_dai","playing","nativeHandle","skip","currentAdBreak","currentAds","scheduledAdBreaks","schedule","ad","dai"],"sourceRoot":"../../../../../src","sources":["internal/adapter/ads/THEOplayerNativeAdsAdapter.ts"],"mappings":"AACA,SAASA,aAAa,QAAQ,cAAc;AAC5C,SAASC,yBAAyB,QAAQ,6BAA6B;AAEvE,MAAMC,eAAe,GAAGF,aAAa,CAACG,gBAAgB;AAEtD,OAAO,MAAMC,0BAA0B,CAAmB;EAGxDC,WAAWA,CAASC,OAAuB,EAAE;IAAA,KAAzBA,OAAuB,GAAvBA,OAAuB;IACzC,IAAI,CAACC,IAAI,GAAG,IAAIN,yBAAyB,CAAC,IAAI,CAACK,OAAO,CAAC;EACzD;EAEAE,OAAOA,CAAA,EAAqB;IAC1B,OAAON,eAAe,CAACM,OAAO,CAAC,IAAI,CAACF,OAAO,CAACG,YAAY,CAAC;EAC3D;EAEAC,IAAIA,CAAA,EAAS;IACXR,eAAe,CAACQ,IAAI,CAAC,IAAI,CAACJ,OAAO,CAACG,YAAY,CAAC;EACjD;EAEAE,cAAcA,CAAA,EAAqB;IACjC,OAAOT,eAAe,CAACS,cAAc,CAAC,IAAI,CAACL,OAAO,CAACG,YAAY,CAAC;EAClE;EAEAG,UAAUA,CAAA,EAAkB;IAC1B,OAAOV,eAAe,CAACU,UAAU,CAAC,IAAI,CAACN,OAAO,CAACG,YAAY,CAAC;EAC9D;EAEAI,iBAAiBA,CAAA,EAAuB;IACtC,OAAOX,eAAe,CAACW,iBAAiB,CAAC,IAAI,CAACP,OAAO,CAACG,YAAY,CAAC;EACrE;EAEAK,QAAQA,CAACC,EAAiB,EAAQ;IAChCb,eAAe,CAACY,QAAQ,CAAC,IAAI,CAACR,OAAO,CAACG,YAAY,EAAEM,EAAE,CAAC;EACzD;EAEA,IAAIC,GAAGA,CAAA,EAA0B;IAC/B,OAAO,IAAI,CAACT,IAAI;EAClB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","THEOplayerNativeGoogleDAI","THEOplayerNativeOmid","NativeAdsModule","THEORCTAdsModule","THEOplayerNativeAdsAdapter","constructor","_player","_dai","_omid","playing","nativeHandle","skip","currentAdBreak","currentAds","scheduledAdBreaks","schedule","ad","dai","omid"],"sourceRoot":"../../../../../src","sources":["internal/adapter/ads/THEOplayerNativeAdsAdapter.ts"],"mappings":"AACA,SAASA,aAAa,QAAQ,cAAc;AAC5C,SAASC,yBAAyB,QAAQ,6BAA6B;AACvE,SAASC,oBAAoB,QAAQ,wBAAwB;AAG7D,MAAMC,eAAe,GAAGH,aAAa,CAACI,gBAAgB;AAEtD,OAAO,MAAMC,0BAA0B,CAAmB;EAIxDC,WAAWA,CAASC,OAAuB,EAAE;IAAA,KAAzBA,OAAuB,GAAvBA,OAAuB;IACzC,IAAI,CAACC,IAAI,GAAG,IAAIP,yBAAyB,CAAC,IAAI,CAACM,OAAO,CAAC;IACvD,IAAI,CAACE,KAAK,GAAG,IAAIP,oBAAoB,CAAC,IAAI,CAACK,OAAO,CAAC;EACrD;EAEAG,OAAOA,CAAA,EAAqB;IAC1B,OAAOP,eAAe,CAACO,OAAO,CAAC,IAAI,CAACH,OAAO,CAACI,YAAY,CAAC;EAC3D;EAEAC,IAAIA,CAAA,EAAS;IACXT,eAAe,CAACS,IAAI,CAAC,IAAI,CAACL,OAAO,CAACI,YAAY,CAAC;EACjD;EAEAE,cAAcA,CAAA,EAAqB;IACjC,OAAOV,eAAe,CAACU,cAAc,CAAC,IAAI,CAACN,OAAO,CAACI,YAAY,CAAC;EAClE;EAEAG,UAAUA,CAAA,EAAkB;IAC1B,OAAOX,eAAe,CAACW,UAAU,CAAC,IAAI,CAACP,OAAO,CAACI,YAAY,CAAC;EAC9D;EAEAI,iBAAiBA,CAAA,EAAuB;IACtC,OAAOZ,eAAe,CAACY,iBAAiB,CAAC,IAAI,CAACR,OAAO,CAACI,YAAY,CAAC;EACrE;EAEAK,QAAQA,CAACC,EAAiB,EAAQ;IAChCd,eAAe,CAACa,QAAQ,CAAC,IAAI,CAACT,OAAO,CAACI,YAAY,EAAEM,EAAE,CAAC;EACzD;EAEA,IAAIC,GAAGA,CAAA,EAA0B;IAC/B,OAAO,IAAI,CAACV,IAAI;EAClB;EAEA,IAAIW,IAAIA,CAAA,EAAqB;IAC3B,OAAO,IAAI,CAACV,KAAK;EACnB;AACF","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ import { findNodeHandle, NativeModules } from 'react-native';
2
+ const NativeAdsModule = NativeModules.THEORCTAdsModule;
3
+ export class THEOplayerNativeOmid {
4
+ constructor(_player) {
5
+ this._player = _player;
6
+ }
7
+ addFriendlyObstruction(obstruction) {
8
+ NativeAdsModule.addFriendlyObstruction(this._player.nativeHandle, {
9
+ view: findNodeHandle(obstruction.view.current),
10
+ purpose: obstruction.purpose,
11
+ reason: obstruction.reason
12
+ });
13
+ }
14
+ removeAllFriendlyObstructions() {
15
+ NativeAdsModule.removeAllFriendlyObstructions(this._player.nativeHandle);
16
+ }
17
+ }
18
+ //# sourceMappingURL=THEOplayerNativeOmid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["findNodeHandle","NativeModules","NativeAdsModule","THEORCTAdsModule","THEOplayerNativeOmid","constructor","_player","addFriendlyObstruction","obstruction","nativeHandle","view","current","purpose","reason","removeAllFriendlyObstructions"],"sourceRoot":"../../../../../src","sources":["internal/adapter/ads/THEOplayerNativeOmid.ts"],"mappings":"AACA,SAASA,cAAc,EAAEC,aAAa,QAAQ,cAAc;AAG5D,MAAMC,eAAe,GAAGD,aAAa,CAACE,gBAAgB;AAEtD,OAAO,MAAMC,oBAAoB,CAAiB;EACzCC,WAAWA,CAAkBC,OAAuB,EAAE;IAAA,KAAzBA,OAAuB,GAAvBA,OAAuB;EAAG;EAE9DC,sBAAsBA,CAACC,WAAoC,EAAQ;IACjEN,eAAe,CAACK,sBAAsB,CAAC,IAAI,CAACD,OAAO,CAACG,YAAY,EAAE;MAChEC,IAAI,EAAEV,cAAc,CAACQ,WAAW,CAACE,IAAI,CAACC,OAAO,CAAC;MAC9CC,OAAO,EAAEJ,WAAW,CAACI,OAAO;MAC5BC,MAAM,EAAEL,WAAW,CAACK;IACtB,CAAC,CAAC;EACJ;EAEAC,6BAA6BA,CAAA,EAAS;IACpCZ,eAAe,CAACY,6BAA6B,CAAC,IAAI,CAACR,OAAO,CAACG,YAAY,CAAC;EAC1E;AACF","ignoreList":[]}
@@ -35,5 +35,10 @@ export class THEOplayerWebAdsAdapter {
35
35
  }
36
36
  return this._dai;
37
37
  }
38
+ get omid() {
39
+ // NYI
40
+ console.warn('The Omid API is not yet implemented for Web platforms.');
41
+ return undefined;
42
+ }
38
43
  }
39
44
  //# sourceMappingURL=THEOplayerWebAdsAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["THEOplayerWebGoogleDAI","THEOplayerWebAdsAdapter","constructor","player","_player","currentAdBreak","adBreak","ads","Promise","resolve","reject","currentAds","playing","schedule","ad","scheduledAdBreaks","adBreaks","skip","dai","_dai","nativeDai","undefined"],"sourceRoot":"../../../../../src","sources":["internal/adapter/ads/THEOplayerWebAdsAdapter.ts"],"mappings":"AACA,SAASA,sBAAsB,QAAQ,0BAA0B;AAGjE,OAAO,MAAMC,uBAAuB,CAAmB;EAIrDC,WAAWA,CAACC,MAAwB,EAAE;IACpC,IAAI,CAACC,OAAO,GAAGD,MAAM;EACvB;EAEAE,cAAcA,CAAA,EAAqB;IACjC,MAAMC,OAAO,GAAG,IAAI,CAACF,OAAO,CAACG,GAAG,EAAEF,cAAc;IAChD,OAAOC,OAAO,GAAGE,OAAO,CAACC,OAAO,CAACH,OAAO,CAAC,GAAGE,OAAO,CAACE,MAAM,CAAU,CAAC;EACvE;EAEAC,UAAUA,CAAA,EAAkB;IAC1B,MAAMJ,GAAG,GAAG,IAAI,CAACH,OAAO,CAACG,GAAG,EAAEI,UAAU;IACxC,OAAOJ,GAAG,GAAGC,OAAO,CAACC,OAAO,CAACF,GAAG,CAAC,GAAGC,OAAO,CAACE,MAAM,CAAO,CAAC;EAC5D;EAEAE,OAAOA,CAAA,EAAqB;IAC1B,OAAOJ,OAAO,CAACC,OAAO,CAAU,IAAI,CAACL,OAAO,CAACG,GAAG,EAAEK,OAAO,IAAI,KAAK,CAAC;EACrE;EAEAC,QAAQA,CAACC,EAAiB,EAAQ;IAChC,IAAI,CAACV,OAAO,CAACG,GAAG,EAAEM,QAAQ,CAACC,EAAE,CAAC;EAChC;EAEAC,iBAAiBA,CAAA,EAAuB;IACtC,MAAMC,QAAQ,GAAG,IAAI,CAACZ,OAAO,CAACG,GAAG,EAAEQ,iBAAiB;IACpD,OAAOC,QAAQ,GAAGR,OAAO,CAACC,OAAO,CAACO,QAAQ,CAAC,GAAGR,OAAO,CAACE,MAAM,CAAY,CAAC;EAC3E;EAEAO,IAAIA,CAAA,EAAS;IACX,IAAI,CAACb,OAAO,CAACG,GAAG,EAAEU,IAAI,CAAC,CAAC;EAC1B;EAEA,IAAIC,GAAGA,CAAA,EAA0B;IAC/B,IAAI,CAAC,IAAI,CAACC,IAAI,EAAE;MACd,MAAMC,SAAS,GAAG,IAAI,CAAChB,OAAO,CAACG,GAAG,EAAEW,GAAG;MACvC,IAAI,CAACE,SAAS,EAAE;QACd;QACA,OAAOC,SAAS;MAClB;MACA,IAAI,CAACF,IAAI,GAAG,IAAInB,sBAAsB,CAACoB,SAAS,CAAC;IACnD;IACA,OAAO,IAAI,CAACD,IAAI;EAClB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["THEOplayerWebGoogleDAI","THEOplayerWebAdsAdapter","constructor","player","_player","currentAdBreak","adBreak","ads","Promise","resolve","reject","currentAds","playing","schedule","ad","scheduledAdBreaks","adBreaks","skip","dai","_dai","nativeDai","undefined","omid","console","warn"],"sourceRoot":"../../../../../src","sources":["internal/adapter/ads/THEOplayerWebAdsAdapter.ts"],"mappings":"AACA,SAASA,sBAAsB,QAAQ,0BAA0B;AAIjE,OAAO,MAAMC,uBAAuB,CAAmB;EAIrDC,WAAWA,CAACC,MAAwB,EAAE;IACpC,IAAI,CAACC,OAAO,GAAGD,MAAM;EACvB;EAEAE,cAAcA,CAAA,EAAqB;IACjC,MAAMC,OAAO,GAAG,IAAI,CAACF,OAAO,CAACG,GAAG,EAAEF,cAAc;IAChD,OAAOC,OAAO,GAAGE,OAAO,CAACC,OAAO,CAACH,OAAO,CAAC,GAAGE,OAAO,CAACE,MAAM,CAAU,CAAC;EACvE;EAEAC,UAAUA,CAAA,EAAkB;IAC1B,MAAMJ,GAAG,GAAG,IAAI,CAACH,OAAO,CAACG,GAAG,EAAEI,UAAU;IACxC,OAAOJ,GAAG,GAAGC,OAAO,CAACC,OAAO,CAACF,GAAG,CAAC,GAAGC,OAAO,CAACE,MAAM,CAAO,CAAC;EAC5D;EAEAE,OAAOA,CAAA,EAAqB;IAC1B,OAAOJ,OAAO,CAACC,OAAO,CAAU,IAAI,CAACL,OAAO,CAACG,GAAG,EAAEK,OAAO,IAAI,KAAK,CAAC;EACrE;EAEAC,QAAQA,CAACC,EAAiB,EAAQ;IAChC,IAAI,CAACV,OAAO,CAACG,GAAG,EAAEM,QAAQ,CAACC,EAAE,CAAC;EAChC;EAEAC,iBAAiBA,CAAA,EAAuB;IACtC,MAAMC,QAAQ,GAAG,IAAI,CAACZ,OAAO,CAACG,GAAG,EAAEQ,iBAAiB;IACpD,OAAOC,QAAQ,GAAGR,OAAO,CAACC,OAAO,CAACO,QAAQ,CAAC,GAAGR,OAAO,CAACE,MAAM,CAAY,CAAC;EAC3E;EAEAO,IAAIA,CAAA,EAAS;IACX,IAAI,CAACb,OAAO,CAACG,GAAG,EAAEU,IAAI,CAAC,CAAC;EAC1B;EAEA,IAAIC,GAAGA,CAAA,EAA0B;IAC/B,IAAI,CAAC,IAAI,CAACC,IAAI,EAAE;MACd,MAAMC,SAAS,GAAG,IAAI,CAAChB,OAAO,CAACG,GAAG,EAAEW,GAAG;MACvC,IAAI,CAACE,SAAS,EAAE;QACd;QACA,OAAOC,SAAS;MAClB;MACA,IAAI,CAACF,IAAI,GAAG,IAAInB,sBAAsB,CAACoB,SAAS,CAAC;IACnD;IACA,OAAO,IAAI,CAACD,IAAI;EAClB;EAEA,IAAIG,IAAIA,CAAA,EAAqB;IAC3B;IACAC,OAAO,CAACC,IAAI,CAAC,wDAAwD,CAAC;IACtE,OAAOH,SAAS;EAClB;AACF","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import { NativeModules } from 'react-native';
2
+ import * as manifest from '../../manifest.json';
3
+ export const sdkVersions = async () => {
4
+ const rnVersionString = manifest.version ?? '';
5
+ const nativeVersionString = await NativeModules.THEORCTPlayerModule.version();
6
+ return {
7
+ rn: rnVersionString,
8
+ native: nativeVersionString
9
+ };
10
+ };
11
+ //# sourceMappingURL=Version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NativeModules","manifest","sdkVersions","rnVersionString","version","nativeVersionString","THEORCTPlayerModule","rn","native"],"sourceRoot":"../../../../src","sources":["internal/version/Version.ts"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAE5C,OAAO,KAAKC,QAAQ,MAAM,qBAAqB;AAE/C,OAAO,MAAMC,WAAW,GAAG,MAAAA,CAAA,KAAkC;EAC3D,MAAMC,eAAe,GAAGF,QAAQ,CAACG,OAAO,IAAI,EAAE;EAC9C,MAAMC,mBAAmB,GAAG,MAAML,aAAa,CAACM,mBAAmB,CAACF,OAAO,CAAC,CAAC;EAC7E,OAAO;IACLG,EAAE,EAAEJ,eAAe;IACnBK,MAAM,EAAEH;EACV,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { version as nativeVersionString } from 'theoplayer';
2
+ import manifest from '../../manifest.json';
3
+ export const sdkVersions = async () => {
4
+ const rnVersionString = manifest.version ?? '';
5
+ return {
6
+ rn: rnVersionString,
7
+ native: nativeVersionString
8
+ };
9
+ };
10
+ //# sourceMappingURL=Version.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["version","nativeVersionString","manifest","sdkVersions","rnVersionString","rn","native"],"sourceRoot":"../../../../src","sources":["internal/version/Version.web.ts"],"mappings":"AACA,SAASA,OAAO,IAAIC,mBAAmB,QAAQ,YAAY;AAC3D,OAAOC,QAAQ,MAAM,qBAAqB;AAE1C,OAAO,MAAMC,WAAW,GAAG,MAAAA,CAAA,KAAkC;EAC3D,MAAMC,eAAe,GAAGF,QAAQ,CAACF,OAAO,IAAI,EAAE;EAC9C,OAAO;IACLK,EAAE,EAAED,eAAe;IACnBE,MAAM,EAAEL;EACV,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"version":"8.7.0","buildDate":"2024-11-05T13:50:34.649Z"}
@@ -5,6 +5,7 @@ import type { AdDescription } from "../source/ads/Ads";
5
5
  import type { AdBreak } from "./AdBreak";
6
6
  import type { Ad } from "./Ad";
7
7
  import type { GoogleDAI } from "./GoogleDai";
8
+ import { Omid } from './Omid';
8
9
  export interface AdsAPI {
9
10
  /**
10
11
  * Whether a linear ad is currently playing.
@@ -43,5 +44,11 @@ export interface AdsAPI {
43
44
  * <br/> - Only available when the feature or extension `'google-dai'` is enabled.
44
45
  */
45
46
  readonly dai?: GoogleDAI;
47
+ /**
48
+ * The Omid API, which can be used to add as well as remove friendly video controls overlay obstructions.
49
+ *
50
+ * @since React Native THEOplayer SDK v8.7.0.
51
+ */
52
+ readonly omid?: Omid;
46
53
  }
47
54
  //# sourceMappingURL=AdsAPI.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AdsAPI.d.ts","sourceRoot":"","sources":["../../../../src/api/ads/AdsAPI.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAE5B;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAExC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAAC;IAElC;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;CAC1B"}
1
+ {"version":3,"file":"AdsAPI.d.ts","sourceRoot":"","sources":["../../../../src/api/ads/AdsAPI.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAE5B;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAExC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAAC;IAElC;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;IAEzB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;CACtB"}
@@ -0,0 +1,49 @@
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ export declare enum OmidFriendlyObstructionPurpose {
4
+ /**
5
+ * The video overlay is one of the video player's control button.
6
+ */
7
+ VIDEO_CONTROLS = "videoControls",
8
+ /**
9
+ * The video overlay is for the purpose of closing the advertisement.
10
+ */
11
+ CLOSE_AD = "closeAd",
12
+ /**
13
+ * The video overlay is transparent and will not affect viewability.
14
+ */
15
+ NOT_VISIBLE = "notVisible",
16
+ /**
17
+ * The video overlay is meant for other purposes.
18
+ */
19
+ OTHER = "other"
20
+ }
21
+ export interface OmidFriendlyObstruction {
22
+ /**
23
+ * The View of the friendly obstruction.
24
+ */
25
+ view: React.RefObject<View>;
26
+ /**
27
+ * The {@link OmidFriendlyObstructionPurpose} of the friendly obstruction.
28
+ */
29
+ purpose: OmidFriendlyObstructionPurpose;
30
+ /**
31
+ * The optional reason for the friendly obstruction.
32
+ */
33
+ reason?: string;
34
+ }
35
+ /**
36
+ * The Omid API, which can be used to add as well as remove friendly video controls overlay obstructions.
37
+ */
38
+ export interface Omid {
39
+ /**
40
+ * Adds an {@link OmidFriendlyObstruction}.
41
+ * @param obstruction
42
+ */
43
+ addFriendlyObstruction(obstruction: OmidFriendlyObstruction): void;
44
+ /**
45
+ * Removes all {@link OmidFriendlyObstruction}s.
46
+ */
47
+ removeAllFriendlyObstructions(): void;
48
+ }
49
+ //# sourceMappingURL=Omid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Omid.d.ts","sourceRoot":"","sources":["../../../../src/api/ads/Omid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,oBAAY,8BAA8B;IACxC;;OAEG;IACH,cAAc,kBAAkB;IAEhC;;OAEG;IACH,QAAQ,YAAY;IAEpB;;OAEG;IACH,WAAW,eAAe;IAE1B;;OAEG;IACH,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,OAAO,EAAE,8BAA8B,CAAC;IAExC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IAEnB;;;OAGG;IACH,sBAAsB,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAEnE;;OAEG;IACH,6BAA6B,IAAI,IAAI,CAAC;CACvC"}
@@ -6,4 +6,5 @@ export * from './CompanionAd';
6
6
  export * from './GoogleDai';
7
7
  export * from './GoogleImaAd';
8
8
  export * from './GoogleImaConfiguration';
9
+ export * from './Omid';
9
10
  //# sourceMappingURL=barrel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"barrel.d.ts","sourceRoot":"","sources":["../../../../src/api/ads/barrel.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"barrel.d.ts","sourceRoot":"","sources":["../../../../src/api/ads/barrel.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,QAAQ,CAAC"}
@@ -21,4 +21,5 @@ export * from './THEOplayerView';
21
21
  export * from './playback/barrel';
22
22
  export * from './player/barrel';
23
23
  export * from './presentation/barrel';
24
+ export * from './version/barrel';
24
25
  //# sourceMappingURL=barrel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"barrel.d.ts","sourceRoot":"","sources":["../../../src/api/barrel.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"barrel.d.ts","sourceRoot":"","sources":["../../../src/api/barrel.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
@@ -199,6 +199,8 @@ export interface THEOplayer extends EventDispatcher<PlayerEventMap> {
199
199
  readonly cast: CastAPI;
200
200
  /**
201
201
  * The player version.
202
+ *
203
+ * @deprecated use {@link sdkVersions} instead.
202
204
  */
203
205
  readonly version: PlayerVersion;
204
206
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"THEOplayer.d.ts","sourceRoot":"","sources":["../../../../src/api/player/THEOplayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"THEOplayer.d.ts","sourceRoot":"","sources":["../../../../src/api/player/THEOplayer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './SdkVersions';
2
+ //# sourceMappingURL=barrel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"barrel.d.ts","sourceRoot":"","sources":["../../../../src/api/version/barrel.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -3,4 +3,5 @@ export { THEOplayerView } from './internal/THEOplayerView';
3
3
  export { ContentProtectionRegistry } from './internal/drm/ContentProtectionRegistry';
4
4
  export { MediaCache } from './internal/cache/MediaCache';
5
5
  export { PlaybackSettings } from './internal/playback/PlaybackSettings';
6
+ export { sdkVersions } from './internal/version/Version';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import type { Ad, AdBreak, AdDescription, AdsAPI, GoogleDAI, THEOplayerView } from 'react-native-theoplayer';
2
+ import { Omid } from '../../../api/ads/Omid';
2
3
  export declare class THEOplayerNativeAdsAdapter implements AdsAPI {
3
4
  private _player;
4
5
  private readonly _dai;
6
+ private readonly _omid;
5
7
  constructor(_player: THEOplayerView);
6
8
  playing(): Promise<boolean>;
7
9
  skip(): void;
@@ -10,5 +12,6 @@ export declare class THEOplayerNativeAdsAdapter implements AdsAPI {
10
12
  scheduledAdBreaks(): Promise<AdBreak[]>;
11
13
  schedule(ad: AdDescription): void;
12
14
  get dai(): GoogleDAI | undefined;
15
+ get omid(): Omid | undefined;
13
16
  }
14
17
  //# sourceMappingURL=THEOplayerNativeAdsAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"THEOplayerNativeAdsAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/internal/adapter/ads/THEOplayerNativeAdsAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAM7G,qBAAa,0BAA2B,YAAW,MAAM;IAG3C,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;gBAEb,OAAO,EAAE,cAAc;IAI3C,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAI3B,IAAI,IAAI,IAAI;IAIZ,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIlC,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAI3B,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIvC,QAAQ,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI;IAIjC,IAAI,GAAG,IAAI,SAAS,GAAG,SAAS,CAE/B;CACF"}
1
+ {"version":3,"file":"THEOplayerNativeAdsAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/internal/adapter/ads/THEOplayerNativeAdsAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAI7G,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAI7C,qBAAa,0BAA2B,YAAW,MAAM;IAI3C,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAO;gBAET,OAAO,EAAE,cAAc;IAK3C,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAI3B,IAAI,IAAI,IAAI;IAIZ,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIlC,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAI3B,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIvC,QAAQ,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI;IAIjC,IAAI,GAAG,IAAI,SAAS,GAAG,SAAS,CAE/B;IAED,IAAI,IAAI,IAAI,IAAI,GAAG,SAAS,CAE3B;CACF"}
@@ -0,0 +1,9 @@
1
+ import type { THEOplayerView } from 'react-native-theoplayer';
2
+ import { Omid, OmidFriendlyObstruction } from '../../../api/ads/Omid';
3
+ export declare class THEOplayerNativeOmid implements Omid {
4
+ private readonly _player;
5
+ constructor(_player: THEOplayerView);
6
+ addFriendlyObstruction(obstruction: OmidFriendlyObstruction): void;
7
+ removeAllFriendlyObstructions(): void;
8
+ }
9
+ //# sourceMappingURL=THEOplayerNativeOmid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"THEOplayerNativeOmid.d.ts","sourceRoot":"","sources":["../../../../../src/internal/adapter/ads/THEOplayerNativeOmid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAItE,qBAAa,oBAAqB,YAAW,IAAI;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,cAAc;IAE3D,sBAAsB,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI;IAQlE,6BAA6B,IAAI,IAAI;CAGtC"}
@@ -1,5 +1,6 @@
1
1
  import type { Ad, AdBreak, AdDescription, AdsAPI, GoogleDAI } from 'react-native-theoplayer';
2
2
  import type { ChromelessPlayer } from 'theoplayer';
3
+ import { Omid } from '../../../api/ads/Omid';
3
4
  export declare class THEOplayerWebAdsAdapter implements AdsAPI {
4
5
  private readonly _player;
5
6
  private _dai;
@@ -11,5 +12,6 @@ export declare class THEOplayerWebAdsAdapter implements AdsAPI {
11
12
  scheduledAdBreaks(): Promise<AdBreak[]>;
12
13
  skip(): void;
13
14
  get dai(): GoogleDAI | undefined;
15
+ get omid(): Omid | undefined;
14
16
  }
15
17
  //# sourceMappingURL=THEOplayerWebAdsAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"THEOplayerWebAdsAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/internal/adapter/ads/THEOplayerWebAdsAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,qBAAa,uBAAwB,YAAW,MAAM;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,IAAI,CAAwB;gBAExB,MAAM,EAAE,gBAAgB;IAIpC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAKlC,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAK3B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAI3B,QAAQ,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI;IAIjC,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAKvC,IAAI,IAAI,IAAI;IAIZ,IAAI,GAAG,IAAI,SAAS,GAAG,SAAS,CAU/B;CACF"}
1
+ {"version":3,"file":"THEOplayerWebAdsAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/internal/adapter/ads/THEOplayerWebAdsAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAE7C,qBAAa,uBAAwB,YAAW,MAAM;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,IAAI,CAAwB;gBAExB,MAAM,EAAE,gBAAgB;IAIpC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAKlC,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAK3B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAI3B,QAAQ,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI;IAIjC,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAKvC,IAAI,IAAI,IAAI;IAIZ,IAAI,GAAG,IAAI,SAAS,GAAG,SAAS,CAU/B;IAED,IAAI,IAAI,IAAI,IAAI,GAAG,SAAS,CAI3B;CACF"}
@@ -0,0 +1,3 @@
1
+ import type { SdkVersions } from 'react-native-theoplayer';
2
+ export declare const sdkVersions: () => Promise<SdkVersions>;
3
+ //# sourceMappingURL=Version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Version.d.ts","sourceRoot":"","sources":["../../../../src/internal/version/Version.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,eAAO,MAAM,WAAW,QAAa,QAAQ,WAAW,CAOvD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { SdkVersions } from 'react-native-theoplayer';
2
+ export declare const sdkVersions: () => Promise<SdkVersions>;
3
+ //# sourceMappingURL=Version.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Version.web.d.ts","sourceRoot":"","sources":["../../../../src/internal/version/Version.web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAItD,eAAO,MAAM,WAAW,QAAa,QAAQ,WAAW,CAMvD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-theoplayer",
3
- "version": "8.6.0",
3
+ "version": "8.7.0",
4
4
  "description": "A THEOplayer video component for react-native.",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -29,7 +29,8 @@
29
29
  "prettier:fix": "prettier --write \"(src|example|e2e)/**/*.{js,jsx,ts,tsx}\"",
30
30
  "lint": "eslint \"**/*.{ts,tsx}\"",
31
31
  "lint:fix": "npm run lint -- --fix",
32
- "prepare": "bob build && husky",
32
+ "manifest": "node manifest.js > src/manifest.json",
33
+ "prepare": "npm run manifest && bob build && husky",
33
34
  "pods": "cd example && pod-install --quiet",
34
35
  "docs": "typedoc --treatWarningsAsErrors"
35
36
  },
@@ -5,6 +5,7 @@ import type { AdDescription } from "../source/ads/Ads";
5
5
  import type { AdBreak } from "./AdBreak";
6
6
  import type { Ad } from "./Ad";
7
7
  import type { GoogleDAI } from "./GoogleDai";
8
+ import { Omid } from './Omid';
8
9
 
9
10
  export interface AdsAPI {
10
11
  /**
@@ -50,4 +51,11 @@ export interface AdsAPI {
50
51
  * <br/> - Only available when the feature or extension `'google-dai'` is enabled.
51
52
  */
52
53
  readonly dai?: GoogleDAI;
54
+
55
+ /**
56
+ * The Omid API, which can be used to add as well as remove friendly video controls overlay obstructions.
57
+ *
58
+ * @since React Native THEOplayer SDK v8.7.0.
59
+ */
60
+ readonly omid?: Omid;
53
61
  }
@@ -0,0 +1,58 @@
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+
4
+ export enum OmidFriendlyObstructionPurpose {
5
+ /**
6
+ * The video overlay is one of the video player's control button.
7
+ */
8
+ VIDEO_CONTROLS = 'videoControls',
9
+
10
+ /**
11
+ * The video overlay is for the purpose of closing the advertisement.
12
+ */
13
+ CLOSE_AD = 'closeAd',
14
+
15
+ /**
16
+ * The video overlay is transparent and will not affect viewability.
17
+ */
18
+ NOT_VISIBLE = 'notVisible',
19
+
20
+ /**
21
+ * The video overlay is meant for other purposes.
22
+ */
23
+ OTHER = 'other',
24
+ }
25
+
26
+ export interface OmidFriendlyObstruction {
27
+ /**
28
+ * The View of the friendly obstruction.
29
+ */
30
+ view: React.RefObject<View>;
31
+
32
+ /**
33
+ * The {@link OmidFriendlyObstructionPurpose} of the friendly obstruction.
34
+ */
35
+ purpose: OmidFriendlyObstructionPurpose;
36
+
37
+ /**
38
+ * The optional reason for the friendly obstruction.
39
+ */
40
+ reason?: string;
41
+ }
42
+
43
+ /**
44
+ * The Omid API, which can be used to add as well as remove friendly video controls overlay obstructions.
45
+ */
46
+ export interface Omid {
47
+
48
+ /**
49
+ * Adds an {@link OmidFriendlyObstruction}.
50
+ * @param obstruction
51
+ */
52
+ addFriendlyObstruction(obstruction: OmidFriendlyObstruction): void;
53
+
54
+ /**
55
+ * Removes all {@link OmidFriendlyObstruction}s.
56
+ */
57
+ removeAllFriendlyObstructions(): void;
58
+ }
@@ -6,3 +6,4 @@ export * from './CompanionAd';
6
6
  export * from './GoogleDai';
7
7
  export * from './GoogleImaAd';
8
8
  export * from './GoogleImaConfiguration';
9
+ export * from './Omid';
package/src/api/barrel.ts CHANGED
@@ -21,3 +21,4 @@ export * from './THEOplayerView';
21
21
  export * from './playback/barrel';
22
22
  export * from './player/barrel';
23
23
  export * from './presentation/barrel';
24
+ export * from './version/barrel';
@@ -235,6 +235,8 @@ export interface THEOplayer extends EventDispatcher<PlayerEventMap> {
235
235
 
236
236
  /**
237
237
  * The player version.
238
+ *
239
+ * @deprecated use {@link sdkVersions} instead.
238
240
  */
239
241
  readonly version: PlayerVersion;
240
242
 
@@ -0,0 +1 @@
1
+ export * from './SdkVersions';
package/src/index.tsx CHANGED
@@ -3,3 +3,4 @@ export { THEOplayerView } from './internal/THEOplayerView';
3
3
  export { ContentProtectionRegistry } from './internal/drm/ContentProtectionRegistry';
4
4
  export { MediaCache } from './internal/cache/MediaCache';
5
5
  export { PlaybackSettings } from './internal/playback/PlaybackSettings';
6
+ export { sdkVersions } from './internal/version/Version';
@@ -1,14 +1,18 @@
1
1
  import type { Ad, AdBreak, AdDescription, AdsAPI, GoogleDAI, THEOplayerView } from 'react-native-theoplayer';
2
2
  import { NativeModules } from 'react-native';
3
3
  import { THEOplayerNativeGoogleDAI } from './THEOplayerNativeGoogleDAI';
4
+ import { THEOplayerNativeOmid } from './THEOplayerNativeOmid';
5
+ import { Omid } from '../../../api/ads/Omid';
4
6
 
5
7
  const NativeAdsModule = NativeModules.THEORCTAdsModule;
6
8
 
7
9
  export class THEOplayerNativeAdsAdapter implements AdsAPI {
8
10
  private readonly _dai: GoogleDAI;
11
+ private readonly _omid: Omid;
9
12
 
10
13
  constructor(private _player: THEOplayerView) {
11
14
  this._dai = new THEOplayerNativeGoogleDAI(this._player);
15
+ this._omid = new THEOplayerNativeOmid(this._player);
12
16
  }
13
17
 
14
18
  playing(): Promise<boolean> {
@@ -38,4 +42,8 @@ export class THEOplayerNativeAdsAdapter implements AdsAPI {
38
42
  get dai(): GoogleDAI | undefined {
39
43
  return this._dai;
40
44
  }
45
+
46
+ get omid(): Omid | undefined {
47
+ return this._omid;
48
+ }
41
49
  }
@@ -0,0 +1,21 @@
1
+ import type { THEOplayerView } from 'react-native-theoplayer';
2
+ import { findNodeHandle, NativeModules } from 'react-native';
3
+ import { Omid, OmidFriendlyObstruction } from '../../../api/ads/Omid';
4
+
5
+ const NativeAdsModule = NativeModules.THEORCTAdsModule;
6
+
7
+ export class THEOplayerNativeOmid implements Omid {
8
+ public constructor(private readonly _player: THEOplayerView) {}
9
+
10
+ addFriendlyObstruction(obstruction: OmidFriendlyObstruction): void {
11
+ NativeAdsModule.addFriendlyObstruction(this._player.nativeHandle, {
12
+ view: findNodeHandle(obstruction.view.current),
13
+ purpose: obstruction.purpose,
14
+ reason: obstruction.reason,
15
+ });
16
+ }
17
+
18
+ removeAllFriendlyObstructions(): void {
19
+ NativeAdsModule.removeAllFriendlyObstructions(this._player.nativeHandle);
20
+ }
21
+ }