react-native-tpstreams 1.0.3-debug.11 → 1.0.3-debug.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -41,14 +41,14 @@ import { TPStreamsPlayerView } from "react-native-tpstreams";
41
41
 
42
42
  | Prop | Type | Required | Description |
43
43
  |------|------|----------|-------------|
44
- | `videoId` | `string` | Yes | Video ID to play |
45
- | `accessToken` | `string` | Yes | Access token for the video |
46
- | `startAt` | `number` | No | Start position in seconds (default: 0) |
47
- | `shouldAutoPlay` | `boolean` | No | Auto-play on load (default: true) |
48
- | `showDefaultCaptions` | `boolean` | No | Show captions if available (default: false) |
49
- | `enableDownload` | `boolean` | No | Enable download functionality (default: false) |
50
- | `offlineLicenseExpireTime` | `number` | No | License expiration in seconds (default: 15 days) |
51
- | `downloadMetadata` | `object` | No | Custom metadata for downloads |
44
+ | `videoId` | `string` | | Video ID to play |
45
+ | `accessToken` | `string` | | Access token for the video |
46
+ | `startAt` | `number` | | Start position in seconds (default: 0) |
47
+ | `shouldAutoPlay` | `boolean` | | Auto-play on load (default: true) |
48
+ | `showDefaultCaptions` | `boolean` | | Show captions if available (default: false) |
49
+ | `enableDownload` | `boolean` | | Enable download functionality (default: false) |
50
+ | `offlineLicenseExpireTime` | `number` | | License expiration in seconds (default: 15 days) |
51
+ | `downloadMetadata` | `object` | | Custom metadata for downloads |
52
52
 
53
53
  ### Player Methods
54
54
 
@@ -21,7 +21,7 @@ Pod::Spec.new do |s|
21
21
  'DEFINES_MODULE' => 'YES',
22
22
  'CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES' => 'YES'
23
23
  }
24
- s.dependency "TPStreamsSDK" , "1.2.9"
24
+ s.dependency "TPStreamsSDK" , "1.2.8"
25
25
 
26
26
 
27
27
  # Ensure the module is not built as a framework to avoid bridging header conflicts
@@ -109,8 +109,13 @@ class TPStreamsDownloadModule(private val reactContext: ReactApplicationContext)
109
109
  map.putDouble("downloadedBytes", item.downloadedBytes.toDouble())
110
110
  map.putDouble("progressPercentage", item.progressPercentage.toDouble())
111
111
  map.putString("state", downloadClient.getDownloadStatus(item.assetId))
112
- val parsedMetadata = JsonUtils.parseJsonString(item.metadata)
113
- map.putMap("metadata", Arguments.makeNativeMap(parsedMetadata))
112
+
113
+ val metadataJson = org.json.JSONObject()
114
+ item.metadata.forEach { (key, value) ->
115
+ metadataJson.put(key, value)
116
+ }
117
+ map.putString("metadata", metadataJson.toString())
118
+
114
119
  return map
115
120
  }
116
121
 
@@ -30,7 +30,7 @@ class TPStreamsRNPlayerView(context: ThemedReactContext) : FrameLayout(context)
30
30
  private var startAt: Long = 0
31
31
  private var showDefaultCaptions: Boolean = false
32
32
  private var enableDownload: Boolean = false
33
- private var downloadMetadata: Map<String, Any>? = null
33
+ private var downloadMetadata: Map<String, String>? = null
34
34
  private var offlineLicenseExpireTime: Long = DEFAULT_OFFLINE_LICENSE_EXPIRE_TIME
35
35
  private var accessTokenCallback: ((String) -> Unit)? = null
36
36
 
@@ -87,7 +87,7 @@ class TPStreamsRNPlayerView(context: ThemedReactContext) : FrameLayout(context)
87
87
  this.enableDownload = enableDownload
88
88
  }
89
89
 
