react-native-tpstreams 0.1.8 → 0.1.9

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.
@@ -1,161 +1,161 @@
1
- package com.tpstreams
2
-
3
- import android.os.Handler
4
- import android.os.Looper
5
- import com.facebook.react.bridge.ReactApplicationContext
6
- import com.facebook.react.module.annotations.ReactModule
7
- import com.facebook.react.bridge.ReactContextBaseJavaModule
8
- import com.facebook.react.bridge.ReactMethod
9
- import com.tpstream.player.TPStreamsSDK
10
- import com.facebook.react.bridge.Promise
11
- import com.facebook.react.bridge.Arguments
12
- import com.facebook.react.modules.core.DeviceEventManagerModule
13
- import com.facebook.react.bridge.ReactContext
14
-
15
- @ReactModule(name = TpstreamsModule.NAME)
16
- class TpstreamsModule(reactContext: ReactApplicationContext) :
17
- ReactContextBaseJavaModule(reactContext) {
18
- private val listeners = mutableSetOf<String>()
19
-
20
- init {
21
- companionReactContext = reactContext
22
- }
23
-
24
- override fun getName(): String {
25
- return NAME
26
- }
27
-
28
- @ReactMethod
29
- fun addListener(eventName: String?) {
30
- eventName?.let {
31
- listeners.add(it)
32
- }
33
- }
34
-
35
- @ReactMethod
36
- fun removeListeners(count: Int) {
37
- for (i in 0 until count) {
38
- if (listeners.isNotEmpty()) {
39
- listeners.remove(listeners.first())
40
- }
41
- }
42
- }
43
-
44
- @ReactMethod
45
- fun initializeTPSPlayer(orgId: String) {
46
- TPStreamsSDK.initialize(TPStreamsSDK.Provider.TPStreams, orgId)
47
- }
48
-
49
- @ReactMethod
50
- fun release() {
51
- runOnMainThread {
52
- getPlayerFragment()?.release()
53
- }
54
- }
55
-
56
- @ReactMethod
57
- fun play() {
58
- runOnMainThread {
59
- getPlayerFragment()?.play()
60
- }
61
- }
62
-
63
- @ReactMethod
64
- fun pause() {
65
- runOnMainThread {
66
- getPlayerFragment()?.pause()
67
- }
68
- }
69
-
70
- @ReactMethod
71
- fun seekTo(position: Double) {
72
- runOnMainThread {
73
- getPlayerFragment()?.seekTo(position.toLong())
74
- }
75
- }
76
-
77
- @ReactMethod
78
- fun getCurrentTime(promise: Promise) {
79
- runOnMainThread {
80
- getPlayerFragment()?.let {
81
- promise.resolve(it.getCurrentTime().toDouble())
82
- } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
83
- }
84
- }
85
-
86
- @ReactMethod
87
- fun getDuration(promise: Promise) {
88
- runOnMainThread {
89
- getPlayerFragment()?.let {
90
- promise.resolve(it.getDuration().toDouble())
91
- } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
92
- }
93
- }
94
-
95
- @ReactMethod
96
- fun getBufferedTime(promise: Promise) {
97
- runOnMainThread {
98
- getPlayerFragment()?.let {
99
- promise.resolve(it.getBufferedTime().toDouble())
100
- } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
101
- }
102
- }
103
-
104
- @ReactMethod
105
- fun getPlaybackState(promise: Promise) {
106
- runOnMainThread {
107
- getPlayerFragment()?.let {
108
- promise.resolve(it.getPlaybackState())
109
- } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
110
- }
111
- }
112
-
113
- @ReactMethod
114
- fun getPlayWhenReady(promise: Promise) {
115
- runOnMainThread {
116
- getPlayerFragment()?.let {
117
- promise.resolve(it.getPlayWhenReady())
118
- } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
119
- }
120
- }
121
-
122
- @ReactMethod
123
- fun setPlayWhenReady(playWhenReady: Boolean) {
124
- runOnMainThread {
125
- getPlayerFragment()?.setPlayWhenReady(playWhenReady)
126
- }
127
- }
128
-
129
- @ReactMethod
130
- fun getPlaybackSpeed(promise: Promise) {
131
- runOnMainThread {
132
- getPlayerFragment()?.let {
133
- promise.resolve(it.getPlaybackSpeed().toDouble())
134
- } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
135
- }
136
- }
137
-
138
- @ReactMethod
139
- fun setPlaybackSpeed(speed: Float) {
140
- runOnMainThread {
141
- getPlayerFragment()?.setPlaybackSpeed(speed.toFloat())
142
- }
143
- }
144
-
145
- private fun getPlayerFragment(): PlayerFragment? {
146
- return PlayerFragment.instance?.takeIf { it.player != null }
147
- }
148
-
149
- private fun runOnMainThread(action: () -> Unit) {
150
- companionReactContext?.runOnUiQueueThread(action)
151
- }
152
-
153
- companion object {
154
- const val NAME = "Tpstreams"
155
- var companionReactContext: ReactApplicationContext? = null
156
- fun sendEvent(eventName: String, params: Any?) {
157
- companionReactContext?.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter::class.java)
158
- ?.emit(eventName, params)
159
- }
160
- }
161
- }
1
+ package com.tpstreams
2
+
3
+ import android.os.Handler
4
+ import android.os.Looper
5
+ import com.facebook.react.bridge.ReactApplicationContext
6
+ import com.facebook.react.module.annotations.ReactModule
7
+ import com.facebook.react.bridge.ReactContextBaseJavaModule
8
+ import com.facebook.react.bridge.ReactMethod
9
+ import com.tpstream.player.TPStreamsSDK
10
+ import com.facebook.react.bridge.Promise
11
+ import com.facebook.react.bridge.Arguments
12
+ import com.facebook.react.modules.core.DeviceEventManagerModule
13
+ import com.facebook.react.bridge.ReactContext
14
+
15
+ @ReactModule(name = TpstreamsModule.NAME)
16
+ class TpstreamsModule(reactContext: ReactApplicationContext) :
17
+ ReactContextBaseJavaModule(reactContext) {
18
+ private val listeners = mutableSetOf<String>()
19
+
20
+ init {
21
+ companionReactContext = reactContext
22
+ }
23
+
24
+ override fun getName(): String {
25
+ return NAME
26
+ }
27
+
28
+ @ReactMethod
29
+ fun addListener(eventName: String?) {
30
+ eventName?.let {
31
+ listeners.add(it)
32
+ }
33
+ }
34
+
35
+ @ReactMethod
36
+ fun removeListeners(count: Int) {
37
+ for (i in 0 until count) {
38
+ if (listeners.isNotEmpty()) {
39
+ listeners.remove(listeners.first())
40
+ }
41
+ }
42
+ }
43
+
44
+ @ReactMethod
45
+ fun initializeTPSPlayer(orgId: String) {
46
+ TPStreamsSDK.initialize(TPStreamsSDK.Provider.TPStreams, orgId)
47
+ }
48
+
49
+ @ReactMethod
50
+ fun release() {
51
+ runOnMainThread {
52
+ getPlayerFragment()?.release()
53
+ }
54
+ }
55
+
56
+ @ReactMethod
57
+ fun play() {
58
+ runOnMainThread {
59
+ getPlayerFragment()?.play()
60
+ }
61
+ }
62
+
63
+ @ReactMethod
64
+ fun pause() {
65
+ runOnMainThread {
66
+ getPlayerFragment()?.pause()
67
+ }
68
+ }
69
+
70
+ @ReactMethod
71
+ fun seekTo(position: Double) {
72
+ runOnMainThread {
73
+ getPlayerFragment()?.seekTo(position.toLong())
74
+ }
75
+ }
76
+
77
+ @ReactMethod
78
+ fun getCurrentTime(promise: Promise) {
79
+ runOnMainThread {
80
+ getPlayerFragment()?.let {
81
+ promise.resolve(it.getCurrentTime().toDouble())
82
+ } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
83
+ }
84
+ }
85
+
86
+ @ReactMethod
87
+ fun getDuration(promise: Promise) {
88
+ runOnMainThread {
89
+ getPlayerFragment()?.let {
90
+ promise.resolve(it.getDuration().toDouble())
91
+ } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
92
+ }
93
+ }
94
+
95
+ @ReactMethod
96
+ fun getBufferedTime(promise: Promise) {
97
+ runOnMainThread {
98
+ getPlayerFragment()?.let {
99
+ promise.resolve(it.getBufferedTime().toDouble())
100
+ } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
101
+ }
102
+ }
103
+
104
+ @ReactMethod
105
+ fun getPlaybackState(promise: Promise) {
106
+ runOnMainThread {
107
+ getPlayerFragment()?.let {
108
+ promise.resolve(it.getPlaybackState())
109
+ } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
110
+ }
111
+ }
112
+
113
+ @ReactMethod
114
+ fun getPlayWhenReady(promise: Promise) {
115
+ runOnMainThread {
116
+ getPlayerFragment()?.let {
117
+ promise.resolve(it.getPlayWhenReady())
118
+ } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
119
+ }
120
+ }
121
+
122
+ @ReactMethod
123
+ fun setPlayWhenReady(playWhenReady: Boolean) {
124
+ runOnMainThread {
125
+ getPlayerFragment()?.setPlayWhenReady(playWhenReady)
126
+ }
127
+ }
128
+
129
+ @ReactMethod
130
+ fun getPlaybackSpeed(promise: Promise) {
131
+ runOnMainThread {
132
+ getPlayerFragment()?.let {
133
+ promise.resolve(it.getPlaybackSpeed().toDouble())
134
+ } ?: promise.reject("PLAYER_NOT_READY", "Player is not initialized")
135
+ }
136
+ }
137
+
138
+ @ReactMethod
139
+ fun setPlaybackSpeed(speed: Float) {
140
+ runOnMainThread {
141
+ getPlayerFragment()?.setPlaybackSpeed(speed.toFloat())
142
+ }
143
+ }
144
+
145
+ private fun getPlayerFragment(): PlayerFragment? {
146
+ return PlayerFragment.instance?.takeIf { it.player != null }
147
+ }
148
+
149
+ private fun runOnMainThread(action: () -> Unit) {
150
+ companionReactContext?.runOnUiQueueThread(action)
151
+ }
152
+
153
+ companion object {
154
+ const val NAME = "Tpstreams"
155
+ var companionReactContext: ReactApplicationContext? = null
156
+ fun sendEvent(eventName: String, params: Any?) {
157
+ companionReactContext?.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter::class.java)
158
+ ?.emit(eventName, params)
159
+ }
160
+ }
161
+ }
@@ -1,16 +1,16 @@
1
- package com.tpstreams
2
-
3
- import com.facebook.react.ReactPackage
4
- import com.facebook.react.bridge.NativeModule
5
- import com.facebook.react.bridge.ReactApplicationContext
6
- import com.facebook.react.uimanager.ViewManager
7
-
8
- class TpstreamsPackage : ReactPackage {
9
- override fun createNativeModules(reactContext: ReactApplicationContext): List<NativeModule> {
10
- return listOf(TpstreamsModule(reactContext))
11
- }
12
-
13
- override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
14
- return listOf(TpStreamsPlayerViewManager())
15
- }
16
- }
1
+ package com.tpstreams
2
+
3
+ import com.facebook.react.ReactPackage
4
+ import com.facebook.react.bridge.NativeModule
5
+ import com.facebook.react.bridge.ReactApplicationContext
6
+ import com.facebook.react.uimanager.ViewManager
7
+
8
+ class TpstreamsPackage : ReactPackage {
9
+ override fun createNativeModules(reactContext: ReactApplicationContext): List<NativeModule> {
10
+ return listOf(TpstreamsModule(reactContext), FragmentModule(reactContext))
11
+ }
12
+
13
+ override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
14
+ return listOf(TpStreamsPlayerViewManager())
15
+ }
16
+ }
@@ -1,29 +1,29 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
- xmlns:tools="http://schemas.android.com/tools"
4
- android:layout_width="match_parent"
5
- android:layout_height="match_parent"
6
- android:layout_marginTop="64dp"
7
- xmlns:app="http://schemas.android.com/apk/res-auto"
8
- tools:context=".PlayerFragment">
9
-
10
- <androidx.constraintlayout.widget.ConstraintLayout
11
- android:layout_width="match_parent"
12
- android:layout_height="wrap_content">
13
-
14
- <androidx.fragment.app.FragmentContainerView
15
- android:id="@+id/tpstream_player_fragment"
16
- android:name="com.tpstream.player.ui.TpStreamPlayerFragment"
17
- android:layout_width="match_parent"
18
- android:layout_height="0dp"
19
- android:keepScreenOn="true"
20
- app:layout_constraintDimensionRatio="H,16:9"
21
- app:layout_constraintBottom_toBottomOf="parent"
22
- app:layout_constraintEnd_toEndOf="parent"
23
- app:layout_constraintStart_toStartOf="parent"
24
- app:layout_constraintTop_toTopOf="parent"
25
- tools:layout="@layout/fragment_tp_stream_player" />
26
-
27
- </androidx.constraintlayout.widget.ConstraintLayout>
28
-
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
+ xmlns:tools="http://schemas.android.com/tools"
4
+ android:layout_width="match_parent"
5
+ android:layout_height="match_parent"
6
+ android:layout_marginTop="64dp"
7
+ xmlns:app="http://schemas.android.com/apk/res-auto"
8
+ tools:context=".PlayerFragment">
9
+
10
+ <androidx.constraintlayout.widget.ConstraintLayout
11
+ android:layout_width="match_parent"
12
+ android:layout_height="wrap_content">
13
+
14
+ <androidx.fragment.app.FragmentContainerView
15
+ android:id="@+id/tpstream_player_fragment"
16
+ android:name="com.tpstream.player.ui.TpStreamPlayerFragment"
17
+ android:layout_width="match_parent"
18
+ android:layout_height="0dp"
19
+ android:keepScreenOn="true"
20
+ app:layout_constraintDimensionRatio="H,16:9"
21
+ app:layout_constraintBottom_toBottomOf="parent"
22
+ app:layout_constraintEnd_toEndOf="parent"
23
+ app:layout_constraintStart_toStartOf="parent"
24
+ app:layout_constraintTop_toTopOf="parent"
25
+ tools:layout="@layout/fragment_tp_stream_player" />
26
+
27
+ </androidx.constraintlayout.widget.ConstraintLayout>
28
+
29
29
  </FrameLayout>
