react-native-audio-api 0.11.0-alpha.6 → 0.11.0-alpha.8
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/ios/audioapi/ios/core/IOSAudioRecorder.mm +2 -2
- package/lib/commonjs/system/notification/PlaybackNotificationManager.js +17 -14
- package/lib/commonjs/system/notification/PlaybackNotificationManager.js.map +1 -1
- package/lib/commonjs/system/notification/RecordingNotificationManager.js +22 -19
- package/lib/commonjs/system/notification/RecordingNotificationManager.js.map +1 -1
- package/lib/commonjs/system/notification/SimpleNotificationManager.js +16 -13
- package/lib/commonjs/system/notification/SimpleNotificationManager.js.map +1 -1
- package/lib/commonjs/web-system/notification/PlaybackNotificationManager.js +6 -3
- package/lib/commonjs/web-system/notification/PlaybackNotificationManager.js.map +1 -1
- package/lib/commonjs/web-system/notification/RecordingNotificationManager.js +6 -3
- package/lib/commonjs/web-system/notification/RecordingNotificationManager.js.map +1 -1
- package/lib/module/system/notification/PlaybackNotificationManager.js +17 -14
- package/lib/module/system/notification/PlaybackNotificationManager.js.map +1 -1
- package/lib/module/system/notification/RecordingNotificationManager.js +22 -19
- package/lib/module/system/notification/RecordingNotificationManager.js.map +1 -1
- package/lib/module/system/notification/SimpleNotificationManager.js +16 -13
- package/lib/module/system/notification/SimpleNotificationManager.js.map +1 -1
- package/lib/module/web-system/notification/PlaybackNotificationManager.js +6 -3
- package/lib/module/web-system/notification/PlaybackNotificationManager.js.map +1 -1
- package/lib/module/web-system/notification/RecordingNotificationManager.js +6 -3
- package/lib/module/web-system/notification/RecordingNotificationManager.js.map +1 -1
- package/lib/typescript/system/notification/PlaybackNotificationManager.d.ts +4 -3
- package/lib/typescript/system/notification/PlaybackNotificationManager.d.ts.map +1 -1
- package/lib/typescript/system/notification/RecordingNotificationManager.d.ts +4 -3
- package/lib/typescript/system/notification/RecordingNotificationManager.d.ts.map +1 -1
- package/lib/typescript/system/notification/SimpleNotificationManager.d.ts +3 -2
- package/lib/typescript/system/notification/SimpleNotificationManager.d.ts.map +1 -1
- package/lib/typescript/web-system/notification/PlaybackNotificationManager.d.ts +4 -3
- package/lib/typescript/web-system/notification/PlaybackNotificationManager.d.ts.map +1 -1
- package/lib/typescript/web-system/notification/RecordingNotificationManager.d.ts +4 -3
- package/lib/typescript/web-system/notification/RecordingNotificationManager.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/system/notification/PlaybackNotificationManager.ts +20 -16
- package/src/system/notification/RecordingNotificationManager.ts +26 -21
- package/src/system/notification/SimpleNotificationManager.ts +18 -13
- package/src/web-system/notification/PlaybackNotificationManager.ts +9 -5
- package/src/web-system/notification/RecordingNotificationManager.ts +9 -5
|
@@ -134,7 +134,7 @@ Result<std::tuple<std::string, double, double>, std::string> IOSAudioRecorder::s
|
|
|
134
134
|
double outputFileSize = 0;
|
|
135
135
|
double outputDuration = 0;
|
|
136
136
|
|
|
137
|
-
if (!
|
|
137
|
+
if (!isIdle()) {
|
|
138
138
|
return Result<std::tuple<std::string, double, double>, std::string>::Err("Not recording");
|
|
139
139
|
}
|
|
140
140
|
|
|
@@ -253,7 +253,7 @@ bool IOSAudioRecorder::isPaused() const
|
|
|
253
253
|
return false;
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
-
return currentState == RecorderState::Paused
|
|
256
|
+
return currentState == RecorderState::Paused ||
|
|
257
257
|
[audioEngine getState] != AudioEngineState::AudioEngineStateRunning;
|
|
258
258
|
}
|
|
259
259
|
|
|
@@ -4,20 +4,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _specs = require("../../specs");
|
|
8
7
|
var _events = require("../../events");
|
|
8
|
+
var _specs = require("../../specs");
|
|
9
9
|
/// Manager for media playback notifications with controls and MediaSession integration.
|
|
10
10
|
class PlaybackNotificationManager {
|
|
11
11
|
notificationKey = 'playback';
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
isRegistered_ = false;
|
|
13
|
+
isShown_ = false;
|
|
14
14
|
constructor() {
|
|
15
15
|
this.audioEventEmitter = new _events.AudioEventEmitter(global.AudioEventEmitter);
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
/// Register the playback notification (must be called before showing).
|
|
19
19
|
async register() {
|
|
20
|
-
if (this.
|
|
20
|
+
if (this.isRegistered_) {
|
|
21
21
|
console.warn('PlaybackNotification is already registered');
|
|
22
22
|
return;
|
|
23
23
|
}
|
|
@@ -28,12 +28,12 @@ class PlaybackNotificationManager {
|
|
|
28
28
|
if (result.error) {
|
|
29
29
|
throw new Error(result.error);
|
|
30
30
|
}
|
|
31
|
-
this.
|
|
31
|
+
this.isRegistered_ = true;
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
/// Show the notification with initial metadata.
|
|
35
35
|
async show(info) {
|
|
36
|
-
if (!this.
|
|
36
|
+
if (!this.isRegistered_) {
|
|
37
37
|
throw new Error('PlaybackNotification must be registered before showing. Call register() first.');
|
|
38
38
|
}
|
|
39
39
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -43,12 +43,12 @@ class PlaybackNotificationManager {
|
|
|
43
43
|
if (result.error) {
|
|
44
44
|
throw new Error(result.error);
|
|
45
45
|
}
|
|
46
|
-
this.
|
|
46
|
+
this.isShown_ = true;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
/// Update the notification with new metadata or state.
|
|
50
50
|
async update(info) {
|
|
51
|
-
if (!this.
|
|
51
|
+
if (!this.isShown_) {
|
|
52
52
|
console.warn('PlaybackNotification is not shown. Call show() first.');
|
|
53
53
|
return;
|
|
54
54
|
}
|
|
@@ -63,7 +63,7 @@ class PlaybackNotificationManager {
|
|
|
63
63
|
|
|
64
64
|
/// Hide the notification (can be shown again later).
|
|
65
65
|
async hide() {
|
|
66
|
-
if (!this.
|
|
66
|
+
if (!this.isShown_) {
|
|
67
67
|
return;
|
|
68
68
|
}
|
|
69
69
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -73,15 +73,15 @@ class PlaybackNotificationManager {
|
|
|
73
73
|
if (result.error) {
|
|
74
74
|
throw new Error(result.error);
|
|
75
75
|
}
|
|
76
|
-
this.
|
|
76
|
+
this.isShown_ = false;
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
/// Unregister the notification (must register again to use).
|
|
80
80
|
async unregister() {
|
|
81
|
-
if (!this.
|
|
81
|
+
if (!this.isRegistered_) {
|
|
82
82
|
return;
|
|
83
83
|
}
|
|
84
|
-
if (this.
|
|
84
|
+
if (this.isShown_) {
|
|
85
85
|
await this.hide();
|
|
86
86
|
}
|
|
87
87
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -91,12 +91,12 @@ class PlaybackNotificationManager {
|
|
|
91
91
|
if (result.error) {
|
|
92
92
|
throw new Error(result.error);
|
|
93
93
|
}
|
|
94
|
-
this.
|
|
94
|
+
this.isRegistered_ = false;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
/// Enable or disable a specific playback control.
|
|
98
98
|
async enableControl(control, enabled) {
|
|
99
|
-
if (!this.
|
|
99
|
+
if (!this.isRegistered_) {
|
|
100
100
|
console.warn('PlaybackNotification is not registered');
|
|
101
101
|
return;
|
|
102
102
|
}
|
|
@@ -120,6 +120,9 @@ class PlaybackNotificationManager {
|
|
|
120
120
|
}
|
|
121
121
|
return await _specs.NativeAudioAPIModule.isNotificationActive(this.notificationKey);
|
|
122
122
|
}
|
|
123
|
+
isRegistered() {
|
|
124
|
+
return this.isRegistered_;
|
|
125
|
+
}
|
|
123
126
|
|
|
124
127
|
/// Add an event listener for notification actions.
|
|
125
128
|
addEventListener(eventName, callback) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_events","require","_specs","PlaybackNotificationManager","notificationKey","isRegistered_","isShown_","constructor","audioEventEmitter","AudioEventEmitter","global","register","console","warn","NativeAudioAPIModule","Error","result","registerNotification","error","show","info","showNotification","update","updateNotification","hide","hideNotification","unregister","unregisterNotification","enableControl","control","enabled","params","isActive","isNotificationActive","isRegistered","addEventListener","eventName","callback","addAudioEventListener","removeEventListener","subscription","remove","_default","exports","default"],"sourceRoot":"../../../../src","sources":["system/notification/PlaybackNotificationManager.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,13 +5,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
|
-
var _specs = require("../../specs");
|
|
9
8
|
var _events = require("../../events");
|
|
9
|
+
var _specs = require("../../specs");
|
|
10
10
|
/// Manager for recording notifications with controls.
|
|
11
11
|
class RecordingNotificationManager {
|
|
12
|
+
isRegistered_ = false;
|
|
13
|
+
isShown_ = false;
|
|
12
14
|
notificationKey = 'recording';
|
|
13
|
-
isRegistered = false;
|
|
14
|
-
isShown = false;
|
|
15
15
|
isIOS = _reactNative.Platform.OS === 'ios';
|
|
16
16
|
constructor() {
|
|
17
17
|
this.audioEventEmitter = new _events.AudioEventEmitter(global.AudioEventEmitter);
|
|
@@ -19,14 +19,14 @@ class RecordingNotificationManager {
|
|
|
19
19
|
|
|
20
20
|
/// Register the recording notification (must be called before showing).
|
|
21
21
|
async register() {
|
|
22
|
-
if (this.
|
|
22
|
+
if (this.isRegistered_) {
|
|
23
23
|
console.warn('RecordingNotification is already registered');
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
// Recording notifications are only supported on Android
|
|
28
28
|
if (this.isIOS) {
|
|
29
|
-
this.
|
|
29
|
+
this.isRegistered_ = true;
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
32
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -36,18 +36,18 @@ class RecordingNotificationManager {
|
|
|
36
36
|
if (result.error) {
|
|
37
37
|
throw new Error(result.error);
|
|
38
38
|
}
|
|
39
|
-
this.
|
|
39
|
+
this.isRegistered_ = true;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
/// Show the notification with initial metadata.
|
|
43
43
|
async show(info) {
|
|
44
|
-
if (!this.
|
|
44
|
+
if (!this.isRegistered_) {
|
|
45
45
|
throw new Error('RecordingNotification must be registered before showing. Call register() first.');
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
// Recording notifications are only supported on Android
|
|
49
49
|
if (this.isIOS) {
|
|
50
|
-
this.
|
|
50
|
+
this.isShown_ = true;
|
|
51
51
|
return;
|
|
52
52
|
}
|
|
53
53
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -57,12 +57,12 @@ class RecordingNotificationManager {
|
|
|
57
57
|
if (result.error) {
|
|
58
58
|
throw new Error(result.error);
|
|
59
59
|
}
|
|
60
|
-
this.
|
|
60
|
+
this.isShown_ = true;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
/// Update the notification with new metadata or state.
|
|
64
64
|
async update(info) {
|
|
65
|
-
if (!this.
|
|
65
|
+
if (!this.isShown_) {
|
|
66
66
|
console.warn('RecordingNotification is not shown. Call show() first.');
|
|
67
67
|
return;
|
|
68
68
|
}
|
|
@@ -82,13 +82,13 @@ class RecordingNotificationManager {
|
|
|
82
82
|
|
|
83
83
|
/// Hide the notification (can be shown again later).
|
|
84
84
|
async hide() {
|
|
85
|
-
if (!this.
|
|
85
|
+
if (!this.isShown_) {
|
|
86
86
|
return;
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
// Recording notifications are only supported on Android
|
|
90
90
|
if (this.isIOS) {
|
|
91
|
-
this.
|
|
91
|
+
this.isShown_ = false;
|
|
92
92
|
return;
|
|
93
93
|
}
|
|
94
94
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -98,21 +98,21 @@ class RecordingNotificationManager {
|
|
|
98
98
|
if (result.error) {
|
|
99
99
|
throw new Error(result.error);
|
|
100
100
|
}
|
|
101
|
-
this.
|
|
101
|
+
this.isShown_ = false;
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
/// Unregister the notification (must register again to use).
|
|
105
105
|
async unregister() {
|
|
106
|
-
if (!this.
|
|
106
|
+
if (!this.isRegistered_) {
|
|
107
107
|
return;
|
|
108
108
|
}
|
|
109
|
-
if (this.
|
|
109
|
+
if (this.isShown_) {
|
|
110
110
|
await this.hide();
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
// Recording notifications are only supported on Android
|
|
114
114
|
if (this.isIOS) {
|
|
115
|
-
this.
|
|
115
|
+
this.isRegistered_ = false;
|
|
116
116
|
return;
|
|
117
117
|
}
|
|
118
118
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -122,12 +122,12 @@ class RecordingNotificationManager {
|
|
|
122
122
|
if (result.error) {
|
|
123
123
|
throw new Error(result.error);
|
|
124
124
|
}
|
|
125
|
-
this.
|
|
125
|
+
this.isRegistered_ = false;
|
|
126
126
|
}
|
|
127
127
|
|
|
128
128
|
/// Enable or disable a specific recording control.
|
|
129
129
|
async enableControl(control, enabled) {
|
|
130
|
-
if (!this.
|
|
130
|
+
if (!this.isRegistered_) {
|
|
131
131
|
console.warn('RecordingNotification is not registered');
|
|
132
132
|
return;
|
|
133
133
|
}
|
|
@@ -153,13 +153,16 @@ class RecordingNotificationManager {
|
|
|
153
153
|
async isActive() {
|
|
154
154
|
// Recording notifications are only supported on Android
|
|
155
155
|
if (this.isIOS) {
|
|
156
|
-
return this.
|
|
156
|
+
return this.isShown_;
|
|
157
157
|
}
|
|
158
158
|
if (!_specs.NativeAudioAPIModule) {
|
|
159
159
|
return false;
|
|
160
160
|
}
|
|
161
161
|
return await _specs.NativeAudioAPIModule.isNotificationActive(this.notificationKey);
|
|
162
162
|
}
|
|
163
|
+
isRegistered() {
|
|
164
|
+
return this.isRegistered_;
|
|
165
|
+
}
|
|
163
166
|
|
|
164
167
|
/// Add an event listener for notification actions.
|
|
165
168
|
addEventListener(eventName, callback) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_events","_specs","RecordingNotificationManager","isRegistered_","isShown_","notificationKey","isIOS","Platform","OS","constructor","audioEventEmitter","AudioEventEmitter","global","register","console","warn","NativeAudioAPIModule","Error","result","registerNotification","error","show","info","showNotification","update","updateNotification","hide","hideNotification","unregister","unregisterNotification","enableControl","control","enabled","params","isActive","isNotificationActive","isRegistered","addEventListener","eventName","callback","remove","addAudioEventListener","removeEventListener","subscription","_default","exports","default"],"sourceRoot":"../../../../src","sources":["system/notification/RecordingNotificationManager.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,22 +4,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _specs = require("../../specs");
|
|
8
7
|
var _events = require("../../events");
|
|
8
|
+
var _specs = require("../../specs");
|
|
9
9
|
/// Simple notification manager for basic notifications with title and text.
|
|
10
10
|
/// Implements the generic NotificationManager interface.
|
|
11
11
|
// It is only a showcase
|
|
12
12
|
class SimpleNotificationManager {
|
|
13
|
+
isRegistered_ = false;
|
|
14
|
+
isShown_ = false;
|
|
13
15
|
notificationKey = 'simple';
|
|
14
|
-
isRegistered = false;
|
|
15
|
-
isShown = false;
|
|
16
16
|
constructor() {
|
|
17
17
|
this.audioEventEmitter = new _events.AudioEventEmitter(global.AudioEventEmitter);
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
/// Register the simple notification (must be called before showing).
|
|
21
21
|
async register() {
|
|
22
|
-
if (this.
|
|
22
|
+
if (this.isRegistered_) {
|
|
23
23
|
console.warn('SimpleNotification is already registered');
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
@@ -30,12 +30,12 @@ class SimpleNotificationManager {
|
|
|
30
30
|
if (result.error) {
|
|
31
31
|
throw new Error(result.error);
|
|
32
32
|
}
|
|
33
|
-
this.
|
|
33
|
+
this.isRegistered_ = true;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
/// Show the notification with initial options.
|
|
37
37
|
async show(options) {
|
|
38
|
-
if (!this.
|
|
38
|
+
if (!this.isRegistered_) {
|
|
39
39
|
throw new Error('SimpleNotification must be registered before showing. Call register() first.');
|
|
40
40
|
}
|
|
41
41
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -45,12 +45,12 @@ class SimpleNotificationManager {
|
|
|
45
45
|
if (result.error) {
|
|
46
46
|
throw new Error(result.error);
|
|
47
47
|
}
|
|
48
|
-
this.
|
|
48
|
+
this.isShown_ = true;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
/// Update the notification with new options.
|
|
52
52
|
async update(options) {
|
|
53
|
-
if (!this.
|
|
53
|
+
if (!this.isShown_) {
|
|
54
54
|
console.warn('SimpleNotification is not shown. Call show() first.');
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
@@ -65,7 +65,7 @@ class SimpleNotificationManager {
|
|
|
65
65
|
|
|
66
66
|
/// Hide the notification (can be shown again later).
|
|
67
67
|
async hide() {
|
|
68
|
-
if (!this.
|
|
68
|
+
if (!this.isShown_) {
|
|
69
69
|
return;
|
|
70
70
|
}
|
|
71
71
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -75,15 +75,15 @@ class SimpleNotificationManager {
|
|
|
75
75
|
if (result.error) {
|
|
76
76
|
throw new Error(result.error);
|
|
77
77
|
}
|
|
78
|
-
this.
|
|
78
|
+
this.isShown_ = false;
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
/// Unregister the notification (must register again to use).
|
|
82
82
|
async unregister() {
|
|
83
|
-
if (!this.
|
|
83
|
+
if (!this.isRegistered_) {
|
|
84
84
|
return;
|
|
85
85
|
}
|
|
86
|
-
if (this.
|
|
86
|
+
if (this.isShown_) {
|
|
87
87
|
await this.hide();
|
|
88
88
|
}
|
|
89
89
|
if (!_specs.NativeAudioAPIModule) {
|
|
@@ -93,7 +93,7 @@ class SimpleNotificationManager {
|
|
|
93
93
|
if (result.error) {
|
|
94
94
|
throw new Error(result.error);
|
|
95
95
|
}
|
|
96
|
-
this.
|
|
96
|
+
this.isRegistered_ = false;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
/// Check if the notification is currently active.
|
|
@@ -103,6 +103,9 @@ class SimpleNotificationManager {
|
|
|
103
103
|
}
|
|
104
104
|
return await _specs.NativeAudioAPIModule.isNotificationActive(this.notificationKey);
|
|
105
105
|
}
|
|
106
|
+
isRegistered() {
|
|
107
|
+
return this.isRegistered_;
|
|
108
|
+
}
|
|
106
109
|
|
|
107
110
|
/// Add an event listener (SimpleNotification doesn't emit events).
|
|
108
111
|
addEventListener(_eventName, _callback) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_events","require","_specs","SimpleNotificationManager","isRegistered_","isShown_","notificationKey","constructor","audioEventEmitter","AudioEventEmitter","global","register","console","warn","NativeAudioAPIModule","Error","result","registerNotification","error","show","options","showNotification","update","updateNotification","hide","hideNotification","unregister","unregisterNotification","isActive","isNotificationActive","isRegistered","addEventListener","_eventName","_callback","addAudioEventListener","removeEventListener","subscription","remove","_default","exports","default"],"sourceRoot":"../../../../src","sources":["system/notification/SimpleNotificationManager.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,8 +10,8 @@ exports.default = void 0;
|
|
|
10
10
|
|
|
11
11
|
/// Mock Manager for playback notifications. Does nothing.
|
|
12
12
|
class PlaybackNotificationManager {
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
isRegistered_ = false;
|
|
14
|
+
isShown_ = false;
|
|
15
15
|
constructor() {}
|
|
16
16
|
async register() {}
|
|
17
17
|
async show(info) {}
|
|
@@ -20,7 +20,10 @@ class PlaybackNotificationManager {
|
|
|
20
20
|
async unregister() {}
|
|
21
21
|
async enableControl(control, enabled) {}
|
|
22
22
|
async isActive() {
|
|
23
|
-
return this.
|
|
23
|
+
return this.isShown_;
|
|
24
|
+
}
|
|
25
|
+
isRegistered() {
|
|
26
|
+
return this.isRegistered_;
|
|
24
27
|
}
|
|
25
28
|
addEventListener(eventName, callback) {
|
|
26
29
|
// dummy subscription object with a no-op remove method
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PlaybackNotificationManager","
|
|
1
|
+
{"version":3,"names":["PlaybackNotificationManager","isRegistered_","isShown_","constructor","register","show","info","update","hide","unregister","enableControl","control","enabled","isActive","isRegistered","addEventListener","eventName","callback","remove","removeEventListener","subscription","_default","exports","default"],"sourceRoot":"../../../../src","sources":["web-system/notification/PlaybackNotificationManager.ts"],"mappings":";;;;;;AAAA;AACA;AACA;;AAWA;AACA,MAAMA,2BAA2B,CAOjC;EACUC,aAAa,GAAG,KAAK;EACrBC,QAAQ,GAAG,KAAK;EAExBC,WAAWA,CAAA,EAAG,CAAC;EAEf,MAAMC,QAAQA,CAAA,EAAkB,CAAC;EAEjC,MAAMC,IAAIA,CAACC,IAA8B,EAAiB,CAAC;EAE3D,MAAMC,MAAMA,CAACD,IAA8B,EAAiB,CAAC;EAE7D,MAAME,IAAIA,CAAA,EAAkB,CAAC;EAE7B,MAAMC,UAAUA,CAAA,EAAkB,CAAC;EAEnC,MAAMC,aAAaA,CACjBC,OAA4B,EAC5BC,OAAgB,EACD,CAAC;EAElB,MAAMC,QAAQA,CAAA,EAAqB;IACjC,OAAO,IAAI,CAACX,QAAQ;EACtB;EAEAY,YAAYA,CAAA,EAAY;IACtB,OAAO,IAAI,CAACb,aAAa;EAC3B;EAEAc,gBAAgBA,CACdC,SAAY,EACZC,QAAgD,EACxB;IACxB;IACA,OAAO;MACLC,MAAM,EAAEA,CAAA,KAAM,CAAC;IACjB,CAAC;EACH;EAEAC,mBAAmBA,CAACC,YAAoC,EAAQ,CAAC;AACnE;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc,IAAIvB,2BAA2B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -10,8 +10,8 @@ exports.default = void 0;
|
|
|
10
10
|
|
|
11
11
|
/// Mock Manager for recording notifications. Does nothing.
|
|
12
12
|
class RecordingNotificationManager {
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
isRegistered_ = false;
|
|
14
|
+
isShown_ = false;
|
|
15
15
|
constructor() {}
|
|
16
16
|
async register() {}
|
|
17
17
|
async show(info) {}
|
|
@@ -20,7 +20,10 @@ class RecordingNotificationManager {
|
|
|
20
20
|
async unregister() {}
|
|
21
21
|
async enableControl(control, enabled) {}
|
|
22
22
|
async isActive() {
|
|
23
|
-
return this.
|
|
23
|
+
return this.isShown_;
|
|
24
|
+
}
|
|
25
|
+
isRegistered() {
|
|
26
|
+
return this.isRegistered_;
|
|
24
27
|
}
|
|
25
28
|
addEventListener(eventName, callback) {
|
|
26
29
|
// dummy subscription object with a no-op remove method
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RecordingNotificationManager","
|
|
1
|
+
{"version":3,"names":["RecordingNotificationManager","isRegistered_","isShown_","constructor","register","show","info","update","hide","unregister","enableControl","control","enabled","isActive","isRegistered","addEventListener","eventName","callback","remove","removeEventListener","subscription","_default","exports","default"],"sourceRoot":"../../../../src","sources":["web-system/notification/RecordingNotificationManager.ts"],"mappings":";;;;;;AAAA;AACA;AACA;;AAWA;AACA,MAAMA,4BAA4B,CAOlC;EACUC,aAAa,GAAG,KAAK;EACrBC,QAAQ,GAAG,KAAK;EAExBC,WAAWA,CAAA,EAAG,CAAC;EAEf,MAAMC,QAAQA,CAAA,EAAkB,CAAC;EAEjC,MAAMC,IAAIA,CAACC,IAA+B,EAAiB,CAAC;EAE5D,MAAMC,MAAMA,CAACD,IAA+B,EAAiB,CAAC;EAE9D,MAAME,IAAIA,CAAA,EAAkB,CAAC;EAE7B,MAAMC,UAAUA,CAAA,EAAkB,CAAC;EAEnC,MAAMC,aAAaA,CACjBC,OAA6B,EAC7BC,OAAgB,EACD,CAAC;EAElB,MAAMC,QAAQA,CAAA,EAAqB;IACjC,OAAO,IAAI,CAACX,QAAQ;EACtB;EAEAY,YAAYA,CAAA,EAAY;IACtB,OAAO,IAAI,CAACb,aAAa;EAC3B;EAEAc,gBAAgBA,CACdC,SAAY,EACZC,QAAgD,EACxB;IACxB;IACA,OAAO;MACLC,MAAM,EAAEA,CAAA,KAAM,CAAC;IACjB,CAAC;EACH;EAEAC,mBAAmBA,CAACC,YAAoC,EAAQ,CAAC;AACnE;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc,IAAIvB,4BAA4B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { NativeAudioAPIModule } from "../../specs/index.js";
|
|
4
3
|
import { AudioEventEmitter } from "../../events/index.js";
|
|
4
|
+
import { NativeAudioAPIModule } from "../../specs/index.js";
|
|
5
5
|
/// Manager for media playback notifications with controls and MediaSession integration.
|
|
6
6
|
class PlaybackNotificationManager {
|
|
7
7
|
notificationKey = 'playback';
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
isRegistered_ = false;
|
|
9
|
+
isShown_ = false;
|
|
10
10
|
constructor() {
|
|
11
11
|
this.audioEventEmitter = new AudioEventEmitter(global.AudioEventEmitter);
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
/// Register the playback notification (must be called before showing).
|
|
15
15
|
async register() {
|
|
16
|
-
if (this.
|
|
16
|
+
if (this.isRegistered_) {
|
|
17
17
|
console.warn('PlaybackNotification is already registered');
|
|
18
18
|
return;
|
|
19
19
|
}
|
|
@@ -24,12 +24,12 @@ class PlaybackNotificationManager {
|
|
|
24
24
|
if (result.error) {
|
|
25
25
|
throw new Error(result.error);
|
|
26
26
|
}
|
|
27
|
-
this.
|
|
27
|
+
this.isRegistered_ = true;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
/// Show the notification with initial metadata.
|
|
31
31
|
async show(info) {
|
|
32
|
-
if (!this.
|
|
32
|
+
if (!this.isRegistered_) {
|
|
33
33
|
throw new Error('PlaybackNotification must be registered before showing. Call register() first.');
|
|
34
34
|
}
|
|
35
35
|
if (!NativeAudioAPIModule) {
|
|
@@ -39,12 +39,12 @@ class PlaybackNotificationManager {
|
|
|
39
39
|
if (result.error) {
|
|
40
40
|
throw new Error(result.error);
|
|
41
41
|
}
|
|
42
|
-
this.
|
|
42
|
+
this.isShown_ = true;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
/// Update the notification with new metadata or state.
|
|
46
46
|
async update(info) {
|
|
47
|
-
if (!this.
|
|
47
|
+
if (!this.isShown_) {
|
|
48
48
|
console.warn('PlaybackNotification is not shown. Call show() first.');
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
@@ -59,7 +59,7 @@ class PlaybackNotificationManager {
|
|
|
59
59
|
|
|
60
60
|
/// Hide the notification (can be shown again later).
|
|
61
61
|
async hide() {
|
|
62
|
-
if (!this.
|
|
62
|
+
if (!this.isShown_) {
|
|
63
63
|
return;
|
|
64
64
|
}
|
|
65
65
|
if (!NativeAudioAPIModule) {
|
|
@@ -69,15 +69,15 @@ class PlaybackNotificationManager {
|
|
|
69
69
|
if (result.error) {
|
|
70
70
|
throw new Error(result.error);
|
|
71
71
|
}
|
|
72
|
-
this.
|
|
72
|
+
this.isShown_ = false;
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
/// Unregister the notification (must register again to use).
|
|
76
76
|
async unregister() {
|
|
77
|
-
if (!this.
|
|
77
|
+
if (!this.isRegistered_) {
|
|
78
78
|
return;
|
|
79
79
|
}
|
|
80
|
-
if (this.
|
|
80
|
+
if (this.isShown_) {
|
|
81
81
|
await this.hide();
|
|
82
82
|
}
|
|
83
83
|
if (!NativeAudioAPIModule) {
|
|
@@ -87,12 +87,12 @@ class PlaybackNotificationManager {
|
|
|
87
87
|
if (result.error) {
|
|
88
88
|
throw new Error(result.error);
|
|
89
89
|
}
|
|
90
|
-
this.
|
|
90
|
+
this.isRegistered_ = false;
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
/// Enable or disable a specific playback control.
|
|
94
94
|
async enableControl(control, enabled) {
|
|
95
|
-
if (!this.
|
|
95
|
+
if (!this.isRegistered_) {
|
|
96
96
|
console.warn('PlaybackNotification is not registered');
|
|
97
97
|
return;
|
|
98
98
|
}
|
|
@@ -116,6 +116,9 @@ class PlaybackNotificationManager {
|
|
|
116
116
|
}
|
|
117
117
|
return await NativeAudioAPIModule.isNotificationActive(this.notificationKey);
|
|
118
118
|
}
|
|
119
|
+
isRegistered() {
|
|
120
|
+
return this.isRegistered_;
|
|
121
|
+
}
|
|
119
122
|
|
|
120
123
|
/// Add an event listener for notification actions.
|
|
121
124
|
addEventListener(eventName, callback) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["AudioEventEmitter","NativeAudioAPIModule","PlaybackNotificationManager","notificationKey","isRegistered_","isShown_","constructor","audioEventEmitter","global","register","console","warn","Error","result","registerNotification","error","show","info","showNotification","update","updateNotification","hide","hideNotification","unregister","unregisterNotification","enableControl","control","enabled","params","isActive","isNotificationActive","isRegistered","addEventListener","eventName","callback","addAudioEventListener","removeEventListener","subscription","remove"],"sourceRoot":"../../../../src","sources":["system/notification/PlaybackNotificationManager.ts"],"mappings":"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","ignoreList":[]}
|