react-native-audio-browser 0.1.1 → 0.2.0-next.10
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 +184 -2
- package/android/build.gradle +17 -5
- package/android/gradle.properties +2 -2
- package/android/src/main/AndroidManifest.xml +18 -1
- package/android/src/main/java/com/audiobrowser/AudioBrowser.kt +473 -158
- package/android/src/main/java/com/audiobrowser/AudioBrowserLifecycleModule.kt +38 -0
- package/android/src/main/java/com/audiobrowser/AudioBrowserPackage.kt +18 -2
- package/android/src/main/java/com/audiobrowser/Callbacks.kt +4 -6
- package/android/src/main/java/com/audiobrowser/Service.kt +67 -18
- package/android/src/main/java/com/audiobrowser/ServiceBinding.kt +48 -0
- package/android/src/main/java/com/audiobrowser/browser/ArtworkResolutionRegistry.kt +37 -0
- package/android/src/main/java/com/audiobrowser/browser/BrowseArtworkRegistry.kt +34 -0
- package/android/src/main/java/com/audiobrowser/browser/BrowserManager.kt +442 -178
- package/android/src/main/java/com/audiobrowser/browser/BrowserUrlResolution.kt +299 -0
- package/android/src/main/java/com/audiobrowser/browser/JsonArtwork.kt +79 -0
- package/android/src/main/java/com/audiobrowser/browser/JsonModels.kt +41 -4
- package/android/src/main/java/com/audiobrowser/browser/SectionScope.kt +42 -0
- package/android/src/main/java/com/audiobrowser/browser/TrackLoadHandler.kt +4 -4
- package/android/src/main/java/com/audiobrowser/extension/ResolvedTrackExt.kt +35 -0
- package/android/src/main/java/com/audiobrowser/http/HttpClient.kt +20 -3
- package/android/src/main/java/com/audiobrowser/http/RequestConfigBuilder.kt +109 -97
- package/android/src/main/java/com/audiobrowser/model/PlaybackMetadata.kt +6 -10
- package/android/src/main/java/com/audiobrowser/model/PlayerSetupOptions.kt +40 -8
- package/android/src/main/java/com/audiobrowser/model/PlayerUpdateOptions.kt +40 -46
- package/android/src/main/java/com/audiobrowser/player/AutomaticBufferManager.kt +4 -1
- package/android/src/main/java/com/audiobrowser/player/CapabilityControls.kt +172 -0
- package/android/src/main/java/com/audiobrowser/player/DynamicLoadControl.kt +18 -1
- package/android/src/main/java/com/audiobrowser/player/EqualizerController.kt +153 -0
- package/android/src/main/java/com/audiobrowser/player/InterceptingPlayer.kt +141 -0
- package/android/src/main/java/com/audiobrowser/player/MediaFactory.kt +15 -3
- package/android/src/main/java/com/audiobrowser/player/MediaSessionCallback.kt +422 -134
- package/android/src/main/java/com/audiobrowser/player/MediaSessionCommandManager.kt +248 -404
- package/android/src/main/java/com/audiobrowser/player/NowPlayingUpdater.kt +347 -0
- package/android/src/main/java/com/audiobrowser/player/PlaybackErrorClassifier.kt +129 -0
- package/android/src/main/java/com/audiobrowser/player/PlaybackStateMachine.kt +85 -0
- package/android/src/main/java/com/audiobrowser/player/PlaybackStateStore.kt +25 -5
- package/android/src/main/java/com/audiobrowser/player/PlaybackTimer.kt +56 -0
- package/android/src/main/java/com/audiobrowser/player/Player.kt +475 -577
- package/android/src/main/java/com/audiobrowser/player/PlayerCapabilitiesExt.kt +20 -0
- package/android/src/main/java/com/audiobrowser/player/PlayerEngineFactory.kt +130 -0
- package/android/src/main/java/com/audiobrowser/player/PlayerListener.kt +190 -67
- package/android/src/main/java/com/audiobrowser/player/RetryLoadErrorHandlingPolicy.kt +118 -53
- package/android/src/main/java/com/audiobrowser/player/SleepTimer.kt +37 -3
- package/android/src/main/java/com/audiobrowser/player/SleepTimerManager.kt +80 -0
- package/android/src/main/java/com/audiobrowser/player/StuckRecoveryPolicy.kt +50 -0
- package/android/src/main/java/com/audiobrowser/player/TransformingDataSource.kt +85 -40
- package/android/src/main/java/com/audiobrowser/player/VolumeFader.kt +81 -0
- package/android/src/main/java/com/audiobrowser/tls/AiaCertChaser.kt +156 -0
- package/android/src/main/java/com/audiobrowser/tls/AiaChasingExtendedTrustManager.kt +109 -0
- package/android/src/main/java/com/audiobrowser/tls/AiaChasingTrustManager.kt +37 -0
- package/android/src/main/java/com/audiobrowser/tls/AiaTls.kt +55 -0
- package/android/src/main/java/com/audiobrowser/tls/CachingCertificateFetcher.kt +265 -0
- package/android/src/main/java/com/audiobrowser/util/ArtworkContentProvider.kt +161 -0
- package/android/src/main/java/com/audiobrowser/util/ArtworkUris.kt +28 -0
- package/android/src/main/java/com/audiobrowser/util/ArtworkVariant.kt +24 -0
- package/android/src/main/java/com/audiobrowser/util/BrowserPathHelper.kt +24 -0
- package/android/src/main/java/com/audiobrowser/util/CoilArtworkLoader.kt +49 -0
- package/android/src/main/java/com/audiobrowser/util/CoilArtworkLoaderHolder.kt +36 -0
- package/android/src/main/java/com/audiobrowser/util/CoilBitmapLoader.kt +23 -300
- package/android/src/main/java/com/audiobrowser/util/EqualizerManager.kt +13 -23
- package/android/src/main/java/com/audiobrowser/util/MediaExtrasBuilder.kt +2 -2
- package/android/src/main/java/com/audiobrowser/util/MetadataAdapter.kt +4 -3
- package/android/src/main/java/com/audiobrowser/util/OutputMonitor.kt +211 -0
- package/android/src/main/java/com/audiobrowser/util/OutputSwitcher.kt +58 -0
- package/android/src/main/java/com/audiobrowser/util/PlayingStateFactory.kt +2 -1
- package/android/src/main/java/com/audiobrowser/util/RatingFavorites.kt +14 -0
- package/android/src/main/java/com/audiobrowser/util/SvgArtworkRenderer.kt +6 -111
- package/android/src/main/java/com/audiobrowser/util/SystemVolumeMonitor.kt +22 -8
- package/android/src/main/java/com/audiobrowser/util/TrackFactory.kt +112 -80
- package/android/src/main/res/values/strings.xml +4 -0
- package/android/src/test/java/com/audiobrowser/ServiceBindingTest.kt +87 -0
- package/android/src/test/java/com/audiobrowser/TestFixtures.kt +165 -0
- package/android/src/test/java/com/audiobrowser/browser/ArtworkResolutionRegistryTest.kt +46 -0
- package/android/src/test/java/com/audiobrowser/browser/BrowseArtworkRegistryTest.kt +39 -0
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerBuildApiRequestTest.kt +114 -0
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerLayerResolutionTest.kt +141 -0
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerTest.kt +4 -0
- package/android/src/test/java/com/audiobrowser/browser/BrowserUrlResolutionTest.kt +177 -0
- package/android/src/test/java/com/audiobrowser/browser/JsonArtworkTest.kt +55 -0
- package/android/src/test/java/com/audiobrowser/browser/SectionScopeTest.kt +94 -0
- package/android/src/test/java/com/audiobrowser/browser/SimpleRouterTest.kt +1 -2
- package/android/src/test/java/com/audiobrowser/http/RequestConfigBuilderTest.kt +72 -0
- package/android/src/test/java/com/audiobrowser/player/CapabilityControlsTest.kt +203 -0
- package/android/src/test/java/com/audiobrowser/player/DynamicLoadControlTest.kt +56 -0
- package/android/src/test/java/com/audiobrowser/player/EqualizerControllerTest.kt +216 -0
- package/android/src/test/java/com/audiobrowser/player/MediaSessionSlotMappingTest.kt +45 -0
- package/android/src/test/java/com/audiobrowser/player/NowPlayingUpdaterTest.kt +442 -0
- package/android/src/test/java/com/audiobrowser/player/PlaybackErrorClassifierTest.kt +190 -0
- package/android/src/test/java/com/audiobrowser/player/PlaybackStateMachineTest.kt +198 -0
- package/android/src/test/java/com/audiobrowser/player/PlaybackTimerTest.kt +137 -0
- package/android/src/test/java/com/audiobrowser/player/PlayerEngineFactoryTest.kt +36 -0
- package/android/src/test/java/com/audiobrowser/player/RetryLoadErrorHandlingPolicyTest.kt +268 -0
- package/android/src/test/java/com/audiobrowser/player/SessionErrorMaskTest.kt +68 -0
- package/android/src/test/java/com/audiobrowser/player/StuckRecoveryPolicyTest.kt +40 -0
- package/android/src/test/java/com/audiobrowser/player/TransformingDataSourceTest.kt +193 -0
- package/android/src/test/java/com/audiobrowser/tls/AiaCertChaserTest.kt +153 -0
- package/android/src/test/java/com/audiobrowser/tls/AiaChasingTrustManagerTest.kt +186 -0
- package/android/src/test/java/com/audiobrowser/tls/CachingCertificateFetcherTest.kt +158 -0
- package/android/src/test/java/com/audiobrowser/tls/CertFixtures.kt +18 -0
- package/android/src/test/java/com/audiobrowser/util/ArtworkContentProviderTest.kt +163 -0
- package/android/src/test/java/com/audiobrowser/util/ArtworkUrisTest.kt +34 -0
- package/android/src/test/java/com/audiobrowser/util/BrowserPathHelperTest.kt +28 -0
- package/android/src/test/java/com/audiobrowser/util/CoilArtworkLoaderHolderTest.kt +53 -0
- package/android/src/test/java/com/audiobrowser/util/CoilArtworkLoaderTest.kt +58 -0
- package/android/src/test/java/com/audiobrowser/util/FakeImageLoader.kt +57 -0
- package/android/src/test/java/com/audiobrowser/util/PlayingStateFactoryTest.kt +40 -0
- package/android/src/test/java/com/audiobrowser/util/RatingFavoritesTest.kt +34 -0
- package/android/src/test/java/com/audiobrowser/util/TrackFactoryBrowseTest.kt +50 -0
- package/android/src/test/java/com/audiobrowser/util/TrackFactoryMediaIdTest.kt +63 -0
- package/android/src/test/java/com/audiobrowser/util/TrackFactoryRatingTest.kt +35 -0
- package/android/src/test/resources/certs/isrg-root-x1.pem +31 -0
- package/android/src/test/resources/certs/letsencrypt-r13.der +0 -0
- package/android/src/test/resources/certs/letsencrypt-r13.pem +29 -0
- package/android/src/test/resources/certs/stationplaylist-leaf.pem +34 -0
- package/ios/Browser/BrowserConfig.swift +41 -11
- package/ios/Browser/BrowserManager+URLResolution.swift +213 -93
- package/ios/Browser/BrowserManager.swift +303 -135
- package/ios/Browser/BrowserPathHelper.swift +32 -3
- package/ios/Browser/JsonModels.swift +287 -66
- package/ios/Browser/MediaResolveComposer.swift +114 -0
- package/ios/Browser/SearchDrillIn.swift +44 -0
- package/ios/Browser/SectionScope.swift +35 -0
- package/ios/Browser/TabBarEntries.swift +15 -0
- package/ios/CarPlay/CPInterfaceController+Safe.swift +126 -0
- package/ios/CarPlay/CarPlayArtworkResolver.swift +6 -6
- package/ios/CarPlay/CarPlayController.swift +739 -149
- package/ios/CarPlay/CarPlayImageLoader.swift +57 -8
- package/ios/CarPlay/CarPlayListItemFactory.swift +44 -35
- package/ios/CarPlay/CarPlayNowPlayingManager.swift +180 -36
- package/ios/CarPlay/ImageRowItem+CarPlay.swift +19 -0
- package/ios/CarPlay/RNABAudioBrowser.h +15 -10
- package/ios/CarPlay/RNABAudioBrowser.m +15 -14
- package/ios/CarPlay/RNABCarPlaySceneDelegate.m +2 -0
- package/ios/CarPlay/RNABMediaAddHandler.swift +75 -0
- package/ios/CarPlay/RNABMediaAffinityHandler.swift +69 -0
- package/ios/CarPlay/RNABMediaIntentHandler.swift +53 -43
- package/ios/Extension/Capability+RemoteCommand.swift +7 -9
- package/ios/Extension/ChapterMetadata+AVFoundation.swift +1 -1
- package/ios/Extension/NavigationError+Conversion.swift +8 -1
- package/ios/Extension/PlayerCapabilities+Favorite.swift +20 -0
- package/ios/Extension/RequestConfig+Copying.swift +31 -0
- package/ios/Extension/ResolvedTrack+Copying.swift +10 -4
- package/ios/Extension/TimedMetadata+AVFoundation.swift +1 -1
- package/ios/Extension/Track+AVPlayer.swift +4 -4
- package/ios/Extension/Track+Copying.swift +9 -3
- package/ios/Extension/TrackMetadata+AVFoundation.swift +1 -1
- package/ios/Extension/Variant+Artwork.swift +49 -0
- package/ios/HybridAudioBrowser.swift +805 -197
- package/ios/Model/NitroTypeStubs.swift +299 -224
- package/ios/Model/PlayerUpdateOptions.swift +23 -23
- package/ios/Model/RemoteCommand.swift +24 -6
- package/ios/Model/TrackPlayerError.swift +82 -18
- package/ios/NowPlayingInfo/NowPlayingInfoController.swift +99 -121
- package/ios/NowPlayingInfo/SilentAudioPrimer.swift +73 -0
- package/ios/Observer/PlayerItemNotificationObserver.swift +45 -5
- package/ios/Observer/PlayerItemPropertyObserver.swift +27 -4
- package/ios/Observer/PlayerTimeObserver.swift +3 -53
- package/ios/Option/SessionCategories.swift +34 -11
- package/ios/Player/AirPlayStallJudgement.swift +25 -0
- package/ios/Player/EndOfTrackJudgement.swift +32 -0
- package/ios/Player/LoadSeekCoordinator.swift +16 -1
- package/ios/Player/MediaIntentCriteria.swift +139 -0
- package/ios/Player/MediaLoader.swift +31 -11
- package/ios/Player/NowPlayingUpdater.swift +119 -26
- package/ios/Player/PersistedPlaybackState.swift +11 -0
- package/ios/Player/PlaybackCoordinator.swift +285 -51
- package/ios/Player/PlaybackCoordinatorCallbacks.swift +6 -1
- package/ios/Player/PlaybackEffectHandler.swift +19 -9
- package/ios/Player/PlaybackErrorHandler.swift +98 -14
- package/ios/Player/PlaybackStateMachine.swift +18 -13
- package/ios/Player/PlaybackStateStore.swift +27 -0
- package/ios/Player/PlaybackTimer.swift +61 -0
- package/ios/Player/PlayingStateManager.swift +3 -2
- package/ios/Player/QueueManager.swift +77 -64
- package/ios/Player/RetryManager.swift +175 -38
- package/ios/Player/ShuffleOrder.swift +10 -0
- package/ios/Player/SleepTimerHandling.swift +8 -0
- package/ios/Player/SleepTimerManager.swift +72 -11
- package/ios/Player/VolumeFader.swift +77 -0
- package/ios/RemoteCommand/RemoteCommandCallbacks.swift +47 -0
- package/ios/RemoteCommand/RemoteCommandController.swift +40 -21
- package/ios/Tests/AirPlayStallJudgementTests.swift +52 -0
- package/ios/Tests/BrowserPathHelperTests.swift +28 -0
- package/ios/Tests/CarPlayArtworkResolverTests.swift +39 -39
- package/ios/Tests/ChapterMetadataAVFoundationTests.swift +2 -2
- package/ios/Tests/EndOfTrackJudgementTests.swift +35 -0
- package/ios/Tests/JsonModelsTests.swift +58 -0
- package/ios/Tests/LRUCacheTests.swift +111 -0
- package/ios/Tests/LoadSeekCoordinatorTests.swift +40 -7
- package/ios/Tests/MediaIntentCriteriaTests.swift +170 -0
- package/ios/Tests/MediaLoaderAssetOptionsTests.swift +46 -0
- package/ios/Tests/MediaLoaderTests.swift +32 -20
- package/ios/Tests/MediaResolveTests.swift +126 -0
- package/ios/Tests/OnceValueTests.swift +79 -0
- package/ios/Tests/PlaybackCoordinatorTests.swift +787 -13
- package/ios/Tests/PlaybackErrorHandlerTests.swift +383 -47
- package/ios/Tests/PlaybackStateMachineTests.swift +33 -8
- package/ios/Tests/PlaybackStateStoreTests.swift +48 -0
- package/ios/Tests/PlaybackTimerTests.swift +55 -0
- package/ios/Tests/PlayerTimeObserverTests.swift +37 -0
- package/ios/Tests/PlayingStateManagerTests.swift +57 -0
- package/ios/Tests/QueueManagerTests.swift +195 -18
- package/ios/Tests/RemoteCommandControllerTests.swift +156 -0
- package/ios/Tests/RemoteCommandTests.swift +67 -0
- package/ios/Tests/ResolvedTrackCopyingTests.swift +15 -8
- package/ios/Tests/RetryManagerTests.swift +178 -0
- package/ios/Tests/SearchDrillInTests.swift +63 -0
- package/ios/Tests/SectionScopeTests.swift +82 -0
- package/ios/Tests/SleepTimerManagerTests.swift +107 -0
- package/ios/Tests/Support/ManualSleepTimerScheduler.swift +47 -0
- package/ios/Tests/Support/TestTypes.swift +61 -20
- package/ios/Tests/TabBarEntriesTests.swift +71 -0
- package/ios/Tests/TrackSelectorTests.swift +15 -15
- package/ios/TrackPlayer.swift +385 -58
- package/ios/TrackPlayerCallbacks.swift +5 -44
- package/ios/TrackSelector.swift +5 -5
- package/ios/Util/ArtworkImageFetcher.swift +4 -2
- package/ios/Util/LRUCache.swift +4 -1
- package/ios/Util/NetworkMonitor.swift +7 -3
- package/ios/Util/OnceValue.swift +34 -0
- package/lib/commonjs/AudioBrowser.js +0 -11
- package/lib/commonjs/AudioBrowser.js.map +1 -1
- package/lib/commonjs/CLAUDE.md +52 -0
- package/lib/commonjs/features/browser-config.js +227 -0
- package/lib/commonjs/features/browser-config.js.map +1 -0
- package/lib/commonjs/features/browser.js +60 -159
- package/lib/commonjs/features/browser.js.map +1 -1
- package/lib/commonjs/features/carConnection.js +42 -0
- package/lib/commonjs/features/carConnection.js.map +1 -0
- package/lib/commonjs/features/equalizer.js +1 -1
- package/lib/commonjs/features/errors.js +37 -5
- package/lib/commonjs/features/errors.js.map +1 -1
- package/lib/commonjs/features/favorites.js +1 -1
- package/lib/commonjs/features/gate.js +164 -0
- package/lib/commonjs/features/gate.js.map +1 -0
- package/lib/commonjs/features/index.js +22 -0
- package/lib/commonjs/features/index.js.map +1 -1
- package/lib/commonjs/features/metadata.js +20 -3
- package/lib/commonjs/features/metadata.js.map +1 -1
- package/lib/commonjs/features/network.js +1 -1
- package/lib/commonjs/features/nowPlaying.js +36 -1
- package/lib/commonjs/features/nowPlaying.js.map +1 -1
- package/lib/commonjs/features/output.js +37 -23
- package/lib/commonjs/features/output.js.map +1 -1
- package/lib/commonjs/features/playback/controls.js +9 -0
- package/lib/commonjs/features/playback/controls.js.map +1 -1
- package/lib/commonjs/features/playback/index.js +11 -0
- 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 +29 -13
- package/lib/commonjs/features/playback/progress.js.map +1 -1
- package/lib/commonjs/features/playback/state.js +1 -1
- package/lib/commonjs/features/playback/trackPlaybackTime.js +86 -0
- package/lib/commonjs/features/playback/trackPlaybackTime.js.map +1 -0
- package/lib/commonjs/features/playback/volume.js +2 -2
- package/lib/commonjs/features/player/options.js +79 -29
- package/lib/commonjs/features/player/options.js.map +1 -1
- package/lib/commonjs/features/player/setup.js +256 -3
- package/lib/commonjs/features/player/setup.js.map +1 -1
- package/lib/commonjs/features/player/validateOptions.js +21 -0
- package/lib/commonjs/features/player/validateOptions.js.map +1 -0
- package/lib/commonjs/features/queue/activeTrack.js +1 -1
- package/lib/commonjs/features/queue/queue.js +12 -5
- 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/remoteControls.js +14 -104
- package/lib/commonjs/features/remoteControls.js.map +1 -1
- package/lib/commonjs/features/sleepTimer.js +22 -5
- package/lib/commonjs/features/sleepTimer.js.map +1 -1
- package/lib/commonjs/native.js +5 -0
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/native.web.js +4 -1
- package/lib/commonjs/native.web.js.map +1 -1
- package/lib/commonjs/test-utils/reactNativeStub.js +65 -0
- package/lib/commonjs/test-utils/reactNativeStub.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 +0 -3
- package/lib/commonjs/utils/NativeUpdatedValue.js.map +1 -1
- package/lib/commonjs/utils/artwork.js +31 -0
- package/lib/commonjs/utils/artwork.js.map +1 -0
- package/lib/commonjs/web/NativeAudioBrowser.js +302 -125
- package/lib/commonjs/web/NativeAudioBrowser.js.map +1 -1
- package/lib/commonjs/web/TrackPlayer/PlaybackStateMachine.js +71 -0
- package/lib/commonjs/web/TrackPlayer/PlaybackStateMachine.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/PlaybackTimer.js +34 -0
- package/lib/commonjs/web/TrackPlayer/PlaybackTimer.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/Player.js +90 -26
- package/lib/commonjs/web/TrackPlayer/Player.js.map +1 -1
- package/lib/commonjs/web/TrackPlayer/PlayingStateFactory.js +21 -0
- package/lib/commonjs/web/TrackPlayer/PlayingStateFactory.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/QueueManager.js +273 -0
- package/lib/commonjs/web/TrackPlayer/QueueManager.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/QueuePlayer.js +158 -0
- package/lib/commonjs/web/TrackPlayer/QueuePlayer.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 +34 -3
- package/lib/commonjs/web/TrackPlayer/SleepTimer.js.map +1 -1
- package/lib/commonjs/web/TrackPlayer/VolumeFader.js +75 -0
- package/lib/commonjs/web/TrackPlayer/VolumeFader.js.map +1 -0
- package/lib/commonjs/web/TrackPlayer/index.js +13 -5
- package/lib/commonjs/web/TrackPlayer/index.js.map +1 -1
- package/lib/commonjs/web/browser/BrowserManager.js +176 -50
- package/lib/commonjs/web/browser/BrowserManager.js.map +1 -1
- package/lib/commonjs/web/browser/NavigationErrorManager.js +3 -1
- package/lib/commonjs/web/browser/NavigationErrorManager.js.map +1 -1
- package/lib/commonjs/web/browser/SearchManager.js +11 -9
- package/lib/commonjs/web/browser/SearchManager.js.map +1 -1
- package/lib/commonjs/web/browser/assertBrowsePageShape.js +22 -0
- package/lib/commonjs/web/browser/assertBrowsePageShape.js.map +1 -0
- package/lib/commonjs/web/browser/classifyTrackNavigation.js +41 -0
- package/lib/commonjs/web/browser/classifyTrackNavigation.js.map +1 -0
- package/lib/commonjs/web/browser/parseSearchResponse.js +20 -0
- package/lib/commonjs/web/browser/parseSearchResponse.js.map +1 -0
- package/lib/commonjs/web/http/HttpClient.js +4 -23
- package/lib/commonjs/web/http/HttpClient.js.map +1 -1
- package/lib/commonjs/web/http/RequestConfigBuilder.js +107 -58
- package/lib/commonjs/web/http/RequestConfigBuilder.js.map +1 -1
- package/lib/commonjs/web/playbackErrorKind.js +57 -0
- package/lib/commonjs/web/playbackErrorKind.js.map +1 -0
- package/lib/commonjs/web/player/MediaSessionManager.js +121 -0
- package/lib/commonjs/web/player/MediaSessionManager.js.map +1 -0
- package/lib/commonjs/web/player/NowPlayingManager.js +6 -5
- package/lib/commonjs/web/player/NowPlayingManager.js.map +1 -1
- package/lib/commonjs/web/player/OptionsManager.js +9 -17
- package/lib/commonjs/web/player/OptionsManager.js.map +1 -1
- package/lib/commonjs/web/player/RemoteCommandController.js +96 -0
- package/lib/commonjs/web/player/RemoteCommandController.js.map +1 -0
- package/lib/module/AudioBrowser.js +1 -1
- package/lib/module/AudioBrowser.js.map +1 -1
- package/lib/module/CLAUDE.md +52 -0
- package/lib/module/features/browser-config.js +221 -0
- package/lib/module/features/browser-config.js.map +1 -0
- package/lib/module/features/browser.js +54 -157
- package/lib/module/features/browser.js.map +1 -1
- package/lib/module/features/carConnection.js +37 -0
- package/lib/module/features/carConnection.js.map +1 -0
- package/lib/module/features/equalizer.js +1 -1
- package/lib/module/features/errors.js +37 -5
- package/lib/module/features/errors.js.map +1 -1
- package/lib/module/features/favorites.js +1 -1
- package/lib/module/features/gate.js +159 -0
- package/lib/module/features/gate.js.map +1 -0
- package/lib/module/features/index.js +2 -0
- package/lib/module/features/index.js.map +1 -1
- package/lib/module/features/metadata.js +20 -3
- package/lib/module/features/metadata.js.map +1 -1
- package/lib/module/features/network.js +1 -1
- package/lib/module/features/nowPlaying.js +34 -1
- package/lib/module/features/nowPlaying.js.map +1 -1
- package/lib/module/features/output.js +32 -19
- package/lib/module/features/output.js.map +1 -1
- package/lib/module/features/playback/controls.js +8 -0
- package/lib/module/features/playback/controls.js.map +1 -1
- package/lib/module/features/playback/index.js +1 -0
- 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 +29 -13
- package/lib/module/features/playback/progress.js.map +1 -1
- package/lib/module/features/playback/state.js +1 -1
- package/lib/module/features/playback/trackPlaybackTime.js +83 -0
- package/lib/module/features/playback/trackPlaybackTime.js.map +1 -0
- package/lib/module/features/playback/volume.js +2 -2
- package/lib/module/features/player/options.js +79 -29
- package/lib/module/features/player/options.js.map +1 -1
- package/lib/module/features/player/setup.js +256 -3
- package/lib/module/features/player/setup.js.map +1 -1
- package/lib/module/features/player/validateOptions.js +17 -0
- package/lib/module/features/player/validateOptions.js.map +1 -0
- package/lib/module/features/queue/activeTrack.js +1 -1
- package/lib/module/features/queue/queue.js +12 -5
- 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/remoteControls.js +13 -103
- package/lib/module/features/remoteControls.js.map +1 -1
- package/lib/module/features/sleepTimer.js +22 -5
- package/lib/module/features/sleepTimer.js.map +1 -1
- package/lib/module/native.js +5 -0
- package/lib/module/native.js.map +1 -1
- package/lib/module/native.web.js +4 -1
- package/lib/module/native.web.js.map +1 -1
- package/lib/module/test-utils/reactNativeStub.js +58 -0
- package/lib/module/test-utils/reactNativeStub.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 +0 -3
- package/lib/module/utils/NativeUpdatedValue.js.map +1 -1
- package/lib/module/utils/artwork.js +26 -0
- package/lib/module/utils/artwork.js.map +1 -0
- package/lib/module/web/NativeAudioBrowser.js +303 -126
- package/lib/module/web/NativeAudioBrowser.js.map +1 -1
- package/lib/module/web/TrackPlayer/PlaybackStateMachine.js +67 -0
- package/lib/module/web/TrackPlayer/PlaybackStateMachine.js.map +1 -0
- package/lib/module/web/TrackPlayer/PlaybackTimer.js +29 -0
- package/lib/module/web/TrackPlayer/PlaybackTimer.js.map +1 -0
- package/lib/module/web/TrackPlayer/Player.js +90 -26
- package/lib/module/web/TrackPlayer/Player.js.map +1 -1
- package/lib/module/web/TrackPlayer/PlayingStateFactory.js +17 -0
- package/lib/module/web/TrackPlayer/PlayingStateFactory.js.map +1 -0
- package/lib/module/web/TrackPlayer/QueueManager.js +269 -0
- package/lib/module/web/TrackPlayer/QueueManager.js.map +1 -0
- package/lib/module/web/TrackPlayer/QueuePlayer.js +154 -0
- package/lib/module/web/TrackPlayer/QueuePlayer.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 +34 -3
- package/lib/module/web/TrackPlayer/SleepTimer.js.map +1 -1
- package/lib/module/web/TrackPlayer/VolumeFader.js +70 -0
- package/lib/module/web/TrackPlayer/VolumeFader.js.map +1 -0
- package/lib/module/web/TrackPlayer/index.js +2 -1
- package/lib/module/web/TrackPlayer/index.js.map +1 -1
- package/lib/module/web/browser/BrowserManager.js +176 -50
- package/lib/module/web/browser/BrowserManager.js.map +1 -1
- package/lib/module/web/browser/NavigationErrorManager.js +3 -1
- package/lib/module/web/browser/NavigationErrorManager.js.map +1 -1
- package/lib/module/web/browser/SearchManager.js +11 -9
- package/lib/module/web/browser/SearchManager.js.map +1 -1
- package/lib/module/web/browser/assertBrowsePageShape.js +18 -0
- package/lib/module/web/browser/assertBrowsePageShape.js.map +1 -0
- package/lib/module/web/browser/classifyTrackNavigation.js +38 -0
- package/lib/module/web/browser/classifyTrackNavigation.js.map +1 -0
- package/lib/module/web/browser/parseSearchResponse.js +16 -0
- package/lib/module/web/browser/parseSearchResponse.js.map +1 -0
- package/lib/module/web/http/HttpClient.js +4 -23
- package/lib/module/web/http/HttpClient.js.map +1 -1
- package/lib/module/web/http/RequestConfigBuilder.js +107 -58
- package/lib/module/web/http/RequestConfigBuilder.js.map +1 -1
- package/lib/module/web/playbackErrorKind.js +52 -0
- package/lib/module/web/playbackErrorKind.js.map +1 -0
- package/lib/module/web/player/MediaSessionManager.js +116 -0
- package/lib/module/web/player/MediaSessionManager.js.map +1 -0
- package/lib/module/web/player/NowPlayingManager.js +7 -5
- package/lib/module/web/player/NowPlayingManager.js.map +1 -1
- package/lib/module/web/player/OptionsManager.js +9 -17
- package/lib/module/web/player/OptionsManager.js.map +1 -1
- package/lib/module/web/player/RemoteCommandController.js +92 -0
- package/lib/module/web/player/RemoteCommandController.js.map +1 -0
- package/lib/typescript/src/AudioBrowser.d.ts +0 -1
- package/lib/typescript/src/AudioBrowser.d.ts.map +1 -1
- package/lib/typescript/src/features/browser-config.d.ts +12 -0
- package/lib/typescript/src/features/browser-config.d.ts.map +1 -0
- package/lib/typescript/src/features/browser.d.ts +40 -1
- package/lib/typescript/src/features/browser.d.ts.map +1 -1
- package/lib/typescript/src/features/carConnection.d.ts +20 -0
- package/lib/typescript/src/features/carConnection.d.ts.map +1 -0
- package/lib/typescript/src/features/equalizer.d.ts +1 -1
- package/lib/typescript/src/features/errors.d.ts +61 -6
- 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/gate.d.ts +93 -0
- package/lib/typescript/src/features/gate.d.ts.map +1 -0
- package/lib/typescript/src/features/index.d.ts +2 -0
- package/lib/typescript/src/features/index.d.ts.map +1 -1
- package/lib/typescript/src/features/metadata.d.ts +26 -7
- 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 +28 -1
- package/lib/typescript/src/features/nowPlaying.d.ts.map +1 -1
- package/lib/typescript/src/features/output.d.ts +28 -18
- package/lib/typescript/src/features/output.d.ts.map +1 -1
- package/lib/typescript/src/features/playback/controls.d.ts +5 -0
- package/lib/typescript/src/features/playback/controls.d.ts.map +1 -1
- package/lib/typescript/src/features/playback/index.d.ts +1 -0
- 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 +4 -1
- 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/trackPlaybackTime.d.ts +34 -0
- package/lib/typescript/src/features/playback/trackPlaybackTime.d.ts.map +1 -0
- package/lib/typescript/src/features/playback/volume.d.ts +2 -2
- package/lib/typescript/src/features/player/options.d.ts +176 -127
- package/lib/typescript/src/features/player/options.d.ts.map +1 -1
- package/lib/typescript/src/features/player/setup.d.ts +216 -167
- package/lib/typescript/src/features/player/setup.d.ts.map +1 -1
- package/lib/typescript/src/features/player/validateOptions.d.ts +9 -0
- package/lib/typescript/src/features/player/validateOptions.d.ts.map +1 -0
- package/lib/typescript/src/features/queue/activeTrack.d.ts +1 -1
- package/lib/typescript/src/features/queue/queue.d.ts +11 -4
- 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/remoteControls.d.ts +23 -35
- package/lib/typescript/src/features/remoteControls.d.ts.map +1 -1
- package/lib/typescript/src/features/sleepTimer.d.ts +19 -4
- 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 +1 -2
- package/lib/typescript/src/native.d.ts.map +1 -1
- package/lib/typescript/src/specs/audio-browser.nitro.d.ts +17 -225
- package/lib/typescript/src/specs/audio-browser.nitro.d.ts.map +1 -1
- package/lib/typescript/src/test-utils/reactNativeStub.d.ts +36 -0
- package/lib/typescript/src/test-utils/reactNativeStub.d.ts.map +1 -0
- package/lib/typescript/src/types/browser-native.d.ts +9 -3
- package/lib/typescript/src/types/browser-native.d.ts.map +1 -1
- package/lib/typescript/src/types/browser-nodes.d.ts +145 -13
- package/lib/typescript/src/types/browser-nodes.d.ts.map +1 -1
- package/lib/typescript/src/types/browser.d.ts +349 -85
- package/lib/typescript/src/types/browser.d.ts.map +1 -1
- package/lib/typescript/src/utils/LazyNativeEmitter.d.ts +8 -6
- package/lib/typescript/src/utils/LazyNativeEmitter.d.ts.map +1 -1
- package/lib/typescript/src/utils/NativeUpdatedValue.d.ts +0 -2
- package/lib/typescript/src/utils/NativeUpdatedValue.d.ts.map +1 -1
- package/lib/typescript/src/utils/artwork.d.ts +19 -0
- package/lib/typescript/src/utils/artwork.d.ts.map +1 -0
- package/lib/typescript/src/utils/resolveAssetSource.d.ts.map +1 -1
- package/nitrogen/generated/android/AudioBrowser+autolinking.cmake +4 -2
- package/nitrogen/generated/android/AudioBrowserOnLoad.cpp +24 -10
- package/nitrogen/generated/android/c++/JAndroidAudioContentType.hpp +6 -6
- package/nitrogen/generated/android/c++/JAndroidOptions.hpp +10 -20
- package/nitrogen/generated/android/c++/JArtworkRequestConfig.hpp +33 -1
- package/nitrogen/generated/android/c++/JArtworkVariants.hpp +61 -0
- package/nitrogen/generated/android/c++/JBrowseResult.hpp +5 -0
- package/nitrogen/generated/android/c++/JCarPlayNowPlayingButton.hpp +3 -3
- package/nitrogen/generated/android/c++/JFavoriteChangedEvent.hpp +6 -0
- package/nitrogen/generated/android/c++/JFavoriteConfig.hpp +58 -0
- package/nitrogen/generated/android/c++/JFavoritesMatchMode.hpp +58 -0
- package/nitrogen/generated/android/c++/JFormatNowPlayingParams.hpp +100 -0
- package/nitrogen/generated/android/c++/JFormattedNavigationError.hpp +3 -2
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_RequestConfig___MediaTransformParams.hpp +112 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_RequestConfig___RequestConfig_std__optional_std__unordered_map_std__string__std__string__.hpp +121 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_RequestConfig___Track.hpp +123 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__optional_NowPlayingUpdate____FormatNowPlayingParams.hpp +133 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__optional_std__string____Track.hpp +121 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_GateDecision_____NativeGateRequest.hpp +139 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_RequestConfig_____Track.hpp +6 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_TransformableRequestConfig____.hpp +134 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_Track______SearchParams.hpp +8 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_void_____TrackLoadEvent.hpp +6 -0
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError_______BrowserSourceCallbackParam.hpp +131 -0
- package/nitrogen/generated/android/c++/JFunc_void_FavoriteChangedEvent.hpp +6 -0
- package/nitrogen/generated/android/c++/JFunc_void_GateEvent.hpp +79 -0
- package/nitrogen/generated/android/c++/JFunc_void_NowPlayingMetadata.hpp +0 -10
- package/nitrogen/generated/android/c++/JFunc_void_Options.hpp +14 -9
- package/nitrogen/generated/android/c++/JFunc_void_Output.hpp +80 -0
- package/nitrogen/generated/android/c++/JFunc_void_Playback.hpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_PlaybackActiveTrackChangedEvent.hpp +6 -0
- package/nitrogen/generated/android/c++/JFunc_void_PlaybackErrorEvent.hpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +10 -10
- package/nitrogen/generated/android/c++/JFunc_void_std__optional_ResolvedTrack_.hpp +6 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_Track_.hpp +6 -0
- package/nitrogen/generated/android/c++/JGate.hpp +62 -0
- package/nitrogen/generated/android/c++/JGateDecision.hpp +64 -0
- package/nitrogen/generated/android/c++/{JThumbsRating.hpp → JGateEvent.hpp} +16 -15
- package/nitrogen/generated/android/c++/JGateReason.hpp +58 -0
- package/nitrogen/generated/android/c++/JHybridAudioBrowserSpec.cpp +247 -223
- package/nitrogen/generated/android/c++/JHybridAudioBrowserSpec.hpp +26 -23
- package/nitrogen/generated/android/c++/JIOSOptions.hpp +95 -0
- package/nitrogen/generated/android/c++/JImageRowItem.hpp +33 -3
- package/nitrogen/generated/android/c++/JMediaReference.hpp +58 -0
- package/nitrogen/generated/android/c++/JMediaRequestConfig.hpp +33 -1
- package/nitrogen/generated/android/c++/{JPartialAndroidSetupPlayerOptions.hpp → JNativeAndroidSetupOptions.hpp} +10 -10
- package/nitrogen/generated/android/c++/JNativeBrowserConfiguration.hpp +61 -28
- package/nitrogen/generated/android/c++/JNativeGateRequest.hpp +74 -0
- package/nitrogen/generated/android/c++/{JPartialIOSSetupPlayerOptions.hpp → JNativeIOSSetupOptions.hpp} +10 -10
- package/nitrogen/generated/android/c++/JNativeRouteEntry.hpp +20 -9
- package/nitrogen/generated/android/c++/JNativeSetupPlayerOptions.hpp +182 -0
- package/nitrogen/generated/android/c++/JNativeUpdateOptions.hpp +21 -24
- package/nitrogen/generated/android/c++/JNavigationErrorType.hpp +6 -0
- package/nitrogen/generated/android/c++/JNitroAndroidUpdateOptions.hpp +10 -20
- package/nitrogen/generated/android/c++/JNitroIOSUpdateOptions.hpp +96 -0
- package/nitrogen/generated/android/c++/JNowPlayingMetadata.hpp +3 -17
- package/nitrogen/generated/android/c++/JNowPlayingUpdate.hpp +7 -3
- package/nitrogen/generated/android/c++/JOptions.hpp +19 -14
- package/nitrogen/generated/android/c++/{JIosOutput.hpp → JOutput.hpp} +15 -15
- package/nitrogen/generated/android/c++/JOutputType.hpp +82 -0
- package/nitrogen/generated/android/c++/JPlayback.hpp +2 -0
- package/nitrogen/generated/android/c++/JPlaybackActiveTrackChangedEvent.hpp +6 -0
- package/nitrogen/generated/android/c++/JPlaybackError.hpp +18 -3
- package/nitrogen/generated/android/c++/JPlaybackErrorEvent.hpp +2 -0
- package/nitrogen/generated/android/c++/JPlaybackErrorKind.hpp +76 -0
- package/nitrogen/generated/android/c++/JPlaybackState.hpp +3 -3
- package/nitrogen/generated/android/c++/JPlayerCapabilities.hpp +11 -5
- package/nitrogen/generated/android/c++/{JNotificationButton.hpp → JRemoteButton.hpp} +20 -20
- package/nitrogen/generated/android/c++/JRemoteButtonLayout.hpp +86 -0
- package/nitrogen/generated/android/c++/JResolvedTrack.hpp +23 -5
- package/nitrogen/generated/android/c++/JRetryConfig.hpp +11 -7
- package/nitrogen/generated/android/c++/JSearchMode.hpp +27 -9
- package/nitrogen/generated/android/c++/JSearchParams.hpp +9 -3
- package/nitrogen/generated/android/c++/JStallReason.hpp +58 -0
- package/nitrogen/generated/android/c++/JTrack.hpp +23 -5
- package/nitrogen/generated/android/c++/JTrackLoadEvent.hpp +6 -0
- package/nitrogen/generated/android/c++/JTrackRequest.hpp +93 -0
- package/nitrogen/generated/android/c++/JTransformableRequestConfig.hpp +14 -1
- package/nitrogen/generated/android/c++/JVariant_Boolean_FavoriteConfig.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_Boolean_FavoriteConfig.hpp +71 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_RemoteButtonLayout.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_RemoteButtonLayout.hpp +75 -0
- package/nitrogen/generated/android/c++/JVariant_ResolvedTrack_BrowseError_Promise_BrowseResult_.cpp +41 -0
- package/nitrogen/generated/android/c++/JVariant_ResolvedTrack_BrowseError_Promise_BrowseResult_.hpp +121 -0
- package/nitrogen/generated/android/c++/JVariant_String_ArtworkVariants.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_String_ArtworkVariants.hpp +70 -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 +3 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ArtworkRequestConfig.kt +10 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ArtworkVariants.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/CarPlayNowPlayingButton.kt +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{HeartRating.kt → FavoriteConfig.kt} +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{RatingType.kt → FavoritesMatchMode.kt} +5 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/FormatNowPlayingParams.kt +50 -0
- 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_RequestConfig___MediaTransformParams.kt +80 -0
- 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 +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_RequestConfig___Track.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__optional_NowPlayingUpdate____FormatNowPlayingParams.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__optional_std__string____Track.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_GateDecision_____NativeGateRequest.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_TransformableRequestConfig____.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError______BrowserSourceCallbackParam.kt → Func_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError_______BrowserSourceCallbackParam.kt} +12 -12
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Func_void_RemoteSetRatingEvent.kt → Func_void_GateEvent.kt} +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Func_void_IosOutput.kt → Func_void_Output.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/{ThumbsRating.kt → Gate.kt} +9 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{PercentageRating.kt → GateDecision.kt} +9 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{StarRating.kt → GateEvent.kt} +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{NotificationButton.kt → GateReason.kt} +5 -8
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/HybridAudioBrowserSpec.kt +104 -110
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/IOSOptions.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ImageRowItem.kt +24 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/MediaReference.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/MediaRequestConfig.kt +10 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{PartialAndroidSetupPlayerOptions.kt → NativeAndroidSetupOptions.kt} +5 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeBrowserConfiguration.kt +18 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{RemoteSetRatingEvent.kt → NativeGateRequest.kt} +12 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{PartialIOSSetupPlayerOptions.kt → NativeIOSSetupOptions.kt} +5 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeRouteEntry.kt +4 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeSetupPlayerOptions.kt +66 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NativeUpdateOptions.kt +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NavigationErrorType.kt +3 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NitroAndroidUpdateOptions.kt +3 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NitroIOSUpdateOptions.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NowPlayingMetadata.kt +3 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NowPlayingUpdate.kt +6 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Options.kt +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{IosOutput.kt → Output.kt} +6 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/OutputType.kt +31 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PlaybackError.kt +12 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PlaybackErrorKind.kt +29 -0
- 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/RemoteButton.kt +26 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/RemoteButtonLayout.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/ResolvedTrack.kt +12 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/RetryConfig.kt +7 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/SearchMode.kt +12 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/SearchParams.kt +6 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/StallReason.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Track.kt +12 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/TrackRequest.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/TransformableRequestConfig.kt +7 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_Boolean_FavoriteConfig.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Variant_NullType_NotificationButtonLayout.kt → Variant_NullType_RemoteButtonLayout.kt} +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_ResolvedTrack_BrowseError_Promise_BrowseResult_.kt +65 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_String_ArtworkVariants.kt +53 -0
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Bridge.cpp +139 -28
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Bridge.hpp +1126 -490
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Umbrella.hpp +66 -45
- package/nitrogen/generated/ios/c++/HybridAudioBrowserSpecSwift.hpp +178 -120
- package/nitrogen/generated/ios/swift/AndroidAudioContentType.swift +8 -8
- package/nitrogen/generated/ios/swift/AndroidOptions.swift +12 -22
- package/nitrogen/generated/ios/swift/ArtworkRequestConfig.swift +95 -1
- package/nitrogen/generated/ios/swift/ArtworkVariants.swift +34 -0
- package/nitrogen/generated/ios/swift/CarPlayNowPlayingButton.swift +4 -4
- package/nitrogen/generated/ios/swift/FavoriteConfig.swift +29 -0
- package/nitrogen/generated/ios/swift/FavoritesMatchMode.swift +40 -0
- package/nitrogen/generated/ios/swift/FormatNowPlayingParams.swift +67 -0
- package/nitrogen/generated/ios/swift/FormattedNavigationError.swift +17 -4
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_RequestConfig___MediaTransformParams.swift +54 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_RequestConfig___RequestConfig_std__optional_std__unordered_map_std__string__std__string__.swift +69 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_RequestConfig___Track.swift +54 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__optional_NowPlayingUpdate____FormatNowPlayingParams.swift +60 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__optional_std__string____Track.swift +60 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_GateDecision_____NativeGateRequest.swift +61 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_TransformableRequestConfig____.swift +61 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError_______BrowserSourceCallbackParam.swift +77 -0
- package/nitrogen/generated/ios/swift/Func_void_GateDecision.swift +46 -0
- package/nitrogen/generated/ios/swift/{Func_void_RemoteSetRatingEvent.swift → Func_void_GateEvent.swift} +10 -10
- package/nitrogen/generated/ios/swift/{Func_void_IosOutput.swift → Func_void_Output.swift} +10 -10
- package/nitrogen/generated/ios/swift/Func_void_TransformableRequestConfig.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +5 -5
- package/nitrogen/generated/ios/swift/Func_void_std__optional_NowPlayingUpdate_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +53 -0
- package/nitrogen/generated/ios/swift/{Func_void_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError___.swift → Func_void_std__shared_ptr_Promise_GateDecision__.swift} +17 -17
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_Promise_TransformableRequestConfig__.swift +66 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_ResolvedTrack__BrowseError__std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError____.swift +81 -0
- package/nitrogen/generated/ios/swift/Gate.swift +47 -0
- package/nitrogen/generated/ios/swift/GateDecision.swift +40 -0
- package/nitrogen/generated/ios/swift/GateEvent.swift +29 -0
- package/nitrogen/generated/ios/swift/GateReason.swift +40 -0
- package/nitrogen/generated/ios/swift/HybridAudioBrowserSpec.swift +21 -15
- package/nitrogen/generated/ios/swift/HybridAudioBrowserSpec_cxx.swift +232 -199
- package/nitrogen/generated/ios/swift/IOSOptions.swift +51 -0
- package/nitrogen/generated/ios/swift/ImageRowItem.swift +121 -2
- package/nitrogen/generated/ios/swift/MediaReference.swift +40 -0
- package/nitrogen/generated/ios/swift/MediaRequestConfig.swift +107 -1
- package/nitrogen/generated/ios/swift/{PartialAndroidSetupPlayerOptions.swift → NativeAndroidSetupOptions.swift} +5 -5
- package/nitrogen/generated/ios/swift/NativeBrowserConfiguration.swift +161 -22
- package/nitrogen/generated/ios/swift/NativeGateRequest.swift +58 -0
- package/nitrogen/generated/ios/swift/{PartialIOSSetupPlayerOptions.swift → NativeIOSSetupOptions.swift} +5 -5
- package/nitrogen/generated/ios/swift/NativeRouteEntry.swift +19 -19
- package/nitrogen/generated/ios/swift/NativeSetupPlayerOptions.swift +206 -0
- package/nitrogen/generated/ios/swift/NativeUpdateOptions.swift +12 -25
- package/nitrogen/generated/ios/swift/NavigationErrorType.swift +8 -0
- package/nitrogen/generated/ios/swift/NitroAndroidUpdateOptions.swift +12 -41
- package/nitrogen/generated/ios/swift/NitroIOSUpdateOptions.swift +90 -0
- package/nitrogen/generated/ios/swift/NowPlayingMetadata.swift +1 -48
- package/nitrogen/generated/ios/swift/NowPlayingUpdate.swift +19 -1
- package/nitrogen/generated/ios/swift/Options.swift +10 -4
- package/nitrogen/generated/ios/swift/{IosOutput.swift → Output.swift} +7 -7
- package/nitrogen/generated/ios/swift/OutputType.swift +72 -0
- package/nitrogen/generated/ios/swift/PlaybackError.swift +43 -2
- package/nitrogen/generated/ios/swift/PlaybackErrorKind.swift +64 -0
- package/nitrogen/generated/ios/swift/PlaybackState.swift +4 -4
- package/nitrogen/generated/ios/swift/PlayerCapabilities.swift +27 -8
- package/nitrogen/generated/ios/swift/{NotificationButton.swift → RemoteButton.swift} +10 -10
- package/nitrogen/generated/ios/swift/RemoteButtonLayout.swift +57 -0
- package/nitrogen/generated/ios/swift/ResolvedTrack.swift +74 -8
- package/nitrogen/generated/ios/swift/RetryConfig.swift +35 -4
- package/nitrogen/generated/ios/swift/SearchMode.swift +36 -12
- package/nitrogen/generated/ios/swift/SearchParams.swift +7 -2
- package/nitrogen/generated/ios/swift/StallReason.swift +40 -0
- package/nitrogen/generated/ios/swift/Track.swift +74 -8
- package/nitrogen/generated/ios/swift/TrackRequest.swift +106 -0
- package/nitrogen/generated/ios/swift/TransformableRequestConfig.swift +60 -1
- package/nitrogen/generated/ios/swift/Variant_Bool_FavoriteConfig.swift +18 -0
- package/nitrogen/generated/ios/swift/{Variant_NullType_NotificationButtonLayout.swift → Variant_NullType_RemoteButtonLayout.swift} +3 -3
- package/nitrogen/generated/ios/swift/Variant_ResolvedTrack_BrowseError_Promise_BrowseResult_.swift +19 -0
- package/nitrogen/generated/ios/swift/Variant_String_ArtworkVariants.swift +18 -0
- package/nitrogen/generated/shared/c++/AndroidAudioContentType.hpp +10 -10
- package/nitrogen/generated/shared/c++/AndroidOptions.hpp +8 -19
- package/nitrogen/generated/shared/c++/ArtworkRequestConfig.hpp +10 -2
- package/nitrogen/generated/shared/c++/ArtworkVariants.hpp +87 -0
- package/nitrogen/generated/shared/c++/CarPlayNowPlayingButton.hpp +6 -6
- package/nitrogen/generated/shared/c++/EqualizerSettings.hpp +0 -2
- package/nitrogen/generated/shared/c++/{StarRating.hpp → FavoriteConfig.hpp} +18 -17
- package/nitrogen/generated/shared/c++/FavoritesMatchMode.hpp +76 -0
- package/nitrogen/generated/shared/c++/FormatNowPlayingParams.hpp +110 -0
- package/nitrogen/generated/shared/c++/FormattedNavigationError.hpp +6 -5
- package/nitrogen/generated/shared/c++/{PercentageRating.hpp → Gate.hpp} +21 -16
- package/nitrogen/generated/shared/c++/{HeartRating.hpp → GateDecision.hpp} +23 -17
- package/nitrogen/generated/shared/c++/{ThumbsRating.hpp → GateEvent.hpp} +18 -17
- package/nitrogen/generated/shared/c++/GateReason.hpp +76 -0
- package/nitrogen/generated/shared/c++/HybridAudioBrowserSpec.cpp +22 -19
- package/nitrogen/generated/shared/c++/HybridAudioBrowserSpec.hpp +45 -36
- package/nitrogen/generated/shared/c++/IOSOptions.hpp +91 -0
- package/nitrogen/generated/shared/c++/ImageRowItem.hpp +33 -2
- package/nitrogen/generated/shared/c++/MediaReference.hpp +76 -0
- package/nitrogen/generated/shared/c++/MediaRequestConfig.hpp +10 -2
- package/nitrogen/generated/shared/c++/{PartialAndroidSetupPlayerOptions.hpp → NativeAndroidSetupOptions.hpp} +11 -11
- package/nitrogen/generated/shared/c++/NativeBrowserConfiguration.hpp +31 -15
- package/nitrogen/generated/shared/c++/NativeGateRequest.hpp +97 -0
- package/nitrogen/generated/shared/c++/{PartialIOSSetupPlayerOptions.hpp → NativeIOSSetupOptions.hpp} +11 -11
- package/nitrogen/generated/shared/c++/NativeRouteEntry.hpp +5 -5
- package/nitrogen/generated/shared/c++/NativeSetupPlayerOptions.hpp +138 -0
- package/nitrogen/generated/shared/c++/NativeUpdateOptions.hpp +9 -7
- package/nitrogen/generated/shared/c++/NavigationErrorType.hpp +8 -0
- package/nitrogen/generated/shared/c++/NitroAndroidUpdateOptions.hpp +8 -19
- package/nitrogen/generated/shared/c++/NitroIOSUpdateOptions.hpp +92 -0
- package/nitrogen/generated/shared/c++/NowPlayingMetadata.hpp +3 -19
- package/nitrogen/generated/shared/c++/NowPlayingUpdate.hpp +6 -2
- package/nitrogen/generated/shared/c++/Options.hpp +8 -8
- package/nitrogen/generated/shared/c++/{IosOutput.hpp → Output.hpp} +18 -18
- package/nitrogen/generated/shared/c++/OutputType.hpp +108 -0
- package/nitrogen/generated/shared/c++/PlaybackError.hpp +18 -3
- package/nitrogen/generated/shared/c++/PlaybackErrorKind.hpp +100 -0
- package/nitrogen/generated/shared/c++/PlaybackState.hpp +9 -9
- package/nitrogen/generated/shared/c++/PlayerCapabilities.hpp +9 -6
- package/nitrogen/generated/shared/c++/{NotificationButton.hpp → RemoteButton.hpp} +25 -25
- package/nitrogen/generated/shared/c++/RemoteButtonLayout.hpp +94 -0
- package/nitrogen/generated/shared/c++/ResolvedTrack.hpp +24 -5
- package/nitrogen/generated/shared/c++/RetryConfig.hpp +10 -6
- package/nitrogen/generated/shared/c++/SearchMode.hpp +39 -15
- package/nitrogen/generated/shared/c++/SearchParams.hpp +9 -2
- package/nitrogen/generated/shared/c++/StallReason.hpp +76 -0
- package/nitrogen/generated/shared/c++/Track.hpp +24 -5
- package/nitrogen/generated/shared/c++/TrackRequest.hpp +93 -0
- package/nitrogen/generated/shared/c++/TransformableRequestConfig.hpp +6 -2
- package/package.json +20 -8
- package/src/AudioBrowser.ts +1 -1
- package/src/CLAUDE.md +52 -0
- package/src/codegen-no-config-variant.test.ts +70 -0
- package/src/features/battery.test.ts +79 -0
- package/src/features/browser-config.test.ts +110 -0
- package/src/features/browser-config.ts +293 -0
- package/src/features/browser.test.ts +19 -0
- package/src/features/browser.ts +59 -202
- package/src/features/carConnection.ts +36 -0
- package/src/features/equalizer.ts +1 -1
- package/src/features/errors.ts +71 -5
- package/src/features/favorites.ts +1 -1
- package/src/features/gate.test.ts +72 -0
- package/src/features/gate.ts +170 -0
- package/src/features/hook-wiring.test.ts +254 -0
- package/src/features/index.ts +2 -0
- package/src/features/metadata.ts +26 -15
- package/src/features/network.ts +1 -1
- package/src/features/nowPlaying.ts +37 -1
- package/src/features/output.ts +35 -22
- package/src/features/playback/controls.ts +8 -0
- package/src/features/playback/index.ts +1 -0
- package/src/features/playback/playWhenReady.ts +1 -1
- package/src/features/playback/playing.ts +1 -1
- package/src/features/playback/progress.test.ts +169 -0
- package/src/features/playback/progress.ts +32 -13
- package/src/features/playback/state.ts +1 -1
- package/src/features/playback/trackPlaybackTime.test.ts +76 -0
- package/src/features/playback/trackPlaybackTime.ts +101 -0
- package/src/features/playback/volume.ts +2 -2
- package/src/features/player/options.test.ts +38 -0
- package/src/features/player/options.ts +217 -110
- package/src/features/player/setup.test.ts +125 -0
- package/src/features/player/setup.ts +400 -175
- package/src/features/player/validateOptions.ts +19 -0
- package/src/features/queue/activeTrack.ts +1 -1
- package/src/features/queue/queue.test.ts +36 -0
- package/src/features/queue/queue.ts +17 -6
- package/src/features/queue/repeatMode.ts +1 -1
- package/src/features/queue/shuffle.ts +1 -1
- package/src/features/remoteControls.ts +13 -115
- package/src/features/sleepTimer.test.ts +172 -0
- package/src/features/sleepTimer.ts +32 -5
- package/src/native.ts +5 -0
- package/src/native.web.ts +4 -1
- package/src/public-surface.test.ts +107 -0
- package/src/specs/audio-browser.nitro.ts +132 -42
- package/src/test-utils/reactNativeStub.ts +60 -0
- package/src/types/browser-native.ts +19 -6
- package/src/types/browser-nodes.ts +160 -13
- package/src/types/browser.ts +377 -89
- package/src/utils/LazyNativeEmitter.ts +9 -8
- package/src/utils/NativeUpdatedValue.ts +0 -2
- package/src/utils/artwork.ts +30 -0
- package/src/utils/useDebug.test.ts +182 -0
- package/src/utils/useNativeUpdatedValue.test.ts +103 -0
- package/src/web/NativeAudioBrowser.playWhenReady.test.ts +301 -0
- package/src/web/NativeAudioBrowser.ts +366 -159
- package/src/web/TrackPlayer/PlaybackStateMachine.test.ts +139 -0
- package/src/web/TrackPlayer/PlaybackStateMachine.ts +82 -0
- package/src/web/TrackPlayer/PlaybackTimer.test.ts +67 -0
- package/src/web/TrackPlayer/PlaybackTimer.ts +33 -0
- package/src/web/TrackPlayer/Player.dispatch.test.ts +229 -0
- package/src/web/TrackPlayer/Player.load.test.ts +86 -0
- package/src/web/TrackPlayer/Player.ts +113 -39
- package/src/web/TrackPlayer/PlayingStateFactory.test.ts +51 -0
- package/src/web/TrackPlayer/PlayingStateFactory.ts +24 -0
- package/src/web/TrackPlayer/QueueManager.test.ts +289 -0
- package/src/web/TrackPlayer/QueueManager.ts +302 -0
- package/src/web/TrackPlayer/QueuePlayer.ts +188 -0
- package/src/web/TrackPlayer/RepeatMode.ts +1 -1
- package/src/web/TrackPlayer/SleepTimer.ts +38 -3
- package/src/web/TrackPlayer/VolumeFader.ts +74 -0
- package/src/web/TrackPlayer/index.ts +2 -1
- package/src/web/browser/BrowserManager.ts +231 -62
- package/src/web/browser/NavigationErrorManager.ts +3 -1
- package/src/web/browser/SearchManager.ts +11 -15
- package/src/web/browser/__tests__/layer-resolver.test.ts +69 -0
- package/src/web/browser/assertBrowsePageShape.test.ts +27 -0
- package/src/web/browser/assertBrowsePageShape.ts +27 -0
- package/src/web/browser/classifyTrackNavigation.test.ts +41 -0
- package/src/web/browser/classifyTrackNavigation.ts +35 -0
- package/src/web/browser/parseSearchResponse.test.ts +25 -0
- package/src/web/browser/parseSearchResponse.ts +15 -0
- package/src/web/http/HttpClient.ts +5 -35
- package/src/web/http/RequestConfigBuilder.test.ts +59 -0
- package/src/web/http/RequestConfigBuilder.ts +120 -63
- package/src/web/playbackErrorKind.test.ts +55 -0
- package/src/web/playbackErrorKind.ts +56 -0
- package/src/web/player/MediaSessionManager.test.ts +220 -0
- package/src/web/player/MediaSessionManager.ts +151 -0
- package/src/web/player/NowPlayingManager.test.ts +46 -0
- package/src/web/player/NowPlayingManager.ts +6 -5
- package/src/web/player/OptionsManager.ts +12 -18
- package/src/web/player/RemoteCommandController.test.ts +171 -0
- package/src/web/player/RemoteCommandController.ts +166 -0
- package/android/src/main/java/com/audiobrowser/player/PlaybackProgressUpdateManager.kt +0 -59
- package/android/src/main/java/com/audiobrowser/util/RatingFactory.kt +0 -72
- package/android/src/main/java/com/audiobrowser/util/ResolvedTrackFactory.kt +0 -36
- package/android/src/test/java/com/audiobrowser/player/PlaybackProgressUpdateManagerTest.kt +0 -146
- package/ios/CarPlay/Track+CarPlay.swift +0 -63
- package/ios/Model/MediaURL.swift +0 -67
- package/ios/NowPlayingInfo/NowPlayingInfoCenter.swift +0 -9
- package/ios/Player/PlaybackProgressUpdateManager.swift +0 -68
- package/ios/Tests/PlaybackProgressUpdateManagerTests.swift +0 -166
- package/lib/commonjs/features/rating.js +0 -2
- package/lib/commonjs/features/rating.js.map +0 -1
- package/lib/commonjs/types/player.js +0 -2
- package/lib/commonjs/types/player.js.map +0 -1
- package/lib/commonjs/web/SimpleRouter.test.js +0 -174
- package/lib/commonjs/web/SimpleRouter.test.js.map +0 -1
- package/lib/commonjs/web/TrackPlayer/PlaylistPlayer.js +0 -293
- package/lib/commonjs/web/TrackPlayer/PlaylistPlayer.js.map +0 -1
- package/lib/module/features/rating.js +0 -2
- package/lib/module/features/rating.js.map +0 -1
- package/lib/module/types/player.js +0 -2
- package/lib/module/types/player.js.map +0 -1
- package/lib/module/web/SimpleRouter.test.js +0 -174
- package/lib/module/web/SimpleRouter.test.js.map +0 -1
- package/lib/module/web/TrackPlayer/PlaylistPlayer.js +0 -288
- package/lib/module/web/TrackPlayer/PlaylistPlayer.js.map +0 -1
- package/lib/typescript/src/features/rating.d.ts +0 -14
- package/lib/typescript/src/features/rating.d.ts.map +0 -1
- package/lib/typescript/src/native.web.d.ts +0 -3
- package/lib/typescript/src/native.web.d.ts.map +0 -1
- package/lib/typescript/src/types/player.d.ts +0 -64
- package/lib/typescript/src/types/player.d.ts.map +0 -1
- package/lib/typescript/src/web/NativeAudioBrowser.d.ts +0 -188
- package/lib/typescript/src/web/NativeAudioBrowser.d.ts.map +0 -1
- package/lib/typescript/src/web/SimpleRouter.d.ts +0 -40
- package/lib/typescript/src/web/SimpleRouter.d.ts.map +0 -1
- package/lib/typescript/src/web/SimpleRouter.test.d.ts +0 -2
- package/lib/typescript/src/web/SimpleRouter.test.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/Event.d.ts +0 -11
- package/lib/typescript/src/web/TrackPlayer/Event.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/Player.d.ts +0 -59
- package/lib/typescript/src/web/TrackPlayer/Player.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/PlaylistPlayer.d.ts +0 -39
- package/lib/typescript/src/web/TrackPlayer/PlaylistPlayer.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/RepeatMode.d.ts +0 -6
- package/lib/typescript/src/web/TrackPlayer/RepeatMode.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/SetupNotCalledError.d.ts +0 -4
- package/lib/typescript/src/web/TrackPlayer/SetupNotCalledError.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/SleepTimer.d.ts +0 -34
- package/lib/typescript/src/web/TrackPlayer/SleepTimer.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/State.d.ts +0 -13
- package/lib/typescript/src/web/TrackPlayer/State.d.ts.map +0 -1
- package/lib/typescript/src/web/TrackPlayer/index.d.ts +0 -5
- package/lib/typescript/src/web/TrackPlayer/index.d.ts.map +0 -1
- package/lib/typescript/src/web/browser/BrowserManager.d.ts +0 -154
- package/lib/typescript/src/web/browser/BrowserManager.d.ts.map +0 -1
- package/lib/typescript/src/web/browser/FavoriteManager.d.ts +0 -42
- package/lib/typescript/src/web/browser/FavoriteManager.d.ts.map +0 -1
- package/lib/typescript/src/web/browser/NavigationErrorManager.d.ts +0 -40
- package/lib/typescript/src/web/browser/NavigationErrorManager.d.ts.map +0 -1
- package/lib/typescript/src/web/browser/SearchManager.d.ts +0 -22
- package/lib/typescript/src/web/browser/SearchManager.d.ts.map +0 -1
- package/lib/typescript/src/web/http/HttpClient.d.ts +0 -25
- package/lib/typescript/src/web/http/HttpClient.d.ts.map +0 -1
- package/lib/typescript/src/web/http/RequestConfigBuilder.d.ts +0 -98
- package/lib/typescript/src/web/http/RequestConfigBuilder.d.ts.map +0 -1
- package/lib/typescript/src/web/player/NowPlayingManager.d.ts +0 -34
- package/lib/typescript/src/web/player/NowPlayingManager.d.ts.map +0 -1
- package/lib/typescript/src/web/player/OptionsManager.d.ts +0 -32
- package/lib/typescript/src/web/player/OptionsManager.d.ts.map +0 -1
- package/lib/typescript/src/web/util/BrowserPathHelper.d.ts +0 -69
- package/lib/typescript/src/web/util/BrowserPathHelper.d.ts.map +0 -1
- package/lib/typescript/src/web/util/shuffle.d.ts +0 -8
- package/lib/typescript/src/web/util/shuffle.d.ts.map +0 -1
- package/nitrogen/generated/android/c++/JAndroidUpdateOptions.hpp +0 -86
- package/nitrogen/generated/android/c++/JFunc_std__shared_ptr_Promise_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError______BrowserSourceCallbackParam.hpp +0 -147
- package/nitrogen/generated/android/c++/JFunc_void_IosOutput.hpp +0 -80
- package/nitrogen/generated/android/c++/JFunc_void_RemoteSetRatingEvent.hpp +0 -87
- package/nitrogen/generated/android/c++/JHeartRating.hpp +0 -57
- package/nitrogen/generated/android/c++/JIosOutputType.hpp +0 -85
- package/nitrogen/generated/android/c++/JNotificationButtonLayout.hpp +0 -94
- package/nitrogen/generated/android/c++/JPartialSetupPlayerOptions.hpp +0 -96
- package/nitrogen/generated/android/c++/JPercentageRating.hpp +0 -57
- package/nitrogen/generated/android/c++/JRatingType.hpp +0 -73
- package/nitrogen/generated/android/c++/JRemoteSetRatingEvent.hpp +0 -66
- package/nitrogen/generated/android/c++/JStarRating.hpp +0 -57
- package/nitrogen/generated/android/c++/JUpdateOptions.hpp +0 -105
- package/nitrogen/generated/android/c++/JVariant_HeartRating_ThumbsRating_StarRating_PercentageRating.cpp +0 -34
- package/nitrogen/generated/android/c++/JVariant_HeartRating_ThumbsRating_StarRating_PercentageRating.hpp +0 -105
- package/nitrogen/generated/android/c++/JVariant_NullType_NotificationButtonLayout.cpp +0 -26
- package/nitrogen/generated/android/c++/JVariant_NullType_NotificationButtonLayout.hpp +0 -75
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/AndroidUpdateOptions.kt +0 -50
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/IosOutputType.kt +0 -32
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NotificationButtonLayout.kt +0 -50
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/PartialSetupPlayerOptions.kt +0 -47
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/UpdateOptions.kt +0 -53
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/Variant_HeartRating_ThumbsRating_StarRating_PercentageRating.kt +0 -77
- package/nitrogen/generated/ios/swift/AndroidUpdateOptions.swift +0 -119
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__variant_ResolvedTrack__BrowseError______BrowserSourceCallbackParam.swift +0 -68
- package/nitrogen/generated/ios/swift/HeartRating.swift +0 -29
- package/nitrogen/generated/ios/swift/IosOutputType.swift +0 -76
- package/nitrogen/generated/ios/swift/NotificationButtonLayout.swift +0 -92
- package/nitrogen/generated/ios/swift/PartialSetupPlayerOptions.swift +0 -101
- package/nitrogen/generated/ios/swift/PercentageRating.swift +0 -29
- package/nitrogen/generated/ios/swift/RatingType.swift +0 -60
- package/nitrogen/generated/ios/swift/RemoteSetRatingEvent.swift +0 -58
- package/nitrogen/generated/ios/swift/StarRating.swift +0 -29
- package/nitrogen/generated/ios/swift/ThumbsRating.swift +0 -29
- package/nitrogen/generated/ios/swift/UpdateOptions.swift +0 -143
- package/nitrogen/generated/ios/swift/Variant_HeartRating_ThumbsRating_StarRating_PercentageRating.swift +0 -20
- package/nitrogen/generated/shared/c++/AndroidUpdateOptions.hpp +0 -109
- package/nitrogen/generated/shared/c++/IosOutputType.hpp +0 -112
- package/nitrogen/generated/shared/c++/NotificationButtonLayout.hpp +0 -102
- package/nitrogen/generated/shared/c++/PartialSetupPlayerOptions.hpp +0 -104
- package/nitrogen/generated/shared/c++/RatingType.hpp +0 -96
- package/nitrogen/generated/shared/c++/RemoteSetRatingEvent.hpp +0 -94
- package/nitrogen/generated/shared/c++/UpdateOptions.hpp +0 -111
- package/src/features/rating.ts +0 -17
- package/src/types/player.ts +0 -69
- package/src/web/TrackPlayer/PlaylistPlayer.ts +0 -346
|
@@ -14,10 +14,14 @@ namespace AudioBrowser { class HybridAudioBrowserSpec_cxx; }
|
|
|
14
14
|
|
|
15
15
|
// Forward declaration of `Track` to properly resolve imports.
|
|
16
16
|
namespace margelo::nitro::audiobrowser { struct Track; }
|
|
17
|
+
// Forward declaration of `ArtworkVariants` to properly resolve imports.
|
|
18
|
+
namespace margelo::nitro::audiobrowser { struct ArtworkVariants; }
|
|
17
19
|
// Forward declaration of `ImageSource` to properly resolve imports.
|
|
18
20
|
namespace margelo::nitro::audiobrowser { struct ImageSource; }
|
|
19
21
|
// Forward declaration of `HttpMethod` to properly resolve imports.
|
|
20
22
|
namespace margelo::nitro::audiobrowser { enum class HttpMethod; }
|
|
23
|
+
// Forward declaration of `TrackRequest` to properly resolve imports.
|
|
24
|
+
namespace margelo::nitro::audiobrowser { struct TrackRequest; }
|
|
21
25
|
// Forward declaration of `TrackStyle` to properly resolve imports.
|
|
22
26
|
namespace margelo::nitro::audiobrowser { enum class TrackStyle; }
|
|
23
27
|
// Forward declaration of `ImageRowItem` to properly resolve imports.
|
|
@@ -60,12 +64,22 @@ namespace margelo::nitro::audiobrowser { struct BrowserSourceCallbackParam; }
|
|
|
60
64
|
namespace margelo::nitro::audiobrowser { struct SearchParams; }
|
|
61
65
|
// Forward declaration of `SearchMode` to properly resolve imports.
|
|
62
66
|
namespace margelo::nitro::audiobrowser { enum class SearchMode; }
|
|
67
|
+
// Forward declaration of `MediaReference` to properly resolve imports.
|
|
68
|
+
namespace margelo::nitro::audiobrowser { enum class MediaReference; }
|
|
63
69
|
// Forward declaration of `TrackLoadEvent` to properly resolve imports.
|
|
64
70
|
namespace margelo::nitro::audiobrowser { struct TrackLoadEvent; }
|
|
65
|
-
// Forward declaration of `CarPlayNowPlayingButton` to properly resolve imports.
|
|
66
|
-
namespace margelo::nitro::audiobrowser { enum class CarPlayNowPlayingButton; }
|
|
67
71
|
// Forward declaration of `FormatNavigationErrorParams` to properly resolve imports.
|
|
68
72
|
namespace margelo::nitro::audiobrowser { struct FormatNavigationErrorParams; }
|
|
73
|
+
// Forward declaration of `GateDecision` to properly resolve imports.
|
|
74
|
+
namespace margelo::nitro::audiobrowser { struct GateDecision; }
|
|
75
|
+
// Forward declaration of `NativeGateRequest` to properly resolve imports.
|
|
76
|
+
namespace margelo::nitro::audiobrowser { struct NativeGateRequest; }
|
|
77
|
+
// Forward declaration of `Gate` to properly resolve imports.
|
|
78
|
+
namespace margelo::nitro::audiobrowser { struct Gate; }
|
|
79
|
+
// Forward declaration of `GateReason` to properly resolve imports.
|
|
80
|
+
namespace margelo::nitro::audiobrowser { enum class GateReason; }
|
|
81
|
+
// Forward declaration of `GateEvent` to properly resolve imports.
|
|
82
|
+
namespace margelo::nitro::audiobrowser { struct GateEvent; }
|
|
69
83
|
// Forward declaration of `ChapterMetadata` to properly resolve imports.
|
|
70
84
|
namespace margelo::nitro::audiobrowser { struct ChapterMetadata; }
|
|
71
85
|
// Forward declaration of `TrackMetadata` to properly resolve imports.
|
|
@@ -78,6 +92,8 @@ namespace margelo::nitro::audiobrowser { struct PlaybackActiveTrackChangedEvent;
|
|
|
78
92
|
namespace margelo::nitro::audiobrowser { struct PlaybackErrorEvent; }
|
|
79
93
|
// Forward declaration of `PlaybackError` to properly resolve imports.
|
|
80
94
|
namespace margelo::nitro::audiobrowser { struct PlaybackError; }
|
|
95
|
+
// Forward declaration of `PlaybackErrorKind` to properly resolve imports.
|
|
96
|
+
namespace margelo::nitro::audiobrowser { enum class PlaybackErrorKind; }
|
|
81
97
|
// Forward declaration of `PlaybackPlayWhenReadyChangedEvent` to properly resolve imports.
|
|
82
98
|
namespace margelo::nitro::audiobrowser { struct PlaybackPlayWhenReadyChangedEvent; }
|
|
83
99
|
// Forward declaration of `PlayingState` to properly resolve imports.
|
|
@@ -108,16 +124,6 @@ namespace margelo::nitro::audiobrowser { struct RemotePlayIdEvent; }
|
|
|
108
124
|
namespace margelo::nitro::audiobrowser { struct RemotePlaySearchEvent; }
|
|
109
125
|
// Forward declaration of `RemoteSeekEvent` to properly resolve imports.
|
|
110
126
|
namespace margelo::nitro::audiobrowser { struct RemoteSeekEvent; }
|
|
111
|
-
// Forward declaration of `RemoteSetRatingEvent` to properly resolve imports.
|
|
112
|
-
namespace margelo::nitro::audiobrowser { struct RemoteSetRatingEvent; }
|
|
113
|
-
// Forward declaration of `HeartRating` to properly resolve imports.
|
|
114
|
-
namespace margelo::nitro::audiobrowser { struct HeartRating; }
|
|
115
|
-
// Forward declaration of `ThumbsRating` to properly resolve imports.
|
|
116
|
-
namespace margelo::nitro::audiobrowser { struct ThumbsRating; }
|
|
117
|
-
// Forward declaration of `StarRating` to properly resolve imports.
|
|
118
|
-
namespace margelo::nitro::audiobrowser { struct StarRating; }
|
|
119
|
-
// Forward declaration of `PercentageRating` to properly resolve imports.
|
|
120
|
-
namespace margelo::nitro::audiobrowser { struct PercentageRating; }
|
|
121
127
|
// Forward declaration of `RemoteSkipEvent` to properly resolve imports.
|
|
122
128
|
namespace margelo::nitro::audiobrowser { struct RemoteSkipEvent; }
|
|
123
129
|
// Forward declaration of `Options` to properly resolve imports.
|
|
@@ -126,22 +132,28 @@ namespace margelo::nitro::audiobrowser { struct Options; }
|
|
|
126
132
|
namespace margelo::nitro::audiobrowser { struct AndroidOptions; }
|
|
127
133
|
// Forward declaration of `AppKilledPlaybackBehavior` to properly resolve imports.
|
|
128
134
|
namespace margelo::nitro::audiobrowser { enum class AppKilledPlaybackBehavior; }
|
|
129
|
-
// Forward declaration of `
|
|
130
|
-
namespace margelo::nitro::audiobrowser {
|
|
131
|
-
// Forward declaration of `
|
|
132
|
-
namespace margelo::nitro::audiobrowser {
|
|
133
|
-
// Forward declaration of `NotificationButton` to properly resolve imports.
|
|
134
|
-
namespace margelo::nitro::audiobrowser { enum class NotificationButton; }
|
|
135
|
+
// Forward declaration of `RemoteButtonLayout` to properly resolve imports.
|
|
136
|
+
namespace margelo::nitro::audiobrowser { struct RemoteButtonLayout; }
|
|
137
|
+
// Forward declaration of `RemoteButton` to properly resolve imports.
|
|
138
|
+
namespace margelo::nitro::audiobrowser { enum class RemoteButton; }
|
|
135
139
|
// Forward declaration of `PlayerCapabilities` to properly resolve imports.
|
|
136
140
|
namespace margelo::nitro::audiobrowser { struct PlayerCapabilities; }
|
|
141
|
+
// Forward declaration of `FavoriteConfig` to properly resolve imports.
|
|
142
|
+
namespace margelo::nitro::audiobrowser { struct FavoriteConfig; }
|
|
143
|
+
// Forward declaration of `FavoritesMatchMode` to properly resolve imports.
|
|
144
|
+
namespace margelo::nitro::audiobrowser { enum class FavoritesMatchMode; }
|
|
145
|
+
// Forward declaration of `IOSOptions` to properly resolve imports.
|
|
146
|
+
namespace margelo::nitro::audiobrowser { struct IOSOptions; }
|
|
147
|
+
// Forward declaration of `CarPlayNowPlayingButton` to properly resolve imports.
|
|
148
|
+
namespace margelo::nitro::audiobrowser { enum class CarPlayNowPlayingButton; }
|
|
137
149
|
// Forward declaration of `FavoriteChangedEvent` to properly resolve imports.
|
|
138
150
|
namespace margelo::nitro::audiobrowser { struct FavoriteChangedEvent; }
|
|
139
151
|
// Forward declaration of `NowPlayingMetadata` to properly resolve imports.
|
|
140
152
|
namespace margelo::nitro::audiobrowser { struct NowPlayingMetadata; }
|
|
141
|
-
// Forward declaration of `
|
|
142
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
143
|
-
// Forward declaration of `
|
|
144
|
-
namespace margelo::nitro::audiobrowser { enum class
|
|
153
|
+
// Forward declaration of `Output` to properly resolve imports.
|
|
154
|
+
namespace margelo::nitro::audiobrowser { struct Output; }
|
|
155
|
+
// Forward declaration of `OutputType` to properly resolve imports.
|
|
156
|
+
namespace margelo::nitro::audiobrowser { enum class OutputType; }
|
|
145
157
|
// Forward declaration of `EqualizerSettings` to properly resolve imports.
|
|
146
158
|
namespace margelo::nitro::audiobrowser { struct EqualizerSettings; }
|
|
147
159
|
// Forward declaration of `BatteryWarningPendingChangedEvent` to properly resolve imports.
|
|
@@ -150,18 +162,18 @@ namespace margelo::nitro::audiobrowser { struct BatteryWarningPendingChangedEven
|
|
|
150
162
|
namespace margelo::nitro::audiobrowser { struct BatteryOptimizationStatusChangedEvent; }
|
|
151
163
|
// Forward declaration of `BatteryOptimizationStatus` to properly resolve imports.
|
|
152
164
|
namespace margelo::nitro::audiobrowser { enum class BatteryOptimizationStatus; }
|
|
153
|
-
// Forward declaration of `
|
|
154
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
155
|
-
// Forward declaration of `
|
|
156
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
165
|
+
// Forward declaration of `NativeSetupPlayerOptions` to properly resolve imports.
|
|
166
|
+
namespace margelo::nitro::audiobrowser { struct NativeSetupPlayerOptions; }
|
|
167
|
+
// Forward declaration of `NativeAndroidSetupOptions` to properly resolve imports.
|
|
168
|
+
namespace margelo::nitro::audiobrowser { struct NativeAndroidSetupOptions; }
|
|
157
169
|
// Forward declaration of `AndroidAudioOffloadSettings` to properly resolve imports.
|
|
158
170
|
namespace margelo::nitro::audiobrowser { struct AndroidAudioOffloadSettings; }
|
|
159
171
|
// Forward declaration of `AndroidAudioContentType` to properly resolve imports.
|
|
160
172
|
namespace margelo::nitro::audiobrowser { enum class AndroidAudioContentType; }
|
|
161
173
|
// Forward declaration of `AndroidPlayerWakeMode` to properly resolve imports.
|
|
162
174
|
namespace margelo::nitro::audiobrowser { enum class AndroidPlayerWakeMode; }
|
|
163
|
-
// Forward declaration of `
|
|
164
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
175
|
+
// Forward declaration of `NativeIOSSetupOptions` to properly resolve imports.
|
|
176
|
+
namespace margelo::nitro::audiobrowser { struct NativeIOSSetupOptions; }
|
|
165
177
|
// Forward declaration of `IOSCategory` to properly resolve imports.
|
|
166
178
|
namespace margelo::nitro::audiobrowser { enum class IOSCategory; }
|
|
167
179
|
// Forward declaration of `IOSCategoryMode` to properly resolve imports.
|
|
@@ -170,28 +182,33 @@ namespace margelo::nitro::audiobrowser { enum class IOSCategoryMode; }
|
|
|
170
182
|
namespace margelo::nitro::audiobrowser { enum class IOSCategoryOptions; }
|
|
171
183
|
// Forward declaration of `IOSCategoryPolicy` to properly resolve imports.
|
|
172
184
|
namespace margelo::nitro::audiobrowser { enum class IOSCategoryPolicy; }
|
|
173
|
-
// Forward declaration of `RetryConfig` to properly resolve imports.
|
|
174
|
-
namespace margelo::nitro::audiobrowser { struct RetryConfig; }
|
|
175
185
|
// Forward declaration of `NativeUpdateOptions` to properly resolve imports.
|
|
176
186
|
namespace margelo::nitro::audiobrowser { struct NativeUpdateOptions; }
|
|
177
187
|
// Forward declaration of `NitroAndroidUpdateOptions` to properly resolve imports.
|
|
178
188
|
namespace margelo::nitro::audiobrowser { struct NitroAndroidUpdateOptions; }
|
|
179
|
-
// Forward declaration of `
|
|
180
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
181
|
-
// Forward declaration of `AndroidUpdateOptions` to properly resolve imports.
|
|
182
|
-
namespace margelo::nitro::audiobrowser { struct AndroidUpdateOptions; }
|
|
183
|
-
// Forward declaration of `Progress` to properly resolve imports.
|
|
184
|
-
namespace margelo::nitro::audiobrowser { struct Progress; }
|
|
189
|
+
// Forward declaration of `NitroIOSUpdateOptions` to properly resolve imports.
|
|
190
|
+
namespace margelo::nitro::audiobrowser { struct NitroIOSUpdateOptions; }
|
|
185
191
|
// Forward declaration of `NowPlayingUpdate` to properly resolve imports.
|
|
186
192
|
namespace margelo::nitro::audiobrowser { struct NowPlayingUpdate; }
|
|
193
|
+
// Forward declaration of `FormatNowPlayingParams` to properly resolve imports.
|
|
194
|
+
namespace margelo::nitro::audiobrowser { struct FormatNowPlayingParams; }
|
|
195
|
+
// Forward declaration of `StallReason` to properly resolve imports.
|
|
196
|
+
namespace margelo::nitro::audiobrowser { enum class StallReason; }
|
|
197
|
+
// Forward declaration of `RetryConfig` to properly resolve imports.
|
|
198
|
+
namespace margelo::nitro::audiobrowser { struct RetryConfig; }
|
|
199
|
+
// Forward declaration of `Progress` to properly resolve imports.
|
|
200
|
+
namespace margelo::nitro::audiobrowser { struct Progress; }
|
|
187
201
|
|
|
188
202
|
#include <string>
|
|
189
203
|
#include <optional>
|
|
190
204
|
#include "Track.hpp"
|
|
191
205
|
#include <vector>
|
|
206
|
+
#include "ArtworkVariants.hpp"
|
|
207
|
+
#include <variant>
|
|
192
208
|
#include "ImageSource.hpp"
|
|
193
209
|
#include "HttpMethod.hpp"
|
|
194
210
|
#include <unordered_map>
|
|
211
|
+
#include "TrackRequest.hpp"
|
|
195
212
|
#include "TrackStyle.hpp"
|
|
196
213
|
#include "ImageRowItem.hpp"
|
|
197
214
|
#include <functional>
|
|
@@ -212,19 +229,24 @@ namespace margelo::nitro::audiobrowser { struct NowPlayingUpdate; }
|
|
|
212
229
|
#include "ImageQueryParams.hpp"
|
|
213
230
|
#include "NativeRouteEntry.hpp"
|
|
214
231
|
#include "BrowseError.hpp"
|
|
215
|
-
#include <variant>
|
|
216
232
|
#include "BrowserSourceCallbackParam.hpp"
|
|
217
233
|
#include "SearchParams.hpp"
|
|
218
234
|
#include "SearchMode.hpp"
|
|
235
|
+
#include "MediaReference.hpp"
|
|
219
236
|
#include "TrackLoadEvent.hpp"
|
|
220
|
-
#include "CarPlayNowPlayingButton.hpp"
|
|
221
237
|
#include "FormatNavigationErrorParams.hpp"
|
|
238
|
+
#include "GateDecision.hpp"
|
|
239
|
+
#include "NativeGateRequest.hpp"
|
|
240
|
+
#include "Gate.hpp"
|
|
241
|
+
#include "GateReason.hpp"
|
|
242
|
+
#include "GateEvent.hpp"
|
|
222
243
|
#include "ChapterMetadata.hpp"
|
|
223
244
|
#include "TrackMetadata.hpp"
|
|
224
245
|
#include "TimedMetadata.hpp"
|
|
225
246
|
#include "PlaybackActiveTrackChangedEvent.hpp"
|
|
226
247
|
#include "PlaybackErrorEvent.hpp"
|
|
227
248
|
#include "PlaybackError.hpp"
|
|
249
|
+
#include "PlaybackErrorKind.hpp"
|
|
228
250
|
#include "PlaybackPlayWhenReadyChangedEvent.hpp"
|
|
229
251
|
#include "PlayingState.hpp"
|
|
230
252
|
#include "PlaybackProgressUpdatedEvent.hpp"
|
|
@@ -241,44 +263,43 @@ namespace margelo::nitro::audiobrowser { struct NowPlayingUpdate; }
|
|
|
241
263
|
#include "RemotePlayIdEvent.hpp"
|
|
242
264
|
#include "RemotePlaySearchEvent.hpp"
|
|
243
265
|
#include "RemoteSeekEvent.hpp"
|
|
244
|
-
#include "RemoteSetRatingEvent.hpp"
|
|
245
|
-
#include "HeartRating.hpp"
|
|
246
|
-
#include "ThumbsRating.hpp"
|
|
247
|
-
#include "StarRating.hpp"
|
|
248
|
-
#include "PercentageRating.hpp"
|
|
249
266
|
#include "RemoteSkipEvent.hpp"
|
|
250
267
|
#include "Options.hpp"
|
|
251
268
|
#include "AndroidOptions.hpp"
|
|
252
269
|
#include "AppKilledPlaybackBehavior.hpp"
|
|
253
|
-
#include "
|
|
254
|
-
#include "
|
|
255
|
-
#include "NotificationButton.hpp"
|
|
270
|
+
#include "RemoteButtonLayout.hpp"
|
|
271
|
+
#include "RemoteButton.hpp"
|
|
256
272
|
#include "PlayerCapabilities.hpp"
|
|
273
|
+
#include "FavoriteConfig.hpp"
|
|
274
|
+
#include "FavoritesMatchMode.hpp"
|
|
275
|
+
#include "IOSOptions.hpp"
|
|
276
|
+
#include "CarPlayNowPlayingButton.hpp"
|
|
257
277
|
#include "FavoriteChangedEvent.hpp"
|
|
258
278
|
#include "NowPlayingMetadata.hpp"
|
|
259
|
-
#include "
|
|
260
|
-
#include "
|
|
279
|
+
#include "Output.hpp"
|
|
280
|
+
#include "OutputType.hpp"
|
|
261
281
|
#include "EqualizerSettings.hpp"
|
|
262
282
|
#include "BatteryWarningPendingChangedEvent.hpp"
|
|
263
283
|
#include "BatteryOptimizationStatusChangedEvent.hpp"
|
|
264
284
|
#include "BatteryOptimizationStatus.hpp"
|
|
265
|
-
#include "
|
|
266
|
-
#include "
|
|
285
|
+
#include "NativeSetupPlayerOptions.hpp"
|
|
286
|
+
#include "NativeAndroidSetupOptions.hpp"
|
|
267
287
|
#include "AndroidAudioOffloadSettings.hpp"
|
|
268
288
|
#include "AndroidAudioContentType.hpp"
|
|
269
289
|
#include "AndroidPlayerWakeMode.hpp"
|
|
270
|
-
#include "
|
|
290
|
+
#include "NativeIOSSetupOptions.hpp"
|
|
271
291
|
#include "IOSCategory.hpp"
|
|
272
292
|
#include "IOSCategoryMode.hpp"
|
|
273
293
|
#include "IOSCategoryOptions.hpp"
|
|
274
294
|
#include "IOSCategoryPolicy.hpp"
|
|
275
|
-
#include "RetryConfig.hpp"
|
|
276
295
|
#include "NativeUpdateOptions.hpp"
|
|
277
296
|
#include "NitroAndroidUpdateOptions.hpp"
|
|
278
|
-
#include "
|
|
279
|
-
#include "AndroidUpdateOptions.hpp"
|
|
280
|
-
#include "Progress.hpp"
|
|
297
|
+
#include "NitroIOSUpdateOptions.hpp"
|
|
281
298
|
#include "NowPlayingUpdate.hpp"
|
|
299
|
+
#include "FormatNowPlayingParams.hpp"
|
|
300
|
+
#include "StallReason.hpp"
|
|
301
|
+
#include "RetryConfig.hpp"
|
|
302
|
+
#include "Progress.hpp"
|
|
282
303
|
|
|
283
304
|
#include "AudioBrowser-Swift-Cxx-Umbrella.hpp"
|
|
284
305
|
|
|
@@ -381,6 +402,27 @@ namespace margelo::nitro::audiobrowser {
|
|
|
381
402
|
inline void setConfiguration(const NativeBrowserConfiguration& configuration) noexcept override {
|
|
382
403
|
_swiftPart.setConfiguration(std::forward<decltype(configuration)>(configuration));
|
|
383
404
|
}
|
|
405
|
+
inline std::function<std::shared_ptr<Promise<std::shared_ptr<Promise<GateDecision>>>>(const NativeGateRequest& /* request */)> getResolveGate() noexcept override {
|
|
406
|
+
auto __result = _swiftPart.getResolveGate();
|
|
407
|
+
return __result;
|
|
408
|
+
}
|
|
409
|
+
inline void setResolveGate(const std::function<std::shared_ptr<Promise<std::shared_ptr<Promise<GateDecision>>>>(const NativeGateRequest& /* request */)>& resolveGate) noexcept override {
|
|
410
|
+
_swiftPart.setResolveGate(resolveGate);
|
|
411
|
+
}
|
|
412
|
+
inline std::function<void(const GateEvent& /* event */)> getOnGate() noexcept override {
|
|
413
|
+
auto __result = _swiftPart.getOnGate();
|
|
414
|
+
return __result;
|
|
415
|
+
}
|
|
416
|
+
inline void setOnGate(const std::function<void(const GateEvent& /* event */)>& onGate) noexcept override {
|
|
417
|
+
_swiftPart.setOnGate(onGate);
|
|
418
|
+
}
|
|
419
|
+
inline std::function<void(bool /* connected */)> getOnCarConnectedChanged() noexcept override {
|
|
420
|
+
auto __result = _swiftPart.getOnCarConnectedChanged();
|
|
421
|
+
return __result;
|
|
422
|
+
}
|
|
423
|
+
inline void setOnCarConnectedChanged(const std::function<void(bool /* connected */)>& onCarConnectedChanged) noexcept override {
|
|
424
|
+
_swiftPart.setOnCarConnectedChanged(onCarConnectedChanged);
|
|
425
|
+
}
|
|
384
426
|
inline std::function<void(const std::vector<ChapterMetadata>& /* chapters */)> getOnChapterMetadata() noexcept override {
|
|
385
427
|
auto __result = _swiftPart.getOnChapterMetadata();
|
|
386
428
|
return __result;
|
|
@@ -437,6 +479,13 @@ namespace margelo::nitro::audiobrowser {
|
|
|
437
479
|
inline void setOnPlaybackProgressUpdated(const std::function<void(const PlaybackProgressUpdatedEvent& /* data */)>& onPlaybackProgressUpdated) noexcept override {
|
|
438
480
|
_swiftPart.setOnPlaybackProgressUpdated(onPlaybackProgressUpdated);
|
|
439
481
|
}
|
|
482
|
+
inline std::function<void()> getOnPlaybackInterval() noexcept override {
|
|
483
|
+
auto __result = _swiftPart.getOnPlaybackInterval();
|
|
484
|
+
return __result;
|
|
485
|
+
}
|
|
486
|
+
inline void setOnPlaybackInterval(const std::function<void()>& onPlaybackInterval) noexcept override {
|
|
487
|
+
_swiftPart.setOnPlaybackInterval(onPlaybackInterval);
|
|
488
|
+
}
|
|
440
489
|
inline std::function<void(const PlaybackQueueEndedEvent& /* data */)> getOnPlaybackQueueEnded() noexcept override {
|
|
441
490
|
auto __result = _swiftPart.getOnPlaybackQueueEnded();
|
|
442
491
|
return __result;
|
|
@@ -479,20 +528,6 @@ namespace margelo::nitro::audiobrowser {
|
|
|
479
528
|
inline void setOnPlaybackChanged(const std::function<void(const Playback& /* data */)>& onPlaybackChanged) noexcept override {
|
|
480
529
|
_swiftPart.setOnPlaybackChanged(onPlaybackChanged);
|
|
481
530
|
}
|
|
482
|
-
inline std::function<void()> getOnRemoteBookmark() noexcept override {
|
|
483
|
-
auto __result = _swiftPart.getOnRemoteBookmark();
|
|
484
|
-
return __result;
|
|
485
|
-
}
|
|
486
|
-
inline void setOnRemoteBookmark(const std::function<void()>& onRemoteBookmark) noexcept override {
|
|
487
|
-
_swiftPart.setOnRemoteBookmark(onRemoteBookmark);
|
|
488
|
-
}
|
|
489
|
-
inline std::function<void()> getOnRemoteDislike() noexcept override {
|
|
490
|
-
auto __result = _swiftPart.getOnRemoteDislike();
|
|
491
|
-
return __result;
|
|
492
|
-
}
|
|
493
|
-
inline void setOnRemoteDislike(const std::function<void()>& onRemoteDislike) noexcept override {
|
|
494
|
-
_swiftPart.setOnRemoteDislike(onRemoteDislike);
|
|
495
|
-
}
|
|
496
531
|
inline std::function<void(const RemoteJumpBackwardEvent& /* event */)> getOnRemoteJumpBackward() noexcept override {
|
|
497
532
|
auto __result = _swiftPart.getOnRemoteJumpBackward();
|
|
498
533
|
return __result;
|
|
@@ -507,13 +542,6 @@ namespace margelo::nitro::audiobrowser {
|
|
|
507
542
|
inline void setOnRemoteJumpForward(const std::function<void(const RemoteJumpForwardEvent& /* event */)>& onRemoteJumpForward) noexcept override {
|
|
508
543
|
_swiftPart.setOnRemoteJumpForward(onRemoteJumpForward);
|
|
509
544
|
}
|
|
510
|
-
inline std::function<void()> getOnRemoteLike() noexcept override {
|
|
511
|
-
auto __result = _swiftPart.getOnRemoteLike();
|
|
512
|
-
return __result;
|
|
513
|
-
}
|
|
514
|
-
inline void setOnRemoteLike(const std::function<void()>& onRemoteLike) noexcept override {
|
|
515
|
-
_swiftPart.setOnRemoteLike(onRemoteLike);
|
|
516
|
-
}
|
|
517
545
|
inline std::function<void()> getOnRemoteNext() noexcept override {
|
|
518
546
|
auto __result = _swiftPart.getOnRemoteNext();
|
|
519
547
|
return __result;
|
|
@@ -563,13 +591,6 @@ namespace margelo::nitro::audiobrowser {
|
|
|
563
591
|
inline void setOnRemoteSeek(const std::function<void(const RemoteSeekEvent& /* event */)>& onRemoteSeek) noexcept override {
|
|
564
592
|
_swiftPart.setOnRemoteSeek(onRemoteSeek);
|
|
565
593
|
}
|
|
566
|
-
inline std::function<void(const RemoteSetRatingEvent& /* event */)> getOnRemoteSetRating() noexcept override {
|
|
567
|
-
auto __result = _swiftPart.getOnRemoteSetRating();
|
|
568
|
-
return __result;
|
|
569
|
-
}
|
|
570
|
-
inline void setOnRemoteSetRating(const std::function<void(const RemoteSetRatingEvent& /* event */)>& onRemoteSetRating) noexcept override {
|
|
571
|
-
_swiftPart.setOnRemoteSetRating(onRemoteSetRating);
|
|
572
|
-
}
|
|
573
594
|
inline std::function<void(const RemoteSkipEvent& /* event */)> getOnRemoteSkip() noexcept override {
|
|
574
595
|
auto __result = _swiftPart.getOnRemoteSkip();
|
|
575
596
|
return __result;
|
|
@@ -605,20 +626,6 @@ namespace margelo::nitro::audiobrowser {
|
|
|
605
626
|
inline void setOnNowPlayingChanged(const std::function<void(const NowPlayingMetadata& /* metadata */)>& onNowPlayingChanged) noexcept override {
|
|
606
627
|
_swiftPart.setOnNowPlayingChanged(onNowPlayingChanged);
|
|
607
628
|
}
|
|
608
|
-
inline std::optional<std::function<void()>> getHandleRemoteBookmark() noexcept override {
|
|
609
|
-
auto __result = _swiftPart.getHandleRemoteBookmark();
|
|
610
|
-
return __result;
|
|
611
|
-
}
|
|
612
|
-
inline void setHandleRemoteBookmark(const std::optional<std::function<void()>>& handleRemoteBookmark) noexcept override {
|
|
613
|
-
_swiftPart.setHandleRemoteBookmark(handleRemoteBookmark);
|
|
614
|
-
}
|
|
615
|
-
inline std::optional<std::function<void()>> getHandleRemoteDislike() noexcept override {
|
|
616
|
-
auto __result = _swiftPart.getHandleRemoteDislike();
|
|
617
|
-
return __result;
|
|
618
|
-
}
|
|
619
|
-
inline void setHandleRemoteDislike(const std::optional<std::function<void()>>& handleRemoteDislike) noexcept override {
|
|
620
|
-
_swiftPart.setHandleRemoteDislike(handleRemoteDislike);
|
|
621
|
-
}
|
|
622
629
|
inline std::optional<std::function<void(const RemoteJumpBackwardEvent& /* event */)>> getHandleRemoteJumpBackward() noexcept override {
|
|
623
630
|
auto __result = _swiftPart.getHandleRemoteJumpBackward();
|
|
624
631
|
return __result;
|
|
@@ -633,13 +640,6 @@ namespace margelo::nitro::audiobrowser {
|
|
|
633
640
|
inline void setHandleRemoteJumpForward(const std::optional<std::function<void(const RemoteJumpForwardEvent& /* event */)>>& handleRemoteJumpForward) noexcept override {
|
|
634
641
|
_swiftPart.setHandleRemoteJumpForward(handleRemoteJumpForward);
|
|
635
642
|
}
|
|
636
|
-
inline std::optional<std::function<void()>> getHandleRemoteLike() noexcept override {
|
|
637
|
-
auto __result = _swiftPart.getHandleRemoteLike();
|
|
638
|
-
return __result;
|
|
639
|
-
}
|
|
640
|
-
inline void setHandleRemoteLike(const std::optional<std::function<void()>>& handleRemoteLike) noexcept override {
|
|
641
|
-
_swiftPart.setHandleRemoteLike(handleRemoteLike);
|
|
642
|
-
}
|
|
643
643
|
inline std::optional<std::function<void()>> getHandleRemoteNext() noexcept override {
|
|
644
644
|
auto __result = _swiftPart.getHandleRemoteNext();
|
|
645
645
|
return __result;
|
|
@@ -717,12 +717,12 @@ namespace margelo::nitro::audiobrowser {
|
|
|
717
717
|
inline void setOnSystemVolumeChanged(const std::function<void(double /* volume */)>& onSystemVolumeChanged) noexcept override {
|
|
718
718
|
_swiftPart.setOnSystemVolumeChanged(onSystemVolumeChanged);
|
|
719
719
|
}
|
|
720
|
-
inline std::function<void(const
|
|
721
|
-
auto __result = _swiftPart.
|
|
720
|
+
inline std::function<void(const Output& /* output */)> getOnOutputChanged() noexcept override {
|
|
721
|
+
auto __result = _swiftPart.getOnOutputChanged();
|
|
722
722
|
return __result;
|
|
723
723
|
}
|
|
724
|
-
inline void
|
|
725
|
-
_swiftPart.
|
|
724
|
+
inline void setOnOutputChanged(const std::function<void(const Output& /* output */)>& onOutputChanged) noexcept override {
|
|
725
|
+
_swiftPart.setOnOutputChanged(onOutputChanged);
|
|
726
726
|
}
|
|
727
727
|
inline std::function<void(const EqualizerSettings& /* settings */)> getOnEqualizerChanged() noexcept override {
|
|
728
728
|
auto __result = _swiftPart.getOnEqualizerChanged();
|
|
@@ -760,8 +760,8 @@ namespace margelo::nitro::audiobrowser {
|
|
|
760
760
|
std::rethrow_exception(__result.error());
|
|
761
761
|
}
|
|
762
762
|
}
|
|
763
|
-
inline std::shared_ptr<Promise<std::vector<Track>>>
|
|
764
|
-
auto __result = _swiftPart.
|
|
763
|
+
inline std::shared_ptr<Promise<std::vector<Track>>> search(const std::string& query) override {
|
|
764
|
+
auto __result = _swiftPart.search(query);
|
|
765
765
|
if (__result.hasError()) [[unlikely]] {
|
|
766
766
|
std::rethrow_exception(__result.error());
|
|
767
767
|
}
|
|
@@ -798,13 +798,39 @@ namespace margelo::nitro::audiobrowser {
|
|
|
798
798
|
std::rethrow_exception(__result.error());
|
|
799
799
|
}
|
|
800
800
|
}
|
|
801
|
+
inline void invalidateAllContent() override {
|
|
802
|
+
auto __result = _swiftPart.invalidateAllContent();
|
|
803
|
+
if (__result.hasError()) [[unlikely]] {
|
|
804
|
+
std::rethrow_exception(__result.error());
|
|
805
|
+
}
|
|
806
|
+
}
|
|
801
807
|
inline void setFavorites(const std::vector<std::string>& favorites) override {
|
|
802
808
|
auto __result = _swiftPart.setFavorites(favorites);
|
|
803
809
|
if (__result.hasError()) [[unlikely]] {
|
|
804
810
|
std::rethrow_exception(__result.error());
|
|
805
811
|
}
|
|
806
812
|
}
|
|
807
|
-
inline
|
|
813
|
+
inline void setGate(const std::optional<Gate>& gate, bool hasResolver) override {
|
|
814
|
+
auto __result = _swiftPart.setGate(gate, std::forward<decltype(hasResolver)>(hasResolver));
|
|
815
|
+
if (__result.hasError()) [[unlikely]] {
|
|
816
|
+
std::rethrow_exception(__result.error());
|
|
817
|
+
}
|
|
818
|
+
}
|
|
819
|
+
inline void clearGate() override {
|
|
820
|
+
auto __result = _swiftPart.clearGate();
|
|
821
|
+
if (__result.hasError()) [[unlikely]] {
|
|
822
|
+
std::rethrow_exception(__result.error());
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
inline bool isCarConnected() override {
|
|
826
|
+
auto __result = _swiftPart.isCarConnected();
|
|
827
|
+
if (__result.hasError()) [[unlikely]] {
|
|
828
|
+
std::rethrow_exception(__result.error());
|
|
829
|
+
}
|
|
830
|
+
auto __value = std::move(__result.value());
|
|
831
|
+
return __value;
|
|
832
|
+
}
|
|
833
|
+
inline std::shared_ptr<Promise<void>> setupPlayer(const NativeSetupPlayerOptions& options) override {
|
|
808
834
|
auto __result = _swiftPart.setupPlayer(std::forward<decltype(options)>(options));
|
|
809
835
|
if (__result.hasError()) [[unlikely]] {
|
|
810
836
|
std::rethrow_exception(__result.error());
|
|
@@ -818,7 +844,7 @@ namespace margelo::nitro::audiobrowser {
|
|
|
818
844
|
std::rethrow_exception(__result.error());
|
|
819
845
|
}
|
|
820
846
|
}
|
|
821
|
-
inline
|
|
847
|
+
inline Options getOptions() override {
|
|
822
848
|
auto __result = _swiftPart.getOptions();
|
|
823
849
|
if (__result.hasError()) [[unlikely]] {
|
|
824
850
|
std::rethrow_exception(__result.error());
|
|
@@ -888,6 +914,12 @@ namespace margelo::nitro::audiobrowser {
|
|
|
888
914
|
std::rethrow_exception(__result.error());
|
|
889
915
|
}
|
|
890
916
|
}
|
|
917
|
+
inline void seekToLiveEdge() override {
|
|
918
|
+
auto __result = _swiftPart.seekToLiveEdge();
|
|
919
|
+
if (__result.hasError()) [[unlikely]] {
|
|
920
|
+
std::rethrow_exception(__result.error());
|
|
921
|
+
}
|
|
922
|
+
}
|
|
891
923
|
inline void setVolume(double level) override {
|
|
892
924
|
auto __result = _swiftPart.setVolume(std::forward<decltype(level)>(level));
|
|
893
925
|
if (__result.hasError()) [[unlikely]] {
|
|
@@ -924,6 +956,12 @@ namespace margelo::nitro::audiobrowser {
|
|
|
924
956
|
auto __value = std::move(__result.value());
|
|
925
957
|
return __value;
|
|
926
958
|
}
|
|
959
|
+
inline void setPlaybackIntervalEnabled(bool enabled) override {
|
|
960
|
+
auto __result = _swiftPart.setPlaybackIntervalEnabled(std::forward<decltype(enabled)>(enabled));
|
|
961
|
+
if (__result.hasError()) [[unlikely]] {
|
|
962
|
+
std::rethrow_exception(__result.error());
|
|
963
|
+
}
|
|
964
|
+
}
|
|
927
965
|
inline Playback getPlayback() override {
|
|
928
966
|
auto __result = _swiftPart.getPlayback();
|
|
929
967
|
if (__result.hasError()) [[unlikely]] {
|
|
@@ -990,8 +1028,8 @@ namespace margelo::nitro::audiobrowser {
|
|
|
990
1028
|
auto __value = std::move(__result.value());
|
|
991
1029
|
return __value;
|
|
992
1030
|
}
|
|
993
|
-
inline void setSleepTimer(double seconds) override {
|
|
994
|
-
auto __result = _swiftPart.setSleepTimer(std::forward<decltype(seconds)>(seconds));
|
|
1031
|
+
inline void setSleepTimer(double seconds, std::optional<double> fadeDuration) override {
|
|
1032
|
+
auto __result = _swiftPart.setSleepTimer(std::forward<decltype(seconds)>(seconds), fadeDuration);
|
|
995
1033
|
if (__result.hasError()) [[unlikely]] {
|
|
996
1034
|
std::rethrow_exception(__result.error());
|
|
997
1035
|
}
|
|
@@ -1064,8 +1102,8 @@ namespace margelo::nitro::audiobrowser {
|
|
|
1064
1102
|
std::rethrow_exception(__result.error());
|
|
1065
1103
|
}
|
|
1066
1104
|
}
|
|
1067
|
-
inline void setQueue(const std::vector<Track>& tracks, std::optional<double> startIndex, std::optional<double>
|
|
1068
|
-
auto __result = _swiftPart.setQueue(tracks, startIndex,
|
|
1105
|
+
inline void setQueue(const std::vector<Track>& tracks, std::optional<double> startIndex, std::optional<double> startPosition) override {
|
|
1106
|
+
auto __result = _swiftPart.setQueue(tracks, startIndex, startPosition);
|
|
1069
1107
|
if (__result.hasError()) [[unlikely]] {
|
|
1070
1108
|
std::rethrow_exception(__result.error());
|
|
1071
1109
|
}
|
|
@@ -1108,6 +1146,18 @@ namespace margelo::nitro::audiobrowser {
|
|
|
1108
1146
|
std::rethrow_exception(__result.error());
|
|
1109
1147
|
}
|
|
1110
1148
|
}
|
|
1149
|
+
inline void flashNowPlaying(const NowPlayingUpdate& update, double durationMs) override {
|
|
1150
|
+
auto __result = _swiftPart.flashNowPlaying(std::forward<decltype(update)>(update), std::forward<decltype(durationMs)>(durationMs));
|
|
1151
|
+
if (__result.hasError()) [[unlikely]] {
|
|
1152
|
+
std::rethrow_exception(__result.error());
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
inline void clearNowPlayingFlash() override {
|
|
1156
|
+
auto __result = _swiftPart.clearNowPlayingFlash();
|
|
1157
|
+
if (__result.hasError()) [[unlikely]] {
|
|
1158
|
+
std::rethrow_exception(__result.error());
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1111
1161
|
inline std::optional<NowPlayingMetadata> getNowPlaying() override {
|
|
1112
1162
|
auto __result = _swiftPart.getNowPlaying();
|
|
1113
1163
|
if (__result.hasError()) [[unlikely]] {
|
|
@@ -1138,20 +1188,28 @@ namespace margelo::nitro::audiobrowser {
|
|
|
1138
1188
|
std::rethrow_exception(__result.error());
|
|
1139
1189
|
}
|
|
1140
1190
|
}
|
|
1141
|
-
inline std::optional<
|
|
1142
|
-
auto __result = _swiftPart.
|
|
1191
|
+
inline std::optional<Output> getOutput() override {
|
|
1192
|
+
auto __result = _swiftPart.getOutput();
|
|
1143
1193
|
if (__result.hasError()) [[unlikely]] {
|
|
1144
1194
|
std::rethrow_exception(__result.error());
|
|
1145
1195
|
}
|
|
1146
1196
|
auto __value = std::move(__result.value());
|
|
1147
1197
|
return __value;
|
|
1148
1198
|
}
|
|
1149
|
-
inline void
|
|
1150
|
-
auto __result = _swiftPart.
|
|
1199
|
+
inline void openOutputPicker() override {
|
|
1200
|
+
auto __result = _swiftPart.openOutputPicker();
|
|
1151
1201
|
if (__result.hasError()) [[unlikely]] {
|
|
1152
1202
|
std::rethrow_exception(__result.error());
|
|
1153
1203
|
}
|
|
1154
1204
|
}
|
|
1205
|
+
inline bool supportsOutputSwitcher() override {
|
|
1206
|
+
auto __result = _swiftPart.supportsOutputSwitcher();
|
|
1207
|
+
if (__result.hasError()) [[unlikely]] {
|
|
1208
|
+
std::rethrow_exception(__result.error());
|
|
1209
|
+
}
|
|
1210
|
+
auto __value = std::move(__result.value());
|
|
1211
|
+
return __value;
|
|
1212
|
+
}
|
|
1155
1213
|
inline std::optional<EqualizerSettings> getEqualizerSettings() override {
|
|
1156
1214
|
auto __result = _swiftPart.getEqualizerSettings();
|
|
1157
1215
|
if (__result.hasError()) [[unlikely]] {
|
|
@@ -19,14 +19,14 @@ public extension AndroidAudioContentType {
|
|
|
19
19
|
switch string {
|
|
20
20
|
case "music":
|
|
21
21
|
self = .music
|
|
22
|
-
case "speech":
|
|
23
|
-
self = .speech
|
|
24
|
-
case "sonification":
|
|
25
|
-
self = .sonification
|
|
26
22
|
case "movie":
|
|
27
23
|
self = .movie
|
|
28
24
|
case "unknown":
|
|
29
25
|
self = .unknown
|
|
26
|
+
case "speech":
|
|
27
|
+
self = .speech
|
|
28
|
+
case "sonification":
|
|
29
|
+
self = .sonification
|
|
30
30
|
default:
|
|
31
31
|
return nil
|
|
32
32
|
}
|
|
@@ -39,14 +39,14 @@ public extension AndroidAudioContentType {
|
|
|
39
39
|
switch self {
|
|
40
40
|
case .music:
|
|
41
41
|
return "music"
|
|
42
|
-
case .speech:
|
|
43
|
-
return "speech"
|
|
44
|
-
case .sonification:
|
|
45
|
-
return "sonification"
|
|
46
42
|
case .movie:
|
|
47
43
|
return "movie"
|
|
48
44
|
case .unknown:
|
|
49
45
|
return "unknown"
|
|
46
|
+
case .speech:
|
|
47
|
+
return "speech"
|
|
48
|
+
case .sonification:
|
|
49
|
+
return "sonification"
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
}
|
|
@@ -18,15 +18,15 @@ public extension AndroidOptions {
|
|
|
18
18
|
/**
|
|
19
19
|
* Create a new instance of `AndroidOptions`.
|
|
20
20
|
*/
|
|
21
|
-
init(appKilledPlaybackBehavior: AppKilledPlaybackBehavior, skipSilence: Bool,
|
|
22
|
-
self.init(appKilledPlaybackBehavior, skipSilence,
|
|
23
|
-
if let __unwrappedValue =
|
|
24
|
-
return bridge.
|
|
21
|
+
init(appKilledPlaybackBehavior: AppKilledPlaybackBehavior, skipSilence: Bool, remoteButtonLayout: Variant_NullType_RemoteButtonLayout?) {
|
|
22
|
+
self.init(appKilledPlaybackBehavior, skipSilence, { () -> bridge.std__optional_std__variant_nitro__NullType__RemoteButtonLayout__ in
|
|
23
|
+
if let __unwrappedValue = remoteButtonLayout {
|
|
24
|
+
return bridge.create_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__({ () -> bridge.std__variant_nitro__NullType__RemoteButtonLayout_ in
|
|
25
25
|
switch __unwrappedValue {
|
|
26
26
|
case .first(let __value):
|
|
27
|
-
return bridge.
|
|
27
|
+
return bridge.create_std__variant_nitro__NullType__RemoteButtonLayout_(margelo.nitro.NullType.null)
|
|
28
28
|
case .second(let __value):
|
|
29
|
-
return bridge.
|
|
29
|
+
return bridge.create_std__variant_nitro__NullType__RemoteButtonLayout_(__value)
|
|
30
30
|
}
|
|
31
31
|
}().variant)
|
|
32
32
|
} else {
|
|
@@ -46,22 +46,12 @@ public extension AndroidOptions {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
@inline(__always)
|
|
49
|
-
var
|
|
50
|
-
return
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return self.__ratingType
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
@inline(__always)
|
|
59
|
-
var notificationButtons: Variant_NullType_NotificationButtonLayout? {
|
|
60
|
-
return { () -> Variant_NullType_NotificationButtonLayout? in
|
|
61
|
-
if bridge.has_value_std__optional_std__variant_nitro__NullType__NotificationButtonLayout__(self.__notificationButtons) {
|
|
62
|
-
let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__NotificationButtonLayout__(self.__notificationButtons)
|
|
63
|
-
return { () -> Variant_NullType_NotificationButtonLayout in
|
|
64
|
-
let __variant = bridge.std__variant_nitro__NullType__NotificationButtonLayout_(__unwrapped)
|
|
49
|
+
var remoteButtonLayout: Variant_NullType_RemoteButtonLayout? {
|
|
50
|
+
return { () -> Variant_NullType_RemoteButtonLayout? in
|
|
51
|
+
if bridge.has_value_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(self.__remoteButtonLayout) {
|
|
52
|
+
let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(self.__remoteButtonLayout)
|
|
53
|
+
return { () -> Variant_NullType_RemoteButtonLayout in
|
|
54
|
+
let __variant = bridge.std__variant_nitro__NullType__RemoteButtonLayout_(__unwrapped)
|
|
65
55
|
switch __variant.index() {
|
|
66
56
|
case 0:
|
|
67
57
|
let __actual = __variant.get_0()
|