capacitor-plugin-playlist 0.10.3 → 0.10.9
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 +1133 -137
- package/android/src/main/java/org/dwbn/plugins/playlist/PlaylistPlugin.kt +9 -5
- package/android/src/main/java/org/dwbn/plugins/playlist/RmxAudioPlayer.java +20 -5
- package/android/src/main/java/org/dwbn/plugins/playlist/playlist/AudioPlaylistHandler.java +10 -11
- package/dist/docs.json +66 -33
- package/dist/esm/RmxAudioPlayer.js +11 -14
- package/dist/esm/RmxAudioPlayer.js.map +1 -1
- package/dist/esm/definitions.d.ts +119 -7
- package/dist/esm/web.d.ts +3 -1
- package/dist/esm/web.js +27 -39
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +39 -54
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +39 -54
- package/dist/plugin.js.map +1 -1
- package/ios/Sources/PlaylistPlugin/Plugin.swift +7 -3
- package/ios/Sources/PlaylistPlugin/RmxAudioPlayer.swift +117 -55
- package/package.json +1 -1
|
@@ -2,49 +2,161 @@ import { PluginListenerHandle } from '@capacitor/core';
|
|
|
2
2
|
import { AudioPlayerOptions, AudioTrack, PlaylistItemOptions, PlaylistStatusChangeCallback } from './interfaces';
|
|
3
3
|
export interface PlaylistPlugin {
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Subscribe to native playback status events (track changes, position, errors, etc.).
|
|
6
|
+
*
|
|
7
|
+
* @param eventName Must be `'status'`.
|
|
8
|
+
* @param listenerFunc Callback receiving `{ action, status }` where `status.msgType` is a `RmxAudioStatusMessage`.
|
|
6
9
|
*/
|
|
7
10
|
addListener(eventName: 'status', listenerFunc: PlaylistStatusChangeCallback): Promise<PluginListenerHandle>;
|
|
11
|
+
/**
|
|
12
|
+
* Configure plugin behaviour (verbose logging, stream pause handling, notification icon).
|
|
13
|
+
* Can be called at any time; not required before playback.
|
|
14
|
+
*/
|
|
8
15
|
setOptions(options: AudioPlayerOptions): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Initialise the native player, register status callbacks, and arm lock-screen / notification controls.
|
|
18
|
+
* Call once before playback (e.g. on app start).
|
|
19
|
+
*/
|
|
9
20
|
initialize(): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Tear down native resources (audio session, media service, observers).
|
|
23
|
+
* Call when the app no longer needs background audio (e.g. on logout).
|
|
24
|
+
*/
|
|
10
25
|
release(): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Replace the entire playlist. Clears all previous items.
|
|
28
|
+
* Use `options.retainPosition` to keep the current track and playback position.
|
|
29
|
+
*/
|
|
11
30
|
setPlaylistItems(options: PlaylistOptions): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Append a single track to the end of the playlist.
|
|
33
|
+
*/
|
|
12
34
|
addItem(options: AddItemOptions): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Append multiple tracks to the end of the playlist.
|
|
37
|
+
* Raises one `RMXSTATUS_ITEM_ADDED` event per track.
|
|
38
|
+
*/
|
|
13
39
|
addAllItems(options: AddAllItemOptions): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Remove a track by index (preferred) or id.
|
|
42
|
+
* If the removed track is currently playing, the next track starts automatically.
|
|
43
|
+
*/
|
|
14
44
|
removeItem(options: RemoveItemOptions): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Remove multiple tracks in a single batch.
|
|
47
|
+
* If the currently playing track is removed, the next available track starts automatically.
|
|
48
|
+
*/
|
|
15
49
|
removeItems(options: RemoveItemsOptions): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Remove all tracks from the playlist. Raises `RMXSTATUS_PLAYLIST_CLEARED` and `RMXSTATUS_STOPPED`.
|
|
52
|
+
*/
|
|
16
53
|
clearAllItems(): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Return a snapshot of the current playlist items.
|
|
56
|
+
*/
|
|
17
57
|
getPlaylist(): Promise<GetPlaylistResult>;
|
|
58
|
+
/**
|
|
59
|
+
* Start or resume playback of the current track.
|
|
60
|
+
* No-op if the playlist is empty.
|
|
61
|
+
*/
|
|
18
62
|
play(): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Pause playback of the current track.
|
|
65
|
+
*/
|
|
19
66
|
pause(): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Skip to the next track. At the end of the playlist, wraps to the beginning when loop is enabled.
|
|
69
|
+
*/
|
|
20
70
|
skipForward(): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Skip to the previous track. No-op when already at the first track.
|
|
73
|
+
*/
|
|
21
74
|
skipBack(): Promise<void>;
|
|
75
|
+
/**
|
|
76
|
+
* Seek to a position (seconds) in the currently playing track.
|
|
77
|
+
* If the position exceeds track length, playback advances to the next track.
|
|
78
|
+
*/
|
|
22
79
|
seekTo(options: SeekToOptions): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Jump to the track at the given 0-based index and start playback.
|
|
82
|
+
*/
|
|
23
83
|
playTrackByIndex(options: PlayByIndexOptions): Promise<void>;
|
|
84
|
+
/**
|
|
85
|
+
* Jump to the track with the given id and start playback.
|
|
86
|
+
*/
|
|
24
87
|
playTrackById(options: PlayByIdOptions): Promise<void>;
|
|
88
|
+
/**
|
|
89
|
+
* Select the track at the given index without necessarily starting playback.
|
|
90
|
+
*/
|
|
25
91
|
selectTrackByIndex(options: SelectByIndexOptions): Promise<void>;
|
|
92
|
+
/**
|
|
93
|
+
* Select the track with the given id without necessarily starting playback.
|
|
94
|
+
*/
|
|
26
95
|
selectTrackById(options: SelectByIdOptions): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Set media stream volume. Float in range [0, 1].
|
|
98
|
+
* Hardware volume controls still apply on top of this value.
|
|
99
|
+
*/
|
|
27
100
|
setPlaybackVolume(options: SetPlaybackVolumeOptions): Promise<void>;
|
|
101
|
+
/**
|
|
102
|
+
* When true, the playlist loops back to the first track after the last track completes.
|
|
103
|
+
*/
|
|
28
104
|
setLoop(options: SetLoopOptions): Promise<void>;
|
|
105
|
+
/**
|
|
106
|
+
* Set playback speed. Float value; 0 pauses, 1 is normal speed.
|
|
107
|
+
*/
|
|
29
108
|
setPlaybackRate(options: SetPlaybackRateOptions): Promise<void>;
|
|
30
109
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
110
|
+
* Release native audio session / focus so a video player can own playback.
|
|
111
|
+
*
|
|
112
|
+
* **Android:** pauses current track, abandons audio focus, stores head position. Does not stop the foreground media service.
|
|
113
|
+
* **iOS:** pauses, captures head position, deactivates `AVAudioSession` with `notifyOthersOnDeactivation`.
|
|
114
|
+
* **Web:** pauses HTMLAudioElement and stores `currentTime`.
|
|
115
|
+
*
|
|
116
|
+
* Call immediately before native video starts (e.g. your video plugin's init method).
|
|
33
117
|
*/
|
|
34
118
|
prepareForVideoHandoff(): Promise<void>;
|
|
35
119
|
/**
|
|
36
|
-
*
|
|
120
|
+
* Re-arm native audio after video ends or, on Android, prewarm the media service before video starts.
|
|
121
|
+
*
|
|
122
|
+
* **Without `prewarm` (typical exit path):**
|
|
123
|
+
* - Android: when `play` is true (default), re-acquires focus and resumes at `position`. When `resumed` is `true`, JS should skip redundant `seekTo`/`play`. When `play` is false, clears handoff retain and returns `{ resumed: false }` so JS can seek without playing.
|
|
124
|
+
* - iOS: restores pinned track, reactivates `AVAudioSession`, seeks to `position`, and when `play` is true starts playback (seek-then-play). Returns `{ resumed: true }` when native handled the handoff.
|
|
125
|
+
* - Web: stores position only (no native session); returns `{ resumed: false }`.
|
|
126
|
+
*
|
|
127
|
+
* **With `prewarm: true` (Android, before video):** starts `MediaService` in foreground at `position` but stays silent — no audio focus, no audible playback. Always returns `{ resumed: false }`.
|
|
37
128
|
*/
|
|
38
|
-
resumeAfterVideoHandoff(options: ResumeAfterVideoHandoffOptions): Promise<
|
|
129
|
+
resumeAfterVideoHandoff(options: ResumeAfterVideoHandoffOptions): Promise<ResumeAfterVideoHandoffResult>;
|
|
39
130
|
/**
|
|
40
|
-
*
|
|
131
|
+
* Return the audio head position (seconds) captured during the most recent `prepareForVideoHandoff`
|
|
132
|
+
* or passed to `resumeAfterVideoHandoff`.
|
|
41
133
|
*/
|
|
42
134
|
getLastKnownPosition(): Promise<GetLastKnownPositionResult>;
|
|
43
135
|
}
|
|
44
136
|
export interface ResumeAfterVideoHandoffOptions {
|
|
137
|
+
/** Resume position in seconds (video exit head or saved audio position). */
|
|
45
138
|
position: number;
|
|
46
|
-
/**
|
|
139
|
+
/**
|
|
140
|
+
* **Android only.** When `true`, promote `MediaService` to foreground and prepare at `position`
|
|
141
|
+
* without requesting audio focus or playing audio. Use immediately after `prepareForVideoHandoff`
|
|
142
|
+
* and before native video starts, while the app is still foregrounded.
|
|
143
|
+
* Ignored on iOS (no-op). Not applicable on web.
|
|
144
|
+
*/
|
|
47
145
|
prewarm?: boolean;
|
|
146
|
+
/**
|
|
147
|
+
* When `true`, native starts audible playback after seeking to `position`.
|
|
148
|
+
* When `false` (paused video exit), native must not start playback.
|
|
149
|
+
* iOS defaults to `false` when omitted; Android defaults to `true` for legacy callers.
|
|
150
|
+
*/
|
|
151
|
+
play?: boolean;
|
|
152
|
+
}
|
|
153
|
+
export interface ResumeAfterVideoHandoffResult {
|
|
154
|
+
/**
|
|
155
|
+
* `true` when native already handled seek (and play when requested) in place.
|
|
156
|
+
* When `true`, JS should skip redundant `seekTo` / `play` to avoid a stutter.
|
|
157
|
+
* `false` on web, prewarm, paused Android handoff, and Android last-resort `beginPlayback`.
|
|
158
|
+
*/
|
|
159
|
+
resumed: boolean;
|
|
48
160
|
}
|
|
49
161
|
export interface GetLastKnownPositionResult {
|
|
50
162
|
position: number;
|
package/dist/esm/web.d.ts
CHANGED
|
@@ -38,7 +38,9 @@ export declare class PlaylistWeb extends WebPlugin implements PlaylistPlugin {
|
|
|
38
38
|
prepareForVideoHandoff(): Promise<void>;
|
|
39
39
|
resumeAfterVideoHandoff(options: {
|
|
40
40
|
position: number;
|
|
41
|
-
}): Promise<
|
|
41
|
+
}): Promise<{
|
|
42
|
+
resumed: boolean;
|
|
43
|
+
}>;
|
|
42
44
|
getLastKnownPosition(): Promise<{
|
|
43
45
|
position: number;
|
|
44
46
|
}>;
|
package/dist/esm/web.js
CHANGED
|
@@ -163,41 +163,36 @@ export class PlaylistWeb extends WebPlugin {
|
|
|
163
163
|
return Promise.resolve();
|
|
164
164
|
}
|
|
165
165
|
async skipForward() {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
found = index;
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
if (found === this.playlistItems.length - 1) {
|
|
173
|
-
found = -1;
|
|
166
|
+
const currentIndex = this.getCurrentIndex();
|
|
167
|
+
if (currentIndex < 0) {
|
|
168
|
+
return;
|
|
174
169
|
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
this.
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
return this.setCurrent(this.playlistItems[targetIndex]);
|
|
170
|
+
let targetIndex = currentIndex + 1;
|
|
171
|
+
if (targetIndex >= this.playlistItems.length) {
|
|
172
|
+
if (!this.loop) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
targetIndex = 0;
|
|
182
176
|
}
|
|
183
|
-
|
|
177
|
+
const targetTrack = this.playlistItems[targetIndex];
|
|
178
|
+
await this.setCurrent(targetTrack);
|
|
179
|
+
this.updateStatus(RmxAudioStatusMessage.RMX_STATUS_SKIP_FORWARD, {
|
|
180
|
+
currentIndex: targetIndex,
|
|
181
|
+
currentItem: targetTrack
|
|
182
|
+
}, targetTrack.trackId);
|
|
184
183
|
}
|
|
185
184
|
async skipBack() {
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
found = index;
|
|
190
|
-
}
|
|
191
|
-
});
|
|
192
|
-
if (found !== null) {
|
|
193
|
-
const targetIndex = found === 0 ? this.playlistItems.length - 1 : found - 1;
|
|
194
|
-
this.updateStatus(RmxAudioStatusMessage.RMX_STATUS_SKIP_BACK, {
|
|
195
|
-
currentIndex: targetIndex,
|
|
196
|
-
currentItem: this.playlistItems[targetIndex]
|
|
197
|
-
}, this.playlistItems[targetIndex].trackId);
|
|
198
|
-
return this.setCurrent(this.playlistItems[targetIndex]);
|
|
185
|
+
const currentIndex = this.getCurrentIndex();
|
|
186
|
+
if (currentIndex <= 0) {
|
|
187
|
+
return;
|
|
199
188
|
}
|
|
200
|
-
|
|
189
|
+
const targetIndex = currentIndex - 1;
|
|
190
|
+
const targetTrack = this.playlistItems[targetIndex];
|
|
191
|
+
await this.setCurrent(targetTrack);
|
|
192
|
+
this.updateStatus(RmxAudioStatusMessage.RMX_STATUS_SKIP_BACK, {
|
|
193
|
+
currentIndex: targetIndex,
|
|
194
|
+
currentItem: targetTrack
|
|
195
|
+
}, targetTrack.trackId);
|
|
201
196
|
}
|
|
202
197
|
setPlaybackRate(options) {
|
|
203
198
|
if (this.audio) {
|
|
@@ -214,7 +209,7 @@ export class PlaylistWeb extends WebPlugin {
|
|
|
214
209
|
}
|
|
215
210
|
async resumeAfterVideoHandoff(options) {
|
|
216
211
|
this.lastKnownHandoffPosition = options.position;
|
|
217
|
-
return Promise.resolve();
|
|
212
|
+
return Promise.resolve({ resumed: false });
|
|
218
213
|
}
|
|
219
214
|
async getLastKnownPosition() {
|
|
220
215
|
return Promise.resolve({ position: this.lastKnownHandoffPosition });
|
|
@@ -334,14 +329,7 @@ export class PlaylistWeb extends WebPlugin {
|
|
|
334
329
|
return 'INVALID';
|
|
335
330
|
}
|
|
336
331
|
getCurrentIndex() {
|
|
337
|
-
|
|
338
|
-
for (let i = 0; i < this.playlistItems.length; i++) {
|
|
339
|
-
if (this.playlistItems[i].trackId === this.currentTrack.trackId) {
|
|
340
|
-
return i;
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
return -1;
|
|
332
|
+
return this.currentTrack ? this.playlistItems.indexOf(this.currentTrack) : -1;
|
|
345
333
|
}
|
|
346
334
|
getCurrentTrackStatus(currentState) {
|
|
347
335
|
var _a, _b, _c;
|
package/dist/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin.cjs.js
CHANGED
|
@@ -383,28 +383,25 @@ class RmxAudioPlayer {
|
|
|
383
383
|
if (!removeItem) {
|
|
384
384
|
throw new Error('Track removal spec is empty');
|
|
385
385
|
}
|
|
386
|
-
if (!removeItem.trackId &&
|
|
386
|
+
if (!removeItem.trackId && removeItem.trackIndex === undefined) {
|
|
387
387
|
throw new Error('Track removal spec is invalid');
|
|
388
388
|
}
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
}
|
|
393
|
-
if (removeItem.trackId) {
|
|
394
|
-
opts.id = removeItem.trackId;
|
|
395
|
-
}
|
|
396
|
-
return Playlist.removeItem(opts);
|
|
389
|
+
return Playlist.removeItem({
|
|
390
|
+
id: removeItem.trackId,
|
|
391
|
+
index: removeItem.trackIndex
|
|
392
|
+
});
|
|
397
393
|
};
|
|
398
394
|
/**
|
|
399
395
|
* Removes all given tracks from the playlist; these can be specified either by trackId or trackIndex. If the removed items
|
|
400
396
|
* include the currently playing item, the next available item will automatically begin playing.
|
|
401
397
|
*/
|
|
402
398
|
this.removeItems = (items) => {
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
399
|
+
return Playlist.removeItems({
|
|
400
|
+
items: (items || []).map((item) => ({
|
|
401
|
+
id: item === null || item === void 0 ? void 0 : item.trackId,
|
|
402
|
+
index: item === null || item === void 0 ? void 0 : item.trackIndex
|
|
403
|
+
}))
|
|
404
|
+
});
|
|
408
405
|
};
|
|
409
406
|
/**
|
|
410
407
|
* Clear the entire playlist. This will result in the STOPPED event being raised.
|
|
@@ -740,41 +737,36 @@ class PlaylistWeb extends core.WebPlugin {
|
|
|
740
737
|
return Promise.resolve();
|
|
741
738
|
}
|
|
742
739
|
async skipForward() {
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
740
|
+
const currentIndex = this.getCurrentIndex();
|
|
741
|
+
if (currentIndex < 0) {
|
|
742
|
+
return;
|
|
743
|
+
}
|
|
744
|
+
let targetIndex = currentIndex + 1;
|
|
745
|
+
if (targetIndex >= this.playlistItems.length) {
|
|
746
|
+
if (!this.loop) {
|
|
747
|
+
return;
|
|
747
748
|
}
|
|
748
|
-
|
|
749
|
-
if (found === this.playlistItems.length - 1) {
|
|
750
|
-
found = -1;
|
|
751
|
-
}
|
|
752
|
-
if (found !== null) {
|
|
753
|
-
const targetIndex = found + 1;
|
|
754
|
-
this.updateStatus(exports.RmxAudioStatusMessage.RMX_STATUS_SKIP_FORWARD, {
|
|
755
|
-
currentIndex: targetIndex,
|
|
756
|
-
currentItem: this.playlistItems[targetIndex]
|
|
757
|
-
}, this.playlistItems[targetIndex].trackId);
|
|
758
|
-
return this.setCurrent(this.playlistItems[targetIndex]);
|
|
749
|
+
targetIndex = 0;
|
|
759
750
|
}
|
|
760
|
-
|
|
751
|
+
const targetTrack = this.playlistItems[targetIndex];
|
|
752
|
+
await this.setCurrent(targetTrack);
|
|
753
|
+
this.updateStatus(exports.RmxAudioStatusMessage.RMX_STATUS_SKIP_FORWARD, {
|
|
754
|
+
currentIndex: targetIndex,
|
|
755
|
+
currentItem: targetTrack
|
|
756
|
+
}, targetTrack.trackId);
|
|
761
757
|
}
|
|
762
758
|
async skipBack() {
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
}, this.playlistItems[targetIndex].trackId);
|
|
775
|
-
return this.setCurrent(this.playlistItems[targetIndex]);
|
|
776
|
-
}
|
|
777
|
-
return Promise.reject();
|
|
759
|
+
const currentIndex = this.getCurrentIndex();
|
|
760
|
+
if (currentIndex <= 0) {
|
|
761
|
+
return;
|
|
762
|
+
}
|
|
763
|
+
const targetIndex = currentIndex - 1;
|
|
764
|
+
const targetTrack = this.playlistItems[targetIndex];
|
|
765
|
+
await this.setCurrent(targetTrack);
|
|
766
|
+
this.updateStatus(exports.RmxAudioStatusMessage.RMX_STATUS_SKIP_BACK, {
|
|
767
|
+
currentIndex: targetIndex,
|
|
768
|
+
currentItem: targetTrack
|
|
769
|
+
}, targetTrack.trackId);
|
|
778
770
|
}
|
|
779
771
|
setPlaybackRate(options) {
|
|
780
772
|
if (this.audio) {
|
|
@@ -791,7 +783,7 @@ class PlaylistWeb extends core.WebPlugin {
|
|
|
791
783
|
}
|
|
792
784
|
async resumeAfterVideoHandoff(options) {
|
|
793
785
|
this.lastKnownHandoffPosition = options.position;
|
|
794
|
-
return Promise.resolve();
|
|
786
|
+
return Promise.resolve({ resumed: false });
|
|
795
787
|
}
|
|
796
788
|
async getLastKnownPosition() {
|
|
797
789
|
return Promise.resolve({ position: this.lastKnownHandoffPosition });
|
|
@@ -911,14 +903,7 @@ class PlaylistWeb extends core.WebPlugin {
|
|
|
911
903
|
return 'INVALID';
|
|
912
904
|
}
|
|
913
905
|
getCurrentIndex() {
|
|
914
|
-
|
|
915
|
-
for (let i = 0; i < this.playlistItems.length; i++) {
|
|
916
|
-
if (this.playlistItems[i].trackId === this.currentTrack.trackId) {
|
|
917
|
-
return i;
|
|
918
|
-
}
|
|
919
|
-
}
|
|
920
|
-
}
|
|
921
|
-
return -1;
|
|
906
|
+
return this.currentTrack ? this.playlistItems.indexOf(this.currentTrack) : -1;
|
|
922
907
|
}
|
|
923
908
|
getCurrentTrackStatus(currentState) {
|
|
924
909
|
var _a, _b, _c;
|