react-native-audio-browser 0.2.0-next.1 → 0.2.0-next.11
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/README.md +22 -18
- package/android/build.gradle +13 -10
- package/android/gradle.properties +2 -2
- package/android/src/main/AndroidManifest.xml +3 -1
- package/android/src/main/java/com/audiobrowser/AudioBrowser.kt +76 -21
- 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/ServiceBinding.kt +48 -0
- package/android/src/main/java/com/audiobrowser/browser/BrowserManager.kt +1 -2
- package/android/src/main/java/com/audiobrowser/browser/BrowserUrlResolution.kt +1 -2
- package/android/src/main/java/com/audiobrowser/browser/SectionScope.kt +6 -7
- package/android/src/main/java/com/audiobrowser/http/HttpClient.kt +20 -3
- package/android/src/main/java/com/audiobrowser/model/PlayerUpdateOptions.kt +11 -11
- package/android/src/main/java/com/audiobrowser/player/CapabilityControls.kt +111 -58
- package/android/src/main/java/com/audiobrowser/player/MediaSessionCallback.kt +9 -5
- package/android/src/main/java/com/audiobrowser/player/MediaSessionCommandManager.kt +218 -252
- package/android/src/main/java/com/audiobrowser/player/NowPlayingUpdater.kt +0 -1
- package/android/src/main/java/com/audiobrowser/player/PlaybackStateStore.kt +2 -4
- package/android/src/main/java/com/audiobrowser/player/Player.kt +30 -8
- package/android/src/main/java/com/audiobrowser/player/RetryLoadErrorHandlingPolicy.kt +2 -1
- package/android/src/main/java/com/audiobrowser/player/TransformingDataSource.kt +2 -1
- package/android/src/main/java/com/audiobrowser/tls/AiaCertChaser.kt +67 -11
- package/android/src/main/java/com/audiobrowser/tls/AiaChasingExtendedTrustManager.kt +168 -0
- package/android/src/main/java/com/audiobrowser/tls/AiaChasingTrustManager.kt +58 -14
- package/android/src/main/java/com/audiobrowser/tls/AiaTls.kt +35 -7
- package/android/src/main/java/com/audiobrowser/tls/CachingCertificateFetcher.kt +278 -59
- package/android/src/main/java/com/audiobrowser/util/ArtworkVariant.kt +7 -9
- package/android/src/main/java/com/audiobrowser/util/TrackFactory.kt +8 -7
- package/android/src/test/java/com/audiobrowser/ServiceBindingTest.kt +87 -0
- package/android/src/test/java/com/audiobrowser/TestFixtures.kt +52 -1
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerLayerResolutionTest.kt +6 -0
- package/android/src/test/java/com/audiobrowser/browser/BrowserManagerTest.kt +167 -8
- package/android/src/test/java/com/audiobrowser/browser/JsonArtworkTest.kt +2 -1
- package/android/src/test/java/com/audiobrowser/browser/SectionScopeTest.kt +2 -4
- package/android/src/test/java/com/audiobrowser/player/CapabilityControlsTest.kt +100 -56
- package/android/src/test/java/com/audiobrowser/player/MediaSessionSlotMappingTest.kt +45 -0
- package/android/src/test/java/com/audiobrowser/player/PlaybackErrorClassifierTest.kt +3 -4
- package/android/src/test/java/com/audiobrowser/player/RetryLoadErrorHandlingPolicyTest.kt +3 -3
- package/android/src/test/java/com/audiobrowser/tls/AiaCertChaserTest.kt +197 -7
- package/android/src/test/java/com/audiobrowser/tls/AiaChasingTrustManagerTest.kt +325 -4
- package/android/src/test/java/com/audiobrowser/tls/CachingCertificateFetcherCallSiteTest.kt +322 -0
- package/android/src/test/java/com/audiobrowser/tls/CachingCertificateFetcherTest.kt +83 -0
- package/ios/Browser/BrowserManager.swift +2 -27
- package/ios/Browser/SearchDrillIn.swift +1 -1
- package/ios/CarPlay/RNABMediaAddHandler.swift +6 -6
- package/ios/CarPlay/RNABMediaAffinityHandler.swift +2 -2
- package/ios/CarPlay/RNABMediaIntentHandler.swift +16 -16
- package/ios/HybridAudioBrowser.swift +87 -56
- package/ios/Model/NitroTypeStubs.swift +18 -2
- package/ios/Model/RemoteCommand.swift +18 -0
- package/ios/Model/TrackPlayerError.swift +2 -2
- package/ios/Option/SessionCategories.swift +3 -2
- package/ios/Player/MediaIntentCriteria.swift +4 -4
- package/ios/Player/MediaLoader.swift +3 -1
- package/ios/Player/PlaybackCoordinator.swift +4 -1
- package/ios/Player/PlaybackErrorHandler.swift +4 -4
- package/ios/Player/QueueManager.swift +10 -3
- package/ios/Player/RetryManager.swift +79 -18
- package/ios/Player/ShuffleOrder.swift +10 -0
- package/ios/Player/SleepTimerManager.swift +43 -15
- package/ios/RemoteCommand/RemoteCommandCallbacks.swift +47 -0
- package/ios/RemoteCommand/RemoteCommandController.swift +9 -6
- package/ios/Tests/LRUCacheTests.swift +111 -0
- package/ios/Tests/LoadSeekCoordinatorTests.swift +3 -1
- package/ios/Tests/MediaIntentCriteriaTests.swift +2 -2
- package/ios/Tests/MediaLoaderTests.swift +10 -13
- package/ios/Tests/PlaybackCoordinatorTests.swift +10 -7
- package/ios/Tests/PlaybackErrorHandlerTests.swift +3 -1
- package/ios/Tests/PlayerTimeObserverTests.swift +37 -0
- package/ios/Tests/QueueManagerTests.swift +50 -4
- package/ios/Tests/RemoteCommandControllerTests.swift +156 -0
- package/ios/Tests/RemoteCommandTests.swift +67 -0
- package/ios/Tests/RetryManagerTests.swift +89 -0
- package/ios/Tests/SectionScopeTests.swift +2 -2
- package/ios/Tests/SleepTimerManagerTests.swift +22 -19
- package/ios/Tests/Support/ManualSleepTimerScheduler.swift +47 -0
- package/ios/Tests/Support/TestTypes.swift +1 -1
- package/ios/Tests/TabBarEntriesTests.swift +7 -7
- package/ios/TrackPlayer.swift +6 -1
- package/ios/TrackPlayerCallbacks.swift +5 -38
- package/ios/Util/LRUCache.swift +4 -1
- 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.js +1 -1
- package/lib/commonjs/features/browser.js.map +1 -1
- package/lib/commonjs/features/carConnection.js +1 -1
- package/lib/commonjs/features/equalizer.js +1 -1
- package/lib/commonjs/features/errors.js +3 -3
- package/lib/commonjs/features/favorites.js +1 -1
- package/lib/commonjs/features/gate.js +16 -1
- package/lib/commonjs/features/gate.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 +1 -1
- package/lib/commonjs/features/output.js +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 +1 -1
- package/lib/commonjs/features/playback/state.js +1 -1
- package/lib/commonjs/features/playback/trackPlaybackTime.js +0 -6
- package/lib/commonjs/features/playback/trackPlaybackTime.js.map +1 -1
- package/lib/commonjs/features/playback/volume.js +1 -1
- package/lib/commonjs/features/player/options.js +48 -34
- package/lib/commonjs/features/player/options.js.map +1 -1
- package/lib/commonjs/features/player/setup.js +15 -8
- 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 +2 -2
- package/lib/commonjs/features/queue/repeatMode.js +1 -1
- package/lib/commonjs/features/queue/shuffle.js +1 -1
- package/lib/commonjs/features/remoteControls.js +13 -92
- package/lib/commonjs/features/remoteControls.js.map +1 -1
- package/lib/commonjs/features/sleepTimer.js +13 -1
- package/lib/commonjs/features/sleepTimer.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 -5
- package/lib/commonjs/utils/LazyNativeEmitter.js.map +1 -1
- package/lib/commonjs/web/NativeAudioBrowser.js +1 -1
- package/lib/commonjs/web/NativeAudioBrowser.js.map +1 -1
- package/lib/commonjs/web/browser/BrowserManager.js +1 -1
- 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.js +1 -1
- package/lib/module/features/browser.js.map +1 -1
- package/lib/module/features/carConnection.js +1 -1
- package/lib/module/features/equalizer.js +1 -1
- package/lib/module/features/errors.js +3 -3
- package/lib/module/features/favorites.js +1 -1
- package/lib/module/features/gate.js +16 -1
- package/lib/module/features/gate.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 +1 -1
- package/lib/module/features/output.js +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 +1 -1
- package/lib/module/features/playback/state.js +1 -1
- package/lib/module/features/playback/trackPlaybackTime.js +0 -5
- package/lib/module/features/playback/trackPlaybackTime.js.map +1 -1
- package/lib/module/features/playback/volume.js +1 -1
- package/lib/module/features/player/options.js +47 -32
- package/lib/module/features/player/options.js.map +1 -1
- package/lib/module/features/player/setup.js +14 -7
- 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 +2 -2
- 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 -92
- package/lib/module/features/remoteControls.js.map +1 -1
- package/lib/module/features/sleepTimer.js +13 -1
- package/lib/module/features/sleepTimer.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 -5
- package/lib/module/utils/LazyNativeEmitter.js.map +1 -1
- package/lib/module/web/NativeAudioBrowser.js +1 -1
- package/lib/module/web/NativeAudioBrowser.js.map +1 -1
- package/lib/module/web/browser/BrowserManager.js +1 -1
- package/lib/typescript/src/AudioBrowser.d.ts +0 -1
- package/lib/typescript/src/AudioBrowser.d.ts.map +1 -1
- package/lib/typescript/src/features/carConnection.d.ts +1 -1
- package/lib/typescript/src/features/equalizer.d.ts +1 -1
- package/lib/typescript/src/features/errors.d.ts +3 -3
- package/lib/typescript/src/features/favorites.d.ts +1 -1
- package/lib/typescript/src/features/gate.d.ts +18 -2
- package/lib/typescript/src/features/gate.d.ts.map +1 -1
- package/lib/typescript/src/features/metadata.d.ts +20 -3
- package/lib/typescript/src/features/metadata.d.ts.map +1 -1
- package/lib/typescript/src/features/network.d.ts +1 -1
- package/lib/typescript/src/features/nowPlaying.d.ts +1 -1
- package/lib/typescript/src/features/output.d.ts +1 -1
- package/lib/typescript/src/features/playback/playWhenReady.d.ts +1 -1
- package/lib/typescript/src/features/playback/playing.d.ts +1 -1
- package/lib/typescript/src/features/playback/progress.d.ts +1 -1
- package/lib/typescript/src/features/playback/state.d.ts +1 -1
- package/lib/typescript/src/features/playback/volume.d.ts +1 -1
- package/lib/typescript/src/features/player/options.d.ts +87 -37
- package/lib/typescript/src/features/player/options.d.ts.map +1 -1
- package/lib/typescript/src/features/player/setup.d.ts +14 -4
- 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 +2 -2
- 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 -22
- package/lib/typescript/src/features/remoteControls.d.ts.map +1 -1
- package/lib/typescript/src/features/sleepTimer.d.ts +1 -1
- package/lib/typescript/src/features/sleepTimer.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/utils/LazyNativeEmitter.d.ts +8 -4
- package/lib/typescript/src/utils/LazyNativeEmitter.d.ts.map +1 -1
- package/nitrogen/generated/android/AudioBrowser+autolinking.cmake +1 -1
- package/nitrogen/generated/android/c++/JAndroidOptions.hpp +10 -10
- package/nitrogen/generated/android/c++/JFunc_void_Options.hpp +5 -5
- package/nitrogen/generated/android/c++/JHybridAudioBrowserSpec.cpp +11 -11
- package/nitrogen/generated/android/c++/JHybridAudioBrowserSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JNativeSetupPlayerOptions.hpp +5 -5
- package/nitrogen/generated/android/c++/JNativeUpdateOptions.hpp +5 -5
- package/nitrogen/generated/android/c++/JNitroAndroidUpdateOptions.hpp +10 -10
- package/nitrogen/generated/android/c++/JOptions.hpp +5 -5
- package/nitrogen/generated/android/c++/{JNotificationButton.hpp → JRemoteButton.hpp} +19 -19
- package/nitrogen/generated/android/c++/JRemoteButtonLayout.hpp +86 -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/kotlin/com/margelo/nitro/audiobrowser/AndroidOptions.kt +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/HybridAudioBrowserSpec.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/NitroAndroidUpdateOptions.kt +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{NotificationButton.kt → RemoteButton.kt} +3 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/RemoteButtonLayout.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/audiobrowser/{Variant_NullType_NotificationButtonLayout.kt → Variant_NullType_RemoteButtonLayout.kt} +9 -9
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Bridge.hpp +36 -51
- package/nitrogen/generated/ios/AudioBrowser-Swift-Cxx-Umbrella.hpp +6 -6
- package/nitrogen/generated/ios/c++/HybridAudioBrowserSpecSwift.hpp +8 -8
- package/nitrogen/generated/ios/swift/AndroidOptions.swift +12 -12
- package/nitrogen/generated/ios/swift/HybridAudioBrowserSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridAudioBrowserSpec_cxx.swift +2 -2
- package/nitrogen/generated/ios/swift/NitroAndroidUpdateOptions.swift +12 -12
- package/nitrogen/generated/ios/swift/{NotificationButton.swift → RemoteButton.swift} +6 -6
- package/nitrogen/generated/ios/swift/RemoteButtonLayout.swift +57 -0
- package/nitrogen/generated/ios/swift/{Variant_NullType_NotificationButtonLayout.swift → Variant_NullType_RemoteButtonLayout.swift} +3 -3
- package/nitrogen/generated/shared/c++/AndroidOptions.hpp +8 -8
- package/nitrogen/generated/shared/c++/HybridAudioBrowserSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridAudioBrowserSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/NitroAndroidUpdateOptions.hpp +8 -8
- package/nitrogen/generated/shared/c++/{NotificationButton.hpp → RemoteButton.hpp} +19 -19
- package/nitrogen/generated/shared/c++/RemoteButtonLayout.hpp +94 -0
- package/package.json +12 -4
- package/src/AudioBrowser.ts +1 -1
- package/src/CLAUDE.md +52 -0
- package/src/features/battery.test.ts +79 -0
- package/src/features/browser.ts +1 -1
- package/src/features/carConnection.ts +1 -1
- package/src/features/equalizer.ts +1 -1
- package/src/features/errors.ts +3 -3
- package/src/features/favorites.ts +1 -1
- package/src/features/gate.ts +16 -1
- package/src/features/hook-wiring.test.ts +254 -0
- package/src/features/metadata.ts +20 -3
- package/src/features/network.ts +1 -1
- package/src/features/nowPlaying.ts +1 -1
- package/src/features/output.ts +1 -1
- 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 +1 -1
- package/src/features/playback/state.ts +1 -1
- package/src/features/playback/trackPlaybackTime.test.ts +16 -6
- package/src/features/playback/trackPlaybackTime.ts +0 -5
- package/src/features/playback/volume.ts +1 -1
- package/src/features/player/options.ts +99 -57
- package/src/features/player/setup.test.ts +12 -4
- package/src/features/player/setup.ts +19 -9
- package/src/features/player/validateOptions.ts +19 -0
- package/src/features/queue/activeTrack.ts +1 -1
- package/src/features/queue/queue.ts +2 -2
- package/src/features/queue/repeatMode.ts +1 -1
- package/src/features/queue/shuffle.ts +1 -1
- package/src/features/remoteControls.ts +13 -92
- package/src/features/sleepTimer.test.ts +172 -0
- package/src/features/sleepTimer.ts +9 -1
- package/src/nitro-stub-drift.test.ts +237 -0
- package/src/public-surface.test.ts +107 -0
- package/src/specs/audio-browser.nitro.ts +1 -1
- package/src/test-utils/reactNativeStub.ts +60 -0
- package/src/utils/LazyNativeEmitter.ts +9 -6
- package/src/utils/useDebug.test.ts +182 -0
- package/src/utils/useNativeUpdatedValue.test.ts +103 -0
- package/src/web/NativeAudioBrowser.ts +1 -1
- package/src/web/browser/BrowserManager.ts +1 -1
- package/ios/Model/MediaURL.swift +0 -67
- package/nitrogen/generated/android/c++/JNotificationButtonLayout.hpp +0 -94
- 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/NotificationButtonLayout.kt +0 -50
- package/nitrogen/generated/ios/swift/NotificationButtonLayout.swift +0 -92
- package/nitrogen/generated/shared/c++/NotificationButtonLayout.hpp +0 -102
|
@@ -108,10 +108,6 @@ namespace margelo::nitro::audiobrowser { struct NavigationError; }
|
|
|
108
108
|
namespace margelo::nitro::audiobrowser { struct NitroAndroidUpdateOptions; }
|
|
109
109
|
// Forward declaration of `NitroIOSUpdateOptions` to properly resolve imports.
|
|
110
110
|
namespace margelo::nitro::audiobrowser { struct NitroIOSUpdateOptions; }
|
|
111
|
-
// Forward declaration of `NotificationButtonLayout` to properly resolve imports.
|
|
112
|
-
namespace margelo::nitro::audiobrowser { struct NotificationButtonLayout; }
|
|
113
|
-
// Forward declaration of `NotificationButton` to properly resolve imports.
|
|
114
|
-
namespace margelo::nitro::audiobrowser { enum class NotificationButton; }
|
|
115
111
|
// Forward declaration of `NowPlayingMetadata` to properly resolve imports.
|
|
116
112
|
namespace margelo::nitro::audiobrowser { struct NowPlayingMetadata; }
|
|
117
113
|
// Forward declaration of `NowPlayingUpdate` to properly resolve imports.
|
|
@@ -146,6 +142,10 @@ namespace margelo::nitro::audiobrowser { struct PlayerCapabilities; }
|
|
|
146
142
|
namespace margelo::nitro::audiobrowser { struct PlayingState; }
|
|
147
143
|
// Forward declaration of `Progress` to properly resolve imports.
|
|
148
144
|
namespace margelo::nitro::audiobrowser { struct Progress; }
|
|
145
|
+
// Forward declaration of `RemoteButtonLayout` to properly resolve imports.
|
|
146
|
+
namespace margelo::nitro::audiobrowser { struct RemoteButtonLayout; }
|
|
147
|
+
// Forward declaration of `RemoteButton` to properly resolve imports.
|
|
148
|
+
namespace margelo::nitro::audiobrowser { enum class RemoteButton; }
|
|
149
149
|
// Forward declaration of `RemoteJumpBackwardEvent` to properly resolve imports.
|
|
150
150
|
namespace margelo::nitro::audiobrowser { struct RemoteJumpBackwardEvent; }
|
|
151
151
|
// Forward declaration of `RemoteJumpForwardEvent` to properly resolve imports.
|
|
@@ -248,8 +248,6 @@ namespace AudioBrowser { class HybridAudioBrowserSpec_cxx; }
|
|
|
248
248
|
#include "NavigationErrorType.hpp"
|
|
249
249
|
#include "NitroAndroidUpdateOptions.hpp"
|
|
250
250
|
#include "NitroIOSUpdateOptions.hpp"
|
|
251
|
-
#include "NotificationButton.hpp"
|
|
252
|
-
#include "NotificationButtonLayout.hpp"
|
|
253
251
|
#include "NowPlayingMetadata.hpp"
|
|
254
252
|
#include "NowPlayingUpdate.hpp"
|
|
255
253
|
#include "Options.hpp"
|
|
@@ -267,6 +265,8 @@ namespace AudioBrowser { class HybridAudioBrowserSpec_cxx; }
|
|
|
267
265
|
#include "PlayerCapabilities.hpp"
|
|
268
266
|
#include "PlayingState.hpp"
|
|
269
267
|
#include "Progress.hpp"
|
|
268
|
+
#include "RemoteButton.hpp"
|
|
269
|
+
#include "RemoteButtonLayout.hpp"
|
|
270
270
|
#include "RemoteJumpBackwardEvent.hpp"
|
|
271
271
|
#include "RemoteJumpForwardEvent.hpp"
|
|
272
272
|
#include "RemotePlayIdEvent.hpp"
|
|
@@ -2182,31 +2182,31 @@ namespace margelo::nitro::audiobrowser::bridge::swift {
|
|
|
2182
2182
|
return optional.value();
|
|
2183
2183
|
}
|
|
2184
2184
|
|
|
2185
|
-
// pragma MARK: std::optional<std::variant<nitro::NullType,
|
|
2185
|
+
// pragma MARK: std::optional<std::variant<nitro::NullType, RemoteButtonLayout>>
|
|
2186
2186
|
/**
|
|
2187
|
-
* Specialized version of `std::optional<std::variant<nitro::NullType,
|
|
2187
|
+
* Specialized version of `std::optional<std::variant<nitro::NullType, RemoteButtonLayout>>`.
|
|
2188
2188
|
*/
|
|
2189
|
-
using
|
|
2190
|
-
inline std::optional<std::variant<nitro::NullType,
|
|
2191
|
-
return std::optional<std::variant<nitro::NullType,
|
|
2189
|
+
using std__optional_std__variant_nitro__NullType__RemoteButtonLayout__ = std::optional<std::variant<nitro::NullType, RemoteButtonLayout>>;
|
|
2190
|
+
inline std::optional<std::variant<nitro::NullType, RemoteButtonLayout>> create_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(const std::variant<nitro::NullType, RemoteButtonLayout>& value) noexcept {
|
|
2191
|
+
return std::optional<std::variant<nitro::NullType, RemoteButtonLayout>>(value);
|
|
2192
2192
|
}
|
|
2193
|
-
inline bool
|
|
2193
|
+
inline bool has_value_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(const std::optional<std::variant<nitro::NullType, RemoteButtonLayout>>& optional) noexcept {
|
|
2194
2194
|
return optional.has_value();
|
|
2195
2195
|
}
|
|
2196
|
-
inline std::variant<nitro::NullType,
|
|
2196
|
+
inline std::variant<nitro::NullType, RemoteButtonLayout> get_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(const std::optional<std::variant<nitro::NullType, RemoteButtonLayout>>& optional) noexcept {
|
|
2197
2197
|
return optional.value();
|
|
2198
2198
|
}
|
|
2199
2199
|
|
|
2200
|
-
// pragma MARK: std::variant<nitro::NullType,
|
|
2200
|
+
// pragma MARK: std::variant<nitro::NullType, RemoteButtonLayout>
|
|
2201
2201
|
/**
|
|
2202
|
-
* Wrapper struct for `std::variant<nitro::NullType,
|
|
2202
|
+
* Wrapper struct for `std::variant<nitro::NullType, RemoteButtonLayout>`.
|
|
2203
2203
|
* std::variant cannot be used in Swift because of a Swift bug.
|
|
2204
2204
|
* Not even specializing it works. So we create a wrapper struct.
|
|
2205
2205
|
*/
|
|
2206
|
-
struct
|
|
2207
|
-
std::variant<nitro::NullType,
|
|
2208
|
-
|
|
2209
|
-
operator std::variant<nitro::NullType,
|
|
2206
|
+
struct std__variant_nitro__NullType__RemoteButtonLayout_ final {
|
|
2207
|
+
std::variant<nitro::NullType, RemoteButtonLayout> variant;
|
|
2208
|
+
std__variant_nitro__NullType__RemoteButtonLayout_(std::variant<nitro::NullType, RemoteButtonLayout> variant): variant(variant) { }
|
|
2209
|
+
operator std::variant<nitro::NullType, RemoteButtonLayout>() const noexcept {
|
|
2210
2210
|
return variant;
|
|
2211
2211
|
}
|
|
2212
2212
|
inline size_t index() const noexcept {
|
|
@@ -2215,54 +2215,39 @@ namespace margelo::nitro::audiobrowser::bridge::swift {
|
|
|
2215
2215
|
inline nitro::NullType get_0() const noexcept {
|
|
2216
2216
|
return std::get<0>(variant);
|
|
2217
2217
|
}
|
|
2218
|
-
inline
|
|
2218
|
+
inline RemoteButtonLayout get_1() const noexcept {
|
|
2219
2219
|
return std::get<1>(variant);
|
|
2220
2220
|
}
|
|
2221
2221
|
};
|
|
2222
|
-
inline
|
|
2223
|
-
return
|
|
2222
|
+
inline std__variant_nitro__NullType__RemoteButtonLayout_ create_std__variant_nitro__NullType__RemoteButtonLayout_(nitro::NullType value) noexcept {
|
|
2223
|
+
return std__variant_nitro__NullType__RemoteButtonLayout_(value);
|
|
2224
2224
|
}
|
|
2225
|
-
inline
|
|
2226
|
-
return
|
|
2225
|
+
inline std__variant_nitro__NullType__RemoteButtonLayout_ create_std__variant_nitro__NullType__RemoteButtonLayout_(const RemoteButtonLayout& value) noexcept {
|
|
2226
|
+
return std__variant_nitro__NullType__RemoteButtonLayout_(value);
|
|
2227
2227
|
}
|
|
2228
2228
|
|
|
2229
|
-
// pragma MARK: std::optional<
|
|
2229
|
+
// pragma MARK: std::optional<RemoteButton>
|
|
2230
2230
|
/**
|
|
2231
|
-
* Specialized version of `std::optional<
|
|
2231
|
+
* Specialized version of `std::optional<RemoteButton>`.
|
|
2232
2232
|
*/
|
|
2233
|
-
using
|
|
2234
|
-
inline std::optional<
|
|
2235
|
-
return std::optional<
|
|
2233
|
+
using std__optional_RemoteButton_ = std::optional<RemoteButton>;
|
|
2234
|
+
inline std::optional<RemoteButton> create_std__optional_RemoteButton_(const RemoteButton& value) noexcept {
|
|
2235
|
+
return std::optional<RemoteButton>(value);
|
|
2236
2236
|
}
|
|
2237
|
-
inline bool
|
|
2237
|
+
inline bool has_value_std__optional_RemoteButton_(const std::optional<RemoteButton>& optional) noexcept {
|
|
2238
2238
|
return optional.has_value();
|
|
2239
2239
|
}
|
|
2240
|
-
inline
|
|
2240
|
+
inline RemoteButton get_std__optional_RemoteButton_(const std::optional<RemoteButton>& optional) noexcept {
|
|
2241
2241
|
return optional.value();
|
|
2242
2242
|
}
|
|
2243
2243
|
|
|
2244
|
-
// pragma MARK: std::
|
|
2244
|
+
// pragma MARK: std::vector<RemoteButton>
|
|
2245
2245
|
/**
|
|
2246
|
-
* Specialized version of `std::
|
|
2246
|
+
* Specialized version of `std::vector<RemoteButton>`.
|
|
2247
2247
|
*/
|
|
2248
|
-
using
|
|
2249
|
-
inline std::
|
|
2250
|
-
|
|
2251
|
-
}
|
|
2252
|
-
inline bool has_value_std__optional_std__vector_NotificationButton__(const std::optional<std::vector<NotificationButton>>& optional) noexcept {
|
|
2253
|
-
return optional.has_value();
|
|
2254
|
-
}
|
|
2255
|
-
inline std::vector<NotificationButton> get_std__optional_std__vector_NotificationButton__(const std::optional<std::vector<NotificationButton>>& optional) noexcept {
|
|
2256
|
-
return optional.value();
|
|
2257
|
-
}
|
|
2258
|
-
|
|
2259
|
-
// pragma MARK: std::vector<NotificationButton>
|
|
2260
|
-
/**
|
|
2261
|
-
* Specialized version of `std::vector<NotificationButton>`.
|
|
2262
|
-
*/
|
|
2263
|
-
using std__vector_NotificationButton_ = std::vector<NotificationButton>;
|
|
2264
|
-
inline std::vector<NotificationButton> create_std__vector_NotificationButton_(size_t size) noexcept {
|
|
2265
|
-
std::vector<NotificationButton> vector;
|
|
2248
|
+
using std__vector_RemoteButton_ = std::vector<RemoteButton>;
|
|
2249
|
+
inline std::vector<RemoteButton> create_std__vector_RemoteButton_(size_t size) noexcept {
|
|
2250
|
+
std::vector<RemoteButton> vector;
|
|
2266
2251
|
vector.reserve(size);
|
|
2267
2252
|
return vector;
|
|
2268
2253
|
}
|
|
@@ -112,10 +112,6 @@ namespace margelo::nitro::audiobrowser { struct NavigationError; }
|
|
|
112
112
|
namespace margelo::nitro::audiobrowser { struct NitroAndroidUpdateOptions; }
|
|
113
113
|
// Forward declaration of `NitroIOSUpdateOptions` to properly resolve imports.
|
|
114
114
|
namespace margelo::nitro::audiobrowser { struct NitroIOSUpdateOptions; }
|
|
115
|
-
// Forward declaration of `NotificationButtonLayout` to properly resolve imports.
|
|
116
|
-
namespace margelo::nitro::audiobrowser { struct NotificationButtonLayout; }
|
|
117
|
-
// Forward declaration of `NotificationButton` to properly resolve imports.
|
|
118
|
-
namespace margelo::nitro::audiobrowser { enum class NotificationButton; }
|
|
119
115
|
// Forward declaration of `NowPlayingMetadata` to properly resolve imports.
|
|
120
116
|
namespace margelo::nitro::audiobrowser { struct NowPlayingMetadata; }
|
|
121
117
|
// Forward declaration of `NowPlayingUpdate` to properly resolve imports.
|
|
@@ -150,6 +146,10 @@ namespace margelo::nitro::audiobrowser { struct PlayerCapabilities; }
|
|
|
150
146
|
namespace margelo::nitro::audiobrowser { struct PlayingState; }
|
|
151
147
|
// Forward declaration of `Progress` to properly resolve imports.
|
|
152
148
|
namespace margelo::nitro::audiobrowser { struct Progress; }
|
|
149
|
+
// Forward declaration of `RemoteButtonLayout` to properly resolve imports.
|
|
150
|
+
namespace margelo::nitro::audiobrowser { struct RemoteButtonLayout; }
|
|
151
|
+
// Forward declaration of `RemoteButton` to properly resolve imports.
|
|
152
|
+
namespace margelo::nitro::audiobrowser { enum class RemoteButton; }
|
|
153
153
|
// Forward declaration of `RemoteJumpBackwardEvent` to properly resolve imports.
|
|
154
154
|
namespace margelo::nitro::audiobrowser { struct RemoteJumpBackwardEvent; }
|
|
155
155
|
// Forward declaration of `RemoteJumpForwardEvent` to properly resolve imports.
|
|
@@ -250,8 +250,6 @@ namespace margelo::nitro::audiobrowser { struct TransformableRequestConfig; }
|
|
|
250
250
|
#include "NavigationErrorType.hpp"
|
|
251
251
|
#include "NitroAndroidUpdateOptions.hpp"
|
|
252
252
|
#include "NitroIOSUpdateOptions.hpp"
|
|
253
|
-
#include "NotificationButton.hpp"
|
|
254
|
-
#include "NotificationButtonLayout.hpp"
|
|
255
253
|
#include "NowPlayingMetadata.hpp"
|
|
256
254
|
#include "NowPlayingUpdate.hpp"
|
|
257
255
|
#include "Options.hpp"
|
|
@@ -269,6 +267,8 @@ namespace margelo::nitro::audiobrowser { struct TransformableRequestConfig; }
|
|
|
269
267
|
#include "PlayerCapabilities.hpp"
|
|
270
268
|
#include "PlayingState.hpp"
|
|
271
269
|
#include "Progress.hpp"
|
|
270
|
+
#include "RemoteButton.hpp"
|
|
271
|
+
#include "RemoteButtonLayout.hpp"
|
|
272
272
|
#include "RemoteJumpBackwardEvent.hpp"
|
|
273
273
|
#include "RemoteJumpForwardEvent.hpp"
|
|
274
274
|
#include "RemotePlayIdEvent.hpp"
|
|
@@ -132,10 +132,10 @@ namespace margelo::nitro::audiobrowser { struct Options; }
|
|
|
132
132
|
namespace margelo::nitro::audiobrowser { struct AndroidOptions; }
|
|
133
133
|
// Forward declaration of `AppKilledPlaybackBehavior` to properly resolve imports.
|
|
134
134
|
namespace margelo::nitro::audiobrowser { enum class AppKilledPlaybackBehavior; }
|
|
135
|
-
// Forward declaration of `
|
|
136
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
137
|
-
// Forward declaration of `
|
|
138
|
-
namespace margelo::nitro::audiobrowser { enum class
|
|
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; }
|
|
139
139
|
// Forward declaration of `PlayerCapabilities` to properly resolve imports.
|
|
140
140
|
namespace margelo::nitro::audiobrowser { struct PlayerCapabilities; }
|
|
141
141
|
// Forward declaration of `FavoriteConfig` to properly resolve imports.
|
|
@@ -267,8 +267,8 @@ namespace margelo::nitro::audiobrowser { struct Progress; }
|
|
|
267
267
|
#include "Options.hpp"
|
|
268
268
|
#include "AndroidOptions.hpp"
|
|
269
269
|
#include "AppKilledPlaybackBehavior.hpp"
|
|
270
|
-
#include "
|
|
271
|
-
#include "
|
|
270
|
+
#include "RemoteButtonLayout.hpp"
|
|
271
|
+
#include "RemoteButton.hpp"
|
|
272
272
|
#include "PlayerCapabilities.hpp"
|
|
273
273
|
#include "FavoriteConfig.hpp"
|
|
274
274
|
#include "FavoritesMatchMode.hpp"
|
|
@@ -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
|
}
|
|
@@ -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, { () -> bridge.
|
|
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,12 +46,12 @@ public extension AndroidOptions {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
@inline(__always)
|
|
49
|
-
var
|
|
50
|
-
return { () ->
|
|
51
|
-
if bridge.
|
|
52
|
-
let __unwrapped = bridge.
|
|
53
|
-
return { () ->
|
|
54
|
-
let __variant = bridge.
|
|
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)
|
|
55
55
|
switch __variant.index() {
|
|
56
56
|
case 0:
|
|
57
57
|
let __actual = __variant.get_0()
|
|
@@ -71,7 +71,7 @@ public protocol HybridAudioBrowserSpec_protocol: HybridObject {
|
|
|
71
71
|
// Methods
|
|
72
72
|
func navigatePath(path: String) throws -> Void
|
|
73
73
|
func navigateTrack(track: Track) throws -> Void
|
|
74
|
-
func
|
|
74
|
+
func search(query: String) throws -> Promise<[Track]>
|
|
75
75
|
func getContent() throws -> ResolvedTrack?
|
|
76
76
|
func getNavigationError() throws -> NavigationError?
|
|
77
77
|
func getFormattedNavigationError() throws -> FormattedNavigationError?
|
|
@@ -1445,9 +1445,9 @@ open class HybridAudioBrowserSpec_cxx {
|
|
|
1445
1445
|
}
|
|
1446
1446
|
|
|
1447
1447
|
@inline(__always)
|
|
1448
|
-
public final func
|
|
1448
|
+
public final func search(query: std.string) -> bridge.Result_std__shared_ptr_Promise_std__vector_Track____ {
|
|
1449
1449
|
do {
|
|
1450
|
-
let __result = try self.__implementation.
|
|
1450
|
+
let __result = try self.__implementation.search(query: String(query))
|
|
1451
1451
|
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_Track___ in
|
|
1452
1452
|
let __promise = bridge.create_std__shared_ptr_Promise_std__vector_Track___()
|
|
1453
1453
|
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_Track___(__promise)
|
|
@@ -18,7 +18,7 @@ public extension NitroAndroidUpdateOptions {
|
|
|
18
18
|
/**
|
|
19
19
|
* Create a new instance of `NitroAndroidUpdateOptions`.
|
|
20
20
|
*/
|
|
21
|
-
init(appKilledPlaybackBehavior: AppKilledPlaybackBehavior?, skipSilence: Bool?,
|
|
21
|
+
init(appKilledPlaybackBehavior: AppKilledPlaybackBehavior?, skipSilence: Bool?, remoteButtonLayout: Variant_NullType_RemoteButtonLayout?) {
|
|
22
22
|
self.init({ () -> bridge.std__optional_AppKilledPlaybackBehavior_ in
|
|
23
23
|
if let __unwrappedValue = appKilledPlaybackBehavior {
|
|
24
24
|
return bridge.create_std__optional_AppKilledPlaybackBehavior_(__unwrappedValue)
|
|
@@ -31,14 +31,14 @@ public extension NitroAndroidUpdateOptions {
|
|
|
31
31
|
} else {
|
|
32
32
|
return .init()
|
|
33
33
|
}
|
|
34
|
-
}(), { () -> bridge.
|
|
35
|
-
if let __unwrappedValue =
|
|
36
|
-
return bridge.
|
|
34
|
+
}(), { () -> bridge.std__optional_std__variant_nitro__NullType__RemoteButtonLayout__ in
|
|
35
|
+
if let __unwrappedValue = remoteButtonLayout {
|
|
36
|
+
return bridge.create_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__({ () -> bridge.std__variant_nitro__NullType__RemoteButtonLayout_ in
|
|
37
37
|
switch __unwrappedValue {
|
|
38
38
|
case .first(let __value):
|
|
39
|
-
return bridge.
|
|
39
|
+
return bridge.create_std__variant_nitro__NullType__RemoteButtonLayout_(margelo.nitro.NullType.null)
|
|
40
40
|
case .second(let __value):
|
|
41
|
-
return bridge.
|
|
41
|
+
return bridge.create_std__variant_nitro__NullType__RemoteButtonLayout_(__value)
|
|
42
42
|
}
|
|
43
43
|
}().variant)
|
|
44
44
|
} else {
|
|
@@ -65,12 +65,12 @@ public extension NitroAndroidUpdateOptions {
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
@inline(__always)
|
|
68
|
-
var
|
|
69
|
-
return { () ->
|
|
70
|
-
if bridge.
|
|
71
|
-
let __unwrapped = bridge.
|
|
72
|
-
return { () ->
|
|
73
|
-
let __variant = bridge.
|
|
68
|
+
var remoteButtonLayout: Variant_NullType_RemoteButtonLayout? {
|
|
69
|
+
return { () -> Variant_NullType_RemoteButtonLayout? in
|
|
70
|
+
if bridge.has_value_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(self.__remoteButtonLayout) {
|
|
71
|
+
let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__RemoteButtonLayout__(self.__remoteButtonLayout)
|
|
72
|
+
return { () -> Variant_NullType_RemoteButtonLayout in
|
|
73
|
+
let __variant = bridge.std__variant_nitro__NullType__RemoteButtonLayout_(__unwrapped)
|
|
74
74
|
switch __variant.index() {
|
|
75
75
|
case 0:
|
|
76
76
|
let __actual = __variant.get_0()
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
///
|
|
2
|
-
///
|
|
2
|
+
/// RemoteButton.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
5
|
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
|
-
* Represents the JS union `
|
|
9
|
+
* Represents the JS union `RemoteButton`, backed by a C++ enum.
|
|
10
10
|
*/
|
|
11
|
-
public typealias
|
|
11
|
+
public typealias RemoteButton = margelo.nitro.audiobrowser.RemoteButton
|
|
12
12
|
|
|
13
|
-
public extension
|
|
13
|
+
public extension RemoteButton {
|
|
14
14
|
/**
|
|
15
|
-
* Get a
|
|
15
|
+
* Get a RemoteButton for the given String value, or
|
|
16
16
|
* return `nil` if the given value was invalid/unknown.
|
|
17
17
|
*/
|
|
18
18
|
init?(fromString string: String) {
|
|
@@ -33,7 +33,7 @@ public extension NotificationButton {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
-
* Get the String value this
|
|
36
|
+
* Get the String value this RemoteButton represents.
|
|
37
37
|
*/
|
|
38
38
|
var stringValue: String {
|
|
39
39
|
switch self {
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// RemoteButtonLayout.swift
|
|
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
|
+
import NitroModules
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Represents an instance of `RemoteButtonLayout`, backed by a C++ struct.
|
|
12
|
+
*/
|
|
13
|
+
public typealias RemoteButtonLayout = margelo.nitro.audiobrowser.RemoteButtonLayout
|
|
14
|
+
|
|
15
|
+
public extension RemoteButtonLayout {
|
|
16
|
+
private typealias bridge = margelo.nitro.audiobrowser.bridge.swift
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Create a new instance of `RemoteButtonLayout`.
|
|
20
|
+
*/
|
|
21
|
+
init(back: RemoteButton?, forward: RemoteButton?, overflow: [RemoteButton]) {
|
|
22
|
+
self.init({ () -> bridge.std__optional_RemoteButton_ in
|
|
23
|
+
if let __unwrappedValue = back {
|
|
24
|
+
return bridge.create_std__optional_RemoteButton_(__unwrappedValue)
|
|
25
|
+
} else {
|
|
26
|
+
return .init()
|
|
27
|
+
}
|
|
28
|
+
}(), { () -> bridge.std__optional_RemoteButton_ in
|
|
29
|
+
if let __unwrappedValue = forward {
|
|
30
|
+
return bridge.create_std__optional_RemoteButton_(__unwrappedValue)
|
|
31
|
+
} else {
|
|
32
|
+
return .init()
|
|
33
|
+
}
|
|
34
|
+
}(), { () -> bridge.std__vector_RemoteButton_ in
|
|
35
|
+
var __vector = bridge.create_std__vector_RemoteButton_(overflow.count)
|
|
36
|
+
for __item in overflow {
|
|
37
|
+
__vector.push_back(__item)
|
|
38
|
+
}
|
|
39
|
+
return __vector
|
|
40
|
+
}())
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@inline(__always)
|
|
44
|
+
var back: RemoteButton? {
|
|
45
|
+
return self.__back.value
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@inline(__always)
|
|
49
|
+
var forward: RemoteButton? {
|
|
50
|
+
return self.__forward.value
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
@inline(__always)
|
|
54
|
+
var overflow: [RemoteButton] {
|
|
55
|
+
return self.__overflow.map({ __item in __item })
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
///
|
|
2
|
-
///
|
|
2
|
+
/// Variant_NullType_RemoteButtonLayout.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
5
|
/// Copyright © Marc Rousavy @ Margelo
|
|
@@ -12,7 +12,7 @@ import NitroModules
|
|
|
12
12
|
* JS type: `null | struct`
|
|
13
13
|
*/
|
|
14
14
|
@frozen
|
|
15
|
-
public indirect enum
|
|
15
|
+
public indirect enum Variant_NullType_RemoteButtonLayout {
|
|
16
16
|
case first(NullType)
|
|
17
|
-
case second(
|
|
17
|
+
case second(RemoteButtonLayout)
|
|
18
18
|
}
|
|
@@ -30,12 +30,12 @@
|
|
|
30
30
|
|
|
31
31
|
// Forward declaration of `AppKilledPlaybackBehavior` to properly resolve imports.
|
|
32
32
|
namespace margelo::nitro::audiobrowser { enum class AppKilledPlaybackBehavior; }
|
|
33
|
-
// Forward declaration of `
|
|
34
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
33
|
+
// Forward declaration of `RemoteButtonLayout` to properly resolve imports.
|
|
34
|
+
namespace margelo::nitro::audiobrowser { struct RemoteButtonLayout; }
|
|
35
35
|
|
|
36
36
|
#include "AppKilledPlaybackBehavior.hpp"
|
|
37
37
|
#include <NitroModules/Null.hpp>
|
|
38
|
-
#include "
|
|
38
|
+
#include "RemoteButtonLayout.hpp"
|
|
39
39
|
#include <variant>
|
|
40
40
|
#include <optional>
|
|
41
41
|
|
|
@@ -48,11 +48,11 @@ namespace margelo::nitro::audiobrowser {
|
|
|
48
48
|
public:
|
|
49
49
|
AppKilledPlaybackBehavior appKilledPlaybackBehavior SWIFT_PRIVATE;
|
|
50
50
|
bool skipSilence SWIFT_PRIVATE;
|
|
51
|
-
std::optional<std::variant<nitro::NullType,
|
|
51
|
+
std::optional<std::variant<nitro::NullType, RemoteButtonLayout>> remoteButtonLayout SWIFT_PRIVATE;
|
|
52
52
|
|
|
53
53
|
public:
|
|
54
54
|
AndroidOptions() = default;
|
|
55
|
-
explicit AndroidOptions(AppKilledPlaybackBehavior appKilledPlaybackBehavior, bool skipSilence, std::optional<std::variant<nitro::NullType,
|
|
55
|
+
explicit AndroidOptions(AppKilledPlaybackBehavior appKilledPlaybackBehavior, bool skipSilence, std::optional<std::variant<nitro::NullType, RemoteButtonLayout>> remoteButtonLayout): appKilledPlaybackBehavior(appKilledPlaybackBehavior), skipSilence(skipSilence), remoteButtonLayout(remoteButtonLayout) {}
|
|
56
56
|
|
|
57
57
|
public:
|
|
58
58
|
friend bool operator==(const AndroidOptions& lhs, const AndroidOptions& rhs) = default;
|
|
@@ -70,14 +70,14 @@ namespace margelo::nitro {
|
|
|
70
70
|
return margelo::nitro::audiobrowser::AndroidOptions(
|
|
71
71
|
JSIConverter<margelo::nitro::audiobrowser::AppKilledPlaybackBehavior>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "appKilledPlaybackBehavior"))),
|
|
72
72
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "skipSilence"))),
|
|
73
|
-
JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::
|
|
73
|
+
JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::RemoteButtonLayout>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "remoteButtonLayout")))
|
|
74
74
|
);
|
|
75
75
|
}
|
|
76
76
|
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::audiobrowser::AndroidOptions& arg) {
|
|
77
77
|
jsi::Object obj(runtime);
|
|
78
78
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "appKilledPlaybackBehavior"), JSIConverter<margelo::nitro::audiobrowser::AppKilledPlaybackBehavior>::toJSI(runtime, arg.appKilledPlaybackBehavior));
|
|
79
79
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "skipSilence"), JSIConverter<bool>::toJSI(runtime, arg.skipSilence));
|
|
80
|
-
obj.setProperty(runtime, PropNameIDCache::get(runtime, "
|
|
80
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "remoteButtonLayout"), JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::RemoteButtonLayout>>>::toJSI(runtime, arg.remoteButtonLayout));
|
|
81
81
|
return obj;
|
|
82
82
|
}
|
|
83
83
|
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
@@ -90,7 +90,7 @@ namespace margelo::nitro {
|
|
|
90
90
|
}
|
|
91
91
|
if (!JSIConverter<margelo::nitro::audiobrowser::AppKilledPlaybackBehavior>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "appKilledPlaybackBehavior")))) return false;
|
|
92
92
|
if (!JSIConverter<bool>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "skipSilence")))) return false;
|
|
93
|
-
if (!JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::
|
|
93
|
+
if (!JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::RemoteButtonLayout>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "remoteButtonLayout")))) return false;
|
|
94
94
|
return true;
|
|
95
95
|
}
|
|
96
96
|
};
|
|
@@ -130,7 +130,7 @@ namespace margelo::nitro::audiobrowser {
|
|
|
130
130
|
prototype.registerHybridSetter("onBatteryOptimizationStatusChanged", &HybridAudioBrowserSpec::setOnBatteryOptimizationStatusChanged);
|
|
131
131
|
prototype.registerHybridMethod("navigatePath", &HybridAudioBrowserSpec::navigatePath);
|
|
132
132
|
prototype.registerHybridMethod("navigateTrack", &HybridAudioBrowserSpec::navigateTrack);
|
|
133
|
-
prototype.registerHybridMethod("
|
|
133
|
+
prototype.registerHybridMethod("search", &HybridAudioBrowserSpec::search);
|
|
134
134
|
prototype.registerHybridMethod("getContent", &HybridAudioBrowserSpec::getContent);
|
|
135
135
|
prototype.registerHybridMethod("getNavigationError", &HybridAudioBrowserSpec::getNavigationError);
|
|
136
136
|
prototype.registerHybridMethod("getFormattedNavigationError", &HybridAudioBrowserSpec::getFormattedNavigationError);
|
|
@@ -297,7 +297,7 @@ namespace margelo::nitro::audiobrowser {
|
|
|
297
297
|
// Methods
|
|
298
298
|
virtual void navigatePath(const std::string& path) = 0;
|
|
299
299
|
virtual void navigateTrack(const Track& track) = 0;
|
|
300
|
-
virtual std::shared_ptr<Promise<std::vector<Track>>>
|
|
300
|
+
virtual std::shared_ptr<Promise<std::vector<Track>>> search(const std::string& query) = 0;
|
|
301
301
|
virtual std::optional<ResolvedTrack> getContent() = 0;
|
|
302
302
|
virtual std::optional<NavigationError> getNavigationError() = 0;
|
|
303
303
|
virtual std::optional<FormattedNavigationError> getFormattedNavigationError() = 0;
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
|
|
31
31
|
// Forward declaration of `AppKilledPlaybackBehavior` to properly resolve imports.
|
|
32
32
|
namespace margelo::nitro::audiobrowser { enum class AppKilledPlaybackBehavior; }
|
|
33
|
-
// Forward declaration of `
|
|
34
|
-
namespace margelo::nitro::audiobrowser { struct
|
|
33
|
+
// Forward declaration of `RemoteButtonLayout` to properly resolve imports.
|
|
34
|
+
namespace margelo::nitro::audiobrowser { struct RemoteButtonLayout; }
|
|
35
35
|
|
|
36
36
|
#include "AppKilledPlaybackBehavior.hpp"
|
|
37
37
|
#include <optional>
|
|
38
38
|
#include <NitroModules/Null.hpp>
|
|
39
|
-
#include "
|
|
39
|
+
#include "RemoteButtonLayout.hpp"
|
|
40
40
|
#include <variant>
|
|
41
41
|
|
|
42
42
|
namespace margelo::nitro::audiobrowser {
|
|
@@ -48,11 +48,11 @@ namespace margelo::nitro::audiobrowser {
|
|
|
48
48
|
public:
|
|
49
49
|
std::optional<AppKilledPlaybackBehavior> appKilledPlaybackBehavior SWIFT_PRIVATE;
|
|
50
50
|
std::optional<bool> skipSilence SWIFT_PRIVATE;
|
|
51
|
-
std::optional<std::variant<nitro::NullType,
|
|
51
|
+
std::optional<std::variant<nitro::NullType, RemoteButtonLayout>> remoteButtonLayout SWIFT_PRIVATE;
|
|
52
52
|
|
|
53
53
|
public:
|
|
54
54
|
NitroAndroidUpdateOptions() = default;
|
|
55
|
-
explicit NitroAndroidUpdateOptions(std::optional<AppKilledPlaybackBehavior> appKilledPlaybackBehavior, std::optional<bool> skipSilence, std::optional<std::variant<nitro::NullType,
|
|
55
|
+
explicit NitroAndroidUpdateOptions(std::optional<AppKilledPlaybackBehavior> appKilledPlaybackBehavior, std::optional<bool> skipSilence, std::optional<std::variant<nitro::NullType, RemoteButtonLayout>> remoteButtonLayout): appKilledPlaybackBehavior(appKilledPlaybackBehavior), skipSilence(skipSilence), remoteButtonLayout(remoteButtonLayout) {}
|
|
56
56
|
|
|
57
57
|
public:
|
|
58
58
|
friend bool operator==(const NitroAndroidUpdateOptions& lhs, const NitroAndroidUpdateOptions& rhs) = default;
|
|
@@ -70,14 +70,14 @@ namespace margelo::nitro {
|
|
|
70
70
|
return margelo::nitro::audiobrowser::NitroAndroidUpdateOptions(
|
|
71
71
|
JSIConverter<std::optional<margelo::nitro::audiobrowser::AppKilledPlaybackBehavior>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "appKilledPlaybackBehavior"))),
|
|
72
72
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "skipSilence"))),
|
|
73
|
-
JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::
|
|
73
|
+
JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::RemoteButtonLayout>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "remoteButtonLayout")))
|
|
74
74
|
);
|
|
75
75
|
}
|
|
76
76
|
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::audiobrowser::NitroAndroidUpdateOptions& arg) {
|
|
77
77
|
jsi::Object obj(runtime);
|
|
78
78
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "appKilledPlaybackBehavior"), JSIConverter<std::optional<margelo::nitro::audiobrowser::AppKilledPlaybackBehavior>>::toJSI(runtime, arg.appKilledPlaybackBehavior));
|
|
79
79
|
obj.setProperty(runtime, PropNameIDCache::get(runtime, "skipSilence"), JSIConverter<std::optional<bool>>::toJSI(runtime, arg.skipSilence));
|
|
80
|
-
obj.setProperty(runtime, PropNameIDCache::get(runtime, "
|
|
80
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "remoteButtonLayout"), JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::RemoteButtonLayout>>>::toJSI(runtime, arg.remoteButtonLayout));
|
|
81
81
|
return obj;
|
|
82
82
|
}
|
|
83
83
|
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
@@ -90,7 +90,7 @@ namespace margelo::nitro {
|
|
|
90
90
|
}
|
|
91
91
|
if (!JSIConverter<std::optional<margelo::nitro::audiobrowser::AppKilledPlaybackBehavior>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "appKilledPlaybackBehavior")))) return false;
|
|
92
92
|
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "skipSilence")))) return false;
|
|
93
|
-
if (!JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::
|
|
93
|
+
if (!JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::audiobrowser::RemoteButtonLayout>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "remoteButtonLayout")))) return false;
|
|
94
94
|
return true;
|
|
95
95
|
}
|
|
96
96
|
};
|