react-native-queue-player 1.2.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/QueuePlayer.podspec +14 -9
- package/README.md +3 -3
- package/android/consumer-rules.pro +1 -1
- package/android/src/main/cpp/airplay2_control.c +4 -4
- package/android/src/main/cpp/airplay2_control.h +4 -4
- package/android/src/main/cpp/airplay2_jni.cpp +3 -19
- package/android/src/main/cpp/airplay2_pair.c +7 -7
- package/android/src/main/cpp/airplay2_pair.h +2 -2
- package/android/src/main/cpp/airplay2_rtsp.c +8 -8
- package/android/src/main/cpp/airplay2_session.c +2 -2
- package/android/src/main/cpp/airplay_jni.cpp +8 -69
- package/android/src/main/java/com/margelo/nitro/queueplayer/AirPlayEngine.kt +7 -16
- package/android/src/main/java/com/margelo/nitro/queueplayer/CacheMimeTypes.kt +1 -1
- package/android/src/main/java/com/margelo/nitro/queueplayer/CastManager.kt +2 -14
- package/android/src/main/java/com/margelo/nitro/queueplayer/CellularTransportMonitor.kt +77 -0
- package/android/src/main/java/com/margelo/nitro/queueplayer/CrossfadeEngine.kt +187 -52
- package/android/src/main/java/com/margelo/nitro/queueplayer/Equalizer.kt +27 -7
- package/android/src/main/java/com/margelo/nitro/queueplayer/EqualizerEngine.kt +33 -12
- package/android/src/main/java/com/margelo/nitro/queueplayer/EqualizerLegacyEngine.kt +31 -8
- package/android/src/main/java/com/margelo/nitro/queueplayer/FFTProcessorTee.kt +45 -30
- package/android/src/main/java/com/margelo/nitro/queueplayer/FifoCacheEvictor.kt +111 -15
- package/android/src/main/java/com/margelo/nitro/queueplayer/GaplessEngine.kt +60 -33
- package/android/src/main/java/com/margelo/nitro/queueplayer/HeadlessJsMediaService.kt +1 -1
- package/android/src/main/java/com/margelo/nitro/queueplayer/IEqualizerEngine.kt +3 -1
- package/android/src/main/java/com/margelo/nitro/queueplayer/LookaheadCache.kt +111 -29
- package/android/src/main/java/com/margelo/nitro/queueplayer/LookaheadCacheWriter.kt +78 -30
- package/android/src/main/java/com/margelo/nitro/queueplayer/MediaItemBuilder.kt +6 -6
- package/android/src/main/java/com/margelo/nitro/queueplayer/MediaResponseCheck.kt +156 -0
- package/android/src/main/java/com/margelo/nitro/queueplayer/MediaValidatingDataSource.kt +165 -0
- package/android/src/main/java/com/margelo/nitro/queueplayer/MimeCapturingDataSource.kt +18 -9
- package/android/src/main/java/com/margelo/nitro/queueplayer/NowPlayingFormatExtractor.kt +48 -1
- package/android/src/main/java/com/margelo/nitro/queueplayer/PitchCorrection.kt +3 -2
- package/android/src/main/java/com/margelo/nitro/queueplayer/PlaybackEngine.kt +71 -76
- package/android/src/main/java/com/margelo/nitro/queueplayer/PlaybackErrorMapping.kt +13 -5
- package/android/src/main/java/com/margelo/nitro/queueplayer/PlaybackModeStateMachine.kt +2 -2
- package/android/src/main/java/com/margelo/nitro/queueplayer/PlaybackService.kt +68 -46
- package/android/src/main/java/com/margelo/nitro/queueplayer/PlaybackServiceCallback.kt +6 -5
- package/android/src/main/java/com/margelo/nitro/queueplayer/QueueMutationArithmetic.kt +5 -6
- package/android/src/main/java/com/margelo/nitro/queueplayer/QueueSkipArithmetic.kt +11 -8
- package/android/src/main/java/com/margelo/nitro/queueplayer/ReplayGainAudioProcessor.kt +26 -6
- package/android/src/main/java/com/margelo/nitro/queueplayer/ReplayGainData.kt +22 -3
- package/android/src/main/java/com/margelo/nitro/queueplayer/ReplayGainExtractor.kt +38 -12
- package/android/src/main/java/com/margelo/nitro/queueplayer/ReplayGainGain.kt +17 -13
- package/android/src/main/java/com/margelo/nitro/queueplayer/SuppliedReplayGain.kt +66 -0
- package/android/src/main/java/com/margelo/nitro/queueplayer/TrackPlayer.kt +985 -276
- package/android/src/main/java/com/margelo/nitro/queueplayer/Visualizer.kt +4 -8
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/CastBackend.kt +4 -3
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/CastSession.kt +5 -4
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/AirPlay2JNI.kt +0 -2
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/AirPlay2Session.kt +4 -2
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/AirPlayBackend.kt +16 -9
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/AirPlayMetadataSync.kt +1 -1
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/AirPlayRenderersFactory.kt +6 -14
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/AirplayJNI.kt +1 -13
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/airplay/MulticastLockHolder.kt +1 -1
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/chromecast/ChromecastBackend.kt +3 -3
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/http/LocalMediaServer.kt +11 -35
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/http/MediaServerHandle.kt +0 -5
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/http/MediaTokenRegistry.kt +0 -6
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/net/LocalAddressMonitor.kt +32 -33
- package/android/src/test/java/androidx/media3/session/{MediaSessionControllerRequestTestSeam.kt → MediaSessionControllerRequestTestSupport.kt} +1 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/AvrcpMetadataTest.kt +12 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/CrossfadeEngineFocusLossTest.kt +115 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/CrossfadeEngineLifecycleTest.kt +45 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/EngineEndSignalOrderTest.kt +70 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/EqualizerEngineTest.kt +17 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/EqualizerKtTest.kt +0 -6
- package/android/src/test/java/com/margelo/nitro/queueplayer/EqualizerLegacyEngineTest.kt +17 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/FFTProcessorTeeTest.kt +15 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/FifoCacheEvictorTest.kt +135 -4
- package/android/src/test/java/com/margelo/nitro/queueplayer/GaplessEngineLifecycleTest.kt +1 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/GaplessEngineReplayGainTest.kt +36 -2
- package/android/src/test/java/com/margelo/nitro/queueplayer/LookaheadCacheTest.kt +84 -18
- package/android/src/test/java/com/margelo/nitro/queueplayer/LookaheadCacheWriterCancelTest.kt +85 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/LookaheadCacheWriterTest.kt +112 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/MediaItemBuilderTest.kt +5 -3
- package/android/src/test/java/com/margelo/nitro/queueplayer/MediaResponseCheckTest.kt +163 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/MediaValidatingDataSourceTest.kt +189 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/NowPlayingFormatExtractorTest.kt +45 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/PitchAwareAudioProcessorChainTest.kt +1 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/PlaybackServiceCallbackSearchTest.kt +47 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/PlaybackServiceCallbackTest.kt +53 -29
- package/android/src/test/java/com/margelo/nitro/queueplayer/PlaybackServiceLifecycleTest.kt +8 -8
- package/android/src/test/java/com/margelo/nitro/queueplayer/QueueSkipArithmeticTest.kt +33 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/ReplayGainAudioProcessorTest.kt +128 -5
- package/android/src/test/java/com/margelo/nitro/queueplayer/ReplayGainExtractorTest.kt +209 -14
- package/android/src/test/java/com/margelo/nitro/queueplayer/ReplayGainGainTest.kt +150 -10
- package/android/src/test/java/com/margelo/nitro/queueplayer/ReplayGainMergeTest.kt +258 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/RobolectricServiceBindHelper.kt +2 -2
- package/android/src/test/java/com/margelo/nitro/queueplayer/SessionCommandForwardingPlayerTest.kt +2 -2
- package/android/src/test/java/com/margelo/nitro/queueplayer/ShadowDynamicsProcessingRejectingEnable.kt +19 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/ShadowEqualizer.kt +1 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/ShadowEqualizerRejectingBandWrites.kt +27 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/SuppliedReplayGainTest.kt +61 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerAirPlayMetadataWiringTest.kt +4 -4
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerAudioFocusTest.kt +1 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerCastCommandRoutingTest.kt +2 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerCastStateTest.kt +2 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerEventsTest.kt +122 -38
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerLifecycleTest.kt +291 -27
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerLookaheadConfigTest.kt +277 -38
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerMutationTest.kt +5 -3
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerProgressThrottleTest.kt +2 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerQueueChangeTest.kt +85 -3
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerQueueTest.kt +11 -7
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerReadersTest.kt +2 -1
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerSkipCapabilityTest.kt +90 -4
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerSkipTest.kt +8 -26
- package/android/src/test/java/com/margelo/nitro/queueplayer/TrackPlayerTransportTest.kt +3 -3
- package/android/src/test/java/com/margelo/nitro/queueplayer/VisualizerKtTest.kt +0 -4
- package/android/src/test/java/com/margelo/nitro/queueplayer/cast/FakeRemotePlayer.kt +2 -2
- package/android/src/test/java/com/margelo/nitro/queueplayer/cast/net/LocalAddressMonitorTest.kt +173 -0
- package/android/src/test/java/com/margelo/nitro/queueplayer/cast/net/ShadowConnectivityManagerRecordingRequests.kt +27 -0
- package/app.plugin.js +17 -1
- package/ios/AVPlayerItemQueueItemId.swift +26 -12
- package/ios/AVQueueBuilder.swift +120 -85
- package/ios/ArtworkLoader.swift +0 -7
- package/ios/ArtworkResolver.swift +22 -4
- package/ios/AssetReplayGainReader.swift +118 -0
- package/ios/AudioSession.swift +67 -16
- package/ios/AudioTapProvider.swift +284 -149
- package/ios/CarPlayBridge.swift +0 -12
- package/ios/CarPlayCoordinator.swift +18 -2
- package/ios/CarPlaySceneDelegate.swift +2 -2
- package/ios/Cast/AirPlayRouteState.swift +9 -8
- package/ios/Cast/Core/CastEventBridge.swift +66 -26
- package/ios/Cast/Core/CastNowPlayingController.swift +38 -16
- package/ios/Cast/Core/CastSession.swift +2 -2
- package/ios/Cast/Core/CastTransportRouter.swift +21 -9
- package/ios/Cast/Core/LocalMediaServer.swift +41 -52
- package/ios/Cast/Core/LocalNetworkPermissionProbe.swift +32 -11
- package/ios/Cast/Core/MediaServerHandle.swift +0 -4
- package/ios/Cast/Core/MediaTokenRegistry.swift +0 -6
- package/ios/CastManager.swift +1 -1
- package/ios/CrossfadeEngine.swift +672 -226
- package/ios/EQTap.swift +20 -17
- package/ios/Equalizer.swift +1 -1
- package/ios/FLACStreamInfo.swift +65 -0
- package/ios/GaplessEngine.swift +57 -30
- package/ios/InputGuards.swift +35 -5
- package/ios/LookaheadCache.swift +229 -58
- package/ios/LookaheadCachePrefetcher.swift +48 -36
- package/ios/MediaResponseCheck.swift +122 -0
- package/ios/MediaServer/MediaHTTPConnection.swift +691 -0
- package/ios/NetworkRecoveryPolicy.swift +32 -0
- package/ios/NowPlayingFormatExtractor.swift +25 -18
- package/ios/NowPlayingInfo.swift +84 -48
- package/ios/OutputRouteMonitor.swift +16 -3
- package/ios/PendingBrowseRequests.swift +1 -1
- package/ios/PlaceholderArtwork.swift +9 -5
- package/ios/PlaybackEngine.swift +165 -76
- package/ios/PlaybackErrorMapping.swift +3 -3
- package/ios/PlaybackModeStateMachine.swift +2 -2
- package/ios/PlaybackNetworkMonitor.swift +73 -0
- package/ios/PlayerStateDerivation.swift +6 -6
- package/ios/QueueMutationArithmetic.swift +25 -0
- package/ios/QueueSkipArithmetic.swift +5 -3
- package/ios/QueueWindowArithmetic.swift +152 -0
- package/ios/ReadThroughServer.swift +283 -0
- package/ios/RemoteCommands.swift +44 -4
- package/ios/ReplayGainData.swift +22 -3
- package/ios/ReplayGainExtractor.swift +70 -27
- package/ios/Siri/VoiceDonation.swift +14 -9
- package/ios/StreamingBitrateProbe.swift +22 -68
- package/ios/SuppliedReplayGain.swift +83 -0
- package/ios/Tests/AVQueueBuilderTests.swift +158 -221
- package/ios/Tests/ActiveItemEngineStub.swift +44 -0
- package/ios/Tests/AssetReplayGainReaderTests.swift +228 -0
- package/ios/Tests/AudioTapProviderDispatchTargetTests.swift +158 -0
- package/ios/Tests/AudioTapProviderReplayGainTests.swift +122 -10
- package/ios/Tests/BitrateReresolveBudgetTests.swift +71 -0
- package/ios/Tests/CastMediaItemTranslationTests.swift +72 -0
- package/ios/Tests/CastNowPlayingControllerTests.swift +1 -1
- package/ios/Tests/CrossfadeAdvanceWithoutFadeTests.swift +120 -0
- package/ios/Tests/CrossfadeEngineIncomingMixTests.swift +122 -0
- package/ios/Tests/CrossfadeEngineTests.swift +164 -0
- package/ios/Tests/CrossfadeMixReapplyTests.swift +66 -0
- package/ios/Tests/CrossfadePlaybackIntentTests.swift +81 -0
- package/ios/Tests/EngineSwapTests.swift +91 -0
- package/ios/Tests/EqualizerAudioMixProviderTests.swift +46 -0
- package/ios/Tests/EqualizerHybridTests.swift +5 -2
- package/ios/Tests/FLACStreamInfoTests.swift +88 -0
- package/ios/Tests/GaplessEngineLifecycleTests.swift +4 -4
- package/ios/Tests/InputGuardsTests.swift +41 -0
- package/ios/Tests/InterruptionIntentTests.swift +77 -0
- package/ios/Tests/LookaheadCacheCellularAccessTests.swift +185 -0
- package/ios/Tests/LookaheadCachePrefetcherTests.swift +53 -30
- package/ios/Tests/LookaheadCacheRuntimeConfigTests.swift +160 -1
- package/ios/Tests/LookaheadCacheTests.swift +44 -18
- package/ios/Tests/MediaHTTPConnectionTests.swift +79 -0
- package/ios/Tests/MediaResponseCheckTests.swift +128 -0
- package/ios/Tests/MutationDeferralTests.swift +220 -0
- package/ios/Tests/NowPlayingInfoTests.swift +86 -99
- package/ios/Tests/NowPlayingSnapshotTests.swift +127 -0
- package/ios/Tests/OriginRestartStitcherTests.swift +60 -0
- package/ios/Tests/PlaybackNetworkMonitorTests.swift +95 -0
- package/ios/Tests/PlayerFixtures.swift +48 -0
- package/ios/Tests/PlayerStateDerivationTests.swift +10 -10
- package/ios/Tests/QueueMutationGenerationTests.swift +141 -0
- package/ios/Tests/QueueRebuildPrefixTests.swift +317 -0
- package/ios/Tests/QueueStateTests.swift +3 -1
- package/ios/Tests/QueueWindowArithmeticTests.swift +56 -0
- package/ios/Tests/QueueWindowSliceTests.swift +162 -0
- package/ios/Tests/ReadThroughRoutingLifecycleTests.swift +63 -0
- package/ios/Tests/ReadThroughServerTests.swift +345 -0
- package/ios/Tests/RemoteCommandsTests.swift +28 -0
- package/ios/Tests/ReplayGainExtractorTests.swift +216 -6
- package/ios/Tests/ReplayGainMergeTests.swift +230 -0
- package/ios/Tests/RetryRecoveryTests.swift +418 -0
- package/ios/Tests/SkipCapabilityTests.swift +233 -8
- package/ios/Tests/SkipIndexTests.swift +32 -2
- package/ios/Tests/SleepTimerPauseIntentTests.swift +43 -0
- package/ios/Tests/StallRecoveryTests.swift +97 -0
- package/ios/Tests/StreamingBitrateProbeTests.swift +17 -20
- package/ios/Tests/TopUpWindowGateTests.swift +441 -0
- package/ios/Tests/TrackPlayer+TestHops.swift +14 -0
- package/ios/Tests/TrackPlayerCallOrderTests.swift +93 -0
- package/ios/Tests/TrackPlayerConfigureTeardownTests.swift +86 -0
- package/ios/Tests/TrackPlayerEndVerdictTests.swift +206 -0
- package/ios/Tests/TrackPlayerSeekTests.swift +137 -0
- package/ios/Tests/TrackPlayerThreadingTests.swift +127 -0
- package/ios/Tests/TrackSourceClassifierTests.swift +33 -7
- package/ios/Tests/VoiceVocabularyOptInTests.swift +38 -0
- package/ios/TrackPlayer+Automotive.swift +101 -0
- package/ios/TrackPlayer+Cache.swift +232 -0
- package/ios/TrackPlayer+Config.swift +291 -0
- package/ios/TrackPlayer+EngineDelegate.swift +209 -0
- package/ios/TrackPlayer+EventsAPI.swift +111 -0
- package/ios/TrackPlayer+EventsDispatch.swift +1042 -0
- package/ios/TrackPlayer+EventsWiring.swift +173 -0
- package/ios/TrackPlayer+Lifecycle.swift +982 -0
- package/ios/TrackPlayer+NowPlayingFormat.swift +258 -0
- package/ios/TrackPlayer+Queue.swift +951 -0
- package/ios/TrackPlayer+Recovery.swift +213 -0
- package/ios/TrackPlayer+Skip.swift +465 -0
- package/ios/TrackPlayer+SleepTimer.swift +175 -0
- package/ios/TrackPlayer+State.swift +108 -0
- package/ios/TrackPlayer+Threading.swift +135 -0
- package/ios/TrackPlayer+Transport.swift +272 -0
- package/ios/TrackPlayer+Window.swift +227 -0
- package/ios/TrackPlayer.swift +331 -4619
- package/ios/Visualizer.swift +6 -5
- package/ios/tests-harness/Podfile +1 -1
- package/ios/tests-harness/TestHost.xcodeproj/project.pbxproj +19 -11
- package/ios/tests-harness/scripts/seed-xcodeproj.rb +2 -2
- package/lib/module/hooks/useActiveTrack.js +29 -22
- package/lib/module/hooks/useActiveTrack.js.map +1 -1
- package/lib/module/hooks/useCast.js +8 -26
- package/lib/module/hooks/useCast.js.map +1 -1
- package/lib/module/hooks/useEqualizer.js +19 -12
- package/lib/module/hooks/useEqualizer.js.map +1 -1
- package/lib/module/hooks/useLookaheadCache.js +3 -7
- package/lib/module/hooks/useLookaheadCache.js.map +1 -1
- package/lib/module/hooks/useQueue.js +66 -19
- package/lib/module/hooks/useQueue.js.map +1 -1
- package/lib/module/index.js +6 -3
- package/lib/module/index.js.map +1 -1
- package/lib/module/queueDelta.js +41 -0
- package/lib/module/queueDelta.js.map +1 -0
- package/lib/module/types.js +28 -5
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/TrackPlayer.nitro.d.ts +53 -28
- package/lib/typescript/TrackPlayer.nitro.d.ts.map +1 -1
- package/lib/typescript/hooks/useActiveTrack.d.ts +5 -7
- package/lib/typescript/hooks/useActiveTrack.d.ts.map +1 -1
- package/lib/typescript/hooks/useCast.d.ts +6 -1
- package/lib/typescript/hooks/useCast.d.ts.map +1 -1
- package/lib/typescript/hooks/useEqualizer.d.ts +2 -1
- package/lib/typescript/hooks/useEqualizer.d.ts.map +1 -1
- package/lib/typescript/hooks/useLookaheadCache.d.ts.map +1 -1
- package/lib/typescript/hooks/useQueue.d.ts +4 -4
- package/lib/typescript/hooks/useQueue.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/queueDelta.d.ts +10 -0
- package/lib/typescript/queueDelta.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +168 -12
- package/lib/typescript/types.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JFunc_void_QueueChangeDelta_double_QueueChangeReason.hpp +85 -0
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.cpp +45 -19
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.hpp +3 -3
- package/nitrogen/generated/android/c++/JLookaheadCacheConfig.hpp +8 -4
- package/nitrogen/generated/android/c++/JPlayerConfig.hpp +5 -1
- package/nitrogen/generated/android/c++/JQueueChangeDelta.hpp +128 -0
- package/nitrogen/generated/android/c++/JTrackItem.hpp +19 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_BrowseItem______std__string.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_TrackItem______MediaSearchRequest.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_TrackItem______std__string.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_AudioRoute.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_BufferState.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_CacheStatus.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_CastDiscoveryState.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_CastLocalNetworkPermissionEvent.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_CastRoute.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_CastSessionDiedEvent.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_PlaybackError.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_PlayerProgress.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_PlayerState_StateChangeReason.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/{Func_void_std__vector_TrackItem__double_QueueChangeReason.kt → Func_void_QueueChangeDelta_double_QueueChangeReason.kt} +14 -16
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_ServiceReadyReason.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_SkipCapability.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_SleepTimerState.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_VisualizerErrorReason.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_VisualizerFrame.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_bool.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_double_double.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_std__optional_TrackItem__double_TrackChangeReason_std__optional_double_.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_std__optional_std__variant_nitro__NullType__NowPlayingFormat__.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_std__vector_CastReceiver_.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/Func_void_std__vector_EqualizerBand_.kt +0 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridCastManagerSpec.kt +2 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridEqualizerSpec.kt +2 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridTrackPlayerSpec.kt +6 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridVisualizerSpec.kt +2 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/LookaheadCacheConfig.kt +9 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/PlayerConfig.kt +7 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/QueueChangeDelta.kt +86 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/TrackItem.kt +24 -4
- package/nitrogen/generated/android/queueplayerOnLoad.cpp +2 -2
- package/nitrogen/generated/ios/QueuePlayer-Swift-Cxx-Bridge.cpp +16 -16
- package/nitrogen/generated/ios/QueuePlayer-Swift-Cxx-Bridge.hpp +80 -65
- package/nitrogen/generated/ios/QueuePlayer-Swift-Cxx-Umbrella.hpp +3 -0
- package/nitrogen/generated/ios/c++/HybridTrackPlayerSpecSwift.hpp +6 -3
- package/nitrogen/generated/ios/swift/Func_void_CacheStatus.swift +5 -5
- package/nitrogen/generated/ios/swift/Func_void_QueueChangeDelta_double_QueueChangeReason.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec.swift +3 -3
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec_cxx.swift +32 -24
- package/nitrogen/generated/ios/swift/LookaheadCacheConfig.swift +20 -2
- package/nitrogen/generated/ios/swift/PlayerConfig.swift +19 -1
- package/nitrogen/generated/ios/swift/QueueChangeDelta.swift +82 -0
- package/nitrogen/generated/ios/swift/TrackItem.swift +73 -1
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.hpp +6 -3
- package/nitrogen/generated/shared/c++/LookaheadCacheConfig.hpp +7 -3
- package/nitrogen/generated/shared/c++/PlayerConfig.hpp +5 -1
- package/nitrogen/generated/shared/c++/QueueChangeDelta.hpp +113 -0
- package/nitrogen/generated/shared/c++/TrackItem.hpp +18 -2
- package/package.json +8 -8
- package/src/TrackPlayer.nitro.ts +53 -27
- package/src/hooks/useActiveTrack.ts +29 -22
- package/src/hooks/useCast.ts +14 -15
- package/src/hooks/useEqualizer.ts +19 -12
- package/src/hooks/useLookaheadCache.ts +3 -7
- package/src/hooks/useQueue.ts +66 -17
- package/src/index.ts +13 -3
- package/src/queueDelta.ts +41 -0
- package/src/types.ts +169 -12
- package/android/src/main/java/com/margelo/nitro/queueplayer/PendingIntentBuffer.kt +0 -82
- package/android/src/main/java/com/margelo/nitro/queueplayer/cast/http/LocalMediaServerLifecycle.kt +0 -15
- package/android/src/test/java/com/margelo/nitro/queueplayer/PendingIntentBufferTest.kt +0 -192
- package/android/src/test/java/com/margelo/nitro/queueplayer/PlaybackEngineInterfaceTest.kt +0 -135
- package/android/src/test/java/com/margelo/nitro/queueplayer/SmokeTest.kt +0 -27
- package/ios/Cast/Core/LocalAddressMonitor.swift +0 -110
- package/ios/Cast/Core/MediaHTTPConnection.swift +0 -349
- package/ios/MetadataReader.swift +0 -555
- package/ios/Tests/CrossfadeEngineStubTests.swift +0 -43
- package/ios/Tests/MetadataReaderTests.swift +0 -603
- package/ios/Tests/PlaybackEngineProtocolTests.swift +0 -92
- package/ios/Tests/VoiceDonationTests.swift +0 -26
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_TrackItem__double_QueueChangeReason.hpp +0 -101
- package/nitrogen/generated/ios/swift/Func_void_std__vector_TrackItem__double_QueueChangeReason.swift +0 -46
- /package/ios/{Cast/Core → MediaServer}/MimeTypes.swift +0 -0
|
@@ -10,7 +10,6 @@ package com.margelo.nitro.queueplayer
|
|
|
10
10
|
import androidx.annotation.Keep
|
|
11
11
|
import com.facebook.jni.HybridData
|
|
12
12
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
13
|
-
import dalvik.annotation.optimization.FastNative
|
|
14
13
|
|
|
15
14
|
|
|
16
15
|
/**
|
|
@@ -59,7 +58,6 @@ class Func_void_std__vector_EqualizerBand__cxx: Func_void_std__vector_EqualizerB
|
|
|
59
58
|
override fun invoke(bands: Array<EqualizerBand>): Unit
|
|
60
59
|
= invoke_cxx(bands)
|
|
61
60
|
|
|
62
|
-
@FastNative
|
|
63
61
|
private external fun invoke_cxx(bands: Array<EqualizerBand>): Unit
|
|
64
62
|
}
|
|
65
63
|
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridCastManagerSpec.kt
CHANGED
|
@@ -10,6 +10,7 @@ package com.margelo.nitro.queueplayer
|
|
|
10
10
|
import androidx.annotation.Keep
|
|
11
11
|
import com.facebook.jni.HybridData
|
|
12
12
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
13
|
+
import dalvik.annotation.optimization.FastNative
|
|
13
14
|
import com.margelo.nitro.core.Promise
|
|
14
15
|
import com.margelo.nitro.core.HybridObject
|
|
15
16
|
|
|
@@ -157,6 +158,7 @@ abstract class HybridCastManagerSpec: HybridObject() {
|
|
|
157
158
|
@Keep
|
|
158
159
|
protected open class CxxPart(javaPart: HybridCastManagerSpec): HybridObject.CxxPart(javaPart) {
|
|
159
160
|
// C++ JHybridCastManagerSpec::CxxPart::initHybrid(...)
|
|
161
|
+
@FastNative
|
|
160
162
|
external override fun initHybrid(): HybridData
|
|
161
163
|
}
|
|
162
164
|
override fun createCxxPart(): CxxPart {
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridEqualizerSpec.kt
CHANGED
|
@@ -10,6 +10,7 @@ package com.margelo.nitro.queueplayer
|
|
|
10
10
|
import androidx.annotation.Keep
|
|
11
11
|
import com.facebook.jni.HybridData
|
|
12
12
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
13
|
+
import dalvik.annotation.optimization.FastNative
|
|
13
14
|
import com.margelo.nitro.core.Promise
|
|
14
15
|
import com.margelo.nitro.core.HybridObject
|
|
15
16
|
|
|
@@ -97,6 +98,7 @@ abstract class HybridEqualizerSpec: HybridObject() {
|
|
|
97
98
|
@Keep
|
|
98
99
|
protected open class CxxPart(javaPart: HybridEqualizerSpec): HybridObject.CxxPart(javaPart) {
|
|
99
100
|
// C++ JHybridEqualizerSpec::CxxPart::initHybrid(...)
|
|
101
|
+
@FastNative
|
|
100
102
|
external override fun initHybrid(): HybridData
|
|
101
103
|
}
|
|
102
104
|
override fun createCxxPart(): CxxPart {
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridTrackPlayerSpec.kt
CHANGED
|
@@ -10,6 +10,7 @@ package com.margelo.nitro.queueplayer
|
|
|
10
10
|
import androidx.annotation.Keep
|
|
11
11
|
import com.facebook.jni.HybridData
|
|
12
12
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
13
|
+
import dalvik.annotation.optimization.FastNative
|
|
13
14
|
import com.margelo.nitro.core.Promise
|
|
14
15
|
import com.margelo.nitro.core.NullType
|
|
15
16
|
import com.margelo.nitro.core.HybridObject
|
|
@@ -56,7 +57,7 @@ abstract class HybridTrackPlayerSpec: HybridObject() {
|
|
|
56
57
|
|
|
57
58
|
@DoNotStrip
|
|
58
59
|
@Keep
|
|
59
|
-
abstract fun getQueue(): Array<TrackItem
|
|
60
|
+
abstract fun getQueue(): Promise<Array<TrackItem>>
|
|
60
61
|
|
|
61
62
|
@DoNotStrip
|
|
62
63
|
@Keep
|
|
@@ -212,11 +213,11 @@ abstract class HybridTrackPlayerSpec: HybridObject() {
|
|
|
212
213
|
return Func_void_java(__result)
|
|
213
214
|
}
|
|
214
215
|
|
|
215
|
-
abstract fun onQueueChange(callback: (
|
|
216
|
+
abstract fun onQueueChange(callback: (delta: QueueChangeDelta, currentIndex: Double, reason: QueueChangeReason) -> Unit): () -> Unit
|
|
216
217
|
|
|
217
218
|
@DoNotStrip
|
|
218
219
|
@Keep
|
|
219
|
-
private fun onQueueChange_cxx(callback:
|
|
220
|
+
private fun onQueueChange_cxx(callback: Func_void_QueueChangeDelta_double_QueueChangeReason): Func_void {
|
|
220
221
|
val __result = onQueueChange(callback)
|
|
221
222
|
return Func_void_java(__result)
|
|
222
223
|
}
|
|
@@ -374,7 +375,7 @@ abstract class HybridTrackPlayerSpec: HybridObject() {
|
|
|
374
375
|
|
|
375
376
|
@DoNotStrip
|
|
376
377
|
@Keep
|
|
377
|
-
abstract fun getLookaheadCacheStatus(): CacheStatus
|
|
378
|
+
abstract fun getLookaheadCacheStatus(): Promise<CacheStatus>
|
|
378
379
|
|
|
379
380
|
@DoNotStrip
|
|
380
381
|
@Keep
|
|
@@ -420,6 +421,7 @@ abstract class HybridTrackPlayerSpec: HybridObject() {
|
|
|
420
421
|
@Keep
|
|
421
422
|
protected open class CxxPart(javaPart: HybridTrackPlayerSpec): HybridObject.CxxPart(javaPart) {
|
|
422
423
|
// C++ JHybridTrackPlayerSpec::CxxPart::initHybrid(...)
|
|
424
|
+
@FastNative
|
|
423
425
|
external override fun initHybrid(): HybridData
|
|
424
426
|
}
|
|
425
427
|
override fun createCxxPart(): CxxPart {
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/HybridVisualizerSpec.kt
CHANGED
|
@@ -10,6 +10,7 @@ package com.margelo.nitro.queueplayer
|
|
|
10
10
|
import androidx.annotation.Keep
|
|
11
11
|
import com.facebook.jni.HybridData
|
|
12
12
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
13
|
+
import dalvik.annotation.optimization.FastNative
|
|
13
14
|
import com.margelo.nitro.core.HybridObject
|
|
14
15
|
|
|
15
16
|
/**
|
|
@@ -51,6 +52,7 @@ abstract class HybridVisualizerSpec: HybridObject() {
|
|
|
51
52
|
@Keep
|
|
52
53
|
protected open class CxxPart(javaPart: HybridVisualizerSpec): HybridObject.CxxPart(javaPart) {
|
|
53
54
|
// C++ JHybridVisualizerSpec::CxxPart::initHybrid(...)
|
|
55
|
+
@FastNative
|
|
54
56
|
external override fun initHybrid(): HybridData
|
|
55
57
|
}
|
|
56
58
|
override fun createCxxPart(): CxxPart {
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/queueplayer/LookaheadCacheConfig.kt
CHANGED
|
@@ -23,7 +23,10 @@ data class LookaheadCacheConfig(
|
|
|
23
23
|
val enabled: Boolean,
|
|
24
24
|
@DoNotStrip
|
|
25
25
|
@Keep
|
|
26
|
-
val lookaheadCount: Double
|
|
26
|
+
val lookaheadCount: Double,
|
|
27
|
+
@DoNotStrip
|
|
28
|
+
@Keep
|
|
29
|
+
val allowsCellularAccess: Boolean?
|
|
27
30
|
) {
|
|
28
31
|
/* primary constructor */
|
|
29
32
|
|
|
@@ -32,12 +35,14 @@ data class LookaheadCacheConfig(
|
|
|
32
35
|
if (other !is LookaheadCacheConfig) return false
|
|
33
36
|
return Objects.deepEquals(this.enabled, other.enabled)
|
|
34
37
|
&& Objects.deepEquals(this.lookaheadCount, other.lookaheadCount)
|
|
38
|
+
&& Objects.deepEquals(this.allowsCellularAccess, other.allowsCellularAccess)
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
override fun hashCode(): Int {
|
|
38
42
|
return arrayOf<Any?>(
|
|
39
43
|
enabled,
|
|
40
|
-
lookaheadCount
|
|
44
|
+
lookaheadCount,
|
|
45
|
+
allowsCellularAccess
|
|
41
46
|
).contentDeepHashCode()
|
|
42
47
|
}
|
|
43
48
|
|
|
@@ -49,8 +54,8 @@ data class LookaheadCacheConfig(
|
|
|
49
54
|
@Keep
|
|
50
55
|
@Suppress("unused")
|
|
51
56
|
@JvmStatic
|
|
52
|
-
private fun fromCpp(enabled: Boolean, lookaheadCount: Double): LookaheadCacheConfig {
|
|
53
|
-
return LookaheadCacheConfig(enabled, lookaheadCount)
|
|
57
|
+
private fun fromCpp(enabled: Boolean, lookaheadCount: Double, allowsCellularAccess: Boolean?): LookaheadCacheConfig {
|
|
58
|
+
return LookaheadCacheConfig(enabled, lookaheadCount, allowsCellularAccess)
|
|
54
59
|
}
|
|
55
60
|
}
|
|
56
61
|
}
|
|
@@ -44,6 +44,9 @@ data class PlayerConfig(
|
|
|
44
44
|
val audioCategoryOptions: AudioCategoryOptions?,
|
|
45
45
|
@DoNotStrip
|
|
46
46
|
@Keep
|
|
47
|
+
val voiceVocabularyDonationEnabled: Boolean?,
|
|
48
|
+
@DoNotStrip
|
|
49
|
+
@Keep
|
|
47
50
|
val visualizationEnabled: Boolean?,
|
|
48
51
|
@DoNotStrip
|
|
49
52
|
@Keep
|
|
@@ -77,6 +80,7 @@ data class PlayerConfig(
|
|
|
77
80
|
&& Objects.deepEquals(this.networkTimeoutMs, other.networkTimeoutMs)
|
|
78
81
|
&& Objects.deepEquals(this.audioContentType, other.audioContentType)
|
|
79
82
|
&& Objects.deepEquals(this.audioCategoryOptions, other.audioCategoryOptions)
|
|
83
|
+
&& Objects.deepEquals(this.voiceVocabularyDonationEnabled, other.voiceVocabularyDonationEnabled)
|
|
80
84
|
&& Objects.deepEquals(this.visualizationEnabled, other.visualizationEnabled)
|
|
81
85
|
&& Objects.deepEquals(this.clampSeekToBuffered, other.clampSeekToBuffered)
|
|
82
86
|
&& Objects.deepEquals(this.skipToPreviousBehavior, other.skipToPreviousBehavior)
|
|
@@ -96,6 +100,7 @@ data class PlayerConfig(
|
|
|
96
100
|
networkTimeoutMs,
|
|
97
101
|
audioContentType,
|
|
98
102
|
audioCategoryOptions,
|
|
103
|
+
voiceVocabularyDonationEnabled,
|
|
99
104
|
visualizationEnabled,
|
|
100
105
|
clampSeekToBuffered,
|
|
101
106
|
skipToPreviousBehavior,
|
|
@@ -114,8 +119,8 @@ data class PlayerConfig(
|
|
|
114
119
|
@Keep
|
|
115
120
|
@Suppress("unused")
|
|
116
121
|
@JvmStatic
|
|
117
|
-
private fun fromCpp(httpHeaders: Map<String, String>?, userAgent: String?, placeholderArtworkUri: String?, autoRetries: Double?, retryBackoffMs: Double?, networkTimeoutMs: Double?, audioContentType: AudioContentType?, audioCategoryOptions: AudioCategoryOptions?, visualizationEnabled: Boolean?, clampSeekToBuffered: Boolean?, skipToPreviousBehavior: SkipToPreviousBehavior?, lookaheadCacheMaxSizeMb: Double?, lookaheadCacheEvictionPolicy: EvictionPolicy?, progressUpdateIntervalMs: Double?, backgroundProgressUpdateIntervalMs: Double?): PlayerConfig {
|
|
118
|
-
return PlayerConfig(httpHeaders, userAgent, placeholderArtworkUri, autoRetries, retryBackoffMs, networkTimeoutMs, audioContentType, audioCategoryOptions, visualizationEnabled, clampSeekToBuffered, skipToPreviousBehavior, lookaheadCacheMaxSizeMb, lookaheadCacheEvictionPolicy, progressUpdateIntervalMs, backgroundProgressUpdateIntervalMs)
|
|
122
|
+
private fun fromCpp(httpHeaders: Map<String, String>?, userAgent: String?, placeholderArtworkUri: String?, autoRetries: Double?, retryBackoffMs: Double?, networkTimeoutMs: Double?, audioContentType: AudioContentType?, audioCategoryOptions: AudioCategoryOptions?, voiceVocabularyDonationEnabled: Boolean?, visualizationEnabled: Boolean?, clampSeekToBuffered: Boolean?, skipToPreviousBehavior: SkipToPreviousBehavior?, lookaheadCacheMaxSizeMb: Double?, lookaheadCacheEvictionPolicy: EvictionPolicy?, progressUpdateIntervalMs: Double?, backgroundProgressUpdateIntervalMs: Double?): PlayerConfig {
|
|
123
|
+
return PlayerConfig(httpHeaders, userAgent, placeholderArtworkUri, autoRetries, retryBackoffMs, networkTimeoutMs, audioContentType, audioCategoryOptions, voiceVocabularyDonationEnabled, visualizationEnabled, clampSeekToBuffered, skipToPreviousBehavior, lookaheadCacheMaxSizeMb, lookaheadCacheEvictionPolicy, progressUpdateIntervalMs, backgroundProgressUpdateIntervalMs)
|
|
119
124
|
}
|
|
120
125
|
}
|
|
121
126
|
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// QueueChangeDelta.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.queueplayer
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
import java.util.Objects
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Represents the JavaScript object/struct "QueueChangeDelta".
|
|
17
|
+
*/
|
|
18
|
+
@DoNotStrip
|
|
19
|
+
@Keep
|
|
20
|
+
data class QueueChangeDelta(
|
|
21
|
+
@DoNotStrip
|
|
22
|
+
@Keep
|
|
23
|
+
val revision: Double,
|
|
24
|
+
@DoNotStrip
|
|
25
|
+
@Keep
|
|
26
|
+
val length: Double,
|
|
27
|
+
@DoNotStrip
|
|
28
|
+
@Keep
|
|
29
|
+
val inserted: Array<TrackItem>,
|
|
30
|
+
@DoNotStrip
|
|
31
|
+
@Keep
|
|
32
|
+
val insertedAt: Double,
|
|
33
|
+
@DoNotStrip
|
|
34
|
+
@Keep
|
|
35
|
+
val removed: DoubleArray,
|
|
36
|
+
@DoNotStrip
|
|
37
|
+
@Keep
|
|
38
|
+
val movedFrom: Double,
|
|
39
|
+
@DoNotStrip
|
|
40
|
+
@Keep
|
|
41
|
+
val movedTo: Double,
|
|
42
|
+
@DoNotStrip
|
|
43
|
+
@Keep
|
|
44
|
+
val order: DoubleArray
|
|
45
|
+
) {
|
|
46
|
+
/* primary constructor */
|
|
47
|
+
|
|
48
|
+
override fun equals(other: Any?): Boolean {
|
|
49
|
+
if (this === other) return true
|
|
50
|
+
if (other !is QueueChangeDelta) return false
|
|
51
|
+
return Objects.deepEquals(this.revision, other.revision)
|
|
52
|
+
&& Objects.deepEquals(this.length, other.length)
|
|
53
|
+
&& Objects.deepEquals(this.inserted, other.inserted)
|
|
54
|
+
&& Objects.deepEquals(this.insertedAt, other.insertedAt)
|
|
55
|
+
&& Objects.deepEquals(this.removed, other.removed)
|
|
56
|
+
&& Objects.deepEquals(this.movedFrom, other.movedFrom)
|
|
57
|
+
&& Objects.deepEquals(this.movedTo, other.movedTo)
|
|
58
|
+
&& Objects.deepEquals(this.order, other.order)
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
override fun hashCode(): Int {
|
|
62
|
+
return arrayOf<Any?>(
|
|
63
|
+
revision,
|
|
64
|
+
length,
|
|
65
|
+
inserted,
|
|
66
|
+
insertedAt,
|
|
67
|
+
removed,
|
|
68
|
+
movedFrom,
|
|
69
|
+
movedTo,
|
|
70
|
+
order
|
|
71
|
+
).contentDeepHashCode()
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
companion object {
|
|
75
|
+
/**
|
|
76
|
+
* Constructor called from C++
|
|
77
|
+
*/
|
|
78
|
+
@DoNotStrip
|
|
79
|
+
@Keep
|
|
80
|
+
@Suppress("unused")
|
|
81
|
+
@JvmStatic
|
|
82
|
+
private fun fromCpp(revision: Double, length: Double, inserted: Array<TrackItem>, insertedAt: Double, removed: DoubleArray, movedFrom: Double, movedTo: Double, order: DoubleArray): QueueChangeDelta {
|
|
83
|
+
return QueueChangeDelta(revision, length, inserted, insertedAt, removed, movedFrom, movedTo, order)
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
@@ -41,7 +41,19 @@ data class TrackItem(
|
|
|
41
41
|
val artworkUrl: String?,
|
|
42
42
|
@DoNotStrip
|
|
43
43
|
@Keep
|
|
44
|
-
val extras: Map<String, String
|
|
44
|
+
val extras: Map<String, String>?,
|
|
45
|
+
@DoNotStrip
|
|
46
|
+
@Keep
|
|
47
|
+
val replayGainTrackGain: Double?,
|
|
48
|
+
@DoNotStrip
|
|
49
|
+
@Keep
|
|
50
|
+
val replayGainTrackPeak: Double?,
|
|
51
|
+
@DoNotStrip
|
|
52
|
+
@Keep
|
|
53
|
+
val replayGainAlbumGain: Double?,
|
|
54
|
+
@DoNotStrip
|
|
55
|
+
@Keep
|
|
56
|
+
val replayGainAlbumPeak: Double?
|
|
45
57
|
) {
|
|
46
58
|
/* primary constructor */
|
|
47
59
|
|
|
@@ -56,6 +68,10 @@ data class TrackItem(
|
|
|
56
68
|
&& Objects.deepEquals(this.duration, other.duration)
|
|
57
69
|
&& Objects.deepEquals(this.artworkUrl, other.artworkUrl)
|
|
58
70
|
&& Objects.deepEquals(this.extras, other.extras)
|
|
71
|
+
&& Objects.deepEquals(this.replayGainTrackGain, other.replayGainTrackGain)
|
|
72
|
+
&& Objects.deepEquals(this.replayGainTrackPeak, other.replayGainTrackPeak)
|
|
73
|
+
&& Objects.deepEquals(this.replayGainAlbumGain, other.replayGainAlbumGain)
|
|
74
|
+
&& Objects.deepEquals(this.replayGainAlbumPeak, other.replayGainAlbumPeak)
|
|
59
75
|
}
|
|
60
76
|
|
|
61
77
|
override fun hashCode(): Int {
|
|
@@ -67,7 +83,11 @@ data class TrackItem(
|
|
|
67
83
|
album,
|
|
68
84
|
duration,
|
|
69
85
|
artworkUrl,
|
|
70
|
-
extras
|
|
86
|
+
extras,
|
|
87
|
+
replayGainTrackGain,
|
|
88
|
+
replayGainTrackPeak,
|
|
89
|
+
replayGainAlbumGain,
|
|
90
|
+
replayGainAlbumPeak
|
|
71
91
|
).contentDeepHashCode()
|
|
72
92
|
}
|
|
73
93
|
|
|
@@ -79,8 +99,8 @@ data class TrackItem(
|
|
|
79
99
|
@Keep
|
|
80
100
|
@Suppress("unused")
|
|
81
101
|
@JvmStatic
|
|
82
|
-
private fun fromCpp(id: String?, url: String, title: String?, artist: String?, album: String?, duration: Double?, artworkUrl: String?, extras: Map<String, String
|
|
83
|
-
return TrackItem(id, url, title, artist, album, duration, artworkUrl, extras)
|
|
102
|
+
private fun fromCpp(id: String?, url: String, title: String?, artist: String?, album: String?, duration: Double?, artworkUrl: String?, extras: Map<String, String>?, replayGainTrackGain: Double?, replayGainTrackPeak: Double?, replayGainAlbumGain: Double?, replayGainAlbumPeak: Double?): TrackItem {
|
|
103
|
+
return TrackItem(id, url, title, artist, album, duration, artworkUrl, extras, replayGainTrackGain, replayGainTrackPeak, replayGainAlbumGain, replayGainAlbumPeak)
|
|
84
104
|
}
|
|
85
105
|
}
|
|
86
106
|
}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
#include "JHybridTrackPlayerSpec.hpp"
|
|
30
30
|
#include "JFunc_void_PlayerState_StateChangeReason.hpp"
|
|
31
31
|
#include "JFunc_void_std__optional_TrackItem__double_TrackChangeReason_std__optional_double_.hpp"
|
|
32
|
-
#include "
|
|
32
|
+
#include "JFunc_void_QueueChangeDelta_double_QueueChangeReason.hpp"
|
|
33
33
|
#include "JFunc_void_PlayerProgress.hpp"
|
|
34
34
|
#include "JFunc_void_double_double.hpp"
|
|
35
35
|
#include "JFunc_void_PlaybackError.hpp"
|
|
@@ -107,7 +107,7 @@ void registerAllNatives() {
|
|
|
107
107
|
margelo::nitro::queueplayer::JHybridTrackPlayerSpec::CxxPart::registerNatives();
|
|
108
108
|
margelo::nitro::queueplayer::JFunc_void_PlayerState_StateChangeReason_cxx::registerNatives();
|
|
109
109
|
margelo::nitro::queueplayer::JFunc_void_std__optional_TrackItem__double_TrackChangeReason_std__optional_double__cxx::registerNatives();
|
|
110
|
-
margelo::nitro::queueplayer::
|
|
110
|
+
margelo::nitro::queueplayer::JFunc_void_QueueChangeDelta_double_QueueChangeReason_cxx::registerNatives();
|
|
111
111
|
margelo::nitro::queueplayer::JFunc_void_PlayerProgress_cxx::registerNatives();
|
|
112
112
|
margelo::nitro::queueplayer::JFunc_void_double_double_cxx::registerNatives();
|
|
113
113
|
margelo::nitro::queueplayer::JFunc_void_PlaybackError_cxx::registerNatives();
|
|
@@ -137,6 +137,14 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
137
137
|
return swiftPart.toUnsafe();
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
+
// pragma MARK: std::function<void(const std::vector<TrackItem>& /* result */)>
|
|
141
|
+
Func_void_std__vector_TrackItem_ create_Func_void_std__vector_TrackItem_(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
142
|
+
auto swiftClosure = QueuePlayer::Func_void_std__vector_TrackItem_::fromUnsafe(swiftClosureWrapper);
|
|
143
|
+
return [swiftClosure = std::move(swiftClosure)](const std::vector<TrackItem>& result) mutable -> void {
|
|
144
|
+
swiftClosure.call(result);
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
|
|
140
148
|
// pragma MARK: std::function<void(const ShuffleResult& /* result */)>
|
|
141
149
|
Func_void_ShuffleResult create_Func_void_ShuffleResult(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
142
150
|
auto swiftClosure = QueuePlayer::Func_void_ShuffleResult::fromUnsafe(swiftClosureWrapper);
|
|
@@ -161,11 +169,11 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
161
169
|
};
|
|
162
170
|
}
|
|
163
171
|
|
|
164
|
-
// pragma MARK: std::function<void(const
|
|
165
|
-
|
|
166
|
-
auto swiftClosure = QueuePlayer::
|
|
167
|
-
return [swiftClosure = std::move(swiftClosure)](const
|
|
168
|
-
swiftClosure.call(
|
|
172
|
+
// pragma MARK: std::function<void(const QueueChangeDelta& /* delta */, double /* currentIndex */, QueueChangeReason /* reason */)>
|
|
173
|
+
Func_void_QueueChangeDelta_double_QueueChangeReason create_Func_void_QueueChangeDelta_double_QueueChangeReason(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
174
|
+
auto swiftClosure = QueuePlayer::Func_void_QueueChangeDelta_double_QueueChangeReason::fromUnsafe(swiftClosureWrapper);
|
|
175
|
+
return [swiftClosure = std::move(swiftClosure)](const QueueChangeDelta& delta, double currentIndex, QueueChangeReason reason) mutable -> void {
|
|
176
|
+
swiftClosure.call(delta, currentIndex, static_cast<int>(reason));
|
|
169
177
|
};
|
|
170
178
|
}
|
|
171
179
|
|
|
@@ -242,14 +250,6 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
242
250
|
};
|
|
243
251
|
}
|
|
244
252
|
|
|
245
|
-
// pragma MARK: std::function<void(const std::vector<TrackItem>& /* result */)>
|
|
246
|
-
Func_void_std__vector_TrackItem_ create_Func_void_std__vector_TrackItem_(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
247
|
-
auto swiftClosure = QueuePlayer::Func_void_std__vector_TrackItem_::fromUnsafe(swiftClosureWrapper);
|
|
248
|
-
return [swiftClosure = std::move(swiftClosure)](const std::vector<TrackItem>& result) mutable -> void {
|
|
249
|
-
swiftClosure.call(result);
|
|
250
|
-
};
|
|
251
|
-
}
|
|
252
|
-
|
|
253
253
|
// pragma MARK: std::function<std::shared_ptr<Promise<std::shared_ptr<Promise<std::vector<TrackItem>>>>>(const MediaSearchRequest& /* request */)>
|
|
254
254
|
Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_TrackItem______MediaSearchRequest create_Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_TrackItem______MediaSearchRequest(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
255
255
|
auto swiftClosure = QueuePlayer::Func_std__shared_ptr_Promise_std__shared_ptr_Promise_std__vector_TrackItem______MediaSearchRequest::fromUnsafe(swiftClosureWrapper);
|
|
@@ -284,11 +284,11 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
284
284
|
};
|
|
285
285
|
}
|
|
286
286
|
|
|
287
|
-
// pragma MARK: std::function<void(const CacheStatus& /*
|
|
287
|
+
// pragma MARK: std::function<void(const CacheStatus& /* result */)>
|
|
288
288
|
Func_void_CacheStatus create_Func_void_CacheStatus(void* NON_NULL swiftClosureWrapper) noexcept {
|
|
289
289
|
auto swiftClosure = QueuePlayer::Func_void_CacheStatus::fromUnsafe(swiftClosureWrapper);
|
|
290
|
-
return [swiftClosure = std::move(swiftClosure)](const CacheStatus&
|
|
291
|
-
swiftClosure.call(
|
|
290
|
+
return [swiftClosure = std::move(swiftClosure)](const CacheStatus& result) mutable -> void {
|
|
291
|
+
swiftClosure.call(result);
|
|
292
292
|
};
|
|
293
293
|
}
|
|
294
294
|
|
|
@@ -98,6 +98,8 @@ namespace margelo::nitro::queueplayer { struct PlaybackMode; }
|
|
|
98
98
|
namespace margelo::nitro::queueplayer { struct PlayerProgress; }
|
|
99
99
|
// Forward declaration of `PlayerState` to properly resolve imports.
|
|
100
100
|
namespace margelo::nitro::queueplayer { enum class PlayerState; }
|
|
101
|
+
// Forward declaration of `QueueChangeDelta` to properly resolve imports.
|
|
102
|
+
namespace margelo::nitro::queueplayer { struct QueueChangeDelta; }
|
|
101
103
|
// Forward declaration of `QueueChangeReason` to properly resolve imports.
|
|
102
104
|
namespace margelo::nitro::queueplayer { enum class QueueChangeReason; }
|
|
103
105
|
// Forward declaration of `RemoteControlOptions` to properly resolve imports.
|
|
@@ -184,6 +186,7 @@ namespace QueuePlayer { class HybridVisualizerSpec_cxx; }
|
|
|
184
186
|
#include "PlaybackMode.hpp"
|
|
185
187
|
#include "PlayerProgress.hpp"
|
|
186
188
|
#include "PlayerState.hpp"
|
|
189
|
+
#include "QueueChangeDelta.hpp"
|
|
187
190
|
#include "QueueChangeReason.hpp"
|
|
188
191
|
#include "RemoteControlOptions.hpp"
|
|
189
192
|
#include "ReplayGainMode.hpp"
|
|
@@ -829,6 +832,40 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
829
832
|
return vector;
|
|
830
833
|
}
|
|
831
834
|
|
|
835
|
+
// pragma MARK: std::shared_ptr<Promise<std::vector<TrackItem>>>
|
|
836
|
+
/**
|
|
837
|
+
* Specialized version of `std::shared_ptr<Promise<std::vector<TrackItem>>>`.
|
|
838
|
+
*/
|
|
839
|
+
using std__shared_ptr_Promise_std__vector_TrackItem___ = std::shared_ptr<Promise<std::vector<TrackItem>>>;
|
|
840
|
+
inline std::shared_ptr<Promise<std::vector<TrackItem>>> create_std__shared_ptr_Promise_std__vector_TrackItem___() noexcept {
|
|
841
|
+
return Promise<std::vector<TrackItem>>::create();
|
|
842
|
+
}
|
|
843
|
+
inline PromiseHolder<std::vector<TrackItem>> wrap_std__shared_ptr_Promise_std__vector_TrackItem___(std::shared_ptr<Promise<std::vector<TrackItem>>> promise) noexcept {
|
|
844
|
+
return PromiseHolder<std::vector<TrackItem>>(std::move(promise));
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
// pragma MARK: std::function<void(const std::vector<TrackItem>& /* result */)>
|
|
848
|
+
/**
|
|
849
|
+
* Specialized version of `std::function<void(const std::vector<TrackItem>&)>`.
|
|
850
|
+
*/
|
|
851
|
+
using Func_void_std__vector_TrackItem_ = std::function<void(const std::vector<TrackItem>& /* result */)>;
|
|
852
|
+
/**
|
|
853
|
+
* Wrapper class for a `std::function<void(const std::vector<TrackItem>& / * result * /)>`, this can be used from Swift.
|
|
854
|
+
*/
|
|
855
|
+
class Func_void_std__vector_TrackItem__Wrapper final {
|
|
856
|
+
public:
|
|
857
|
+
explicit Func_void_std__vector_TrackItem__Wrapper(std::function<void(const std::vector<TrackItem>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::vector<TrackItem>& /* result */)>>(std::move(func))) {}
|
|
858
|
+
inline void call(std::vector<TrackItem> result) const noexcept {
|
|
859
|
+
_function->operator()(result);
|
|
860
|
+
}
|
|
861
|
+
private:
|
|
862
|
+
std::unique_ptr<std::function<void(const std::vector<TrackItem>& /* result */)>> _function;
|
|
863
|
+
} SWIFT_NONCOPYABLE;
|
|
864
|
+
Func_void_std__vector_TrackItem_ create_Func_void_std__vector_TrackItem_(void* NON_NULL swiftClosureWrapper) noexcept;
|
|
865
|
+
inline Func_void_std__vector_TrackItem__Wrapper wrap_Func_void_std__vector_TrackItem_(Func_void_std__vector_TrackItem_ value) noexcept {
|
|
866
|
+
return Func_void_std__vector_TrackItem__Wrapper(std::move(value));
|
|
867
|
+
}
|
|
868
|
+
|
|
832
869
|
// pragma MARK: std::optional<TrackItem>
|
|
833
870
|
/**
|
|
834
871
|
* Specialized version of `std::optional<TrackItem>`.
|
|
@@ -937,26 +974,26 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
937
974
|
return Func_void_std__optional_TrackItem__double_TrackChangeReason_std__optional_double__Wrapper(std::move(value));
|
|
938
975
|
}
|
|
939
976
|
|
|
940
|
-
// pragma MARK: std::function<void(const
|
|
977
|
+
// pragma MARK: std::function<void(const QueueChangeDelta& /* delta */, double /* currentIndex */, QueueChangeReason /* reason */)>
|
|
941
978
|
/**
|
|
942
|
-
* Specialized version of `std::function<void(const
|
|
979
|
+
* Specialized version of `std::function<void(const QueueChangeDelta&, double, QueueChangeReason)>`.
|
|
943
980
|
*/
|
|
944
|
-
using
|
|
981
|
+
using Func_void_QueueChangeDelta_double_QueueChangeReason = std::function<void(const QueueChangeDelta& /* delta */, double /* currentIndex */, QueueChangeReason /* reason */)>;
|
|
945
982
|
/**
|
|
946
|
-
* Wrapper class for a `std::function<void(const
|
|
983
|
+
* Wrapper class for a `std::function<void(const QueueChangeDelta& / * delta * /, double / * currentIndex * /, QueueChangeReason / * reason * /)>`, this can be used from Swift.
|
|
947
984
|
*/
|
|
948
|
-
class
|
|
985
|
+
class Func_void_QueueChangeDelta_double_QueueChangeReason_Wrapper final {
|
|
949
986
|
public:
|
|
950
|
-
explicit
|
|
951
|
-
inline void call(
|
|
952
|
-
_function->operator()(
|
|
987
|
+
explicit Func_void_QueueChangeDelta_double_QueueChangeReason_Wrapper(std::function<void(const QueueChangeDelta& /* delta */, double /* currentIndex */, QueueChangeReason /* reason */)>&& func): _function(std::make_unique<std::function<void(const QueueChangeDelta& /* delta */, double /* currentIndex */, QueueChangeReason /* reason */)>>(std::move(func))) {}
|
|
988
|
+
inline void call(QueueChangeDelta delta, double currentIndex, int reason) const noexcept {
|
|
989
|
+
_function->operator()(delta, currentIndex, static_cast<QueueChangeReason>(reason));
|
|
953
990
|
}
|
|
954
991
|
private:
|
|
955
|
-
std::unique_ptr<std::function<void(const
|
|
992
|
+
std::unique_ptr<std::function<void(const QueueChangeDelta& /* delta */, double /* currentIndex */, QueueChangeReason /* reason */)>> _function;
|
|
956
993
|
} SWIFT_NONCOPYABLE;
|
|
957
|
-
|
|
958
|
-
inline
|
|
959
|
-
return
|
|
994
|
+
Func_void_QueueChangeDelta_double_QueueChangeReason create_Func_void_QueueChangeDelta_double_QueueChangeReason(void* NON_NULL swiftClosureWrapper) noexcept;
|
|
995
|
+
inline Func_void_QueueChangeDelta_double_QueueChangeReason_Wrapper wrap_Func_void_QueueChangeDelta_double_QueueChangeReason(Func_void_QueueChangeDelta_double_QueueChangeReason value) noexcept {
|
|
996
|
+
return Func_void_QueueChangeDelta_double_QueueChangeReason_Wrapper(std::move(value));
|
|
960
997
|
}
|
|
961
998
|
|
|
962
999
|
// pragma MARK: std::function<void(const PlayerProgress& /* progress */)>
|
|
@@ -1219,40 +1256,6 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
1219
1256
|
return Func_void_std__shared_ptr_Promise_std__vector_BrowseItem____Wrapper(std::move(value));
|
|
1220
1257
|
}
|
|
1221
1258
|
|
|
1222
|
-
// pragma MARK: std::shared_ptr<Promise<std::vector<TrackItem>>>
|
|
1223
|
-
/**
|
|
1224
|
-
* Specialized version of `std::shared_ptr<Promise<std::vector<TrackItem>>>`.
|
|
1225
|
-
*/
|
|
1226
|
-
using std__shared_ptr_Promise_std__vector_TrackItem___ = std::shared_ptr<Promise<std::vector<TrackItem>>>;
|
|
1227
|
-
inline std::shared_ptr<Promise<std::vector<TrackItem>>> create_std__shared_ptr_Promise_std__vector_TrackItem___() noexcept {
|
|
1228
|
-
return Promise<std::vector<TrackItem>>::create();
|
|
1229
|
-
}
|
|
1230
|
-
inline PromiseHolder<std::vector<TrackItem>> wrap_std__shared_ptr_Promise_std__vector_TrackItem___(std::shared_ptr<Promise<std::vector<TrackItem>>> promise) noexcept {
|
|
1231
|
-
return PromiseHolder<std::vector<TrackItem>>(std::move(promise));
|
|
1232
|
-
}
|
|
1233
|
-
|
|
1234
|
-
// pragma MARK: std::function<void(const std::vector<TrackItem>& /* result */)>
|
|
1235
|
-
/**
|
|
1236
|
-
* Specialized version of `std::function<void(const std::vector<TrackItem>&)>`.
|
|
1237
|
-
*/
|
|
1238
|
-
using Func_void_std__vector_TrackItem_ = std::function<void(const std::vector<TrackItem>& /* result */)>;
|
|
1239
|
-
/**
|
|
1240
|
-
* Wrapper class for a `std::function<void(const std::vector<TrackItem>& / * result * /)>`, this can be used from Swift.
|
|
1241
|
-
*/
|
|
1242
|
-
class Func_void_std__vector_TrackItem__Wrapper final {
|
|
1243
|
-
public:
|
|
1244
|
-
explicit Func_void_std__vector_TrackItem__Wrapper(std::function<void(const std::vector<TrackItem>& /* result */)>&& func): _function(std::make_unique<std::function<void(const std::vector<TrackItem>& /* result */)>>(std::move(func))) {}
|
|
1245
|
-
inline void call(std::vector<TrackItem> result) const noexcept {
|
|
1246
|
-
_function->operator()(result);
|
|
1247
|
-
}
|
|
1248
|
-
private:
|
|
1249
|
-
std::unique_ptr<std::function<void(const std::vector<TrackItem>& /* result */)>> _function;
|
|
1250
|
-
} SWIFT_NONCOPYABLE;
|
|
1251
|
-
Func_void_std__vector_TrackItem_ create_Func_void_std__vector_TrackItem_(void* NON_NULL swiftClosureWrapper) noexcept;
|
|
1252
|
-
inline Func_void_std__vector_TrackItem__Wrapper wrap_Func_void_std__vector_TrackItem_(Func_void_std__vector_TrackItem_ value) noexcept {
|
|
1253
|
-
return Func_void_std__vector_TrackItem__Wrapper(std::move(value));
|
|
1254
|
-
}
|
|
1255
|
-
|
|
1256
1259
|
// pragma MARK: std::optional<MediaSearchType>
|
|
1257
1260
|
/**
|
|
1258
1261
|
* Specialized version of `std::optional<MediaSearchType>`.
|
|
@@ -1456,22 +1459,34 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
1456
1459
|
return Func_void_ServiceReadyReason_Wrapper(std::move(value));
|
|
1457
1460
|
}
|
|
1458
1461
|
|
|
1459
|
-
// pragma MARK: std::
|
|
1462
|
+
// pragma MARK: std::shared_ptr<Promise<CacheStatus>>
|
|
1463
|
+
/**
|
|
1464
|
+
* Specialized version of `std::shared_ptr<Promise<CacheStatus>>`.
|
|
1465
|
+
*/
|
|
1466
|
+
using std__shared_ptr_Promise_CacheStatus__ = std::shared_ptr<Promise<CacheStatus>>;
|
|
1467
|
+
inline std::shared_ptr<Promise<CacheStatus>> create_std__shared_ptr_Promise_CacheStatus__() noexcept {
|
|
1468
|
+
return Promise<CacheStatus>::create();
|
|
1469
|
+
}
|
|
1470
|
+
inline PromiseHolder<CacheStatus> wrap_std__shared_ptr_Promise_CacheStatus__(std::shared_ptr<Promise<CacheStatus>> promise) noexcept {
|
|
1471
|
+
return PromiseHolder<CacheStatus>(std::move(promise));
|
|
1472
|
+
}
|
|
1473
|
+
|
|
1474
|
+
// pragma MARK: std::function<void(const CacheStatus& /* result */)>
|
|
1460
1475
|
/**
|
|
1461
1476
|
* Specialized version of `std::function<void(const CacheStatus&)>`.
|
|
1462
1477
|
*/
|
|
1463
|
-
using Func_void_CacheStatus = std::function<void(const CacheStatus& /*
|
|
1478
|
+
using Func_void_CacheStatus = std::function<void(const CacheStatus& /* result */)>;
|
|
1464
1479
|
/**
|
|
1465
|
-
* Wrapper class for a `std::function<void(const CacheStatus& / *
|
|
1480
|
+
* Wrapper class for a `std::function<void(const CacheStatus& / * result * /)>`, this can be used from Swift.
|
|
1466
1481
|
*/
|
|
1467
1482
|
class Func_void_CacheStatus_Wrapper final {
|
|
1468
1483
|
public:
|
|
1469
|
-
explicit Func_void_CacheStatus_Wrapper(std::function<void(const CacheStatus& /*
|
|
1470
|
-
inline void call(CacheStatus
|
|
1471
|
-
_function->operator()(
|
|
1484
|
+
explicit Func_void_CacheStatus_Wrapper(std::function<void(const CacheStatus& /* result */)>&& func): _function(std::make_unique<std::function<void(const CacheStatus& /* result */)>>(std::move(func))) {}
|
|
1485
|
+
inline void call(CacheStatus result) const noexcept {
|
|
1486
|
+
_function->operator()(result);
|
|
1472
1487
|
}
|
|
1473
1488
|
private:
|
|
1474
|
-
std::unique_ptr<std::function<void(const CacheStatus& /*
|
|
1489
|
+
std::unique_ptr<std::function<void(const CacheStatus& /* result */)>> _function;
|
|
1475
1490
|
} SWIFT_NONCOPYABLE;
|
|
1476
1491
|
Func_void_CacheStatus create_Func_void_CacheStatus(void* NON_NULL swiftClosureWrapper) noexcept;
|
|
1477
1492
|
inline Func_void_CacheStatus_Wrapper wrap_Func_void_CacheStatus(Func_void_CacheStatus value) noexcept {
|
|
@@ -1674,13 +1689,13 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
1674
1689
|
using std__weak_ptr_HybridTrackPlayerSpec_ = std::weak_ptr<HybridTrackPlayerSpec>;
|
|
1675
1690
|
inline std__weak_ptr_HybridTrackPlayerSpec_ weakify_std__shared_ptr_HybridTrackPlayerSpec_(const std::shared_ptr<HybridTrackPlayerSpec>& strong) noexcept { return strong; }
|
|
1676
1691
|
|
|
1677
|
-
// pragma MARK: Result<std::vector<TrackItem
|
|
1678
|
-
using
|
|
1679
|
-
inline
|
|
1680
|
-
return Result<std::vector<TrackItem
|
|
1692
|
+
// pragma MARK: Result<std::shared_ptr<Promise<std::vector<TrackItem>>>>
|
|
1693
|
+
using Result_std__shared_ptr_Promise_std__vector_TrackItem____ = Result<std::shared_ptr<Promise<std::vector<TrackItem>>>>;
|
|
1694
|
+
inline Result_std__shared_ptr_Promise_std__vector_TrackItem____ create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(const std::shared_ptr<Promise<std::vector<TrackItem>>>& value) noexcept {
|
|
1695
|
+
return Result<std::shared_ptr<Promise<std::vector<TrackItem>>>>::withValue(value);
|
|
1681
1696
|
}
|
|
1682
|
-
inline
|
|
1683
|
-
return Result<std::vector<TrackItem
|
|
1697
|
+
inline Result_std__shared_ptr_Promise_std__vector_TrackItem____ create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(const std::exception_ptr& error) noexcept {
|
|
1698
|
+
return Result<std::shared_ptr<Promise<std::vector<TrackItem>>>>::withError(error);
|
|
1684
1699
|
}
|
|
1685
1700
|
|
|
1686
1701
|
// pragma MARK: Result<PlaybackMode>
|
|
@@ -1773,13 +1788,13 @@ namespace margelo::nitro::queueplayer::bridge::swift {
|
|
|
1773
1788
|
return Result<void>::withError(error);
|
|
1774
1789
|
}
|
|
1775
1790
|
|
|
1776
|
-
// pragma MARK: Result<CacheStatus
|
|
1777
|
-
using
|
|
1778
|
-
inline
|
|
1779
|
-
return Result<CacheStatus
|
|
1791
|
+
// pragma MARK: Result<std::shared_ptr<Promise<CacheStatus>>>
|
|
1792
|
+
using Result_std__shared_ptr_Promise_CacheStatus___ = Result<std::shared_ptr<Promise<CacheStatus>>>;
|
|
1793
|
+
inline Result_std__shared_ptr_Promise_CacheStatus___ create_Result_std__shared_ptr_Promise_CacheStatus___(const std::shared_ptr<Promise<CacheStatus>>& value) noexcept {
|
|
1794
|
+
return Result<std::shared_ptr<Promise<CacheStatus>>>::withValue(value);
|
|
1780
1795
|
}
|
|
1781
|
-
inline
|
|
1782
|
-
return Result<CacheStatus
|
|
1796
|
+
inline Result_std__shared_ptr_Promise_CacheStatus___ create_Result_std__shared_ptr_Promise_CacheStatus___(const std::exception_ptr& error) noexcept {
|
|
1797
|
+
return Result<std::shared_ptr<Promise<CacheStatus>>>::withError(error);
|
|
1783
1798
|
}
|
|
1784
1799
|
|
|
1785
1800
|
// pragma MARK: Result<ReplayGainMode>
|