@rntp/player 5.0.0-beta.3 → 5.0.0-beta.5

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 (61) hide show
  1. package/android/build.gradle +7 -0
  2. package/android/src/main/java/com/doublesymmetry/trackplayer/SleepTimerController.kt +128 -0
  3. package/android/src/main/java/com/doublesymmetry/trackplayer/TrackPlayerModule.kt +40 -0
  4. package/android/src/main/java/com/doublesymmetry/trackplayer/TrackPlayerPlaybackService.kt +107 -87
  5. package/android/src/main/java/com/doublesymmetry/trackplayer/models/BrowseTree.kt +51 -20
  6. package/android/src/main/java/com/doublesymmetry/trackplayer/models/PlayerConfig.kt +12 -1
  7. package/android/src/test/java/com/doublesymmetry/trackplayer/ExoPlayerIntegrationTest.kt +319 -0
  8. package/android/src/test/java/com/doublesymmetry/trackplayer/SleepTimerIntegrationTest.kt +473 -0
  9. package/android/src/test/java/com/doublesymmetry/trackplayer/SleepTimerStateTest.kt +58 -0
  10. package/android/src/test/java/com/doublesymmetry/trackplayer/models/BrowseNavigationTest.kt +215 -0
  11. package/android/src/test/java/com/doublesymmetry/trackplayer/models/BrowseTreeTest.kt +166 -0
  12. package/android/src/test/java/com/doublesymmetry/trackplayer/models/EmitEventTest.kt +68 -0
  13. package/android/src/test/java/com/doublesymmetry/trackplayer/models/PlayerConfigTest.kt +400 -0
  14. package/android/src/test/java/com/doublesymmetry/trackplayer/models/TrackPlayerMediaItemTest.kt +380 -0
  15. package/android/src/test/resources/robolectric.properties +1 -0
  16. package/ios/CarPlay/RNTPCarPlaySceneDelegate.swift +43 -14
  17. package/ios/TrackPlayer.swift +46 -101
  18. package/ios/TrackPlayerBridge.mm +2 -0
  19. package/ios/player/AVPlayerEngine.swift +46 -32
  20. package/ios/player/AudioCache.swift +34 -0
  21. package/ios/player/AudioPlayer.swift +36 -21
  22. package/ios/player/CacheProxyServer.swift +429 -0
  23. package/ios/player/DownloadCoordinator.swift +242 -0
  24. package/ios/player/Preloader.swift +21 -90
  25. package/ios/player/SleepTimerController.swift +147 -0
  26. package/ios/tests/AVPlayerEngineIntegrationTests.swift +230 -0
  27. package/ios/tests/AudioPlayerTests.swift +6 -0
  28. package/ios/tests/CacheProxyServerTests.swift +403 -0
  29. package/ios/tests/DownloadCoordinatorTests.swift +197 -0
  30. package/ios/tests/LocalAudioServer.swift +171 -0
  31. package/ios/tests/MockPlayerEngine.swift +1 -0
  32. package/ios/tests/QueueManagerTests.swift +6 -0
  33. package/ios/tests/SleepTimerIntegrationTests.swift +408 -0
  34. package/ios/tests/SleepTimerTests.swift +70 -0
  35. package/lib/commonjs/NativeTrackPlayer.js.map +1 -1
  36. package/lib/commonjs/audio.js +39 -4
  37. package/lib/commonjs/audio.js.map +1 -1
  38. package/lib/commonjs/interfaces/PlayerConfig.js +1 -1
  39. package/lib/commonjs/interfaces/PlayerConfig.js.map +1 -1
  40. package/lib/module/NativeTrackPlayer.js.map +1 -1
  41. package/lib/module/audio.js +37 -4
  42. package/lib/module/audio.js.map +1 -1
  43. package/lib/module/interfaces/PlayerConfig.js +1 -1
  44. package/lib/module/interfaces/PlayerConfig.js.map +1 -1
  45. package/lib/typescript/src/NativeTrackPlayer.d.ts +2 -0
  46. package/lib/typescript/src/NativeTrackPlayer.d.ts.map +1 -1
  47. package/lib/typescript/src/audio.d.ts +16 -4
  48. package/lib/typescript/src/audio.d.ts.map +1 -1
  49. package/lib/typescript/src/interfaces/BrowseTree.d.ts +35 -5
  50. package/lib/typescript/src/interfaces/BrowseTree.d.ts.map +1 -1
  51. package/lib/typescript/src/interfaces/MediaItem.d.ts +4 -1
  52. package/lib/typescript/src/interfaces/MediaItem.d.ts.map +1 -1
  53. package/lib/typescript/src/interfaces/PlayerConfig.d.ts +19 -2
  54. package/lib/typescript/src/interfaces/PlayerConfig.d.ts.map +1 -1
  55. package/package.json +4 -1
  56. package/src/NativeTrackPlayer.ts +4 -0
  57. package/src/audio.ts +37 -4
  58. package/src/interfaces/BrowseTree.ts +40 -5
  59. package/src/interfaces/MediaItem.ts +4 -1
  60. package/src/interfaces/PlayerConfig.ts +22 -3
  61. package/ios/player/CachingResourceLoader.swift +0 -273
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.addEventListener = addEventListener;
7
7
  exports.addMediaItem = addMediaItem;
