dot-audio
Version:
A simple web audio library for making synthesizers
1 lines • 129 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["dot-audio"]=t():e["dot-audio"]=t()}(self,(function(){return(()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}e.r(t),e.d(t,{AutoPan:()=>Sn,BufferSource:()=>co,ChannelMerger:()=>Fe,ChannelSplitter:()=>Be,Chorus:()=>Bn,Compressor:()=>Ve,ConstantSource:()=>b,Convolver:()=>ot,Delay:()=>mt,Distortion:()=>Vn,EQ2:()=>or,Envelope:()=>S,FMSynth:()=>lc,FeedbackDelay:()=>mr,Filter:()=>z,FilterEnvelope:()=>ne,Flanger:()=>_r,Gain:()=>ye,GainEnvelope:()=>De,Keyboard:()=>hu,LFO:()=>bn,Limiter:()=>Mr,MonoSynth:()=>Tc,NoiseGenerator:()=>ho,Note:()=>du,Osc:()=>Yo,Oscillator:()=>Ht,PingPongDelay:()=>Hr,PolySynth:()=>Wc,Reverb:()=>Fo,SignalGenerator:()=>pu,SimpleFMSynth:()=>tu,StereoPanner:()=>_t,Synth:()=>wc,Tremolo:()=>Uo,WaveShaper:()=>Mt,chain:()=>Jt,getNoteFrequency:()=>Yt,parseNote:()=>Zt});const r=function e(t){var r=this;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.getName=function(){return r.name},this.getParams=function(){return r.params},this.getParam=function(e){return r.params[e]},this.getInputs=function(){return r.inputs},this.getOutputs=function(){return r.outputs},this.connect=function(e,t,n){return r._connect(e,t,n)},this.disconnect=function(e,t,n){return r._disconnect(e,t,n)},this._connect=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(Array.isArray(t))t.forEach((function(e){return r.connect(e)}));else if(t instanceof e){if(!t.getInputs())return void console.error("Cannot connect to a node with no inputs");var c=t._getInputNodes();c.forEach((function(e){r.getOutputs().forEach((function(t){return t.connect(e,n,o)}))}))}else t instanceof AudioNode?r.getOutputs().forEach((function(e){return e.connect(t,n,o)})):t instanceof AudioParam?r.getOutputs().forEach((function(e){return e.connect(t)})):console.error("Invalid destination type");return r},this._disconnect=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(Array.isArray(t))t.forEach((function(e){return r.disconnect(e)}));else if(t instanceof e){if(!t.getInputs())return void console.error("Cannot disconnect from destination provided");var c=t._getInputNodes();c.forEach((function(e){r.getOutputs().forEach((function(t){return t.disconnect(e,n,o)}))}))}else t instanceof AudioNode?r.getOutputs().forEach((function(e){return e.disconnect(t,n,o)})):r.getOutputs().forEach((function(e){return e.disconnect(t)}));return r},this._getInputNodes=function(){return r.getInputs().reduce((function(t,r){return r instanceof e?t.push.apply(t,function(e){if(Array.isArray(e))return n(e)}(o=r._getInputNodes())||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(o)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(o)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()):t.push(r),t;var o}),[])},this._update=function(e,t){return e.setValueAtTime(t,r.AC.currentTime)},this._timeUpdate=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;n?e.setTargetAtTime(t,r.AC.currentTime,n):e.setValueAtTime(t,r.AC.currentTime)},this._linearFadeUpdate=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;r._timeUpdate(e,1-n,o),r._timeUpdate(t,n,o)},this._equalPowerFadeUpdate=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;r._timeUpdate(e,Math.cos(.5*n*Math.PI),o),r._timeUpdate(t,Math.cos(.5*(1-n)*Math.PI),o)},this._dryWetUpdate=function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;n<.5?(r._timeUpdate(e,1,o),r._timeUpdate(t,2*n,o)):(r._timeUpdate(e,1-2*(n-.5),o),r._timeUpdate(t,1,o))},this.AC=t,this.name="DotAudioNode",this};function o(e){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function u(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e,t){return!t||"object"!==o(t)&&"function"!=typeof t?l(e):t}function l(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var y={offset:1,start:!1};const b=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&f(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=p(t);if(n){var o=p(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return s(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};a(this,o),(t=r.call(this,e)).start=function(){return t.source.start()},t.stop=function(){return t.source.stop()},t.getOffset=function(){return t.params.offset},t.setOffset=function(e,n){return t._timeUpdate(t.params.offset,e,n)},t.name="ConstantSource",t.source=t.AC.createConstantSource(),t.params={offset:t.source.offset},t.inputs=null,t.outputs=[t.source];var c=u(u({},y),n);return t.setOffset(c.offset),c.start&&t.start(),s(t,l(t))}return o}(r);function m(e){return(m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?g(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function v(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function d(e,t){return(d=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function P(e,t){return!t||"object"!==m(t)&&"function"!=typeof t?w(e):t}function w(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function j(e){return(j=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var D={attack:0,decay:0,sustain:1,release:0,modifier:1};const S=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&d(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=j(t);if(n){var o=j(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return P(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};v(this,o),(t=r.call(this,e)).getAttack=function(){return t.attack},t.getDecay=function(){return t.decay},t.getSustain=function(){return t.sustain},t.getRelease=function(){return t.release},t.getModifier=function(){return t.modifier},t.setAttack=function(e){return t.attack=e},t.setDecay=function(e){return t.decay=e},t.setSustain=function(e){return t.sustain=e},t.setRelease=function(e){return t.release=e},t.setModifier=function(e){return t.modifier=e},t.connect=function(e){!e instanceof AudioParam?console.error("Envelopes must be connected to an AudioParam"):t._connect(e)},t.triggerAttack=function(){t._clearTimeouts();var e=t.sustain*t.modifier;if(t.attack){t.source.setOffset(0),t.source.setOffset(t.modifier,t.attack);var n=setTimeout((function(){t.source.setOffset(e,t.decay)}),1e3*t.attack);t.timeoutIds.push(n)}else t.decay?(t.source.setOffset(t.modifier),t.source.setOffset(e,t.decay)):t.sustain&&t.source.setOffset(e)},t.triggerRelease=function(){t._clearTimeouts(),t.source.setOffset(0,t.release)},t.triggerStop=function(){t._clearTimeouts(),t.source.setOffset(0)},t._clearTimeouts=function(){return t.timeoutIds.forEach((function(e){return clearTimeout(e)}))},t.name="Envelope",t.source=new b(t.AC,{start:!0}),t.timeoutIds=[],t.attack=0,t.decay=0,t.sustain=1,t.release=0,t.modifier=1,t.params={},t.inputs=null,t.outputs=[t.source];var c=O(O({},D),n);return t.setAttack(c.attack),t.setDecay(c.decay),t.setSustain(c.sustain),t.setRelease(c.release),t.setModifier(c.modifier),t.source.setOffset(0),P(t,w(t))}return o}(r);var _=["C","C#","D","D#","E","F","F#","G","G#","A","A#","B"],R=["none","2x","4x"],A=["white","pink","brown"],E=["sine","triangle","square","sawtooth"],F=["lowpass","highpass","bandpass","allpass","notch","peaking","lowshelf","highshelf"],G=/^(?![ebEB]#)([a-gA-G]#?)([0-9])$/,q={12:"C",13:"C#",14:"D",15:"D#",16:"E",17:"F",18:"F#",19:"G",20:"G#",21:"A",22:"A#",23:"B"},T={C:261.63,"C#":277.18,D:293.66,"D#":311.13,E:329.63,F:349.23,"F#":369.99,G:392,"G#":415.3,A:440,"A#":466.16,B:493.88},C={a:12,w:13,s:14,e:15,d:16,f:17,t:18,g:19,y:20,h:21,u:22,j:23,k:24,o:25,l:26,p:27,";":28};function k(e){return(k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function B(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?B(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):B(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function L(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function N(e,t){return(N=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function U(e,t){return!t||"object"!==k(t)&&"function"!=typeof t?Q(e):t}function Q(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function I(e){return(I=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var W={frequency:11e3,q:0,detune:0,gain:0,type:"lowpass"};const z=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&N(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=I(t);if(n){var o=I(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return U(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};L(this,o),(t=r.call(this,e)).getFrequency=function(){return t.params.frequency.value},t.getQ=function(){return t.params.Q.value},t.getGain=function(){return t.params.gain.value},t.getDetune=function(){return t.params.detune.value},t.getType=function(){return t.filter.type},t.setFrequency=function(e,n){return t._timeUpdate(t.params.frequency,e,n)},t.setQ=function(e,n){return t._timeUpdate(t.params.frequency,e,n)},t.setGain=function(e,n){return t._timeUpdate(t.params.gain,e,n)},t.setDetune=function(e,n){return t._timeUpdate(t.params.detune,e,n)},t.setType=function(e){F.includes(e)&&(t.filter.type=e)},t.name="Filter",t.filter=t.AC.createBiquadFilter(),t.params={frequency:t.filter.frequency,q:t.filter.q,gain:t.filter.gain,detune:t.filter.detune},t.inputs=[t.filter],t.outputs=[t.filter];var c=M(M({},W),n);return t.setFrequency(c.frequency),t.setQ(c.q),t.setGain(c.gain),t.setDetune(c.detune),t.setType(c.type),U(t,Q(t))}return o}(r);function K(e){return(K="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function V(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function H(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?V(Object(n),!0).forEach((function(t){$(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):V(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function $(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function J(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function X(e,t){return(X=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Y(e,t){return!t||"object"!==K(t)&&"function"!=typeof t?Z(e):t}function Z(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ee(e){return(ee=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var te={frequency:2e3,q:0,detune:0,gain:0,type:"lowpass"};const ne=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&X(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=ee(t);if(n){var o=ee(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Y(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};J(this,o),(t=r.call(this,e,n)).getFrequency=function(){return t.params.frequency.value},t.getQ=function(){return t.params.q.value},t.getDetune=function(){return t.params.detune.value},t.getGain=function(){return t.params.gain.value},t.getType=function(){return t.filter.getType()},t.setFrequency=function(e,n){return t.filter.setFrequency(e,n)},t.setQ=function(e,n){return t.filter.setQ(e,n)},t.setDetune=function(e,n){return t.filter.setDetune(e,n)},t.setGain=function(e,n){return t.filter.setGain(e,n)},t.setType=function(e){return t.filter.setType(e)},t.name="FilterEnvelope",t.filter=new z(t.AC),t.params={frequency:t.filter.getParam("frequency"),detune:t.filter.getParam("detune"),q:t.filter.getParam("q"),gain:t.filter.getParam("gain")},t.inputs=[t.filter],t.outputs=[t.filter];var c=H(H({},te),n);return t.setFrequency(c.frequency),t.setQ(c.q),t.setDetune(c.detune),t.setGain(c.gain),t.setType(c.type),t.source.connect(t.filter.getParam("frequency")),Y(t,Z(t))}return o}(S);function re(e){return(re="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function oe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ce(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?oe(Object(n),!0).forEach((function(t){ue(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ue(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ie(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ae(e,t){return(ae=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function fe(e,t){return!t||"object"!==re(t)&&"function"!=typeof t?se(e):t}function se(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function le(e){return(le=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var pe={gain:1};const ye=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ae(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=le(t);if(n){var o=le(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return fe(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};ie(this,o),(t=r.call(this,e)).getGain=function(){return t.params.gain.value},t.setGain=function(e,n){return t._timeUpdate(t.params.gain,e,n)},t.name="Gain",t.gain=t.AC.createGain(),t.params={gain:t.gain.gain},t.inputs=[t.gain],t.outputs=[t.gain];var c=ce(ce({},pe),n);return t.setGain(c.gain),fe(t,se(t))}return o}(r);function be(e){return(be="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function me(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ge(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?me(Object(n),!0).forEach((function(t){Oe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):me(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Oe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function he(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ve(e,t){return(ve=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function de(e,t){return!t||"object"!==be(t)&&"function"!=typeof t?Pe(e):t}function Pe(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function we(e){return(we=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var je={gain:0};const De=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ve(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=we(t);if(n){var o=we(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return de(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};he(this,o),(t=r.call(this,e,n)).getGain=function(){return t.params.gain.value},t.setGain=function(e,n){return t.gain.setGain(e,n)},t.name="GainEnvelope",t.gain=new ye(t.AC),t.params={gain:t.gain.getParam("gain")},t.inputs=[t.gain],t.outputs=[t.gain];var c=ge(ge({},je),n);return t.setGain(c.gain),t.source.connect(t.gain.getParam("gain")),de(t,Pe(t))}return o}(S);function Se(e){return(Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _e(e,t){return(_e=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Re(e,t){return!t||"object"!==Se(t)&&"function"!=typeof t?Ae(e):t}function Ae(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Ee(e){return(Ee=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}const Fe=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_e(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=Ee(t);if(n){var o=Ee(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Re(this,e)});function o(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(t=r.call(this,e)).name="ChannelMerger",t.channelMerger=t.AC.createChannelMerger(2),t.params={},t.inputs=[t.channelMerger],t.outputs=[t.channelMerger],Re(t,Ae(t))}return o}(r);function Ge(e){return(Ge="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function qe(e,t){return(qe=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Te(e,t){return!t||"object"!==Ge(t)&&"function"!=typeof t?Ce(e):t}function Ce(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ke(e){return(ke=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}const Be=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&qe(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=ke(t);if(n){var o=ke(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Te(this,e)});function o(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(t=r.call(this,e)).name="ChannelSplitter",t.channelSplitter=t.AC.createChannelSplitter(2),t.params={},t.inputs=[t.channelSplitter],t.outputs=[t.channelSplitter],Te(t,Ce(t))}return o}(r);function Me(e){return(Me="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function xe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?xe(Object(n),!0).forEach((function(t){Ne(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ne(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ue(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Qe(e,t){return(Qe=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ie(e,t){return!t||"object"!==Me(t)&&"function"!=typeof t?We(e):t}function We(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ze(e){return(ze=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Ke={threshold:-24,ratio:12,knee:30,attack:.003,release:.25};const Ve=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Qe(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=ze(t);if(n){var o=ze(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Ie(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Ue(this,o),(t=r.call(this,e)).getThreshold=function(){return t.params.threshold.value},t.getRatio=function(){return t.params.ratio.value},t.getKnee=function(){return t.params.knee.value},t.getAttack=function(){return t.params.attack.value},t.getRelease=function(){return t.params.release.value},t.getReduction=function(){return t.compressor.reduction},t.setThreshold=function(e,n){return t._timeUpdate(t.params.threshold,e,n)},t.setRatio=function(e,n){return t._timeUpdate(t.params.ratio,e,n)},t.setKnee=function(e,n){return t._timeUpdate(t.params.knee,e,n)},t.setAttack=function(e,n){return t._timeUpdate(t.params.attack,e,n)},t.setRelease=function(e,n){return t._timeUpdate(t.params.release,e,n)},t.name="Compressor",t.compressor=t.AC.createDynamicsCompressor(),t.params={threshold:t.compressor.threshold,ratio:t.compressor.ratio,knee:t.compressor.knee,attack:t.compressor.attack,release:t.compressor.release},t.inputs=[t.compressor],t.outputs=[t.compressor];var c=Le(Le({},Ke),n);return t.setThreshold(c.threshold),t.setRatio(c.ratio),t.setKnee(c.knee),t.setAttack(c.attack),t.setRelease(c.release),Ie(t,We(t))}return o}(r);function He(e){return(He="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function $e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Je(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?$e(Object(n),!0).forEach((function(t){Xe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$e(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Xe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ye(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ze(e,t){return(Ze=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function et(e,t){return!t||"object"!==He(t)&&"function"!=typeof t?tt(e):t}function tt(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function nt(e){return(nt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var rt={buffer:null,normalize:!1};const ot=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ze(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=nt(t);if(n){var o=nt(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return et(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Ye(this,o),(t=r.call(this,e)).getBuffer=function(){return t.convolver.buffer},t.getNormalize=function(){return t.convolver.normalize},t.setBuffer=function(e){return t.convolver.buffer=e},t.setNormalize=function(e){return t.convolver.normalize=e},t.name="Convolver",t.convolver=t.AC.createConvolver(),t.params={},t.inputs=[t.convolver],t.outputs=[t.convolver];var c=Je(Je({},rt),n);return t.setBuffer(c.buffer),t.setNormalize(c.normalize),et(t,tt(t))}return o}(r);function ct(e){return(ct="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ut(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function it(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ut(Object(n),!0).forEach((function(t){at(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ut(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function at(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ft(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function st(e,t){return(st=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function lt(e,t){return!t||"object"!==ct(t)&&"function"!=typeof t?pt(e):t}function pt(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function yt(e){return(yt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var bt={delayTime:0};const mt=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&st(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=yt(t);if(n){var o=yt(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return lt(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};ft(this,o),(t=r.call(this,e)).getDelayTime=function(){return t.params.delayTime.value},t.setDelayTime=function(e,n){return t._timeUpdate(t.params.delayTime,e,n)},t.name="Delay",t.delay=t.AC.createDelay(),t.params={delayTime:t.delay.delayTime},t.inputs=[t.delay],t.outputs=[t.delay];var c=it(it({},bt),n);return t.setDelayTime(c.delayTime),lt(t,pt(t))}return o}(r);function gt(e){return(gt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ht(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ot(Object(n),!0).forEach((function(t){vt(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ot(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function vt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function dt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Pt(e,t){return(Pt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function wt(e,t){return!t||"object"!==gt(t)&&"function"!=typeof t?jt(e):t}function jt(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Dt(e){return(Dt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var St={pan:0};const _t=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Pt(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=Dt(t);if(n){var o=Dt(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return wt(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};dt(this,o),(t=r.call(this,e)).getPan=function(){return t.params.pan.value},t.setPan=function(e,n){return t._timeUpdate(t.params.pan,e,n)},t.name="StereoPanner",t.panner=t.AC.createStereoPanner(),t.params={pan:t.panner.pan},t.inputs=[t.panner],t.outputs=[t.panner];var c=ht(ht({},St),n);return t.setPan(c.pan),wt(t,jt(t))}return o}(r);function Rt(e){return(Rt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function At(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Et(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?At(Object(n),!0).forEach((function(t){Ft(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):At(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ft(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Gt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function qt(e,t){return(qt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Tt(e,t){return!t||"object"!==Rt(t)&&"function"!=typeof t?Ct(e):t}function Ct(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function kt(e){return(kt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Bt={curve:null,oversample:"none"};const Mt=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&qt(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=kt(t);if(n){var o=kt(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Tt(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Gt(this,o),(t=r.call(this,e)).getCurve=function(){return t.waveShaper.curve},t.getOversample=function(){return t.waveShaper.oversample},t.setCurve=function(e){return t.waveShaper.curve=e},t.setOversample=function(e){R.includes(e)&&(t.waveShaper.oversample=e)},t.name="WaveShaper",t.waveShaper=t.AC.createWaveShaper(),t.params={},t.inputs=[t.waveShaper],t.outputs=[t.waveShaper];var c=Et(Et({},Bt),n);return t.setCurve(c.curve),t.setOversample(c.oversample),Tt(t,Ct(t))}return o}(r);function xt(e){return(xt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Lt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Nt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Lt(Object(n),!0).forEach((function(t){Ut(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Lt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Ut(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Qt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function It(e,t){return(It=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Wt(e,t){return!t||"object"!==xt(t)&&"function"!=typeof t?zt(e):t}function zt(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Kt(e){return(Kt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Vt={type:"sine",frequency:440,detune:0,start:!1};const Ht=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&It(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=Kt(t);if(n){var o=Kt(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Wt(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Qt(this,o),(t=r.call(this,e)).start=function(){return t.osc.start()},t.stop=function(){return t.osc.stop()},t.getFrequency=function(){return t.params.frequency.value},t.getDetune=function(){return t.params.detune.value},t.getWaveform=function(){return t.getType()},t.getType=function(){return t.osc.type},t.setFrequency=function(e,n){return t._timeUpdate(t.params.frequency,e,n)},t.setDetune=function(e,n){return t._timeUpdate(t.params.detune,e,n)},t.setWaveform=function(e){return t.setType(e)},t.setType=function(e){E.includes(e)&&(t.osc.type=e)},t.name="Oscillator",t.osc=t.AC.createOscillator(),t.params={frequency:t.osc.frequency,detune:t.osc.detune},t.inputs=null,t.outputs=[t.osc];var c=Nt(Nt({},Vt),n);return t.setType(c.type),t.setFrequency(c.frequency),t.setDetune(c.detune),c.start&&t.start(),Wt(t,zt(t))}return o}(r);var $t=function(e,t,n){return Math.min(n,Math.max(t,e))},Jt=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];if(!(t.length<2))for(var r=0;r<t.length-1;r++)t[r].connect(t[r+1])},Xt=function(e){var t=e.match(G);if(t)return{note:t[1].toUpperCase(),octave:parseInt(t[2])}},Yt=function(e){var t=Xt(e);return t?T[t.note]*Math.pow(2,t.octave-4):null},Zt=function(e){var t=Xt(e);if(t)return{fullNote:"".concat(t.note).concat(t.octave),note:t.note,octave:t.octave,frequency:Yt(e),midi:nn(e)}},en=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=C[e]+12*t;return Zt(tn(n))},tn=function(e){for(var t=$t(e,12,120),n=0;t>23;)t-=12,n++;return"".concat(q[t]).concat(n)},nn=function(e){var t=Xt(e);return t?_.indexOf(t.note)+12*(t.octave+1):null};function rn(e){return(rn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function on(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function cn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?on(Object(n),!0).forEach((function(t){un(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):on(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function un(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function an(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function fn(e,t){return(fn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function sn(e,t){return!t||"object"!==rn(t)&&"function"!=typeof t?ln(e):t}function ln(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function pn(e){return(pn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var yn={rate:1,depth:1,detune:0,type:"sine",start:!1};const bn=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&fn(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=pn(t);if(n){var o=pn(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return sn(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};an(this,o),(t=r.call(this,e)).start=function(){return t.osc.start()},t.stop=function(){return t.osc.stop()},t.getRate=function(){return t.params.rate.value},t.getDetune=function(){return t.params.detune.value},t.getDepth=function(){return t.params.depth.value},t.getType=function(){return t.osc.getType()},t.setRate=function(e,n){return t.osc.setFrequency($t(e,0,100),n)},t.setDetune=function(e,n){return t.osc.setDetune(e,n)},t.setDepth=function(e,n){return t.depth.setGain(e,n)},t.setType=function(e){return t.osc.setType(e)},t.name="LFO",t.depth=new ye(t.AC),t.osc=new Ht(t.AC),t.params={rate:t.osc.getParam("frequency"),detune:t.osc.getParam("detune"),depth:t.depth.getParam("gain")},t.inputs=null,t.outputs=[t.depth];var c=cn(cn({},yn),n);return t.setRate(c.rate),t.setDepth(c.depth),t.setDetune(c.detune),t.setType(c.type),t.osc.connect(t.depth),c.start&&t.start(),sn(t,ln(t))}return o}(r);function mn(e){return(mn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function gn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function On(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?gn(Object(n),!0).forEach((function(t){hn(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):gn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function hn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function dn(e,t){return(dn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Pn(e,t){return!t||"object"!==mn(t)&&"function"!=typeof t?wn(e):t}function wn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function jn(e){return(jn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Dn={depth:1,rate:1,type:"sine"};const Sn=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&dn(e,t)}(o,e);var t,n,r=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=jn(t);if(n){var o=jn(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return Pn(this,e)});function o(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};vn(this,o),(t=r.call(this,e)).getDepth=function(){return t.LFO.getDepth()},t.getRate=function(){return t.LFO.getRate()},t.getType=function(){return t.LFO.getType()},t.setDepth=function(e,n){return t.LFO.setDepth(e,n)},t.setRate=function(e,n){return t.LFO.setRa