react-native-nitro-player 0.3.0-alpha.9 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +444 -4
- package/android/build.gradle +4 -1
- package/android/src/main/AndroidManifest.xml +16 -1
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridAndroidAutoMediaLibrary.kt +2 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridAudioDevices.kt +8 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridDownloadManager.kt +225 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridEqualizer.kt +105 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridPlayerQueue.kt +6 -6
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridTrackPlayer.kt +37 -12
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerCore.kt +970 -213
- package/android/src/main/java/com/margelo/nitro/nitroplayer/download/DownloadDatabase.kt +475 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/download/DownloadFileManager.kt +159 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/download/DownloadManagerCore.kt +489 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/download/DownloadWorker.kt +209 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/equalizer/EqualizerCore.kt +486 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/media/MediaBrowserService.kt +3 -1
- package/android/src/main/java/com/margelo/nitro/nitroplayer/media/MediaSessionManager.kt +14 -6
- package/android/src/main/java/com/margelo/nitro/nitroplayer/playlist/PlaylistManager.kt +27 -0
- package/ios/HybridDownloadManager.swift +226 -0
- package/ios/HybridEqualizer.swift +111 -0
- package/ios/HybridTrackPlayer.swift +36 -8
- package/ios/core/TrackPlayerCore.swift +998 -276
- package/ios/download/DownloadDatabase.swift +493 -0
- package/ios/download/DownloadFileManager.swift +241 -0
- package/ios/download/DownloadManagerCore.swift +923 -0
- package/ios/equalizer/EqualizerCore.swift +685 -0
- package/ios/media/MediaSessionManager.swift +40 -28
- package/ios/playlist/PlaylistManager.swift +40 -9
- package/ios/queue/HybridPlayerQueue.swift +33 -13
- package/lib/hooks/downloadCallbackManager.d.ts +36 -0
- package/lib/hooks/downloadCallbackManager.js +108 -0
- package/lib/hooks/equalizerCallbackManager.d.ts +37 -0
- package/lib/hooks/equalizerCallbackManager.js +109 -0
- package/lib/hooks/index.d.ts +16 -0
- package/lib/hooks/index.js +10 -0
- package/lib/hooks/useActualQueue.d.ts +48 -0
- package/lib/hooks/useActualQueue.js +98 -0
- package/lib/hooks/useDownloadActions.d.ts +26 -0
- package/lib/hooks/useDownloadActions.js +117 -0
- package/lib/hooks/useDownloadProgress.d.ts +25 -0
- package/lib/hooks/useDownloadProgress.js +79 -0
- package/lib/hooks/useDownloadStorage.d.ts +19 -0
- package/lib/hooks/useDownloadStorage.js +60 -0
- package/lib/hooks/useDownloadedTracks.d.ts +25 -0
- package/lib/hooks/useDownloadedTracks.js +69 -0
- package/lib/hooks/useEqualizer.d.ts +25 -0
- package/lib/hooks/useEqualizer.js +124 -0
- package/lib/hooks/useEqualizerPresets.d.ts +22 -0
- package/lib/hooks/useEqualizerPresets.js +96 -0
- package/lib/hooks/useNowPlaying.js +3 -2
- package/lib/hooks/useOnChangeTrack.js +15 -12
- package/lib/hooks/useOnPlaybackStateChange.js +16 -13
- package/lib/hooks/usePlaylist.d.ts +48 -0
- package/lib/hooks/usePlaylist.js +136 -0
- package/lib/index.d.ts +6 -0
- package/lib/index.js +6 -0
- package/lib/specs/DownloadManager.nitro.d.ts +152 -0
- package/lib/specs/DownloadManager.nitro.js +1 -0
- package/lib/specs/Equalizer.nitro.d.ts +43 -0
- package/lib/specs/Equalizer.nitro.js +1 -0
- package/lib/specs/TrackPlayer.nitro.d.ts +6 -2
- package/lib/types/DownloadTypes.d.ts +110 -0
- package/lib/types/DownloadTypes.js +1 -0
- package/lib/types/EqualizerTypes.d.ts +52 -0
- package/lib/types/EqualizerTypes.js +1 -0
- package/lib/types/PlayerQueue.d.ts +4 -0
- package/nitro.json +8 -0
- package/nitrogen/generated/android/NitroPlayer+autolinking.cmake +10 -1
- package/nitrogen/generated/android/NitroPlayerOnLoad.cpp +32 -2
- package/nitrogen/generated/android/c++/JCurrentPlayingType.hpp +65 -0
- package/nitrogen/generated/android/c++/JDownloadConfig.hpp +92 -0
- package/nitrogen/generated/android/c++/JDownloadError.hpp +71 -0
- package/nitrogen/generated/android/c++/JDownloadErrorReason.hpp +74 -0
- package/nitrogen/generated/android/c++/JDownloadProgress.hpp +79 -0
- package/nitrogen/generated/android/c++/JDownloadQueueStatus.hpp +81 -0
- package/nitrogen/generated/android/c++/JDownloadState.hpp +71 -0
- package/nitrogen/generated/android/c++/JDownloadStorageInfo.hpp +73 -0
- package/nitrogen/generated/android/c++/JDownloadTask.hpp +108 -0
- package/nitrogen/generated/android/c++/JDownloadedPlaylist.hpp +111 -0
- package/nitrogen/generated/android/c++/JDownloadedTrack.hpp +92 -0
- package/nitrogen/generated/android/c++/JEqualizerBand.hpp +69 -0
- package/nitrogen/generated/android/c++/JEqualizerPreset.hpp +78 -0
- package/nitrogen/generated/android/c++/JEqualizerState.hpp +91 -0
- package/nitrogen/generated/android/c++/JFunc_void_DownloadProgress.hpp +80 -0
- package/nitrogen/generated/android/c++/JFunc_void_DownloadedTrack.hpp +89 -0
- package/nitrogen/generated/android/c++/JFunc_void_TrackItem_std__optional_Reason_.hpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__optional_std__variant_nitro__NullType__std__string__.hpp +81 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__string_Playlist_std__optional_QueueOperation_.hpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__string_std__string_DownloadState_std__optional_DownloadError_.hpp +83 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_EqualizerBand_.hpp +97 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_Playlist__std__optional_QueueOperation_.hpp +2 -0
- package/nitrogen/generated/android/c++/JGainRange.hpp +61 -0
- package/nitrogen/generated/android/c++/JHybridDownloadManagerSpec.cpp +470 -0
- package/nitrogen/generated/android/c++/JHybridDownloadManagerSpec.hpp +99 -0
- package/nitrogen/generated/android/c++/JHybridEqualizerSpec.cpp +204 -0
- package/nitrogen/generated/android/c++/JHybridEqualizerSpec.hpp +82 -0
- package/nitrogen/generated/android/c++/JHybridPlayerQueueSpec.cpp +2 -0
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.cpp +117 -15
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.hpp +6 -2
- package/nitrogen/generated/android/c++/JPlaybackSource.hpp +62 -0
- package/nitrogen/generated/android/c++/JPlayerState.hpp +11 -3
- package/nitrogen/generated/android/c++/JPlaylist.hpp +2 -0
- package/nitrogen/generated/android/c++/JPresetType.hpp +59 -0
- package/nitrogen/generated/android/c++/JStorageLocation.hpp +59 -0
- package/nitrogen/generated/android/c++/JTrackItem.hpp +9 -3
- package/nitrogen/generated/android/c++/JTrackPlayerState.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_Double.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Double.hpp +69 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadError.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadError.hpp +74 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadTask.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadTask.hpp +84 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadedPlaylist.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadedPlaylist.hpp +85 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadedTrack.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DownloadedTrack.hpp +80 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Playlist.hpp +2 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_TrackItem.hpp +2 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/CurrentPlayingType.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadConfig.kt +59 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadError.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadErrorReason.kt +26 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadProgress.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadQueueStatus.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadState.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadStorageInfo.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadTask.kt +65 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadedPlaylist.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/DownloadedTrack.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/EqualizerBand.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/EqualizerPreset.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/EqualizerState.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_DownloadProgress.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_DownloadedTrack.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_std__optional_std__variant_nitro__NullType__std__string__.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_std__string_std__string_DownloadState_std__optional_DownloadError_.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_std__vector_EqualizerBand_.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/GainRange.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridDownloadManagerSpec.kt +210 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridEqualizerSpec.kt +141 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridTrackPlayerSpec.kt +19 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/PlaybackSource.kt +22 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/PlayerState.kt +6 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/PresetType.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/StorageLocation.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/TrackItem.kt +7 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/TrackPlayerState.kt +2 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Variant_NullType_Double.kt +59 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Variant_NullType_DownloadError.kt +59 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Variant_NullType_DownloadTask.kt +59 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Variant_NullType_DownloadedPlaylist.kt +59 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Variant_NullType_DownloadedTrack.kt +59 -0
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Bridge.cpp +138 -8
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Bridge.hpp +1046 -121
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Umbrella.hpp +66 -0
- package/nitrogen/generated/ios/NitroPlayerAutolinking.mm +16 -0
- package/nitrogen/generated/ios/NitroPlayerAutolinking.swift +30 -0
- package/nitrogen/generated/ios/c++/HybridDownloadManagerSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridDownloadManagerSpecSwift.hpp +386 -0
- package/nitrogen/generated/ios/c++/HybridEqualizerSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridEqualizerSpecSwift.hpp +223 -0
- package/nitrogen/generated/ios/c++/HybridPlayerQueueSpecSwift.hpp +1 -0
- package/nitrogen/generated/ios/c++/HybridTrackPlayerSpecSwift.hpp +46 -6
- package/nitrogen/generated/ios/swift/CurrentPlayingType.swift +48 -0
- package/nitrogen/generated/ios/swift/DownloadConfig.swift +270 -0
- package/nitrogen/generated/ios/swift/DownloadError.swift +69 -0
- package/nitrogen/generated/ios/swift/DownloadErrorReason.swift +60 -0
- package/nitrogen/generated/ios/swift/DownloadProgress.swift +91 -0
- package/nitrogen/generated/ios/swift/DownloadQueueStatus.swift +102 -0
- package/nitrogen/generated/ios/swift/DownloadState.swift +56 -0
- package/nitrogen/generated/ios/swift/DownloadStorageInfo.swift +80 -0
- package/nitrogen/generated/ios/swift/DownloadTask.swift +315 -0
- package/nitrogen/generated/ios/swift/DownloadedPlaylist.swift +103 -0
- package/nitrogen/generated/ios/swift/DownloadedTrack.swift +147 -0
- package/nitrogen/generated/ios/swift/EqualizerBand.swift +69 -0
- package/nitrogen/generated/ios/swift/EqualizerPreset.swift +70 -0
- package/nitrogen/generated/ios/swift/EqualizerState.swift +115 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_DownloadProgress.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_DownloadStorageInfo.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_DownloadedTrack.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_PlayerState.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +5 -5
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__variant_nitro__NullType__std__string__.swift +66 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string_std__string_DownloadState_std__optional_DownloadError_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_EqualizerBand_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_TrackItem_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_std__string_.swift +47 -0
- package/nitrogen/generated/ios/swift/GainRange.swift +47 -0
- package/nitrogen/generated/ios/swift/HybridDownloadManagerSpec.swift +90 -0
- package/nitrogen/generated/ios/swift/HybridDownloadManagerSpec_cxx.swift +705 -0
- package/nitrogen/generated/ios/swift/HybridEqualizerSpec.swift +73 -0
- package/nitrogen/generated/ios/swift/HybridEqualizerSpec_cxx.swift +396 -0
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec.swift +6 -2
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec_cxx.swift +105 -8
- package/nitrogen/generated/ios/swift/PlaybackSource.swift +44 -0
- package/nitrogen/generated/ios/swift/PlayerState.swift +13 -2
- package/nitrogen/generated/ios/swift/PresetType.swift +40 -0
- package/nitrogen/generated/ios/swift/StorageLocation.swift +40 -0
- package/nitrogen/generated/ios/swift/TrackItem.swift +31 -1
- package/nitrogen/generated/ios/swift/TrackPlayerState.swift +4 -4
- package/nitrogen/generated/ios/swift/Variant_NullType_Double.swift +18 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_DownloadError.swift +18 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_DownloadTask.swift +18 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_DownloadedPlaylist.swift +18 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_DownloadedTrack.swift +18 -0
- package/nitrogen/generated/shared/c++/CurrentPlayingType.hpp +84 -0
- package/nitrogen/generated/shared/c++/DownloadConfig.hpp +108 -0
- package/nitrogen/generated/shared/c++/DownloadError.hpp +89 -0
- package/nitrogen/generated/shared/c++/DownloadErrorReason.hpp +96 -0
- package/nitrogen/generated/shared/c++/DownloadProgress.hpp +97 -0
- package/nitrogen/generated/shared/c++/DownloadQueueStatus.hpp +99 -0
- package/nitrogen/generated/shared/c++/DownloadState.hpp +92 -0
- package/nitrogen/generated/shared/c++/DownloadStorageInfo.hpp +91 -0
- package/nitrogen/generated/shared/c++/DownloadTask.hpp +122 -0
- package/nitrogen/generated/shared/c++/DownloadedPlaylist.hpp +101 -0
- package/nitrogen/generated/shared/c++/DownloadedTrack.hpp +107 -0
- package/nitrogen/generated/shared/c++/EqualizerBand.hpp +87 -0
- package/nitrogen/generated/shared/c++/EqualizerPreset.hpp +86 -0
- package/nitrogen/generated/shared/c++/EqualizerState.hpp +89 -0
- package/nitrogen/generated/shared/c++/GainRange.hpp +79 -0
- package/nitrogen/generated/shared/c++/HybridDownloadManagerSpec.cpp +55 -0
- package/nitrogen/generated/shared/c++/HybridDownloadManagerSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridEqualizerSpec.cpp +38 -0
- package/nitrogen/generated/shared/c++/HybridEqualizerSpec.hpp +95 -0
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.cpp +4 -0
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.hpp +11 -5
- package/nitrogen/generated/shared/c++/PlaybackSource.hpp +80 -0
- package/nitrogen/generated/shared/c++/PlayerState.hpp +9 -2
- package/nitrogen/generated/shared/c++/PresetType.hpp +76 -0
- package/nitrogen/generated/shared/c++/StorageLocation.hpp +76 -0
- package/nitrogen/generated/shared/c++/TrackItem.hpp +7 -2
- package/nitrogen/generated/shared/c++/TrackPlayerState.hpp +5 -5
- package/package.json +1 -1
- package/src/hooks/downloadCallbackManager.ts +149 -0
- package/src/hooks/equalizerCallbackManager.ts +138 -0
- package/src/hooks/index.ts +23 -0
- package/src/hooks/useActualQueue.ts +116 -0
- package/src/hooks/useDownloadActions.ts +179 -0
- package/src/hooks/useDownloadProgress.ts +126 -0
- package/src/hooks/useDownloadStorage.ts +84 -0
- package/src/hooks/useDownloadedTracks.ts +138 -0
- package/src/hooks/useEqualizer.ts +173 -0
- package/src/hooks/useEqualizerPresets.ts +140 -0
- package/src/hooks/useNowPlaying.ts +3 -2
- package/src/hooks/useOnChangeTrack.ts +15 -11
- package/src/hooks/useOnPlaybackStateChange.ts +19 -15
- package/src/hooks/usePlaylist.ts +161 -0
- package/src/index.ts +12 -0
- package/src/specs/DownloadManager.nitro.ts +203 -0
- package/src/specs/Equalizer.nitro.ts +69 -0
- package/src/specs/TrackPlayer.nitro.ts +6 -2
- package/src/types/DownloadTypes.ts +135 -0
- package/src/types/EqualizerTypes.ts +72 -0
- package/src/types/PlayerQueue.ts +9 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridEqualizerSpec.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
import Foundation
|
|
9
|
+
import NitroModules
|
|
10
|
+
|
|
11
|
+
/// See ``HybridEqualizerSpec``
|
|
12
|
+
public protocol HybridEqualizerSpec_protocol: HybridObject {
|
|
13
|
+
// Properties
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
// Methods
|
|
17
|
+
func setEnabled(enabled: Bool) throws -> Bool
|
|
18
|
+
func isEnabled() throws -> Bool
|
|
19
|
+
func getBands() throws -> [EqualizerBand]
|
|
20
|
+
func setBandGain(bandIndex: Double, gainDb: Double) throws -> Bool
|
|
21
|
+
func setAllBandGains(gains: [Double]) throws -> Bool
|
|
22
|
+
func getBandRange() throws -> GainRange
|
|
23
|
+
func getPresets() throws -> [EqualizerPreset]
|
|
24
|
+
func getBuiltInPresets() throws -> [EqualizerPreset]
|
|
25
|
+
func getCustomPresets() throws -> [EqualizerPreset]
|
|
26
|
+
func applyPreset(presetName: String) throws -> Bool
|
|
27
|
+
func getCurrentPresetName() throws -> Variant_NullType_String
|
|
28
|
+
func saveCustomPreset(name: String) throws -> Bool
|
|
29
|
+
func deleteCustomPreset(name: String) throws -> Bool
|
|
30
|
+
func getState() throws -> EqualizerState
|
|
31
|
+
func reset() throws -> Void
|
|
32
|
+
func onEnabledChange(callback: @escaping (_ enabled: Bool) -> Void) throws -> Void
|
|
33
|
+
func onBandChange(callback: @escaping (_ bands: [EqualizerBand]) -> Void) throws -> Void
|
|
34
|
+
func onPresetChange(callback: @escaping (_ presetName: Variant_NullType_String?) -> Void) throws -> Void
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public extension HybridEqualizerSpec_protocol {
|
|
38
|
+
/// Default implementation of ``HybridObject.toString``
|
|
39
|
+
func toString() -> String {
|
|
40
|
+
return "[HybridObject Equalizer]"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/// See ``HybridEqualizerSpec``
|
|
45
|
+
open class HybridEqualizerSpec_base {
|
|
46
|
+
private weak var cxxWrapper: HybridEqualizerSpec_cxx? = nil
|
|
47
|
+
public init() { }
|
|
48
|
+
public func getCxxWrapper() -> HybridEqualizerSpec_cxx {
|
|
49
|
+
#if DEBUG
|
|
50
|
+
guard self is HybridEqualizerSpec else {
|
|
51
|
+
fatalError("`self` is not a `HybridEqualizerSpec`! Did you accidentally inherit from `HybridEqualizerSpec_base` instead of `HybridEqualizerSpec`?")
|
|
52
|
+
}
|
|
53
|
+
#endif
|
|
54
|
+
if let cxxWrapper = self.cxxWrapper {
|
|
55
|
+
return cxxWrapper
|
|
56
|
+
} else {
|
|
57
|
+
let cxxWrapper = HybridEqualizerSpec_cxx(self as! HybridEqualizerSpec)
|
|
58
|
+
self.cxxWrapper = cxxWrapper
|
|
59
|
+
return cxxWrapper
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* A Swift base-protocol representing the Equalizer HybridObject.
|
|
66
|
+
* Implement this protocol to create Swift-based instances of Equalizer.
|
|
67
|
+
* ```swift
|
|
68
|
+
* class HybridEqualizer : HybridEqualizerSpec {
|
|
69
|
+
* // ...
|
|
70
|
+
* }
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
public typealias HybridEqualizerSpec = HybridEqualizerSpec_protocol & HybridEqualizerSpec_base
|
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridEqualizerSpec_cxx.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
import Foundation
|
|
9
|
+
import NitroModules
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* A class implementation that bridges HybridEqualizerSpec over to C++.
|
|
13
|
+
* In C++, we cannot use Swift protocols - so we need to wrap it in a class to make it strongly defined.
|
|
14
|
+
*
|
|
15
|
+
* Also, some Swift types need to be bridged with special handling:
|
|
16
|
+
* - Enums need to be wrapped in Structs, otherwise they cannot be accessed bi-directionally (Swift bug: https://github.com/swiftlang/swift/issues/75330)
|
|
17
|
+
* - Other HybridObjects need to be wrapped/unwrapped from the Swift TCxx wrapper
|
|
18
|
+
* - Throwing methods need to be wrapped with a Result<T, Error> type, as exceptions cannot be propagated to C++
|
|
19
|
+
*/
|
|
20
|
+
open class HybridEqualizerSpec_cxx {
|
|
21
|
+
/**
|
|
22
|
+
* The Swift <> C++ bridge's namespace (`margelo::nitro::nitroplayer::bridge::swift`)
|
|
23
|
+
* from `NitroPlayer-Swift-Cxx-Bridge.hpp`.
|
|
24
|
+
* This contains specialized C++ templates, and C++ helper functions that can be accessed from Swift.
|
|
25
|
+
*/
|
|
26
|
+
public typealias bridge = margelo.nitro.nitroplayer.bridge.swift
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Holds an instance of the `HybridEqualizerSpec` Swift protocol.
|
|
30
|
+
*/
|
|
31
|
+
private var __implementation: any HybridEqualizerSpec
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Holds a weak pointer to the C++ class that wraps the Swift class.
|
|
35
|
+
*/
|
|
36
|
+
private var __cxxPart: bridge.std__weak_ptr_HybridEqualizerSpec_
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Create a new `HybridEqualizerSpec_cxx` that wraps the given `HybridEqualizerSpec`.
|
|
40
|
+
* All properties and methods bridge to C++ types.
|
|
41
|
+
*/
|
|
42
|
+
public init(_ implementation: any HybridEqualizerSpec) {
|
|
43
|
+
self.__implementation = implementation
|
|
44
|
+
self.__cxxPart = .init()
|
|
45
|
+
/* no base class */
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Get the actual `HybridEqualizerSpec` instance this class wraps.
|
|
50
|
+
*/
|
|
51
|
+
@inline(__always)
|
|
52
|
+
public func getHybridEqualizerSpec() -> any HybridEqualizerSpec {
|
|
53
|
+
return __implementation
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Casts this instance to a retained unsafe raw pointer.
|
|
58
|
+
* This acquires one additional strong reference on the object!
|
|
59
|
+
*/
|
|
60
|
+
public func toUnsafe() -> UnsafeMutableRawPointer {
|
|
61
|
+
return Unmanaged.passRetained(self).toOpaque()
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Casts an unsafe pointer to a `HybridEqualizerSpec_cxx`.
|
|
66
|
+
* The pointer has to be a retained opaque `Unmanaged<HybridEqualizerSpec_cxx>`.
|
|
67
|
+
* This removes one strong reference from the object!
|
|
68
|
+
*/
|
|
69
|
+
public class func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> HybridEqualizerSpec_cxx {
|
|
70
|
+
return Unmanaged<HybridEqualizerSpec_cxx>.fromOpaque(pointer).takeRetainedValue()
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Gets (or creates) the C++ part of this Hybrid Object.
|
|
75
|
+
* The C++ part is a `std::shared_ptr<HybridEqualizerSpec>`.
|
|
76
|
+
*/
|
|
77
|
+
public func getCxxPart() -> bridge.std__shared_ptr_HybridEqualizerSpec_ {
|
|
78
|
+
let cachedCxxPart = self.__cxxPart.lock()
|
|
79
|
+
if Bool(fromCxx: cachedCxxPart) {
|
|
80
|
+
return cachedCxxPart
|
|
81
|
+
} else {
|
|
82
|
+
let newCxxPart = bridge.create_std__shared_ptr_HybridEqualizerSpec_(self.toUnsafe())
|
|
83
|
+
__cxxPart = bridge.weakify_std__shared_ptr_HybridEqualizerSpec_(newCxxPart)
|
|
84
|
+
return newCxxPart
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Get the memory size of the Swift class (plus size of any other allocations)
|
|
92
|
+
* so the JS VM can properly track it and garbage-collect the JS object if needed.
|
|
93
|
+
*/
|
|
94
|
+
@inline(__always)
|
|
95
|
+
public var memorySize: Int {
|
|
96
|
+
return MemoryHelper.getSizeOf(self.__implementation) + self.__implementation.memorySize
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Call dispose() on the Swift class.
|
|
101
|
+
* This _may_ be called manually from JS.
|
|
102
|
+
*/
|
|
103
|
+
@inline(__always)
|
|
104
|
+
public func dispose() {
|
|
105
|
+
self.__implementation.dispose()
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Call toString() on the Swift class.
|
|
110
|
+
*/
|
|
111
|
+
@inline(__always)
|
|
112
|
+
public func toString() -> String {
|
|
113
|
+
return self.__implementation.toString()
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// Properties
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
// Methods
|
|
120
|
+
@inline(__always)
|
|
121
|
+
public final func setEnabled(enabled: Bool) -> bridge.Result_bool_ {
|
|
122
|
+
do {
|
|
123
|
+
let __result = try self.__implementation.setEnabled(enabled: enabled)
|
|
124
|
+
let __resultCpp = __result
|
|
125
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
126
|
+
} catch (let __error) {
|
|
127
|
+
let __exceptionPtr = __error.toCpp()
|
|
128
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
@inline(__always)
|
|
133
|
+
public final func isEnabled() -> bridge.Result_bool_ {
|
|
134
|
+
do {
|
|
135
|
+
let __result = try self.__implementation.isEnabled()
|
|
136
|
+
let __resultCpp = __result
|
|
137
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
138
|
+
} catch (let __error) {
|
|
139
|
+
let __exceptionPtr = __error.toCpp()
|
|
140
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
@inline(__always)
|
|
145
|
+
public final func getBands() -> bridge.Result_std__vector_EqualizerBand__ {
|
|
146
|
+
do {
|
|
147
|
+
let __result = try self.__implementation.getBands()
|
|
148
|
+
let __resultCpp = { () -> bridge.std__vector_EqualizerBand_ in
|
|
149
|
+
var __vector = bridge.create_std__vector_EqualizerBand_(__result.count)
|
|
150
|
+
for __item in __result {
|
|
151
|
+
__vector.push_back(__item)
|
|
152
|
+
}
|
|
153
|
+
return __vector
|
|
154
|
+
}()
|
|
155
|
+
return bridge.create_Result_std__vector_EqualizerBand__(__resultCpp)
|
|
156
|
+
} catch (let __error) {
|
|
157
|
+
let __exceptionPtr = __error.toCpp()
|
|
158
|
+
return bridge.create_Result_std__vector_EqualizerBand__(__exceptionPtr)
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
@inline(__always)
|
|
163
|
+
public final func setBandGain(bandIndex: Double, gainDb: Double) -> bridge.Result_bool_ {
|
|
164
|
+
do {
|
|
165
|
+
let __result = try self.__implementation.setBandGain(bandIndex: bandIndex, gainDb: gainDb)
|
|
166
|
+
let __resultCpp = __result
|
|
167
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
168
|
+
} catch (let __error) {
|
|
169
|
+
let __exceptionPtr = __error.toCpp()
|
|
170
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
@inline(__always)
|
|
175
|
+
public final func setAllBandGains(gains: bridge.std__vector_double_) -> bridge.Result_bool_ {
|
|
176
|
+
do {
|
|
177
|
+
let __result = try self.__implementation.setAllBandGains(gains: gains.map({ __item in __item }))
|
|
178
|
+
let __resultCpp = __result
|
|
179
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
180
|
+
} catch (let __error) {
|
|
181
|
+
let __exceptionPtr = __error.toCpp()
|
|
182
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
@inline(__always)
|
|
187
|
+
public final func getBandRange() -> bridge.Result_GainRange_ {
|
|
188
|
+
do {
|
|
189
|
+
let __result = try self.__implementation.getBandRange()
|
|
190
|
+
let __resultCpp = __result
|
|
191
|
+
return bridge.create_Result_GainRange_(__resultCpp)
|
|
192
|
+
} catch (let __error) {
|
|
193
|
+
let __exceptionPtr = __error.toCpp()
|
|
194
|
+
return bridge.create_Result_GainRange_(__exceptionPtr)
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
@inline(__always)
|
|
199
|
+
public final func getPresets() -> bridge.Result_std__vector_EqualizerPreset__ {
|
|
200
|
+
do {
|
|
201
|
+
let __result = try self.__implementation.getPresets()
|
|
202
|
+
let __resultCpp = { () -> bridge.std__vector_EqualizerPreset_ in
|
|
203
|
+
var __vector = bridge.create_std__vector_EqualizerPreset_(__result.count)
|
|
204
|
+
for __item in __result {
|
|
205
|
+
__vector.push_back(__item)
|
|
206
|
+
}
|
|
207
|
+
return __vector
|
|
208
|
+
}()
|
|
209
|
+
return bridge.create_Result_std__vector_EqualizerPreset__(__resultCpp)
|
|
210
|
+
} catch (let __error) {
|
|
211
|
+
let __exceptionPtr = __error.toCpp()
|
|
212
|
+
return bridge.create_Result_std__vector_EqualizerPreset__(__exceptionPtr)
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
@inline(__always)
|
|
217
|
+
public final func getBuiltInPresets() -> bridge.Result_std__vector_EqualizerPreset__ {
|
|
218
|
+
do {
|
|
219
|
+
let __result = try self.__implementation.getBuiltInPresets()
|
|
220
|
+
let __resultCpp = { () -> bridge.std__vector_EqualizerPreset_ in
|
|
221
|
+
var __vector = bridge.create_std__vector_EqualizerPreset_(__result.count)
|
|
222
|
+
for __item in __result {
|
|
223
|
+
__vector.push_back(__item)
|
|
224
|
+
}
|
|
225
|
+
return __vector
|
|
226
|
+
}()
|
|
227
|
+
return bridge.create_Result_std__vector_EqualizerPreset__(__resultCpp)
|
|
228
|
+
} catch (let __error) {
|
|
229
|
+
let __exceptionPtr = __error.toCpp()
|
|
230
|
+
return bridge.create_Result_std__vector_EqualizerPreset__(__exceptionPtr)
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
@inline(__always)
|
|
235
|
+
public final func getCustomPresets() -> bridge.Result_std__vector_EqualizerPreset__ {
|
|
236
|
+
do {
|
|
237
|
+
let __result = try self.__implementation.getCustomPresets()
|
|
238
|
+
let __resultCpp = { () -> bridge.std__vector_EqualizerPreset_ in
|
|
239
|
+
var __vector = bridge.create_std__vector_EqualizerPreset_(__result.count)
|
|
240
|
+
for __item in __result {
|
|
241
|
+
__vector.push_back(__item)
|
|
242
|
+
}
|
|
243
|
+
return __vector
|
|
244
|
+
}()
|
|
245
|
+
return bridge.create_Result_std__vector_EqualizerPreset__(__resultCpp)
|
|
246
|
+
} catch (let __error) {
|
|
247
|
+
let __exceptionPtr = __error.toCpp()
|
|
248
|
+
return bridge.create_Result_std__vector_EqualizerPreset__(__exceptionPtr)
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
@inline(__always)
|
|
253
|
+
public final func applyPreset(presetName: std.string) -> bridge.Result_bool_ {
|
|
254
|
+
do {
|
|
255
|
+
let __result = try self.__implementation.applyPreset(presetName: String(presetName))
|
|
256
|
+
let __resultCpp = __result
|
|
257
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
258
|
+
} catch (let __error) {
|
|
259
|
+
let __exceptionPtr = __error.toCpp()
|
|
260
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
@inline(__always)
|
|
265
|
+
public final func getCurrentPresetName() -> bridge.Result_std__variant_nitro__NullType__std__string__ {
|
|
266
|
+
do {
|
|
267
|
+
let __result = try self.__implementation.getCurrentPresetName()
|
|
268
|
+
let __resultCpp = { () -> bridge.std__variant_nitro__NullType__std__string_ in
|
|
269
|
+
switch __result {
|
|
270
|
+
case .first(let __value):
|
|
271
|
+
return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
|
|
272
|
+
case .second(let __value):
|
|
273
|
+
return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
|
|
274
|
+
}
|
|
275
|
+
}().variant
|
|
276
|
+
return bridge.create_Result_std__variant_nitro__NullType__std__string__(__resultCpp)
|
|
277
|
+
} catch (let __error) {
|
|
278
|
+
let __exceptionPtr = __error.toCpp()
|
|
279
|
+
return bridge.create_Result_std__variant_nitro__NullType__std__string__(__exceptionPtr)
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
@inline(__always)
|
|
284
|
+
public final func saveCustomPreset(name: std.string) -> bridge.Result_bool_ {
|
|
285
|
+
do {
|
|
286
|
+
let __result = try self.__implementation.saveCustomPreset(name: String(name))
|
|
287
|
+
let __resultCpp = __result
|
|
288
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
289
|
+
} catch (let __error) {
|
|
290
|
+
let __exceptionPtr = __error.toCpp()
|
|
291
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
@inline(__always)
|
|
296
|
+
public final func deleteCustomPreset(name: std.string) -> bridge.Result_bool_ {
|
|
297
|
+
do {
|
|
298
|
+
let __result = try self.__implementation.deleteCustomPreset(name: String(name))
|
|
299
|
+
let __resultCpp = __result
|
|
300
|
+
return bridge.create_Result_bool_(__resultCpp)
|
|
301
|
+
} catch (let __error) {
|
|
302
|
+
let __exceptionPtr = __error.toCpp()
|
|
303
|
+
return bridge.create_Result_bool_(__exceptionPtr)
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
@inline(__always)
|
|
308
|
+
public final func getState() -> bridge.Result_EqualizerState_ {
|
|
309
|
+
do {
|
|
310
|
+
let __result = try self.__implementation.getState()
|
|
311
|
+
let __resultCpp = __result
|
|
312
|
+
return bridge.create_Result_EqualizerState_(__resultCpp)
|
|
313
|
+
} catch (let __error) {
|
|
314
|
+
let __exceptionPtr = __error.toCpp()
|
|
315
|
+
return bridge.create_Result_EqualizerState_(__exceptionPtr)
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
@inline(__always)
|
|
320
|
+
public final func reset() -> bridge.Result_void_ {
|
|
321
|
+
do {
|
|
322
|
+
try self.__implementation.reset()
|
|
323
|
+
return bridge.create_Result_void_()
|
|
324
|
+
} catch (let __error) {
|
|
325
|
+
let __exceptionPtr = __error.toCpp()
|
|
326
|
+
return bridge.create_Result_void_(__exceptionPtr)
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
@inline(__always)
|
|
331
|
+
public final func onEnabledChange(callback: bridge.Func_void_bool) -> bridge.Result_void_ {
|
|
332
|
+
do {
|
|
333
|
+
try self.__implementation.onEnabledChange(callback: { () -> (Bool) -> Void in
|
|
334
|
+
let __wrappedFunction = bridge.wrap_Func_void_bool(callback)
|
|
335
|
+
return { (__enabled: Bool) -> Void in
|
|
336
|
+
__wrappedFunction.call(__enabled)
|
|
337
|
+
}
|
|
338
|
+
}())
|
|
339
|
+
return bridge.create_Result_void_()
|
|
340
|
+
} catch (let __error) {
|
|
341
|
+
let __exceptionPtr = __error.toCpp()
|
|
342
|
+
return bridge.create_Result_void_(__exceptionPtr)
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
@inline(__always)
|
|
347
|
+
public final func onBandChange(callback: bridge.Func_void_std__vector_EqualizerBand_) -> bridge.Result_void_ {
|
|
348
|
+
do {
|
|
349
|
+
try self.__implementation.onBandChange(callback: { () -> ([EqualizerBand]) -> Void in
|
|
350
|
+
let __wrappedFunction = bridge.wrap_Func_void_std__vector_EqualizerBand_(callback)
|
|
351
|
+
return { (__bands: [EqualizerBand]) -> Void in
|
|
352
|
+
__wrappedFunction.call({ () -> bridge.std__vector_EqualizerBand_ in
|
|
353
|
+
var __vector = bridge.create_std__vector_EqualizerBand_(__bands.count)
|
|
354
|
+
for __item in __bands {
|
|
355
|
+
__vector.push_back(__item)
|
|
356
|
+
}
|
|
357
|
+
return __vector
|
|
358
|
+
}())
|
|
359
|
+
}
|
|
360
|
+
}())
|
|
361
|
+
return bridge.create_Result_void_()
|
|
362
|
+
} catch (let __error) {
|
|
363
|
+
let __exceptionPtr = __error.toCpp()
|
|
364
|
+
return bridge.create_Result_void_(__exceptionPtr)
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
@inline(__always)
|
|
369
|
+
public final func onPresetChange(callback: bridge.Func_void_std__optional_std__variant_nitro__NullType__std__string__) -> bridge.Result_void_ {
|
|
370
|
+
do {
|
|
371
|
+
try self.__implementation.onPresetChange(callback: { () -> (Variant_NullType_String?) -> Void in
|
|
372
|
+
let __wrappedFunction = bridge.wrap_Func_void_std__optional_std__variant_nitro__NullType__std__string__(callback)
|
|
373
|
+
return { (__presetName: Variant_NullType_String?) -> Void in
|
|
374
|
+
__wrappedFunction.call({ () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
|
|
375
|
+
if let __unwrappedValue = __presetName {
|
|
376
|
+
return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
|
|
377
|
+
switch __unwrappedValue {
|
|
378
|
+
case .first(let __value):
|
|
379
|
+
return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
|
|
380
|
+
case .second(let __value):
|
|
381
|
+
return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
|
|
382
|
+
}
|
|
383
|
+
}().variant)
|
|
384
|
+
} else {
|
|
385
|
+
return .init()
|
|
386
|
+
}
|
|
387
|
+
}())
|
|
388
|
+
}
|
|
389
|
+
}())
|
|
390
|
+
return bridge.create_Result_void_()
|
|
391
|
+
} catch (let __error) {
|
|
392
|
+
let __exceptionPtr = __error.toCpp()
|
|
393
|
+
return bridge.create_Result_void_(__exceptionPtr)
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
}
|
|
@@ -16,11 +16,15 @@ public protocol HybridTrackPlayerSpec_protocol: HybridObject {
|
|
|
16
16
|
// Methods
|
|
17
17
|
func play() throws -> Void
|
|
18
18
|
func pause() throws -> Void
|
|
19
|
-
func playSong(songId: String, fromPlaylist: String?) throws -> Void
|
|
19
|
+
func playSong(songId: String, fromPlaylist: String?) throws -> Promise<Void>
|
|
20
20
|
func skipToNext() throws -> Void
|
|
21
|
+
func skipToIndex(index: Double) throws -> Promise<Bool>
|
|
21
22
|
func skipToPrevious() throws -> Void
|
|
22
23
|
func seek(position: Double) throws -> Void
|
|
23
|
-
func
|
|
24
|
+
func addToUpNext(trackId: String) throws -> Promise<Void>
|
|
25
|
+
func playNext(trackId: String) throws -> Promise<Void>
|
|
26
|
+
func getActualQueue() throws -> Promise<[TrackItem]>
|
|
27
|
+
func getState() throws -> Promise<PlayerState>
|
|
24
28
|
func setRepeatMode(mode: RepeatMode) throws -> Bool
|
|
25
29
|
func configure(config: PlayerConfig) throws -> Void
|
|
26
30
|
func onChangeTrack(callback: @escaping (_ track: TrackItem, _ reason: Reason?) -> Void) throws -> Void
|
|
@@ -140,9 +140,9 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
@inline(__always)
|
|
143
|
-
public final func playSong(songId: std.string, fromPlaylist: bridge.std__optional_std__string_) -> bridge.
|
|
143
|
+
public final func playSong(songId: std.string, fromPlaylist: bridge.std__optional_std__string_) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
144
144
|
do {
|
|
145
|
-
try self.__implementation.playSong(songId: String(songId), fromPlaylist: { () -> String? in
|
|
145
|
+
let __result = try self.__implementation.playSong(songId: String(songId), fromPlaylist: { () -> String? in
|
|
146
146
|
if bridge.has_value_std__optional_std__string_(fromPlaylist) {
|
|
147
147
|
let __unwrapped = bridge.get_std__optional_std__string_(fromPlaylist)
|
|
148
148
|
return String(__unwrapped)
|
|
@@ -150,10 +150,18 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
150
150
|
return nil
|
|
151
151
|
}
|
|
152
152
|
}())
|
|
153
|
-
|
|
153
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
154
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
155
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
156
|
+
__result
|
|
157
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
158
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
159
|
+
return __promise
|
|
160
|
+
}()
|
|
161
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
154
162
|
} catch (let __error) {
|
|
155
163
|
let __exceptionPtr = __error.toCpp()
|
|
156
|
-
return bridge.
|
|
164
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
157
165
|
}
|
|
158
166
|
}
|
|
159
167
|
|
|
@@ -168,6 +176,25 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
168
176
|
}
|
|
169
177
|
}
|
|
170
178
|
|
|
179
|
+
@inline(__always)
|
|
180
|
+
public final func skipToIndex(index: Double) -> bridge.Result_std__shared_ptr_Promise_bool___ {
|
|
181
|
+
do {
|
|
182
|
+
let __result = try self.__implementation.skipToIndex(index: index)
|
|
183
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
|
|
184
|
+
let __promise = bridge.create_std__shared_ptr_Promise_bool__()
|
|
185
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
|
|
186
|
+
__result
|
|
187
|
+
.then({ __result in __promiseHolder.resolve(__result) })
|
|
188
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
189
|
+
return __promise
|
|
190
|
+
}()
|
|
191
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
|
|
192
|
+
} catch (let __error) {
|
|
193
|
+
let __exceptionPtr = __error.toCpp()
|
|
194
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
171
198
|
@inline(__always)
|
|
172
199
|
public final func skipToPrevious() -> bridge.Result_void_ {
|
|
173
200
|
do {
|
|
@@ -191,14 +218,84 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
191
218
|
}
|
|
192
219
|
|
|
193
220
|
@inline(__always)
|
|
194
|
-
public final func
|
|
221
|
+
public final func addToUpNext(trackId: std.string) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
222
|
+
do {
|
|
223
|
+
let __result = try self.__implementation.addToUpNext(trackId: String(trackId))
|
|
224
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
225
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
226
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
227
|
+
__result
|
|
228
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
229
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
230
|
+
return __promise
|
|
231
|
+
}()
|
|
232
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
233
|
+
} catch (let __error) {
|
|
234
|
+
let __exceptionPtr = __error.toCpp()
|
|
235
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
@inline(__always)
|
|
240
|
+
public final func playNext(trackId: std.string) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
241
|
+
do {
|
|
242
|
+
let __result = try self.__implementation.playNext(trackId: String(trackId))
|
|
243
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
244
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
245
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
246
|
+
__result
|
|
247
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
248
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
249
|
+
return __promise
|
|
250
|
+
}()
|
|
251
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
252
|
+
} catch (let __error) {
|
|
253
|
+
let __exceptionPtr = __error.toCpp()
|
|
254
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
@inline(__always)
|
|
259
|
+
public final func getActualQueue() -> bridge.Result_std__shared_ptr_Promise_std__vector_TrackItem____ {
|
|
260
|
+
do {
|
|
261
|
+
let __result = try self.__implementation.getActualQueue()
|
|
262
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_TrackItem___ in
|
|
263
|
+
let __promise = bridge.create_std__shared_ptr_Promise_std__vector_TrackItem___()
|
|
264
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_TrackItem___(__promise)
|
|
265
|
+
__result
|
|
266
|
+
.then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_TrackItem_ in
|
|
267
|
+
var __vector = bridge.create_std__vector_TrackItem_(__result.count)
|
|
268
|
+
for __item in __result {
|
|
269
|
+
__vector.push_back(__item)
|
|
270
|
+
}
|
|
271
|
+
return __vector
|
|
272
|
+
}()) })
|
|
273
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
274
|
+
return __promise
|
|
275
|
+
}()
|
|
276
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(__resultCpp)
|
|
277
|
+
} catch (let __error) {
|
|
278
|
+
let __exceptionPtr = __error.toCpp()
|
|
279
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(__exceptionPtr)
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
@inline(__always)
|
|
284
|
+
public final func getState() -> bridge.Result_std__shared_ptr_Promise_PlayerState___ {
|
|
195
285
|
do {
|
|
196
286
|
let __result = try self.__implementation.getState()
|
|
197
|
-
let __resultCpp =
|
|
198
|
-
|
|
287
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_PlayerState__ in
|
|
288
|
+
let __promise = bridge.create_std__shared_ptr_Promise_PlayerState__()
|
|
289
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_PlayerState__(__promise)
|
|
290
|
+
__result
|
|
291
|
+
.then({ __result in __promiseHolder.resolve(__result) })
|
|
292
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
293
|
+
return __promise
|
|
294
|
+
}()
|
|
295
|
+
return bridge.create_Result_std__shared_ptr_Promise_PlayerState___(__resultCpp)
|
|
199
296
|
} catch (let __error) {
|
|
200
297
|
let __exceptionPtr = __error.toCpp()
|
|
201
|
-
return bridge.
|
|
298
|
+
return bridge.create_Result_std__shared_ptr_Promise_PlayerState___(__exceptionPtr)
|
|
202
299
|
}
|
|
203
300
|
}
|
|
204
301
|
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// PlaybackSource.swift
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Represents the JS union `PlaybackSource`, backed by a C++ enum.
|
|
10
|
+
*/
|
|
11
|
+
public typealias PlaybackSource = margelo.nitro.nitroplayer.PlaybackSource
|
|
12
|
+
|
|
13
|
+
public extension PlaybackSource {
|
|
14
|
+
/**
|
|
15
|
+
* Get a PlaybackSource for the given String value, or
|
|
16
|
+
* return `nil` if the given value was invalid/unknown.
|
|
17
|
+
*/
|
|
18
|
+
init?(fromString string: String) {
|
|
19
|
+
switch string {
|
|
20
|
+
case "auto":
|
|
21
|
+
self = .auto
|
|
22
|
+
case "download":
|
|
23
|
+
self = .download
|
|
24
|
+
case "network":
|
|
25
|
+
self = .network
|
|
26
|
+
default:
|
|
27
|
+
return nil
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Get the String value this PlaybackSource represents.
|
|
33
|
+
*/
|
|
34
|
+
var stringValue: String {
|
|
35
|
+
switch self {
|
|
36
|
+
case .auto:
|
|
37
|
+
return "auto"
|
|
38
|
+
case .download:
|
|
39
|
+
return "download"
|
|
40
|
+
case .network:
|
|
41
|
+
return "network"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|