Skip to content

Commit 7bc293e

Browse files
authored
Split audioWorklet environment from browser (#320)
1 parent 814075f commit 7bc293e

File tree

8 files changed

+89
-23
lines changed

8 files changed

+89
-23
lines changed

data/audioWorklet.mjs

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// This file is autogenerated by scripts
2+
// Do NOT modify this file manually
3+
4+
export default {
5+
AsyncDisposableStack: false,
6+
AudioWorkletGlobalScope: false,
7+
AudioWorkletProcessor: false,
8+
ByteLengthQueuingStrategy: false,
9+
console: false,
10+
CountQueuingStrategy: false,
11+
currentFrame: false,
12+
currentTime: false,
13+
DisposableStack: false,
14+
Event: false,
15+
EventTarget: false,
16+
MessageEvent: false,
17+
MessagePort: false,
18+
QuotaExceededError: false,
19+
ReadableByteStreamController: false,
20+
ReadableStream: false,
21+
ReadableStreamBYOBReader: false,
22+
ReadableStreamBYOBRequest: false,
23+
ReadableStreamDefaultController: false,
24+
ReadableStreamDefaultReader: false,
25+
registerProcessor: false,
26+
sampleRate: false,
27+
SuppressedError: false,
28+
TransformStream: false,
29+
TransformStreamDefaultController: false,
30+
UserActivation: false,
31+
WebAssembly: false,
32+
WorkletGlobalScope: false,
33+
WritableStream: false,
34+
WritableStreamDefaultController: false,
35+
WritableStreamDefaultWriter: false,
36+
};

data/browser.mjs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,7 @@ export default {
3838
AudioScheduledSourceNode: false,
3939
AudioSinkInfo: false,
4040
AudioWorklet: false,
41-
AudioWorkletGlobalScope: false,
4241
AudioWorkletNode: false,
43-
AudioWorkletProcessor: false,
4442
AuthenticatorAssertionResponse: false,
4543
AuthenticatorAttestationResponse: false,
4644
AuthenticatorResponse: false,
@@ -186,8 +184,6 @@ export default {
186184
CSSUnparsedValue: false,
187185
CSSVariableReferenceValue: false,
188186
CSSViewTransitionRule: false,
189-
currentFrame: false,
190-
currentTime: false,
191187
CustomElementRegistry: false,
192188
customElements: false,
193189
CustomEvent: false,
@@ -784,7 +780,6 @@ export default {
784780
ReadableStreamBYOBRequest: false,
785781
ReadableStreamDefaultController: false,
786782
ReadableStreamDefaultReader: false,
787-
registerProcessor: false,
788783
RelativeOrientationSensor: false,
789784
RemotePlayback: false,
790785
removeEventListener: false,
@@ -824,7 +819,6 @@ export default {
824819
RTCSessionDescription: false,
825820
RTCStatsReport: false,
826821
RTCTrackEvent: false,
827-
sampleRate: false,
828822
scheduler: false,
829823
Scheduler: false,
830824
Scheduling: false,
@@ -1120,7 +1114,6 @@ export default {
11201114
WindowControlsOverlayGeometryChangeEvent: false,
11211115
Worker: false,
11221116
Worklet: false,
1123-
WorkletGlobalScope: false,
11241117
WritableStream: false,
11251118
WritableStreamDefaultController: false,
11261119
WritableStreamDefaultWriter: false,

globals.json

Lines changed: 33 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,39 @@
2929
"resetTimeouts": false,
3030
"waitsForPromise": false
3131
},
32+
"audioWorklet": {
33+
"AsyncDisposableStack": false,
34+
"AudioWorkletGlobalScope": false,
35+
"AudioWorkletProcessor": false,
36+
"ByteLengthQueuingStrategy": false,
37+
"console": false,
38+
"CountQueuingStrategy": false,
39+
"currentFrame": false,
40+
"currentTime": false,
41+
"DisposableStack": false,
42+
"Event": false,
43+
"EventTarget": false,
44+
"MessageEvent": false,
45+
"MessagePort": false,
46+
"QuotaExceededError": false,
47+
"ReadableByteStreamController": false,
48+
"ReadableStream": false,
49+
"ReadableStreamBYOBReader": false,
50+
"ReadableStreamBYOBRequest": false,
51+
"ReadableStreamDefaultController": false,
52+
"ReadableStreamDefaultReader": false,
53+
"registerProcessor": false,
54+
"sampleRate": false,
55+
"SuppressedError": false,
56+
"TransformStream": false,
57+
"TransformStreamDefaultController": false,
58+
"UserActivation": false,
59+
"WebAssembly": false,
60+
"WorkletGlobalScope": false,
61+
"WritableStream": false,
62+
"WritableStreamDefaultController": false,
63+
"WritableStreamDefaultWriter": false
64+
},
3265
"browser": {
3366
"AbortController": false,
3467
"AbortSignal": false,
@@ -66,9 +99,7 @@
6699
"AudioScheduledSourceNode": false,
67100
"AudioSinkInfo": false,
68101
"AudioWorklet": false,
69-
"AudioWorkletGlobalScope": false,
70102
"AudioWorkletNode": false,
71-
"AudioWorkletProcessor": false,
72103
"AuthenticatorAssertionResponse": false,
73104
"AuthenticatorAttestationResponse": false,
74105
"AuthenticatorResponse": false,
@@ -214,8 +245,6 @@
214245
"CSSUnparsedValue": false,
215246
"CSSVariableReferenceValue": false,
216247
"CSSViewTransitionRule": false,
217-
"currentFrame": false,
218-
"currentTime": false,
219248
"CustomElementRegistry": false,
220249
"customElements": false,
221250
"CustomEvent": false,
@@ -812,7 +841,6 @@
812841
"ReadableStreamBYOBRequest": false,
813842
"ReadableStreamDefaultController": false,
814843
"ReadableStreamDefaultReader": false,
815-
"registerProcessor": false,
816844
"RelativeOrientationSensor": false,
817845
"RemotePlayback": false,
818846
"removeEventListener": false,
@@ -852,7 +880,6 @@
852880
"RTCSessionDescription": false,
853881
"RTCStatsReport": false,
854882
"RTCTrackEvent": false,
855-
"sampleRate": false,
856883
"scheduler": false,
857884
"Scheduler": false,
858885
"Scheduling": false,
@@ -1148,7 +1175,6 @@
11481175
"WindowControlsOverlayGeometryChangeEvent": false,
11491176
"Worker": false,
11501177
"Worklet": false,
1151-
"WorkletGlobalScope": false,
11521178
"WritableStream": false,
11531179
"WritableStreamDefaultController": false,
11541180
"WritableStreamDefaultWriter": false,

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"update:nodeBuiltin": "node scripts/update.mjs --job=nodeBuiltin",
2525
"update:worker": "node scripts/update.mjs --job=worker",
2626
"update:serviceworker": "node scripts/update.mjs --job=serviceworker",
27+
"update:audioWorklet": "node scripts/update.mjs --job=audioWorklet",
2728
"update:shelljs": "node scripts/update.mjs --job=shelljs",
2829
"update:jest": "node scripts/update.mjs --job=jest",
2930
"update:vitest": "node scripts/update.mjs --job=vitest",

scripts/browser/assets/main.mjs

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
const EXECUTE_COMMAND_SIGNAL = 'get-globals';
22

33
const environments = [
4-
{environment: 'browser', getGlobals: getBrowserGlobals},
4+
{environment: 'browser', getGlobals: getGlobalThisProperties},
55
{environment: 'worker', getGlobals: getWebWorkerGlobals},
66
{environment: 'serviceworker', getGlobals: getServiceWorkerGlobals},
7+
{environment: 'audioWorklet', getGlobals: getAudioWorkletGlobals},
78
];
89

910
function getGlobalThisProperties({expectSecureContext = true} = {}) {
@@ -101,12 +102,6 @@ async function initServiceWorker() {
101102
});
102103
}
103104

104-
async function getBrowserGlobals() {
105-
const globals = getGlobalThisProperties();
106-
const audioWorkletGlobals = await getAudioWorkletGlobals();
107-
return [...new Set([...globals, ...audioWorkletGlobals])];
108-
}
109-
110105
const AUDIO_WORKLET_PROCESSOR_NAME = `${EXECUTE_COMMAND_SIGNAL}-processor`;
111106
let audioWorkletNode;
112107
async function getAudioWorkletGlobals() {

scripts/get-browser-globals.mjs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,4 +179,14 @@ async function getServiceWorkerGlobals() {
179179
);
180180
}
181181

182-
export {getBrowserGlobals, getWebWorkerGlobals, getServiceWorkerGlobals};
182+
async function getAudioWorkletGlobals() {
183+
const properties = await getGlobalsInBrowser('audioWorklet');
184+
return createGlobals(properties);
185+
}
186+
187+
export {
188+
getBrowserGlobals,
189+
getWebWorkerGlobals,
190+
getServiceWorkerGlobals,
191+
getAudioWorkletGlobals,
192+
};

scripts/update.mjs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
getBrowserGlobals,
88
getWebWorkerGlobals,
99
getServiceWorkerGlobals,
10+
getAudioWorkletGlobals,
1011
} from './get-browser-globals.mjs';
1112
import getShelljsGlobals from './get-shelljs-globals.mjs';
1213
import getJestGlobals from './get-jest-globals.mjs';
@@ -41,6 +42,10 @@ const ALL_JOBS = [
4142
id: 'serviceworker',
4243
build: createBuildFunction(getServiceWorkerGlobals),
4344
},
45+
{
46+
id: 'audioWorklet',
47+
build: createBuildFunction(getAudioWorkletGlobals),
48+
},
4449
{
4550
id: 'shelljs',
4651
build: createBuildFunction(getShelljsGlobals, {incremental: false}),

scripts/utilities.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ function getGlobalThisProperties() {
7676
async function createGlobals(names, {
7777
shouldExclude,
7878
isWritable = () => false,
79-
}) {
79+
} = {}) {
8080
names = unique(names);
8181

8282
if (shouldExclude) {

0 commit comments

Comments
 (0)