tone 15.0.0 → 15.0.2

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.
Files changed (321) hide show
  1. package/Tone/component/analysis/Analyser.ts +1 -6
  2. package/Tone/component/analysis/FFT.ts +1 -1
  3. package/Tone/component/analysis/Follower.ts +1 -5
  4. package/Tone/component/analysis/Meter.ts +1 -3
  5. package/Tone/component/analysis/Waveform.ts +1 -3
  6. package/Tone/component/channel/Channel.ts +1 -6
  7. package/Tone/component/channel/CrossFade.ts +1 -7
  8. package/Tone/component/channel/Merge.ts +1 -3
  9. package/Tone/component/channel/MultibandSplit.ts +1 -6
  10. package/Tone/component/channel/PanVol.ts +1 -6
  11. package/Tone/component/channel/Panner.ts +1 -5
  12. package/Tone/component/channel/Panner3D.ts +1 -7
  13. package/Tone/component/channel/Recorder.ts +1 -1
  14. package/Tone/component/channel/Solo.ts +1 -1
  15. package/Tone/component/channel/Split.ts +1 -3
  16. package/Tone/component/channel/Volume.ts +1 -3
  17. package/Tone/component/dynamics/Compressor.ts +1 -6
  18. package/Tone/component/dynamics/Gate.ts +1 -8
  19. package/Tone/component/dynamics/Limiter.ts +1 -7
  20. package/Tone/component/dynamics/MidSideCompressor.ts +1 -5
  21. package/Tone/component/dynamics/MultibandCompressor.ts +1 -8
  22. package/Tone/component/envelope/Envelope.ts +1 -8
  23. package/Tone/component/envelope/FrequencyEnvelope.ts +1 -8
  24. package/Tone/component/filter/BiquadFilter.ts +1 -6
  25. package/Tone/component/filter/Convolver.ts +1 -6
  26. package/Tone/component/filter/EQ3.ts +1 -7
  27. package/Tone/component/filter/FeedbackCombFilter.ts +1 -6
  28. package/Tone/component/filter/Filter.ts +1 -7
  29. package/Tone/component/filter/LowpassCombFilter.ts +1 -7
  30. package/Tone/component/filter/OnePoleFilter.ts +1 -6
  31. package/Tone/core/clock/Clock.ts +1 -6
  32. package/Tone/core/clock/TickParam.ts +1 -3
  33. package/Tone/core/clock/TickSignal.ts +1 -3
  34. package/Tone/core/clock/TickSource.ts +1 -5
  35. package/Tone/core/clock/Transport.ts +1 -1
  36. package/Tone/core/context/AudioContext.ts +8 -3
  37. package/Tone/core/context/Delay.ts +1 -7
  38. package/Tone/core/context/Destination.ts +1 -1
  39. package/Tone/core/context/Gain.ts +1 -6
  40. package/Tone/core/context/Param.ts +1 -8
  41. package/Tone/effect/AutoFilter.ts +1 -7
  42. package/Tone/effect/AutoPanner.ts +1 -5
  43. package/Tone/effect/AutoWah.ts +1 -7
  44. package/Tone/effect/BitCrusher.ts +2 -4
  45. package/Tone/effect/Chebyshev.ts +1 -3
  46. package/Tone/effect/Chorus.ts +1 -7
  47. package/Tone/effect/Distortion.ts +1 -5
  48. package/Tone/effect/FeedbackDelay.ts +1 -6
  49. package/Tone/effect/Freeverb.ts +1 -6
  50. package/Tone/effect/FrequencyShifter.ts +1 -5
  51. package/Tone/effect/JCReverb.ts +1 -5
  52. package/Tone/effect/Phaser.ts +1 -7
  53. package/Tone/effect/PingPongDelay.ts +1 -6
  54. package/Tone/effect/PitchShift.ts +1 -3
  55. package/Tone/effect/Reverb.ts +1 -1
  56. package/Tone/effect/StereoWidener.ts +2 -5
  57. package/Tone/effect/Tremolo.ts +1 -6
  58. package/Tone/effect/Vibrato.ts +1 -6
  59. package/Tone/event/Loop.ts +1 -6
  60. package/Tone/event/Part.ts +1 -6
  61. package/Tone/event/Pattern.ts +1 -7
  62. package/Tone/event/Sequence.ts +1 -7
  63. package/Tone/event/ToneEvent.ts +1 -6
  64. package/Tone/instrument/DuoSynth.ts +1 -1
  65. package/Tone/instrument/FMSynth.ts +1 -1
  66. package/Tone/instrument/Instrument.ts +1 -1
  67. package/Tone/instrument/MembraneSynth.ts +1 -1
  68. package/Tone/instrument/MetalSynth.ts +1 -1
  69. package/Tone/instrument/ModulationSynth.ts +1 -1
  70. package/Tone/instrument/MonoSynth.ts +1 -1
  71. package/Tone/instrument/Monophonic.ts +1 -1
  72. package/Tone/instrument/NoiseSynth.ts +2 -1
  73. package/Tone/instrument/PluckSynth.ts +1 -1
  74. package/Tone/instrument/PolySynth.ts +1 -6
  75. package/Tone/instrument/Sampler.ts +1 -8
  76. package/Tone/instrument/Synth.ts +1 -1
  77. package/Tone/signal/Add.ts +1 -5
  78. package/Tone/signal/GreaterThan.ts +1 -7
  79. package/Tone/signal/GreaterThanZero.ts +1 -5
  80. package/Tone/signal/Multiply.ts +1 -7
  81. package/Tone/signal/Pow.ts +1 -5
  82. package/Tone/signal/Scale.ts +1 -8
  83. package/Tone/signal/ScaleExp.ts +1 -9
  84. package/Tone/signal/Signal.ts +1 -7
  85. package/Tone/signal/SignalOperator.ts +3 -5
  86. package/Tone/signal/Subtract.ts +1 -5
  87. package/Tone/signal/SyncedSignal.ts +1 -6
  88. package/Tone/signal/ToneConstantSource.ts +1 -5
  89. package/Tone/signal/WaveShaper.ts +1 -8
  90. package/Tone/signal/Zero.ts +1 -3
  91. package/Tone/source/Noise.ts +1 -1
  92. package/Tone/source/UserMedia.ts +1 -3
  93. package/Tone/source/buffer/GrainPlayer.ts +1 -6
  94. package/Tone/source/buffer/Player.ts +1 -6
  95. package/Tone/source/buffer/Players.ts +1 -8
  96. package/Tone/source/buffer/ToneBufferSource.ts +1 -6
  97. package/Tone/source/oscillator/AMOscillator.ts +1 -7
  98. package/Tone/source/oscillator/FMOscillator.ts +1 -7
  99. package/Tone/source/oscillator/FatOscillator.ts +1 -7
  100. package/Tone/source/oscillator/LFO.ts +1 -7
  101. package/Tone/source/oscillator/OmniOscillator.ts +1 -6
  102. package/Tone/source/oscillator/Oscillator.ts +1 -6
  103. package/Tone/source/oscillator/PWMOscillator.ts +1 -6
  104. package/Tone/source/oscillator/PulseOscillator.ts +1 -6
  105. package/Tone/source/oscillator/ToneOscillatorNode.ts +1 -6
  106. package/Tone/version.ts +1 -1
  107. package/build/Tone.js +1 -1
  108. package/build/Tone.js.map +1 -1
  109. package/build/esm/component/analysis/Analyser.js +2 -5
  110. package/build/esm/component/analysis/Analyser.js.map +1 -1
  111. package/build/esm/component/analysis/FFT.js +2 -2
  112. package/build/esm/component/analysis/FFT.js.map +1 -1
  113. package/build/esm/component/analysis/Follower.js +2 -4
  114. package/build/esm/component/analysis/Follower.js.map +1 -1
  115. package/build/esm/component/analysis/Meter.js +2 -2
  116. package/build/esm/component/analysis/Meter.js.map +1 -1
  117. package/build/esm/component/analysis/Waveform.js +2 -2
  118. package/build/esm/component/analysis/Waveform.js.map +1 -1
  119. package/build/esm/component/channel/Channel.js +2 -5
  120. package/build/esm/component/channel/Channel.js.map +1 -1
  121. package/build/esm/component/channel/CrossFade.js +2 -4
  122. package/build/esm/component/channel/CrossFade.js.map +1 -1
  123. package/build/esm/component/channel/Merge.js +2 -2
  124. package/build/esm/component/channel/Merge.js.map +1 -1
  125. package/build/esm/component/channel/MultibandSplit.js +2 -5
  126. package/build/esm/component/channel/MultibandSplit.js.map +1 -1
  127. package/build/esm/component/channel/PanVol.js +2 -5
  128. package/build/esm/component/channel/PanVol.js.map +1 -1
  129. package/build/esm/component/channel/Panner.js +4 -4
  130. package/build/esm/component/channel/Panner.js.map +1 -1
  131. package/build/esm/component/channel/Panner3D.js +2 -6
  132. package/build/esm/component/channel/Panner3D.js.map +1 -1
  133. package/build/esm/component/channel/Recorder.js +2 -2
  134. package/build/esm/component/channel/Recorder.js.map +1 -1
  135. package/build/esm/component/channel/Solo.js +2 -2
  136. package/build/esm/component/channel/Solo.js.map +1 -1
  137. package/build/esm/component/channel/Split.js +2 -2
  138. package/build/esm/component/channel/Split.js.map +1 -1
  139. package/build/esm/component/channel/Volume.js +2 -2
  140. package/build/esm/component/channel/Volume.js.map +1 -1
  141. package/build/esm/component/dynamics/Compressor.js +2 -5
  142. package/build/esm/component/dynamics/Compressor.js.map +1 -1
  143. package/build/esm/component/dynamics/Gate.js +2 -5
  144. package/build/esm/component/dynamics/Gate.js.map +1 -1
  145. package/build/esm/component/dynamics/Limiter.js +2 -4
  146. package/build/esm/component/dynamics/Limiter.js.map +1 -1
  147. package/build/esm/component/dynamics/MidSideCompressor.js +2 -2
  148. package/build/esm/component/dynamics/MidSideCompressor.js.map +1 -1
  149. package/build/esm/component/dynamics/MultibandCompressor.js +2 -2
  150. package/build/esm/component/dynamics/MultibandCompressor.js.map +1 -1
  151. package/build/esm/component/envelope/Envelope.js +2 -7
  152. package/build/esm/component/envelope/Envelope.js.map +1 -1
  153. package/build/esm/component/envelope/FrequencyEnvelope.js +2 -7
  154. package/build/esm/component/envelope/FrequencyEnvelope.js.map +1 -1
  155. package/build/esm/component/filter/BiquadFilter.js +2 -5
  156. package/build/esm/component/filter/BiquadFilter.js.map +1 -1
  157. package/build/esm/component/filter/Convolver.js +2 -5
  158. package/build/esm/component/filter/Convolver.js.map +1 -1
  159. package/build/esm/component/filter/EQ3.js +3 -7
  160. package/build/esm/component/filter/EQ3.js.map +1 -1
  161. package/build/esm/component/filter/FeedbackCombFilter.js +2 -5
  162. package/build/esm/component/filter/FeedbackCombFilter.js.map +1 -1
  163. package/build/esm/component/filter/Filter.js +3 -7
  164. package/build/esm/component/filter/Filter.js.map +1 -1
  165. package/build/esm/component/filter/LowpassCombFilter.js +2 -6
  166. package/build/esm/component/filter/LowpassCombFilter.js.map +1 -1
  167. package/build/esm/component/filter/OnePoleFilter.js +2 -5
  168. package/build/esm/component/filter/OnePoleFilter.js.map +1 -1
  169. package/build/esm/core/clock/Clock.js +3 -6
  170. package/build/esm/core/clock/Clock.js.map +1 -1
  171. package/build/esm/core/clock/TickParam.js +2 -2
  172. package/build/esm/core/clock/TickParam.js.map +1 -1
  173. package/build/esm/core/clock/TickSignal.js +2 -2
  174. package/build/esm/core/clock/TickSignal.js.map +1 -1
  175. package/build/esm/core/clock/TickSource.js +2 -4
  176. package/build/esm/core/clock/TickSource.js.map +1 -1
  177. package/build/esm/core/clock/Transport.js +2 -2
  178. package/build/esm/core/clock/Transport.js.map +1 -1
  179. package/build/esm/core/context/AudioContext.d.ts +2 -0
  180. package/build/esm/core/context/AudioContext.js +4 -3
  181. package/build/esm/core/context/AudioContext.js.map +1 -1
  182. package/build/esm/core/context/Delay.js +2 -5
  183. package/build/esm/core/context/Delay.js.map +1 -1
  184. package/build/esm/core/context/Destination.js +2 -2
  185. package/build/esm/core/context/Destination.js.map +1 -1
  186. package/build/esm/core/context/Gain.js +3 -6
  187. package/build/esm/core/context/Gain.js.map +1 -1
  188. package/build/esm/core/context/Param.js +3 -7
  189. package/build/esm/core/context/Param.js.map +1 -1
  190. package/build/esm/effect/AutoFilter.js +2 -6
  191. package/build/esm/effect/AutoFilter.js.map +1 -1
  192. package/build/esm/effect/AutoPanner.js +2 -4
  193. package/build/esm/effect/AutoPanner.js.map +1 -1
  194. package/build/esm/effect/AutoWah.js +2 -6
  195. package/build/esm/effect/AutoWah.js.map +1 -1
  196. package/build/esm/effect/BitCrusher.js +4 -4
  197. package/build/esm/effect/BitCrusher.js.map +1 -1
  198. package/build/esm/effect/Chebyshev.js +2 -2
  199. package/build/esm/effect/Chebyshev.js.map +1 -1
  200. package/build/esm/effect/Chorus.js +2 -6
  201. package/build/esm/effect/Chorus.js.map +1 -1
  202. package/build/esm/effect/Distortion.js +2 -4
  203. package/build/esm/effect/Distortion.js.map +1 -1
  204. package/build/esm/effect/FeedbackDelay.js +2 -5
  205. package/build/esm/effect/FeedbackDelay.js.map +1 -1
  206. package/build/esm/effect/Freeverb.js +2 -5
  207. package/build/esm/effect/Freeverb.js.map +1 -1
  208. package/build/esm/effect/FrequencyShifter.js +2 -4
  209. package/build/esm/effect/FrequencyShifter.js.map +1 -1
  210. package/build/esm/effect/JCReverb.js +2 -4
  211. package/build/esm/effect/JCReverb.js.map +1 -1
  212. package/build/esm/effect/Phaser.js +2 -6
  213. package/build/esm/effect/Phaser.js.map +1 -1
  214. package/build/esm/effect/PingPongDelay.js +2 -5
  215. package/build/esm/effect/PingPongDelay.js.map +1 -1
  216. package/build/esm/effect/PitchShift.js +2 -2
  217. package/build/esm/effect/PitchShift.js.map +1 -1
  218. package/build/esm/effect/Reverb.js +4 -4
  219. package/build/esm/effect/Reverb.js.map +1 -1
  220. package/build/esm/effect/StereoWidener.js +2 -4
  221. package/build/esm/effect/StereoWidener.js.map +1 -1
  222. package/build/esm/effect/Tremolo.js +2 -5
  223. package/build/esm/effect/Tremolo.js.map +1 -1
  224. package/build/esm/effect/Vibrato.js +2 -5
  225. package/build/esm/effect/Vibrato.js.map +1 -1
  226. package/build/esm/event/Loop.js +2 -5
  227. package/build/esm/event/Loop.js.map +1 -1
  228. package/build/esm/event/Part.js +3 -6
  229. package/build/esm/event/Part.js.map +1 -1
  230. package/build/esm/event/Pattern.js +2 -6
  231. package/build/esm/event/Pattern.js.map +1 -1
  232. package/build/esm/event/Sequence.js +2 -6
  233. package/build/esm/event/Sequence.js.map +1 -1
  234. package/build/esm/event/ToneEvent.js +2 -5
  235. package/build/esm/event/ToneEvent.js.map +1 -1
  236. package/build/esm/instrument/DuoSynth.js +2 -2
  237. package/build/esm/instrument/DuoSynth.js.map +1 -1
  238. package/build/esm/instrument/FMSynth.js +2 -2
  239. package/build/esm/instrument/FMSynth.js.map +1 -1
  240. package/build/esm/instrument/Instrument.js +2 -2
  241. package/build/esm/instrument/Instrument.js.map +1 -1
  242. package/build/esm/instrument/MembraneSynth.js +2 -2
  243. package/build/esm/instrument/MembraneSynth.js.map +1 -1
  244. package/build/esm/instrument/MetalSynth.js +2 -2
  245. package/build/esm/instrument/MetalSynth.js.map +1 -1
  246. package/build/esm/instrument/ModulationSynth.js +2 -2
  247. package/build/esm/instrument/ModulationSynth.js.map +1 -1
  248. package/build/esm/instrument/MonoSynth.js +2 -2
  249. package/build/esm/instrument/MonoSynth.js.map +1 -1
  250. package/build/esm/instrument/Monophonic.js +1 -1
  251. package/build/esm/instrument/Monophonic.js.map +1 -1
  252. package/build/esm/instrument/NoiseSynth.js +2 -2
  253. package/build/esm/instrument/NoiseSynth.js.map +1 -1
  254. package/build/esm/instrument/PluckSynth.js +2 -2
  255. package/build/esm/instrument/PluckSynth.js.map +1 -1
  256. package/build/esm/instrument/PolySynth.js +2 -5
  257. package/build/esm/instrument/PolySynth.js.map +1 -1
  258. package/build/esm/instrument/Sampler.js +2 -2
  259. package/build/esm/instrument/Sampler.js.map +1 -1
  260. package/build/esm/instrument/Synth.js +2 -2
  261. package/build/esm/instrument/Synth.js.map +1 -1
  262. package/build/esm/signal/Add.js +1 -1
  263. package/build/esm/signal/Add.js.map +1 -1
  264. package/build/esm/signal/GreaterThan.js +2 -4
  265. package/build/esm/signal/GreaterThan.js.map +1 -1
  266. package/build/esm/signal/GreaterThanZero.js +1 -1
  267. package/build/esm/signal/GreaterThanZero.js.map +1 -1
  268. package/build/esm/signal/Multiply.js +2 -4
  269. package/build/esm/signal/Multiply.js.map +1 -1
  270. package/build/esm/signal/Pow.js +2 -2
  271. package/build/esm/signal/Pow.js.map +1 -1
  272. package/build/esm/signal/Scale.js +2 -5
  273. package/build/esm/signal/Scale.js.map +1 -1
  274. package/build/esm/signal/ScaleExp.js +2 -6
  275. package/build/esm/signal/ScaleExp.js.map +1 -1
  276. package/build/esm/signal/Signal.js +3 -6
  277. package/build/esm/signal/Signal.js.map +1 -1
  278. package/build/esm/signal/SignalOperator.js +2 -2
  279. package/build/esm/signal/SignalOperator.js.map +1 -1
  280. package/build/esm/signal/Subtract.js +1 -3
  281. package/build/esm/signal/Subtract.js.map +1 -1
  282. package/build/esm/signal/SyncedSignal.js +3 -6
  283. package/build/esm/signal/SyncedSignal.js.map +1 -1
  284. package/build/esm/signal/ToneConstantSource.js +2 -4
  285. package/build/esm/signal/ToneConstantSource.js.map +1 -1
  286. package/build/esm/signal/WaveShaper.js +2 -5
  287. package/build/esm/signal/WaveShaper.js.map +1 -1
  288. package/build/esm/signal/Zero.js +1 -1
  289. package/build/esm/signal/Zero.js.map +1 -1
  290. package/build/esm/source/Noise.js +4 -4
  291. package/build/esm/source/Noise.js.map +1 -1
  292. package/build/esm/source/UserMedia.js +2 -2
  293. package/build/esm/source/UserMedia.js.map +1 -1
  294. package/build/esm/source/buffer/GrainPlayer.js +2 -5
  295. package/build/esm/source/buffer/GrainPlayer.js.map +1 -1
  296. package/build/esm/source/buffer/Player.js +3 -6
  297. package/build/esm/source/buffer/Player.js.map +1 -1
  298. package/build/esm/source/buffer/Players.js +2 -2
  299. package/build/esm/source/buffer/Players.js.map +1 -1
  300. package/build/esm/source/buffer/ToneBufferSource.js +2 -5
  301. package/build/esm/source/buffer/ToneBufferSource.js.map +1 -1
  302. package/build/esm/source/oscillator/AMOscillator.js +2 -6
  303. package/build/esm/source/oscillator/AMOscillator.js.map +1 -1
  304. package/build/esm/source/oscillator/FMOscillator.js +2 -6
  305. package/build/esm/source/oscillator/FMOscillator.js.map +1 -1
  306. package/build/esm/source/oscillator/FatOscillator.js +2 -6
  307. package/build/esm/source/oscillator/FatOscillator.js.map +1 -1
  308. package/build/esm/source/oscillator/LFO.js +3 -7
  309. package/build/esm/source/oscillator/LFO.js.map +1 -1
  310. package/build/esm/source/oscillator/OmniOscillator.js +2 -5
  311. package/build/esm/source/oscillator/OmniOscillator.js.map +1 -1
  312. package/build/esm/source/oscillator/Oscillator.js +2 -5
  313. package/build/esm/source/oscillator/Oscillator.js.map +1 -1
  314. package/build/esm/source/oscillator/PWMOscillator.js +2 -5
  315. package/build/esm/source/oscillator/PWMOscillator.js.map +1 -1
  316. package/build/esm/source/oscillator/PulseOscillator.js +2 -5
  317. package/build/esm/source/oscillator/PulseOscillator.js.map +1 -1
  318. package/build/esm/source/oscillator/ToneOscillatorNode.js +2 -5
  319. package/build/esm/source/oscillator/ToneOscillatorNode.js.map +1 -1
  320. package/build/esm/version.js +1 -1
  321. package/package.json +1 -1