8
8
  exports.addMediaItems = addMediaItems;
9
+ exports.cancelPreload = cancelPreload;
9
10
  exports.cancelSleepTimer = cancelSleepTimer;
10
11
  exports.clear = clear;
11
12
  exports.clearCache = clearCache;
@@ -26,6 +27,7 @@ exports.isShuffleEnabled = isShuffleEnabled;
26
27
  exports.moveMediaItem = moveMediaItem;
27
28
  exports.pause = pause;
28
29
  exports.play = play;
30
+ exports.preload = preload;
29
31
  exports.registerBackgroundEventHandler = registerBackgroundEventHandler;
30
32
  exports.removeMediaItem = removeMediaItem;
31
33
  exports.removeMediaItems = removeMediaItems;
@@ -289,6 +291,23 @@ function clearCache() {
289
291
  TrackPlayer.clearCache();
290
292
  }
291
293
 
294
+ /**
295
+ * Preload a media item into the cache for instant playback later.
296
+ * Works independently of the queue — any future play of the same URL
297
+ * will be a cache hit.
298
+ */
299
+ function preload(item, options) {
300
+ TrackPlayer.preload(resolveMediaItem(item), options?.duration ?? -1);
301
+ }
302
+
303
+ /**
304
+ * Cancel an in-progress preload for the given media item.
305
+ * Partial data remains in cache.
306
+ */
307
+ function cancelPreload(item) {
308
+ TrackPlayer.cancelPreload(resolveMediaItem(item));
309
+ }
310
+
292
311
  /**
293
312
  * Replace the media item at the given index.
294
313
  * May continue playback seamlessly if the URL hasn't changed.
@@ -403,23 +422,39 @@ function updateProgressSyncHeaders(headers) {
403
422
 
404
423
  // ─── Browse Tree ─────────────────────────────────────
405
424
 
425
+ function resolveBrowseItem(item) {
426
+ return {
427
+ ...item,
428
+ ...(item.url != null ? {
429
+ url: resolveUrl(item.url)
430
+ } : {}),
431
+ ...(item.artworkUrl != null ? {
432
+ artworkUrl: resolveUrl(item.artworkUrl)
433
+ } : {}),
434
+ ...(item.children != null ? {
435
+ children: item.children.map(resolveBrowseItem)
436
+ } : {})
437
+ };
438
+ }
439
+
406
440
  /**
407
441
  * Set the media browse tree for Android Auto and CarPlay.
408
442
  * Each category becomes a top-level browsable folder (Android Auto) or tab (CarPlay);
409
- * its items are playable leaves.
443
+ * its items can be playable tracks or browsable containers with children.
410
444
  *
411
- * When a user selects an item, the native player loads and plays it
412
- * without JS intervention.
445
+ * When a user selects a playable item, the native player loads its siblings
446
+ * as the queue and starts playback without JS intervention.
413
447
  *
414
448
  * @remarks
415
449
  * - On CarPlay, a maximum of 4 tabs are shown. If more than 4 categories are provided,
416
450
  * the first 3 become tabs and the rest are grouped under a "More" tab.
451
+ * - Maximum nesting depth: 4 levels (matching CarPlay's navigation stack limit).
417
452
  * - Call again to update the tree (e.g. after loading new content)
418
453
  */
