react-native-gemius-plugin 1.7.4 → 2.0.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 (128) hide show
  1. package/LICENSE +20 -0
  2. package/LRTGemiusPlugin.podspec +21 -0
  3. package/README.md +23 -30
  4. package/android/build.gradle +74 -69
  5. package/android/src/main/AndroidManifest.xml +1 -3
  6. package/android/src/main/java/com/gemiusplugin/LRTGemiusPluginModule.kt +161 -0
  7. package/android/src/main/java/com/gemiusplugin/LRTGemiusPluginPackage.kt +31 -0
  8. package/ios/LRTGemiusPlugin.h +5 -0
  9. package/ios/LRTGemiusPlugin.mm +179 -0
  10. package/lib/module/NativeLRTGemiusPlugin.js +5 -0
  11. package/lib/module/NativeLRTGemiusPlugin.js.map +1 -0
  12. package/{index.js → lib/module/index.js} +16 -29
  13. package/lib/module/index.js.map +1 -0
  14. package/lib/module/package.json +1 -0
  15. package/lib/typescript/package.json +1 -0
  16. package/lib/typescript/src/NativeLRTGemiusPlugin.d.ts +22 -0
  17. package/lib/typescript/src/NativeLRTGemiusPlugin.d.ts.map +1 -0
  18. package/lib/typescript/src/index.d.ts +22 -0
  19. package/lib/typescript/src/index.d.ts.map +1 -0
  20. package/package.json +156 -17
  21. package/src/NativeLRTGemiusPlugin.ts +48 -0
  22. package/src/index.tsx +105 -0
  23. package/.gitattributes +0 -1
  24. package/android/.classpath +0 -6
  25. package/android/.gradle/9.0.0/checksums/checksums.lock +0 -0
  26. package/android/.gradle/9.0.0/executionHistory/executionHistory.lock +0 -0
  27. package/android/.gradle/9.0.0/fileChanges/last-build.bin +0 -0
  28. package/android/.gradle/9.0.0/fileHashes/fileHashes.bin +0 -0
  29. package/android/.gradle/9.0.0/fileHashes/fileHashes.lock +0 -0
  30. package/android/.gradle/9.0.0/fileHashes/resourceHashesCache.bin +0 -0
  31. package/android/.gradle/9.0.0/gc.properties +0 -0
  32. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  33. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  34. package/android/.gradle/config.properties +0 -2
  35. package/android/.gradle/file-system.probe +0 -0
  36. package/android/.gradle/gradle.properties +0 -43
  37. package/android/.gradle/noVersion/buildLogic.lock +0 -0
  38. package/android/.gradle/vcs-1/gc.properties +0 -0
  39. package/android/.idea/AndroidProjectSystem.xml +0 -6
  40. package/android/.idea/caches/deviceStreaming.xml +0 -1414
  41. package/android/.idea/compiler.xml +0 -19
  42. package/android/.idea/copilot.data.migration.agent.xml +0 -6
  43. package/android/.idea/gradle.xml +0 -18
  44. package/android/.idea/jarRepositories.xml +0 -55
  45. package/android/.idea/kotlinc.xml +0 -6
  46. package/android/.idea/migrations.xml +0 -10
  47. package/android/.idea/misc.xml +0 -10
  48. package/android/.idea/modules/android.androidTest.iml +0 -15
  49. package/android/.idea/modules/android.iml +0 -21
  50. package/android/.idea/modules/android.main.iml +0 -15
  51. package/android/.idea/modules/android.unitTest.iml +0 -15
  52. package/android/.idea/modules.xml +0 -11
  53. package/android/.idea/runConfigurations.xml +0 -17
  54. package/android/.idea/vcs.xml +0 -6
  55. package/android/.project +0 -34
  56. package/android/.settings/org.eclipse.buildship.core.prefs +0 -13
  57. package/android/README.md +0 -14
  58. package/android/build/reports/problems/problems-report.html +0 -663
  59. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  60. package/android/gradle/wrapper/gradle-wrapper.properties +0 -7
  61. package/android/gradle.properties +0 -39
  62. package/android/gradlew +0 -251
  63. package/android/gradlew.bat +0 -99
  64. package/android/local.properties +0 -8
  65. package/android/src/main/java/com/reactlibrary/GemiusPluginModule.java +0 -170
  66. package/android/src/main/java/com/reactlibrary/GemiusPluginPackage.java +0 -20
  67. package/index.d.ts +0 -27
  68. package/ios/GemiusPlugin.h +0 -5
  69. package/ios/GemiusPlugin.m +0 -163
  70. package/ios/GemiusPlugin.xcodeproj/project.pbxproj +0 -299
  71. package/ios/GemiusPlugin.xcodeproj/xcshareddata/xcschemes/GemiusPlugin.xcscheme +0 -67
  72. package/ios/GemiusPlugin.xcworkspace/contents.xcworkspacedata +0 -7
  73. package/ios/GemiusPlugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  74. package/ios/GemiusPlugin.xcworkspace/xcuserdata/kestasvenslauskas.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  75. package/ios/GemiusSDK.xcframework/Info.plist +0 -44
  76. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/GemiusSDK +0 -0
  77. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/AdData.h +0 -23
  78. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/AdDefine.h +0 -16
  79. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/AdOceanConfig.h +0 -14
  80. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/AudienceConfig.h +0 -19
  81. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/AudienceEvent.h +0 -18
  82. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/BaseConfig.h +0 -19
  83. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/BaseEvent.h +0 -37
  84. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/Config.h +0 -44
  85. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/ContentData.h +0 -15
  86. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/EventAdData.h +0 -7
  87. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/EventData.h +0 -14
  88. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/EventProgramData.h +0 -7
  89. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/GEMBillboardAd.h +0 -43
  90. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/GEMFullScreenAd.h +0 -44
  91. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/GemiusSDK.h +0 -34
  92. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/NetpanelConfig.h +0 -17
  93. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/NetpanelEvent.h +0 -23
  94. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/Player.h +0 -40
  95. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/PlayerData.h +0 -8
  96. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Headers/ProgramData.h +0 -41
  97. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Info.plist +0 -0
  98. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/Modules/module.modulemap +0 -6
  99. package/ios/GemiusSDK.xcframework/ios-arm64/GemiusSDK.framework/PrivacyInfo.xcprivacy +0 -48
  100. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/GemiusSDK +0 -0
  101. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/AdData.h +0 -23
  102. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/AdDefine.h +0 -16
  103. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/AdOceanConfig.h +0 -14
  104. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/AudienceConfig.h +0 -19
  105. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/AudienceEvent.h +0 -18
  106. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/BaseConfig.h +0 -19
  107. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/BaseEvent.h +0 -37
  108. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/Config.h +0 -44
  109. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/ContentData.h +0 -15
  110. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/EventAdData.h +0 -7
  111. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/EventData.h +0 -14
  112. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/EventProgramData.h +0 -7
  113. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/GEMBillboardAd.h +0 -43
  114. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/GEMFullScreenAd.h +0 -44
  115. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/GemiusSDK.h +0 -34
  116. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/NetpanelConfig.h +0 -17
  117. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/NetpanelEvent.h +0 -23
  118. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/Player.h +0 -40
  119. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/PlayerData.h +0 -8
  120. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Headers/ProgramData.h +0 -41
  121. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Info.plist +0 -0
  122. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/Modules/module.modulemap +0 -6
  123. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/PrivacyInfo.xcprivacy +0 -48
  124. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/_CodeSignature/CodeDirectory +0 -0
  125. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/_CodeSignature/CodeRequirements +0 -0
  126. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/_CodeSignature/CodeResources +0 -344
  127. package/ios/GemiusSDK.xcframework/ios-arm64_x86_64-simulator/GemiusSDK.framework/_CodeSignature/CodeSignature +0 -0
  128. package/react-native-gemius-plugin.podspec +0 -30