@@ -54,17 +54,11 @@ export class Delay extends ToneAudioNode<DelayOptions> {
54
54
  constructor(delayTime?: Time, maxDelay?: Time);
55
55
  constructor(options?: Partial<DelayOptions>);
56
56
  constructor() {
57
- super(
58
- optionsFromArguments(Delay.getDefaults(), arguments, [
59
- "delayTime",
60
- "maxDelay",
61
- ])
62
- );
63
-
64
57
  const options = optionsFromArguments(Delay.getDefaults(), arguments, [
65
58
  "delayTime",
66
59
  "maxDelay",
67
60
  ]);
61
+ super(options);
68
62
 
69
63
  const maxDelayInSeconds = this.toSeconds(options.maxDelay);
70
64
  this._maxDelay = Math.max(
@@ -48,11 +48,11 @@ export class DestinationClass extends ToneAudioNode<DestinationOptions> {
48
48
 
49
49
  constructor(options: Partial<DestinationOptions>);
50
50
  constructor() {
51
- super(optionsFromArguments(DestinationClass.getDefaults(), arguments));
52
51
  const options = optionsFromArguments(
53
52
  DestinationClass.getDefaults(),
54
53
  arguments
55
54
  );
55
+ super(options);
56
56
 
57
57
  connectSeries(
58
58
  this.input,
@@ -56,16 +56,11 @@ export class Gain<
56
56
  constructor(gain?: UnitMap[TypeName], units?: TypeName);
57
57
  constructor(options?: Partial<GainOptions<TypeName>>);
58
58
  constructor() {
59
- super(
60
- optionsFromArguments(Gain.getDefaults(), arguments, [
61
- "gain",
62
- "units",
63
- ])
64
- );
65
59
  const options = optionsFromArguments(Gain.getDefaults(), arguments, [
66
60
  "gain",
67
61
  "units",
68
62
  ]);
63
+ super(options);
69
64
 
70
65
  this.gain = new Param({
71
66
  context: this.context,
@@ -113,19 +113,12 @@ export class Param<TypeName extends UnitName = "number">
113
113
  constructor(param: AudioParam, units?: TypeName, convert?: boolean);
114
114
  constructor(options: Partial<ParamOptions<TypeName>>);
115
115
  constructor() {
116
- super(
117
- optionsFromArguments(Param.getDefaults(), arguments, [
118
- "param",
119
- "units",
120
- "convert",
121
- ])
122
- );
123
-
124
116
  const options = optionsFromArguments(Param.getDefaults(), arguments, [
125
117
  "param",
126
118
  "units",
127
119
  "convert",
128
120
  ]);
121
+ super(options);
129
122
 
130
123
  assert(
131
124
  isDefined(options.param) &&
@@ -50,18 +50,12 @@ export class AutoFilter extends LFOEffect<AutoFilterOptions> {
50
50
  );
51
51
  constructor(options?: Partial<AutoFilterOptions>);
52
52
  constructor() {
53
- super(
54
- optionsFromArguments(AutoFilter.getDefaults(), arguments, [
55
- "frequency",
56
- "baseFrequency",
57
- "octaves",
58
- ])
59
- );
60
53
  const options = optionsFromArguments(
61
54
  AutoFilter.getDefaults(),
62
55
  arguments,
63
56
  ["frequency", "baseFrequency", "octaves"]
64
57
  );
58
+ super(options);
65
59
 
66
60
  this.filter = new Filter(
67
61
  Object.assign(options.filter, {
@@ -32,16 +32,12 @@ export class AutoPanner extends LFOEffect<AutoPannerOptions> {
32
32
  constructor(frequency?: Frequency);
33
33
  constructor(options?: Partial<AutoPannerOptions>);
34
34
  constructor() {
35
- super(
36
- optionsFromArguments(AutoPanner.getDefaults(), arguments, [
37
- "frequency",
38
- ])
39
- );
40
35
  const options = optionsFromArguments(
41
36
  AutoPanner.getDefaults(),
42
37
  arguments,
43
38
  ["frequency"]
44
39
  );
40
+ super(options);
45
41
 
46
42
  this._panner = new Panner({
47
43
  context: this.context,
@@ -101,18 +101,12 @@ export class AutoWah extends Effect<AutoWahOptions> {
101
101
  );
102
102
  constructor(options?: Partial<AutoWahOptions>);
103
103
  constructor() {
104
- super(
105
- optionsFromArguments(AutoWah.getDefaults(), arguments, [
106
- "baseFrequency",
107
- "octaves",
108
- "sensitivity",
109
- ])
110
- );
111
104
  const options = optionsFromArguments(AutoWah.getDefaults(), arguments, [
112
105
  "baseFrequency",
113
106
  "octaves",
114
107
  "sensitivity",
115
108
  ]);
109
+ super(options);
116
110
 
117
111
  this._follower = new Follower({
118
112
  context: this.context,
@@ -44,14 +44,12 @@ export class BitCrusher extends Effect<BitCrusherOptions> {
44
44
  constructor(bits?: Positive);
45
45
  constructor(options?: Partial<BitCrusherWorkletOptions>);
46
46
  constructor() {
47
- super(
48
- optionsFromArguments(BitCrusher.getDefaults(), arguments, ["bits"])
49
- );
50
47
  const options = optionsFromArguments(
51
48
  BitCrusher.getDefaults(),
52
49
  arguments,
53
50
  ["bits"]
54
51
  );
52
+ super(options);
55
53
 
56
54
  this._bitCrusherWorklet = new BitCrusherWorklet({
57
55
  context: this.context,
@@ -93,11 +91,11 @@ class BitCrusherWorklet extends ToneAudioWorklet<BitCrusherWorkletOptions> {
93
91
 
94
92
  constructor(options?: Partial<BitCrusherWorkletOptions>);
95
93
  constructor() {
96
- super(optionsFromArguments(BitCrusherWorklet.getDefaults(), arguments));
97
94
  const options = optionsFromArguments(
98
95
  BitCrusherWorklet.getDefaults(),
99
96
  arguments
100
97
  );
98
+ super(options);
101
99
 
102
100
  this.input = new Gain({ context: this.context });
103
101
  this.output = new Gain({ context: this.context });
@@ -42,14 +42,12 @@ export class Chebyshev extends Effect<ChebyshevOptions> {
42
42
  constructor(order?: Positive);
43
43
  constructor(options?: Partial<ChebyshevOptions>);
44
44
  constructor() {
45
- super(
46
- optionsFromArguments(Chebyshev.getDefaults(), arguments, ["order"])
47
- );
48
45
  const options = optionsFromArguments(
49
46
  Chebyshev.getDefaults(),
50
47
  arguments,
51
48
  ["order"]
52
49
  );
50
+ super(options);
53
51
 
54
52
  this._shaper = new WaveShaper({
55
53
  context: this.context,
@@ -88,18 +88,12 @@ export class Chorus extends StereoFeedbackEffect<ChorusOptions> {
88
88
  );
89
89
  constructor(options?: Partial<ChorusOptions>);
90
90
  constructor() {
91
- super(
92
- optionsFromArguments(Chorus.getDefaults(), arguments, [
93
- "frequency",
94
- "delayTime",
95
- "depth",
96
- ])
97
- );
98
91
  const options = optionsFromArguments(Chorus.getDefaults(), arguments, [
99
92
  "frequency",
100
93
  "delayTime",
101
94
  "depth",
102
95
  ]);
96
+ super(options);
103
97
 
104
98
  this._depth = options.depth;
105
99
  this._delayTime = options.delayTime / 1000;
@@ -36,16 +36,12 @@ export class Distortion extends Effect<DistortionOptions> {
36
36
  constructor(distortion?: number);
37
37
  constructor(options?: Partial<DistortionOptions>);
38
38
  constructor() {
39
- super(
40
- optionsFromArguments(Distortion.getDefaults(), arguments, [
41
- "distortion",
42
- ])
43
- );
44
39
  const options = optionsFromArguments(
45
40
  Distortion.getDefaults(),
46
41
  arguments,
47
42
  ["distortion"]
48
43
  );
44
+ super(options);
49
45
 
50
46
  this._shaper = new WaveShaper({
51
47
  context: this.context,
@@ -40,17 +40,12 @@ export class FeedbackDelay extends FeedbackEffect<FeedbackDelayOptions> {
40
40
  constructor(delayTime?: Time, feedback?: NormalRange);
41
41
  constructor(options?: Partial<FeedbackDelayOptions>);
42
42
  constructor() {
43
- super(
44
- optionsFromArguments(FeedbackDelay.getDefaults(), arguments, [
45
- "delayTime",
46
- "feedback",
47
- ])
48
- );
49
43
  const options = optionsFromArguments(
50
44
  FeedbackDelay.getDefaults(),
51
45
  arguments,
52
46
  ["delayTime", "feedback"]
53
47
  );
48
+ super(options);
54
49
 
55
50
  this._delayNode = new Delay({
56
51
  context: this.context,
@@ -71,17 +71,12 @@ export class Freeverb extends StereoEffect<FreeverbOptions> {
71
71
  constructor(roomSize?: NormalRange, dampening?: Frequency);
72
72
  constructor(options?: Partial<FreeverbOptions>);
73
73
  constructor() {
74
- super(
75
- optionsFromArguments(Freeverb.getDefaults(), arguments, [
76
- "roomSize",
77
- "dampening",
78
- ])
79
- );
80
74
  const options = optionsFromArguments(
81
75
  Freeverb.getDefaults(),
82
76
  arguments,
83
77
  ["roomSize", "dampening"]
84
78
  );
79
+ super(options);
85
80
 
86
81
  this.roomSize = new Signal({
87
82
  context: this.context,
@@ -81,16 +81,12 @@ export class FrequencyShifter extends Effect<FrequencyShifterOptions> {
81
81
  constructor(frequency?: Frequency);
82
82
  constructor(options?: Partial<FrequencyShifterOptions>);
83
83
  constructor() {
84
- super(
85
- optionsFromArguments(FrequencyShifter.getDefaults(), arguments, [
86
- "frequency",
87
- ])
88
- );
89
84
  const options = optionsFromArguments(
90
85
  FrequencyShifter.getDefaults(),
91
86
  arguments,
92
87
  ["frequency"]
93
88
  );
89
+ super(options);
94
90
 
95
91
  this.frequency = new Signal({
96
92
  context: this.context,
@@ -73,16 +73,12 @@ export class JCReverb extends StereoEffect<JCReverbOptions> {
73
73
  constructor(roomSize?: NormalRange);
74
74
  constructor(options?: Partial<JCReverbOptions>);
75
75
  constructor() {
76
- super(
77
- optionsFromArguments(JCReverb.getDefaults(), arguments, [
78
- "roomSize",
79
- ])
80
- );
81
76
  const options = optionsFromArguments(
82
77
  JCReverb.getDefaults(),
83
78
  arguments,
84
79
  ["roomSize"]
85
80
  );
81
+ super(options);
86
82
 
87
83
  this.roomSize = new Signal({
88
84
  context: this.context,
@@ -83,18 +83,12 @@ export class Phaser extends StereoEffect<PhaserOptions> {
83
83
  );
84
84
  constructor(options?: Partial<PhaserOptions>);
85
85
  constructor() {
86
- super(
87
- optionsFromArguments(Phaser.getDefaults(), arguments, [
88
- "frequency",
89
- "octaves",
90
- "baseFrequency",
91
- ])
92
- );
93
86
  const options = optionsFromArguments(Phaser.getDefaults(), arguments, [
94
87
  "frequency",
95
88
  "octaves",
96
89
  "baseFrequency",
97
90
  ]);
91
+ super(options);
98
92
 
99
93
  this._lfoL = new LFO({
100
94
  context: this.context,
@@ -57,17 +57,12 @@ export class PingPongDelay extends StereoXFeedbackEffect<PingPongDelayOptions> {
57
57
  constructor(delayTime?: Time, feedback?: NormalRange);
58
58
  constructor(options?: Partial<PingPongDelayOptions>);
59
59
  constructor() {
60
- super(
61
- optionsFromArguments(PingPongDelay.getDefaults(), arguments, [
62
- "delayTime",
63
- "feedback",
64
- ])
65
- );
66
60
  const options = optionsFromArguments(
67
61
  PingPongDelay.getDefaults(),
68
62
  arguments,
69
63
  ["delayTime", "feedback"]
70
64
  );
65
+ super(options);
71
66
 
72
67
  this._leftDelay = new Delay({
73
68
  context: this.context,
@@ -88,14 +88,12 @@ export class PitchShift extends FeedbackEffect<PitchShiftOptions> {
88
88
  constructor(pitch?: Interval);
89
89
  constructor(options?: Partial<PitchShiftOptions>);
90
90
  constructor() {
91
- super(
92
- optionsFromArguments(PitchShift.getDefaults(), arguments, ["pitch"])
93
- );
94
91
  const options = optionsFromArguments(
95
92
  PitchShift.getDefaults(),
96
93
  arguments,
97
94
  ["pitch"]
98
95
  );
96
+ super(options);
99
97
 
100
98
  this._frequency = new Signal({ context: this.context });
101
99
  this._delayA = new Delay({
@@ -56,10 +56,10 @@ export class Reverb extends Effect<ReverbOptions> {
56
56
  constructor(decay?: Seconds);
57
57
  constructor(options?: Partial<ReverbOptions>);
58
58
  constructor() {
59
- super(optionsFromArguments(Reverb.getDefaults(), arguments, ["decay"]));
60
59
  const options = optionsFromArguments(Reverb.getDefaults(), arguments, [
61
60
  "decay",
62
61
  ]);
62
+ super(options);
63
63
 
64
64
  this._decay = options.decay;
65
65
  this._preDelay = options.preDelay;
@@ -63,16 +63,13 @@ export class StereoWidener extends MidSideEffect<StereoWidenerOptions> {
63
63
  constructor(width?: NormalRange);
64
64
  constructor(options?: Partial<StereoWidenerOptions>);
65
65
  constructor() {
66
- super(
67
- optionsFromArguments(StereoWidener.getDefaults(), arguments, [
68
- "width",
69
- ])
70
- );
71
66
  const options = optionsFromArguments(
72
67
  StereoWidener.getDefaults(),
73
68
  arguments,
74
69
  ["width"]
75
70
  );
71
+ super(options);
72
+
76
73
  this.width = new Signal({
77
74
  context: this.context,
78
75
  value: options.width,
@@ -68,16 +68,11 @@ export class Tremolo extends StereoEffect<TremoloOptions> {
68
68
  constructor(frequency?: Frequency, depth?: NormalRange);
69
69
  constructor(options?: Partial<TremoloOptions>);
70
70
  constructor() {
71
- super(
72
- optionsFromArguments(Tremolo.getDefaults(), arguments, [
73
- "frequency",
74
- "depth",
75
- ])
76
- );
77
71
  const options = optionsFromArguments(Tremolo.getDefaults(), arguments, [
78
72
  "frequency",
79
73
  "depth",
80
74
  ]);
75
+ super(options);
81
76
 
82
77
  this._lfoL = new LFO({
83
78
  context: this.context,
@@ -48,16 +48,11 @@ export class Vibrato extends Effect<VibratoOptions> {
48
48
  constructor(frequency?: Frequency, depth?: NormalRange);
49
49
  constructor(options?: Partial<VibratoOptions>);
50
50
  constructor() {
51
- super(
52
- optionsFromArguments(Vibrato.getDefaults(), arguments, [
53
- "frequency",
54
- "depth",
55
- ])
56
- );
57
51
  const options = optionsFromArguments(Vibrato.getDefaults(), arguments, [
58
52
  "frequency",
59
53
  "depth",
60
54
  ]);
55
+ super(options);
61
56
 
62
57
  this._delayNode = new Delay({
63
58
  context: this.context,
@@ -59,16 +59,11 @@ export class Loop<
59
59
  constructor(callback?: (time: Seconds) => void, interval?: Time);
60
60
  constructor(options?: Partial<LoopOptions>);
61
61
  constructor() {
62
- super(
63
- optionsFromArguments(Loop.getDefaults(), arguments, [
64
- "callback",
65
- "interval",
66
- ])
67
- );
68
62
  const options = optionsFromArguments(Loop.getDefaults(), arguments, [
69
63
  "callback",
70
64
  "interval",
71
65
  ]);
66
+ super(options);
72
67
 
73
68
  this._event = new ToneEvent({
74
69
  context: this.context,
@@ -83,16 +83,11 @@ export class Part<ValueType = any> extends ToneEvent<ValueType> {
83
83
  );
84
84
  constructor(options?: Partial<PartOptions<ValueType>>);
85
85
  constructor() {
86
- super(
87
- optionsFromArguments(Part.getDefaults(), arguments, [
88
- "callback",
89
- "events",
90
- ])
91
- );
92
86
  const options = optionsFromArguments(Part.getDefaults(), arguments, [
93
87
  "callback",
94
88
  "events",
95
89
  ]);
90
+ super(options);
96
91
 
97
92
  // make sure things are assigned in the right order
98
93
  this._state.increasing = true;
@@ -65,18 +65,12 @@ export class Pattern<ValueType> extends Loop<PatternOptions<ValueType>> {
65
65
  );
66
66
  constructor(options?: Partial<PatternOptions<ValueType>>);
67
67
  constructor() {
68
- super(
69
- optionsFromArguments(Pattern.getDefaults(), arguments, [
70
- "callback",
71
- "values",
72
- "pattern",
73
- ])
74
- );
75
68
  const options = optionsFromArguments(Pattern.getDefaults(), arguments, [
76
69
  "callback",
77
70
  "values",
78
71
  "pattern",
79
72
  ]);
73
+ super(options);
80
74
 
81
75
  this.callback = options.callback;
82
76
  this._values = options.values;
@@ -75,18 +75,12 @@ export class Sequence<ValueType = any> extends ToneEvent<ValueType> {
75
75
  );
76
76
  constructor(options?: Partial<SequenceOptions<ValueType>>);
77
77
  constructor() {
78
- super(
79
- optionsFromArguments(Sequence.getDefaults(), arguments, [
80
- "callback",
81
- "events",
82
- "subdivision",
83
- ])
84
- );
85
78
  const options = optionsFromArguments(
86
79
  Sequence.getDefaults(),
87
80
  arguments,
88
81
  ["callback", "events", "subdivision"]
89
82
  );
83
+ super(options);
90
84
 
91
85
  this._subdivision = this.toTicks(options.subdivision);
92
86
 
@@ -124,17 +124,12 @@ export class ToneEvent<ValueType = any> extends ToneWithContext<
124
124
  constructor(callback?: ToneEventCallback<ValueType>, value?: ValueType);
125
125
  constructor(options?: Partial<ToneEventOptions<ValueType>>);
126
126
  constructor() {
127
- super(
128
- optionsFromArguments(ToneEvent.getDefaults(), arguments, [
129
- "callback",
130
- "value",
131
- ])
132
- );
133
127
  const options = optionsFromArguments(
134
128
  ToneEvent.getDefaults(),
135
129
  arguments,
136
130
  ["callback", "value"]
137
131
  );
132
+ super(options);
138
133
 
139
134
  this._loop = options.loop;
140
135
  this.callback = options.callback;
@@ -84,8 +84,8 @@ export class DuoSynth extends Monophonic<DuoSynthOptions> {
84
84
 
85
85
  constructor(options?: RecursivePartial<DuoSynthOptions>);
86
86
  constructor() {
87
- super(optionsFromArguments(DuoSynth.getDefaults(), arguments));
88
87
  const options = optionsFromArguments(DuoSynth.getDefaults(), arguments);
88
+ super(options);
89
89
 
90
90
  this.voice0 = new MonoSynth(
91
91
  Object.assign(options.voice0, {
@@ -33,8 +33,8 @@ export class FMSynth extends ModulationSynth<FMSynthOptions> {
33
33
 
34
34
  constructor(options?: RecursivePartial<FMSynthOptions>);
35
35
  constructor() {
36
- super(optionsFromArguments(FMSynth.getDefaults(), arguments));
37
36
  const options = optionsFromArguments(FMSynth.getDefaults(), arguments);
37
+ super(options);
38
38
 
39
39
  this.modulationIndex = new Multiply({
40
40
  context: this.context,
@@ -52,11 +52,11 @@ export abstract class Instrument<
52
52
 
53
53
  constructor(options?: Partial<InstrumentOptions>);
54
54
  constructor() {
55
- super(optionsFromArguments(Instrument.getDefaults(), arguments));
56
55
  const options = optionsFromArguments(
57
56
  Instrument.getDefaults(),
58
57
  arguments
59
58
  );
59
+ super(options);
60
60
 
61
61
  this._volume = this.output = new Volume({
62
62
  context: this.context,
@@ -53,11 +53,11 @@ export class MembraneSynth extends Synth<MembraneSynthOptions> {
53
53
  */
54
54
  constructor(options?: RecursivePartial<MembraneSynthOptions>);
55
55
  constructor() {
56
- super(optionsFromArguments(MembraneSynth.getDefaults(), arguments));
57
56
  const options = optionsFromArguments(
58
57
  MembraneSynth.getDefaults(),
59
58
  arguments
60
59
  );
60
+ super(options);
61
61
 
62
62
  this.pitchDecay = options.pitchDecay;
63
63
  this.octaves = options.octaves;
@@ -97,11 +97,11 @@ export class MetalSynth extends Monophonic<MetalSynthOptions> {
97
97
 
98
98
  constructor(options?: RecursivePartial<MetalSynthOptions>);
99
99
  constructor() {
100
- super(optionsFromArguments(MetalSynth.getDefaults(), arguments));
101
100
  const options = optionsFromArguments(
102
101
  MetalSynth.getDefaults(),
103
102
  arguments
104
103
  );
104
+ super(options);
105
105
 
106
106
  this.detune = new Signal({
107
107
  context: this.context,
@@ -88,11 +88,11 @@ export abstract class ModulationSynth<
88
88
 
89
89
  constructor(options?: RecursivePartial<ModulationSynthOptions>);
90
90
  constructor() {
91
- super(optionsFromArguments(ModulationSynth.getDefaults(), arguments));
92
91
  const options = optionsFromArguments(
93
92
  ModulationSynth.getDefaults(),
94
93
  arguments
95
94
  );
95
+ super(options);
96
96
 
97
97
  this._carrier = new Synth({
98
98
  context: this.context,
@@ -77,11 +77,11 @@ export class MonoSynth extends Monophonic<MonoSynthOptions> {
77
77
 
78
78
  constructor(options?: RecursivePartial<MonoSynthOptions>);
79
79
  constructor() {
80
- super(optionsFromArguments(MonoSynth.getDefaults(), arguments));
81
80
  const options = optionsFromArguments(
82
81
  MonoSynth.getDefaults(),
83
82
  arguments
84
83
  );
84
+ super(options);
85
85
 
86
86
  this.oscillator = new OmniOscillator(
87
87
  Object.assign(options.oscillator, {
@@ -49,11 +49,11 @@ export abstract class Monophonic<
49
49
 
50
50
  constructor(options?: Partial<MonophonicOptions>);
51
51
  constructor() {
52
- super(optionsFromArguments(Monophonic.getDefaults(), arguments));
53
52
  const options = optionsFromArguments(
54
53
  Monophonic.getDefaults(),
55
54
  arguments
56
55
  );
56
+ super(options);
57
57
 
58
58
  this.portamento = options.portamento;
59
59
  this.onsilence = options.onsilence;
@@ -43,11 +43,12 @@ export class NoiseSynth extends Instrument<NoiseSynthOptions> {
43
43
 
44
44
  constructor(options?: RecursivePartial<NoiseSynthOptions>);
45
45
  constructor() {
46
- super(optionsFromArguments(NoiseSynth.getDefaults(), arguments));
47
46
  const options = optionsFromArguments(
48
47
  NoiseSynth.getDefaults(),
49
48
  arguments
50
49
  );
50
+ super(options);
51
+
51
52
  this.noise = new Noise(
52
53
  Object.assign(
53
54
  {
@@ -52,11 +52,11 @@ export class PluckSynth extends Instrument<PluckSynthOptions> {
52
52
 
53
53
  constructor(options?: RecursivePartial<PluckSynthOptions>);
54
54
  constructor() {
55
- super(optionsFromArguments(PluckSynth.getDefaults(), arguments));
56
55
  const options = optionsFromArguments(
57
56
  PluckSynth.getDefaults(),
58
57
  arguments
59
58
  );
59
+ super(options);
60
60
 
61
61
  this._noise = new Noise({
62
62
  context: this.context,