@takeoffmedia/react-native-penthera 0.3.8 → 0.4.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.
- package/android/src/main/java/com/takeoffmediareactnativepenthera/AssetQueueObserver.kt +12 -5
- package/android/src/main/java/com/takeoffmediareactnativepenthera/virtuoso/OfflineVideoEngine.kt +5 -2
- package/ios/Catalog.swift +2 -0
- package/ios/Penthera.swift +78 -15
- package/ios/Penthera.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/Penthera.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/Penthera.xcodeproj/project.xcworkspace/xcuserdata/joseguerreroot.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/Penthera.xcodeproj/xcuserdata/joseguerreroot.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +104 -0
- package/ios/Penthera.xcodeproj/xcuserdata/joseguerreroot.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/lib/commonjs/hooks/usePenthera/usePenthera.js +20 -6
- package/lib/commonjs/hooks/usePenthera/usePenthera.js.map +1 -1
- package/lib/module/hooks/usePenthera/usePenthera.js +20 -6
- package/lib/module/hooks/usePenthera/usePenthera.js.map +1 -1
- package/lib/typescript/hooks/usePenthera/usePenthera.d.ts.map +1 -1
- package/lib/typescript/hooks/usePenthera/usePenthera.types.d.ts +2 -0
- package/lib/typescript/hooks/usePenthera/usePenthera.types.d.ts.map +1 -1
- package/lib/typescript/interface/PentheraTypes.d.ts +3 -1
- package/lib/typescript/interface/PentheraTypes.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/hooks/usePenthera/usePenthera.tsx +151 -135
- package/src/hooks/usePenthera/usePenthera.types.ts +2 -0
- package/src/interface/PentheraTypes.ts +3 -1
|
@@ -9,6 +9,7 @@ import com.penthera.virtuososdk.client.Observers
|
|
|
9
9
|
import com.penthera.virtuososdk.client.Virtuoso
|
|
10
10
|
import com.takeoffmediareactnativepenthera.virtuoso.OfflineVideoEngine
|
|
11
11
|
import com.takeoffmediareactnativepenthera.virtuoso.errors.PentheraErrors
|
|
12
|
+
import org.json.JSONObject
|
|
12
13
|
|
|
13
14
|
class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso) : Observers.IQueueObserver {
|
|
14
15
|
|
|
@@ -29,7 +30,9 @@ class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso)
|
|
|
29
30
|
updateItem(aAsset, true)
|
|
30
31
|
val eventCategory = "penthera"
|
|
31
32
|
val eventType = PentheraEvent.DID_START_DOWNLOADING
|
|
32
|
-
|
|
33
|
+
val metadata = JSONObject(aAsset.metadata)
|
|
34
|
+
val mediaId = metadata["mediaId"] as String
|
|
35
|
+
EventEmitter.sharedInstance.dispatch(eventCategory, eventType, mediaId, "")
|
|
33
36
|
} catch (e: Exception) {
|
|
34
37
|
// Handle the exception here, for example, log it
|
|
35
38
|
Log.e("MiModulo", "Error in engineStartedDownloadingAsset", e)
|
|
@@ -52,7 +55,9 @@ class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso)
|
|
|
52
55
|
updateItem(aAsset, true)
|
|
53
56
|
val eventCategory = "penthera"
|
|
54
57
|
val eventType = PentheraEvent.DOWNLOAD_COMPLETE
|
|
55
|
-
|
|
58
|
+
val metadata = JSONObject(aAsset.metadata)
|
|
59
|
+
val mediaId = metadata["mediaId"] as String
|
|
60
|
+
EventEmitter.sharedInstance.dispatch(eventCategory, eventType, mediaId, "")
|
|
56
61
|
mOfflineVideo.assetId.remove(assetId)
|
|
57
62
|
} catch (e: Exception) {
|
|
58
63
|
// Handle the exception here, for example, log it
|
|
@@ -151,16 +156,18 @@ class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso)
|
|
|
151
156
|
}
|
|
152
157
|
}
|
|
153
158
|
val hasError = assetStatus == "Error"
|
|
159
|
+
val metadata = JSONObject(it.metadata)
|
|
160
|
+
val mediaId = metadata["mediaId"] as String
|
|
154
161
|
if(hasError){
|
|
155
|
-
EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.ERROR_DOWNLOAD,
|
|
162
|
+
EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.ERROR_DOWNLOAD, mediaId, value)
|
|
156
163
|
} else if(assetStatus == "Downloading") {
|
|
157
164
|
val speedInMbs = mOfflineVideo.mService.windowedThroughput
|
|
158
165
|
runOnUiThread {
|
|
159
166
|
if(speedInMbs <= mOfflineVideo.minimumLowBandWidth && progress > 1){
|
|
160
|
-
EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.ERROR_DOWNLOAD,
|
|
167
|
+
EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.ERROR_DOWNLOAD, mediaId, PentheraErrors.LOW_BAND_WIDTH)
|
|
161
168
|
}
|
|
162
169
|
}
|
|
163
|
-
EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.PROGRESS_UPDATED,
|
|
170
|
+
EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.PROGRESS_UPDATED, mediaId, progress.toString())
|
|
164
171
|
}
|
|
165
172
|
}
|
|
166
173
|
}
|
package/android/src/main/java/com/takeoffmediareactnativepenthera/virtuoso/OfflineVideoEngine.kt
CHANGED
|
@@ -180,6 +180,9 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
180
180
|
val value = cursor.getString(columnIndex)
|
|
181
181
|
if (columnName == "description") {
|
|
182
182
|
val jsonObject = Gson().fromJson(value, Map::class.java)
|
|
183
|
+
val asset = JSONObject(value)
|
|
184
|
+
val metadata = asset.getJSONObject("data")
|
|
185
|
+
dataMap["id"] = metadata["mediaId"]
|
|
183
186
|
dataMap["data"] = jsonObject["data"] as Any
|
|
184
187
|
dataMap["title"] = jsonObject["title"] as Any
|
|
185
188
|
dataMap["thumbnails"] = jsonObject["thumbnails"] as Any
|
|
@@ -187,7 +190,6 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
187
190
|
dataMap[columnName] = value
|
|
188
191
|
}
|
|
189
192
|
if (columnName == "assetId") {
|
|
190
|
-
dataMap["id"] = value
|
|
191
193
|
UiThreadUtil.runOnUiThread {
|
|
192
194
|
val list = virtuoso.assetManager.getByAssetId(value)
|
|
193
195
|
list.firstOrNull()?.let { asset ->
|
|
@@ -237,10 +239,11 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
237
239
|
private fun processAsset(asset: VirtuosoSegmentedFile) {
|
|
238
240
|
when (asset.downloadStatus) {
|
|
239
241
|
Common.AssetStatus.DOWNLOAD_DENIED_COPIES -> {
|
|
242
|
+
val metadata = JSONObject((asset as VirtuosoSegmentedFile).metadata)
|
|
240
243
|
EventEmitter.sharedInstance.dispatch(
|
|
241
244
|
"penthera",
|
|
242
245
|
PentheraEvent.ERROR_DOWNLOAD,
|
|
243
|
-
|
|
246
|
+
metadata["mediaId"] as String,
|
|
244
247
|
PentheraErrors.DOWNLOAD_DENIED_COPIES
|
|
245
248
|
)
|
|
246
249
|
}
|
package/ios/Catalog.swift
CHANGED
package/ios/Penthera.swift
CHANGED
|
@@ -35,11 +35,21 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
35
35
|
let assetId = self.currentAset?.assetID
|
|
36
36
|
// allowableStorageRemaining Returns the amount of device storage (in bytes) still available for Virtuoso to use
|
|
37
37
|
if(allowableStorageRemaining <= 0){
|
|
38
|
-
EventEmitter.sharedInstance.dispatch(
|
|
38
|
+
EventEmitter.sharedInstance.dispatch(
|
|
39
|
+
name: "penthera",
|
|
40
|
+
code: PentheraEvent.ERROR_DOWNLOAD,
|
|
41
|
+
assetId: self.currentAset?.userInfo?["mediaId"] as! String,
|
|
42
|
+
body: "Insufficient storage for download"
|
|
43
|
+
)
|
|
39
44
|
//This condition starts with the interval of 30 since we can have an estimate of kbps per second from approximately 20
|
|
40
45
|
} else if kbpsInt > 0 {
|
|
41
46
|
if kbpsInt <= self.minimumLowBandWidth {
|
|
42
|
-
EventEmitter.sharedInstance.dispatch(
|
|
47
|
+
EventEmitter.sharedInstance.dispatch(
|
|
48
|
+
name: "penthera",
|
|
49
|
+
code: PentheraEvent.ERROR_DOWNLOAD,
|
|
50
|
+
assetId: self.currentAset?.userInfo?["mediaId"] as! String,
|
|
51
|
+
body: "Low bandwidth or no connection"
|
|
52
|
+
)
|
|
43
53
|
// self.currentAset?.delete()
|
|
44
54
|
}
|
|
45
55
|
}
|
|
@@ -156,7 +166,12 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
156
166
|
self.currentAset = asset
|
|
157
167
|
self.assetError = ""
|
|
158
168
|
updateStatusInfo()
|
|
159
|
-
EventEmitter.sharedInstance.dispatch(
|
|
169
|
+
EventEmitter.sharedInstance.dispatch(
|
|
170
|
+
name: "penthera",
|
|
171
|
+
code: PentheraEvent.DID_START_DOWNLOADING,
|
|
172
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
173
|
+
body: ""
|
|
174
|
+
)
|
|
160
175
|
}
|
|
161
176
|
|
|
162
177
|
|
|
@@ -165,7 +180,12 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
165
180
|
updateStatusInfo()
|
|
166
181
|
let percentage: Float = Float(asset.fractionComplete)/Float(asset.estimatedSize)
|
|
167
182
|
if(percentage.isFinite && self.assetError.isEmpty ) {
|
|
168
|
-
EventEmitter.sharedInstance.dispatch(name: "penthera",
|
|
183
|
+
EventEmitter.sharedInstance.dispatch(name: "penthera",
|
|
184
|
+
code: PentheraEvent.PROGRESS_UPDATED,
|
|
185
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
186
|
+
body: "\(Int(asset.fractionComplete*100))"
|
|
187
|
+
)
|
|
188
|
+
|
|
169
189
|
}
|
|
170
190
|
}
|
|
171
191
|
|
|
@@ -175,7 +195,12 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
175
195
|
|
|
176
196
|
public func downloadEngineDidFinishDownloadingAsset(_ asset: VirtuosoAsset) {
|
|
177
197
|
updateStatusInfo()
|
|
178
|
-
EventEmitter.sharedInstance.dispatch(
|
|
198
|
+
EventEmitter.sharedInstance.dispatch(
|
|
199
|
+
name: "penthera",
|
|
200
|
+
code: PentheraEvent.DOWNLOAD_COMPLETE,
|
|
201
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
202
|
+
body: ""
|
|
203
|
+
)
|
|
179
204
|
}
|
|
180
205
|
|
|
181
206
|
func downloadEngineStatusChange(_ status: kVDE_DownloadEngineStatus) {
|
|
@@ -185,15 +210,30 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
185
210
|
public func downloadEngineDidEncounterError(for asset: VirtuosoAsset, error: Error?, task: URLSessionTask?, data: Data?, statusCode: NSNumber?) {
|
|
186
211
|
let eventError = parseErrorRulesPenthera(anyElement: error);
|
|
187
212
|
self.assetError = eventError
|
|
188
|
-
EventEmitter.sharedInstance.dispatch(
|
|
213
|
+
EventEmitter.sharedInstance.dispatch(
|
|
214
|
+
name: "penthera",
|
|
215
|
+
code: PentheraEvent.ERROR_DOWNLOAD,
|
|
216
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
217
|
+
body: eventError
|
|
218
|
+
)
|
|
189
219
|
}
|
|
190
220
|
|
|
191
221
|
public func downloadEngineInternalQueueUpdate(asset: VirtuosoAsset) {
|
|
192
|
-
EventEmitter.sharedInstance.dispatch(
|
|
222
|
+
EventEmitter.sharedInstance.dispatch(
|
|
223
|
+
name: "penthera",
|
|
224
|
+
code: "TEST downloadEngineInternalQueueUpdate",
|
|
225
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
226
|
+
body: "Queue updated"
|
|
227
|
+
)
|
|
193
228
|
}
|
|
194
229
|
|
|
195
230
|
public func downloadEngineStartupComplete(_ succeeded: Bool, asset: VirtuosoAsset) {
|
|
196
|
-
EventEmitter.sharedInstance.dispatch(
|
|
231
|
+
EventEmitter.sharedInstance.dispatch(
|
|
232
|
+
name: "penthera",
|
|
233
|
+
code: "TEST downloadEngineStartupComplete",
|
|
234
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
235
|
+
body: "SDK startup complete"
|
|
236
|
+
)
|
|
197
237
|
}
|
|
198
238
|
func getPendingAsset(assetID: String) -> VirtuosoAsset? {
|
|
199
239
|
let pendingAssets = VirtuosoAsset.pendingAssets(withAvailabilityFilter: false)
|
|
@@ -256,15 +296,26 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
256
296
|
|
|
257
297
|
let hasDRM = item["drm"] as! Bool? ?? false
|
|
258
298
|
let title = item["title"] as! String? ?? ""
|
|
299
|
+
guard let metadata = item["data"] as! [String: AnyObject]? else {
|
|
300
|
+
reject("No metadata", nil, nil)
|
|
301
|
+
return
|
|
302
|
+
}
|
|
259
303
|
|
|
260
304
|
DispatchQueue.global(qos: .background).async {
|
|
261
305
|
guard let config = VirtuosoAssetConfig(url: url,
|
|
262
306
|
assetID: assetID,
|
|
263
307
|
description: String(describing: title),
|
|
264
|
-
type: .vde_AssetTypeHLS)
|
|
265
|
-
|
|
308
|
+
type: .vde_AssetTypeHLS)
|
|
309
|
+
else {
|
|
310
|
+
EventEmitter.sharedInstance.dispatch(
|
|
311
|
+
name: "penthera",
|
|
312
|
+
code: PentheraEvent.CONFIG_ASSET_FAILED,
|
|
313
|
+
assetId: metadata["mediaId"] as! String,
|
|
314
|
+
body: "-"
|
|
315
|
+
)
|
|
266
316
|
return
|
|
267
317
|
}
|
|
318
|
+
|
|
268
319
|
// Ancillary Files
|
|
269
320
|
var ancillarySubtitles: [String: String] = [:]
|
|
270
321
|
let thumbnails = item["thumbnails"] as! [String: String]? ?? [:]
|
|
@@ -304,7 +355,12 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
304
355
|
FairPlayDrmSetup.initDrmUrls(certificateUrl: cert, licenceUrl: licence)
|
|
305
356
|
|
|
306
357
|
if (!FairPlayDrmSetup.configureAsset(assetID: assetID, header:licenceHttpHeader, token: token)) {
|
|
307
|
-
EventEmitter.sharedInstance.dispatch(
|
|
358
|
+
EventEmitter.sharedInstance.dispatch(
|
|
359
|
+
name: "penthera",
|
|
360
|
+
code: PentheraEvent.FAIR_PLAY_LICENSE_DELEGATE_ERROR,
|
|
361
|
+
assetId: metadata["mediaId"] as! String,
|
|
362
|
+
body: ""
|
|
363
|
+
)
|
|
308
364
|
return
|
|
309
365
|
}
|
|
310
366
|
|
|
@@ -368,7 +424,9 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
368
424
|
expiryAfterDownload: timeIntervalToString(va.expiryAfterDownload),
|
|
369
425
|
isExpired: va.isExpired,
|
|
370
426
|
inForcedExpire: va.inForcedExpire,
|
|
371
|
-
isReproduced: isReproduced != nil
|
|
427
|
+
isReproduced: isReproduced != nil,
|
|
428
|
+
mediaId: va.userInfo?["mediaId"] as? String,
|
|
429
|
+
vpid: va.userInfo?["vpid"] as? String
|
|
372
430
|
)
|
|
373
431
|
|
|
374
432
|
if let effectiveExpiryDate = effectiveExpiryDate {
|
|
@@ -383,7 +441,7 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
383
441
|
va.delete()
|
|
384
442
|
} else {
|
|
385
443
|
let catalog = OfflineCatalog(
|
|
386
|
-
id: va.
|
|
444
|
+
id: va.userInfo?["mediaId"] as! String, // Change vpid to assetId
|
|
387
445
|
title: va.description,
|
|
388
446
|
data: dataItem,
|
|
389
447
|
thumbnails: thumbnails,
|
|
@@ -555,17 +613,22 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
555
613
|
|
|
556
614
|
func pauseAsset(asset: VirtuosoAsset) {
|
|
557
615
|
asset.isPaused = !asset.isPaused
|
|
558
|
-
EventEmitter.sharedInstance.dispatch(
|
|
616
|
+
EventEmitter.sharedInstance.dispatch(
|
|
617
|
+
name: "penthera",
|
|
618
|
+
code: PentheraEvent.ASSET_RESUME_DOWNLOAD_UPDATED,
|
|
619
|
+
assetId: asset.userInfo?["mediaId"] as! String,
|
|
620
|
+
body: "\(asset.isPaused)"
|
|
621
|
+
)
|
|
559
622
|
}
|
|
560
623
|
|
|
561
624
|
@objc(shutdownDRM:withResolver:withRejecter:)
|
|
562
625
|
func shutdownDRM(_ blank: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
|
|
563
626
|
if let server = self.vcHttpServer {
|
|
564
627
|
server.shutdown()
|
|
565
|
-
|
|
566
628
|
resolve("Shutdown successful")
|
|
567
629
|
} else {
|
|
568
630
|
reject("NO_INSTANCE", "No instance for vcHttpServer", nil)
|
|
569
631
|
}
|
|
570
632
|
}
|
|
633
|
+
|
|
571
634
|
}
|
|
Binary file
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<Bucket
|
|
3
|
+
uuid = "3AE98629-7421-4561-B12C-C06B8B6A3023"
|
|
4
|
+
type = "1"
|
|
5
|
+
version = "2.0">
|
|
6
|
+
<Breakpoints>
|
|
7
|
+
<BreakpointProxy
|
|
8
|
+
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
|
9
|
+
<BreakpointContent
|
|
10
|
+
uuid = "A5D166B0-3C57-4F4D-A845-BDB81498DA0F"
|
|
11
|
+
shouldBeEnabled = "No"
|
|
12
|
+
ignoreCount = "0"
|
|
13
|
+
continueAfterRunningActions = "No"
|
|
14
|
+
filePath = "Penthera.swift"
|
|
15
|
+
startingColumnNumber = "9223372036854775807"
|
|
16
|
+
endingColumnNumber = "9223372036854775807"
|
|
17
|
+
startingLineNumber = "18"
|
|
18
|
+
endingLineNumber = "18"
|
|
19
|
+
landmarkName = "Penthera"
|
|
20
|
+
landmarkType = "3">
|
|
21
|
+
</BreakpointContent>
|
|
22
|
+
</BreakpointProxy>
|
|
23
|
+
<BreakpointProxy
|
|
24
|
+
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
|
25
|
+
<BreakpointContent
|
|
26
|
+
uuid = "5D7AE47B-D5FC-4468-A75B-C414F3F8A58C"
|
|
27
|
+
shouldBeEnabled = "No"
|
|
28
|
+
ignoreCount = "0"
|
|
29
|
+
continueAfterRunningActions = "No"
|
|
30
|
+
filePath = "Penthera.swift"
|
|
31
|
+
startingColumnNumber = "9223372036854775807"
|
|
32
|
+
endingColumnNumber = "9223372036854775807"
|
|
33
|
+
startingLineNumber = "25"
|
|
34
|
+
endingLineNumber = "25"
|
|
35
|
+
landmarkName = "updateStatusInfo()"
|
|
36
|
+
landmarkType = "7">
|
|
37
|
+
</BreakpointContent>
|
|
38
|
+
</BreakpointProxy>
|
|
39
|
+
<BreakpointProxy
|
|
40
|
+
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
|
41
|
+
<BreakpointContent
|
|
42
|
+
uuid = "E3C50B30-46CF-4D56-8C49-C257C70E0ACC"
|
|
43
|
+
shouldBeEnabled = "No"
|
|
44
|
+
ignoreCount = "0"
|
|
45
|
+
continueAfterRunningActions = "No"
|
|
46
|
+
filePath = "Penthera.swift"
|
|
47
|
+
startingColumnNumber = "9223372036854775807"
|
|
48
|
+
endingColumnNumber = "9223372036854775807"
|
|
49
|
+
startingLineNumber = "26"
|
|
50
|
+
endingLineNumber = "26"
|
|
51
|
+
landmarkName = "updateStatusInfo()"
|
|
52
|
+
landmarkType = "7">
|
|
53
|
+
</BreakpointContent>
|
|
54
|
+
</BreakpointProxy>
|
|
55
|
+
<BreakpointProxy
|
|
56
|
+
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
|
57
|
+
<BreakpointContent
|
|
58
|
+
uuid = "75EF43BF-56FF-4727-B372-E1A0EBC02C61"
|
|
59
|
+
shouldBeEnabled = "Yes"
|
|
60
|
+
ignoreCount = "0"
|
|
61
|
+
continueAfterRunningActions = "No"
|
|
62
|
+
filePath = "Penthera.swift"
|
|
63
|
+
startingColumnNumber = "9223372036854775807"
|
|
64
|
+
endingColumnNumber = "9223372036854775807"
|
|
65
|
+
startingLineNumber = "101"
|
|
66
|
+
endingLineNumber = "101"
|
|
67
|
+
landmarkName = "initializeSdk(user:backplaneUrl:publicKey:privateKey:resolve:reject:)"
|
|
68
|
+
landmarkType = "7">
|
|
69
|
+
</BreakpointContent>
|
|
70
|
+
</BreakpointProxy>
|
|
71
|
+
<BreakpointProxy
|
|
72
|
+
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
|
73
|
+
<BreakpointContent
|
|
74
|
+
uuid = "EF36B51B-4FC2-4989-A791-180E3212EFE3"
|
|
75
|
+
shouldBeEnabled = "Yes"
|
|
76
|
+
ignoreCount = "0"
|
|
77
|
+
continueAfterRunningActions = "No"
|
|
78
|
+
filePath = "Penthera.swift"
|
|
79
|
+
startingColumnNumber = "9223372036854775807"
|
|
80
|
+
endingColumnNumber = "9223372036854775807"
|
|
81
|
+
startingLineNumber = "149"
|
|
82
|
+
endingLineNumber = "149"
|
|
83
|
+
landmarkName = "getDownloadedAsset(assetID:)"
|
|
84
|
+
landmarkType = "7">
|
|
85
|
+
</BreakpointContent>
|
|
86
|
+
</BreakpointProxy>
|
|
87
|
+
<BreakpointProxy
|
|
88
|
+
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
|
89
|
+
<BreakpointContent
|
|
90
|
+
uuid = "C467C00E-2428-4D24-843A-E7CDF28CB553"
|
|
91
|
+
shouldBeEnabled = "Yes"
|
|
92
|
+
ignoreCount = "0"
|
|
93
|
+
continueAfterRunningActions = "No"
|
|
94
|
+
filePath = "Penthera.swift"
|
|
95
|
+
startingColumnNumber = "9223372036854775807"
|
|
96
|
+
endingColumnNumber = "9223372036854775807"
|
|
97
|
+
startingLineNumber = "148"
|
|
98
|
+
endingLineNumber = "148"
|
|
99
|
+
landmarkName = "getDownloadedAsset(assetID:)"
|
|
100
|
+
landmarkType = "7">
|
|
101
|
+
</BreakpointContent>
|
|
102
|
+
</BreakpointProxy>
|
|
103
|
+
</Breakpoints>
|
|
104
|
+
</Bucket>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>SchemeUserState</key>
|
|
6
|
+
<dict>
|
|
7
|
+
<key>Penthera.xcscheme_^#shared#^_</key>
|
|
8
|
+
<dict>
|
|
9
|
+
<key>orderHint</key>
|
|
10
|
+
<integer>0</integer>
|
|
11
|
+
</dict>
|
|
12
|
+
</dict>
|
|
13
|
+
</dict>
|
|
14
|
+
</plist>
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.usePenthera = void 0;
|
|
7
7
|
var _zustand = require("zustand");
|
|
8
8
|
var _nativeModules = require("../../nativeModules");
|
|
9
|
-
const usePenthera = (0, _zustand.create)(set => ({
|
|
9
|
+
const usePenthera = (0, _zustand.create)((set, get) => ({
|
|
10
10
|
assets: [],
|
|
11
11
|
assetsProgress: {},
|
|
12
12
|
assetError: [],
|
|
@@ -67,8 +67,11 @@ const usePenthera = (0, _zustand.create)(set => ({
|
|
|
67
67
|
drm
|
|
68
68
|
}));
|
|
69
69
|
return set(state => ({
|
|
70
|
-
assets: [...state.assets,
|
|
71
|
-
|
|
70
|
+
assets: [...state.assets, {
|
|
71
|
+
...item,
|
|
72
|
+
id: item.data.mediaId
|
|
73
|
+
}],
|
|
74
|
+
assetsPending: state.assetsPending.filter(asset => asset.id !== item.data.mediaId)
|
|
72
75
|
}));
|
|
73
76
|
} catch (error) {
|
|
74
77
|
console.error('error: downloadAsset', error);
|
|
@@ -76,8 +79,10 @@ const usePenthera = (0, _zustand.create)(set => ({
|
|
|
76
79
|
},
|
|
77
80
|
deleteMany: async assetIds => {
|
|
78
81
|
try {
|
|
79
|
-
const
|
|
80
|
-
const
|
|
82
|
+
const vpids = assetIds.map(assetId => get().getVpidByMediaId(assetId));
|
|
83
|
+
const response = await (0, _nativeModules.deleteMany)(vpids);
|
|
84
|
+
const vpidsDeleted = Object.keys(response).filter(item => response[item]);
|
|
85
|
+
const deleted = vpidsDeleted.map(assetId => get().getMediaIdByVpid(assetId));
|
|
81
86
|
return set(state => {
|
|
82
87
|
const updatedAssetsProgress = {
|
|
83
88
|
...state.assetsProgress
|
|
@@ -101,7 +106,8 @@ const usePenthera = (0, _zustand.create)(set => ({
|
|
|
101
106
|
},
|
|
102
107
|
onPlayVideo: async assetId => {
|
|
103
108
|
try {
|
|
104
|
-
const
|
|
109
|
+
const vpid = get().getVpidByMediaId(assetId);
|
|
110
|
+
const response = await (0, _nativeModules.playAsset)(vpid);
|
|
105
111
|
return response;
|
|
106
112
|
} catch (error) {
|
|
107
113
|
console.log('error in onPlayVideo', error);
|
|
@@ -145,6 +151,14 @@ const usePenthera = (0, _zustand.create)(set => ({
|
|
|
145
151
|
set(state => ({
|
|
146
152
|
assetsPending: state.assetsPending.filter(asset => asset.id !== assetId)
|
|
147
153
|
}));
|
|
154
|
+
},
|
|
155
|
+
getVpidByMediaId: mediaId => {
|
|
156
|
+
var _get$assets$find, _get$assets$find$data;
|
|
157
|
+
return ((_get$assets$find = get().assets.find(item => item.data.mediaId === mediaId)) === null || _get$assets$find === void 0 ? void 0 : (_get$assets$find$data = _get$assets$find.data) === null || _get$assets$find$data === void 0 ? void 0 : _get$assets$find$data.vpid) ?? '';
|
|
158
|
+
},
|
|
159
|
+
getMediaIdByVpid: vpid => {
|
|
160
|
+
var _get$assets, _get$assets$find2, _get$assets$find2$dat;
|
|
161
|
+
return ((_get$assets = get().assets) === null || _get$assets === void 0 ? void 0 : (_get$assets$find2 = _get$assets.find(item => item.data.vpid === vpid)) === null || _get$assets$find2 === void 0 ? void 0 : (_get$assets$find2$dat = _get$assets$find2.data) === null || _get$assets$find2$dat === void 0 ? void 0 : _get$assets$find2$dat.mediaId) ?? '';
|
|
148
162
|
}
|
|
149
163
|
}));
|
|
150
164
|
exports.usePenthera = usePenthera;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_zustand","require","_nativeModules","usePenthera","create","set","assets","assetsProgress","assetError","assetsPending","loadAssets","addAsset","asset","state","updateAssetsProgress","progress","updateAssetCompleted","assetID","map","item","id","isCompleted","onGetAllAssets","getDownloads","Array","isArray","uniqueAssets","filter","index","self","findIndex","i","error","console","log","onDownload","_ref","url","drm","download","JSON","stringify","deleteMany","assetIds","response","
|
|
1
|
+
{"version":3,"names":["_zustand","require","_nativeModules","usePenthera","create","set","get","assets","assetsProgress","assetError","assetsPending","loadAssets","addAsset","asset","state","updateAssetsProgress","progress","updateAssetCompleted","assetID","map","item","id","isCompleted","onGetAllAssets","getDownloads","Array","isArray","uniqueAssets","filter","index","self","findIndex","i","error","console","log","onDownload","_ref","url","drm","download","JSON","stringify","data","mediaId","deleteMany","assetIds","vpids","assetId","getVpidByMediaId","response","vpidsDeleted","Object","keys","deleted","getMediaIdByVpid","updatedAssetsProgress","forEach","includes","onPauseDownload","pauseDownload","onPlayVideo","vpid","playAsset","setError","dataError","assetIdExists","some","removeError","assetIdToRemove","setConfigParameters","configParameters","clearAssetProgress","setAssetPending","removeAssetPending","_get$assets$find","_get$assets$find$data","find","_get$assets","_get$assets$find2","_get$assets$find2$dat","exports"],"sourceRoot":"../../../../src","sources":["hooks/usePenthera/usePenthera.tsx"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { create } from 'zustand';
|
|
2
2
|
import { deleteMany, download, getDownloads, pauseDownload, playAsset, configParameters } from '../../nativeModules';
|
|
3
|
-
export const usePenthera = create(set => ({
|
|
3
|
+
export const usePenthera = create((set, get) => ({
|
|
4
4
|
assets: [],
|
|
5
5
|
assetsProgress: {},
|
|
6
6
|
assetError: [],
|
|
@@ -61,8 +61,11 @@ export const usePenthera = create(set => ({
|
|
|
61
61
|
drm
|
|
62
62
|
}));
|
|
63
63
|
return set(state => ({
|
|
64
|
-
assets: [...state.assets,
|
|
65
|
-
|
|
64
|
+
assets: [...state.assets, {
|
|
65
|
+
...item,
|
|
66
|
+
id: item.data.mediaId
|
|
67
|
+
}],
|
|
68
|
+
assetsPending: state.assetsPending.filter(asset => asset.id !== item.data.mediaId)
|
|
66
69
|
}));
|
|
67
70
|
} catch (error) {
|
|
68
71
|
console.error('error: downloadAsset', error);
|
|
@@ -70,8 +73,10 @@ export const usePenthera = create(set => ({
|
|
|
70
73
|
},
|
|
71
74
|
deleteMany: async assetIds => {
|
|
72
75
|
try {
|
|
73
|
-
const
|
|
74
|
-
const
|
|
76
|
+
const vpids = assetIds.map(assetId => get().getVpidByMediaId(assetId));
|
|
77
|
+
const response = await deleteMany(vpids);
|
|
78
|
+
const vpidsDeleted = Object.keys(response).filter(item => response[item]);
|
|
79
|
+
const deleted = vpidsDeleted.map(assetId => get().getMediaIdByVpid(assetId));
|
|
75
80
|
return set(state => {
|
|
76
81
|
const updatedAssetsProgress = {
|
|
77
82
|
...state.assetsProgress
|
|
@@ -95,7 +100,8 @@ export const usePenthera = create(set => ({
|
|
|
95
100
|
},
|
|
96
101
|
onPlayVideo: async assetId => {
|
|
97
102
|
try {
|
|
98
|
-
const
|
|
103
|
+
const vpid = get().getVpidByMediaId(assetId);
|
|
104
|
+
const response = await playAsset(vpid);
|
|
99
105
|
return response;
|
|
100
106
|
} catch (error) {
|
|
101
107
|
console.log('error in onPlayVideo', error);
|
|
@@ -139,6 +145,14 @@ export const usePenthera = create(set => ({
|
|
|
139
145
|
set(state => ({
|
|
140
146
|
assetsPending: state.assetsPending.filter(asset => asset.id !== assetId)
|
|
141
147
|
}));
|
|
148
|
+
},
|
|
149
|
+
getVpidByMediaId: mediaId => {
|
|
150
|
+
var _get$assets$find, _get$assets$find$data;
|
|
151
|
+
return ((_get$assets$find = get().assets.find(item => item.data.mediaId === mediaId)) === null || _get$assets$find === void 0 ? void 0 : (_get$assets$find$data = _get$assets$find.data) === null || _get$assets$find$data === void 0 ? void 0 : _get$assets$find$data.vpid) ?? '';
|
|
152
|
+
},
|
|
153
|
+
getMediaIdByVpid: vpid => {
|
|
154
|
+
var _get$assets, _get$assets$find2, _get$assets$find2$dat;
|
|
155
|
+
return ((_get$assets = get().assets) === null || _get$assets === void 0 ? void 0 : (_get$assets$find2 = _get$assets.find(item => item.data.vpid === vpid)) === null || _get$assets$find2 === void 0 ? void 0 : (_get$assets$find2$dat = _get$assets$find2.data) === null || _get$assets$find2$dat === void 0 ? void 0 : _get$assets$find2$dat.mediaId) ?? '';
|
|
142
156
|
}
|
|
143
157
|
}));
|
|
144
158
|
//# sourceMappingURL=usePenthera.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["create","deleteMany","download","getDownloads","pauseDownload","playAsset","configParameters","usePenthera","set","assets","assetsProgress","assetError","assetsPending","loadAssets","addAsset","asset","state","updateAssetsProgress","progress","updateAssetCompleted","assetID","map","item","id","isCompleted","onGetAllAssets","Array","isArray","uniqueAssets","filter","index","self","findIndex","i","error","console","log","onDownload","_ref","url","drm","JSON","stringify","assetIds","response","
|
|
1
|
+
{"version":3,"names":["create","deleteMany","download","getDownloads","pauseDownload","playAsset","configParameters","usePenthera","set","get","assets","assetsProgress","assetError","assetsPending","loadAssets","addAsset","asset","state","updateAssetsProgress","progress","updateAssetCompleted","assetID","map","item","id","isCompleted","onGetAllAssets","Array","isArray","uniqueAssets","filter","index","self","findIndex","i","error","console","log","onDownload","_ref","url","drm","JSON","stringify","data","mediaId","assetIds","vpids","assetId","getVpidByMediaId","response","vpidsDeleted","Object","keys","deleted","getMediaIdByVpid","updatedAssetsProgress","forEach","includes","onPauseDownload","onPlayVideo","vpid","setError","dataError","assetIdExists","some","removeError","assetIdToRemove","setConfigParameters","clearAssetProgress","setAssetPending","removeAssetPending","_get$assets$find","_get$assets$find$data","find","_get$assets","_get$assets$find2","_get$assets$find2$dat"],"sourceRoot":"../../../../src","sources":["hooks/usePenthera/usePenthera.tsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePenthera.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePenthera/usePenthera.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAW7B,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"usePenthera.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePenthera/usePenthera.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAW7B,eAAO,MAAM,WAAW,6FA6JvB,CAAC"}
|
|
@@ -70,6 +70,8 @@ export type PentheraAction = {
|
|
|
70
70
|
setAssetPending: (assets: PentheraTypes.ItemCatalog) => void;
|
|
71
71
|
removeAssetPending: (assetID: string) => void;
|
|
72
72
|
removeError: (id: string) => void;
|
|
73
|
+
getVpidByMediaId: (mediaId: string) => string;
|
|
74
|
+
getMediaIdByVpid: (vpid: string) => string;
|
|
73
75
|
};
|
|
74
76
|
export type Event = {
|
|
75
77
|
code: PentheraEvent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePenthera.types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePenthera/usePenthera.types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,oBAAY,aAAa;IACvB,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,6BAA6B,kCAAkC;IAC/D,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;CAC5C;AACD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAC7B,KAAK,QAAQ,GAAG,MAAM,CAAC;AAEvB,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,aAAa,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC;IACzC,cAAc,EAAE,aAAa,GAAG,EAAE,CAAC;IACnC,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;IAC9B,aAAa,EAAE,aAAa,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC;IAC1D,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,WAAW,KAAK,IAAI,CAAC;IACrD,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACzC,oBAAoB,EAAE,CAAC,aAAa,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7D,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,UAAU,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC7D,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IACrC,mBAAmB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,iBAAiB,KAAK,IAAI,CAAC;IACrE,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,oBAAoB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,eAAe,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,KAAK,IAAI,CAAC;IAC7D,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"usePenthera.types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePenthera/usePenthera.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export declare namespace PentheraTypes {
|
|
|
10
10
|
drm: boolean | string;
|
|
11
11
|
thumbnails?: Thumbnails;
|
|
12
12
|
subtitles?: Subtitles;
|
|
13
|
-
data
|
|
13
|
+
data: DataItem;
|
|
14
14
|
isCompleted?: boolean;
|
|
15
15
|
download_percentage?: number;
|
|
16
16
|
isPaused?: boolean;
|
|
@@ -53,6 +53,8 @@ export declare namespace PentheraTypes {
|
|
|
53
53
|
isExpired?: boolean;
|
|
54
54
|
effectiveExpiryDate?: string;
|
|
55
55
|
expiryDate?: string;
|
|
56
|
+
mediaId: string;
|
|
57
|
+
vpid: string;
|
|
56
58
|
}
|
|
57
59
|
interface Classification {
|
|
58
60
|
code: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PentheraTypes.d.ts","sourceRoot":"","sources":["../../../src/interface/PentheraTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC,UAAiB,eAAe;QAC9B,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB;IAED,UAAiB,WAAW;QAC1B,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,IAAI,
|
|
1
|
+
{"version":3,"file":"PentheraTypes.d.ts","sourceRoot":"","sources":["../../../src/interface/PentheraTypes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -16,145 +16,161 @@ import {
|
|
|
16
16
|
} from '../../nativeModules';
|
|
17
17
|
import type { PentheraTypes } from '../../interface/PentheraTypes';
|
|
18
18
|
|
|
19
|
-
export const usePenthera = create<PentheraState & PentheraAction>(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
})),
|
|
28
|
-
addAsset: (asset) =>
|
|
29
|
-
set((state) => ({
|
|
30
|
-
assets: [...state.assets, asset],
|
|
31
|
-
})),
|
|
32
|
-
updateAssetsProgress: (progress) =>
|
|
33
|
-
set((state) => {
|
|
34
|
-
return {
|
|
35
|
-
assetsProgress: {
|
|
36
|
-
...state.assetsProgress,
|
|
37
|
-
...progress,
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
}),
|
|
41
|
-
updateAssetCompleted: (assetID: string) => {
|
|
42
|
-
set((state) => {
|
|
43
|
-
const assets = state.assets.map((item) => {
|
|
44
|
-
if (item.id === assetID) {
|
|
45
|
-
return { ...item, isCompleted: true };
|
|
46
|
-
}
|
|
47
|
-
return item;
|
|
48
|
-
});
|
|
49
|
-
return {
|
|
19
|
+
export const usePenthera = create<PentheraState & PentheraAction>(
|
|
20
|
+
(set, get) => ({
|
|
21
|
+
assets: [],
|
|
22
|
+
assetsProgress: {},
|
|
23
|
+
assetError: [],
|
|
24
|
+
assetsPending: [],
|
|
25
|
+
loadAssets: (assets: PentheraState['assets']) =>
|
|
26
|
+
set(() => ({
|
|
50
27
|
assets,
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
onDownload: async ({ item, url, drm }) => {
|
|
71
|
-
try {
|
|
72
|
-
await download(JSON.stringify({ item, url, drm }));
|
|
73
|
-
return set((state) => ({
|
|
74
|
-
assets: [...state.assets, item],
|
|
75
|
-
assetsPending: state.assetsPending.filter(
|
|
76
|
-
(asset) => asset.id !== item.id
|
|
77
|
-
),
|
|
78
|
-
}));
|
|
79
|
-
} catch (error) {
|
|
80
|
-
console.error('error: downloadAsset', error);
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
deleteMany: async (assetIds: string[]) => {
|
|
84
|
-
try {
|
|
85
|
-
const response = await deleteMany(assetIds);
|
|
86
|
-
const deleted = Object.keys(response).filter((item) => response[item]);
|
|
87
|
-
|
|
88
|
-
return set((state) => {
|
|
89
|
-
const updatedAssetsProgress = { ...state.assetsProgress };
|
|
90
|
-
deleted.forEach((assetId: string) => {
|
|
91
|
-
if (state) {
|
|
92
|
-
delete updatedAssetsProgress[assetId];
|
|
28
|
+
})),
|
|
29
|
+
addAsset: (asset) =>
|
|
30
|
+
set((state) => ({
|
|
31
|
+
assets: [...state.assets, asset],
|
|
32
|
+
})),
|
|
33
|
+
updateAssetsProgress: (progress) =>
|
|
34
|
+
set((state) => {
|
|
35
|
+
return {
|
|
36
|
+
assetsProgress: {
|
|
37
|
+
...state.assetsProgress,
|
|
38
|
+
...progress,
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}),
|
|
42
|
+
updateAssetCompleted: (assetID: string) => {
|
|
43
|
+
set((state) => {
|
|
44
|
+
const assets = state.assets.map((item) => {
|
|
45
|
+
if (item.id === assetID) {
|
|
46
|
+
return { ...item, isCompleted: true };
|
|
93
47
|
}
|
|
48
|
+
return item;
|
|
94
49
|
});
|
|
95
50
|
return {
|
|
96
|
-
assets
|
|
97
|
-
(asset) => !deleted.includes(asset.id as string)
|
|
98
|
-
),
|
|
99
|
-
assetsProgress: updatedAssetsProgress,
|
|
51
|
+
assets,
|
|
100
52
|
};
|
|
101
53
|
});
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
(
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
};
|
|
54
|
+
},
|
|
55
|
+
onGetAllAssets: async () => {
|
|
56
|
+
try {
|
|
57
|
+
const assets: PentheraTypes.ItemCatalog[] = await getDownloads('');
|
|
58
|
+
if (Array.isArray(assets)) {
|
|
59
|
+
const uniqueAssets = assets.filter(
|
|
60
|
+
(item, index, self) =>
|
|
61
|
+
self.findIndex((i) => i.id === item.id) === index
|
|
62
|
+
);
|
|
63
|
+
return set(() => ({
|
|
64
|
+
assets: uniqueAssets,
|
|
65
|
+
}));
|
|
66
|
+
}
|
|
67
|
+
} catch (error) {
|
|
68
|
+
console.log('error in getDownloads', error);
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
onDownload: async ({ item, url, drm }) => {
|
|
72
|
+
try {
|
|
73
|
+
await download(JSON.stringify({ item, url, drm }));
|
|
74
|
+
return set((state) => ({
|
|
75
|
+
assets: [...state.assets, { ...item, id: item.data.mediaId }],
|
|
76
|
+
assetsPending: state.assetsPending.filter(
|
|
77
|
+
(asset) => asset.id !== item.data.mediaId
|
|
78
|
+
),
|
|
79
|
+
}));
|
|
80
|
+
} catch (error) {
|
|
81
|
+
console.error('error: downloadAsset', error);
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
deleteMany: async (assetIds: string[]) => {
|
|
85
|
+
try {
|
|
86
|
+
const vpids = assetIds.map((assetId) =>
|
|
87
|
+
get().getVpidByMediaId(assetId)
|
|
88
|
+
);
|
|
89
|
+
const response = await deleteMany(vpids);
|
|
90
|
+
const vpidsDeleted = Object.keys(response).filter(
|
|
91
|
+
(item) => response[item]
|
|
92
|
+
);
|
|
93
|
+
const deleted = vpidsDeleted.map((assetId) =>
|
|
94
|
+
get().getMediaIdByVpid(assetId)
|
|
95
|
+
);
|
|
96
|
+
return set((state) => {
|
|
97
|
+
const updatedAssetsProgress = { ...state.assetsProgress };
|
|
98
|
+
deleted.forEach((assetId: string) => {
|
|
99
|
+
if (state) {
|
|
100
|
+
delete updatedAssetsProgress[assetId];
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
return {
|
|
104
|
+
assets: state.assets.filter(
|
|
105
|
+
(asset) => !deleted.includes(asset.id as string)
|
|
106
|
+
),
|
|
107
|
+
assetsProgress: updatedAssetsProgress,
|
|
108
|
+
};
|
|
109
|
+
});
|
|
110
|
+
} catch (error) {
|
|
111
|
+
console.error('Error: deleteMany', error);
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
onPauseDownload: async (assetId: string) => {
|
|
115
|
+
await pauseDownload(assetId);
|
|
116
|
+
},
|
|
117
|
+
onPlayVideo: async (assetId: string) => {
|
|
118
|
+
try {
|
|
119
|
+
const vpid = get().getVpidByMediaId(assetId);
|
|
120
|
+
const response: InterfaceDataPlay = await playAsset(vpid);
|
|
121
|
+
return response;
|
|
122
|
+
} catch (error) {
|
|
123
|
+
console.log('error in onPlayVideo', error);
|
|
124
|
+
return {};
|
|
128
125
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
(
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
126
|
+
},
|
|
127
|
+
setError: (dataError: AssetError) => {
|
|
128
|
+
return set((state) => {
|
|
129
|
+
const assetIdExists = state.assetError.some(
|
|
130
|
+
(error) => error.assetId === dataError.assetId
|
|
131
|
+
);
|
|
132
|
+
if (!assetIdExists) {
|
|
133
|
+
return {
|
|
134
|
+
assetError: [...state.assetError, { ...dataError }],
|
|
135
|
+
assetsProgress: {},
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
return state;
|
|
139
|
+
});
|
|
140
|
+
},
|
|
141
|
+
removeError: (assetIdToRemove: string) => {
|
|
142
|
+
return set((state) => ({
|
|
143
|
+
assetError: state.assetError.filter(
|
|
144
|
+
(error) => error.assetId !== assetIdToRemove
|
|
145
|
+
),
|
|
146
|
+
assetsProgress: {},
|
|
147
|
+
}));
|
|
148
|
+
},
|
|
149
|
+
setConfigParameters: async (data) => {
|
|
150
|
+
await configParameters(JSON.stringify(data));
|
|
151
|
+
},
|
|
152
|
+
clearAssetProgress: () => {
|
|
153
|
+
return set(() => ({
|
|
154
|
+
assetsProgress: {},
|
|
155
|
+
}));
|
|
156
|
+
},
|
|
157
|
+
setAssetPending: (asset: PentheraTypes.ItemCatalog) => {
|
|
158
|
+
set((state) => ({
|
|
159
|
+
assetsPending: [...state.assetsPending, asset],
|
|
160
|
+
}));
|
|
161
|
+
},
|
|
162
|
+
removeAssetPending: (assetId: string) => {
|
|
163
|
+
set((state) => ({
|
|
164
|
+
assetsPending: state.assetsPending.filter(
|
|
165
|
+
(asset) => asset.id !== assetId
|
|
166
|
+
),
|
|
167
|
+
}));
|
|
168
|
+
},
|
|
169
|
+
getVpidByMediaId: (mediaId: string) =>
|
|
170
|
+
get().assets.find((item) => item.data.mediaId === mediaId)?.data?.vpid ??
|
|
171
|
+
'',
|
|
172
|
+
getMediaIdByVpid: (vpid: string) =>
|
|
173
|
+
get().assets?.find((item) => item.data.vpid === vpid)?.data?.mediaId ??
|
|
174
|
+
'',
|
|
175
|
+
})
|
|
176
|
+
);
|
|
@@ -78,6 +78,8 @@ export type PentheraAction = {
|
|
|
78
78
|
setAssetPending: (assets: PentheraTypes.ItemCatalog) => void;
|
|
79
79
|
removeAssetPending: (assetID: string) => void;
|
|
80
80
|
removeError: (id: string) => void;
|
|
81
|
+
getVpidByMediaId: (mediaId: string) => string;
|
|
82
|
+
getMediaIdByVpid: (vpid: string) => string;
|
|
81
83
|
};
|
|
82
84
|
|
|
83
85
|
export type Event = {
|
|
@@ -11,7 +11,7 @@ export declare namespace PentheraTypes {
|
|
|
11
11
|
drm: boolean | string;
|
|
12
12
|
thumbnails?: Thumbnails;
|
|
13
13
|
subtitles?: Subtitles;
|
|
14
|
-
data
|
|
14
|
+
data: DataItem;
|
|
15
15
|
isCompleted?: boolean;
|
|
16
16
|
download_percentage?: number;
|
|
17
17
|
isPaused?: boolean;
|
|
@@ -53,6 +53,8 @@ export declare namespace PentheraTypes {
|
|
|
53
53
|
isExpired?: boolean;
|
|
54
54
|
effectiveExpiryDate?: string;
|
|
55
55
|
expiryDate?: string;
|
|
56
|
+
mediaId: string;
|
|
57
|
+
vpid: string;
|
|
56
58
|
}
|
|
57
59
|
|
|
58
60
|
export interface Classification {
|