@@ -1,7 +1,6 @@
1
- import {NativeModules} from 'react-native';
2
-
3
- const {GemiusPlugin} = NativeModules;
1
+ "use strict";
4
2
 
3
+ import NativeLRTGemiusPlugin from "./NativeLRTGemiusPlugin.js";
5
4
  const PROGRAM_TYPE_VIDEO = 'video';
6
5
  const PROGRAM_TYPE_AUDIO = 'audio';
7
6
 
@@ -9,58 +8,46 @@ const PROGRAM_TYPE_AUDIO = 'audio';
9
8
  * Duration used for live streams
10
9
  */
11
10
  export const DURATION_LIVE_STREAM = -1;
12
-
13
11
  export default class Gemius {
14
12
  static setAppInfo(app, version, gemiusHitCollectorHost, gemiusPrismIdentifier) {
15
- GemiusPlugin.setAppInfo(app, version, gemiusHitCollectorHost, gemiusPrismIdentifier);
13
+ NativeLRTGemiusPlugin.setAppInfo(app, version, gemiusHitCollectorHost, gemiusPrismIdentifier);
16
14
  }
17
-
18
15
  static setPlayerInfo(playerId, serverHost, accountId) {
19
- GemiusPlugin.setPlayerInfo(playerId, serverHost, accountId);
16
+ NativeLRTGemiusPlugin.setPlayerInfo(playerId, serverHost, accountId);
20
17
  }
21
-
22
18
  static setProgramData(clipId, name, duration, isVideo) {
23
19
  const type = isVideo === true ? PROGRAM_TYPE_VIDEO : PROGRAM_TYPE_AUDIO;
24
- GemiusPlugin.setProgramData(clipId, name, duration, type);
20
+ NativeLRTGemiusPlugin.setProgramData(clipId, name, duration, type);
25
21
  }
26
-
27
22
  static sendPlay(clipId, offset) {
28
- GemiusPlugin.sendPlay(clipId, offset);
23
+ NativeLRTGemiusPlugin.sendPlay(clipId, offset);
29
24
  }
30
-
31
25
  static sendPause(clipId, offset) {
32
- GemiusPlugin.sendPause(clipId, offset);
26
+ NativeLRTGemiusPlugin.sendPause(clipId, offset);
33
27
  }
34
-
35
28
  static sendBuffer(clipId, offset) {
36
- GemiusPlugin.sendBuffer(clipId, offset);
29
+ NativeLRTGemiusPlugin.sendBuffer(clipId, offset);
37
30
  }
38
-
39
31
  static sendStop(clipId, offset) {
40
- GemiusPlugin.sendStop(clipId, offset);
32
+ NativeLRTGemiusPlugin.sendStop(clipId, offset);
41
33
  }
42
-
43
34
  static sendComplete(clipId, offset) {
44
- GemiusPlugin.sendComplete(clipId, offset);
35
+ NativeLRTGemiusPlugin.sendComplete(clipId, offset);
45
36
  }
46
-
47
37
  static sendClose(clipId, offset) {
48
- GemiusPlugin.sendClose(clipId, offset);
38
+ NativeLRTGemiusPlugin.sendClose(clipId, offset);
49
39
  }
50
-
51
40
  static sendSeek(clipId, offset) {
52
- GemiusPlugin.sendSeek(clipId, offset);
41
+ NativeLRTGemiusPlugin.sendSeek(clipId, offset);
53
42
  }
54
-
55
43
  static sendPartialPageViewedEvent(gemiusPrismIdentifier, extraParameters = null) {
56
- GemiusPlugin.sendPartialPageViewedEvent(gemiusPrismIdentifier, extraParameters);
44
+ NativeLRTGemiusPlugin.sendPartialPageViewedEvent(gemiusPrismIdentifier, extraParameters);
57
45
  }
58
-
59
46
  static sendPageViewedEvent(gemiusPrismIdentifier, extraParameters = null) {
60
- GemiusPlugin.sendPageViewedEvent(gemiusPrismIdentifier, extraParameters);
47
+ NativeLRTGemiusPlugin.sendPageViewedEvent(gemiusPrismIdentifier, extraParameters);
61
48
  }
62
-
63
49
  static sendActionEvent(gemiusPrismIdentifier, extraParameters = null) {
64
- GemiusPlugin.sendActionEvent(gemiusPrismIdentifier, extraParameters);
50
+ NativeLRTGemiusPlugin.sendActionEvent(gemiusPrismIdentifier, extraParameters);
65
51
  }
66
52
  }
