memlnaut-nisps/playground/js
monkey-w1n5t0n fbeedba2f3 fix(modular): register worklet via concatenated blob url
The globalThis.FaustWorkletProcessor attachment on the base class isn't
enough in practice: Chrome's AudioWorkletGlobalScope isolates top-level
class declarations between separate addModule() calls, so a subclass
script loaded via a second addModule() still throws ReferenceError on
its 'extends FaustWorkletProcessor' clause.

Workaround: fetch both files, concatenate, and addModule() a single
blob URL. The base class and subclass end up in the same script
evaluation context and the extends clause resolves. Processor names
are memoised on a static Set so repeated sub-engine swaps don't try
to re-register (which would throw).
2026-04-11 08:33:29 +02:00
..
audio feat(audio-canvas): per-file loop count, beat-synced lengths, param range groups, pitch lock 2026-04-03 20:36:24 +01:00
eoc Merge EOC Delay + Saturation + Master Bus modules (meml-2sl, meml-2zm) 2026-04-03 18:22:00 +01:00
midi feat(playground): engine-aware heatmap + MIDI CC storage on engine switch (meml-qaa) 2026-04-03 17:55:39 +01:00
nisps feat(playground/nisps): warm-start weight transfer on MLP resize (meml-8jc) 2026-04-03 17:27:54 +01:00
shapeseq test(shapeseq): add test runner + smoke tests 2026-04-07 00:03:29 +01:00
synth fix(modular): register worklet via concatenated blob url 2026-04-11 08:33:29 +02:00
ui fix(modular): matrix cells opt-in + per-group drawer for non-C15 engines 2026-04-11 08:31:19 +02:00
a-app.js fix(modular): matrix cells opt-in + per-group drawer for non-C15 engines 2026-04-11 08:31:19 +02:00
app.js fix(playground): prevent 1/2 keys being swallowed by focused sliders 2026-03-22 11:52:30 +02:00
b-app.js feat(playground): expand gamepad support with face buttons and Steam Deck fixes 2026-03-22 22:40:15 +02:00
c-app.js feat(playground): expand gamepad support with face buttons and Steam Deck fixes 2026-03-22 22:40:15 +02:00
event-bus.js refactor(event-bus): extract to shared module 2026-04-06 23:18:47 +01:00