@takeoffmedia/react-native-penthera 0.8.9 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/ios/Penthera.swift +24 -0
  2. package/package.json +1 -1
@@ -412,6 +412,30 @@ class Penthera: RCTEventEmitter, VirtuosoDownloadEngineNotificationsDelegate {
412
412
  }
413
413
  }
414
414
 
415
+ @objc(delete:withResolver:withRejecter:)
416
+ func deleteAsset(assetID: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
417
+ let downloadComplete = VirtuosoAsset.completedAssets(withAvailabilityFilter: false)
418
+ let downloadPendings = VirtuosoAsset.pendingAssets(withAvailabilityFilter: false)
419
+ let allAssets = downloadComplete + downloadPendings
420
+
421
+ guard let assetToDelete = allAssets.first(where: {
422
+ guard let va = $0 as? VirtuosoAsset else {
423
+ return false
424
+ }
425
+ return va.assetID == assetID
426
+ }) as? VirtuosoAsset else {
427
+ let errorMessage = "delete: asset not found"
428
+ let userInfo = [NSLocalizedDescriptionKey: errorMessage]
429
+ let error = NSError(domain: "takeoffmedia-react-native-penthera", code: 0, userInfo: userInfo)
430
+ reject("ASSET_DELETE_ERROR", errorMessage, error)
431
+ return
432
+ }
433
+
434
+ VirtuosoAsset.delete([assetToDelete]) {
435
+ resolve(assetID)
436
+ }
437
+ }
438
+
415
439
  @objc(deleteMany:withResolver:withRejecter:)
416
440
  func deleteMany(assetIDS: [String], resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
417
441
  // initialize assetResponse {}. Ex {"123":false, "543":false}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@takeoffmedia/react-native-penthera",
3
- "version": "0.8.9",
3
+ "version": "0.9.0",
4
4
  "description": "test",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",