53
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NativeLRTGemiusPlugin","PROGRAM_TYPE_VIDEO","PROGRAM_TYPE_AUDIO","DURATION_LIVE_STREAM","Gemius","setAppInfo","app","version","gemiusHitCollectorHost","gemiusPrismIdentifier","setPlayerInfo","playerId","serverHost","accountId","setProgramData","clipId","name","duration","isVideo","type","sendPlay","offset","sendPause","sendBuffer","sendStop","sendComplete","sendClose","sendSeek","sendPartialPageViewedEvent","extraParameters","sendPageViewedEvent","sendActionEvent"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,qBAAqB,MAErB,4BAAyB;AAEhC,MAAMC,kBAAkB,GAAG,OAAO;AAClC,MAAMC,kBAAkB,GAAG,OAAO;;AAElC;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAG,CAAC,CAAC;AAItC,eAAe,MAAMC,MAAM,CAAC;EAC1B,OAAOC,UAAUA,CACfC,GAAW,EACXC,OAAe,EACfC,sBAA8B,EAC9BC,qBAA6B,EACvB;IACNT,qBAAqB,CAACK,UAAU,CAC9BC,GAAG,EACHC,OAAO,EACPC,sBAAsB,EACtBC,qBACF,CAAC;EACH;EAEA,OAAOC,aAAaA,CAClBC,QAAgB,EAChBC,UAAkB,EAClBC,SAAiB,EACX;IACNb,qBAAqB,CAACU,aAAa,CAACC,QAAQ,EAAEC,UAAU,EAAEC,SAAS,CAAC;EACtE;EAEA,OAAOC,cAAcA,CACnBC,MAAc,EACdC,IAAY,EACZC,QAAgB,EAChBC,OAAgB,EACV;IACN,MAAMC,IAAI,GAAGD,OAAO,KAAK,IAAI,GAAGjB,kBAAkB,GAAGC,kBAAkB;IACvEF,qBAAqB,CAACc,cAAc,CAACC,MAAM,EAAEC,IAAI,EAAEC,QAAQ,EAAEE,IAAI,CAAC;EACpE;EAEA,OAAOC,QAAQA,CAACL,MAAc,EAAEM,MAAc,EAAQ;IACpDrB,qBAAqB,CAACoB,QAAQ,CAACL,MAAM,EAAEM,MAAM,CAAC;EAChD;EAEA,OAAOC,SAASA,CAACP,MAAc,EAAEM,MAAc,EAAQ;IACrDrB,qBAAqB,CAACsB,SAAS,CAACP,MAAM,EAAEM,MAAM,CAAC;EACjD;EAEA,OAAOE,UAAUA,CAACR,MAAc,EAAEM,MAAc,EAAQ;IACtDrB,qBAAqB,CAACuB,UAAU,CAACR,MAAM,EAAEM,MAAM,CAAC;EAClD;EAEA,OAAOG,QAAQA,CAACT,MAAc,EAAEM,MAAc,EAAQ;IACpDrB,qBAAqB,CAACwB,QAAQ,CAACT,MAAM,EAAEM,MAAM,CAAC;EAChD;EAEA,OAAOI,YAAYA,CAACV,MAAc,EAAEM,MAAc,EAAQ;IACxDrB,qBAAqB,CAACyB,YAAY,CAACV,MAAM,EAAEM,MAAM,CAAC;EACpD;EAEA,OAAOK,SAASA,CAACX,MAAc,EAAEM,MAAc,EAAQ;IACrDrB,qBAAqB,CAAC0B,SAAS,CAACX,MAAM,EAAEM,MAAM,CAAC;EACjD;EAEA,OAAOM,QAAQA,CAACZ,MAAc,EAAEM,MAAc,EAAQ;IACpDrB,qBAAqB,CAAC2B,QAAQ,CAACZ,MAAM,EAAEM,MAAM,CAAC;EAChD;EAEA,OAAOO,0BAA0BA,CAC/BnB,qBAA6B,EAC7BoB,eAAoC,GAAG,IAAI,EACrC;IACN7B,qBAAqB,CAAC4B,0BAA0B,CAC9CnB,qBAAqB,EACrBoB,eACF,CAAC;EACH;EAEA,OAAOC,mBAAmBA,CACxBrB,qBAA6B,EAC7BoB,eAAoC,GAAG,IAAI,EACrC;IACN7B,qBAAqB,CAAC8B,mBAAmB,CACvCrB,qBAAqB,EACrBoB,eACF,CAAC;EACH;EAEA,OAAOE,eAAeA,CACpBtB,qBAA6B,EAC7BoB,eAAoC,GAAG,IAAI,EACrC;IACN7B,qBAAqB,CAAC+B,eAAe,CACnCtB,qBAAqB,EACrBoB,eACF,CAAC;EACH;AACF","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,22 @@
1
+ import { type TurboModule } from 'react-native';
2
+ export type GemiusParams = {
3
+ [key: string]: string | number | boolean | undefined | null;
4
+ };
5
+ export interface Spec extends TurboModule {
6
+ setAppInfo(app: string, version: string, gemiusHitCollectorHost: string, gemiusPrismIdentifier: string): void;
7
+ setPlayerInfo(playerId: string, serverHost: string, accountId: string): void;
8
+ setProgramData(clipId: string, name: string, duration: number, type: string): void;
9
+ sendPlay(clipId: string, offset: number): void;
10
+ sendPause(clipId: string, offset: number): void;
11
+ sendBuffer(clipId: string, offset: number): void;
12
+ sendStop(clipId: string, offset: number): void;
13
+ sendComplete(clipId: string, offset: number): void;
14
+ sendClose(clipId: string, offset: number): void;
15
+ sendSeek(clipId: string, offset: number): void;
16
+ sendPartialPageViewedEvent(gemiusPrismIdentifier: string, extraParameters: Object | null): void;
17
+ sendPageViewedEvent(gemiusPrismIdentifier: string, extraParameters: Object | null): void;
18
+ sendActionEvent(gemiusPrismIdentifier: string, extraParameters: Object | null): void;
19
+ }
20
+ declare const _default: any;
21
+ export default _default;
22
+ //# sourceMappingURL=NativeLRTGemiusPlugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeLRTGemiusPlugin.d.ts","sourceRoot":"","sources":["../../../src/NativeLRTGemiusPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;CAC7D,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,CACR,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,EAC9B,qBAAqB,EAAE,MAAM,GAC5B,IAAI,CAAC;IAER,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7E,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,GACX,IAAI,CAAC;IAER,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/C,0BAA0B,CACxB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,GAC7B,IAAI,CAAC;IAER,mBAAmB,CACjB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,GAC7B,IAAI,CAAC;IAER,eAAe,CACb,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,GAC7B,IAAI,CAAC;CACT;;AAED,wBAAyE"}
@@ -0,0 +1,22 @@
1
+ import { type GemiusParams } from './NativeLRTGemiusPlugin';
2
+ /**
3
+ * Duration used for live streams
4
+ */
5
+ export declare const DURATION_LIVE_STREAM = -1;
6
+ export { type GemiusParams };
7
+ export default class Gemius {
8
+ static setAppInfo(app: string, version: string, gemiusHitCollectorHost: string, gemiusPrismIdentifier: string): void;
9
+ static setPlayerInfo(playerId: string, serverHost: string, accountId: string): void;
10
+ static setProgramData(clipId: string, name: string, duration: number, isVideo: boolean): void;
11
+ static sendPlay(clipId: string, offset: number): void;
12
+ static sendPause(clipId: string, offset: number): void;
13
+ static sendBuffer(clipId: string, offset: number): void;
14
+ static sendStop(clipId: string, offset: number): void;
15
+ static sendComplete(clipId: string, offset: number): void;
16
+ static sendClose(clipId: string, offset: number): void;
17
+ static sendSeek(clipId: string, offset: number): void;
18
+ static sendPartialPageViewedEvent(gemiusPrismIdentifier: string, extraParameters?: GemiusParams | null): void;
19
+ static sendPageViewedEvent(gemiusPrismIdentifier: string, extraParameters?: GemiusParams | null): void;
20
+ static sendActionEvent(gemiusPrismIdentifier: string, extraParameters?: GemiusParams | null): void;
21
+ }
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAA8B,EAC5B,KAAK,YAAY,EAClB,MAAM,yBAAyB,CAAC;AAKjC;;GAEG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,OAAO,EAAE,KAAK,YAAY,EAAE,CAAC;AAE7B,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,MAAM,CAAC,UAAU,CACf,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,EAC9B,qBAAqB,EAAE,MAAM,GAC5B,IAAI;IASP,MAAM,CAAC,aAAa,CAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,IAAI;IAIP,MAAM,CAAC,cAAc,CACnB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,GACf,IAAI;IAKP,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIrD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAItD,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIrD,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIzD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAItD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIrD,MAAM,CAAC,0BAA0B,CAC/B,qBAAqB,EAAE,MAAM,EAC7B,eAAe,GAAE,YAAY,GAAG,IAAW,GAC1C,IAAI;IAOP,MAAM,CAAC,mBAAmB,CACxB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,GAAE,YAAY,GAAG,IAAW,GAC1C,IAAI;IAOP,MAAM,CAAC,eAAe,CACpB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,GAAE,YAAY,GAAG,IAAW,GAC1C,IAAI;CAMR"}
package/package.json CHANGED
@@ -1,30 +1,169 @@
1
1
  {
2
2
  "name": "react-native-gemius-plugin",
3
- "title": "React Native Gemius Plugin",
4
- "version": "1.7.4",
5
- "description": "Gemius plugin for react-native",
6
- "main": "index.js",
7
- "types": "index.d.ts",
8
- "scripts": {
9
- "test": "echo \"Error: no test specified\" && exit 1"
3
+ "version": "2.0.0",
4
+ "description": "React Native Gemius plugin",
5
+ "main": "./lib/module/index.js",
6
+ "types": "./lib/typescript/src/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "source": "./src/index.tsx",
10
+ "types": "./lib/typescript/src/index.d.ts",
11
+ "default": "./lib/module/index.js"
12
+ },
13
+ "./package.json": "./package.json"
10
14
  },