90
- fun setDownloadMetadata(metadata: Map<String, Any>?) {
90
+ fun setDownloadMetadata(metadata: Map<String, String>?) {
91
91
  this.downloadMetadata = metadata
92
92
  }
93
93
 
@@ -116,7 +116,7 @@ class TPStreamsRNPlayerView(context: ThemedReactContext) : FrameLayout(context)
116
116
  startAt,
117
117
  enableDownload,
118
118
  showDefaultCaptions,
119
- downloadMetadata?.mapValues { it.value.toString() },
119
+ downloadMetadata,
120
120
  offlineLicenseExpireTime
121
121
  )
122
122
 
@@ -23,16 +23,14 @@ class TPStreamsDownloadModule: RCTEventEmitter, TPStreamsDownloadDelegate {
23
23
  private let downloadManager = TPStreamsDownloadManager.shared
24
24
  private var isListening = false
25
25
  private var tokenDelegate: TokenRequestDelegate?
26
- private static var _shared: TPStreamsDownloadModule?
27
-
28
- static var shared: TPStreamsDownloadModule? {
29
- return _shared
30
- }
31
-
26
+ static var shared: TPStreamsDownloadModule?
27
+
32
28
  override init() {
33
29
  super.init()
34
- TPStreamsDownloadModule._shared = self
35
30
  downloadManager.setTPStreamsDownloadDelegate(tpStreamsDownloadDelegate: self)
31
+ TPStreamsDownloadModule.shared = self
32
+ print("TPStreamsDownloadModule initialized")
33
+ print("Downloadmanager delegates are set")
36
34
  }
37
35
 
38
36
  func setAccessTokenDelegate(_ delegate: TokenRequestDelegate) {
@@ -46,71 +44,84 @@ class TPStreamsDownloadModule: RCTEventEmitter, TPStreamsDownloadDelegate {
46
44
 
47
45
  @objc
48
46
  func addDownloadProgressListener(_ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
47
+ print("DownloadModule: adding download progress listener")
49
48
  isListening = true
50
- notifyDownloadsChange()
51
49
  resolve(nil)
52
50
  }
53
51
 
54
52
  @objc
55
53
  func removeDownloadProgressListener(_ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
54
+ print("DownloadModule: removing download progress listener")
56
55
  isListening = false
57
56
  resolve(nil)
58
57
  }
59
58
 
60
59
  func onProgressChange(assetId: String, percentage: Double) {
60
+ print("DownloadModule:Download Progress Changed")
61
+ print("DownloadModule: is Download Progress Listening: \(isListening)")
61
62
  if isListening {
62
63
  notifyDownloadsChange()
63
64
  }
64
65
  }
65
66
 
66
67
  func onStateChange(status: Status, offlineAsset: OfflineAsset) {
68
+ print("DownloadModule: Download State Changed")
69
+ print("DownloadModule: is Download Progress Listening: \(isListening)")
67
70
  if isListening {
68
71
  notifyDownloadsChange()
69
72
  }
70
73
  }
71
74
 
72
75
  func onDelete(assetId: String) {
76
+ print("DownloadModule: Download Deleted")
77
+ print("DownloadModule: is Download Progress Listening: \(isListening)")
73
78
  if isListening {
74
- if let offlineAsset = getOfflineAsset(assetId: assetId) {
75
- notifyDownloadStateChanged(offlineAsset: offlineAsset)
76
- }
79
+ // if let offlineAsset = getOfflineAsset(assetId: assetId) {
80
+ // notifyDownloadStateChanged(offlineAsset: offlineAsset)
81
+ // }
77
82
  notifyDownloadsChange()
78
83
  }
79
84
  }
80
85
 
81
86
  func onStart(offlineAsset: OfflineAsset) {
87
+ print("DownloadModule: Download Started")
88
+ print("DownloadModule: is Download Progress Listening: \(isListening)")
82
89
  if isListening {
83
- notifyDownloadStateChanged(offlineAsset: offlineAsset)
90
+ // notifyDownloadStateChanged(offlineAsset: offlineAsset)
84
91
  notifyDownloadsChange()
85
92
  }
86
93
  }
87
94
 
88
95
  func onComplete(offlineAsset: OfflineAsset) {
96
+ print("DownloadModule: Download Completed")
89
97
  if isListening {
90
- notifyDownloadStateChanged(offlineAsset: offlineAsset)
98
+ // notifyDownloadStateChanged(offlineAsset: offlineAsset)
91
99
  notifyDownloadsChange()
92
100
  }
93
101
  }
94
102
 
95
103
  func onPause(offlineAsset: OfflineAsset) {
104
+ print("DownloadModule: Download Paused")
96
105
  if isListening {
97
- notifyDownloadStateChanged(offlineAsset: offlineAsset)
106
+ // notifyDownloadStateChanged(offlineAsset: offlineAsset)
98
107
  notifyDownloadsChange()
99
108
  }
100
109
  }
101
110
 
102
111
  func onResume(offlineAsset: OfflineAsset) {
112
+ print("DownloadModule: Download Resumed")
103
113
  if isListening {
104
- notifyDownloadStateChanged(offlineAsset: offlineAsset)
114
+ // notifyDownloadStateChanged(offlineAsset: offlineAsset)
105
115
  notifyDownloadsChange()
106
116
  }
107
117
  }
108
118
 
109
119
  func onCanceled(assetId: String) {
120
+ print("DownloadModule: Download Canceled")
110
121
  if isListening {
111
- if let offlineAsset = getOfflineAsset(assetId: assetId) {
112
- notifyDownloadStateChanged(offlineAsset: offlineAsset)
113
- }
122
+ // if let offlineAsset = getOfflineAsset(assetId: assetId) {
123
+ // notifyDownloadStateChanged(offlineAsset: offlineAsset)
124
+ // }
114
125
  notifyDownloadsChange()
115
126
  }
116
127
  }
@@ -124,10 +135,12 @@ class TPStreamsDownloadModule: RCTEventEmitter, TPStreamsDownloadDelegate {
124
135
  }
125
136
 
126
137
  private func notifyDownloadsChange() {
138
+ print("DownloadModule: Notifying downloads change to js")
127
139
  DispatchQueue.main.async { [weak self] in
128
140
  guard let self = self else { return }
129
141
  let downloadAssets = self.getAllDownloadItems()
130
142
  self.sendEvent(withName: "onDownloadProgressChanged", body: downloadAssets)
143
+ print("DownloadModule: Notified (emitted) downloads change event to js")
131
144
  }
132
145
  }
133
146
 
@@ -314,11 +327,13 @@ class TPStreamsDownloadModule: RCTEventEmitter, TPStreamsDownloadDelegate {
314
327
 
315
328
  @objc
316
329
  override func addListener(_ eventName: String) {
330
+ print("adding listener: \(eventName)")
317
331
  super.addListener(eventName)
318
332
  }
319
333
 
320
334
  @objc
321
335
  override func removeListeners(_ count: Double) {
336
+ print("removing listener: \(count)")
322
337
  super.removeListeners(count)
323
338
 
324
339
  if count >= 1 && isListening {
@@ -9,6 +9,7 @@ class TPStreamsModule: NSObject {
9
9
 
10
10
  @objc func initialize(_ organizationId: NSString) {
11
11
  if !isInitialized {
12
+ print("Initializing TPStreamsSDK with org code: \(organizationId)")
12
13
  DispatchQueue.main.async {
13
14
  TPStreamsSDK.initialize(withOrgCode: organizationId as String)
14
15
  self.isInitialized = true
@@ -18,7 +19,7 @@ class TPStreamsModule: NSObject {
18
19
  }
19
20
 
20
21
  private func initializeDownloadModule() {
21
- _ = TPStreamsDownloadModule.shared
22
+ let _ = TPStreamsDownloadModule()
22
23
  }
23
24
 
24
25
  @objc
@@ -184,12 +184,12 @@ class TPStreamsRNPlayerView: UIView {
184
184
  TPStreamsDownloadModule.shared?.setAccessTokenDelegate(self)
185
185
  }
186
186
 
187
- private func parseMetadataJSON(from jsonString: NSString?) -> [String: Any]? {
187
+ private func parseMetadataJSON(from jsonString: NSString?) -> [String: String]? {
188
188
  guard let metadataString = jsonString as String? else { return nil }
189
189
 
190
190
  guard let data = metadataString.data(using: .utf8) else { return nil }
191
191
  do {
192
- if let json = try JSONSerialization.jsonObject(with: data, options: []) as? [String: Any] {
192
+ if let json = try JSONSerialization.jsonObject(with: data, options: []) as? [String: String] {
193
193
  return json
194
194
  }
195
195
  } catch {
@@ -6,15 +6,19 @@ const {
6
6
  } = NativeModules;
7
7
  const downloadEventEmitter = new NativeEventEmitter(TPStreamsDownload);
8
8
  export function addDownloadProgressListener() {
9
+ console.log('RN TPStreamsDownload: addDownloadProgressListener');
9
10
  return TPStreamsDownload.addDownloadProgressListener();
10
11
  }
11
12
  export function removeDownloadProgressListener() {
13
+ console.log('RN TPStreamsDownload: removeDownloadProgressListener');
12
14
  return TPStreamsDownload.removeDownloadProgressListener();
13
15
  }
14
16
  export function onDownloadProgressChanged(listener) {
17
+ console.log('RN TPStreamsDownload: onDownloadProgressChanged');
15
18
  return downloadEventEmitter.addListener('onDownloadProgressChanged', listener);
16
19
  }
17
20
  export function onDownloadStateChanged(listener) {
21
+ console.log('RN TPStreamsDownload: onDownloadStateChanged');
18
22
  return downloadEventEmitter.addListener('onDownloadStateChanged', event => {
19
23
  listener(event.downloadItem, event.error);
20
24
  });
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","NativeEventEmitter","TPStreamsDownload","downloadEventEmitter","addDownloadProgressListener","removeDownloadProgressListener","onDownloadProgressChanged","listener","addListener","onDownloadStateChanged","event","downloadItem","error","pauseDownload","videoId","resumeDownload","removeDownload","isDownloaded","isDownloading","isPaused","getDownloadStatus","getAllDownloads"],"sourceRoot":"../../src","sources":["TPStreamsDownload.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,kBAAkB,QAAQ,cAAc;AAGhE,MAAM;EAAEC;AAAkB,CAAC,GAAGF,aAAa;AA4B3C,MAAMG,oBAAoB,GAAG,IAAIF,kBAAkB,CAACC,iBAAiB,CAAC;AAEtE,OAAO,SAASE,2BAA2BA,CAAA,EAAkB;EAC3D,OAAOF,iBAAiB,CAACE,2BAA2B,CAAC,CAAC;AACxD;AAEA,OAAO,SAASC,8BAA8BA,CAAA,EAAkB;EAC9D,OAAOH,iBAAiB,CAACG,8BAA8B,CAAC,CAAC;AAC3D;AAEA,OAAO,SAASC,yBAAyBA,CACvCC,QAAkC,EACb;EACrB,OAAOJ,oBAAoB,CAACK,WAAW,CACrC,2BAA2B,EAC3BD,QACF,CAAC;AACH;AAEA,OAAO,SAASE,sBAAsBA,CACpCF,QAAqC,EAChB;EACrB,OAAOJ,oBAAoB,CAACK,WAAW,CAAC,wBAAwB,EAAGE,KAAK,IAAK;IAC3EH,QAAQ,CAACG,KAAK,CAACC,YAAY,EAAED,KAAK,CAACE,KAAK,CAAC;EAC3C,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,aAAaA,CAACC,OAAe,EAAiB;EAC5D,OAAOZ,iBAAiB,CAACW,aAAa,CAACC,OAAO,CAAC;AACjD;AAEA,OAAO,SAASC,cAAcA,CAACD,OAAe,EAAiB;EAC7D,OAAOZ,iBAAiB,CAACa,cAAc,CAACD,OAAO,CAAC;AAClD;AAEA,OAAO,SAASE,cAAcA,CAACF,OAAe,EAAiB;EAC7D,OAAOZ,iBAAiB,CAACc,cAAc,CAACF,OAAO,CAAC;AAClD;AAEA,OAAO,SAASG,YAAYA,CAACH,OAAe,EAAoB;EAC9D,OAAOZ,iBAAiB,CAACe,YAAY,CAACH,OAAO,CAAC;AAChD;AAEA,OAAO,SAASI,aAAaA,CAACJ,OAAe,EAAoB;EAC/D,OAAOZ,iBAAiB,CAACgB,aAAa,CAACJ,OAAO,CAAC;AACjD;AAEA,OAAO,SAASK,QAAQA,CAACL,OAAe,EAAoB;EAC1D,OAAOZ,iBAAiB,CAACiB,QAAQ,CAACL,OAAO,CAAC;AAC5C;AAEA,OAAO,SAASM,iBAAiBA,CAACN,OAAe,EAAmB;EAClE,OAAOZ,iBAAiB,CAACkB,iBAAiB,CAACN,OAAO,CAAC;AACrD;AAEA,OAAO,SAASO,eAAeA,CAAA,EAA4B;EACzD,OAAOnB,iBAAiB,CAACmB,eAAe,CAAC,CAAC;AAC5C","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","NativeEventEmitter","TPStreamsDownload","downloadEventEmitter","addDownloadProgressListener","console","log","removeDownloadProgressListener","onDownloadProgressChanged","listener","addListener","onDownloadStateChanged","event","downloadItem","error","pauseDownload","videoId","resumeDownload","removeDownload","isDownloaded","isDownloading","isPaused","getDownloadStatus","getAllDownloads"],"sourceRoot":"../../src","sources":["TPStreamsDownload.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,kBAAkB,QAAQ,cAAc;AAGhE,MAAM;EAAEC;AAAkB,CAAC,GAAGF,aAAa;AA4B3C,MAAMG,oBAAoB,GAAG,IAAIF,kBAAkB,CAACC,iBAAiB,CAAC;AAEtE,OAAO,SAASE,2BAA2BA,CAAA,EAAkB;EAC3DC,OAAO,CAACC,GAAG,CAAC,mDAAmD,CAAC;EAChE,OAAOJ,iBAAiB,CAACE,2BAA2B,CAAC,CAAC;AACxD;AAEA,OAAO,SAASG,8BAA8BA,CAAA,EAAkB;EAC9DF,OAAO,CAACC,GAAG,CAAC,sDAAsD,CAAC;EACnE,OAAOJ,iBAAiB,CAACK,8BAA8B,CAAC,CAAC;AAC3D;AAEA,OAAO,SAASC,yBAAyBA,CACvCC,QAAkC,EACb;EACrBJ,OAAO,CAACC,GAAG,CAAC,iDAAiD,CAAC;EAC9D,OAAOH,oBAAoB,CAACO,WAAW,CACrC,2BAA2B,EAC3BD,QACF,CAAC;AACH;AAEA,OAAO,SAASE,sBAAsBA,CACpCF,QAAqC,EAChB;EACrBJ,OAAO,CAACC,GAAG,CAAC,8CAA8C,CAAC;EAC3D,OAAOH,oBAAoB,CAACO,WAAW,CAAC,wBAAwB,EAAGE,KAAK,IAAK;IAC3EH,QAAQ,CAACG,KAAK,CAACC,YAAY,EAAED,KAAK,CAACE,KAAK,CAAC;EAC3C,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,aAAaA,CAACC,OAAe,EAAiB;EAC5D,OAAOd,iBAAiB,CAACa,aAAa,CAACC,OAAO,CAAC;AACjD;AAEA,OAAO,SAASC,cAAcA,CAACD,OAAe,EAAiB;EAC7D,OAAOd,iBAAiB,CAACe,cAAc,CAACD,OAAO,CAAC;AAClD;AAEA,OAAO,SAASE,cAAcA,CAACF,OAAe,EAAiB;EAC7D,OAAOd,iBAAiB,CAACgB,cAAc,CAACF,OAAO,CAAC;AAClD;AAEA,OAAO,SAASG,YAAYA,CAACH,OAAe,EAAoB;EAC9D,OAAOd,iBAAiB,CAACiB,YAAY,CAACH,OAAO,CAAC;AAChD;AAEA,OAAO,SAASI,aAAaA,CAACJ,OAAe,EAAoB;EAC/D,OAAOd,iBAAiB,CAACkB,aAAa,CAACJ,OAAO,CAAC;AACjD;AAEA,OAAO,SAASK,QAAQA,CAACL,OAAe,EAAoB;EAC1D,OAAOd,iBAAiB,CAACmB,QAAQ,CAACL,OAAO,CAAC;AAC5C;AAEA,OAAO,SAASM,iBAAiBA,CAACN,OAAe,EAAmB;EAClE,OAAOd,iBAAiB,CAACoB,iBAAiB,CAACN,OAAO,CAAC;AACrD;AAEA,OAAO,SAASO,eAAeA,CAAA,EAA4B;EACzD,OAAOrB,iBAAiB,CAACqB,eAAe,CAAC,CAAC;AAC5C","ignoreList":[]}
@@ -7,7 +7,7 @@ export interface DownloadItem {
7
7
  downloadedBytes: number;
8
8
  progressPercentage: number;
9
9
  state: string;
10
- metadata: Record<string, any>;
10
+ metadata: string;
11
11
  }
12
12
  export type DownloadProgressChange = DownloadItem;
13
13
  export type DownloadProgressListener = (downloads: DownloadProgressChange[]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"TPStreamsDownload.d.ts","sourceRoot":"","sources":["../../../src/TPStreamsDownload.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAIxD,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAClD,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,EAAE,sBAAsB,EAAE,KAChC,IAAI,CAAC;AAEV,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,2BAA2B,GAAG,CACxC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,aAAa,GAAG,IAAI,KACxB,IAAI,CAAC;AAIV,wBAAgB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3D;AAED,wBAAgB,8BAA8B,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9D;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,wBAAwB,GACjC,mBAAmB,CAKrB;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,2BAA2B,GACpC,mBAAmB,CAIrB;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE9D;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/D;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE1D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;AAED,wBAAgB,eAAe,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAEzD"}
1
+ {"version":3,"file":"TPStreamsDownload.d.ts","sourceRoot":"","sources":["../../../src/TPStreamsDownload.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAIxD,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAClD,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,EAAE,sBAAsB,EAAE,KAChC,IAAI,CAAC;AAEV,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,2BAA2B,GAAG,CACxC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,aAAa,GAAG,IAAI,KACxB,IAAI,CAAC;AAIV,wBAAgB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3D;AAED,wBAAgB,8BAA8B,IAAI,OAAO,CAAC,IAAI,CAAC,CAG9D;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,wBAAwB,GACjC,mBAAmB,CAMrB;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,2BAA2B,GACpC,mBAAmB,CAKrB;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE9D;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/D;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE1D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;AAED,wBAAgB,eAAe,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAEzD"}
@@ -19,7 +19,7 @@ export interface TPStreamsPlayerProps extends ViewProps {
19
19
  offlineLicenseExpireTime?: number;
20
20
  showDefaultCaptions?: boolean;
21
21
  downloadMetadata?: {
22
- [key: string]: any;
22
+ [key: string]: string;
23
23
  };
24
24
  onPlayerStateChanged?: (state: number) => void;
25
25
  onIsPlayingChanged?: (isPlaying: boolean) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"TPStreamsPlayer.d.ts","sourceRoot":"","sources":["../../../src/TPStreamsPlayer.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAc9C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CACzC;AAGD,MAAM,WAAW,oBAAqB,SAAQ,SAAS;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAC1C,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAK,IAAI,CAAC;IACX,oBAAoB,CAAC,EAAE,CACrB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KACjC,IAAI,CAAC;CACX;AAED;;;GAGG;AACH,QAAA,MAAM,mBAAmB,qHAyMvB,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"TPStreamsPlayer.d.ts","sourceRoot":"","sources":["../../../src/TPStreamsPlayer.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAc9C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,gBAAgB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CACzC;AAGD,MAAM,WAAW,oBAAqB,SAAQ,SAAS;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC7C,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAK,IAAI,CAAC;IACX,oBAAoB,CAAC,EAAE,CACrB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KACjC,IAAI,CAAC;CACX;AAED;;;GAGG;AACH,QAAA,MAAM,mBAAmB,qHAyMvB,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-tpstreams",
3
- "version": "1.0.3-debug.11",
3
+ "version": "1.0.3-debug.3",
4
4
  "description": "Video component for TPStreams",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -11,7 +11,7 @@ export interface DownloadItem {
11
11
  downloadedBytes: number;
12
12
  progressPercentage: number;
13
13
  state: string;
14
- metadata: Record<string, any>;
14
+ metadata: string;
15
15
  }
16
16
 
17
17
  export type DownloadProgressChange = DownloadItem;
@@ -32,16 +32,19 @@ export type DownloadStateChangeListener = (
32
32
  const downloadEventEmitter = new NativeEventEmitter(TPStreamsDownload);
33
33
 
34
34
  export function addDownloadProgressListener(): Promise<void> {
35
+ console.log('RN TPStreamsDownload: addDownloadProgressListener');
35
36
  return TPStreamsDownload.addDownloadProgressListener();
36
37
  }
37
38
 
38
39
  export function removeDownloadProgressListener(): Promise<void> {
40
+ console.log('RN TPStreamsDownload: removeDownloadProgressListener');
39
41
  return TPStreamsDownload.removeDownloadProgressListener();
40
42
  }
41
43
 
42
44
  export function onDownloadProgressChanged(
43
45
  listener: DownloadProgressListener
44
46
  ): EmitterSubscription {
47
+ console.log('RN TPStreamsDownload: onDownloadProgressChanged');
45
48
  return downloadEventEmitter.addListener(
46
49
  'onDownloadProgressChanged',
47
50
  listener
@@ -51,6 +54,7 @@ export function onDownloadProgressChanged(
51
54
  export function onDownloadStateChanged(
52
55
  listener: DownloadStateChangeListener
53
56
  ): EmitterSubscription {
57
+ console.log('RN TPStreamsDownload: onDownloadStateChanged');
54
58
  return downloadEventEmitter.addListener('onDownloadStateChanged', (event) => {
55
59
  listener(event.downloadItem, event.error);
56
60
  });
@@ -40,7 +40,7 @@ export interface TPStreamsPlayerProps extends ViewProps {
40
40
  enableDownload?: boolean;
41
41
  offlineLicenseExpireTime?: number;
42
42
  showDefaultCaptions?: boolean;
43
- downloadMetadata?: { [key: string]: any };
43
+ downloadMetadata?: { [key: string]: string };
44
44
  onPlayerStateChanged?: (state: number) => void;
45
45
  onIsPlayingChanged?: (isPlaying: boolean) => void;
46
46
  onPlaybackSpeedChanged?: (speed: number) => void;
@@ -1,46 +0,0 @@
1
- package com.tpstreams
2
-
3
- import org.json.JSONObject
4
-
5
- object JsonUtils {
6
-
7
- fun parseJsonString(map: Map<String, Any>?): Map<String, Any> {
8
- val result = mutableMapOf<String, Any>()
9
- map?.forEach { (key, value) ->
10
- when (value) {
11
- is String -> {
12
- if (value.startsWith("{") && value.endsWith("}")) {
13
- try {
14
- val json = JSONObject(value)
15
- result[key] = jsonToMap(json)
16
- } catch (e: Exception) {
17
- result[key] = value
18
- }
19
- } else {
20
- result[key] = value
21
- }
22
- }
23
- else -> result[key] = value
24
- }
25
- }
26
- return result
27
- }
28
-
29
- private fun jsonToMap(json: JSONObject): Map<String, Any> {
30
- val map = mutableMapOf<String, Any>()
31
- val keys = json.keys()
32
- while (keys.hasNext()) {
33
- val key = keys.next()
34
- val value = json.get(key)
35
- when (value) {
36
- is String -> map[key] = value
37
- is Int -> map[key] = value
38
- is Double -> map[key] = value
39
- is Boolean -> map[key] = value
40
- is JSONObject -> map[key] = jsonToMap(value)
41
- else -> map[key] = value.toString()
42
- }
43
- }
44
- return map
45
- }
46
- }