419
454
  function setBrowseTree(categories) {
420
455
  const resolved = categories.map(cat => ({
421
456
  ...cat,
422
- items: cat.items.map(resolveMediaItem)
457
+ items: cat.items.map(resolveBrowseItem)
423
458
  }));
424
459
  TrackPlayer.setBrowseTree(resolved);
425
460
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_index","_index2","isTurboModuleEnabled","global","__turboModuleProxy","TrackPlayerModule","default","NativeModules","TrackPlayer","Proxy","get","Error","Platform","select","ios","NativeModule","OS","emitter","NativeEventEmitter","isPlayerSetup","resolveUrl","url","resolved","Image","resolveAssetSource","uri","resolveMediaItem","item","artworkUrl","normalizePlayerConfig","options","android","DEFAULT_ANDROID_PLAYER_CONFIG","cache","DEFAULT_CACHE_CONFIG","undefined","DEFAULT_PLAYER_CONFIG","contentType","handleAudioBecomingNoisy","progressSync","setupPlayer","registerBackgroundEventHandler","factory","AppRegistry","registerHeadlessTask","type","Event","QueueChanged","setImmediate","addEventListener","event","listener","addListener","play","pause","stop","seekTo","position","seekBy","offset","skipToNext","skipToPrevious","skipToIndex","index","retry","setPlaybackSpeed","speed","setVolume","volume","setMediaItem","mediaItem","setMediaItems","mediaItems","startIndex","map","addMediaItem","addMediaItems","insertMediaItem","insertMediaItems","removeMediaItem","removeMediaItems","fromIndex","toIndex","clear","clearCache","replaceMediaItem","moveMediaItem","updateMetadata","metadata","getPlaybackState","isPlaying","getProgress","result","duration","buffered","cached","getPlaybackSpeed","getVolume","getActiveMediaItem","getActiveMediaItemIndex","getQueue","getRepeatMode","isShuffleEnabled","setCommands","commands","setRepeatMode","mode","setShuffleEnabled","enabled","updateProgressSyncHeaders","headers","setBrowseTree","categories","cat","items","sleepAfterTime","seconds","fadeOutSeconds","sleepAfterMediaItemAtIndex","resolvedIndex","getSleepTimer","cancelSleepTimer","destroy"],"sourceRoot":"../../src","sources":["audio.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_index","_index2","isTurboModuleEnabled","global","__turboModuleProxy","TrackPlayerModule","default","NativeModules","TrackPlayer","Proxy","get","Error","Platform","select","ios","NativeModule","OS","emitter","NativeEventEmitter","isPlayerSetup","resolveUrl","url","resolved","Image","resolveAssetSource","uri","resolveMediaItem","item","artworkUrl","normalizePlayerConfig","options","android","DEFAULT_ANDROID_PLAYER_CONFIG","cache","DEFAULT_CACHE_CONFIG","undefined","DEFAULT_PLAYER_CONFIG","contentType","handleAudioBecomingNoisy","progressSync","setupPlayer","registerBackgroundEventHandler","factory","AppRegistry","registerHeadlessTask","type","Event","QueueChanged","setImmediate","addEventListener","event","listener","addListener","play","pause","stop","seekTo","position","seekBy","offset","skipToNext","skipToPrevious","skipToIndex","index","retry","setPlaybackSpeed","speed","setVolume","volume","setMediaItem","mediaItem","setMediaItems","mediaItems","startIndex","map","addMediaItem","addMediaItems","insertMediaItem","insertMediaItems","removeMediaItem","removeMediaItems","fromIndex","toIndex","clear","clearCache","preload","duration","cancelPreload","replaceMediaItem","moveMediaItem","updateMetadata","metadata","getPlaybackState","isPlaying","getProgress","result","buffered","cached","getPlaybackSpeed","getVolume","getActiveMediaItem","getActiveMediaItemIndex","getQueue","getRepeatMode","isShuffleEnabled","setCommands","commands","setRepeatMode","mode","setShuffleEnabled","enabled","updateProgressSyncHeaders","headers","resolveBrowseItem","children","setBrowseTree","categories","cat","items","sleepAfterTime","seconds","fadeOutSeconds","sleepAfterMediaItemAtIndex","resolvedIndex","getSleepTimer","cancelSleepTimer","destroy"],"sourceRoot":"../../src","sources":["audio.ts"],"mappings":"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","ignoreList":[]}
@@ -10,7 +10,7 @@ exports.DEFAULT_PLAYER_CONFIG = exports.DEFAULT_CAST_RECEIVER_APP_ID = exports.D
10
10
  */
11
11
 
12
12
  const DEFAULT_CACHE_CONFIG = exports.DEFAULT_CACHE_CONFIG = {
13
- maxSizeBytes: 100 * 1024 * 1024
13
+ maxSizeBytes: 500 * 1024 * 1024
14
14
  };
15
15
 
16
16
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_CACHE_CONFIG","exports","maxSizeBytes","DEFAULT_CAST_RECEIVER_APP_ID","DEFAULT_ANDROID_PLAYER_CONFIG","wakeMode","skipSilenceEnabled","DEFAULT_PLAYER_CONFIG","contentType","handleAudioBecomingNoisy","android"],"sourceRoot":"../../../src","sources":["interfaces/PlayerConfig.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAiBO,MAAMA,oBAA2C,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EACzDE,YAAY,EAAE,GAAG,GAAG,IAAI,GAAG;AAC7B,CAAC;;AAED;AACA;AACA;AACA;AACO,MAAMC,4BAA4B,GAAAF,OAAA,CAAAE,4BAAA,GAAG,UAAU;;AAEtD;AACO,MAAMC,6BAAkD,GAAAH,OAAA,CAAAG,6BAAA,GAAG;EAChEC,QAAQ,EAAE,MAAM;EAChBC,kBAAkB,EAAE;AACtB,CAAC;AAwBD;AACO,MAAMC,qBAIZ,GAAAN,OAAA,CAAAM,qBAAA,GAAG;EACFC,WAAW,EAAE,OAAO;EACpBC,wBAAwB,EAAE,IAAI;EAC9BC,OAAO,EAAEN;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_CACHE_CONFIG","exports","maxSizeBytes","DEFAULT_CAST_RECEIVER_APP_ID","DEFAULT_ANDROID_PLAYER_CONFIG","wakeMode","skipSilenceEnabled","DEFAULT_PLAYER_CONFIG","contentType","handleAudioBecomingNoisy","android"],"sourceRoot":"../../../src","sources":["interfaces/PlayerConfig.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAoCO,MAAMA,oBAA+D,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAC7EE,YAAY,EAAE,GAAG,GAAG,IAAI,GAAG;AAC7B,CAAC;;AAED;AACA;AACA;AACA;AACO,MAAMC,4BAA4B,GAAAF,OAAA,CAAAE,4BAAA,GAAG,UAAU;;AAEtD;AACO,MAAMC,6BAAkD,GAAAH,OAAA,CAAAG,6BAAA,GAAG;EAChEC,QAAQ,EAAE,MAAM;EAChBC,kBAAkB,EAAE;AACtB,CAAC;AAwBD;AACO,MAAMC,qBAIZ,GAAAN,OAAA,CAAAM,qBAAA,GAAG;EACFC,WAAW,EAAE,OAAO;EACpBC,wBAAwB,EAAE,IAAI;EAC9BC,OAAO,EAAEN;AACX,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeTrackPlayer.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAGA,SAASA,mBAAmB,QAAQ,cAAc;AAsFlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,aAAa,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeTrackPlayer.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAGA,SAASA,mBAAmB,QAAQ,cAAc;AA0FlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,aAAa,CAAC","ignoreList":[]}
@@ -239,6 +239,23 @@ export function clearCache() {
239
239
  TrackPlayer.clearCache();
240
240
  }
241
241
 
242
+ /**
243
+ * Preload a media item into the cache for instant playback later.
244
+ * Works independently of the queue — any future play of the same URL
245
+ * will be a cache hit.
246
+ */
247
+ export function preload(item, options) {
248
+ TrackPlayer.preload(resolveMediaItem(item), options?.duration ?? -1);
249
+ }
250
+
251
+ /**
252
+ * Cancel an in-progress preload for the given media item.
253
+ * Partial data remains in cache.
254
+ */
255
+ export function cancelPreload(item) {
256
+ TrackPlayer.cancelPreload(resolveMediaItem(item));
257
+ }
258
+
242
259
  /**
243
260
  * Replace the media item at the given index.
244
261
  * May continue playback seamlessly if the URL hasn't changed.
@@ -353,23 +370,39 @@ export function updateProgressSyncHeaders(headers) {
353
370
 
354
371
  // ─── Browse Tree ─────────────────────────────────────
355
372
 
373
+ function resolveBrowseItem(item) {
374
+ return {
375
+ ...item,
376
+ ...(item.url != null ? {
377
+ url: resolveUrl(item.url)
378
+ } : {}),
379
+ ...(item.artworkUrl != null ? {
380
+ artworkUrl: resolveUrl(item.artworkUrl)
381
+ } : {}),
382
+ ...(item.children != null ? {
383
+ children: item.children.map(resolveBrowseItem)
384
+ } : {})
385
+ };
386
+ }
387
+
356
388
  /**
357
389
  * Set the media browse tree for Android Auto and CarPlay.
358
390
  * Each category becomes a top-level browsable folder (Android Auto) or tab (CarPlay);
359
- * its items are playable leaves.
391
+ * its items can be playable tracks or browsable containers with children.
360
392
  *
361
- * When a user selects an item, the native player loads and plays it
362
- * without JS intervention.
393
+ * When a user selects a playable item, the native player loads its siblings
394
+ * as the queue and starts playback without JS intervention.
363
395
  *
364
396
  * @remarks
365
397
  * - On CarPlay, a maximum of 4 tabs are shown. If more than 4 categories are provided,
366
398
  * the first 3 become tabs and the rest are grouped under a "More" tab.
399
+ * - Maximum nesting depth: 4 levels (matching CarPlay's navigation stack limit).
367
400
  * - Call again to update the tree (e.g. after loading new content)
368
401
  */
369
402
  export function setBrowseTree(categories) {
370
403
  const resolved = categories.map(cat => ({
371
404
  ...cat,
372
- items: cat.items.map(resolveMediaItem)
405
+ items: cat.items.map(resolveBrowseItem)
373
406
  }));
374
407
  TrackPlayer.setBrowseTree(resolved);
375
408
  }
@@ -1 +1 @@
1
- {"version":3,"names":["AppRegistry","Image","NativeEventEmitter","NativeModules","Platform","DEFAULT_PLAYER_CONFIG","DEFAULT_ANDROID_PLAYER_CONFIG","DEFAULT_CACHE_CONFIG","Event","isTurboModuleEnabled","global","__turboModuleProxy","TrackPlayerModule","require","default","TrackPlayer","Proxy","get","Error","select","ios","NativeModule","OS","emitter","isPlayerSetup","resolveUrl","url","resolved","resolveAssetSource","uri","resolveMediaItem","item","artworkUrl","normalizePlayerConfig","options","android","cache","undefined","contentType","handleAudioBecomingNoisy","progressSync","setupPlayer","registerBackgroundEventHandler","factory","registerHeadlessTask","type","QueueChanged","setImmediate","addEventListener","event","listener","addListener","play","pause","stop","seekTo","position","seekBy","offset","skipToNext","skipToPrevious","skipToIndex","index","retry","setPlaybackSpeed","speed","setVolume","volume","setMediaItem","mediaItem","setMediaItems","mediaItems","startIndex","map","addMediaItem","addMediaItems","insertMediaItem","insertMediaItems","removeMediaItem","removeMediaItems","fromIndex","toIndex","clear","clearCache","replaceMediaItem","moveMediaItem","updateMetadata","metadata","getPlaybackState","isPlaying","getProgress","result","duration","buffered","cached","getPlaybackSpeed","getVolume","getActiveMediaItem","getActiveMediaItemIndex","getQueue","getRepeatMode","isShuffleEnabled","setCommands","commands","setRepeatMode","mode","setShuffleEnabled","enabled","updateProgressSyncHeaders","headers","setBrowseTree","categories","cat","items","sleepAfterTime","seconds","fadeOutSeconds","sleepAfterMediaItemAtIndex","resolvedIndex","getSleepTimer","cancelSleepTimer","destroy"],"sourceRoot":"../../src","sources":["audio.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AppRegistry","Image","NativeEventEmitter","NativeModules","Platform","DEFAULT_PLAYER_CONFIG","DEFAULT_ANDROID_PLAYER_CONFIG","DEFAULT_CACHE_CONFIG","Event","isTurboModuleEnabled","global","__turboModuleProxy","TrackPlayerModule","require","default","TrackPlayer","Proxy","get","Error","select","ios","NativeModule","OS","emitter","isPlayerSetup","resolveUrl","url","resolved","resolveAssetSource","uri","resolveMediaItem","item","artworkUrl","normalizePlayerConfig","options","android","cache","undefined","contentType","handleAudioBecomingNoisy","progressSync","setupPlayer","registerBackgroundEventHandler","factory","registerHeadlessTask","type","QueueChanged","setImmediate","addEventListener","event","listener","addListener","play","pause","stop","seekTo","position","seekBy","offset","skipToNext","skipToPrevious","skipToIndex","index","retry","setPlaybackSpeed","speed","setVolume","volume","setMediaItem","mediaItem","setMediaItems","mediaItems","startIndex","map","addMediaItem","addMediaItems","insertMediaItem","insertMediaItems","removeMediaItem","removeMediaItems","fromIndex","toIndex","clear","clearCache","preload","duration","cancelPreload","replaceMediaItem","moveMediaItem","updateMetadata","metadata","getPlaybackState","isPlaying","getProgress","result","buffered","cached","getPlaybackSpeed","getVolume","getActiveMediaItem","getActiveMediaItemIndex","getQueue","getRepeatMode","isShuffleEnabled","setCommands","commands","setRepeatMode","mode","setShuffleEnabled","enabled","updateProgressSyncHeaders","headers","resolveBrowseItem","children","setBrowseTree","categories","cat","items","sleepAfterTime","seconds","fadeOutSeconds","sleepAfterMediaItemAtIndex","resolvedIndex","getSleepTimer","cancelSleepTimer","destroy"],"sourceRoot":"../../src","sources":["audio.ts"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  export const DEFAULT_CACHE_CONFIG = {
9
- maxSizeBytes: 100 * 1024 * 1024
9
+ maxSizeBytes: 500 * 1024 * 1024
10
10
  };
11
11
 
12
12
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_CACHE_CONFIG","maxSizeBytes","DEFAULT_CAST_RECEIVER_APP_ID","DEFAULT_ANDROID_PLAYER_CONFIG","wakeMode","skipSilenceEnabled","DEFAULT_PLAYER_CONFIG","contentType","handleAudioBecomingNoisy","android"],"sourceRoot":"../../../src","sources":["interfaces/PlayerConfig.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAiBA,OAAO,MAAMA,oBAA2C,GAAG;EACzDC,YAAY,EAAE,GAAG,GAAG,IAAI,GAAG;AAC7B,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,4BAA4B,GAAG,UAAU;;AAEtD;AACA,OAAO,MAAMC,6BAAkD,GAAG;EAChEC,QAAQ,EAAE,MAAM;EAChBC,kBAAkB,EAAE;AACtB,CAAC;AAwBD;AACA,OAAO,MAAMC,qBAIZ,GAAG;EACFC,WAAW,EAAE,OAAO;EACpBC,wBAAwB,EAAE,IAAI;EAC9BC,OAAO,EAAEN;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_CACHE_CONFIG","maxSizeBytes","DEFAULT_CAST_RECEIVER_APP_ID","DEFAULT_ANDROID_PLAYER_CONFIG","wakeMode","skipSilenceEnabled","DEFAULT_PLAYER_CONFIG","contentType","handleAudioBecomingNoisy","android"],"sourceRoot":"../../../src","sources":["interfaces/PlayerConfig.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAoCA,OAAO,MAAMA,oBAA+D,GAAG;EAC7EC,YAAY,EAAE,GAAG,GAAG,IAAI,GAAG;AAC7B,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,4BAA4B,GAAG,UAAU;;AAEtD;AACA,OAAO,MAAMC,6BAAkD,GAAG;EAChEC,QAAQ,EAAE,MAAM;EAChBC,kBAAkB,EAAE;AACtB,CAAC;AAwBD;AACA,OAAO,MAAMC,qBAIZ,GAAG;EACFC,WAAW,EAAE,OAAO;EACpBC,wBAAwB,EAAE,IAAI;EAC9BC,OAAO,EAAEN;AACX,CAAC","ignoreList":[]}
@@ -45,6 +45,8 @@ export interface Spec extends TurboModule {
45
45
  setShuffleEnabled(enabled: boolean): void;
46
46
  setBrowseTree(categories: ReadonlyArray<UnsafeObject>): void;
47
47
  updateProgressSyncHeaders(headers: UnsafeObject): void;
48
+ preload(item: UnsafeObject, duration: number): void;
49
+ cancelPreload(item: UnsafeObject): void;
48
50
  sleepAfterTime(seconds: number, fadeOutSeconds: number): void;
49
51
  sleepAfterMediaItemAtIndex(index: number): void;
50
52
  getSleepTimer(): UnsafeObject | null;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeTrackPlayer.d.ts","sourceRoot":"","sources":["../../../src/NativeTrackPlayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeTrackPlayer.d.ts","sourceRoot":"","sources":["../../../src/NativeTrackPlayer.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Commercial use requires a license. See https://rntp.dev/pricing
4
4
  */
5
5
  import { type EmitterSubscription } from 'react-native';
6
- import { type PlayerConfig, type RemoteControlConfig, type BrowseCategory, type MediaItem, type MediaUrl, type Progress, type RepeatMode } from './interfaces';
6
+ import { type PlayerConfig, type RemoteControlConfig, type BrowseCategory, type MediaItem, type MediaUrl, type Progress, type RepeatMode, type PreloadOptions } from './interfaces';
7
7
  import { Event, type EventPayloadByEvent, type BackgroundEvent } from './events';
8
8
  import { type PlaybackState } from './events';
9
9
  export type BackgroundEventHandler = (event: BackgroundEvent) => Promise<void>;
@@ -86,6 +86,17 @@ export declare function removeMediaItems(fromIndex: number, toIndex: number): vo
86
86
  export declare function clear(): void;
87
87
  /** Clears the on-disk audio cache. For debugging; next playback will re-download. */
88
88
  export declare function clearCache(): void;
89
+ /**
90
+ * Preload a media item into the cache for instant playback later.
91
+ * Works independently of the queue — any future play of the same URL
92
+ * will be a cache hit.
93
+ */
94
+ export declare function preload(item: MediaItem, options?: PreloadOptions): void;
95
+ /**
96
+ * Cancel an in-progress preload for the given media item.
97
+ * Partial data remains in cache.
98
+ */
99
+ export declare function cancelPreload(item: MediaItem): void;
89
100
  /**
90
101
  * Replace the media item at the given index.
91
102
  * May continue playback seamlessly if the URL hasn't changed.
@@ -139,14 +150,15 @@ export declare function updateProgressSyncHeaders(headers: Record<string, string
139
150
  /**
140
151
  * Set the media browse tree for Android Auto and CarPlay.
141
152
  * Each category becomes a top-level browsable folder (Android Auto) or tab (CarPlay);
142
- * its items are playable leaves.
153
+ * its items can be playable tracks or browsable containers with children.
143
154
  *
144
- * When a user selects an item, the native player loads and plays it
145
- * without JS intervention.
155
+ * When a user selects a playable item, the native player loads its siblings
156
+ * as the queue and starts playback without JS intervention.
146
157
  *
147
158
  * @remarks
148
159
  * - On CarPlay, a maximum of 4 tabs are shown. If more than 4 categories are provided,
149
160
  * the first 3 become tabs and the rest are grouped under a "More" tab.
161
+ * - Maximum nesting depth: 4 levels (matching CarPlay's navigation stack limit).
150
162
  * - Call again to update the tree (e.g. after loading new content)
151
163
  */
152
164
  export declare function setBrowseTree(categories: BrowseCategory[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../../src/audio.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../../src/audio.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,47 @@
2
2
  * Copyright (c) Double Symmetry GmbH
3
3
  * Commercial use requires a license. See https://rntp.dev/pricing
4
4
  */
5
- import type { MediaItem } from './MediaItem';
5
+ import type { MediaUrl } from './MediaItem';
6
6
  /**
7
- * A category in the media browse tree shown in Android Auto / media browsers.
8
- * Each category appears as a top-level tab/section; its items are playable leaves.
7
+ * An item in the browse tree either a playable track or a browsable container.
8
+ *
9
+ * - `url` present → playable track (leaf node)
10
+ * - `children` present (no `url`) → browsable container (tapping drills down)
11
+ * - `url` takes precedence if both are present
12
+ *
13
+ * Maximum nesting depth: 4 levels (matching CarPlay's navigation stack limit).
14
+ */
15
+ export interface BrowseItem {
16
+ /** Unique identifier for this item. */
17
+ mediaId: string;
18
+ /** Display title. */
19
+ title: string;
20
+ /** Artist or subtitle. */
21
+ artist?: string;
22
+ /** Artwork image URL. */
23
+ artworkUrl?: MediaUrl;
24
+ /** Audio source URL. If present, this item is playable. */
25
+ url?: MediaUrl;
26
+ /** Duration hint in seconds. */
27
+ duration?: number;
28
+ /** Whether this is a live stream. */
29
+ isLive?: boolean;
30
+ /** MIME type hint for format detection. */
31
+ mimeType?: string;
32
+ /** Child items. If present (and no `url`), this item is browsable. */
33
+ children?: BrowseItem[];
34
+ }
35
+ /**
36
+ * A top-level category in the browse tree.
37
+ * On Android Auto, each category is a browsable folder.
38
+ * On CarPlay, each category is a tab (max 4; overflow creates a "More" tab).
9
39
  */
10
40
  export interface BrowseCategory {
11
41
  /** Unique identifier for this category. */
12
42
  mediaId: string;
13
43
  /** Display title for the category (e.g. "Albums", "Podcasts"). */
14
44
  title: string;
15
- /** Playable media items within this category. */
16
- items: MediaItem[];
45
+ /** Items within this category — can be playable tracks or browsable containers. */
46
+ items: BrowseItem[];
17
47
  }
18
48
  //# sourceMappingURL=BrowseTree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseTree.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/BrowseTree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB"}
1
+ {"version":3,"file":"BrowseTree.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/BrowseTree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;GAQG;AACH,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,UAAU,CAAC,EAAE,QAAQ,CAAC;IAGtB,2DAA2D;IAC3D,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB"}
@@ -32,7 +32,10 @@ export interface MediaItem {
32
32
  */
33
33
  duration?: number;
34
34
  /**
35
- * Whether this is a live stream (affects seek behavior).
35
+ * Whether this is a live stream.
36
+ *
37
+ * When `true`, caching and preloading are disabled and the stream is
38
+ * played directly.
36
39
  */
37
40
  isLive?: boolean;
38
41
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MediaItem.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/MediaItem.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAChB,MAAM,GACN,MAAM,GACN;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"MediaItem.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/MediaItem.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAChB,MAAM,GACN,MAAM,GACN;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -3,15 +3,32 @@
3
3
  * Commercial use requires a license. See https://rntp.dev/pricing
4
4
  */
5
5
  import type { PlayerCommand, RemoteControlHandling, PerCommandHandling } from './PlayerCommand';
6
+ export interface PreloadConfig {
7
+ /**
8
+ * Auto-preload next N tracks in queue after current track is fully cached.
9
+ * @default 0 (disabled)
10
+ */
11
+ window?: number;
12
+ }
13
+ export interface PreloadOptions {
14
+ /**
15
+ * Target duration in seconds. If omitted, preloads the entire file.
16
+ */
17
+ duration?: number;
18
+ }
6
19
  export interface CacheConfig {
7
20
  /**
8
21
  * Maximum disk cache size in bytes.
9
22
  * When the cache exceeds this size, least-recently-used items are evicted.
10
- * @default 104857600 (100 MB)
23
+ * @default 524288000 (500 MB)
11
24
  */
12
25
  maxSizeBytes?: number;
26
+ /**
27
+ * Preloading configuration. Requires cache to be enabled.
28
+ */
29
+ preloading?: PreloadConfig;
13
30
  }
14
- export declare const DEFAULT_CACHE_CONFIG: Required<CacheConfig>;
31
+ export declare const DEFAULT_CACHE_CONFIG: Required<Omit<CacheConfig, 'preloading'>>;
15
32
  /**
16
33
  * Use this as the `cast` receiver app ID to enable Chromecast with Google's
17
34
  * Default Media Receiver — no custom receiver registration required.
@@ -1 +1 @@
1
- {"version":3,"file":"PlayerConfig.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/PlayerConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,WAAW,CAEtD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,aAAa,CAAC;AAEvD,4CAA4C;AAC5C,eAAO,MAAM,6BAA6B,EAAE,mBAG3C,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,sBAAsB;IACtB,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACvC,qBAAqB;IACrB,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAC1C,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,OAAO,GAAG,cAAc,CAAC,CACzD,GAAG;IACF,OAAO,EAAE,mBAAmB,CAAC;CAK9B,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,YAAY,EAAE,aAAa,EAAE,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CAC1D;AAED,MAAM,WAAW,YAAY;IAC3B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACxC"}
1
+ {"version":3,"file":"PlayerConfig.d.ts","sourceRoot":"","sources":["../../../../src/interfaces/PlayerConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B;AAED,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAE1E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,aAAa,CAAC;AAEvD,4CAA4C;AAC5C,eAAO,MAAM,6BAA6B,EAAE,mBAG3C,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,sBAAsB;IACtB,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACvC,qBAAqB;IACrB,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAC1C,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,OAAO,GAAG,cAAc,CAAC,CACzD,GAAG;IACF,OAAO,EAAE,mBAAmB,CAAC;CAK9B,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,YAAY,EAAE,aAAa,EAAE,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CAC1D;AAED,MAAM,WAAW,YAAY;IAC3B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACxC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rntp/player",
3
- "version": "5.0.0-beta.3",
3
+ "version": "5.0.0-beta.5",
4
4
  "description": "The premium audio player for React Native",
5
5
  "source": "./src/index.tsx",
6
6
  "react-native": "./src/index.tsx",
@@ -40,6 +40,9 @@
40
40
  "test": "jest",
41
41
  "test:watch": "jest --watch",
42
42
  "test:coverage": "jest --coverage",
43
+ "test:ios": "cd ios && DEVELOPER_DIR=$(readlink /var/db/xcode_select_link) SDKROOT=$(readlink /var/db/xcode_select_link)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk swift test",
44
+ "test:android": "cd example/android && ./gradlew :rntp_player:test",
45
+ "test:all": "jest && npm run test:android && npm run test:ios",
43
46
  "typecheck": "tsc",
44
47
  "lint": "eslint \"**/*.{js,ts,tsx}\"",
45
48
  "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib",
@@ -76,6 +76,10 @@ export interface Spec extends TurboModule {
76
76
  // Progress Sync
77
77
  updateProgressSyncHeaders(headers: UnsafeObject): void;
78
78
 
79
+ // Preloading
80
+ preload(item: UnsafeObject, duration: number): void;
81
+ cancelPreload(item: UnsafeObject): void;
82
+
79
83
  // Sleep Timer
80
84
  sleepAfterTime(seconds: number, fadeOutSeconds: number): void;
81
85
  sleepAfterMediaItemAtIndex(index: number): void;
package/src/audio.ts CHANGED
@@ -16,10 +16,12 @@ import {
16
16
  type PlayerConfig,
17
17
  type RemoteControlConfig,
18
18
  type BrowseCategory,
19
+ type BrowseItem,
19
20
  type MediaItem,
20
21
  type MediaUrl,
21
22
  type Progress,
22
23
  type RepeatMode,
24
+ type PreloadOptions,
23
25
  DEFAULT_PLAYER_CONFIG,
24
26
  DEFAULT_ANDROID_PLAYER_CONFIG,
25
27
  DEFAULT_CACHE_CONFIG,
@@ -288,6 +290,23 @@ export function clearCache(): void {
288
290
  TrackPlayer.clearCache();
289
291
  }
290
292
 
293
+ /**
294
+ * Preload a media item into the cache for instant playback later.
295
+ * Works independently of the queue — any future play of the same URL
296
+ * will be a cache hit.
297
+ */
298
+ export function preload(item: MediaItem, options?: PreloadOptions): void {
299
+ TrackPlayer.preload(resolveMediaItem(item), options?.duration ?? -1);
300
+ }
301
+
302
+ /**
303
+ * Cancel an in-progress preload for the given media item.
304
+ * Partial data remains in cache.
305
+ */
306
+ export function cancelPreload(item: MediaItem): void {
307
+ TrackPlayer.cancelPreload(resolveMediaItem(item));
308
+ }
309
+
291
310
  /**
292
311
  * Replace the media item at the given index.
293
312
  * May continue playback seamlessly if the URL hasn't changed.
@@ -412,23 +431,37 @@ export function updateProgressSyncHeaders(
412
431
 
413
432
  // ─── Browse Tree ─────────────────────────────────────
414
433
 
434
+ function resolveBrowseItem(item: BrowseItem): BrowseItem {
435
+ return {
436
+ ...item,
437
+ ...(item.url != null ? { url: resolveUrl(item.url) } : {}),
438
+ ...(item.artworkUrl != null
439
+ ? { artworkUrl: resolveUrl(item.artworkUrl) }
440
+ : {}),
441
+ ...(item.children != null
442
+ ? { children: item.children.map(resolveBrowseItem) }
443
+ : {}),
444
+ };
445
+ }
446
+
415
447
  /**
416
448
  * Set the media browse tree for Android Auto and CarPlay.
417
449
  * Each category becomes a top-level browsable folder (Android Auto) or tab (CarPlay);
418
- * its items are playable leaves.
450
+ * its items can be playable tracks or browsable containers with children.
419
451
  *
420
- * When a user selects an item, the native player loads and plays it
421
- * without JS intervention.
452
+ * When a user selects a playable item, the native player loads its siblings
453
+ * as the queue and starts playback without JS intervention.
422
454
  *
423
455
  * @remarks
424
456
  * - On CarPlay, a maximum of 4 tabs are shown. If more than 4 categories are provided,
425
457
  * the first 3 become tabs and the rest are grouped under a "More" tab.
458
+ * - Maximum nesting depth: 4 levels (matching CarPlay's navigation stack limit).
426
459
  * - Call again to update the tree (e.g. after loading new content)
427
460
  */
428
461
  export function setBrowseTree(categories: BrowseCategory[]): void {
429
462
  const resolved = categories.map((cat) => ({
430
463
  ...cat,
431
- items: cat.items.map(resolveMediaItem),
464
+ items: cat.items.map(resolveBrowseItem),
432
465
  }));
433
466
  TrackPlayer.setBrowseTree(resolved);
434
467
  }