11
- "repository": {
12
- "type": "git",
13
- "url": "git+https://github.com/KestasVenslauskas/react-native-gemius-plugin.git",
14
- "baseUrl": "https://github.com/KestasVenslauskas/react-native-gemius-plugin"
15
+ "files": [
16
+ "src",
17
+ "lib",
18
+ "android",
19
+ "ios",
20
+ "cpp",
21
+ "*.podspec",
22
+ "react-native.config.js",
23
+ "!ios/build",
24
+ "!android/build",
25
+ "!android/gradle",
26
+ "!android/gradlew",
27
+ "!android/gradlew.bat",
28
+ "!android/local.properties",
29
+ "!**/__tests__",
30
+ "!**/__fixtures__",
31
+ "!**/__mocks__",
32
+ "!**/.*"
33
+ ],
34
+ "scripts": {
35
+ "example": "yarn workspace react-native-gemius-plugin-example",
36
+ "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib",
37
+ "prepare": "bob build",
38
+ "typecheck": "tsc",
39
+ "lint": "eslint \"**/*.{js,ts,tsx}\"",
40
+ "test": "jest",
41
+ "release": "release-it --only-version"
15
42
  },
16
43
  "keywords": [
17
- "react-native"
44
+ "react-native",
45
+ "ios",
46
+ "android"
18
47
  ],
19
- "author": {
20
- "name": "Kestas Venslauskas",
21
- "email": "kestas.venslauskas@gmail.com"
48
+ "repository": {
49
+ "type": "git",
50
+ "url": "git+https://github.com/KestasVenslauskas/react-native-gemius-plugin.git"
22
51
  },
52
+ "author": "Kestas Venslauskas <kestas.venslauskas@gmail.com> (https://github.com/KestasVenslauskas)",
23
53
  "license": "MIT",
24
- "licenseFilename": "LICENSE",
25
- "readmeFilename": "README.md",
54
+ "bugs": {
55
+ "url": "https://github.com/KestasVenslauskas/react-native-gemius-plugin/issues"
56
+ },
57
+ "homepage": "https://github.com/KestasVenslauskas/react-native-gemius-plugin#readme",
58
+ "publishConfig": {
59
+ "registry": "https://registry.npmjs.org/"
60
+ },
61
+ "devDependencies": {
62
+ "@commitlint/config-conventional": "^19.8.1",
63
+ "@eslint/compat": "^1.3.2",
64
+ "@eslint/eslintrc": "^3.3.1",
65
+ "@eslint/js": "^9.35.0",
66
+ "@react-native/babel-preset": "0.83.0",
67
+ "@react-native/eslint-config": "0.83.0",
68
+ "@release-it/conventional-changelog": "^10.0.1",
69
+ "@types/jest": "^29.5.14",
70
+ "@types/react": "^19.2.0",
71
+ "commitlint": "^19.8.1",
72
+ "del-cli": "^6.0.0",
73
+ "eslint": "^9.35.0",
74
+ "eslint-config-prettier": "^10.1.8",
75
+ "eslint-plugin-prettier": "^5.5.4",
76
+ "jest": "^29.7.0",
77
+ "lefthook": "^2.0.3",
78
+ "prettier": "^2.8.8",
79
+ "react": "19.2.0",
80
+ "react-native": "0.83.0",
81
+ "react-native-builder-bob": "^0.40.18",
82
+ "release-it": "^19.0.4",
83
+ "turbo": "^2.5.6",
84
+ "typescript": "^5.9.2"
85
+ },
26
86
  "peerDependencies": {
27
87
  "react": "*",
28
88
  "react-native": "*"
89
+ },
90
+ "workspaces": [
91
+ "example"
92
+ ],
93
+ "packageManager": "yarn@4.11.0",
94
+ "react-native-builder-bob": {
95
+ "source": "src",
96
+ "output": "lib",
97
+ "targets": [
98
+ [
99
+ "module",
100
+ {
101
+ "esm": true
102
+ }
103
+ ],
104
+ [
105
+ "typescript",
106
+ {
107
+ "project": "tsconfig.build.json"
108
+ }
109
+ ]
110
+ ]
111
+ },
112
+ "codegenConfig": {
113
+ "name": "LRTGemiusPluginSpec",
114
+ "type": "modules",
115
+ "jsSrcsDir": "src",
116
+ "android": {
117
+ "javaPackageName": "com.gemiusplugin"
118
+ }
119
+ },
120
+ "prettier": {
121
+ "quoteProps": "consistent",
122
+ "singleQuote": true,
123
+ "tabWidth": 2,
124
+ "trailingComma": "es5",
125
+ "useTabs": false
126
+ },
127
+ "jest": {
128
+ "preset": "react-native",
129
+ "modulePathIgnorePatterns": [
130
+ "<rootDir>/example/node_modules",
131
+ "<rootDir>/lib/"
132
+ ]
133
+ },
134
+ "commitlint": {
135
+ "extends": [
136
+ "@commitlint/config-conventional"
137
+ ]
138
+ },
139
+ "release-it": {
140
+ "git": {
141
+ "commitMessage": "chore: release ${version}",
142
+ "tagName": "v${version}"
143
+ },
144
+ "npm": {
145
+ "publish": true
146
+ },
147
+ "github": {
148
+ "release": true
149
+ },
150
+ "plugins": {
151
+ "@release-it/conventional-changelog": {
152
+ "preset": {
153
+ "name": "angular"
154
+ }
155
+ }
156
+ }
157
+ },
158
+ "create-react-native-library": {
159
+ "type": "turbo-module",
160
+ "languages": "kotlin-objc",
161
+ "tools": [
162
+ "eslint",
163
+ "jest",
164
+ "lefthook",
165
+ "release-it"
166
+ ],
167
+ "version": "0.57.2"
29
168
  }
30
169
  }
@@ -0,0 +1,48 @@
1
+ import { TurboModuleRegistry, type TurboModule } from 'react-native';
2
+
3
+ export type GemiusParams = {
4
+ [key: string]: string | number | boolean | undefined | null;
5
+ };
6
+
7
+ export interface Spec extends TurboModule {
8
+ setAppInfo(
9
+ app: string,
10
+ version: string,
11
+ gemiusHitCollectorHost: string,
12
+ gemiusPrismIdentifier: string
13
+ ): void;
14
+
15
+ setPlayerInfo(playerId: string, serverHost: string, accountId: string): void;
16
+
17
+ setProgramData(
18
+ clipId: string,
19
+ name: string,
20
+ duration: number,
21
+ type: string
22
+ ): void;
23
+
24
+ sendPlay(clipId: string, offset: number): void;
25
+ sendPause(clipId: string, offset: number): void;
26
+ sendBuffer(clipId: string, offset: number): void;
27
+ sendStop(clipId: string, offset: number): void;
28
+ sendComplete(clipId: string, offset: number): void;
29
+ sendClose(clipId: string, offset: number): void;
30
+ sendSeek(clipId: string, offset: number): void;
31
+
32
+ sendPartialPageViewedEvent(
33
+ gemiusPrismIdentifier: string,
34
+ extraParameters: Object | null
35
+ ): void;
36
+
37
+ sendPageViewedEvent(
38
+ gemiusPrismIdentifier: string,
39
+ extraParameters: Object | null
40
+ ): void;
41
+
42
+ sendActionEvent(
43
+ gemiusPrismIdentifier: string,
44
+ extraParameters: Object | null
45
+ ): void;
46
+ }
47
+
48
+ export default TurboModuleRegistry.getEnforcing<Spec>('LRTGemiusPlugin');
package/src/index.tsx ADDED
@@ -0,0 +1,105 @@
1
+ import NativeLRTGemiusPlugin, {
2
+ type GemiusParams,
3
+ } from './NativeLRTGemiusPlugin';
4
+
5
+ const PROGRAM_TYPE_VIDEO = 'video';
6
+ const PROGRAM_TYPE_AUDIO = 'audio';
7
+
8
+ /**
9
+ * Duration used for live streams
10
+ */
11
+ export const DURATION_LIVE_STREAM = -1;
12
+
13
+ export { type GemiusParams };
14
+
15
+ export default class Gemius {
16
+ static setAppInfo(
17
+ app: string,
18
+ version: string,
19
+ gemiusHitCollectorHost: string,
20
+ gemiusPrismIdentifier: string
21
+ ): void {
22
+ NativeLRTGemiusPlugin.setAppInfo(
23
+ app,
24
+ version,
25
+ gemiusHitCollectorHost,
26
+ gemiusPrismIdentifier
27
+ );
28
+ }
29
+
30
+ static setPlayerInfo(
31
+ playerId: string,
32
+ serverHost: string,
33
+ accountId: string
34
+ ): void {
35
+ NativeLRTGemiusPlugin.setPlayerInfo(playerId, serverHost, accountId);
36
+ }
37
+
38
+ static setProgramData(
39
+ clipId: string,
40
+ name: string,
41
+ duration: number,
42
+ isVideo: boolean
43
+ ): void {
44
+ const type = isVideo === true ? PROGRAM_TYPE_VIDEO : PROGRAM_TYPE_AUDIO;
45
+ NativeLRTGemiusPlugin.setProgramData(clipId, name, duration, type);
46
+ }
47
+
48
+ static sendPlay(clipId: string, offset: number): void {
49
+ NativeLRTGemiusPlugin.sendPlay(clipId, offset);
50
+ }
51
+
52
+ static sendPause(clipId: string, offset: number): void {
53
+ NativeLRTGemiusPlugin.sendPause(clipId, offset);
54
+ }
55
+
56
+ static sendBuffer(clipId: string, offset: number): void {
57
+ NativeLRTGemiusPlugin.sendBuffer(clipId, offset);
58
+ }
59
+
60
+ static sendStop(clipId: string, offset: number): void {
61
+ NativeLRTGemiusPlugin.sendStop(clipId, offset);
62
+ }
63
+
64
+ static sendComplete(clipId: string, offset: number): void {
65
+ NativeLRTGemiusPlugin.sendComplete(clipId, offset);
66
+ }
67
+
68
+ static sendClose(clipId: string, offset: number): void {
69
+ NativeLRTGemiusPlugin.sendClose(clipId, offset);
70
+ }
71
+
72
+ static sendSeek(clipId: string, offset: number): void {
73
+ NativeLRTGemiusPlugin.sendSeek(clipId, offset);
74
+ }
75
+
76
+ static sendPartialPageViewedEvent(
77
+ gemiusPrismIdentifier: string,
78
+ extraParameters: GemiusParams | null = null
79
+ ): void {
80
+ NativeLRTGemiusPlugin.sendPartialPageViewedEvent(
81
+ gemiusPrismIdentifier,
82
+ extraParameters
83
+ );
84
+ }
85
+
86
+ static sendPageViewedEvent(
87
+ gemiusPrismIdentifier: string,
88
+ extraParameters: GemiusParams | null = null
89
+ ): void {
90
+ NativeLRTGemiusPlugin.sendPageViewedEvent(
91
+ gemiusPrismIdentifier,
92
+ extraParameters
93
+ );
94
+ }
95
+
96
+ static sendActionEvent(
97
+ gemiusPrismIdentifier: string,
98
+ extraParameters: GemiusParams | null = null
99
+ ): void {
100
+ NativeLRTGemiusPlugin.sendActionEvent(
101
+ gemiusPrismIdentifier,
102
+ extraParameters
103
+ );
104
+ }
105
+ }
package/.gitattributes DELETED
@@ -1 +0,0 @@
1
- *.pbxproj -text
@@ -1,6 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <classpath>
3
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/>
4
- <classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"/>
5
- <classpathentry kind="output" path="bin/default"/>
6
- </classpath>
File without changes
@@ -1,2 +0,0 @@
1
- #Thu Feb 19 12:01:18 EET 2026
2
- gradle.version=9.0.0
@@ -1,2 +0,0 @@
1
- #Thu Feb 19 12:01:17 EET 2026
2
- java.home=/Library/Java/JavaVirtualMachines/jdk-19.jdk/Contents/Home
Binary file
@@ -1,43 +0,0 @@
1
- ## For more details on how to configure your build environment visit
2
- # http://www.gradle.org/docs/current/userguide/build_environment.html
3
- #
4
- # Specifies the JVM arguments used for the daemon process.
5
- # The setting is particularly useful for tweaking memory settings.
6
- # Default value: -Xmx1024m -XX:MaxPermSize=256m
7
- # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
8
- #
9
- # When configured, Gradle will run in incubating parallel mode.
10
- # This option should only be used with decoupled projects. More details, visit
11
- # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
12
- # org.gradle.parallel=true
13
- #Fri May 20 16:15:07 EEST 2022
14
- android.useAndroidX=true
15
- android.enableJetifier=true
16
-
17
- mavenGemiusUser=lrt.lt
18
- mavenGemiusPassword=iZx3rVJVOEvlQKTanIsNlxQV57wa1VTv56hcDRMQbS7HD11Xc33hkrBrhI2TAmTg
19
-
20
- # Use this property to specify which architecture you want to build.
21
- # You can also override it from the CLI using
22
- # ./gradlew <task> -PreactNativeArchitectures=x86_64
23
- reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
24
-
25
- # Use this property to enable support to the new architecture.
26
- # This will allow you to use TurboModules and the Fabric render in
27
- # your application. You should enable this flag either if you want
28
- # to write custom TurboModules/Fabric components OR use libraries that
29
- # are providing them.
30
- newArchEnabled=true
31
-
32
- # Use this property to enable or disable the Hermes JS engine.
33
- # If set to false, you will be using JSC instead.
34
- hermesEnabled=true
35
-
36
- # Use this property to enable edge-to-edge display support.
37
- # This allows your app to draw behind system bars for an immersive UI.
38
- # Note: Only works with ReactActivity and should not be used with custom Activity.
39
- edgeToEdgeEnabled=false
40
-
41
- systemProp.javax.net.ssl.trustStore=/dev/null
42
- systemProp.javax.net.ssl.trustStoreType=KeychainStore
43
-
File without changes
@@ -1,6 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="AndroidProjectSystem">
4
- <option name="providerId" value="com.android.tools.idea.GradleProjectSystem" />
5
- </component>
6
- </project>