@@ -1,8 +1,8 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <network-security-config>
3
- <domain-config cleartextTrafficPermitted="true">
4
- <domain includeSubdomains="true">localhost</domain>
5
- <domain includeSubdomains="true">10.0.2.2</domain>
6
- <domain includeSubdomains="true">http://127.0.0.1</domain>
7
- </domain-config>
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <network-security-config>
3
+ <domain-config cleartextTrafficPermitted="true">
4
+ <domain includeSubdomains="true">localhost</domain>
5
+ <domain includeSubdomains="true">10.0.2.2</domain>
6
+ <domain includeSubdomains="true">http://127.0.0.1</domain>
7
+ </domain-config>
8
8
  </network-security-config>
package/ios/Tpstreams.h CHANGED
@@ -1,6 +1,6 @@
1
-
2
- #import "generated/RNTpstreamsSpec/RNTpstreamsSpec.h"
3
-
4
- @interface Tpstreams : NSObject <NativeTpstreamsSpec>
5
-
6
- @end
1
+
2
+ #import "generated/RNTpstreamsSpec/RNTpstreamsSpec.h"
3
+
4
+ @interface Tpstreams : NSObject <NativeTpstreamsSpec>
5
+
6
+ @end
package/ios/Tpstreams.mm CHANGED
@@ -1,18 +1,18 @@
1
- #import "Tpstreams.h"
2
-
3
- @implementation Tpstreams
4
- RCT_EXPORT_MODULE()
5
-
6
- - (NSNumber *)multiply:(double)a b:(double)b {
7
- NSNumber *result = @(a * b);
8
-
9
- return result;
10
- }
11
-
12
- - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
13
- (const facebook::react::ObjCTurboModule::InitParams &)params
14
- {
15
- return std::make_shared<facebook::react::NativeTpstreamsSpecJSI>(params);
16
- }
17
-
18
- @end
1
+ #import "Tpstreams.h"
2
+
3
+ @implementation Tpstreams
4
+ RCT_EXPORT_MODULE()
5
+
6
+ - (NSNumber *)multiply:(double)a b:(double)b {
7
+ NSNumber *result = @(a * b);
8
+
9
+ return result;
10
+ }
11
+
12
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
13
+ (const facebook::react::ObjCTurboModule::InitParams &)params
14
+ {
15
+ return std::make_shared<facebook::react::NativeTpstreamsSpecJSI>(params);
16
+ }
17
+
18
+ @end
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeTpstreams.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAMpCC,gCAAmB,CAACC,YAAY,CAAO,WAAW,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"..\\..\\src","sources":["NativeTpstreams.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAMpCC,gCAAmB,CAACC,YAAY,CAAO,WAAW,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","TpStreamsPlayerView","requireNativeComponent","_default","exports","default"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,mBAAmB,GAAG,IAAAC,mCAAsB,EAChD,qBACF,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaJ,mBAAmB","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","TpStreamsPlayerView","requireNativeComponent","_default","exports","default"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,mBAAmB,GAAG,IAAAC,mCAAsB,EAChD,qBACF,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaJ,mBAAmB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\src","sources":["types.ts"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeTpstreams.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAMlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,WAAW,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"..\\..\\src","sources":["NativeTpstreams.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAMlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,WAAW,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["requireNativeComponent","TpStreamsPlayerView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AACA,SAASA,sBAAsB,QAAQ,cAAc;AAErD,MAAMC,mBAAmB,GAAGD,sBAAsB,CAChD,qBACF,CAAC;AAED,eAAeC,mBAAmB","ignoreList":[]}
1
+ {"version":3,"names":["requireNativeComponent","TpStreamsPlayerView"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":";;AACA,SAASA,sBAAsB,QAAQ,cAAc;AAErD,MAAMC,mBAAmB,GAAGD,sBAAsB,CAChD,qBACF,CAAC;AAED,eAAeC,mBAAmB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\src","sources":["types.ts"],"mappings":"","ignoreList":[]}