@takeoffmedia/react-native-penthera 0.7.0 → 0.8.1
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/virtuoso/OfflineVideoEngine.kt +28 -19
- package/android/src/main/java/com/takeoffmediareactnativepenthera/virtuoso/util/Util.kt +24 -0
- package/ios/Penthera.swift +4 -80
- package/ios/Util.swift +77 -1
- package/lib/typescript/interface/PentheraTypes.d.ts +7 -0
- package/lib/typescript/interface/PentheraTypes.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/interface/PentheraTypes.ts +8 -0
package/android/src/main/java/com/takeoffmediareactnativepenthera/virtuoso/OfflineVideoEngine.kt
CHANGED
|
@@ -29,6 +29,7 @@ import com.takeoffmediareactnativepenthera.AssetQueueObserver
|
|
|
29
29
|
import com.takeoffmediareactnativepenthera.EventEmitter
|
|
30
30
|
import com.takeoffmediareactnativepenthera.PentheraEvent
|
|
31
31
|
import com.takeoffmediareactnativepenthera.virtuoso.errors.PentheraErrors
|
|
32
|
+
import com.takeoffmediareactnativepenthera.virtuoso.util.Util
|
|
32
33
|
import org.json.JSONArray
|
|
33
34
|
import org.json.JSONObject
|
|
34
35
|
import java.net.MalformedURLException
|
|
@@ -37,6 +38,7 @@ import java.util.UUID
|
|
|
37
38
|
import okhttp3.OkHttpClient
|
|
38
39
|
import okhttp3.Request
|
|
39
40
|
import java.io.IOException
|
|
41
|
+
import kotlinx.coroutines.delay
|
|
40
42
|
|
|
41
43
|
class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
42
44
|
private val virtuoso = Virtuoso(context)
|
|
@@ -173,6 +175,7 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
173
175
|
val dataMap = mutableMapOf<String, Any>()
|
|
174
176
|
var eap = ""
|
|
175
177
|
var ead = ""
|
|
178
|
+
var creationTime = ""
|
|
176
179
|
for (columnName in columnNames) {
|
|
177
180
|
val columnIndex = cursor.getColumnIndex(columnName)
|
|
178
181
|
if (columnIndex >= 0) {
|
|
@@ -212,6 +215,9 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
212
215
|
if (columnName == "eap") {
|
|
213
216
|
eap = value
|
|
214
217
|
}
|
|
218
|
+
if (columnName == "creationTime") {
|
|
219
|
+
creationTime = value
|
|
220
|
+
}
|
|
215
221
|
if (columnName == "activePercentOfDownloads") {
|
|
216
222
|
val percentage = value.toDouble() * 100
|
|
217
223
|
val isComplete = percentage == 100.0
|
|
@@ -219,6 +225,7 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
219
225
|
}
|
|
220
226
|
if (columnName == "firstPlayTime") {
|
|
221
227
|
(dataMap["data"] as? MutableMap<String, Any> ?: mutableMapOf()).apply {
|
|
228
|
+
put("creationTime", if (value == "0") creationTime else value)
|
|
222
229
|
put("effectiveExpiryDate", if (value == "0") ead else eap);
|
|
223
230
|
put("isReproduced", value != "0");
|
|
224
231
|
}.also { dataMap["data"] = it }
|
|
@@ -266,7 +273,7 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
266
273
|
"Asset is null"
|
|
267
274
|
)
|
|
268
275
|
return
|
|
269
|
-
}
|
|
276
|
+
}
|
|
270
277
|
val body: String
|
|
271
278
|
val status = asset.downloadStatus
|
|
272
279
|
body = when (status) {
|
|
@@ -318,43 +325,45 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
|
|
|
318
325
|
|
|
319
326
|
|
|
320
327
|
fun getByAssetId(assetId: String): String? {
|
|
321
|
-
|
|
328
|
+
return Util.retryWithDelay(maxRetries = 5, delayMillis = 1000) {
|
|
322
329
|
val list: MutableList<IIdentifier> = virtuoso.assetManager.getByAssetId(assetId)
|
|
330
|
+
if (list.isNotEmpty()) {
|
|
331
|
+
val asset = list[0] as VirtuosoSegmentedFile
|
|
323
332
|
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
if (offlineUrl != null) {
|
|
331
|
-
val request = Request.Builder()
|
|
332
|
-
.url(offlineUrl.toString())
|
|
333
|
-
.build()
|
|
333
|
+
// This is a workaround to handle ancillary files
|
|
334
|
+
val offlineUrl = asset.playbackURL
|
|
335
|
+
if (offlineUrl != null) {
|
|
336
|
+
val request = Request.Builder()
|
|
337
|
+
.url(offlineUrl.toString())
|
|
338
|
+
.build()
|
|
334
339
|
|
|
340
|
+
try {
|
|
335
341
|
client.newCall(request).execute().use { response ->
|
|
336
342
|
if (!response.isSuccessful) throw IOException("Unexpected code $response")
|
|
337
343
|
}
|
|
338
344
|
|
|
339
345
|
val keyValueMap = HashMap<String, Any>()
|
|
340
346
|
keyValueMap["offlineUrl"] = offlineUrl.toString()
|
|
341
|
-
keyValueMap["metadata"] = asset
|
|
347
|
+
keyValueMap["metadata"] = asset.metadata.toString()
|
|
342
348
|
|
|
343
349
|
val ancillaryFiles = (asset as ISegmentedAsset).getAncillaryFiles(context)
|
|
344
350
|
|
|
345
351
|
// HERE THE ASSET MANIFEST IS REQUESTED
|
|
346
352
|
keyValueMap["ancillary"] = ancillaryFiles
|
|
347
|
-
return gson.toJson(keyValueMap)
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
println("Error: offlineUrl is null")
|
|
353
|
+
return@retryWithDelay gson.toJson(keyValueMap)
|
|
354
|
+
} catch (e: IOException) {
|
|
355
|
+
println("Error: ${e.message}")
|
|
351
356
|
}
|
|
352
|
-
|
|
357
|
+
} else {
|
|
358
|
+
// Handle the case where offlineUrl is null
|
|
359
|
+
println("Error: offlineUrl is null")
|
|
353
360
|
}
|
|
354
361
|
}
|
|
355
|
-
|
|
362
|
+
null
|
|
363
|
+
}
|
|
356
364
|
}
|
|
357
365
|
|
|
366
|
+
|
|
358
367
|
private fun toSubtitleMimeType(format: String?): String? {
|
|
359
368
|
if (format == null) {
|
|
360
369
|
return null
|
|
@@ -55,5 +55,29 @@ object Util {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
+
fun <T> retryWithDelay(
|
|
59
|
+
maxRetries: Int,
|
|
60
|
+
delayMillis: Long,
|
|
61
|
+
block: () -> T?
|
|
62
|
+
): T? {
|
|
63
|
+
var retryCount = 0
|
|
64
|
+
var result: T? = null
|
|
65
|
+
|
|
66
|
+
while (result == null && retryCount < maxRetries) {
|
|
67
|
+
result = block()
|
|
68
|
+
if (result == null) {
|
|
69
|
+
retryCount++
|
|
70
|
+
try {
|
|
71
|
+
Thread.sleep(delayMillis)
|
|
72
|
+
} catch (e: InterruptedException) {
|
|
73
|
+
Thread.currentThread().interrupt()
|
|
74
|
+
return null
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
return result
|
|
80
|
+
}
|
|
81
|
+
|
|
58
82
|
|
|
59
83
|
}
|
package/ios/Penthera.swift
CHANGED
|
@@ -20,13 +20,6 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
20
20
|
var assetError: String = ""
|
|
21
21
|
var vcHttpServer: VirtuosoClientHTTPServer? = nil
|
|
22
22
|
|
|
23
|
-
func getAssetId(asset: VirtuosoAsset) -> String {
|
|
24
|
-
if let mediaId = asset.userInfo?["mediaId"] as? String {
|
|
25
|
-
return mediaId
|
|
26
|
-
} else {
|
|
27
|
-
return asset.assetID
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
23
|
|
|
31
24
|
func updateStatusInfo() {
|
|
32
25
|
DispatchQueue.global().async {
|
|
@@ -146,16 +139,7 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
146
139
|
}
|
|
147
140
|
}
|
|
148
141
|
|
|
149
|
-
|
|
150
|
-
let formatter = DateComponentsFormatter()
|
|
151
|
-
formatter.allowedUnits = [.hour, .minute, .second]
|
|
152
|
-
formatter.unitsStyle = .positional
|
|
153
|
-
formatter.zeroFormattingBehavior = .pad
|
|
154
|
-
guard let interval = timeInterval else {
|
|
155
|
-
return "00:00:00"
|
|
156
|
-
}
|
|
157
|
-
return formatter.string(from: interval) ?? "00:00:00"
|
|
158
|
-
}
|
|
142
|
+
|
|
159
143
|
|
|
160
144
|
func dateToString (_ date: Date?) -> String? {
|
|
161
145
|
let dateFormatter = DateFormatter()
|
|
@@ -414,69 +398,9 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
|
|
|
414
398
|
|
|
415
399
|
var offlineCatalogs: [OfflineCatalog] = []
|
|
416
400
|
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
let show = va.findAllAncillaries(withTag: "show").first
|
|
421
|
-
let thumbnails = Thumbnails(
|
|
422
|
-
thumbnail: thumbnail?.fileDownloadURL ?? "",
|
|
423
|
-
show: show?.fileDownloadURL ?? ""
|
|
424
|
-
)
|
|
425
|
-
|
|
426
|
-
let expiryDate = va.expiryDate
|
|
427
|
-
let effectiveExpiryDate = va.effectiveExpiryDate
|
|
428
|
-
let isReproduced = va.firstPlayDateTime
|
|
429
|
-
let creationDate = va.creationDateTime.toSeconds()
|
|
430
|
-
|
|
431
|
-
var dataItem = DataItem(
|
|
432
|
-
title: va.userInfo?["title"] as? String,
|
|
433
|
-
seasonId: va.userInfo?["seasonId"] as? String,
|
|
434
|
-
seasonTitle: va.userInfo?["seasonTitle"] as? String,
|
|
435
|
-
duration: va.duration,
|
|
436
|
-
estimatedSize: Int(va.estimatedSize),
|
|
437
|
-
dataOffers: parseDataOffersInObject(anyElement: va.userInfo?["dataOffers"] as Any),
|
|
438
|
-
expiryAfterPlay: timeIntervalToString(va.expiryAfterPlay),
|
|
439
|
-
expiryAfterDownload: timeIntervalToString(va.expiryAfterDownload),
|
|
440
|
-
isExpired: va.isExpired,
|
|
441
|
-
inForcedExpire: va.inForcedExpire,
|
|
442
|
-
isReproduced: isReproduced != nil,
|
|
443
|
-
mediaId: va.userInfo?["mediaId"] as? String,
|
|
444
|
-
vpid: va.userInfo?["vpid"] as? String
|
|
445
|
-
)
|
|
446
|
-
|
|
447
|
-
if let effectiveExpiryDate = effectiveExpiryDate {
|
|
448
|
-
dataItem.effectiveExpiryDate = isReproduced != nil ? va.expiryAfterPlay : va.expiryAfterDownload
|
|
449
|
-
}
|
|
450
|
-
|
|
451
|
-
if let expiryDate = expiryDate {
|
|
452
|
-
dataItem.expiryDate = va.expiryDate
|
|
453
|
-
}
|
|
454
|
-
|
|
455
|
-
if va.isExpired {
|
|
456
|
-
va.delete()
|
|
457
|
-
} else {
|
|
458
|
-
let catalog = OfflineCatalog(
|
|
459
|
-
id: getAssetId(asset: va), // Change vpid to assetId
|
|
460
|
-
title: va.description,
|
|
461
|
-
data: dataItem,
|
|
462
|
-
thumbnails: thumbnails,
|
|
463
|
-
isCompleted: va.downloadCompleteDateTime != nil ? true : false,
|
|
464
|
-
isPaused: va.isPaused,
|
|
465
|
-
percentage: Float(va.fractionComplete),
|
|
466
|
-
creationTime: creationDate
|
|
467
|
-
)
|
|
468
|
-
offlineCatalogs.append(catalog)
|
|
469
|
-
}
|
|
470
|
-
}
|
|
471
|
-
|
|
472
|
-
// Process completed assets
|
|
473
|
-
for case let va as VirtuosoAsset in completedAssets {
|
|
474
|
-
processAsset(va)
|
|
475
|
-
}
|
|
476
|
-
|
|
477
|
-
// Process pending assets
|
|
478
|
-
for case let va as VirtuosoAsset in pendingAssets {
|
|
479
|
-
processAsset(va)
|
|
401
|
+
let allAssets = completedAssets + pendingAssets
|
|
402
|
+
for case let va as VirtuosoAsset in allAssets {
|
|
403
|
+
offlineCatalogs.append(processAsset(va))
|
|
480
404
|
}
|
|
481
405
|
|
|
482
406
|
let encoder = JSONEncoder()
|
package/ios/Util.swift
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Foundation
|
|
2
|
-
|
|
2
|
+
import VirtuosoClientDownloadEngine
|
|
3
3
|
|
|
4
4
|
extension String {
|
|
5
5
|
func getDictionary() -> [String:AnyObject]? {
|
|
@@ -147,3 +147,79 @@ func extractInteger(from string: String) -> Int {
|
|
|
147
147
|
return 0
|
|
148
148
|
}
|
|
149
149
|
|
|
150
|
+
// Process completed and pending assets using a shared function
|
|
151
|
+
func processAsset(_ va: VirtuosoAsset) -> OfflineCatalog {
|
|
152
|
+
var catalog = OfflineCatalog(id: "", isCompleted: false, isPaused: false, creationTime: "")
|
|
153
|
+
let thumbnail = va.findAllAncillaries(withTag: "thumbnail").first
|
|
154
|
+
let show = va.findAllAncillaries(withTag: "show").first
|
|
155
|
+
let thumbnails = Thumbnails(
|
|
156
|
+
thumbnail: thumbnail?.fileDownloadURL ?? "",
|
|
157
|
+
show: show?.fileDownloadURL ?? ""
|
|
158
|
+
)
|
|
159
|
+
|
|
160
|
+
let expiryDate = va.expiryDate
|
|
161
|
+
let effectiveExpiryDate = va.effectiveExpiryDate
|
|
162
|
+
let isReproduced = va.firstPlayDateTime
|
|
163
|
+
let creationDate = va.creationDateTime.toSeconds()
|
|
164
|
+
let firstPlayDate = va.firstPlayDateTime?.toSeconds()
|
|
165
|
+
|
|
166
|
+
var dataItem = DataItem(
|
|
167
|
+
title: va.userInfo?["title"] as? String,
|
|
168
|
+
seasonId: va.userInfo?["seasonId"] as? String,
|
|
169
|
+
seasonTitle: va.userInfo?["seasonTitle"] as? String,
|
|
170
|
+
duration: va.duration,
|
|
171
|
+
estimatedSize: Int(va.estimatedSize),
|
|
172
|
+
dataOffers: parseDataOffersInObject(anyElement: va.userInfo?["dataOffers"] as Any),
|
|
173
|
+
expiryAfterPlay: timeIntervalToString(va.expiryAfterPlay),
|
|
174
|
+
expiryAfterDownload: timeIntervalToString(va.expiryAfterDownload),
|
|
175
|
+
isExpired: va.isExpired,
|
|
176
|
+
inForcedExpire: va.inForcedExpire,
|
|
177
|
+
isReproduced: isReproduced != nil,
|
|
178
|
+
mediaId: va.userInfo?["mediaId"] as? String,
|
|
179
|
+
vpid: va.userInfo?["vpid"] as? String
|
|
180
|
+
)
|
|
181
|
+
|
|
182
|
+
if effectiveExpiryDate != nil {
|
|
183
|
+
dataItem.effectiveExpiryDate = isReproduced != nil ? va.expiryAfterPlay : va.expiryAfterDownload
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
if expiryDate != nil {
|
|
187
|
+
dataItem.expiryDate = va.expiryDate
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
if va.isExpired {
|
|
191
|
+
va.delete()
|
|
192
|
+
} else {
|
|
193
|
+
catalog = OfflineCatalog(
|
|
194
|
+
id: getAssetId(asset: va), // Change vpid to assetId
|
|
195
|
+
title: va.description,
|
|
196
|
+
data: dataItem,
|
|
197
|
+
thumbnails: thumbnails,
|
|
198
|
+
isCompleted: va.downloadCompleteDateTime != nil ? true : false,
|
|
199
|
+
isPaused: va.isPaused,
|
|
200
|
+
percentage: Float(va.fractionComplete),
|
|
201
|
+
creationTime: isReproduced != nil ? firstPlayDate : creationDate
|
|
202
|
+
)
|
|
203
|
+
}
|
|
204
|
+
return catalog
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
func timeIntervalToString(_ timeInterval: TimeInterval?) -> String {
|
|
208
|
+
let formatter = DateComponentsFormatter()
|
|
209
|
+
formatter.allowedUnits = [.hour, .minute, .second]
|
|
210
|
+
formatter.unitsStyle = .positional
|
|
211
|
+
formatter.zeroFormattingBehavior = .pad
|
|
212
|
+
guard let interval = timeInterval else {
|
|
213
|
+
return "00:00:00"
|
|
214
|
+
}
|
|
215
|
+
return formatter.string(from: interval) ?? "00:00:00"
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
func getAssetId(asset: VirtuosoAsset) -> String {
|
|
219
|
+
if let mediaId = asset.userInfo?["mediaId"] as? String {
|
|
220
|
+
return mediaId
|
|
221
|
+
} else {
|
|
222
|
+
return asset.assetID
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
|
|
@@ -59,6 +59,7 @@ export declare namespace PentheraTypes {
|
|
|
59
59
|
vpid: string;
|
|
60
60
|
isReproduced?: boolean;
|
|
61
61
|
hasZoom?: boolean;
|
|
62
|
+
infoVideoPlayer?: IInfoVideoPlayer;
|
|
62
63
|
}
|
|
63
64
|
interface Classification {
|
|
64
65
|
code: string;
|
|
@@ -160,5 +161,11 @@ export declare namespace PentheraTypes {
|
|
|
160
161
|
maxStorageAllowed?: string;
|
|
161
162
|
minimumLowBandWidth?: string;
|
|
162
163
|
}
|
|
164
|
+
interface IInfoVideoPlayer {
|
|
165
|
+
title: string;
|
|
166
|
+
description: string;
|
|
167
|
+
advisoryClassification: string;
|
|
168
|
+
advisoryDescription: string;
|
|
169
|
+
}
|
|
163
170
|
}
|
|
164
171
|
//# sourceMappingURL=PentheraTypes.d.ts.map
|
|
@@ -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,EAAE,QAAQ,CAAC;QACf,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAED,UAAiB,QAAQ;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,GAAG,EAAE,CAAC;QAC9C,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC;QACxB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,OAAO,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PentheraTypes.d.ts","sourceRoot":"","sources":["../../../src/interface/PentheraTypes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@takeoffmedia/react-native-penthera",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.1",
|
|
4
4
|
"description": "test",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -165,4 +165,4 @@
|
|
|
165
165
|
"dependencies": {
|
|
166
166
|
"zustand": "^4.4.0"
|
|
167
167
|
}
|
|
168
|
-
}
|
|
168
|
+
}
|
|
@@ -59,6 +59,7 @@ export declare namespace PentheraTypes {
|
|
|
59
59
|
vpid: string;
|
|
60
60
|
isReproduced?: boolean;
|
|
61
61
|
hasZoom?: boolean;
|
|
62
|
+
infoVideoPlayer?: IInfoVideoPlayer;
|
|
62
63
|
}
|
|
63
64
|
|
|
64
65
|
export interface Classification {
|
|
@@ -170,4 +171,11 @@ export declare namespace PentheraTypes {
|
|
|
170
171
|
maxStorageAllowed?: string;
|
|
171
172
|
minimumLowBandWidth?: string;
|
|
172
173
|
}
|
|
174
|
+
|
|
175
|
+
export interface IInfoVideoPlayer {
|
|
176
|
+
title: string;
|
|
177
|
+
description: string;
|
|
178
|
+
advisoryClassification: string;
|
|
179
|
+
advisoryDescription: string;
|
|
180
|
+
}
|
|
173
181
|
}
|