react-native-nitro-player 0.7.0 → 0.7.1-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -46
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridAndroidAutoMediaLibrary.kt +9 -13
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridAudioDevices.kt +45 -90
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridDownloadManager.kt +48 -182
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridEqualizer.kt +21 -77
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridPlayerQueue.kt +55 -104
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridTrackPlayer.kt +113 -123
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/ExoPlayerCore.kt +82 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/ListenerRegistry.kt +48 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerAndroidAuto.kt +62 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerCore.kt +153 -1887
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerListener.kt +122 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerNotify.kt +44 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerPlayback.kt +162 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerQueue.kt +179 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerQueueBuild.kt +170 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerSetup.kt +28 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerTempQueue.kt +121 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerUrlLoader.kt +98 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/download/DownloadDatabase.kt +27 -18
- package/android/src/main/java/com/margelo/nitro/nitroplayer/equalizer/EqualizerCore.kt +150 -135
- package/android/src/main/java/com/margelo/nitro/nitroplayer/media/MediaSessionManager.kt +13 -30
- package/android/src/main/java/com/margelo/nitro/nitroplayer/playlist/PlaylistManager.kt +102 -162
- package/ios/HybridDownloadManager.swift +32 -26
- package/ios/HybridEqualizer.swift +48 -35
- package/ios/HybridTrackPlayer.swift +127 -102
- package/ios/core/ListenerRegistry.swift +60 -0
- package/ios/core/TrackPlayerCore.swift +130 -2356
- package/ios/core/TrackPlayerListener.swift +395 -0
- package/ios/core/TrackPlayerNotify.swift +52 -0
- package/ios/core/TrackPlayerPlayback.swift +274 -0
- package/ios/core/TrackPlayerQueue.swift +221 -0
- package/ios/core/TrackPlayerQueueBuild.swift +493 -0
- package/ios/core/TrackPlayerTempQueue.swift +167 -0
- package/ios/core/TrackPlayerUrlLoader.swift +169 -0
- package/ios/equalizer/EqualizerCore.swift +63 -123
- package/ios/media/MediaSessionManager.swift +32 -49
- package/ios/playlist/PlaylistManager.swift +2 -9
- package/ios/queue/HybridPlayerQueue.swift +69 -66
- package/lib/hooks/useDownloadedTracks.js +16 -13
- package/lib/hooks/useEqualizer.d.ts +4 -4
- package/lib/hooks/useEqualizer.js +22 -17
- package/lib/hooks/useEqualizerPresets.d.ts +3 -3
- package/lib/hooks/useEqualizerPresets.js +12 -18
- package/lib/specs/AndroidAutoMediaLibrary.nitro.d.ts +2 -2
- package/lib/specs/AudioDevices.nitro.d.ts +2 -2
- package/lib/specs/DownloadManager.nitro.d.ts +10 -10
- package/lib/specs/Equalizer.nitro.d.ts +10 -10
- package/lib/specs/TrackPlayer.nitro.d.ts +38 -16
- package/lib/types/EqualizerTypes.d.ts +3 -3
- package/nitrogen/generated/android/NitroPlayerOnLoad.cpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_TrackItem__std__vector_TrackItem_.hpp +122 -0
- package/nitrogen/generated/android/c++/JHybridAndroidAutoMediaLibrarySpec.cpp +31 -6
- package/nitrogen/generated/android/c++/JHybridAndroidAutoMediaLibrarySpec.hpp +2 -2
- package/nitrogen/generated/android/c++/JHybridAudioDevicesSpec.cpp +16 -3
- package/nitrogen/generated/android/c++/JHybridAudioDevicesSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridDownloadManagerSpec.cpp +154 -44
- package/nitrogen/generated/android/c++/JHybridDownloadManagerSpec.hpp +10 -10
- package/nitrogen/generated/android/c++/JHybridEqualizerSpec.cpp +130 -34
- package/nitrogen/generated/android/c++/JHybridEqualizerSpec.hpp +9 -9
- package/nitrogen/generated/android/c++/JHybridPlayerQueueSpec.cpp +115 -24
- package/nitrogen/generated/android/c++/JHybridPlayerQueueSpec.hpp +8 -8
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.cpp +243 -24
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.hpp +16 -8
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_std__vector_TrackItem__std__vector_TrackItem_.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridAndroidAutoMediaLibrarySpec.kt +3 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridAudioDevicesSpec.kt +2 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridDownloadManagerSpec.kt +10 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridEqualizerSpec.kt +10 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridPlayerQueueSpec.kt +9 -8
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridTrackPlayerSpec.kt +45 -8
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Bridge.cpp +74 -18
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Bridge.hpp +380 -151
- package/nitrogen/generated/ios/c++/HybridDownloadManagerSpecSwift.hpp +10 -10
- package/nitrogen/generated/ios/c++/HybridEqualizerSpecSwift.hpp +12 -9
- package/nitrogen/generated/ios/c++/HybridPlayerQueueSpecSwift.hpp +23 -8
- package/nitrogen/generated/ios/c++/HybridTrackPlayerSpecSwift.hpp +82 -8
- package/nitrogen/generated/ios/swift/Func_void_EqualizerState.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__DownloadedPlaylist_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__DownloadedTrack_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__std__string_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_DownloadedPlaylist_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_DownloadedTrack_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_EqualizerBand_.swift +5 -5
- package/nitrogen/generated/ios/swift/Func_void_std__vector_TrackItem__std__vector_TrackItem_.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridDownloadManagerSpec.swift +10 -10
- package/nitrogen/generated/ios/swift/HybridDownloadManagerSpec_cxx.swift +141 -71
- package/nitrogen/generated/ios/swift/HybridEqualizerSpec.swift +9 -9
- package/nitrogen/generated/ios/swift/HybridEqualizerSpec_cxx.swift +105 -41
- package/nitrogen/generated/ios/swift/HybridPlayerQueueSpec.swift +8 -8
- package/nitrogen/generated/ios/swift/HybridPlayerQueueSpec_cxx.swift +95 -32
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec.swift +16 -8
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec_cxx.swift +267 -32
- package/nitrogen/generated/shared/c++/HybridAndroidAutoMediaLibrarySpec.hpp +3 -2
- package/nitrogen/generated/shared/c++/HybridAudioDevicesSpec.hpp +2 -1
- package/nitrogen/generated/shared/c++/HybridDownloadManagerSpec.hpp +10 -10
- package/nitrogen/generated/shared/c++/HybridEqualizerSpec.hpp +10 -9
- package/nitrogen/generated/shared/c++/HybridPlayerQueueSpec.hpp +9 -8
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.cpp +8 -0
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.hpp +16 -8
- package/package.json +5 -5
- package/src/hooks/useDownloadedTracks.ts +17 -13
- package/src/hooks/useEqualizer.ts +26 -21
- package/src/hooks/useEqualizerPresets.ts +15 -21
- package/src/specs/AndroidAutoMediaLibrary.nitro.ts +2 -2
- package/src/specs/AudioDevices.nitro.ts +2 -2
- package/src/specs/DownloadManager.nitro.ts +10 -10
- package/src/specs/Equalizer.nitro.ts +10 -10
- package/src/specs/TrackPlayer.nitro.ts +52 -16
- package/src/types/EqualizerTypes.ts +17 -13
|
@@ -125,24 +125,40 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
125
125
|
|
|
126
126
|
// Methods
|
|
127
127
|
@inline(__always)
|
|
128
|
-
public final func play() -> bridge.
|
|
128
|
+
public final func play() -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
129
129
|
do {
|
|
130
|
-
try self.__implementation.play()
|
|
131
|
-
|
|
130
|
+
let __result = try self.__implementation.play()
|
|
131
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
132
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
133
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
134
|
+
__result
|
|
135
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
136
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
137
|
+
return __promise
|
|
138
|
+
}()
|
|
139
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
132
140
|
} catch (let __error) {
|
|
133
141
|
let __exceptionPtr = __error.toCpp()
|
|
134
|
-
return bridge.
|
|
142
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
135
143
|
}
|
|
136
144
|
}
|
|
137
145
|
|
|
138
146
|
@inline(__always)
|
|
139
|
-
public final func pause() -> bridge.
|
|
147
|
+
public final func pause() -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
140
148
|
do {
|
|
141
|
-
try self.__implementation.pause()
|
|
142
|
-
|
|
149
|
+
let __result = try self.__implementation.pause()
|
|
150
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
151
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
152
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
153
|
+
__result
|
|
154
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
155
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
156
|
+
return __promise
|
|
157
|
+
}()
|
|
158
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
143
159
|
} catch (let __error) {
|
|
144
160
|
let __exceptionPtr = __error.toCpp()
|
|
145
|
-
return bridge.
|
|
161
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
146
162
|
}
|
|
147
163
|
}
|
|
148
164
|
|
|
@@ -173,13 +189,21 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
173
189
|
}
|
|
174
190
|
|
|
175
191
|
@inline(__always)
|
|
176
|
-
public final func skipToNext() -> bridge.
|
|
192
|
+
public final func skipToNext() -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
177
193
|
do {
|
|
178
|
-
try self.__implementation.skipToNext()
|
|
179
|
-
|
|
194
|
+
let __result = try self.__implementation.skipToNext()
|
|
195
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
196
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
197
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
198
|
+
__result
|
|
199
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
200
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
201
|
+
return __promise
|
|
202
|
+
}()
|
|
203
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
180
204
|
} catch (let __error) {
|
|
181
205
|
let __exceptionPtr = __error.toCpp()
|
|
182
|
-
return bridge.
|
|
206
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
183
207
|
}
|
|
184
208
|
}
|
|
185
209
|
|
|
@@ -203,24 +227,40 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
203
227
|
}
|
|
204
228
|
|
|
205
229
|
@inline(__always)
|
|
206
|
-
public final func skipToPrevious() -> bridge.
|
|
230
|
+
public final func skipToPrevious() -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
207
231
|
do {
|
|
208
|
-
try self.__implementation.skipToPrevious()
|
|
209
|
-
|
|
232
|
+
let __result = try self.__implementation.skipToPrevious()
|
|
233
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
234
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
235
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
236
|
+
__result
|
|
237
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
238
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
239
|
+
return __promise
|
|
240
|
+
}()
|
|
241
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
210
242
|
} catch (let __error) {
|
|
211
243
|
let __exceptionPtr = __error.toCpp()
|
|
212
|
-
return bridge.
|
|
244
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
213
245
|
}
|
|
214
246
|
}
|
|
215
247
|
|
|
216
248
|
@inline(__always)
|
|
217
|
-
public final func seek(position: Double) -> bridge.
|
|
249
|
+
public final func seek(position: Double) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
218
250
|
do {
|
|
219
|
-
try self.__implementation.seek(position: position)
|
|
220
|
-
|
|
251
|
+
let __result = try self.__implementation.seek(position: position)
|
|
252
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
253
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
254
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
255
|
+
__result
|
|
256
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
257
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
258
|
+
return __promise
|
|
259
|
+
}()
|
|
260
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
221
261
|
} catch (let __error) {
|
|
222
262
|
let __exceptionPtr = __error.toCpp()
|
|
223
|
-
return bridge.
|
|
263
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
224
264
|
}
|
|
225
265
|
}
|
|
226
266
|
|
|
@@ -307,14 +347,21 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
307
347
|
}
|
|
308
348
|
|
|
309
349
|
@inline(__always)
|
|
310
|
-
public final func setRepeatMode(mode: Int32) -> bridge.
|
|
350
|
+
public final func setRepeatMode(mode: Int32) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
311
351
|
do {
|
|
312
352
|
let __result = try self.__implementation.setRepeatMode(mode: margelo.nitro.nitroplayer.RepeatMode(rawValue: mode)!)
|
|
313
|
-
let __resultCpp =
|
|
314
|
-
|
|
353
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
354
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
355
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
356
|
+
__result
|
|
357
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
358
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
359
|
+
return __promise
|
|
360
|
+
}()
|
|
361
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
315
362
|
} catch (let __error) {
|
|
316
363
|
let __exceptionPtr = __error.toCpp()
|
|
317
|
-
return bridge.
|
|
364
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
318
365
|
}
|
|
319
366
|
}
|
|
320
367
|
|
|
@@ -331,13 +378,21 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
331
378
|
}
|
|
332
379
|
|
|
333
380
|
@inline(__always)
|
|
334
|
-
public final func configure(config: PlayerConfig) -> bridge.
|
|
381
|
+
public final func configure(config: PlayerConfig) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
335
382
|
do {
|
|
336
|
-
try self.__implementation.configure(config: config)
|
|
337
|
-
|
|
383
|
+
let __result = try self.__implementation.configure(config: config)
|
|
384
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
385
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
386
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
387
|
+
__result
|
|
388
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
389
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
390
|
+
return __promise
|
|
391
|
+
}()
|
|
392
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
338
393
|
} catch (let __error) {
|
|
339
394
|
let __exceptionPtr = __error.toCpp()
|
|
340
|
-
return bridge.
|
|
395
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
341
396
|
}
|
|
342
397
|
}
|
|
343
398
|
|
|
@@ -452,14 +507,21 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
452
507
|
}
|
|
453
508
|
|
|
454
509
|
@inline(__always)
|
|
455
|
-
public final func setVolume(volume: Double) -> bridge.
|
|
510
|
+
public final func setVolume(volume: Double) -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
456
511
|
do {
|
|
457
512
|
let __result = try self.__implementation.setVolume(volume: volume)
|
|
458
|
-
let __resultCpp =
|
|
459
|
-
|
|
513
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
514
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
515
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
516
|
+
__result
|
|
517
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
518
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
519
|
+
return __promise
|
|
520
|
+
}()
|
|
521
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
460
522
|
} catch (let __error) {
|
|
461
523
|
let __exceptionPtr = __error.toCpp()
|
|
462
|
-
return bridge.
|
|
524
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
463
525
|
}
|
|
464
526
|
}
|
|
465
527
|
|
|
@@ -635,4 +697,177 @@ open class HybridTrackPlayerSpec_cxx {
|
|
|
635
697
|
return bridge.create_Result_std__shared_ptr_Promise_double___(__exceptionPtr)
|
|
636
698
|
}
|
|
637
699
|
}
|
|
700
|
+
|
|
701
|
+
@inline(__always)
|
|
702
|
+
public final func removeFromPlayNext(trackId: std.string) -> bridge.Result_std__shared_ptr_Promise_bool___ {
|
|
703
|
+
do {
|
|
704
|
+
let __result = try self.__implementation.removeFromPlayNext(trackId: String(trackId))
|
|
705
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
|
|
706
|
+
let __promise = bridge.create_std__shared_ptr_Promise_bool__()
|
|
707
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
|
|
708
|
+
__result
|
|
709
|
+
.then({ __result in __promiseHolder.resolve(__result) })
|
|
710
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
711
|
+
return __promise
|
|
712
|
+
}()
|
|
713
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
|
|
714
|
+
} catch (let __error) {
|
|
715
|
+
let __exceptionPtr = __error.toCpp()
|
|
716
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
@inline(__always)
|
|
721
|
+
public final func removeFromUpNext(trackId: std.string) -> bridge.Result_std__shared_ptr_Promise_bool___ {
|
|
722
|
+
do {
|
|
723
|
+
let __result = try self.__implementation.removeFromUpNext(trackId: String(trackId))
|
|
724
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
|
|
725
|
+
let __promise = bridge.create_std__shared_ptr_Promise_bool__()
|
|
726
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
|
|
727
|
+
__result
|
|
728
|
+
.then({ __result in __promiseHolder.resolve(__result) })
|
|
729
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
730
|
+
return __promise
|
|
731
|
+
}()
|
|
732
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
|
|
733
|
+
} catch (let __error) {
|
|
734
|
+
let __exceptionPtr = __error.toCpp()
|
|
735
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
@inline(__always)
|
|
740
|
+
public final func clearPlayNext() -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
741
|
+
do {
|
|
742
|
+
let __result = try self.__implementation.clearPlayNext()
|
|
743
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
744
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
745
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
746
|
+
__result
|
|
747
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
748
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
749
|
+
return __promise
|
|
750
|
+
}()
|
|
751
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
752
|
+
} catch (let __error) {
|
|
753
|
+
let __exceptionPtr = __error.toCpp()
|
|
754
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
@inline(__always)
|
|
759
|
+
public final func clearUpNext() -> bridge.Result_std__shared_ptr_Promise_void___ {
|
|
760
|
+
do {
|
|
761
|
+
let __result = try self.__implementation.clearUpNext()
|
|
762
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
|
|
763
|
+
let __promise = bridge.create_std__shared_ptr_Promise_void__()
|
|
764
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
|
|
765
|
+
__result
|
|
766
|
+
.then({ __result in __promiseHolder.resolve() })
|
|
767
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
768
|
+
return __promise
|
|
769
|
+
}()
|
|
770
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
|
|
771
|
+
} catch (let __error) {
|
|
772
|
+
let __exceptionPtr = __error.toCpp()
|
|
773
|
+
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
@inline(__always)
|
|
778
|
+
public final func reorderTemporaryTrack(trackId: std.string, newIndex: Double) -> bridge.Result_std__shared_ptr_Promise_bool___ {
|
|
779
|
+
do {
|
|
780
|
+
let __result = try self.__implementation.reorderTemporaryTrack(trackId: String(trackId), newIndex: newIndex)
|
|
781
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
|
|
782
|
+
let __promise = bridge.create_std__shared_ptr_Promise_bool__()
|
|
783
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
|
|
784
|
+
__result
|
|
785
|
+
.then({ __result in __promiseHolder.resolve(__result) })
|
|
786
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
787
|
+
return __promise
|
|
788
|
+
}()
|
|
789
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
|
|
790
|
+
} catch (let __error) {
|
|
791
|
+
let __exceptionPtr = __error.toCpp()
|
|
792
|
+
return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
|
|
793
|
+
}
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
@inline(__always)
|
|
797
|
+
public final func getPlayNextQueue() -> bridge.Result_std__shared_ptr_Promise_std__vector_TrackItem____ {
|
|
798
|
+
do {
|
|
799
|
+
let __result = try self.__implementation.getPlayNextQueue()
|
|
800
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_TrackItem___ in
|
|
801
|
+
let __promise = bridge.create_std__shared_ptr_Promise_std__vector_TrackItem___()
|
|
802
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_TrackItem___(__promise)
|
|
803
|
+
__result
|
|
804
|
+
.then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_TrackItem_ in
|
|
805
|
+
var __vector = bridge.create_std__vector_TrackItem_(__result.count)
|
|
806
|
+
for __item in __result {
|
|
807
|
+
__vector.push_back(__item)
|
|
808
|
+
}
|
|
809
|
+
return __vector
|
|
810
|
+
}()) })
|
|
811
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
812
|
+
return __promise
|
|
813
|
+
}()
|
|
814
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(__resultCpp)
|
|
815
|
+
} catch (let __error) {
|
|
816
|
+
let __exceptionPtr = __error.toCpp()
|
|
817
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(__exceptionPtr)
|
|
818
|
+
}
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
@inline(__always)
|
|
822
|
+
public final func getUpNextQueue() -> bridge.Result_std__shared_ptr_Promise_std__vector_TrackItem____ {
|
|
823
|
+
do {
|
|
824
|
+
let __result = try self.__implementation.getUpNextQueue()
|
|
825
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_TrackItem___ in
|
|
826
|
+
let __promise = bridge.create_std__shared_ptr_Promise_std__vector_TrackItem___()
|
|
827
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_TrackItem___(__promise)
|
|
828
|
+
__result
|
|
829
|
+
.then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_TrackItem_ in
|
|
830
|
+
var __vector = bridge.create_std__vector_TrackItem_(__result.count)
|
|
831
|
+
for __item in __result {
|
|
832
|
+
__vector.push_back(__item)
|
|
833
|
+
}
|
|
834
|
+
return __vector
|
|
835
|
+
}()) })
|
|
836
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
837
|
+
return __promise
|
|
838
|
+
}()
|
|
839
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(__resultCpp)
|
|
840
|
+
} catch (let __error) {
|
|
841
|
+
let __exceptionPtr = __error.toCpp()
|
|
842
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_TrackItem____(__exceptionPtr)
|
|
843
|
+
}
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
@inline(__always)
|
|
847
|
+
public final func onTemporaryQueueChange(callback: bridge.Func_void_std__vector_TrackItem__std__vector_TrackItem_) -> bridge.Result_void_ {
|
|
848
|
+
do {
|
|
849
|
+
try self.__implementation.onTemporaryQueueChange(callback: { () -> ([TrackItem], [TrackItem]) -> Void in
|
|
850
|
+
let __wrappedFunction = bridge.wrap_Func_void_std__vector_TrackItem__std__vector_TrackItem_(callback)
|
|
851
|
+
return { (__playNextQueue: [TrackItem], __upNextQueue: [TrackItem]) -> Void in
|
|
852
|
+
__wrappedFunction.call({ () -> bridge.std__vector_TrackItem_ in
|
|
853
|
+
var __vector = bridge.create_std__vector_TrackItem_(__playNextQueue.count)
|
|
854
|
+
for __item in __playNextQueue {
|
|
855
|
+
__vector.push_back(__item)
|
|
856
|
+
}
|
|
857
|
+
return __vector
|
|
858
|
+
}(), { () -> bridge.std__vector_TrackItem_ in
|
|
859
|
+
var __vector = bridge.create_std__vector_TrackItem_(__upNextQueue.count)
|
|
860
|
+
for __item in __upNextQueue {
|
|
861
|
+
__vector.push_back(__item)
|
|
862
|
+
}
|
|
863
|
+
return __vector
|
|
864
|
+
}())
|
|
865
|
+
}
|
|
866
|
+
}())
|
|
867
|
+
return bridge.create_Result_void_()
|
|
868
|
+
} catch (let __error) {
|
|
869
|
+
let __exceptionPtr = __error.toCpp()
|
|
870
|
+
return bridge.create_Result_void_(__exceptionPtr)
|
|
871
|
+
}
|
|
872
|
+
}
|
|
638
873
|
}
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
|
|
18
|
+
#include <NitroModules/Promise.hpp>
|
|
18
19
|
#include <string>
|
|
19
20
|
|
|
20
21
|
namespace margelo::nitro::nitroplayer {
|
|
@@ -48,8 +49,8 @@ namespace margelo::nitro::nitroplayer {
|
|
|
48
49
|
|
|
49
50
|
public:
|
|
50
51
|
// Methods
|
|
51
|
-
virtual void setMediaLibrary(const std::string& libraryJson) = 0;
|
|
52
|
-
virtual void clearMediaLibrary() = 0;
|
|
52
|
+
virtual std::shared_ptr<Promise<void>> setMediaLibrary(const std::string& libraryJson) = 0;
|
|
53
|
+
virtual std::shared_ptr<Promise<void>> clearMediaLibrary() = 0;
|
|
53
54
|
|
|
54
55
|
protected:
|
|
55
56
|
// Hybrid Setup
|
|
@@ -18,6 +18,7 @@ namespace margelo::nitro::nitroplayer { struct TAudioDevice; }
|
|
|
18
18
|
|
|
19
19
|
#include "TAudioDevice.hpp"
|
|
20
20
|
#include <vector>
|
|
21
|
+
#include <NitroModules/Promise.hpp>
|
|
21
22
|
|
|
22
23
|
namespace margelo::nitro::nitroplayer {
|
|
23
24
|
|
|
@@ -51,7 +52,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
51
52
|
public:
|
|
52
53
|
// Methods
|
|
53
54
|
virtual std::vector<TAudioDevice> getAudioDevices() = 0;
|
|
54
|
-
virtual
|
|
55
|
+
virtual std::shared_ptr<Promise<void>> setAudioDevice(double deviceId) = 0;
|
|
55
56
|
|
|
56
57
|
protected:
|
|
57
58
|
// Hybrid Setup
|
|
@@ -102,22 +102,22 @@ namespace margelo::nitro::nitroplayer {
|
|
|
102
102
|
virtual DownloadQueueStatus getQueueStatus() = 0;
|
|
103
103
|
virtual bool isDownloading(const std::string& trackId) = 0;
|
|
104
104
|
virtual DownloadState getDownloadState(const std::string& trackId) = 0;
|
|
105
|
-
virtual bool isTrackDownloaded(const std::string& trackId) = 0;
|
|
106
|
-
virtual bool isPlaylistDownloaded(const std::string& playlistId) = 0;
|
|
107
|
-
virtual bool isPlaylistPartiallyDownloaded(const std::string& playlistId) = 0;
|
|
108
|
-
virtual std::variant<nitro::NullType, DownloadedTrack
|
|
109
|
-
virtual std::vector<DownloadedTrack
|
|
110
|
-
virtual std::variant<nitro::NullType, DownloadedPlaylist
|
|
111
|
-
virtual std::vector<DownloadedPlaylist
|
|
112
|
-
virtual std::variant<nitro::NullType, std::string
|
|
105
|
+
virtual std::shared_ptr<Promise<bool>> isTrackDownloaded(const std::string& trackId) = 0;
|
|
106
|
+
virtual std::shared_ptr<Promise<bool>> isPlaylistDownloaded(const std::string& playlistId) = 0;
|
|
107
|
+
virtual std::shared_ptr<Promise<bool>> isPlaylistPartiallyDownloaded(const std::string& playlistId) = 0;
|
|
108
|
+
virtual std::shared_ptr<Promise<std::variant<nitro::NullType, DownloadedTrack>>> getDownloadedTrack(const std::string& trackId) = 0;
|
|
109
|
+
virtual std::shared_ptr<Promise<std::vector<DownloadedTrack>>> getAllDownloadedTracks() = 0;
|
|
110
|
+
virtual std::shared_ptr<Promise<std::variant<nitro::NullType, DownloadedPlaylist>>> getDownloadedPlaylist(const std::string& playlistId) = 0;
|
|
111
|
+
virtual std::shared_ptr<Promise<std::vector<DownloadedPlaylist>>> getAllDownloadedPlaylists() = 0;
|
|
112
|
+
virtual std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>> getLocalPath(const std::string& trackId) = 0;
|
|
113
113
|
virtual std::shared_ptr<Promise<void>> deleteDownloadedTrack(const std::string& trackId) = 0;
|
|
114
114
|
virtual std::shared_ptr<Promise<void>> deleteDownloadedPlaylist(const std::string& playlistId) = 0;
|
|
115
115
|
virtual std::shared_ptr<Promise<void>> deleteAllDownloads() = 0;
|
|
116
116
|
virtual std::shared_ptr<Promise<DownloadStorageInfo>> getStorageInfo() = 0;
|
|
117
|
-
virtual double syncDownloads() = 0;
|
|
117
|
+
virtual std::shared_ptr<Promise<double>> syncDownloads() = 0;
|
|
118
118
|
virtual void setPlaybackSourcePreference(PlaybackSource preference) = 0;
|
|
119
119
|
virtual PlaybackSource getPlaybackSourcePreference() = 0;
|
|
120
|
-
virtual std::string getEffectiveUrl(const TrackItem& track) = 0;
|
|
120
|
+
virtual std::shared_ptr<Promise<std::string>> getEffectiveUrl(const TrackItem& track) = 0;
|
|
121
121
|
virtual void onDownloadProgress(const std::function<void(const DownloadProgress& /* progress */)>& callback) = 0;
|
|
122
122
|
virtual void onDownloadStateChange(const std::function<void(const std::string& /* downloadId */, const std::string& /* trackId */, DownloadState /* state */, const std::optional<DownloadError>& /* error */)>& callback) = 0;
|
|
123
123
|
virtual void onDownloadComplete(const std::function<void(const DownloadedTrack& /* downloadedTrack */)>& callback) = 0;
|
|
@@ -22,6 +22,7 @@ namespace margelo::nitro::nitroplayer { struct EqualizerPreset; }
|
|
|
22
22
|
// Forward declaration of `EqualizerState` to properly resolve imports.
|
|
23
23
|
namespace margelo::nitro::nitroplayer { struct EqualizerState; }
|
|
24
24
|
|
|
25
|
+
#include <NitroModules/Promise.hpp>
|
|
25
26
|
#include "EqualizerBand.hpp"
|
|
26
27
|
#include <vector>
|
|
27
28
|
#include "GainRange.hpp"
|
|
@@ -64,21 +65,21 @@ namespace margelo::nitro::nitroplayer {
|
|
|
64
65
|
|
|
65
66
|
public:
|
|
66
67
|
// Methods
|
|
67
|
-
virtual
|
|
68
|
+
virtual std::shared_ptr<Promise<void>> setEnabled(bool enabled) = 0;
|
|
68
69
|
virtual bool isEnabled() = 0;
|
|
69
|
-
virtual std::vector<EqualizerBand
|
|
70
|
-
virtual
|
|
71
|
-
virtual
|
|
70
|
+
virtual std::shared_ptr<Promise<std::vector<EqualizerBand>>> getBands() = 0;
|
|
71
|
+
virtual std::shared_ptr<Promise<void>> setBandGain(double bandIndex, double gainDb) = 0;
|
|
72
|
+
virtual std::shared_ptr<Promise<void>> setAllBandGains(const std::vector<double>& gains) = 0;
|
|
72
73
|
virtual GainRange getBandRange() = 0;
|
|
73
74
|
virtual std::vector<EqualizerPreset> getPresets() = 0;
|
|
74
75
|
virtual std::vector<EqualizerPreset> getBuiltInPresets() = 0;
|
|
75
76
|
virtual std::vector<EqualizerPreset> getCustomPresets() = 0;
|
|
76
|
-
virtual
|
|
77
|
+
virtual std::shared_ptr<Promise<void>> applyPreset(const std::string& presetName) = 0;
|
|
77
78
|
virtual std::variant<nitro::NullType, std::string> getCurrentPresetName() = 0;
|
|
78
|
-
virtual
|
|
79
|
-
virtual
|
|
80
|
-
virtual EqualizerState getState() = 0;
|
|
81
|
-
virtual void reset() = 0;
|
|
79
|
+
virtual std::shared_ptr<Promise<void>> saveCustomPreset(const std::string& name) = 0;
|
|
80
|
+
virtual std::shared_ptr<Promise<void>> deleteCustomPreset(const std::string& name) = 0;
|
|
81
|
+
virtual std::shared_ptr<Promise<EqualizerState>> getState() = 0;
|
|
82
|
+
virtual std::shared_ptr<Promise<void>> reset() = 0;
|
|
82
83
|
virtual void onEnabledChange(const std::function<void(bool /* enabled */)>& callback) = 0;
|
|
83
84
|
virtual void onBandChange(const std::function<void(const std::vector<EqualizerBand>& /* bands */)>& callback) = 0;
|
|
84
85
|
virtual void onPresetChange(const std::function<void(const std::optional<std::variant<nitro::NullType, std::string>>& /* presetName */)>& callback) = 0;
|
|
@@ -21,6 +21,7 @@ namespace margelo::nitro::nitroplayer { struct TrackItem; }
|
|
|
21
21
|
namespace margelo::nitro::nitroplayer { enum class QueueOperation; }
|
|
22
22
|
|
|
23
23
|
#include <string>
|
|
24
|
+
#include <NitroModules/Promise.hpp>
|
|
24
25
|
#include <optional>
|
|
25
26
|
#include <NitroModules/Null.hpp>
|
|
26
27
|
#include "Playlist.hpp"
|
|
@@ -61,16 +62,16 @@ namespace margelo::nitro::nitroplayer {
|
|
|
61
62
|
|
|
62
63
|
public:
|
|
63
64
|
// Methods
|
|
64
|
-
virtual std::string createPlaylist(const std::string& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) = 0;
|
|
65
|
-
virtual void deletePlaylist(const std::string& playlistId) = 0;
|
|
66
|
-
virtual void updatePlaylist(const std::string& playlistId, const std::optional<std::string>& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) = 0;
|
|
65
|
+
virtual std::shared_ptr<Promise<std::string>> createPlaylist(const std::string& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) = 0;
|
|
66
|
+
virtual std::shared_ptr<Promise<void>> deletePlaylist(const std::string& playlistId) = 0;
|
|
67
|
+
virtual std::shared_ptr<Promise<void>> updatePlaylist(const std::string& playlistId, const std::optional<std::string>& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) = 0;
|
|
67
68
|
virtual std::variant<nitro::NullType, Playlist> getPlaylist(const std::string& playlistId) = 0;
|
|
68
69
|
virtual std::vector<Playlist> getAllPlaylists() = 0;
|
|
69
|
-
virtual void addTrackToPlaylist(const std::string& playlistId, const TrackItem& track, std::optional<double> index) = 0;
|
|
70
|
-
virtual void addTracksToPlaylist(const std::string& playlistId, const std::vector<TrackItem>& tracks, std::optional<double> index) = 0;
|
|
71
|
-
virtual void removeTrackFromPlaylist(const std::string& playlistId, const std::string& trackId) = 0;
|
|
72
|
-
virtual void reorderTrackInPlaylist(const std::string& playlistId, const std::string& trackId, double newIndex) = 0;
|
|
73
|
-
virtual void loadPlaylist(const std::string& playlistId) = 0;
|
|
70
|
+
virtual std::shared_ptr<Promise<void>> addTrackToPlaylist(const std::string& playlistId, const TrackItem& track, std::optional<double> index) = 0;
|
|
71
|
+
virtual std::shared_ptr<Promise<void>> addTracksToPlaylist(const std::string& playlistId, const std::vector<TrackItem>& tracks, std::optional<double> index) = 0;
|
|
72
|
+
virtual std::shared_ptr<Promise<void>> removeTrackFromPlaylist(const std::string& playlistId, const std::string& trackId) = 0;
|
|
73
|
+
virtual std::shared_ptr<Promise<void>> reorderTrackInPlaylist(const std::string& playlistId, const std::string& trackId, double newIndex) = 0;
|
|
74
|
+
virtual std::shared_ptr<Promise<void>> loadPlaylist(const std::string& playlistId) = 0;
|
|
74
75
|
virtual std::variant<nitro::NullType, std::string> getCurrentPlaylistId() = 0;
|
|
75
76
|
virtual void onPlaylistsChanged(const std::function<void(const std::vector<Playlist>& /* playlists */, std::optional<QueueOperation> /* operation */)>& callback) = 0;
|
|
76
77
|
virtual void onPlaylistChanged(const std::function<void(const std::string& /* playlistId */, const Playlist& /* playlist */, std::optional<QueueOperation> /* operation */)>& callback) = 0;
|
|
@@ -43,6 +43,14 @@ namespace margelo::nitro::nitroplayer {
|
|
|
43
43
|
prototype.registerHybridMethod("onTracksNeedUpdate", &HybridTrackPlayerSpec::onTracksNeedUpdate);
|
|
44
44
|
prototype.registerHybridMethod("setPlaybackSpeed", &HybridTrackPlayerSpec::setPlaybackSpeed);
|
|
45
45
|
prototype.registerHybridMethod("getPlaybackSpeed", &HybridTrackPlayerSpec::getPlaybackSpeed);
|
|
46
|
+
prototype.registerHybridMethod("removeFromPlayNext", &HybridTrackPlayerSpec::removeFromPlayNext);
|
|
47
|
+
prototype.registerHybridMethod("removeFromUpNext", &HybridTrackPlayerSpec::removeFromUpNext);
|
|
48
|
+
prototype.registerHybridMethod("clearPlayNext", &HybridTrackPlayerSpec::clearPlayNext);
|
|
49
|
+
prototype.registerHybridMethod("clearUpNext", &HybridTrackPlayerSpec::clearUpNext);
|
|
50
|
+
prototype.registerHybridMethod("reorderTemporaryTrack", &HybridTrackPlayerSpec::reorderTemporaryTrack);
|
|
51
|
+
prototype.registerHybridMethod("getPlayNextQueue", &HybridTrackPlayerSpec::getPlayNextQueue);
|
|
52
|
+
prototype.registerHybridMethod("getUpNextQueue", &HybridTrackPlayerSpec::getUpNextQueue);
|
|
53
|
+
prototype.registerHybridMethod("onTemporaryQueueChange", &HybridTrackPlayerSpec::onTemporaryQueueChange);
|
|
46
54
|
});
|
|
47
55
|
}
|
|
48
56
|
|
|
@@ -69,27 +69,27 @@ namespace margelo::nitro::nitroplayer {
|
|
|
69
69
|
|
|
70
70
|
public:
|
|
71
71
|
// Methods
|
|
72
|
-
virtual void play() = 0;
|
|
73
|
-
virtual void pause() = 0;
|
|
72
|
+
virtual std::shared_ptr<Promise<void>> play() = 0;
|
|
73
|
+
virtual std::shared_ptr<Promise<void>> pause() = 0;
|
|
74
74
|
virtual std::shared_ptr<Promise<void>> playSong(const std::string& songId, const std::optional<std::string>& fromPlaylist) = 0;
|
|
75
|
-
virtual void skipToNext() = 0;
|
|
75
|
+
virtual std::shared_ptr<Promise<void>> skipToNext() = 0;
|
|
76
76
|
virtual std::shared_ptr<Promise<bool>> skipToIndex(double index) = 0;
|
|
77
|
-
virtual void skipToPrevious() = 0;
|
|
78
|
-
virtual void seek(double position) = 0;
|
|
77
|
+
virtual std::shared_ptr<Promise<void>> skipToPrevious() = 0;
|
|
78
|
+
virtual std::shared_ptr<Promise<void>> seek(double position) = 0;
|
|
79
79
|
virtual std::shared_ptr<Promise<void>> addToUpNext(const std::string& trackId) = 0;
|
|
80
80
|
virtual std::shared_ptr<Promise<void>> playNext(const std::string& trackId) = 0;
|
|
81
81
|
virtual std::shared_ptr<Promise<std::vector<TrackItem>>> getActualQueue() = 0;
|
|
82
82
|
virtual std::shared_ptr<Promise<PlayerState>> getState() = 0;
|
|
83
|
-
virtual
|
|
83
|
+
virtual std::shared_ptr<Promise<void>> setRepeatMode(RepeatMode mode) = 0;
|
|
84
84
|
virtual RepeatMode getRepeatMode() = 0;
|
|
85
|
-
virtual void configure(const PlayerConfig& config) = 0;
|
|
85
|
+
virtual std::shared_ptr<Promise<void>> configure(const PlayerConfig& config) = 0;
|
|
86
86
|
virtual void onChangeTrack(const std::function<void(const TrackItem& /* track */, std::optional<Reason> /* reason */)>& callback) = 0;
|
|
87
87
|
virtual void onPlaybackStateChange(const std::function<void(TrackPlayerState /* state */, std::optional<Reason> /* reason */)>& callback) = 0;
|
|
88
88
|
virtual void onSeek(const std::function<void(double /* position */, double /* totalDuration */)>& callback) = 0;
|
|
89
89
|
virtual void onPlaybackProgressChange(const std::function<void(double /* position */, double /* totalDuration */, std::optional<bool> /* isManuallySeeked */)>& callback) = 0;
|
|
90
90
|
virtual void onAndroidAutoConnectionChange(const std::function<void(bool /* connected */)>& callback) = 0;
|
|
91
91
|
virtual bool isAndroidAutoConnected() = 0;
|
|
92
|
-
virtual
|
|
92
|
+
virtual std::shared_ptr<Promise<void>> setVolume(double volume) = 0;
|
|
93
93
|
virtual std::shared_ptr<Promise<void>> updateTracks(const std::vector<TrackItem>& tracks) = 0;
|
|
94
94
|
virtual std::shared_ptr<Promise<std::vector<TrackItem>>> getTracksById(const std::vector<std::string>& trackIds) = 0;
|
|
95
95
|
virtual std::shared_ptr<Promise<std::vector<TrackItem>>> getTracksNeedingUrls() = 0;
|
|
@@ -98,6 +98,14 @@ namespace margelo::nitro::nitroplayer {
|
|
|
98
98
|
virtual void onTracksNeedUpdate(const std::function<void(const std::vector<TrackItem>& /* tracks */, double /* lookahead */)>& callback) = 0;
|
|
99
99
|
virtual std::shared_ptr<Promise<void>> setPlaybackSpeed(double speed) = 0;
|
|
100
100
|
virtual std::shared_ptr<Promise<double>> getPlaybackSpeed() = 0;
|
|
101
|
+
virtual std::shared_ptr<Promise<bool>> removeFromPlayNext(const std::string& trackId) = 0;
|
|
102
|
+
virtual std::shared_ptr<Promise<bool>> removeFromUpNext(const std::string& trackId) = 0;
|
|
103
|
+
virtual std::shared_ptr<Promise<void>> clearPlayNext() = 0;
|
|
104
|
+
virtual std::shared_ptr<Promise<void>> clearUpNext() = 0;
|
|
105
|
+
virtual std::shared_ptr<Promise<bool>> reorderTemporaryTrack(const std::string& trackId, double newIndex) = 0;
|
|
106
|
+
virtual std::shared_ptr<Promise<std::vector<TrackItem>>> getPlayNextQueue() = 0;
|
|
107
|
+
virtual std::shared_ptr<Promise<std::vector<TrackItem>>> getUpNextQueue() = 0;
|
|
108
|
+
virtual void onTemporaryQueueChange(const std::function<void(const std::vector<TrackItem>& /* playNextQueue */, const std::vector<TrackItem>& /* upNextQueue */)>& callback) = 0;
|
|
101
109
|
|
|
102
110
|
protected:
|
|
103
111
|
// Hybrid Setup
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-nitro-player",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.1-alpha.1",
|
|
4
4
|
"description": "A powerful audio player library for React Native with playlist management, playback controls, and support for Android Auto and CarPlay",
|
|
5
5
|
"main": "lib/index",
|
|
6
6
|
"module": "lib/index",
|
|
@@ -57,18 +57,18 @@
|
|
|
57
57
|
"registry": "https://registry.npmjs.org/"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
|
-
"@react-native/eslint-config": "0.
|
|
60
|
+
"@react-native/eslint-config": "0.85.0-rc.6",
|
|
61
61
|
"@release-it-plugins/workspaces": "^5.0.3",
|
|
62
62
|
"@release-it/bumper": "^7.0.5",
|
|
63
63
|
"@release-it/conventional-changelog": "^10.0.1",
|
|
64
|
-
"@types/react": "^19.
|
|
64
|
+
"@types/react": "^19.2.0",
|
|
65
65
|
"eslint": "^8.57.0",
|
|
66
66
|
"eslint-config-prettier": "^9.1.0",
|
|
67
67
|
"eslint-plugin-prettier": "^5.2.1",
|
|
68
68
|
"nitrogen": "^0.35.2",
|
|
69
69
|
"prettier": "^3.3.3",
|
|
70
|
-
"react": "19.
|
|
71
|
-
"react-native": "0.
|
|
70
|
+
"react": "19.2.3",
|
|
71
|
+
"react-native": "0.85.0-rc.6",
|
|
72
72
|
"react-native-nitro-modules": "^0.35.2",
|
|
73
73
|
"release-it": "^19.0.4",
|
|
74
74
|
"typescript": "^5.8.3"
|