react-native-audio-browser 0.2.0-next.9 → 0.2.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/AudioBrowser.podspec +1 -1
- package/README.md +2 -180
- package/android/build.gradle +1 -17
- package/android/gradle.properties +1 -1
- package/android/src/main/AndroidManifest.xml +0 -15
- package/android/src/main/java/com/audiobrowser/AudioBrowser.kt +148 -433
- package/android/src/main/java/com/audiobrowser/Callbacks.kt +6 -4
- package/android/src/main/java/com/audiobrowser/Service.kt +18 -67
- package/android/src/main/java/com/audiobrowser/browser/BrowserManager.kt +178 -442
- package/android/src/main/java/com/audiobrowser/browser/JsonModels.kt +4 -41
- package/android/src/main/java/com/audiobrowser/browser/TrackLoadHandler.kt +4 -4
- package/android/src/main/java/com/audiobrowser/http/RequestConfigBuilder.kt +97 -109
- package/android/src/main/java/com/audiobrowser/model/PlaybackMetadata.kt +10 -6
- package/android/src/main/java/com/audiobrowser/model/PlayerSetupOptions.kt +8 -40
- package/android/src/main/java/com/audiobrowser/model/PlayerUpdateOptions.kt +46 -40
- package/android/src/main/java/com/audiobrowser/player/AutomaticBufferManager.kt +1 -4
- package/android/src/main/java/com/audiobrowser/player/DynamicLoadControl.kt +1 -18
- package/android/src/main/java/com/audiobrowser/player/MediaFactory.kt +3 -15
- package/android/src/main/java/com/audiobrowser/player/MediaSessionCallback.kt +134 -422
- package/android/src/main/java/com/audiobrowser/player/MediaSessionCommandManager.kt +404 -248
- package/android/src/main/java/com/audiobrowser/player/PlaybackProgressUpdateManager.kt +59 -0
- package/android/src/main/java/com/audiobrowser/player/PlaybackStateStore.kt +5 -25
- package/android/src/main/java/com/audiobrowser/player/Player.kt +582 -469
- package/android/src/main/java/com/audiobrowser/player/PlayerListener.kt +67 -190
- package/android/src/main/java/com/audiobrowser/player/RetryLoadErrorHandlingPolicy.kt +53 -118
- package/android/src/main/java/com/audiobrowser/player/SleepTimer.kt +3 -37
- package/android/src/main/java/com/audiobrowser/player/TransformingDataSource.kt +40 -85
- package/android/src/main/java/com/audiobrowser/util/BrowserPathHelper.kt +0 -24
- package/android/src/main/java/com/audiobrowser/util/CoilBitmapLoader.kt +300 -23
- package/android/src/main/java/com/audiobrowser/util/EqualizerManager.kt +23 -13
- package/android/src/main/java/com/audiobrowser/util/MediaExtrasBuilder.kt +2 -2
- package/android/src/main/java/com/audiobrowser/util/MetadataAdapter.kt +3 -4
- package/android/src/main/java/com/audiobrowser/util/PlayingStateFactory.kt +1 -2
- package/android/src/main/java/com/audiobrowser/util/RatingFactory.kt +72 -0
- package/android/src/main/java/com/audiobrowser/util/ResolvedTrackFactory.kt +36 -0
- package/android/src/main/java/com/audiobrowser/util/SvgArtworkRenderer.kt +111 -6
- package/android/src/main/java/com/audiobrowser/util/SystemVolumeMonitor.kt +8 -22
- package/android/src/main/java/com/audiobrowser/util/TrackFactory.kt +80 -112
- package/android/src/main/res/values/strings.xml +0 -4
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerTest.kt +0 -4
- package/android/src/test/java/com/audiobrowser/browser/SimpleRouterTest.kt +2 -1
- package/android/src/test/java/com/audiobrowser/http/RequestConfigBuilderTest.kt +0 -72
- package/android/src/test/java/com/audiobrowser/player/PlaybackProgressUpdateManagerTest.kt +146 -0
- package/ios/Browser/BrowserConfig.swift +11 -41
- package/ios/Browser/BrowserManager+URLResolution.swift +93 -213
- package/ios/Browser/BrowserManager.swift +110 -303
- package/ios/Browser/BrowserPathHelper.swift +3 -32
- package/ios/Browser/JsonModels.swift +66 -287
- package/ios/CarPlay/CarPlayArtworkResolver.swift +6 -6
- package/ios/CarPlay/CarPlayController.swift +149 -739
- package/ios/CarPlay/CarPlayImageLoader.swift +8 -57
- package/ios/CarPlay/CarPlayListItemFactory.swift +35 -44
- package/ios/CarPlay/CarPlayNowPlayingManager.swift +36 -180
- package/ios/CarPlay/RNABAudioBrowser.h +10 -15
- package/ios/CarPlay/RNABAudioBrowser.m +14 -15
- package/ios/CarPlay/RNABCarPlaySceneDelegate.m +0 -2
- package/ios/CarPlay/RNABMediaIntentHandler.swift +43 -53
- package/ios/CarPlay/Track+CarPlay.swift +63 -0
- package/ios/Extension/Capability+RemoteCommand.swift +9 -7
- package/ios/Extension/ChapterMetadata+AVFoundation.swift +1 -1
- package/ios/Extension/NavigationError+Conversion.swift +1 -8
- package/ios/Extension/ResolvedTrack+Copying.swift +4 -10
- package/ios/Extension/TimedMetadata+AVFoundation.swift +1 -1
- package/ios/Extension/Track+AVPlayer.swift +4 -4
- package/ios/Extension/Track+Copying.swift +3 -9
- package/ios/Extension/TrackMetadata+AVFoundation.swift +1 -1
- package/ios/HybridAudioBrowser.swift +196 -804
- package/ios/Model/NitroTypeStubs.swift +224 -299
- package/ios/Model/PlayerUpdateOptions.swift +23 -23
- package/ios/Model/RemoteCommand.swift +6 -24
- package/ios/Model/TrackPlayerError.swift +18 -82
- package/ios/NowPlayingInfo/NowPlayingInfoCenter.swift +9 -0
- package/ios/NowPlayingInfo/NowPlayingInfoController.swift +121 -99
- package/ios/Observer/PlayerItemNotificationObserver.swift +5 -45
- package/ios/Observer/PlayerItemPropertyObserver.swift +4 -27
- package/ios/Observer/PlayerTimeObserver.swift +53 -3
- package/ios/Option/SessionCategories.swift +11 -34
- package/ios/Player/LoadSeekCoordinator.swift +1 -16
- package/ios/Player/MediaLoader.swift +11 -31
- package/ios/Player/NowPlayingUpdater.swift +26 -119
- package/ios/Player/PlaybackCoordinator.swift +51 -285
- package/ios/Player/PlaybackCoordinatorCallbacks.swift +1 -6
- package/ios/Player/PlaybackEffectHandler.swift +9 -19
- package/ios/Player/PlaybackErrorHandler.swift +13 -97
- package/ios/Player/PlaybackProgressUpdateManager.swift +68 -0
- package/ios/Player/PlaybackStateMachine.swift +13 -18
- package/ios/Player/PlayingStateManager.swift +2 -3
- package/ios/Player/QueueManager.swift +61 -67
- package/ios/Player/RetryManager.swift +21 -98
- package/ios/Player/SleepTimerHandling.swift +0 -8
- package/ios/Player/SleepTimerManager.swift +11 -72
- package/ios/RemoteCommand/RemoteCommandController.swift +21 -40
- package/ios/Tests/BrowserPathHelperTests.swift +0 -28
- package/ios/Tests/CarPlayArtworkResolverTests.swift +39 -39
- package/ios/Tests/ChapterMetadataAVFoundationTests.swift +2 -2
- package/ios/Tests/LoadSeekCoordinatorTests.swift +7 -40
- package/ios/Tests/MediaLoaderTests.swift +20 -32
- package/ios/Tests/PlaybackCoordinatorTests.swift +13 -787
- package/ios/Tests/PlaybackErrorHandlerTests.swift +46 -380
- package/ios/Tests/PlaybackProgressUpdateManagerTests.swift +166 -0
- package/ios/Tests/PlaybackStateMachineTests.swift +8 -33
- package/ios/Tests/QueueManagerTests.swift +18 -149
- package/ios/Tests/ResolvedTrackCopyingTests.swift +8 -15
- package/ios/Tests/Support/TestTypes.swift +20 -61
- package/ios/Tests/TrackSelectorTests.swift +15 -15
- package/ios/TrackPlayer.swift +58 -380
- package/ios/TrackPlayerCallbacks.swift +44 -5
- package/ios/TrackSelector.swift +5 -5
- package/ios/Util/ArtworkImageFetcher.swift +2 -4
- package/ios/Util/NetworkMonitor.swift +3 -7
- package/ios/Util/OnceValue.swift +0 -34
- package/lib/commonjs/AudioBrowser.js +11 -0
- package/lib/commonjs/AudioBrowser.js.map +1 -1
- package/lib/commonjs/features/browser.js +158 -59
- package/lib/commonjs/features/browser.js.map +1 -1
- package/lib/commonjs/features/equalizer.js +1 -1
- package/lib/commonjs/features/errors.js +5 -37
- package/lib/commonjs/features/errors.js.map +1 -1
- package/lib/commonjs/features/favorites.js +1 -1
- package/lib/commonjs/features/index.js +0 -22
- package/lib/commonjs/features/index.js.map +1 -1
- package/lib/commonjs/features/metadata.js +3 -3
- package/lib/commonjs/features/metadata.js.map +1 -1
- package/lib/commonjs/features/network.js +1 -1
- package/lib/commonjs/features/nowPlaying.js +1 -36
- package/lib/commonjs/features/nowPlaying.js.map +1 -1
- package/lib/commonjs/features/output.js +23 -37
- package/lib/commonjs/features/output.js.map +1 -1
- package/lib/commonjs/features/playback/controls.js +0 -9
- package/lib/commonjs/features/playback/controls.js.map +1 -1
- package/lib/commonjs/features/playback/index.js +0 -11
- package/lib/commonjs/features/playback/index.js.map +1 -1
- package/lib/commonjs/features/playback/playWhenReady.js +1 -1
- package/lib/commonjs/features/playback/playing.js +1 -1
- package/lib/commonjs/features/playback/progress.js +13 -29
- package/lib/commonjs/features/playback/progress.js.map +1 -1
- package/lib/commonjs/features/playback/state.js +1 -1
- package/lib/commonjs/features/playback/volume.js +2 -2
- package/lib/commonjs/features/player/options.js +29 -79
- package/lib/commonjs/features/player/options.js.map +1 -1
- package/lib/commonjs/features/player/setup.js +3 -256
- package/lib/commonjs/features/player/setup.js.map +1 -1
- package/lib/commonjs/features/queue/activeTrack.js +1 -1
- package/lib/commonjs/features/queue/queue.js +5 -12
- package/lib/commonjs/features/queue/queue.js.map +1 -1
- package/lib/commonjs/features/queue/repeatMode.js +1 -1
- package/lib/commonjs/features/queue/shuffle.js +1 -1
- package/lib/commonjs/features/rating.js +2 -0
- package/lib/commonjs/features/rating.js.map +1 -0
- package/lib/commonjs/features/remoteControls.js +104 -14
- package/lib/commonjs/features/remoteControls.js.map +1 -1
- package/lib/commonjs/features/sleepTimer.js +5 -10
- package/lib/commonjs/features/sleepTimer.js.map +1 -1
- package/lib/commonjs/native.js +0 -5
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/native.web.js +1 -4
- package/lib/commonjs/native.web.js.map +1 -1
- package/lib/commonjs/types/player.js +2 -0
- package/lib/commonjs/types/player.js.map +1 -0
- package/lib/commonjs/utils/LazyNativeEmitter.js +8 -8
- package/lib/commonjs/utils/LazyNativeEmitter.js.map +1 -1
- package/lib/commonjs/utils/NativeUpdatedValue.js +3 -0
- package/lib/commonjs/utils/NativeUpdatedValue.js.map +1 -1
- package/lib/commonjs/web/NativeAudioBrowser.js +124 -301
- package/lib/commonjs/web/NativeAudioBrowser.js.map +1 -1
- package/lib/commonjs/web/SimpleRouter.test.js +174 -0
- package/lib/commonjs/web/SimpleRouter.test.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/Player.js +26 -90
- package/lib/commonjs/web/TrackPlayer/Player.js.map +1 -1
- package/lib/commonjs/web/TrackPlayer/PlaylistPlayer.js +293 -0
- package/lib/commonjs/web/TrackPlayer/PlaylistPlayer.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/RepeatMode.js +1 -1
- package/lib/commonjs/web/TrackPlayer/RepeatMode.js.map +1 -1
- package/lib/commonjs/web/TrackPlayer/SleepTimer.js +3 -34
- package/lib/commonjs/web/TrackPlayer/SleepTimer.js.map +1 -1
- package/lib/commonjs/web/TrackPlayer/index.js +5 -13
- package/lib/commonjs/web/TrackPlayer/index.js.map +1 -1
- package/lib/commonjs/web/browser/BrowserManager.js +50 -176
- package/lib/commonjs/web/browser/BrowserManager.js.map +1 -1
- package/lib/commonjs/web/browser/NavigationErrorManager.js +1 -3
- package/lib/commonjs/web/browser/NavigationErrorManager.js.map +1 -1
- package/lib/commonjs/web/browser/SearchManager.js +9 -11
- package/lib/commonjs/web/browser/SearchManager.js.map +1 -1
- package/lib/commonjs/web/http/HttpClient.js +23 -4
- package/lib/commonjs/web/http/HttpClient.js.map +1 -1
- package/lib/commonjs/web/http/RequestConfigBuilder.js +58 -107
- package/lib/commonjs/web/http/RequestConfigBuilder.js.map +1 -1
- package/lib/commonjs/web/player/NowPlayingManager.js +5 -6
- package/lib/commonjs/web/player/NowPlayingManager.js.map +1 -1
- package/lib/commonjs/web/player/OptionsManager.js +17 -9
- package/lib/commonjs/web/player/OptionsManager.js.map +1 -1
- package/lib/module/AudioBrowser.js +1 -4
- package/lib/module/AudioBrowser.js.map +1 -1
- package/lib/module/features/browser.js +156 -53
- package/lib/module/features/browser.js.map +1 -1
- package/lib/module/features/equalizer.js +1 -1
- package/lib/module/features/errors.js +5 -37
- package/lib/module/features/errors.js.map +1 -1
- package/lib/module/features/favorites.js +1 -1
- package/lib/module/features/index.js +0 -2
- package/lib/module/features/index.js.map +1 -1
- package/lib/module/features/metadata.js +3 -3
- package/lib/module/features/metadata.js.map +1 -1
- package/lib/module/features/network.js +1 -1
- package/lib/module/features/nowPlaying.js +1 -34
- package/lib/module/features/nowPlaying.js.map +1 -1
- package/lib/module/features/output.js +19 -32
- package/lib/module/features/output.js.map +1 -1
- package/lib/module/features/playback/controls.js +0 -8
- package/lib/module/features/playback/controls.js.map +1 -1
- package/lib/module/features/playback/index.js +0 -1
- package/lib/module/features/playback/index.js.map +1 -1
- package/lib/module/features/playback/playWhenReady.js +1 -1
- package/lib/module/features/playback/playing.js +1 -1
- package/lib/module/features/playback/progress.js +13 -29
- package/lib/module/features/playback/progress.js.map +1 -1
- package/lib/module/features/playback/state.js +1 -1
- package/lib/module/features/playback/volume.js +2 -2
- package/lib/module/features/player/options.js +29 -79
- package/lib/module/features/player/options.js.map +1 -1
- package/lib/module/features/player/setup.js +3 -256
- package/lib/module/features/player/setup.js.map +1 -1
- package/lib/module/features/queue/activeTrack.js +1 -1
- package/lib/module/features/queue/queue.js +5 -12
- package/lib/module/features/queue/queue.js.map +1 -1
- package/lib/module/features/queue/repeatMode.js +1 -1
- package/lib/module/features/queue/shuffle.js +1 -1
- package/lib/module/features/rating.js +2 -0
- package/lib/module/features/rating.js.map +1 -0
- package/lib/module/features/remoteControls.js +103 -13
- package/lib/module/features/remoteControls.js.map +1 -1
- package/lib/module/features/sleepTimer.js +5 -10
- package/lib/module/features/sleepTimer.js.map +1 -1
- package/lib/module/native.js +0 -5
- package/lib/module/native.js.map +1 -1
- package/lib/module/native.web.js +1 -4
- package/lib/module/native.web.js.map +1 -1
- package/lib/module/types/player.js +2 -0
- package/lib/module/types/player.js.map +1 -0
- package/lib/module/utils/LazyNativeEmitter.js +8 -8
- package/lib/module/utils/LazyNativeEmitter.js.map +1 -1
- package/lib/module/utils/NativeUpdatedValue.js +3 -0
- package/lib/module/utils/NativeUpdatedValue.js.map +1 -1
- package/lib/module/web/NativeAudioBrowser.js +125 -302
- package/lib/module/web/NativeAudioBrowser.js.map +1 -1
- package/lib/module/web/SimpleRouter.test.js +174 -0
- package/lib/module/web/SimpleRouter.test.js.map +1 -0
- package/lib/module/web/TrackPlayer/Player.js +26 -90
- package/lib/module/web/TrackPlayer/Player.js.map +1 -1
- package/lib/module/web/TrackPlayer/PlaylistPlayer.js +288 -0
- package/lib/module/web/TrackPlayer/PlaylistPlayer.js.map +1 -0
- package/lib/module/web/TrackPlayer/RepeatMode.js +1 -1
- package/lib/module/web/TrackPlayer/RepeatMode.js.map +1 -1
- package/lib/module/web/TrackPlayer/SleepTimer.js +3 -34
- package/lib/module/web/TrackPlayer/SleepTimer.js.map +1 -1
- package/lib/module/web/TrackPlayer/index.js +1 -2
- package/lib/module/web/TrackPlayer/index.js.map +1 -1
- package/lib/module/web/browser/BrowserManager.js +50 -176
- package/lib/module/web/browser/BrowserManager.js.map +1 -1
- package/lib/module/web/browser/NavigationErrorManager.js +1 -3
- package/lib/module/web/browser/NavigationErrorManager.js.map +1 -1
- package/lib/module/web/browser/SearchManager.js +9 -11
- package/lib/module/web/browser/SearchManager.js.map +1 -1
- package/lib/module/web/http/HttpClient.js +23 -4
- package/lib/module/web/http/HttpClient.js.map +1 -1
- package/lib/module/web/http/RequestConfigBuilder.js +58 -107
- package/lib/module/web/http/RequestConfigBuilder.js.map +1 -1
- package/lib/module/web/player/NowPlayingManager.js +5 -7
- package/lib/module/web/player/NowPlayingManager.js.map +1 -1
- package/lib/module/web/player/OptionsManager.js +17 -9
- package/lib/module/web/player/OptionsManager.js.map +1 -1
- package/lib/typescript/src/AudioBrowser.d.ts +1 -0
- package/lib/typescript/src/AudioBrowser.d.ts.map +1 -1
- package/lib/typescript/src/features/browser.d.ts +1 -40
- package/lib/typescript/src/features/browser.d.ts.map +1 -1
- package/lib/typescript/src/features/equalizer.d.ts +1 -1
- package/lib/typescript/src/features/errors.d.ts +6 -61
- package/lib/typescript/src/features/errors.d.ts.map +1 -1
- package/lib/typescript/src/features/favorites.d.ts +1 -1
- package/lib/typescript/src/features/index.d.ts +0 -2
- package/lib/typescript/src/features/index.d.ts.map +1 -1
- package/lib/typescript/src/features/metadata.d.ts +7 -9
- package/lib/typescript/src/features/metadata.d.ts.map +1 -1
- package/lib/typescript/src/features/network.d.ts +1 -1
- package/lib/typescript/src/features/nowPlaying.d.ts +1 -28
- package/lib/typescript/src/features/nowPlaying.d.ts.map +1 -1
- package/lib/typescript/src/features/output.d.ts +18 -28
- package/lib/typescript/src/features/output.d.ts.map +1 -1
- package/lib/typescript/src/features/playback/controls.d.ts +0 -5
- package/lib/typescript/src/features/playback/controls.d.ts.map +1 -1
- package/lib/typescript/src/features/playback/index.d.ts +0 -1
- package/lib/typescript/src/features/playback/index.d.ts.map +1 -1
- package/lib/typescript/src/features/playback/playWhenReady.d.ts +1 -1
- package/lib/typescript/src/features/playback/playing.d.ts +1 -1
- package/lib/typescript/src/features/playback/progress.d.ts +1 -4
- package/lib/typescript/src/features/playback/progress.d.ts.map +1 -1
- package/lib/typescript/src/features/playback/state.d.ts +1 -1
- package/lib/typescript/src/features/playback/volume.d.ts +2 -2
- package/lib/typescript/src/features/player/options.d.ts +127 -176
- package/lib/typescript/src/features/player/options.d.ts.map +1 -1
- package/lib/typescript/src/features/player/setup.d.ts +167 -213
- package/lib/typescript/src/features/player/setup.d.ts.map +1 -1
- package/lib/typescript/src/features/queue/activeTrack.d.ts +1 -1
- package/lib/typescript/src/features/queue/queue.d.ts +4 -11
- package/lib/typescript/src/features/queue/queue.d.ts.map +1 -1
- package/lib/typescript/src/features/queue/repeatMode.d.ts +1 -1
- package/lib/typescript/src/features/queue/shuffle.d.ts +1 -1
- package/lib/typescript/src/features/rating.d.ts +14 -0
- package/lib/typescript/src/features/rating.d.ts.map +1 -0
- package/lib/typescript/src/features/remoteControls.d.ts +35 -23
- package/lib/typescript/src/features/remoteControls.d.ts.map +1 -1
- package/lib/typescript/src/features/sleepTimer.d.ts +4 -19
- package/lib/typescript/src/features/sleepTimer.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/native.d.ts +2 -1
- package/lib/typescript/src/native.d.ts.map +1 -1
- package/lib/typescript/src/native.web.d.ts +3 -0
- package/lib/typescript/src/native.web.d.ts.map +1 -0
- package/lib/typescript/src/specs/audio-browser.nitro.d.ts +225 -17
- package/lib/typescript/src/specs/audio-browser.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types/browser-native.d.ts +3 -9
- package/lib/typescript/src/types/browser-native.d.ts.map +1 -1
- package/lib/typescript/src/types/browser-nodes.d.ts +13 -145
- package/lib/typescript/src/types/browser-nodes.d.ts.map +1 -1
- package/lib/typescript/src/types/browser.d.ts +85 -349
- package/lib/typescript/src/types/browser.d.ts.map +1 -1
- package/lib/typescript/src/types/player.d.ts +64 -0
- package/lib/typescript/src/types/player.d.ts.map +1 -0
- package/lib/typescript/src/utils/LazyNativeEmitter.d.ts +6 -8
- package/lib/typescript/src/utils/LazyNativeEmitter.d.ts.map +1 -1
- package/lib/typescript/src/utils/NativeUpdatedValue.d.ts +2 -0
- package/lib/typescript/src/utils/NativeUpdatedValue.d.ts.map +1 -1
- package/lib/typescript/src/utils/resolveAssetSource.d.ts.map +1 -1
- package/lib/typescript/src/web/NativeAudioBrowser.d.ts +188 -0
- package/lib/typescript/src/web/NativeAudioBrowser.d.ts.map +1 -0
- package/lib/typescript/src/web/SimpleRouter.d.ts +40 -0
- package/lib/typescript/src/web/SimpleRouter.d.ts.map +1 -0
- package/lib/typescript/src/web/SimpleRouter.test.d.ts +2 -0
- package/lib/typescript/src/web/SimpleRouter.test.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/Event.d.ts +11 -0
- package/lib/typescript/src/web/TrackPlayer/Event.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/Player.d.ts +59 -0
- package/lib/typescript/src/web/TrackPlayer/Player.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/PlaylistPlayer.d.ts +39 -0
- package/lib/typescript/src/web/TrackPlayer/PlaylistPlayer.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/RepeatMode.d.ts +6 -0
- package/lib/typescript/src/web/TrackPlayer/RepeatMode.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/SetupNotCalledError.d.ts +4 -0
- package/lib/typescript/src/web/TrackPlayer/SetupNotCalledError.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/SleepTimer.d.ts +34 -0
- package/lib/typescript/src/web/TrackPlayer/SleepTimer.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/State.d.ts +13 -0
- package/lib/typescript/src/web/TrackPlayer/State.d.ts.map +1 -0
- package/lib/typescript/src/web/TrackPlayer/index.d.ts +5 -0
- package/lib/typescript/src/web/TrackPlayer/index.d.ts.map +1 -0
- package/lib/typescript/src/web/browser/BrowserManager.d.ts +154 -0
- package/lib/typescript/src/web/browser/BrowserManager.d.ts.map +1 -0
- package/lib/typescript/src/web/browser/FavoriteManager.d.ts +42 -0
- package/lib/typescript/src/web/browser/FavoriteManager.d.ts.map +1 -0
- package/lib/typescript/src/web/browser/NavigationErrorManager.d.ts +40 -0
- package/lib/typescript/src/web/browser/NavigationErrorManager.d.ts.map +1 -0
- package/lib/typescript/src/web/browser/SearchManager.d.ts +22 -0
- package/lib/typescript/src/web/browser/SearchManager.d.ts.map +1 -0
- package/lib/typescript/src/web/http/HttpClient.d.ts +25 -0
- package/lib/typescript/src/web/http/HttpClient.d.ts.map +1 -0
- package/lib/typescript/src/web/http/RequestConfigBuilder.d.ts +98 -0
- package/lib/typescript/src/web/http/RequestConfigBuilder.d.ts.map +1 -0
- package/lib/typescript/src/web/player/NowPlayingManager.d.ts +34 -0
- package/lib/typescript/src/web/player/NowPlayingManager.d.ts.map +1 -0
- package/lib/typescript/src/web/player/OptionsManager.d.ts +32 -0
- package/lib/typescript/src/web/player/OptionsManager.d.ts.map +1 -0
- package/lib/typescript/src/web/util/BrowserPathHelper.d.ts +69 -0
- package/lib/typescript/src/web/util/BrowserPathHelper.d.ts.map +1 -0
- package/lib/typescript/src/web/util/shuffle.d.ts +8 -0
- package/lib/typescript/src/web/util/shuffle.d.ts.map +1 -0
- package/nitrogen/generated/android/AudioBrowser+autolinking.cmake +2 -4
- package/nitrogen/generated/android/AudioBrowserOnLoad.cpp +10 -24
- package/nitrogen/generated/android/c++/JAndroidAudioContentType.hpp +6 -6
- package/nitrogen/generated/android/c++/JAndroidOptions.hpp +20 -10
- package/nitrogen/generated/android/c++/JAndroidUpdateOptions.hpp +86 -0
- package/nitrogen/generated/android/c++/JArtworkRequestConfig.hpp +1 -33
- package/nitrogen/generated/android/c++/JBrowseResult.hpp +0 -5
- package/nitrogen/generated/android/c++/JCarPlayNowPlayingButton.hpp +3 -3
- package/nitrogen/generated/android/c++/JFavoriteChangedEvent.hpp +0 -6
- package/nitrogen/generated/android/c++/JFormattedNavigationError.hpp +2 -3
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_RequestConfig_____Track.hpp +0 -6
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError______BrowserSourceCallbackParam.hpp +147 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_Track______SearchParams.hpp +0 -8
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_void_____TrackLoadEvent.hpp +0 -6
- package/nitrogen/generated/android/c++/JFunc_void_FavoriteChangedEvent.hpp +0 -6
- package/nitrogen/generated/android/c++/JFunc_void_IosOutput.hpp +80 -0
- package/nitrogen/generated/android/c++/JFunc_void_NowPlayingMetadata.hpp +10 -0
- package/nitrogen/generated/android/c++/JFunc_void_Options.hpp +9 -14
- package/nitrogen/generated/android/c++/JFunc_void_Playback.hpp +0 -2
- package/nitrogen/generated/android/c++/JFunc_void_PlaybackActiveTrackChangedEvent.hpp +0 -6
- package/nitrogen/generated/android/c++/JFunc_void_PlaybackErrorEvent.hpp +0 -2
- package/nitrogen/generated/android/c++/JFunc_void_RemoteSetRatingEvent.hpp +87 -0
- package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +10 -10
- package/nitrogen/generated/android/c++/JFunc_void_std__optional_ResolvedTrack_.hpp +0 -6
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_Track_.hpp +0 -6
- package/nitrogen/generated/android/c++/JHeartRating.hpp +57 -0
- package/nitrogen/generated/android/c++/JHybridAudioBrowserSpec.cpp +221 -245
- package/nitrogen/generated/android/c++/JHybridAudioBrowserSpec.hpp +22 -25
- package/nitrogen/generated/android/c++/JImageRowItem.hpp +3 -33
- package/nitrogen/generated/android/c++/{JOutput.hpp → JIosOutput.hpp} +15 -15
- package/nitrogen/generated/android/c++/JIosOutputType.hpp +85 -0
- package/nitrogen/generated/android/c++/JMediaRequestConfig.hpp +1 -33
- package/nitrogen/generated/android/c++/JNativeBrowserConfiguration.hpp +28 -61
- package/nitrogen/generated/android/c++/JNativeRouteEntry.hpp +9 -20
- package/nitrogen/generated/android/c++/JNativeUpdateOptions.hpp +24 -21
- package/nitrogen/generated/android/c++/JNavigationErrorType.hpp +0 -6
- package/nitrogen/generated/android/c++/JNitroAndroidUpdateOptions.hpp +20 -10
- package/nitrogen/generated/android/c++/{JRemoteButton.hpp → JNotificationButton.hpp} +20 -20
- package/nitrogen/generated/android/c++/JNotificationButtonLayout.hpp +94 -0
- package/nitrogen/generated/android/c++/JNowPlayingMetadata.hpp +17 -3
- package/nitrogen/generated/android/c++/JNowPlayingUpdate.hpp +3 -7
- package/nitrogen/generated/android/c++/JOptions.hpp +14 -19
- package/nitrogen/generated/android/c++/{JNativeAndroidSetupOptions.hpp → JPartialAndroidSetupPlayerOptions.hpp} +10 -10
- package/nitrogen/generated/android/c++/{JNativeIOSSetupOptions.hpp → JPartialIOSSetupPlayerOptions.hpp} +10 -10
- package/nitrogen/generated/android/c++/JPartialSetupPlayerOptions.hpp +96 -0
- package/nitrogen/generated/android/c++/JPercentageRating.hpp +57 -0
- package/nitrogen/generated/android/c++/JPlayback.hpp +0 -2
- package/nitrogen/generated/android/c++/JPlaybackActiveTrackChangedEvent.hpp +0 -6
- package/nitrogen/generated/android/c++/JPlaybackError.hpp +3 -18
- package/nitrogen/generated/android/c++/JPlaybackErrorEvent.hpp +0 -2
- package/nitrogen/generated/android/c++/JPlaybackState.hpp +3 -3
- package/nitrogen/generated/android/c++/JPlayerCapabilities.hpp +5 -11
- package/nitrogen/generated/android/c++/JRatingType.hpp +73 -0
- package/nitrogen/generated/android/c++/JRemoteSetRatingEvent.hpp +66 -0
- package/nitrogen/generated/android/c++/JResolvedTrack.hpp +5 -23
- package/nitrogen/generated/android/c++/JRetryConfig.hpp +7 -11
- package/nitrogen/generated/android/c++/JSearchMode.hpp +9 -27
- package/nitrogen/generated/android/c++/JSearchParams.hpp +3 -9
- package/nitrogen/generated/android/c++/JStarRating.hpp +57 -0
- package/nitrogen/generated/android/c++/{JGateEvent.hpp → JThumbsRating.hpp} +15 -16
- package/nitrogen/generated/android/c++/JTrack.hpp +5 -23
- package/nitrogen/generated/android/c++/JTrackLoadEvent.hpp +0 -6
- package/nitrogen/generated/android/c++/JTransformableRequestConfig.hpp +1 -14
- package/nitrogen/generated/android/c++/JUpdateOptions.hpp +105 -0
- package/nitrogen/generated/android/c++/JVariant_HeartRating_ThumbsRating_StarRating_PercentageRating.cpp +34 -0
- package/nitrogen/generated/android/c++/JVariant_HeartRating_ThumbsRating_StarRating_PercentageRating.hpp +105 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_NotificationButtonLayout.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_NotificationButtonLayout.hpp +75 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/AndroidAudioContentType.kt +4 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/AndroidOptions.kt +9 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/AndroidUpdateOptions.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ArtworkRequestConfig.kt +4 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/CarPlayNowPlayingButton.kt +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/FormattedNavigationError.kt +2 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Func_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError_______BrowserSourceCallbackParam.kt → Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError______BrowserSourceCallbackParam.kt} +12 -12
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Func_void_Output.kt → Func_void_IosOutput.kt} +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Func_void_GateEvent.kt → Func_void_RemoteSetRatingEvent.kt} +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_void_bool.kt +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Gate.kt → HeartRating.kt} +6 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/HybridAudioBrowserSpec.kt +109 -103
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ImageRowItem.kt +3 -24
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Output.kt → IosOutput.kt} +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/IosOutputType.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/MediaRequestConfig.kt +4 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeBrowserConfiguration.kt +6 -18
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeRouteEntry.kt +4 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeUpdateOptions.kt +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NavigationErrorType.kt +1 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NitroAndroidUpdateOptions.kt +9 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{FavoritesMatchMode.kt → NotificationButton.kt} +8 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NotificationButtonLayout.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NowPlayingMetadata.kt +6 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NowPlayingUpdate.kt +3 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Options.kt +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{NativeAndroidSetupOptions.kt → PartialAndroidSetupPlayerOptions.kt} +5 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{NativeIOSSetupOptions.kt → PartialIOSSetupPlayerOptions.kt} +5 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PartialSetupPlayerOptions.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{GateDecision.kt → PercentageRating.kt} +6 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PlaybackError.kt +3 -12
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PlaybackState.kt +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PlayerCapabilities.kt +2 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{GateReason.kt → RatingType.kt} +10 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{ArtworkVariants.kt → RemoteSetRatingEvent.kt} +6 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ResolvedTrack.kt +3 -12
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/RetryConfig.kt +4 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/SearchMode.kt +6 -12
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/SearchParams.kt +3 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{GateEvent.kt → StarRating.kt} +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{FavoriteConfig.kt → ThumbsRating.kt} +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Track.kt +3 -12
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/TransformableRequestConfig.kt +4 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/UpdateOptions.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_HeartRating_ThumbsRating_StarRating_PercentageRating.kt +77 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Variant_NullType_RemoteButtonLayout.kt → Variant_NullType_NotificationButtonLayout.kt} +9 -9
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Bridge.cpp +28 -139
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Bridge.hpp +489 -1125
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Umbrella.hpp +45 -66
- package/nitrogen/generated/ios/c++/HybridAudioBrowserSpecSwift.hpp +118 -176
- package/nitrogen/generated/ios/swift/AndroidAudioContentType.swift +8 -8
- package/nitrogen/generated/ios/swift/AndroidOptions.swift +22 -12
- package/nitrogen/generated/ios/swift/AndroidUpdateOptions.swift +119 -0
- package/nitrogen/generated/ios/swift/ArtworkRequestConfig.swift +1 -95
- package/nitrogen/generated/ios/swift/CarPlayNowPlayingButton.swift +4 -4
- package/nitrogen/generated/ios/swift/FormattedNavigationError.swift +4 -17
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError______BrowserSourceCallbackParam.swift +68 -0
- package/nitrogen/generated/ios/swift/{Func_void_Output.swift → Func_void_IosOutput.swift} +10 -10
- package/nitrogen/generated/ios/swift/{Func_void_GateEvent.swift → Func_void_RemoteSetRatingEvent.swift} +10 -10
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +5 -5
- package/nitrogen/generated/ios/swift/{Func_void_std__shared_ptr_Promise_GateDecision__.swift → Func_void_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError___.swift} +17 -17
- package/nitrogen/generated/ios/swift/HeartRating.swift +29 -0
- package/nitrogen/generated/ios/swift/HybridAudioBrowserSpec.swift +14 -20
- package/nitrogen/generated/ios/swift/HybridAudioBrowserSpec_cxx.swift +197 -230
- package/nitrogen/generated/ios/swift/ImageRowItem.swift +2 -121
- package/nitrogen/generated/ios/swift/{Output.swift → IosOutput.swift} +7 -7
- package/nitrogen/generated/ios/swift/IosOutputType.swift +76 -0
- package/nitrogen/generated/ios/swift/MediaRequestConfig.swift +1 -107
- package/nitrogen/generated/ios/swift/NativeBrowserConfiguration.swift +22 -161
- package/nitrogen/generated/ios/swift/NativeRouteEntry.swift +19 -19
- package/nitrogen/generated/ios/swift/NativeUpdateOptions.swift +25 -12
- package/nitrogen/generated/ios/swift/NavigationErrorType.swift +0 -8
- package/nitrogen/generated/ios/swift/NitroAndroidUpdateOptions.swift +41 -12
- package/nitrogen/generated/ios/swift/{RemoteButton.swift → NotificationButton.swift} +10 -10
- package/nitrogen/generated/ios/swift/NotificationButtonLayout.swift +92 -0
- package/nitrogen/generated/ios/swift/NowPlayingMetadata.swift +48 -1
- package/nitrogen/generated/ios/swift/NowPlayingUpdate.swift +1 -19
- package/nitrogen/generated/ios/swift/Options.swift +4 -10
- package/nitrogen/generated/ios/swift/{NativeAndroidSetupOptions.swift → PartialAndroidSetupPlayerOptions.swift} +5 -5
- package/nitrogen/generated/ios/swift/{NativeIOSSetupOptions.swift → PartialIOSSetupPlayerOptions.swift} +5 -5
- package/nitrogen/generated/ios/swift/PartialSetupPlayerOptions.swift +101 -0
- package/nitrogen/generated/ios/swift/PercentageRating.swift +29 -0
- package/nitrogen/generated/ios/swift/PlaybackError.swift +2 -43
- package/nitrogen/generated/ios/swift/PlaybackState.swift +4 -4
- package/nitrogen/generated/ios/swift/PlayerCapabilities.swift +8 -27
- package/nitrogen/generated/ios/swift/RatingType.swift +60 -0
- package/nitrogen/generated/ios/swift/RemoteSetRatingEvent.swift +58 -0
- package/nitrogen/generated/ios/swift/ResolvedTrack.swift +8 -74
- package/nitrogen/generated/ios/swift/RetryConfig.swift +4 -35
- package/nitrogen/generated/ios/swift/SearchMode.swift +12 -36
- package/nitrogen/generated/ios/swift/SearchParams.swift +2 -7
- package/nitrogen/generated/ios/swift/StarRating.swift +29 -0
- package/nitrogen/generated/ios/swift/ThumbsRating.swift +29 -0
- package/nitrogen/generated/ios/swift/Track.swift +8 -74
- package/nitrogen/generated/ios/swift/TransformableRequestConfig.swift +1 -60
- package/nitrogen/generated/ios/swift/UpdateOptions.swift +143 -0
- package/nitrogen/generated/ios/swift/Variant_HeartRating_ThumbsRating_StarRating_PercentageRating.swift +20 -0
- package/nitrogen/generated/ios/swift/{Variant_NullType_RemoteButtonLayout.swift → Variant_NullType_NotificationButtonLayout.swift} +3 -3
- package/nitrogen/generated/shared/c++/AndroidAudioContentType.hpp +10 -10
- package/nitrogen/generated/shared/c++/AndroidOptions.hpp +19 -8
- package/nitrogen/generated/shared/c++/AndroidUpdateOptions.hpp +109 -0
- package/nitrogen/generated/shared/c++/ArtworkRequestConfig.hpp +2 -10
- package/nitrogen/generated/shared/c++/CarPlayNowPlayingButton.hpp +6 -6
- package/nitrogen/generated/shared/c++/EqualizerSettings.hpp +2 -0
- package/nitrogen/generated/shared/c++/FormattedNavigationError.hpp +5 -6
- package/nitrogen/generated/shared/c++/{GateEvent.hpp → HeartRating.hpp} +17 -18
- package/nitrogen/generated/shared/c++/HybridAudioBrowserSpec.cpp +18 -21
- package/nitrogen/generated/shared/c++/HybridAudioBrowserSpec.hpp +35 -44
- package/nitrogen/generated/shared/c++/ImageRowItem.hpp +2 -33
- package/nitrogen/generated/shared/c++/{Output.hpp → IosOutput.hpp} +18 -18
- package/nitrogen/generated/shared/c++/IosOutputType.hpp +112 -0
- package/nitrogen/generated/shared/c++/MediaRequestConfig.hpp +2 -10
- package/nitrogen/generated/shared/c++/NativeBrowserConfiguration.hpp +15 -31
- package/nitrogen/generated/shared/c++/NativeRouteEntry.hpp +5 -5
- package/nitrogen/generated/shared/c++/NativeUpdateOptions.hpp +7 -9
- package/nitrogen/generated/shared/c++/NavigationErrorType.hpp +0 -8
- package/nitrogen/generated/shared/c++/NitroAndroidUpdateOptions.hpp +19 -8
- package/nitrogen/generated/shared/c++/{RemoteButton.hpp → NotificationButton.hpp} +25 -25
- package/nitrogen/generated/shared/c++/NotificationButtonLayout.hpp +102 -0
- package/nitrogen/generated/shared/c++/NowPlayingMetadata.hpp +19 -3
- package/nitrogen/generated/shared/c++/NowPlayingUpdate.hpp +2 -6
- package/nitrogen/generated/shared/c++/Options.hpp +8 -8
- package/nitrogen/generated/shared/c++/{NativeAndroidSetupOptions.hpp → PartialAndroidSetupPlayerOptions.hpp} +11 -11
- package/nitrogen/generated/shared/c++/{NativeIOSSetupOptions.hpp → PartialIOSSetupPlayerOptions.hpp} +11 -11
- package/nitrogen/generated/shared/c++/PartialSetupPlayerOptions.hpp +104 -0
- package/nitrogen/generated/shared/c++/{FavoriteConfig.hpp → PercentageRating.hpp} +17 -18
- package/nitrogen/generated/shared/c++/PlaybackError.hpp +3 -18
- package/nitrogen/generated/shared/c++/PlaybackState.hpp +9 -9
- package/nitrogen/generated/shared/c++/PlayerCapabilities.hpp +6 -9
- package/nitrogen/generated/shared/c++/RatingType.hpp +96 -0
- package/nitrogen/generated/shared/c++/RemoteSetRatingEvent.hpp +94 -0
- package/nitrogen/generated/shared/c++/ResolvedTrack.hpp +5 -24
- package/nitrogen/generated/shared/c++/RetryConfig.hpp +6 -10
- package/nitrogen/generated/shared/c++/SearchMode.hpp +15 -39
- package/nitrogen/generated/shared/c++/SearchParams.hpp +2 -9
- package/nitrogen/generated/shared/c++/{Gate.hpp → StarRating.hpp} +16 -21
- package/nitrogen/generated/shared/c++/{GateDecision.hpp → ThumbsRating.hpp} +17 -23
- package/nitrogen/generated/shared/c++/Track.hpp +5 -24
- package/nitrogen/generated/shared/c++/TransformableRequestConfig.hpp +2 -6
- package/nitrogen/generated/shared/c++/UpdateOptions.hpp +111 -0
- package/package.json +5 -12
- package/src/AudioBrowser.ts +1 -4
- package/src/features/browser.ts +201 -58
- package/src/features/equalizer.ts +1 -1
- package/src/features/errors.ts +5 -71
- package/src/features/favorites.ts +1 -1
- package/src/features/index.ts +0 -2
- package/src/features/metadata.ts +15 -9
- package/src/features/network.ts +1 -1
- package/src/features/nowPlaying.ts +1 -37
- package/src/features/output.ts +22 -35
- package/src/features/playback/controls.ts +0 -8
- package/src/features/playback/index.ts +0 -1
- package/src/features/playback/playWhenReady.ts +1 -1
- package/src/features/playback/playing.ts +1 -1
- package/src/features/playback/progress.ts +13 -32
- package/src/features/playback/state.ts +1 -1
- package/src/features/playback/volume.ts +2 -2
- package/src/features/player/options.ts +110 -217
- package/src/features/player/setup.ts +175 -397
- package/src/features/queue/activeTrack.ts +1 -1
- package/src/features/queue/queue.ts +6 -17
- package/src/features/queue/repeatMode.ts +1 -1
- package/src/features/queue/shuffle.ts +1 -1
- package/src/features/rating.ts +17 -0
- package/src/features/remoteControls.ts +115 -13
- package/src/features/sleepTimer.ts +5 -24
- package/src/native.ts +0 -5
- package/src/native.web.ts +1 -4
- package/src/specs/audio-browser.nitro.ts +41 -131
- package/src/types/browser-native.ts +6 -19
- package/src/types/browser-nodes.ts +13 -160
- package/src/types/browser.ts +89 -377
- package/src/types/player.ts +69 -0
- package/src/utils/LazyNativeEmitter.ts +8 -9
- package/src/utils/NativeUpdatedValue.ts +2 -0
- package/src/web/NativeAudioBrowser.ts +158 -365
- package/src/web/TrackPlayer/Player.ts +39 -113
- package/src/web/TrackPlayer/PlaylistPlayer.ts +346 -0
- package/src/web/TrackPlayer/RepeatMode.ts +1 -1
- package/src/web/TrackPlayer/SleepTimer.ts +3 -38
- package/src/web/TrackPlayer/index.ts +1 -2
- package/src/web/browser/BrowserManager.ts +62 -231
- package/src/web/browser/NavigationErrorManager.ts +1 -3
- package/src/web/browser/SearchManager.ts +15 -11
- package/src/web/http/HttpClient.ts +35 -5
- package/src/web/http/RequestConfigBuilder.ts +63 -120
- package/src/web/player/NowPlayingManager.ts +5 -6
- package/src/web/player/OptionsManager.ts +18 -12
- package/android/src/main/java/com/audiobrowser/ServiceBinding.kt +0 -46
- package/android/src/main/java/com/audiobrowser/browser/ArtworkResolutionRegistry.kt +0 -37
- package/android/src/main/java/com/audiobrowser/browser/BrowseArtworkRegistry.kt +0 -34
- package/android/src/main/java/com/audiobrowser/browser/BrowserUrlResolution.kt +0 -299
- package/android/src/main/java/com/audiobrowser/browser/JsonArtwork.kt +0 -79
- package/android/src/main/java/com/audiobrowser/browser/SectionScope.kt +0 -42
- package/android/src/main/java/com/audiobrowser/extension/ResolvedTrackExt.kt +0 -35
- package/android/src/main/java/com/audiobrowser/player/CapabilityControls.kt +0 -172
- package/android/src/main/java/com/audiobrowser/player/EqualizerController.kt +0 -153
- package/android/src/main/java/com/audiobrowser/player/InterceptingPlayer.kt +0 -141
- package/android/src/main/java/com/audiobrowser/player/NowPlayingUpdater.kt +0 -347
- package/android/src/main/java/com/audiobrowser/player/PlaybackErrorClassifier.kt +0 -129
- package/android/src/main/java/com/audiobrowser/player/PlaybackStateMachine.kt +0 -85
- package/android/src/main/java/com/audiobrowser/player/PlaybackTimer.kt +0 -56
- package/android/src/main/java/com/audiobrowser/player/PlayerCapabilitiesExt.kt +0 -20
- package/android/src/main/java/com/audiobrowser/player/PlayerEngineFactory.kt +0 -130
- package/android/src/main/java/com/audiobrowser/player/SleepTimerManager.kt +0 -80
- package/android/src/main/java/com/audiobrowser/player/StuckRecoveryPolicy.kt +0 -50
- package/android/src/main/java/com/audiobrowser/player/VolumeFader.kt +0 -81
- package/android/src/main/java/com/audiobrowser/tls/AiaCertChaser.kt +0 -141
- package/android/src/main/java/com/audiobrowser/tls/AiaChasingTrustManager.kt +0 -37
- package/android/src/main/java/com/audiobrowser/tls/AiaTls.kt +0 -41
- package/android/src/main/java/com/audiobrowser/tls/CachingCertificateFetcher.kt +0 -209
- package/android/src/main/java/com/audiobrowser/util/ArtworkContentProvider.kt +0 -161
- package/android/src/main/java/com/audiobrowser/util/ArtworkUris.kt +0 -28
- package/android/src/main/java/com/audiobrowser/util/ArtworkVariant.kt +0 -24
- package/android/src/main/java/com/audiobrowser/util/CoilArtworkLoader.kt +0 -49
- package/android/src/main/java/com/audiobrowser/util/CoilArtworkLoaderHolder.kt +0 -36
- package/android/src/main/java/com/audiobrowser/util/OutputMonitor.kt +0 -211
- package/android/src/main/java/com/audiobrowser/util/OutputSwitcher.kt +0 -58
- package/android/src/main/java/com/audiobrowser/util/RatingFavorites.kt +0 -14
- package/android/src/test/java/com/audiobrowser/ServiceBindingTest.kt +0 -68
- package/android/src/test/java/com/audiobrowser/TestFixtures.kt +0 -165
- package/android/src/test/java/com/audiobrowser/browser/ArtworkResolutionRegistryTest.kt +0 -46
- package/android/src/test/java/com/audiobrowser/browser/BrowseArtworkRegistryTest.kt +0 -39
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerBuildApiRequestTest.kt +0 -114
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerLayerResolutionTest.kt +0 -141
- package/android/src/test/java/com/audiobrowser/browser/BrowserUrlResolutionTest.kt +0 -177
- package/android/src/test/java/com/audiobrowser/browser/JsonArtworkTest.kt +0 -55
- package/android/src/test/java/com/audiobrowser/browser/SectionScopeTest.kt +0 -94
- package/android/src/test/java/com/audiobrowser/player/CapabilityControlsTest.kt +0 -203
- package/android/src/test/java/com/audiobrowser/player/DynamicLoadControlTest.kt +0 -56
- package/android/src/test/java/com/audiobrowser/player/EqualizerControllerTest.kt +0 -216
- package/android/src/test/java/com/audiobrowser/player/MediaSessionSlotMappingTest.kt +0 -45
- package/android/src/test/java/com/audiobrowser/player/NowPlayingUpdaterTest.kt +0 -442
- package/android/src/test/java/com/audiobrowser/player/PlaybackErrorClassifierTest.kt +0 -190
- package/android/src/test/java/com/audiobrowser/player/PlaybackStateMachineTest.kt +0 -198
- package/android/src/test/java/com/audiobrowser/player/PlaybackTimerTest.kt +0 -137
- package/android/src/test/java/com/audiobrowser/player/PlayerEngineFactoryTest.kt +0 -36
- package/android/src/test/java/com/audiobrowser/player/RetryLoadErrorHandlingPolicyTest.kt +0 -268
- package/android/src/test/java/com/audiobrowser/player/SessionErrorMaskTest.kt +0 -68
- package/android/src/test/java/com/audiobrowser/player/StuckRecoveryPolicyTest.kt +0 -40
- package/android/src/test/java/com/audiobrowser/player/TransformingDataSourceTest.kt +0 -193
- package/android/src/test/java/com/audiobrowser/tls/AiaCertChaserTest.kt +0 -107
- package/android/src/test/java/com/audiobrowser/tls/AiaChasingTrustManagerTest.kt +0 -73
- package/android/src/test/java/com/audiobrowser/tls/CachingCertificateFetcherTest.kt +0 -75
- package/android/src/test/java/com/audiobrowser/tls/CertFixtures.kt +0 -18
- package/android/src/test/java/com/audiobrowser/util/ArtworkContentProviderTest.kt +0 -163
- package/android/src/test/java/com/audiobrowser/util/ArtworkUrisTest.kt +0 -34
- package/android/src/test/java/com/audiobrowser/util/BrowserPathHelperTest.kt +0 -28
- package/android/src/test/java/com/audiobrowser/util/CoilArtworkLoaderHolderTest.kt +0 -53
- package/android/src/test/java/com/audiobrowser/util/CoilArtworkLoaderTest.kt +0 -58
- package/android/src/test/java/com/audiobrowser/util/FakeImageLoader.kt +0 -57
- package/android/src/test/java/com/audiobrowser/util/PlayingStateFactoryTest.kt +0 -40
- package/android/src/test/java/com/audiobrowser/util/RatingFavoritesTest.kt +0 -34
- package/android/src/test/java/com/audiobrowser/util/TrackFactoryBrowseTest.kt +0 -50
- package/android/src/test/java/com/audiobrowser/util/TrackFactoryMediaIdTest.kt +0 -63
- package/android/src/test/java/com/audiobrowser/util/TrackFactoryRatingTest.kt +0 -35
- package/android/src/test/resources/certs/isrg-root-x1.pem +0 -31
- package/android/src/test/resources/certs/letsencrypt-r13.der +0 -0
- package/android/src/test/resources/certs/letsencrypt-r13.pem +0 -29
- package/android/src/test/resources/certs/stationplaylist-leaf.pem +0 -34
- package/ios/Browser/MediaResolveComposer.swift +0 -114
- package/ios/Browser/SearchDrillIn.swift +0 -44
- package/ios/Browser/SectionScope.swift +0 -35
- package/ios/Browser/TabBarEntries.swift +0 -15
- package/ios/CarPlay/CPInterfaceController+Safe.swift +0 -126
- package/ios/CarPlay/ImageRowItem+CarPlay.swift +0 -19
- package/ios/CarPlay/RNABMediaAddHandler.swift +0 -75
- package/ios/CarPlay/RNABMediaAffinityHandler.swift +0 -69
- package/ios/Extension/PlayerCapabilities+Favorite.swift +0 -20
- package/ios/Extension/RequestConfig+Copying.swift +0 -31
- package/ios/Extension/Variant+Artwork.swift +0 -49
- package/ios/NowPlayingInfo/SilentAudioPrimer.swift +0 -73
- package/ios/Player/AirPlayStallJudgement.swift +0 -25
- package/ios/Player/EndOfTrackJudgement.swift +0 -32
- package/ios/Player/MediaIntentCriteria.swift +0 -139
- package/ios/Player/PersistedPlaybackState.swift +0 -11
- package/ios/Player/PlaybackStateStore.swift +0 -27
- package/ios/Player/PlaybackTimer.swift +0 -61
- package/ios/Player/VolumeFader.swift +0 -77
- package/ios/RemoteCommand/RemoteCommandCallbacks.swift +0 -47
- package/ios/Tests/AirPlayStallJudgementTests.swift +0 -52
- package/ios/Tests/EndOfTrackJudgementTests.swift +0 -35
- package/ios/Tests/JsonModelsTests.swift +0 -58
- package/ios/Tests/MediaIntentCriteriaTests.swift +0 -170
- package/ios/Tests/MediaLoaderAssetOptionsTests.swift +0 -46
- package/ios/Tests/MediaResolveTests.swift +0 -126
- package/ios/Tests/OnceValueTests.swift +0 -79
- package/ios/Tests/PlaybackStateStoreTests.swift +0 -48
- package/ios/Tests/PlaybackTimerTests.swift +0 -55
- package/ios/Tests/PlayingStateManagerTests.swift +0 -57
- package/ios/Tests/RemoteCommandControllerTests.swift +0 -156
- package/ios/Tests/RemoteCommandTests.swift +0 -67
- package/ios/Tests/RetryManagerTests.swift +0 -89
- package/ios/Tests/SearchDrillInTests.swift +0 -63
- package/ios/Tests/SectionScopeTests.swift +0 -82
- package/ios/Tests/SleepTimerManagerTests.swift +0 -107
- package/ios/Tests/Support/ManualSleepTimerScheduler.swift +0 -47
- package/ios/Tests/TabBarEntriesTests.swift +0 -71
- package/lib/commonjs/features/browser-config.js +0 -227
- package/lib/commonjs/features/browser-config.js.map +0 -1
- package/lib/commonjs/features/carConnection.js +0 -42
- package/lib/commonjs/features/carConnection.js.map +0 -1
- package/lib/commonjs/features/gate.js +0 -149
- package/lib/commonjs/features/gate.js.map +0 -1
- package/lib/commonjs/features/playback/trackPlaybackTime.js +0 -86
- package/lib/commonjs/features/playback/trackPlaybackTime.js.map +0 -1
- package/lib/commonjs/features/player/validateOptions.js +0 -24
- package/lib/commonjs/features/player/validateOptions.js.map +0 -1
- package/lib/commonjs/utils/artwork.js +0 -31
- package/lib/commonjs/utils/artwork.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/PlaybackStateMachine.js +0 -71
- package/lib/commonjs/web/TrackPlayer/PlaybackStateMachine.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/PlaybackTimer.js +0 -34
- package/lib/commonjs/web/TrackPlayer/PlaybackTimer.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/PlayingStateFactory.js +0 -21
- package/lib/commonjs/web/TrackPlayer/PlayingStateFactory.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/QueueManager.js +0 -273
- package/lib/commonjs/web/TrackPlayer/QueueManager.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/QueuePlayer.js +0 -158
- package/lib/commonjs/web/TrackPlayer/QueuePlayer.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/VolumeFader.js +0 -75
- package/lib/commonjs/web/TrackPlayer/VolumeFader.js.map +0 -1
- package/lib/commonjs/web/browser/assertBrowsePageShape.js +0 -22
- package/lib/commonjs/web/browser/assertBrowsePageShape.js.map +0 -1
- package/lib/commonjs/web/browser/classifyTrackNavigation.js +0 -41
- package/lib/commonjs/web/browser/classifyTrackNavigation.js.map +0 -1
- package/lib/commonjs/web/browser/parseSearchResponse.js +0 -20
- package/lib/commonjs/web/browser/parseSearchResponse.js.map +0 -1
- package/lib/commonjs/web/playbackErrorKind.js +0 -57
- package/lib/commonjs/web/playbackErrorKind.js.map +0 -1
- package/lib/commonjs/web/player/MediaSessionManager.js +0 -121
- package/lib/commonjs/web/player/MediaSessionManager.js.map +0 -1
- package/lib/commonjs/web/player/RemoteCommandController.js +0 -96
- package/lib/commonjs/web/player/RemoteCommandController.js.map +0 -1
- package/lib/module/features/browser-config.js +0 -221
- package/lib/module/features/browser-config.js.map +0 -1
- package/lib/module/features/carConnection.js +0 -37
- package/lib/module/features/carConnection.js.map +0 -1
- package/lib/module/features/gate.js +0 -144
- package/lib/module/features/gate.js.map +0 -1
- package/lib/module/features/playback/trackPlaybackTime.js +0 -83
- package/lib/module/features/playback/trackPlaybackTime.js.map +0 -1
- package/lib/module/features/player/validateOptions.js +0 -20
- package/lib/module/features/player/validateOptions.js.map +0 -1
- package/lib/module/utils/artwork.js +0 -26
- package/lib/module/utils/artwork.js.map +0 -1
- package/lib/module/web/TrackPlayer/PlaybackStateMachine.js +0 -67
- package/lib/module/web/TrackPlayer/PlaybackStateMachine.js.map +0 -1
- package/lib/module/web/TrackPlayer/PlaybackTimer.js +0 -29
- package/lib/module/web/TrackPlayer/PlaybackTimer.js.map +0 -1
- package/lib/module/web/TrackPlayer/PlayingStateFactory.js +0 -17
- package/lib/module/web/TrackPlayer/PlayingStateFactory.js.map +0 -1
- package/lib/module/web/TrackPlayer/QueueManager.js +0 -269
- package/lib/module/web/TrackPlayer/QueueManager.js.map +0 -1
- package/lib/module/web/TrackPlayer/QueuePlayer.js +0 -154
- package/lib/module/web/TrackPlayer/QueuePlayer.js.map +0 -1
- package/lib/module/web/TrackPlayer/VolumeFader.js +0 -70
- package/lib/module/web/TrackPlayer/VolumeFader.js.map +0 -1
- package/lib/module/web/browser/assertBrowsePageShape.js +0 -18
- package/lib/module/web/browser/assertBrowsePageShape.js.map +0 -1
- package/lib/module/web/browser/classifyTrackNavigation.js +0 -38
- package/lib/module/web/browser/classifyTrackNavigation.js.map +0 -1
- package/lib/module/web/browser/parseSearchResponse.js +0 -16
- package/lib/module/web/browser/parseSearchResponse.js.map +0 -1
- package/lib/module/web/playbackErrorKind.js +0 -52
- package/lib/module/web/playbackErrorKind.js.map +0 -1
- package/lib/module/web/player/MediaSessionManager.js +0 -116
- package/lib/module/web/player/MediaSessionManager.js.map +0 -1
- package/lib/module/web/player/RemoteCommandController.js +0 -92
- package/lib/module/web/player/RemoteCommandController.js.map +0 -1
- package/lib/typescript/src/features/browser-config.d.ts +0 -12
- package/lib/typescript/src/features/browser-config.d.ts.map +0 -1
- package/lib/typescript/src/features/carConnection.d.ts +0 -20
- package/lib/typescript/src/features/carConnection.d.ts.map +0 -1
- package/lib/typescript/src/features/gate.d.ts +0 -78
- package/lib/typescript/src/features/gate.d.ts.map +0 -1
- package/lib/typescript/src/features/playback/trackPlaybackTime.d.ts +0 -34
- package/lib/typescript/src/features/playback/trackPlaybackTime.d.ts.map +0 -1
- package/lib/typescript/src/features/player/validateOptions.d.ts +0 -2
- package/lib/typescript/src/features/player/validateOptions.d.ts.map +0 -1
- package/lib/typescript/src/utils/artwork.d.ts +0 -19
- package/lib/typescript/src/utils/artwork.d.ts.map +0 -1
- package/nitrogen/generated/android/c++/JArtworkVariants.hpp +0 -61
- package/nitrogen/generated/android/c++/JFavoriteConfig.hpp +0 -58
- package/nitrogen/generated/android/c++/JFavoritesMatchMode.hpp +0 -58
- package/nitrogen/generated/android/c++/JFormatNowPlayingParams.hpp +0 -100
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_RequestConfig___MediaTransformParams.hpp +0 -112
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_RequestConfig___RequestConfig_std__optional_std__unordered_map_std__string__std__string__.hpp +0 -121
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_RequestConfig___Track.hpp +0 -123
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__optional_NowPlayingUpdate____FormatNowPlayingParams.hpp +0 -133
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__optional_std__string____Track.hpp +0 -121
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_GateDecision_____NativeGateRequest.hpp +0 -139
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_TransformableRequestConfig____.hpp +0 -134
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError_______BrowserSourceCallbackParam.hpp +0 -131
- package/nitrogen/generated/android/c++/JFunc_void_GateEvent.hpp +0 -79
- package/nitrogen/generated/android/c++/JFunc_void_Output.hpp +0 -80
- package/nitrogen/generated/android/c++/JGate.hpp +0 -62
- package/nitrogen/generated/android/c++/JGateDecision.hpp +0 -64
- package/nitrogen/generated/android/c++/JGateReason.hpp +0 -58
- package/nitrogen/generated/android/c++/JIOSOptions.hpp +0 -95
- package/nitrogen/generated/android/c++/JMediaReference.hpp +0 -58
- package/nitrogen/generated/android/c++/JNativeGateRequest.hpp +0 -74
- package/nitrogen/generated/android/c++/JNativeSetupPlayerOptions.hpp +0 -182
- package/nitrogen/generated/android/c++/JNitroIOSUpdateOptions.hpp +0 -96
- package/nitrogen/generated/android/c++/JOutputType.hpp +0 -82
- package/nitrogen/generated/android/c++/JPlaybackErrorKind.hpp +0 -76
- package/nitrogen/generated/android/c++/JRemoteButtonLayout.hpp +0 -86
- package/nitrogen/generated/android/c++/JStallReason.hpp +0 -58
- package/nitrogen/generated/android/c++/JTrackRequest.hpp +0 -93
- package/nitrogen/generated/android/c++/JVariant_Boolean_FavoriteConfig.cpp +0 -26
- package/nitrogen/generated/android/c++/JVariant_Boolean_FavoriteConfig.hpp +0 -71
- package/nitrogen/generated/android/c++/JVariant_NullType_RemoteButtonLayout.cpp +0 -26
- package/nitrogen/generated/android/c++/JVariant_NullType_RemoteButtonLayout.hpp +0 -75
- package/nitrogen/generated/android/c++/JVariant_ResolvedTrack_BrowseError_Promise_BrowseResult_.cpp +0 -41
- package/nitrogen/generated/android/c++/JVariant_ResolvedTrack_BrowseError_Promise_BrowseResult_.hpp +0 -121
- package/nitrogen/generated/android/c++/JVariant_String_ArtworkVariants.cpp +0 -26
- package/nitrogen/generated/android/c++/JVariant_String_ArtworkVariants.hpp +0 -70
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/FormatNowPlayingParams.kt +0 -50
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_RequestConfig___MediaTransformParams.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_RequestConfig___RequestConfig_std__optional_std__unordered_map_std__string__std__string__.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_RequestConfig___Track.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__optional_NowPlayingUpdate____FormatNowPlayingParams.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__optional_std__string____Track.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_GateDecision_____NativeGateRequest.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_TransformableRequestConfig____.kt +0 -80
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/IOSOptions.kt +0 -44
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/MediaReference.kt +0 -23
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeGateRequest.kt +0 -44
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeSetupPlayerOptions.kt +0 -66
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NitroIOSUpdateOptions.kt +0 -44
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/OutputType.kt +0 -31
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PlaybackErrorKind.kt +0 -29
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/RemoteButton.kt +0 -26
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/RemoteButtonLayout.kt +0 -44
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/StallReason.kt +0 -23
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/TrackRequest.kt +0 -44
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_Boolean_FavoriteConfig.kt +0 -53
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_ResolvedTrack_BrowseError_Promise_BrowseResult_.kt +0 -65
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_String_ArtworkVariants.kt +0 -53
- package/nitrogen/generated/ios/swift/ArtworkVariants.swift +0 -34
- package/nitrogen/generated/ios/swift/FavoriteConfig.swift +0 -29
- package/nitrogen/generated/ios/swift/FavoritesMatchMode.swift +0 -40
- package/nitrogen/generated/ios/swift/FormatNowPlayingParams.swift +0 -67
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_RequestConfig___MediaTransformParams.swift +0 -54
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_RequestConfig___RequestConfig_std__optional_std__unordered_map_std__string__std__string__.swift +0 -69
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_RequestConfig___Track.swift +0 -54
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__optional_NowPlayingUpdate____FormatNowPlayingParams.swift +0 -60
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__optional_std__string____Track.swift +0 -60
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_GateDecision_____NativeGateRequest.swift +0 -61
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_TransformableRequestConfig____.swift +0 -61
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError_______BrowserSourceCallbackParam.swift +0 -77
- package/nitrogen/generated/ios/swift/Func_void_GateDecision.swift +0 -46
- package/nitrogen/generated/ios/swift/Func_void_TransformableRequestConfig.swift +0 -46
- package/nitrogen/generated/ios/swift/Func_void_std__optional_NowPlayingUpdate_.swift +0 -46
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +0 -53
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_Promise_TransformableRequestConfig__.swift +0 -66
- package/nitrogen/generated/ios/swift/Func_void_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError____.swift +0 -81
- package/nitrogen/generated/ios/swift/Gate.swift +0 -47
- package/nitrogen/generated/ios/swift/GateDecision.swift +0 -40
- package/nitrogen/generated/ios/swift/GateEvent.swift +0 -29
- package/nitrogen/generated/ios/swift/GateReason.swift +0 -40
- package/nitrogen/generated/ios/swift/IOSOptions.swift +0 -51
- package/nitrogen/generated/ios/swift/MediaReference.swift +0 -40
- package/nitrogen/generated/ios/swift/NativeGateRequest.swift +0 -58
- package/nitrogen/generated/ios/swift/NativeSetupPlayerOptions.swift +0 -206
- package/nitrogen/generated/ios/swift/NitroIOSUpdateOptions.swift +0 -90
- package/nitrogen/generated/ios/swift/OutputType.swift +0 -72
- package/nitrogen/generated/ios/swift/PlaybackErrorKind.swift +0 -64
- package/nitrogen/generated/ios/swift/RemoteButtonLayout.swift +0 -57
- package/nitrogen/generated/ios/swift/StallReason.swift +0 -40
- package/nitrogen/generated/ios/swift/TrackRequest.swift +0 -106
- package/nitrogen/generated/ios/swift/Variant_Bool_FavoriteConfig.swift +0 -18
- package/nitrogen/generated/ios/swift/Variant_ResolvedTrack_BrowseError_Promise_BrowseResult_.swift +0 -19
- package/nitrogen/generated/ios/swift/Variant_String_ArtworkVariants.swift +0 -18
- package/nitrogen/generated/shared/c++/ArtworkVariants.hpp +0 -87
- package/nitrogen/generated/shared/c++/FavoritesMatchMode.hpp +0 -76
- package/nitrogen/generated/shared/c++/FormatNowPlayingParams.hpp +0 -110
- package/nitrogen/generated/shared/c++/GateReason.hpp +0 -76
- package/nitrogen/generated/shared/c++/IOSOptions.hpp +0 -91
- package/nitrogen/generated/shared/c++/MediaReference.hpp +0 -76
- package/nitrogen/generated/shared/c++/NativeGateRequest.hpp +0 -97
- package/nitrogen/generated/shared/c++/NativeSetupPlayerOptions.hpp +0 -138
- package/nitrogen/generated/shared/c++/NitroIOSUpdateOptions.hpp +0 -92
- package/nitrogen/generated/shared/c++/OutputType.hpp +0 -108
- package/nitrogen/generated/shared/c++/PlaybackErrorKind.hpp +0 -100
- package/nitrogen/generated/shared/c++/RemoteButtonLayout.hpp +0 -94
- package/nitrogen/generated/shared/c++/StallReason.hpp +0 -76
- package/nitrogen/generated/shared/c++/TrackRequest.hpp +0 -93
- package/src/codegen-no-config-variant.test.ts +0 -70
- package/src/features/browser-config.test.ts +0 -110
- package/src/features/browser-config.ts +0 -293
- package/src/features/browser.test.ts +0 -19
- package/src/features/carConnection.ts +0 -36
- package/src/features/gate.test.ts +0 -72
- package/src/features/gate.ts +0 -155
- package/src/features/playback/trackPlaybackTime.test.ts +0 -80
- package/src/features/playback/trackPlaybackTime.ts +0 -101
- package/src/features/player/options.test.ts +0 -38
- package/src/features/player/setup.test.ts +0 -125
- package/src/features/player/validateOptions.ts +0 -22
- package/src/features/queue/queue.test.ts +0 -36
- package/src/public-surface.test.ts +0 -123
- package/src/utils/artwork.ts +0 -30
- package/src/web/NativeAudioBrowser.playWhenReady.test.ts +0 -301
- package/src/web/TrackPlayer/PlaybackStateMachine.test.ts +0 -139
- package/src/web/TrackPlayer/PlaybackStateMachine.ts +0 -82
- package/src/web/TrackPlayer/PlaybackTimer.test.ts +0 -67
- package/src/web/TrackPlayer/PlaybackTimer.ts +0 -33
- package/src/web/TrackPlayer/Player.dispatch.test.ts +0 -229
- package/src/web/TrackPlayer/Player.load.test.ts +0 -86
- package/src/web/TrackPlayer/PlayingStateFactory.test.ts +0 -51
- package/src/web/TrackPlayer/PlayingStateFactory.ts +0 -24
- package/src/web/TrackPlayer/QueueManager.test.ts +0 -289
- package/src/web/TrackPlayer/QueueManager.ts +0 -302
- package/src/web/TrackPlayer/QueuePlayer.ts +0 -188
- package/src/web/TrackPlayer/VolumeFader.ts +0 -74
- package/src/web/browser/__tests__/layer-resolver.test.ts +0 -69
- package/src/web/browser/assertBrowsePageShape.test.ts +0 -27
- package/src/web/browser/assertBrowsePageShape.ts +0 -27
- package/src/web/browser/classifyTrackNavigation.test.ts +0 -41
- package/src/web/browser/classifyTrackNavigation.ts +0 -35
- package/src/web/browser/parseSearchResponse.test.ts +0 -25
- package/src/web/browser/parseSearchResponse.ts +0 -15
- package/src/web/http/RequestConfigBuilder.test.ts +0 -59
- package/src/web/playbackErrorKind.test.ts +0 -55
- package/src/web/playbackErrorKind.ts +0 -56
- package/src/web/player/MediaSessionManager.test.ts +0 -220
- package/src/web/player/MediaSessionManager.ts +0 -151
- package/src/web/player/NowPlayingManager.test.ts +0 -46
- package/src/web/player/RemoteCommandController.test.ts +0 -171
- package/src/web/player/RemoteCommandController.ts +0 -166
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/web/TrackPlayer/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import type { Track, ResolvedTrack } from '../../types';
|
|
2
|
+
import type { NativeBrowserConfiguration } from '../../types/browser-native';
|
|
3
|
+
import type { HttpClient } from '../http/HttpClient';
|
|
4
|
+
import type { FavoriteManager } from './FavoriteManager';
|
|
5
|
+
import type { NavigationErrorManager } from './NavigationErrorManager';
|
|
6
|
+
/**
|
|
7
|
+
* Manages browser navigation, route resolution, and content loading.
|
|
8
|
+
* Coordinates between HTTP client, favorite manager, and error manager.
|
|
9
|
+
* Matches Android's BrowserManager architecture.
|
|
10
|
+
*/
|
|
11
|
+
export declare class BrowserManager {
|
|
12
|
+
private httpClient;
|
|
13
|
+
private favoriteManager;
|
|
14
|
+
private navigationErrorManager;
|
|
15
|
+
private _path;
|
|
16
|
+
private _tabs;
|
|
17
|
+
private _content;
|
|
18
|
+
private _configuration;
|
|
19
|
+
private router;
|
|
20
|
+
private currentNavigationId;
|
|
21
|
+
private _queueSourcePath;
|
|
22
|
+
onPathChanged: (path: string) => void;
|
|
23
|
+
onContentChanged: (content: ResolvedTrack | undefined) => void;
|
|
24
|
+
onTabsChanged: (tabs: Track[]) => void;
|
|
25
|
+
constructor(httpClient: HttpClient, favoriteManager: FavoriteManager, navigationErrorManager: NavigationErrorManager);
|
|
26
|
+
/**
|
|
27
|
+
* Handles navigation errors by extracting error details and setting the navigation error.
|
|
28
|
+
* Extracts code, message, and statusCode from typed errors, or falls back to generic network error.
|
|
29
|
+
*/
|
|
30
|
+
private handleNavigationError;
|
|
31
|
+
/**
|
|
32
|
+
* Gets the current navigation path.
|
|
33
|
+
*/
|
|
34
|
+
get path(): string | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* Sets the navigation path and triggers navigation.
|
|
37
|
+
*/
|
|
38
|
+
set path(value: string | undefined);
|
|
39
|
+
/**
|
|
40
|
+
* Gets the current tabs.
|
|
41
|
+
*/
|
|
42
|
+
get tabs(): Track[] | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Gets the current content.
|
|
45
|
+
*/
|
|
46
|
+
get content(): ResolvedTrack | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Gets the current browser configuration.
|
|
49
|
+
*/
|
|
50
|
+
get configuration(): NativeBrowserConfiguration;
|
|
51
|
+
/**
|
|
52
|
+
* Gets the current queue source path.
|
|
53
|
+
* Used to track where the current playback queue came from.
|
|
54
|
+
*/
|
|
55
|
+
get queueSourcePath(): string | undefined;
|
|
56
|
+
/**
|
|
57
|
+
* Sets the queue source path.
|
|
58
|
+
*/
|
|
59
|
+
set queueSourcePath(value: string | undefined);
|
|
60
|
+
/**
|
|
61
|
+
* Sets the browser configuration and triggers initial navigation.
|
|
62
|
+
*/
|
|
63
|
+
set configuration(value: NativeBrowserConfiguration);
|
|
64
|
+
/**
|
|
65
|
+
* Navigates to a specific path.
|
|
66
|
+
*/
|
|
67
|
+
navigatePath(path: string): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Navigates to a track's URL.
|
|
70
|
+
*/
|
|
71
|
+
navigateTrack(track: Track): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Notifies that content at a specific path has changed.
|
|
74
|
+
* If the path is currently displayed, triggers a refresh.
|
|
75
|
+
*/
|
|
76
|
+
notifyContentChanged(path: string): void;
|
|
77
|
+
/**
|
|
78
|
+
* Main navigation logic.
|
|
79
|
+
* Resolves content for the given path and updates state.
|
|
80
|
+
* Uses navigation ID to prevent race conditions (matches Android's BrowserManager.kt:586-607).
|
|
81
|
+
*/
|
|
82
|
+
private navigate;
|
|
83
|
+
/**
|
|
84
|
+
* Resolves search content from a search path.
|
|
85
|
+
* Returns a ResolvedTrack with raw children (no contextual URLs).
|
|
86
|
+
* Matches Android's BrowserManager.search() which bypasses resolve() entirely.
|
|
87
|
+
*
|
|
88
|
+
* @param searchPath The search path (format: /__search?q=query)
|
|
89
|
+
* @returns ResolvedTrack containing search results as children
|
|
90
|
+
*/
|
|
91
|
+
private resolveSearchContent;
|
|
92
|
+
/**
|
|
93
|
+
* Transforms artwork URLs for content and its children.
|
|
94
|
+
* Supports both static config and resolve/transform callbacks.
|
|
95
|
+
* Matches Android's artwork URL transformation with full Track access.
|
|
96
|
+
*/
|
|
97
|
+
private transformArtworkForContent;
|
|
98
|
+
/**
|
|
99
|
+
* Resolves content from a route using browseCallback, browseStatic, or browseConfig.
|
|
100
|
+
* Single source of truth for route resolution logic.
|
|
101
|
+
*
|
|
102
|
+
* @param route The route configuration to resolve
|
|
103
|
+
* @param path The path being navigated to
|
|
104
|
+
* @param routeParams Extracted route parameters
|
|
105
|
+
* @param errorContext Context string for error logging
|
|
106
|
+
* @returns ResolvedTrack or undefined if resolution fails
|
|
107
|
+
*/
|
|
108
|
+
private resolveRouteContent;
|
|
109
|
+
/**
|
|
110
|
+
* Resolves content for a specific path using configured routes.
|
|
111
|
+
*/
|
|
112
|
+
private resolveContent;
|
|
113
|
+
/**
|
|
114
|
+
* Queries tabs from the __tabs__ route.
|
|
115
|
+
*/
|
|
116
|
+
private queryTabs;
|
|
117
|
+
/**
|
|
118
|
+
* Checks if the configuration has valid routes.
|
|
119
|
+
*/
|
|
120
|
+
private hasValidConfiguration;
|
|
121
|
+
/**
|
|
122
|
+
* Expands a queue from a contextual URL.
|
|
123
|
+
* Resolves the parent container to get all siblings.
|
|
124
|
+
* Matches Android's BrowserManager.expandQueueFromContextualUrl() behavior.
|
|
125
|
+
*
|
|
126
|
+
* @param contextualUrl The contextual URL (format: /path?__trackId=trackSrc)
|
|
127
|
+
* @returns Object with tracks and selectedIndex, or undefined if expansion fails
|
|
128
|
+
*/
|
|
129
|
+
expandQueueFromContextualUrl(contextualUrl: string): Promise<{
|
|
130
|
+
tracks: Track[];
|
|
131
|
+
selectedIndex: number;
|
|
132
|
+
} | undefined>;
|
|
133
|
+
/**
|
|
134
|
+
* Resolves media items for playback with queue expansion support.
|
|
135
|
+
* Handles search results, contextual URLs, and fallback to single track.
|
|
136
|
+
* Matches Android's BrowserManager.resolveMediaItemsForPlayback() behavior.
|
|
137
|
+
*
|
|
138
|
+
* @param tracks The tracks to resolve
|
|
139
|
+
* @param startIndex The starting index
|
|
140
|
+
* @param startPositionMs The starting position in milliseconds
|
|
141
|
+
* @param searchQuery Optional search query that generated these tracks
|
|
142
|
+
* @returns Object with expanded tracks and starting index
|
|
143
|
+
*/
|
|
144
|
+
resolveMediaItemsForPlayback(tracks: Track[], startIndex: number, startPositionMs: number, searchQuery?: string): Promise<{
|
|
145
|
+
tracks: Track[];
|
|
146
|
+
startIndex: number;
|
|
147
|
+
startPositionMs: number;
|
|
148
|
+
}>;
|
|
149
|
+
/**
|
|
150
|
+
* Gets the default navigation path (first tab URL or '/').
|
|
151
|
+
*/
|
|
152
|
+
private getDefaultPath;
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=BrowserManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserManager.d.ts","sourceRoot":"","sources":["../../../../../src/web/browser/BrowserManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAMtE;;;;GAIG;AACH,qBAAa,cAAc;IAmBvB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,sBAAsB;IApBhC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,MAAM,CAAqB;IAGnC,OAAO,CAAC,mBAAmB,CAAI;IAG/B,OAAO,CAAC,gBAAgB,CAAoB;IAG5C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAW;IAChD,gBAAgB,EAAE,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,KAAK,IAAI,CAAW;IACzE,aAAa,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,CAAW;gBAGvC,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAChC,sBAAsB,EAAE,sBAAsB;IAGxD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA4B7B;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;OAEG;IACH,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EASjC;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,KAAK,EAAE,GAAG,SAAS,CAE9B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,aAAa,GAAG,SAAS,CAEvC;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,0BAA0B,CAE9C;IAED;;;OAGG;IACH,IAAI,eAAe,IAAI,MAAM,GAAG,SAAS,CAExC;IAED;;OAEG;IACH,IAAI,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAE5C;IAED;;OAEG;IACH,IAAI,aAAa,CAAC,KAAK,EAAE,0BAA0B,EA0BlD;IAED;;OAEG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/C;;OAEG;IACG,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAUhD;;;OAGG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMxC;;;;OAIG;YACW,QAAQ;IA6FtB;;;;;;;OAOG;YACW,oBAAoB;IAsDlC;;;;OAIG;YACW,0BAA0B;IAwCxC;;;;;;;;;OASG;YACW,mBAAmB;IA6DjC;;OAEG;YACW,cAAc;IAqD5B;;OAEG;YACW,SAAS;IAkBvB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;;;;;;OAOG;IACG,4BAA4B,CAChC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAoDlE;;;;;;;;;;OAUG;IACG,4BAA4B,CAChC,MAAM,EAAE,KAAK,EAAE,EACf,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC;IAuD5E;;OAEG;IACH,OAAO,CAAC,cAAc;CAQvB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Track, ResolvedTrack } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Manages favorite state for tracks.
|
|
4
|
+
* Matches Android's favorite hydration behavior.
|
|
5
|
+
*/
|
|
6
|
+
export declare class FavoriteManager {
|
|
7
|
+
private favorites;
|
|
8
|
+
/**
|
|
9
|
+
* Sets the favorites cache from an array of track src values.
|
|
10
|
+
* This is typically called when favorites are loaded from storage.
|
|
11
|
+
*/
|
|
12
|
+
setFavorites(favorites: string[]): void;
|
|
13
|
+
/**
|
|
14
|
+
* Checks if a track is favorited based on its src.
|
|
15
|
+
*/
|
|
16
|
+
isFavorited(src: string): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Adds a track src to the favorites cache.
|
|
19
|
+
*/
|
|
20
|
+
addFavorite(src: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Removes a track src from the favorites cache.
|
|
23
|
+
*/
|
|
24
|
+
removeFavorite(src: string): void;
|
|
25
|
+
/**
|
|
26
|
+
* Hydrates the favorited property on a track based on the native favorites cache.
|
|
27
|
+
* Matches Android's hydrateFavorite behavior.
|
|
28
|
+
*
|
|
29
|
+
* @param track Track to hydrate
|
|
30
|
+
* @returns Track with favorited property set if found in cache
|
|
31
|
+
*/
|
|
32
|
+
hydrateFavorite(track: Track): Track;
|
|
33
|
+
/**
|
|
34
|
+
* Hydrates favorites on all children of a ResolvedTrack.
|
|
35
|
+
* Matches Android's hydrateChildren behavior.
|
|
36
|
+
*
|
|
37
|
+
* @param resolvedTrack ResolvedTrack with children to hydrate
|
|
38
|
+
* @returns ResolvedTrack with favorited properties set on children
|
|
39
|
+
*/
|
|
40
|
+
hydrateChildren(resolvedTrack: ResolvedTrack): ResolvedTrack;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=FavoriteManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FavoriteManager.d.ts","sourceRoot":"","sources":["../../../../../src/web/browser/FavoriteManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEvD;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAoB;IAErC;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAIvC;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9B;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIjC;;;;;;OAMG;IACH,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAcpC;;;;;;OAMG;IACH,eAAe,CAAC,aAAa,EAAE,aAAa,GAAG,aAAa;CAY7D"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { NavigationError, NavigationErrorType, FormattedNavigationError, NavigationErrorEvent } from '../../features';
|
|
2
|
+
import type { NativeBrowserConfiguration } from '../../types/browser-native';
|
|
3
|
+
/**
|
|
4
|
+
* Manages navigation error state and formatting.
|
|
5
|
+
* Handles both raw error objects and formatted user-facing error messages.
|
|
6
|
+
*/
|
|
7
|
+
export declare class NavigationErrorManager {
|
|
8
|
+
private _navigationError;
|
|
9
|
+
private _formattedNavigationError;
|
|
10
|
+
private formatCallback?;
|
|
11
|
+
onNavigationError: (data: NavigationErrorEvent) => void;
|
|
12
|
+
onFormattedNavigationError: (formattedError: FormattedNavigationError | undefined) => void;
|
|
13
|
+
/**
|
|
14
|
+
* Sets the custom error formatter callback from configuration.
|
|
15
|
+
*/
|
|
16
|
+
setFormatCallback(callback: NativeBrowserConfiguration['formatNavigationError']): void;
|
|
17
|
+
/**
|
|
18
|
+
* Clears the current navigation error and emits clear events.
|
|
19
|
+
*/
|
|
20
|
+
clearNavigationError(): void;
|
|
21
|
+
/**
|
|
22
|
+
* Sets a navigation error with the given code and message.
|
|
23
|
+
* Automatically formats the error using the configured formatter or default formatting.
|
|
24
|
+
*
|
|
25
|
+
* @param code Error type code
|
|
26
|
+
* @param message Error message
|
|
27
|
+
* @param path Optional path where the error occurred
|
|
28
|
+
* @param statusCode Optional HTTP status code for http-error types
|
|
29
|
+
*/
|
|
30
|
+
setNavigationError(code: NavigationErrorType, message: string, path?: string, statusCode?: number): void;
|
|
31
|
+
/**
|
|
32
|
+
* Gets the current raw navigation error.
|
|
33
|
+
*/
|
|
34
|
+
getNavigationError(): NavigationError | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* Gets the current formatted navigation error.
|
|
37
|
+
*/
|
|
38
|
+
getFormattedNavigationError(): FormattedNavigationError | undefined;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=NavigationErrorManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationErrorManager.d.ts","sourceRoot":"","sources":["../../../../../src/web/browser/NavigationErrorManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAU5E;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,yBAAyB,CAAsC;IACvE,OAAO,CAAC,cAAc,CAAC,CAAqD;IAG5E,iBAAiB,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAW;IAClE,0BAA0B,EAAE,CAC1B,cAAc,EAAE,wBAAwB,GAAG,SAAS,KACjD,IAAI,CAAW;IAEpB;;OAEG;IACH,iBAAiB,CACf,QAAQ,EAAE,0BAA0B,CAAC,uBAAuB,CAAC,GAC5D,IAAI;IAIP;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAY5B;;;;;;;;OAQG;IACH,kBAAkB,CAChB,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,GAClB,IAAI;IAoCP;;OAEG;IACH,kBAAkB,IAAI,eAAe,GAAG,SAAS;IAIjD;;OAEG;IACH,2BAA2B,IAAI,wBAAwB,GAAG,SAAS;CAGpE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Track, SearchParams } from '../../types';
|
|
2
|
+
import type { HttpClient } from '../http/HttpClient';
|
|
3
|
+
import type { BrowserManager } from './BrowserManager';
|
|
4
|
+
/**
|
|
5
|
+
* Manages search functionality.
|
|
6
|
+
* Resolves search queries using configured __search__ route.
|
|
7
|
+
* Matches Android's search architecture.
|
|
8
|
+
*/
|
|
9
|
+
export declare class SearchManager {
|
|
10
|
+
private browserManager;
|
|
11
|
+
private httpClient;
|
|
12
|
+
constructor(browserManager: BrowserManager, httpClient: HttpClient);
|
|
13
|
+
/**
|
|
14
|
+
* Executes a search query using the __search__ route configuration.
|
|
15
|
+
* Matches Android's BrowserManager.search(params: SearchParams) behavior.
|
|
16
|
+
*
|
|
17
|
+
* @param params Search parameters (query is required, other fields optional)
|
|
18
|
+
* @returns Array of matching tracks
|
|
19
|
+
*/
|
|
20
|
+
search(params: SearchParams): Promise<Track[]>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=SearchManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchManager.d.ts","sourceRoot":"","sources":["../../../../../src/web/browser/SearchManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGtD;;;;GAIG;AACH,qBAAa,aAAa;IAEtB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;gBADV,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,UAAU;IAGhC;;;;;;OAMG;IACG,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;CAgErD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { RequestConfig, TransformableRequestConfig } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* HTTP client for making browser API requests.
|
|
4
|
+
* Mirrors Android's HttpClient.kt
|
|
5
|
+
* Uses RequestConfigBuilder for URL building and config merging.
|
|
6
|
+
*/
|
|
7
|
+
export declare class HttpClient {
|
|
8
|
+
private baseRequestConfig;
|
|
9
|
+
constructor(baseRequestConfig?: Partial<TransformableRequestConfig>);
|
|
10
|
+
/**
|
|
11
|
+
* Updates the base request configuration used for all requests.
|
|
12
|
+
*/
|
|
13
|
+
setBaseRequestConfig(config: Partial<TransformableRequestConfig>): void;
|
|
14
|
+
/**
|
|
15
|
+
* Merges multiple request configs with proper header and query parameter merging.
|
|
16
|
+
* Uses RequestConfigBuilder for consistent merging behavior.
|
|
17
|
+
*/
|
|
18
|
+
mergeRequestConfig(base: Partial<TransformableRequestConfig>, overrides: Partial<RequestConfig>): RequestConfig;
|
|
19
|
+
/**
|
|
20
|
+
* Executes an HTTP request and returns the JSON response.
|
|
21
|
+
* Throws navigation errors for HTTP and network failures.
|
|
22
|
+
*/
|
|
23
|
+
executeRequest(config: RequestConfig): Promise<unknown>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=HttpClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../../../../src/web/http/HttpClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAqB5E;;;;GAIG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,iBAAiB,CAAqC;gBAElD,iBAAiB,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAIvE;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,IAAI;IAIvE;;;OAGG;IACH,kBAAkB,CAChB,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC,EACzC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,GAChC,aAAa;IAahB;;;OAGG;IACG,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CA2D9D"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { RequestConfig, TransformableRequestConfig, MediaRequestConfig, ArtworkRequestConfig, ImageSource, Track, ImageContext } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Builds and merges request configurations.
|
|
4
|
+
* Mirrors Android's RequestConfigBuilder.kt
|
|
5
|
+
*/
|
|
6
|
+
export declare const RequestConfigBuilder: {
|
|
7
|
+
/**
|
|
8
|
+
* Builds a complete URL from a request config.
|
|
9
|
+
* Uses BrowserPathHelper for consistent URL building.
|
|
10
|
+
*/
|
|
11
|
+
readonly buildUrl: (config: RequestConfig) => string;
|
|
12
|
+
/**
|
|
13
|
+
* Merges two RequestConfigs, with override values taking precedence.
|
|
14
|
+
* Headers and query params are merged (not replaced).
|
|
15
|
+
*/
|
|
16
|
+
readonly mergeConfig: (base: RequestConfig, override: RequestConfig) => RequestConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Merges a base RequestConfig with a MediaRequestConfig.
|
|
19
|
+
* Returns the merged config for use in media URL resolution.
|
|
20
|
+
* Supports the transform callback like Android's RequestConfigBuilder.
|
|
21
|
+
*
|
|
22
|
+
* Note: MediaRequestConfig inherits transform from TransformableRequestConfig,
|
|
23
|
+
* which takes (request, routeParams?) directly, not MediaTransformParams.
|
|
24
|
+
*/
|
|
25
|
+
readonly mergeMediaConfig: (base: RequestConfig, override: MediaRequestConfig) => Promise<RequestConfig>;
|
|
26
|
+
/**
|
|
27
|
+
* Merges a base RequestConfig with an ArtworkRequestConfig.
|
|
28
|
+
* Returns the merged config for use in artwork URL resolution.
|
|
29
|
+
*/
|
|
30
|
+
readonly mergeArtworkConfig: (base: RequestConfig, override: ArtworkRequestConfig) => RequestConfig;
|
|
31
|
+
/**
|
|
32
|
+
* Converts a TransformableRequestConfig to a plain RequestConfig.
|
|
33
|
+
*/
|
|
34
|
+
readonly toRequestConfig: (config: TransformableRequestConfig | MediaRequestConfig | ArtworkRequestConfig) => RequestConfig;
|
|
35
|
+
/**
|
|
36
|
+
* Resolves a media URL using the media configuration.
|
|
37
|
+
* Creates a RequestConfig with the track's src as the path, then builds the URL.
|
|
38
|
+
* Supports the transform callback for URL manipulation.
|
|
39
|
+
*
|
|
40
|
+
* @param src The track's src value (may be relative or absolute)
|
|
41
|
+
* @param mediaConfig The media request configuration
|
|
42
|
+
* @returns The resolved absolute URL
|
|
43
|
+
*/
|
|
44
|
+
readonly resolveMediaUrl: (src: string, mediaConfig: MediaRequestConfig | undefined) => Promise<string>;
|
|
45
|
+
/**
|
|
46
|
+
* Resolves an artwork URL and creates an ImageSource.
|
|
47
|
+
* Matches Android's artwork URL transformation behavior.
|
|
48
|
+
*
|
|
49
|
+
* @param artworkUrl The artwork URL (may be relative or absolute)
|
|
50
|
+
* @param artworkConfig The artwork request configuration
|
|
51
|
+
* @returns ImageSource with resolved URI, or undefined if no artwork
|
|
52
|
+
*/
|
|
53
|
+
readonly resolveArtworkSource: (artworkUrl: string | undefined, artworkConfig: ArtworkRequestConfig | undefined) => ImageSource | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Resolves an artwork URL asynchronously with full Track access.
|
|
56
|
+
* Supports resolve and transform callbacks from ArtworkRequestConfig.
|
|
57
|
+
* Matches Android's CoilBitmapLoader.transformArtworkUrlForTrack() behavior.
|
|
58
|
+
*
|
|
59
|
+
* The resolution order is:
|
|
60
|
+
* 1. If resolve callback exists, call it with the track to get per-track config
|
|
61
|
+
* 2. Merge base config + resolved config
|
|
62
|
+
* 3. Apply imageQueryParams if context has dimensions
|
|
63
|
+
* 4. Apply transform callback if present
|
|
64
|
+
*
|
|
65
|
+
* @param track The track to resolve artwork for (full Track object)
|
|
66
|
+
* @param artworkConfig The artwork request configuration
|
|
67
|
+
* @param imageContext Optional image context with size hints (width/height)
|
|
68
|
+
* @returns ImageSource with resolved URI, or undefined if no artwork
|
|
69
|
+
*/
|
|
70
|
+
readonly resolveArtworkSourceAsync: (track: Track, artworkConfig: ArtworkRequestConfig | undefined, imageContext?: ImageContext) => Promise<ImageSource | undefined>;
|
|
71
|
+
/**
|
|
72
|
+
* Transforms a track's artwork URL and populates artworkSource.
|
|
73
|
+
* Leaves the original artwork property unchanged.
|
|
74
|
+
* Matches Android's transformArtworkUrl behavior.
|
|
75
|
+
*
|
|
76
|
+
* @param track The track to transform
|
|
77
|
+
* @param artworkConfig The artwork request configuration
|
|
78
|
+
* @returns Track with artworkSource populated
|
|
79
|
+
*/
|
|
80
|
+
readonly transformTrackArtwork: (track: Track, artworkConfig: ArtworkRequestConfig | undefined) => Track;
|
|
81
|
+
/**
|
|
82
|
+
* Transforms artwork URLs for an array of tracks.
|
|
83
|
+
*
|
|
84
|
+
* @param tracks Array of tracks to transform
|
|
85
|
+
* @param artworkConfig The artwork request configuration
|
|
86
|
+
* @returns Tracks with artworkSource populated
|
|
87
|
+
*/
|
|
88
|
+
readonly transformTracksArtwork: (tracks: Track[], artworkConfig: ArtworkRequestConfig | undefined) => Track[];
|
|
89
|
+
/**
|
|
90
|
+
* Merges header maps, with override values taking precedence.
|
|
91
|
+
*/
|
|
92
|
+
readonly mergeHeaders: (base: Record<string, string> | undefined, override: Record<string, string> | undefined) => Record<string, string> | undefined;
|
|
93
|
+
/**
|
|
94
|
+
* Merges query parameter maps, with override values taking precedence.
|
|
95
|
+
*/
|
|
96
|
+
readonly mergeQuery: (base: Record<string, string> | undefined, override: Record<string, string> | undefined) => Record<string, string> | undefined;
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=RequestConfigBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestConfigBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/web/http/RequestConfigBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,0BAA0B,EAC1B,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,EACX,KAAK,EACL,YAAY,EAEb,MAAM,aAAa,CAAA;AAgDpB;;;GAGG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;;OAGG;gCACc,aAAa,KAAG,MAAM;IAWvC;;;OAGG;iCACe,aAAa,YAAY,aAAa,KAAG,aAAa;IAaxE;;;;;;;OAOG;sCAEK,aAAa,YACT,kBAAkB,KAC3B,OAAO,CAAC,aAAa,CAAC;IAoBzB;;;OAGG;wCAEK,aAAa,YACT,oBAAoB,KAC7B,aAAa;IAKhB;;OAEG;uCAGG,0BAA0B,GAC1B,kBAAkB,GAClB,oBAAoB,KACvB,aAAa;IAahB;;;;;;;;OAQG;oCAEI,MAAM,eACE,kBAAkB,GAAG,SAAS,KAC1C,OAAO,CAAC,MAAM,CAAC;IASlB;;;;;;;OAOG;gDAEW,MAAM,GAAG,SAAS,iBACf,oBAAoB,GAAG,SAAS,KAC9C,WAAW,GAAG,SAAS;IAmB1B;;;;;;;;;;;;;;;OAeG;gDAEM,KAAK,iBACG,oBAAoB,GAAG,SAAS,iBAChC,YAAY,KAC1B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAkEnC;;;;;;;;OAQG;4CAEM,KAAK,iBACG,oBAAoB,GAAG,SAAS,KAC9C,KAAK;IAgBR;;;;;;OAMG;8CAEO,KAAK,EAAE,iBACA,oBAAoB,GAAG,SAAS,KAC9C,KAAK,EAAE;IAMV;;OAEG;kCAEK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,YAC9B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,KAC3C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAMrC;;OAEG;gCAEK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,YAC9B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,KAC3C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;CAK7B,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { NowPlayingUpdate, NowPlayingMetadata } from '../../features';
|
|
2
|
+
import type { Track } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Manages now playing metadata overrides.
|
|
5
|
+
* Allows temporary metadata changes for the currently playing track
|
|
6
|
+
* (e.g., updating stream metadata for live radio).
|
|
7
|
+
*/
|
|
8
|
+
export declare class NowPlayingManager {
|
|
9
|
+
private override;
|
|
10
|
+
onNowPlayingChanged: (metadata: NowPlayingMetadata) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Updates the now playing metadata with an override.
|
|
13
|
+
* Pass null or undefined to clear overrides and revert to track metadata.
|
|
14
|
+
*
|
|
15
|
+
* @param update Metadata override or null/undefined to clear
|
|
16
|
+
* @param currentTrack Current track for base metadata
|
|
17
|
+
* @param duration Current track duration
|
|
18
|
+
*/
|
|
19
|
+
updateNowPlaying(update: NowPlayingUpdate | undefined, currentTrack: Track | undefined, duration: number): void;
|
|
20
|
+
/**
|
|
21
|
+
* Gets the current now playing metadata (with override applied if set).
|
|
22
|
+
*
|
|
23
|
+
* @param currentTrack Current track for base metadata
|
|
24
|
+
* @param duration Current track duration
|
|
25
|
+
* @returns Now playing metadata or undefined if no track
|
|
26
|
+
*/
|
|
27
|
+
getNowPlaying(currentTrack: Track | undefined, duration: number): NowPlayingMetadata | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Clears the current metadata override.
|
|
30
|
+
* Should be called when the track changes.
|
|
31
|
+
*/
|
|
32
|
+
clearNowPlayingOverride(): void;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=NowPlayingManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NowPlayingManager.d.ts","sourceRoot":"","sources":["../../../../../src/web/player/NowPlayingManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAC1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAExC;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAA8B;IAG9C,mBAAmB,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,CAAW;IAEtE;;;;;;;OAOG;IACH,gBAAgB,CACd,MAAM,EAAE,gBAAgB,GAAG,SAAS,EACpC,YAAY,EAAE,KAAK,GAAG,SAAS,EAC/B,QAAQ,EAAE,MAAM,GACf,IAAI;IA8BP;;;;;;OAMG;IACH,aAAa,CACX,YAAY,EAAE,KAAK,GAAG,SAAS,EAC/B,QAAQ,EAAE,MAAM,GACf,kBAAkB,GAAG,SAAS;IAejC;;;OAGG;IACH,uBAAuB,IAAI,IAAI;CAGhC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { NativeUpdateOptions, UpdateOptions, Options, RepeatMode as RepeatModeType } from '../../features';
|
|
2
|
+
/**
|
|
3
|
+
* Manages player options and configuration.
|
|
4
|
+
* Handles option updates and change detection.
|
|
5
|
+
*/
|
|
6
|
+
export declare class OptionsManager {
|
|
7
|
+
private options;
|
|
8
|
+
onOptionsChanged: (options: Options) => void;
|
|
9
|
+
/**
|
|
10
|
+
* Updates player options with change detection.
|
|
11
|
+
* Emits onOptionsChanged event after updating.
|
|
12
|
+
*
|
|
13
|
+
* @param options Partial options to update
|
|
14
|
+
*/
|
|
15
|
+
updateOptions(options: NativeUpdateOptions): void;
|
|
16
|
+
/**
|
|
17
|
+
* Gets current player options (excluding repeatMode).
|
|
18
|
+
*/
|
|
19
|
+
getOptions(): UpdateOptions;
|
|
20
|
+
/**
|
|
21
|
+
* Gets the current repeat mode.
|
|
22
|
+
*/
|
|
23
|
+
getRepeatMode(): RepeatModeType;
|
|
24
|
+
/**
|
|
25
|
+
* Sets the repeat mode.
|
|
26
|
+
* Updates internal state but does not emit events - caller should handle that.
|
|
27
|
+
*
|
|
28
|
+
* @param mode New repeat mode
|
|
29
|
+
*/
|
|
30
|
+
setRepeatMode(mode: RepeatModeType): void;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=OptionsManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionsManager.d.ts","sourceRoot":"","sources":["../../../../../src/web/player/OptionsManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,OAAO,EACP,UAAU,IAAI,cAAc,EAC7B,MAAM,gBAAgB,CAAA;AAOvB;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAMd;IAGD,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAW;IAEvD;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAuCjD;;OAEG;IACH,UAAU,IAAI,aAAa;IAS3B;;OAEG;IACH,aAAa,IAAI,cAAc;IAI/B;;;;;OAKG;IACH,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;CAG1C"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility for handling browser paths and contextual URLs in the media browser system.
|
|
3
|
+
* Mirrors Android's BrowserPathHelper.kt
|
|
4
|
+
*
|
|
5
|
+
* Handles two types of special paths:
|
|
6
|
+
* 1. System paths (prefixed with `/__`): Root, recent, and search paths
|
|
7
|
+
* 2. Contextual URLs: Embed parent context in track identifiers for Media3 integration
|
|
8
|
+
*
|
|
9
|
+
* Contextual URL format: `{parentPath}?__trackId={trackSrc}`
|
|
10
|
+
* Example: "/library/radio?__trackId=song.mp3"
|
|
11
|
+
*
|
|
12
|
+
* This allows:
|
|
13
|
+
* - Media3 to reference playable-only tracks (tracks with `src` but no `url`)
|
|
14
|
+
* - Cache lookup to work consistently
|
|
15
|
+
* - Parent context to be preserved for queue restoration
|
|
16
|
+
*/
|
|
17
|
+
export declare const BrowserPathHelper: {
|
|
18
|
+
/** Search path prefix (full path is /__search?q=query) */
|
|
19
|
+
readonly SEARCH_PATH_PREFIX: "/__search";
|
|
20
|
+
/** Query parameter name for contextual track identifiers */
|
|
21
|
+
readonly CONTEXTUAL_TRACK_PARAM: "__trackId";
|
|
22
|
+
/**
|
|
23
|
+
* Create a search path for a given query
|
|
24
|
+
*/
|
|
25
|
+
readonly createSearchPath: (query: string) => string;
|
|
26
|
+
/**
|
|
27
|
+
* Checks if a path contains a contextual track identifier.
|
|
28
|
+
*
|
|
29
|
+
* @param path The URL path to check
|
|
30
|
+
* @returns true if the path contains the contextual track parameter
|
|
31
|
+
*/
|
|
32
|
+
readonly isContextual: (path: string) => boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Strips the __trackId parameter from a contextual URL to get the parent path.
|
|
35
|
+
* If the URL is not contextual, returns it unchanged.
|
|
36
|
+
*
|
|
37
|
+
* @param url The URL to process
|
|
38
|
+
* @returns The URL without the __trackId parameter
|
|
39
|
+
*
|
|
40
|
+
* Example: "/library/radio?__trackId=song.mp3" → "/library/radio"
|
|
41
|
+
* Example: "/search?q=jazz&__trackId=song.mp3" → "/search?q=jazz"
|
|
42
|
+
*/
|
|
43
|
+
readonly stripTrackId: (url: string) => string;
|
|
44
|
+
/**
|
|
45
|
+
* Extracts the track ID from a contextual URL.
|
|
46
|
+
* Returns undefined if the URL is not contextual or doesn't contain the track ID parameter.
|
|
47
|
+
*
|
|
48
|
+
* @param path The contextual URL to parse
|
|
49
|
+
* @returns The extracted track ID, or undefined if not found
|
|
50
|
+
*
|
|
51
|
+
* Example: "/library/radio?__trackId=song.mp3" → "song.mp3"
|
|
52
|
+
*/
|
|
53
|
+
readonly extractTrackId: (path: string) => string | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Combines a base URL with a path, ensuring proper slash handling.
|
|
56
|
+
*
|
|
57
|
+
* @param baseUrl The base URL (can be undefined)
|
|
58
|
+
* @param path The path to append
|
|
59
|
+
* @returns The combined URL with proper slash handling
|
|
60
|
+
*
|
|
61
|
+
* Examples:
|
|
62
|
+
* - buildUrl("http://example.com", "api/test") → "http://example.com/api/test"
|
|
63
|
+
* - buildUrl("http://example.com/", "/api/test") → "http://example.com/api/test"
|
|
64
|
+
* - buildUrl(undefined, "/api/test") → "/api/test"
|
|
65
|
+
* - buildUrl(undefined, "http://full.url") → "http://full.url"
|
|
66
|
+
*/
|
|
67
|
+
readonly buildUrl: (baseUrl: string | undefined, path: string) => string;
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=BrowserPathHelper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserPathHelper.d.ts","sourceRoot":"","sources":["../../../../../src/web/util/BrowserPathHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB;IAC5B,0DAA0D;;IAG1D,4DAA4D;;IAG5D;;OAEG;uCACqB,MAAM,KAAG,MAAM;IAKvC;;;;;OAKG;kCACgB,MAAM,KAAG,OAAO;IAOnC;;;;;;;;;OASG;iCACe,MAAM,KAAG,MAAM;IAmCjC;;;;;;;;OAQG;oCACkB,MAAM,KAAG,MAAM,GAAG,SAAS;IAoBhD;;;;;;;;;;;;OAYG;iCACe,MAAM,GAAG,SAAS,QAAQ,MAAM,KAAG,MAAM;CAgBnD,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shuffles an array in place using the Fisher-Yates algorithm.
|
|
3
|
+
* https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle
|
|
4
|
+
*
|
|
5
|
+
* @param array The array to shuffle (mutated in place)
|
|
6
|
+
*/
|
|
7
|
+
export declare function fisherYatesShuffle<T>(array: T[]): void;
|
|
8
|
+
//# sourceMappingURL=shuffle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shuffle.d.ts","sourceRoot":"","sources":["../../../../../src/web/util/shuffle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAOtD"}
|
|
@@ -36,13 +36,11 @@ target_sources(
|
|
|
36
36
|
../nitrogen/generated/shared/c++/HybridAudioBrowserSpec.cpp
|
|
37
37
|
# Android-specific Nitrogen C++ sources
|
|
38
38
|
../nitrogen/generated/android/c++/JHybridAudioBrowserSpec.cpp
|
|
39
|
-
../nitrogen/generated/android/c++/JVariant_String_ArtworkVariants.cpp
|
|
40
|
-
../nitrogen/generated/android/c++/JVariant_ResolvedTrack_BrowseError_Promise_BrowseResult_.cpp
|
|
41
39
|
../nitrogen/generated/android/c++/JBrowseResult.cpp
|
|
42
40
|
../nitrogen/generated/android/c++/JSleepTimer.cpp
|
|
43
|
-
../nitrogen/generated/android/c++/
|
|
41
|
+
../nitrogen/generated/android/c++/JVariant_HeartRating_ThumbsRating_StarRating_PercentageRating.cpp
|
|
42
|
+
../nitrogen/generated/android/c++/JVariant_NullType_NotificationButtonLayout.cpp
|
|
44
43
|
../nitrogen/generated/android/c++/JVariant_NullType_Double.cpp
|
|
45
|
-
../nitrogen/generated/android/c++/JVariant_Boolean_FavoriteConfig.cpp
|
|
46
44
|
../nitrogen/generated/android/c++/JVariant_Boolean_AndroidAudioOffloadSettings.cpp
|
|
47
45
|
../nitrogen/generated/android/c++/JVariant_Boolean_RetryConfig.cpp
|
|
48
46
|
)
|