tone 14.8.27

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 (887) hide show
  1. package/CHANGELOG.md +313 -0
  2. package/LICENSE.md +21 -0
  3. package/README.md +255 -0
  4. package/Tone/classes.ts +7 -0
  5. package/Tone/component/analysis/Analyser.test.ts +78 -0
  6. package/Tone/component/analysis/Analyser.ts +168 -0
  7. package/Tone/component/analysis/DCMeter.test.ts +34 -0
  8. package/Tone/component/analysis/DCMeter.ts +38 -0
  9. package/Tone/component/analysis/FFT.test.ts +83 -0
  10. package/Tone/component/analysis/FFT.ts +92 -0
  11. package/Tone/component/analysis/Follower.test.ts +111 -0
  12. package/Tone/component/analysis/Follower.ts +85 -0
  13. package/Tone/component/analysis/Meter.test.ts +91 -0
  14. package/Tone/component/analysis/Meter.ts +123 -0
  15. package/Tone/component/analysis/MeterBase.ts +45 -0
  16. package/Tone/component/analysis/Waveform.test.ts +49 -0
  17. package/Tone/component/analysis/Waveform.ts +57 -0
  18. package/Tone/component/channel/Channel.test.ts +77 -0
  19. package/Tone/component/channel/Channel.ts +178 -0
  20. package/Tone/component/channel/CrossFade.test.ts +57 -0
  21. package/Tone/component/channel/CrossFade.ts +143 -0
  22. package/Tone/component/channel/Merge.test.ts +59 -0
  23. package/Tone/component/channel/Merge.ts +62 -0
  24. package/Tone/component/channel/MidSideMerge.test.ts +28 -0
  25. package/Tone/component/channel/MidSideMerge.ts +105 -0
  26. package/Tone/component/channel/MidSideSplit.test.ts +79 -0
  27. package/Tone/component/channel/MidSideSplit.ts +90 -0
  28. package/Tone/component/channel/Mono.test.ts +43 -0
  29. package/Tone/component/channel/Mono.ts +55 -0
  30. package/Tone/component/channel/MultibandSplit.test.ts +66 -0
  31. package/Tone/component/channel/MultibandSplit.ts +166 -0
  32. package/Tone/component/channel/PanVol.test.ts +58 -0
  33. package/Tone/component/channel/PanVol.ts +110 -0
  34. package/Tone/component/channel/Panner.test.ts +86 -0
  35. package/Tone/component/channel/Panner.ts +89 -0
  36. package/Tone/component/channel/Panner3D.test.ts +77 -0
  37. package/Tone/component/channel/Panner3D.ts +234 -0
  38. package/Tone/component/channel/Recorder.test.ts +119 -0
  39. package/Tone/component/channel/Recorder.ts +162 -0
  40. package/Tone/component/channel/Solo.test.ts +138 -0
  41. package/Tone/component/channel/Solo.ts +148 -0
  42. package/Tone/component/channel/Split.test.ts +62 -0
  43. package/Tone/component/channel/Split.ts +51 -0
  44. package/Tone/component/channel/Volume.test.ts +129 -0
  45. package/Tone/component/channel/Volume.ts +109 -0
  46. package/Tone/component/dynamics/Compressor.test.ts +85 -0
  47. package/Tone/component/dynamics/Compressor.ts +163 -0
  48. package/Tone/component/dynamics/Gate.test.ts +72 -0
  49. package/Tone/component/dynamics/Gate.ts +110 -0
  50. package/Tone/component/dynamics/Limiter.test.ts +43 -0
  51. package/Tone/component/dynamics/Limiter.ts +78 -0
  52. package/Tone/component/dynamics/MidSideCompressor.test.ts +59 -0
  53. package/Tone/component/dynamics/MidSideCompressor.ts +87 -0
  54. package/Tone/component/dynamics/MultibandCompressor.test.ts +54 -0
  55. package/Tone/component/dynamics/MultibandCompressor.ts +130 -0
  56. package/Tone/component/envelope/AmplitudeEnvelope.test.ts +92 -0
  57. package/Tone/component/envelope/AmplitudeEnvelope.ts +65 -0
  58. package/Tone/component/envelope/Envelope.test.ts +834 -0
  59. package/Tone/component/envelope/Envelope.ts +623 -0
  60. package/Tone/component/envelope/FrequencyEnvelope.test.ts +92 -0
  61. package/Tone/component/envelope/FrequencyEnvelope.ts +134 -0
  62. package/Tone/component/filter/BiquadFilter.test.ts +94 -0
  63. package/Tone/component/filter/BiquadFilter.ts +158 -0
  64. package/Tone/component/filter/Convolver.test.ts +106 -0
  65. package/Tone/component/filter/Convolver.ts +134 -0
  66. package/Tone/component/filter/EQ3.test.ts +60 -0
  67. package/Tone/component/filter/EQ3.ts +163 -0
  68. package/Tone/component/filter/FeedbackCombFilter.test.ts +80 -0
  69. package/Tone/component/filter/FeedbackCombFilter.ts +105 -0
  70. package/Tone/component/filter/FeedbackCombFilter.worklet.ts +39 -0
  71. package/Tone/component/filter/Filter.test.ts +114 -0
  72. package/Tone/component/filter/Filter.ts +202 -0
  73. package/Tone/component/filter/LowpassCombFilter.test.ts +75 -0
  74. package/Tone/component/filter/LowpassCombFilter.ts +100 -0
  75. package/Tone/component/filter/OnePoleFilter.test.ts +90 -0
  76. package/Tone/component/filter/OnePoleFilter.ts +146 -0
  77. package/Tone/component/filter/PhaseShiftAllpass.test.ts +71 -0
  78. package/Tone/component/filter/PhaseShiftAllpass.ts +81 -0
  79. package/Tone/component/index.ts +39 -0
  80. package/Tone/core/Global.ts +73 -0
  81. package/Tone/core/Tone.ts +107 -0
  82. package/Tone/core/clock/Clock.test.ts +663 -0
  83. package/Tone/core/clock/Clock.ts +317 -0
  84. package/Tone/core/clock/TickParam.test.ts +15 -0
  85. package/Tone/core/clock/TickParam.ts +271 -0
  86. package/Tone/core/clock/TickSignal.test.ts +455 -0
  87. package/Tone/core/clock/TickSignal.ts +94 -0
  88. package/Tone/core/clock/TickSource.test.ts +655 -0
  89. package/Tone/core/clock/TickSource.ts +338 -0
  90. package/Tone/core/clock/Ticker.test.ts +86 -0
  91. package/Tone/core/clock/Ticker.ts +149 -0
  92. package/Tone/core/clock/Transport.test.ts +972 -0
  93. package/Tone/core/clock/Transport.ts +731 -0
  94. package/Tone/core/clock/TransportEvent.test.ts +45 -0
  95. package/Tone/core/clock/TransportEvent.ts +105 -0
  96. package/Tone/core/clock/TransportRepeatEvent.test.ts +43 -0
  97. package/Tone/core/clock/TransportRepeatEvent.ts +150 -0
  98. package/Tone/core/context/AbstractParam.ts +260 -0
  99. package/Tone/core/context/AudioContext.ts +60 -0
  100. package/Tone/core/context/BaseContext.ts +162 -0
  101. package/Tone/core/context/Context.test.ts +358 -0
  102. package/Tone/core/context/Context.ts +628 -0
  103. package/Tone/core/context/ContextInitialization.ts +42 -0
  104. package/Tone/core/context/Delay.test.ts +105 -0
  105. package/Tone/core/context/Delay.ts +103 -0
  106. package/Tone/core/context/Destination.test.ts +76 -0
  107. package/Tone/core/context/Destination.ts +128 -0
  108. package/Tone/core/context/DummyContext.test.ts +47 -0
  109. package/Tone/core/context/DummyContext.ts +201 -0
  110. package/Tone/core/context/Gain.test.ts +75 -0
  111. package/Tone/core/context/Gain.ts +90 -0
  112. package/Tone/core/context/Listener.test.ts +22 -0
  113. package/Tone/core/context/Listener.ts +117 -0
  114. package/Tone/core/context/Offline.test.ts +79 -0
  115. package/Tone/core/context/Offline.ts +65 -0
  116. package/Tone/core/context/OfflineContext.test.ts +64 -0
  117. package/Tone/core/context/OfflineContext.ts +118 -0
  118. package/Tone/core/context/Param.test.ts +607 -0
  119. package/Tone/core/context/Param.ts +541 -0
  120. package/Tone/core/context/ToneAudioBuffer.test.ts +360 -0
  121. package/Tone/core/context/ToneAudioBuffer.ts +412 -0
  122. package/Tone/core/context/ToneAudioBuffers.test.ts +159 -0
  123. package/Tone/core/context/ToneAudioBuffers.ts +167 -0
  124. package/Tone/core/context/ToneAudioNode.test.ts +345 -0
  125. package/Tone/core/context/ToneAudioNode.ts +396 -0
  126. package/Tone/core/context/ToneWithContext.ts +205 -0
  127. package/Tone/core/index.ts +38 -0
  128. package/Tone/core/type/Conversions.test.ts +34 -0
  129. package/Tone/core/type/Conversions.ts +78 -0
  130. package/Tone/core/type/Frequency.test.ts +220 -0
  131. package/Tone/core/type/Frequency.ts +249 -0
  132. package/Tone/core/type/Midi.test.ts +137 -0
  133. package/Tone/core/type/Midi.ts +82 -0
  134. package/Tone/core/type/NoteUnits.ts +36 -0
  135. package/Tone/core/type/Ticks.test.ts +190 -0
  136. package/Tone/core/type/Ticks.ts +69 -0
  137. package/Tone/core/type/Time.test.ts +181 -0
  138. package/Tone/core/type/Time.ts +156 -0
  139. package/Tone/core/type/TimeBase.ts +324 -0
  140. package/Tone/core/type/TransportTime.test.ts +184 -0
  141. package/Tone/core/type/TransportTime.ts +34 -0
  142. package/Tone/core/type/Units.ts +204 -0
  143. package/Tone/core/util/AdvancedTypeCheck.ts +40 -0
  144. package/Tone/core/util/Debug.test.ts +74 -0
  145. package/Tone/core/util/Debug.ts +63 -0
  146. package/Tone/core/util/Decorator.ts +51 -0
  147. package/Tone/core/util/Defaults.ts +123 -0
  148. package/Tone/core/util/Draw.test.ts +72 -0
  149. package/Tone/core/util/Draw.ts +125 -0
  150. package/Tone/core/util/Emitter.test.ts +109 -0
  151. package/Tone/core/util/Emitter.ts +125 -0
  152. package/Tone/core/util/Interface.ts +45 -0
  153. package/Tone/core/util/IntervalTimeline.test.ts +465 -0
  154. package/Tone/core/util/IntervalTimeline.ts +569 -0
  155. package/Tone/core/util/Math.ts +40 -0
  156. package/Tone/core/util/StateTimeline.test.ts +103 -0
  157. package/Tone/core/util/StateTimeline.ts +96 -0
  158. package/Tone/core/util/Timeline.test.ts +606 -0
  159. package/Tone/core/util/Timeline.ts +399 -0
  160. package/Tone/core/util/TimelineValue.test.ts +29 -0
  161. package/Tone/core/util/TimelineValue.ts +56 -0
  162. package/Tone/core/util/TypeCheck.ts +65 -0
  163. package/Tone/core/util/global.d.ts +7 -0
  164. package/Tone/core/worklet/DelayLine.worklet.ts +49 -0
  165. package/Tone/core/worklet/SingleIOProcessor.worklet.ts +73 -0
  166. package/Tone/core/worklet/ToneAudioWorklet.ts +76 -0
  167. package/Tone/core/worklet/ToneAudioWorkletProcessor.worklet.ts +35 -0
  168. package/Tone/core/worklet/WorkletGlobalScope.ts +26 -0
  169. package/Tone/effect/AutoFilter.test.ts +113 -0
  170. package/Tone/effect/AutoFilter.ts +102 -0
  171. package/Tone/effect/AutoPanner.test.ts +90 -0
  172. package/Tone/effect/AutoPanner.ts +63 -0
  173. package/Tone/effect/AutoWah.test.ts +61 -0
  174. package/Tone/effect/AutoWah.ts +208 -0
  175. package/Tone/effect/BitCrusher.test.ts +42 -0
  176. package/Tone/effect/BitCrusher.ts +129 -0
  177. package/Tone/effect/BitCrusher.worklet.ts +27 -0
  178. package/Tone/effect/Chebyshev.test.ts +49 -0
  179. package/Tone/effect/Chebyshev.ts +123 -0
  180. package/Tone/effect/Chorus.test.ts +87 -0
  181. package/Tone/effect/Chorus.ts +225 -0
  182. package/Tone/effect/Distortion.test.ts +41 -0
  183. package/Tone/effect/Distortion.ts +98 -0
  184. package/Tone/effect/Effect.ts +88 -0
  185. package/Tone/effect/FeedbackDelay.test.ts +75 -0
  186. package/Tone/effect/FeedbackDelay.ts +73 -0
  187. package/Tone/effect/FeedbackEffect.ts +68 -0
  188. package/Tone/effect/Freeverb.test.ts +45 -0
  189. package/Tone/effect/Freeverb.ts +137 -0
  190. package/Tone/effect/FrequencyShifter.test.ts +55 -0
  191. package/Tone/effect/FrequencyShifter.ts +155 -0
  192. package/Tone/effect/JCReverb.test.ts +41 -0
  193. package/Tone/effect/JCReverb.ts +130 -0
  194. package/Tone/effect/LFOEffect.ts +115 -0
  195. package/Tone/effect/MidSideEffect.ts +93 -0
  196. package/Tone/effect/Phaser.test.ts +44 -0
  197. package/Tone/effect/Phaser.ts +187 -0
  198. package/Tone/effect/PingPongDelay.test.ts +41 -0
  199. package/Tone/effect/PingPongDelay.ts +105 -0
  200. package/Tone/effect/PitchShift.test.ts +66 -0
  201. package/Tone/effect/PitchShift.ts +218 -0
  202. package/Tone/effect/Reverb.test.ts +75 -0
  203. package/Tone/effect/Reverb.ts +145 -0
  204. package/Tone/effect/StereoEffect.ts +99 -0
  205. package/Tone/effect/StereoFeedbackEffect.ts +91 -0
  206. package/Tone/effect/StereoWidener.test.ts +41 -0
  207. package/Tone/effect/StereoWidener.ts +112 -0
  208. package/Tone/effect/StereoXFeedbackEffect.ts +37 -0
  209. package/Tone/effect/Tremolo.test.ts +88 -0
  210. package/Tone/effect/Tremolo.ts +191 -0
  211. package/Tone/effect/Vibrato.test.ts +52 -0
  212. package/Tone/effect/Vibrato.ts +104 -0
  213. package/Tone/effect/index.ts +18 -0
  214. package/Tone/event/Loop.test.ts +334 -0
  215. package/Tone/event/Loop.ts +210 -0
  216. package/Tone/event/Part.test.ts +848 -0
  217. package/Tone/event/Part.ts +473 -0
  218. package/Tone/event/Pattern.test.ts +137 -0
  219. package/Tone/event/Pattern.ts +121 -0
  220. package/Tone/event/PatternGenerator.test.ts +95 -0
  221. package/Tone/event/PatternGenerator.ts +176 -0
  222. package/Tone/event/Sequence.test.ts +453 -0
  223. package/Tone/event/Sequence.ts +300 -0
  224. package/Tone/event/ToneEvent.test.ts +485 -0
  225. package/Tone/event/ToneEvent.ts +392 -0
  226. package/Tone/event/index.ts +5 -0
  227. package/Tone/fromContext.test.ts +29 -0
  228. package/Tone/fromContext.ts +77 -0
  229. package/Tone/index.test.ts +54 -0
  230. package/Tone/index.ts +116 -0
  231. package/Tone/instrument/AMSynth.test.ts +79 -0
  232. package/Tone/instrument/AMSynth.ts +51 -0
  233. package/Tone/instrument/DuoSynth.test.ts +95 -0
  234. package/Tone/instrument/DuoSynth.ts +216 -0
  235. package/Tone/instrument/FMSynth.test.ts +72 -0
  236. package/Tone/instrument/FMSynth.ts +65 -0
  237. package/Tone/instrument/Instrument.ts +180 -0
  238. package/Tone/instrument/MembraneSynth.test.ts +74 -0
  239. package/Tone/instrument/MembraneSynth.ts +96 -0
  240. package/Tone/instrument/MetalSynth.test.ts +66 -0
  241. package/Tone/instrument/MetalSynth.ts +272 -0
  242. package/Tone/instrument/ModulationSynth.ts +217 -0
  243. package/Tone/instrument/MonoSynth.test.ts +88 -0
  244. package/Tone/instrument/MonoSynth.ts +177 -0
  245. package/Tone/instrument/Monophonic.ts +135 -0
  246. package/Tone/instrument/NoiseSynth.test.ts +82 -0
  247. package/Tone/instrument/NoiseSynth.ts +127 -0
  248. package/Tone/instrument/PluckSynth.test.ts +62 -0
  249. package/Tone/instrument/PluckSynth.ts +127 -0
  250. package/Tone/instrument/PolySynth.test.ts +298 -0
  251. package/Tone/instrument/PolySynth.ts +393 -0
  252. package/Tone/instrument/Sampler.test.ts +275 -0
  253. package/Tone/instrument/Sampler.ts +329 -0
  254. package/Tone/instrument/Synth.test.ts +132 -0
  255. package/Tone/instrument/Synth.ts +141 -0
  256. package/Tone/instrument/index.ts +11 -0
  257. package/Tone/signal/Abs.test.ts +42 -0
  258. package/Tone/signal/Abs.ts +53 -0
  259. package/Tone/signal/Add.test.ts +60 -0
  260. package/Tone/signal/Add.ts +63 -0
  261. package/Tone/signal/AudioToGain.test.ts +53 -0
  262. package/Tone/signal/AudioToGain.ts +40 -0
  263. package/Tone/signal/GainToAudio.test.ts +41 -0
  264. package/Tone/signal/GainToAudio.ts +40 -0
  265. package/Tone/signal/GreaterThan.test.ts +81 -0
  266. package/Tone/signal/GreaterThan.ts +88 -0
  267. package/Tone/signal/GreaterThanZero.test.ts +49 -0
  268. package/Tone/signal/GreaterThanZero.ts +67 -0
  269. package/Tone/signal/Multiply.test.ts +46 -0
  270. package/Tone/signal/Multiply.ts +85 -0
  271. package/Tone/signal/Negate.test.ts +30 -0
  272. package/Tone/signal/Negate.ts +41 -0
  273. package/Tone/signal/Pow.test.ts +40 -0
  274. package/Tone/signal/Pow.ts +84 -0
  275. package/Tone/signal/Scale.test.ts +58 -0
  276. package/Tone/signal/Scale.ts +119 -0
  277. package/Tone/signal/ScaleExp.test.ts +49 -0
  278. package/Tone/signal/ScaleExp.ts +69 -0
  279. package/Tone/signal/Signal.test.ts +519 -0
  280. package/Tone/signal/Signal.ts +226 -0
  281. package/Tone/signal/SignalOperator.ts +21 -0
  282. package/Tone/signal/Subtract.test.ts +60 -0
  283. package/Tone/signal/Subtract.ts +74 -0
  284. package/Tone/signal/SyncedSignal.test.ts +245 -0
  285. package/Tone/signal/SyncedSignal.ts +172 -0
  286. package/Tone/signal/ToneConstantSource.test.ts +202 -0
  287. package/Tone/signal/ToneConstantSource.ts +90 -0
  288. package/Tone/signal/WaveShaper.test.ts +95 -0
  289. package/Tone/signal/WaveShaper.ts +136 -0
  290. package/Tone/signal/Zero.test.ts +25 -0
  291. package/Tone/signal/Zero.ts +45 -0
  292. package/Tone/signal/index.ts +16 -0
  293. package/Tone/source/Noise.test.ts +121 -0
  294. package/Tone/source/Noise.ts +287 -0
  295. package/Tone/source/OneShotSource.ts +260 -0
  296. package/Tone/source/Source.test.ts +408 -0
  297. package/Tone/source/Source.ts +339 -0
  298. package/Tone/source/UserMedia.test.ts +177 -0
  299. package/Tone/source/UserMedia.ts +260 -0
  300. package/Tone/source/buffer/GrainPlayer.test.ts +235 -0
  301. package/Tone/source/buffer/GrainPlayer.ts +322 -0
  302. package/Tone/source/buffer/Player.test.ts +651 -0
  303. package/Tone/source/buffer/Player.ts +440 -0
  304. package/Tone/source/buffer/Players.test.ts +288 -0
  305. package/Tone/source/buffer/Players.ts +235 -0
  306. package/Tone/source/buffer/ToneBufferSource.test.ts +578 -0
  307. package/Tone/source/buffer/ToneBufferSource.ts +253 -0
  308. package/Tone/source/index.ts +15 -0
  309. package/Tone/source/oscillator/AMOscillator.test.ts +69 -0
  310. package/Tone/source/oscillator/AMOscillator.ts +222 -0
  311. package/Tone/source/oscillator/FMOscillator.test.ts +85 -0
  312. package/Tone/source/oscillator/FMOscillator.ts +236 -0
  313. package/Tone/source/oscillator/FatOscillator.test.ts +91 -0
  314. package/Tone/source/oscillator/FatOscillator.ts +255 -0
  315. package/Tone/source/oscillator/LFO.test.ts +234 -0
  316. package/Tone/source/oscillator/LFO.ts +332 -0
  317. package/Tone/source/oscillator/OmniOscillator.test.ts +303 -0
  318. package/Tone/source/oscillator/OmniOscillator.ts +428 -0
  319. package/Tone/source/oscillator/Oscillator.test.ts +278 -0
  320. package/Tone/source/oscillator/Oscillator.ts +448 -0
  321. package/Tone/source/oscillator/OscillatorInterface.ts +462 -0
  322. package/Tone/source/oscillator/PWMOscillator.test.ts +49 -0
  323. package/Tone/source/oscillator/PWMOscillator.ts +190 -0
  324. package/Tone/source/oscillator/PulseOscillator.test.ts +126 -0
  325. package/Tone/source/oscillator/PulseOscillator.ts +225 -0
  326. package/Tone/source/oscillator/ToneOscillatorNode.test.ts +241 -0
  327. package/Tone/source/oscillator/ToneOscillatorNode.ts +131 -0
  328. package/Tone/version.ts +1 -0
  329. package/build/Tone.js +22 -0
  330. package/build/Tone.js.map +1 -0
  331. package/build/esm/classes.d.ts +7 -0
  332. package/build/esm/classes.js +8 -0
  333. package/build/esm/classes.js.map +1 -0
  334. package/build/esm/component/analysis/Analyser.d.ts +77 -0
  335. package/build/esm/component/analysis/Analyser.js +121 -0
  336. package/build/esm/component/analysis/Analyser.js.map +1 -0
  337. package/build/esm/component/analysis/DCMeter.d.ts +23 -0
  338. package/build/esm/component/analysis/DCMeter.js +31 -0
  339. package/build/esm/component/analysis/DCMeter.js.map +1 -0
  340. package/build/esm/component/analysis/FFT.d.ts +50 -0
  341. package/build/esm/component/analysis/FFT.js +65 -0
  342. package/build/esm/component/analysis/FFT.js.map +1 -0
  343. package/build/esm/component/analysis/Follower.d.ts +44 -0
  344. package/build/esm/component/analysis/Follower.js +51 -0
  345. package/build/esm/component/analysis/Follower.js.map +1 -0
  346. package/build/esm/component/analysis/Meter.d.ts +62 -0
  347. package/build/esm/component/analysis/Meter.js +90 -0
  348. package/build/esm/component/analysis/Meter.js.map +1 -0
  349. package/build/esm/component/analysis/MeterBase.d.ts +23 -0
  350. package/build/esm/component/analysis/MeterBase.js +23 -0
  351. package/build/esm/component/analysis/MeterBase.js.map +1 -0
  352. package/build/esm/component/analysis/Waveform.d.ts +32 -0
  353. package/build/esm/component/analysis/Waveform.js +38 -0
  354. package/build/esm/component/analysis/Waveform.js.map +1 -0
  355. package/build/esm/component/channel/Channel.d.ts +91 -0
  356. package/build/esm/component/channel/Channel.js +124 -0
  357. package/build/esm/component/channel/Channel.js.map +1 -0
  358. package/build/esm/component/channel/CrossFade.d.ts +80 -0
  359. package/build/esm/component/channel/CrossFade.js +106 -0
  360. package/build/esm/component/channel/CrossFade.js.map +1 -0
  361. package/build/esm/component/channel/Merge.d.ts +39 -0
  362. package/build/esm/component/channel/Merge.js +32 -0
  363. package/build/esm/component/channel/Merge.js.map +1 -0
  364. package/build/esm/component/channel/MidSideMerge.d.ts +52 -0
  365. package/build/esm/component/channel/MidSideMerge.js +53 -0
  366. package/build/esm/component/channel/MidSideMerge.js.map +1 -0
  367. package/build/esm/component/channel/MidSideSplit.d.ts +42 -0
  368. package/build/esm/component/channel/MidSideSplit.js +51 -0
  369. package/build/esm/component/channel/MidSideSplit.js.map +1 -0
  370. package/build/esm/component/channel/Mono.d.ts +26 -0
  371. package/build/esm/component/channel/Mono.js +30 -0
  372. package/build/esm/component/channel/Mono.js.map +1 -0
  373. package/build/esm/component/channel/MultibandSplit.d.ts +80 -0
  374. package/build/esm/component/channel/MultibandSplit.js +121 -0
  375. package/build/esm/component/channel/MultibandSplit.js.map +1 -0
  376. package/build/esm/component/channel/PanVol.d.ts +53 -0
  377. package/build/esm/component/channel/PanVol.js +61 -0
  378. package/build/esm/component/channel/PanVol.js.map +1 -0
  379. package/build/esm/component/channel/Panner.d.ts +49 -0
  380. package/build/esm/component/channel/Panner.js +55 -0
  381. package/build/esm/component/channel/Panner.js.map +1 -0
  382. package/build/esm/component/channel/Panner3D.d.ts +98 -0
  383. package/build/esm/component/channel/Panner3D.js +177 -0
  384. package/build/esm/component/channel/Panner3D.js.map +1 -0
  385. package/build/esm/component/channel/Recorder.d.ts +77 -0
  386. package/build/esm/component/channel/Recorder.js +131 -0
  387. package/build/esm/component/channel/Recorder.js.map +1 -0
  388. package/build/esm/component/channel/Solo.d.ts +68 -0
  389. package/build/esm/component/channel/Solo.js +121 -0
  390. package/build/esm/component/channel/Solo.js.map +1 -0
  391. package/build/esm/component/channel/Split.d.ts +29 -0
  392. package/build/esm/component/channel/Split.js +30 -0
  393. package/build/esm/component/channel/Split.js.map +1 -0
  394. package/build/esm/component/channel/Volume.d.ts +60 -0
  395. package/build/esm/component/channel/Volume.js +66 -0
  396. package/build/esm/component/channel/Volume.js.map +1 -0
  397. package/build/esm/component/dynamics/Compressor.d.ts +73 -0
  398. package/build/esm/component/dynamics/Compressor.js +99 -0
  399. package/build/esm/component/dynamics/Compressor.js.map +1 -0
  400. package/build/esm/component/dynamics/Gate.d.ts +53 -0
  401. package/build/esm/component/dynamics/Gate.js +72 -0
  402. package/build/esm/component/dynamics/Gate.js.map +1 -0
  403. package/build/esm/component/dynamics/Limiter.d.ts +39 -0
  404. package/build/esm/component/dynamics/Limiter.js +51 -0
  405. package/build/esm/component/dynamics/Limiter.js.map +1 -0
  406. package/build/esm/component/dynamics/MidSideCompressor.d.ts +36 -0
  407. package/build/esm/component/dynamics/MidSideCompressor.js +52 -0
  408. package/build/esm/component/dynamics/MidSideCompressor.js.map +1 -0
  409. package/build/esm/component/dynamics/MultibandCompressor.d.ts +57 -0
  410. package/build/esm/component/dynamics/MultibandCompressor.js +79 -0
  411. package/build/esm/component/dynamics/MultibandCompressor.js.map +1 -0
  412. package/build/esm/component/envelope/AmplitudeEnvelope.d.ts +46 -0
  413. package/build/esm/component/envelope/AmplitudeEnvelope.js +49 -0
  414. package/build/esm/component/envelope/AmplitudeEnvelope.js.map +1 -0
  415. package/build/esm/component/envelope/Envelope.d.ts +302 -0
  416. package/build/esm/component/envelope/Envelope.js +470 -0
  417. package/build/esm/component/envelope/Envelope.js.map +1 -0
  418. package/build/esm/component/envelope/FrequencyEnvelope.d.ts +71 -0
  419. package/build/esm/component/envelope/FrequencyEnvelope.js +91 -0
  420. package/build/esm/component/envelope/FrequencyEnvelope.js.map +1 -0
  421. package/build/esm/component/filter/BiquadFilter.d.ts +64 -0
  422. package/build/esm/component/filter/BiquadFilter.js +101 -0
  423. package/build/esm/component/filter/BiquadFilter.js.map +1 -0
  424. package/build/esm/component/filter/Convolver.d.ts +59 -0
  425. package/build/esm/component/filter/Convolver.js +104 -0
  426. package/build/esm/component/filter/Convolver.js.map +1 -0
  427. package/build/esm/component/filter/EQ3.d.ts +77 -0
  428. package/build/esm/component/filter/EQ3.js +81 -0
  429. package/build/esm/component/filter/EQ3.js.map +1 -0
  430. package/build/esm/component/filter/FeedbackCombFilter.d.ts +45 -0
  431. package/build/esm/component/filter/FeedbackCombFilter.js +72 -0
  432. package/build/esm/component/filter/FeedbackCombFilter.js.map +1 -0
  433. package/build/esm/component/filter/FeedbackCombFilter.worklet.d.ts +3 -0
  434. package/build/esm/component/filter/FeedbackCombFilter.worklet.js +37 -0
  435. package/build/esm/component/filter/FeedbackCombFilter.worklet.js.map +1 -0
  436. package/build/esm/component/filter/Filter.d.ts +79 -0
  437. package/build/esm/component/filter/Filter.js +150 -0
  438. package/build/esm/component/filter/Filter.js.map +1 -0
  439. package/build/esm/component/filter/LowpassCombFilter.d.ts +50 -0
  440. package/build/esm/component/filter/LowpassCombFilter.js +53 -0
  441. package/build/esm/component/filter/LowpassCombFilter.js.map +1 -0
  442. package/build/esm/component/filter/OnePoleFilter.d.ts +64 -0
  443. package/build/esm/component/filter/OnePoleFilter.js +104 -0
  444. package/build/esm/component/filter/OnePoleFilter.js.map +1 -0
  445. package/build/esm/component/filter/PhaseShiftAllpass.d.ts +40 -0
  446. package/build/esm/component/filter/PhaseShiftAllpass.js +54 -0
  447. package/build/esm/component/filter/PhaseShiftAllpass.js.map +1 -0
  448. package/build/esm/component/index.d.ts +35 -0
  449. package/build/esm/component/index.js +36 -0
  450. package/build/esm/component/index.js.map +1 -0
  451. package/build/esm/core/Global.d.ts +26 -0
  452. package/build/esm/core/Global.js +69 -0
  453. package/build/esm/core/Global.js.map +1 -0
  454. package/build/esm/core/Tone.d.ts +60 -0
  455. package/build/esm/core/Tone.js +87 -0
  456. package/build/esm/core/Tone.js.map +1 -0
  457. package/build/esm/core/clock/Clock.d.ts +156 -0
  458. package/build/esm/core/clock/Clock.js +251 -0
  459. package/build/esm/core/clock/Clock.js.map +1 -0
  460. package/build/esm/core/clock/TickParam.d.ts +97 -0
  461. package/build/esm/core/clock/TickParam.js +237 -0
  462. package/build/esm/core/clock/TickParam.js.map +1 -0
  463. package/build/esm/core/clock/TickSignal.d.ts +43 -0
  464. package/build/esm/core/clock/TickSignal.js +64 -0
  465. package/build/esm/core/clock/TickSignal.js.map +1 -0
  466. package/build/esm/core/clock/TickSource.d.ts +115 -0
  467. package/build/esm/core/clock/TickSource.js +284 -0
  468. package/build/esm/core/clock/TickSource.js.map +1 -0
  469. package/build/esm/core/clock/Ticker.d.ts +59 -0
  470. package/build/esm/core/clock/Ticker.js +110 -0
  471. package/build/esm/core/clock/Ticker.js.map +1 -0
  472. package/build/esm/core/clock/Transport.d.ts +331 -0
  473. package/build/esm/core/clock/Transport.js +591 -0
  474. package/build/esm/core/clock/Transport.js.map +1 -0
  475. package/build/esm/core/clock/TransportEvent.d.ts +62 -0
  476. package/build/esm/core/clock/TransportEvent.js +66 -0
  477. package/build/esm/core/clock/TransportEvent.js.map +1 -0
  478. package/build/esm/core/clock/TransportRepeatEvent.d.ts +70 -0
  479. package/build/esm/core/clock/TransportRepeatEvent.js +110 -0
  480. package/build/esm/core/clock/TransportRepeatEvent.js.map +1 -0
  481. package/build/esm/core/context/AbstractParam.d.ts +239 -0
  482. package/build/esm/core/context/AbstractParam.js +6 -0
  483. package/build/esm/core/context/AbstractParam.js.map +1 -0
  484. package/build/esm/core/context/AudioContext.d.ts +36 -0
  485. package/build/esm/core/context/AudioContext.js +38 -0
  486. package/build/esm/core/context/AudioContext.js.map +1 -0
  487. package/build/esm/core/context/BaseContext.d.ts +56 -0
  488. package/build/esm/core/context/BaseContext.js +16 -0
  489. package/build/esm/core/context/BaseContext.js.map +1 -0
  490. package/build/esm/core/context/Context.d.ts +255 -0
  491. package/build/esm/core/context/Context.js +474 -0
  492. package/build/esm/core/context/Context.js.map +1 -0
  493. package/build/esm/core/context/ContextInitialization.d.ts +15 -0
  494. package/build/esm/core/context/ContextInitialization.js +35 -0
  495. package/build/esm/core/context/ContextInitialization.js.map +1 -0
  496. package/build/esm/core/context/Delay.d.ts +58 -0
  497. package/build/esm/core/context/Delay.js +58 -0
  498. package/build/esm/core/context/Delay.js.map +1 -0
  499. package/build/esm/core/context/Destination.d.ts +73 -0
  500. package/build/esm/core/context/Destination.js +105 -0
  501. package/build/esm/core/context/Destination.js.map +1 -0
  502. package/build/esm/core/context/DummyContext.d.ts +54 -0
  503. package/build/esm/core/context/DummyContext.js +138 -0
  504. package/build/esm/core/context/DummyContext.js.map +1 -0
  505. package/build/esm/core/context/Gain.d.ts +53 -0
  506. package/build/esm/core/context/Gain.js +58 -0
  507. package/build/esm/core/context/Gain.js.map +1 -0
  508. package/build/esm/core/context/Listener.d.ts +38 -0
  509. package/build/esm/core/context/Listener.js +87 -0
  510. package/build/esm/core/context/Listener.js.map +1 -0
  511. package/build/esm/core/context/Offline.d.ts +37 -0
  512. package/build/esm/core/context/Offline.js +56 -0
  513. package/build/esm/core/context/Offline.js.map +1 -0
  514. package/build/esm/core/context/OfflineContext.d.ts +58 -0
  515. package/build/esm/core/context/OfflineContext.js +87 -0
  516. package/build/esm/core/context/OfflineContext.js.map +1 -0
  517. package/build/esm/core/context/Param.d.ts +132 -0
  518. package/build/esm/core/context/Param.js +446 -0
  519. package/build/esm/core/context/Param.js.map +1 -0
  520. package/build/esm/core/context/ToneAudioBuffer.d.ts +162 -0
  521. package/build/esm/core/context/ToneAudioBuffer.js +364 -0
  522. package/build/esm/core/context/ToneAudioBuffer.js.map +1 -0
  523. package/build/esm/core/context/ToneAudioBuffers.d.ts +89 -0
  524. package/build/esm/core/context/ToneAudioBuffers.js +119 -0
  525. package/build/esm/core/context/ToneAudioBuffers.js.map +1 -0
  526. package/build/esm/core/context/ToneAudioNode.d.ts +173 -0
  527. package/build/esm/core/context/ToneAudioNode.js +342 -0
  528. package/build/esm/core/context/ToneAudioNode.js.map +1 -0
  529. package/build/esm/core/context/ToneWithContext.d.ts +108 -0
  530. package/build/esm/core/context/ToneWithContext.js +170 -0
  531. package/build/esm/core/context/ToneWithContext.js.map +1 -0
  532. package/build/esm/core/index.d.ts +28 -0
  533. package/build/esm/core/index.js +33 -0
  534. package/build/esm/core/index.js.map +1 -0
  535. package/build/esm/core/type/Conversions.d.ts +44 -0
  536. package/build/esm/core/type/Conversions.js +68 -0
  537. package/build/esm/core/type/Conversions.js.map +1 -0
  538. package/build/esm/core/type/Frequency.d.ts +101 -0
  539. package/build/esm/core/type/Frequency.js +225 -0
  540. package/build/esm/core/type/Frequency.js.map +1 -0
  541. package/build/esm/core/type/Midi.d.ts +53 -0
  542. package/build/esm/core/type/Midi.js +73 -0
  543. package/build/esm/core/type/Midi.js.map +1 -0
  544. package/build/esm/core/type/NoteUnits.d.ts +12 -0
  545. package/build/esm/core/type/NoteUnits.js +3 -0
  546. package/build/esm/core/type/NoteUnits.js.map +1 -0
  547. package/build/esm/core/type/Ticks.d.ts +44 -0
  548. package/build/esm/core/type/Ticks.js +61 -0
  549. package/build/esm/core/type/Ticks.js.map +1 -0
  550. package/build/esm/core/type/Time.d.ts +69 -0
  551. package/build/esm/core/type/Time.js +147 -0
  552. package/build/esm/core/type/Time.js.map +1 -0
  553. package/build/esm/core/type/TimeBase.d.ts +120 -0
  554. package/build/esm/core/type/TimeBase.js +251 -0
  555. package/build/esm/core/type/TimeBase.js.map +1 -0
  556. package/build/esm/core/type/TransportTime.d.ts +25 -0
  557. package/build/esm/core/type/TransportTime.js +32 -0
  558. package/build/esm/core/type/TransportTime.js.map +1 -0
  559. package/build/esm/core/type/Units.d.ts +176 -0
  560. package/build/esm/core/type/Units.js +2 -0
  561. package/build/esm/core/type/Units.js.map +1 -0
  562. package/build/esm/core/util/AdvancedTypeCheck.d.ts +21 -0
  563. package/build/esm/core/util/AdvancedTypeCheck.js +32 -0
  564. package/build/esm/core/util/AdvancedTypeCheck.js.map +1 -0
  565. package/build/esm/core/util/Debug.d.ts +34 -0
  566. package/build/esm/core/util/Debug.js +50 -0
  567. package/build/esm/core/util/Debug.js.map +1 -0
  568. package/build/esm/core/util/Decorator.d.ts +9 -0
  569. package/build/esm/core/util/Decorator.js +41 -0
  570. package/build/esm/core/util/Decorator.js.map +1 -0
  571. package/build/esm/core/util/Defaults.d.ts +32 -0
  572. package/build/esm/core/util/Defaults.js +99 -0
  573. package/build/esm/core/util/Defaults.js.map +1 -0
  574. package/build/esm/core/util/Draw.d.ts +67 -0
  575. package/build/esm/core/util/Draw.js +110 -0
  576. package/build/esm/core/util/Draw.js.map +1 -0
  577. package/build/esm/core/util/Emitter.d.ts +52 -0
  578. package/build/esm/core/util/Emitter.js +113 -0
  579. package/build/esm/core/util/Emitter.js.map +1 -0
  580. package/build/esm/core/util/Interface.d.ts +16 -0
  581. package/build/esm/core/util/Interface.js +32 -0
  582. package/build/esm/core/util/Interface.js.map +1 -0
  583. package/build/esm/core/util/IntervalTimeline.d.ts +106 -0
  584. package/build/esm/core/util/IntervalTimeline.js +539 -0
  585. package/build/esm/core/util/IntervalTimeline.js.map +1 -0
  586. package/build/esm/core/util/Math.d.ts +20 -0
  587. package/build/esm/core/util/Math.js +36 -0
  588. package/build/esm/core/util/Math.js.map +1 -0
  589. package/build/esm/core/util/StateTimeline.d.ts +47 -0
  590. package/build/esm/core/util/StateTimeline.js +78 -0
  591. package/build/esm/core/util/StateTimeline.js.map +1 -0
  592. package/build/esm/core/util/Timeline.d.ts +156 -0
  593. package/build/esm/core/util/Timeline.js +351 -0
  594. package/build/esm/core/util/Timeline.js.map +1 -0
  595. package/build/esm/core/util/TimelineValue.d.ts +28 -0
  596. package/build/esm/core/util/TimelineValue.js +41 -0
  597. package/build/esm/core/util/TimelineValue.js.map +1 -0
  598. package/build/esm/core/util/TypeCheck.d.ts +38 -0
  599. package/build/esm/core/util/TypeCheck.js +56 -0
  600. package/build/esm/core/util/TypeCheck.js.map +1 -0
  601. package/build/esm/core/worklet/DelayLine.worklet.d.ts +1 -0
  602. package/build/esm/core/worklet/DelayLine.worklet.js +48 -0
  603. package/build/esm/core/worklet/DelayLine.worklet.js.map +1 -0
  604. package/build/esm/core/worklet/SingleIOProcessor.worklet.d.ts +2 -0
  605. package/build/esm/core/worklet/SingleIOProcessor.worklet.js +72 -0
  606. package/build/esm/core/worklet/SingleIOProcessor.worklet.js.map +1 -0
  607. package/build/esm/core/worklet/ToneAudioWorklet.d.ts +35 -0
  608. package/build/esm/core/worklet/ToneAudioWorklet.js +40 -0
  609. package/build/esm/core/worklet/ToneAudioWorklet.js.map +1 -0
  610. package/build/esm/core/worklet/ToneAudioWorkletProcessor.worklet.d.ts +1 -0
  611. package/build/esm/core/worklet/ToneAudioWorkletProcessor.worklet.js +34 -0
  612. package/build/esm/core/worklet/ToneAudioWorkletProcessor.worklet.js.map +1 -0
  613. package/build/esm/core/worklet/WorkletGlobalScope.d.ts +12 -0
  614. package/build/esm/core/worklet/WorkletGlobalScope.js +24 -0
  615. package/build/esm/core/worklet/WorkletGlobalScope.js.map +1 -0
  616. package/build/esm/effect/AutoFilter.d.ts +51 -0
  617. package/build/esm/effect/AutoFilter.js +68 -0
  618. package/build/esm/effect/AutoFilter.js.map +1 -0
  619. package/build/esm/effect/AutoPanner.d.ts +31 -0
  620. package/build/esm/effect/AutoPanner.js +41 -0
  621. package/build/esm/effect/AutoPanner.js.map +1 -0
  622. package/build/esm/effect/AutoWah.d.ts +99 -0
  623. package/build/esm/effect/AutoWah.js +131 -0
  624. package/build/esm/effect/AutoWah.js.map +1 -0
  625. package/build/esm/effect/BitCrusher.d.ts +40 -0
  626. package/build/esm/effect/BitCrusher.js +85 -0
  627. package/build/esm/effect/BitCrusher.js.map +1 -0
  628. package/build/esm/effect/BitCrusher.worklet.d.ts +3 -0
  629. package/build/esm/effect/BitCrusher.worklet.js +25 -0
  630. package/build/esm/effect/BitCrusher.worklet.js.map +1 -0
  631. package/build/esm/effect/Chebyshev.d.ts +62 -0
  632. package/build/esm/effect/Chebyshev.js +95 -0
  633. package/build/esm/effect/Chebyshev.js.map +1 -0
  634. package/build/esm/effect/Chorus.d.ts +104 -0
  635. package/build/esm/effect/Chorus.js +157 -0
  636. package/build/esm/effect/Chorus.js.map +1 -0
  637. package/build/esm/effect/Distortion.d.ts +43 -0
  638. package/build/esm/effect/Distortion.js +69 -0
  639. package/build/esm/effect/Distortion.js.map +1 -0
  640. package/build/esm/effect/Effect.d.ts +49 -0
  641. package/build/esm/effect/Effect.js +70 -0
  642. package/build/esm/effect/Effect.js.map +1 -0
  643. package/build/esm/effect/FeedbackDelay.d.ts +37 -0
  644. package/build/esm/effect/FeedbackDelay.js +47 -0
  645. package/build/esm/effect/FeedbackDelay.js.map +1 -0
  646. package/build/esm/effect/FeedbackEffect.d.ts +34 -0
  647. package/build/esm/effect/FeedbackEffect.js +34 -0
  648. package/build/esm/effect/FeedbackEffect.js.map +1 -0
  649. package/build/esm/effect/Freeverb.d.ts +51 -0
  650. package/build/esm/effect/Freeverb.js +104 -0
  651. package/build/esm/effect/Freeverb.js.map +1 -0
  652. package/build/esm/effect/FrequencyShifter.d.ts +68 -0
  653. package/build/esm/effect/FrequencyShifter.js +88 -0
  654. package/build/esm/effect/FrequencyShifter.js.map +1 -0
  655. package/build/esm/effect/JCReverb.d.ts +46 -0
  656. package/build/esm/effect/JCReverb.js +97 -0
  657. package/build/esm/effect/JCReverb.js.map +1 -0
  658. package/build/esm/effect/LFOEffect.d.ts +58 -0
  659. package/build/esm/effect/LFOEffect.js +77 -0
  660. package/build/esm/effect/LFOEffect.js.map +1 -0
  661. package/build/esm/effect/MidSideEffect.d.ts +50 -0
  662. package/build/esm/effect/MidSideEffect.js +51 -0
  663. package/build/esm/effect/MidSideEffect.js.map +1 -0
  664. package/build/esm/effect/Phaser.d.ts +80 -0
  665. package/build/esm/effect/Phaser.js +119 -0
  666. package/build/esm/effect/Phaser.js.map +1 -0
  667. package/build/esm/effect/PingPongDelay.d.ts +48 -0
  668. package/build/esm/effect/PingPongDelay.js +66 -0
  669. package/build/esm/effect/PingPongDelay.js.map +1 -0
  670. package/build/esm/effect/PitchShift.d.ts +89 -0
  671. package/build/esm/effect/PitchShift.js +140 -0
  672. package/build/esm/effect/PitchShift.js.map +1 -0
  673. package/build/esm/effect/Reverb.d.ts +62 -0
  674. package/build/esm/effect/Reverb.js +111 -0
  675. package/build/esm/effect/Reverb.js.map +1 -0
  676. package/build/esm/effect/StereoEffect.d.ts +44 -0
  677. package/build/esm/effect/StereoEffect.js +61 -0
  678. package/build/esm/effect/StereoEffect.js.map +1 -0
  679. package/build/esm/effect/StereoFeedbackEffect.d.ts +39 -0
  680. package/build/esm/effect/StereoFeedbackEffect.js +49 -0
  681. package/build/esm/effect/StereoFeedbackEffect.js.map +1 -0
  682. package/build/esm/effect/StereoWidener.d.ts +50 -0
  683. package/build/esm/effect/StereoWidener.js +65 -0
  684. package/build/esm/effect/StereoWidener.js.map +1 -0
  685. package/build/esm/effect/StereoXFeedbackEffect.d.ts +21 -0
  686. package/build/esm/effect/StereoXFeedbackEffect.js +28 -0
  687. package/build/esm/effect/StereoXFeedbackEffect.js.map +1 -0
  688. package/build/esm/effect/Tremolo.d.ts +86 -0
  689. package/build/esm/effect/Tremolo.js +131 -0
  690. package/build/esm/effect/Tremolo.js.map +1 -0
  691. package/build/esm/effect/Vibrato.d.ts +48 -0
  692. package/build/esm/effect/Vibrato.js +61 -0
  693. package/build/esm/effect/Vibrato.js.map +1 -0
  694. package/build/esm/effect/index.d.ts +18 -0
  695. package/build/esm/effect/index.js +19 -0
  696. package/build/esm/effect/index.js.map +1 -0
  697. package/build/esm/event/Loop.d.ts +107 -0
  698. package/build/esm/event/Loop.js +164 -0
  699. package/build/esm/event/Loop.js.map +1 -0
  700. package/build/esm/event/Part.d.ts +193 -0
  701. package/build/esm/event/Part.js +401 -0
  702. package/build/esm/event/Part.js.map +1 -0
  703. package/build/esm/event/Pattern.d.ts +67 -0
  704. package/build/esm/event/Pattern.js +67 -0
  705. package/build/esm/event/Pattern.js.map +1 -0
  706. package/build/esm/event/PatternGenerator.d.ts +12 -0
  707. package/build/esm/event/PatternGenerator.js +165 -0
  708. package/build/esm/event/PatternGenerator.js.map +1 -0
  709. package/build/esm/event/Sequence.d.ts +127 -0
  710. package/build/esm/event/Sequence.js +247 -0
  711. package/build/esm/event/Sequence.js.map +1 -0
  712. package/build/esm/event/ToneEvent.d.ts +188 -0
  713. package/build/esm/event/ToneEvent.js +299 -0
  714. package/build/esm/event/ToneEvent.js.map +1 -0
  715. package/build/esm/event/index.d.ts +5 -0
  716. package/build/esm/event/index.js +6 -0
  717. package/build/esm/event/index.js.map +1 -0
  718. package/build/esm/fromContext.d.ts +26 -0
  719. package/build/esm/fromContext.js +41 -0
  720. package/build/esm/fromContext.js.map +1 -0
  721. package/build/esm/index.d.ts +86 -0
  722. package/build/esm/index.js +102 -0
  723. package/build/esm/index.js.map +1 -0
  724. package/build/esm/instrument/AMSynth.d.ts +25 -0
  725. package/build/esm/instrument/AMSynth.js +37 -0
  726. package/build/esm/instrument/AMSynth.js.map +1 -0
  727. package/build/esm/instrument/DuoSynth.d.ts +72 -0
  728. package/build/esm/instrument/DuoSynth.js +140 -0
  729. package/build/esm/instrument/DuoSynth.js.map +1 -0
  730. package/build/esm/instrument/FMSynth.d.ts +31 -0
  731. package/build/esm/instrument/FMSynth.js +45 -0
  732. package/build/esm/instrument/FMSynth.js.map +1 -0
  733. package/build/esm/instrument/Instrument.d.ts +100 -0
  734. package/build/esm/instrument/Instrument.js +127 -0
  735. package/build/esm/instrument/Instrument.js.map +1 -0
  736. package/build/esm/instrument/MembraneSynth.d.ts +47 -0
  737. package/build/esm/instrument/MembraneSynth.js +69 -0
  738. package/build/esm/instrument/MembraneSynth.js.map +1 -0
  739. package/build/esm/instrument/MetalSynth.d.ts +109 -0
  740. package/build/esm/instrument/MetalSynth.js +198 -0
  741. package/build/esm/instrument/MetalSynth.js.map +1 -0
  742. package/build/esm/instrument/ModulationSynth.d.ts +81 -0
  743. package/build/esm/instrument/ModulationSynth.js +122 -0
  744. package/build/esm/instrument/ModulationSynth.js.map +1 -0
  745. package/build/esm/instrument/MonoSynth.d.ts +76 -0
  746. package/build/esm/instrument/MonoSynth.js +113 -0
  747. package/build/esm/instrument/MonoSynth.js.map +1 -0
  748. package/build/esm/instrument/Monophonic.d.ts +82 -0
  749. package/build/esm/instrument/Monophonic.js +83 -0
  750. package/build/esm/instrument/Monophonic.js.map +1 -0
  751. package/build/esm/instrument/NoiseSynth.d.ts +51 -0
  752. package/build/esm/instrument/NoiseSynth.js +93 -0
  753. package/build/esm/instrument/NoiseSynth.js.map +1 -0
  754. package/build/esm/instrument/PluckSynth.d.ts +57 -0
  755. package/build/esm/instrument/PluckSynth.js +80 -0
  756. package/build/esm/instrument/PluckSynth.js.map +1 -0
  757. package/build/esm/instrument/PolySynth.d.ts +176 -0
  758. package/build/esm/instrument/PolySynth.js +302 -0
  759. package/build/esm/instrument/PolySynth.js.map +1 -0
  760. package/build/esm/instrument/Sampler.d.ts +126 -0
  761. package/build/esm/instrument/Sampler.js +259 -0
  762. package/build/esm/instrument/Sampler.js.map +1 -0
  763. package/build/esm/instrument/Synth.d.ts +65 -0
  764. package/build/esm/instrument/Synth.js +91 -0
  765. package/build/esm/instrument/Synth.js.map +1 -0
  766. package/build/esm/instrument/index.d.ts +11 -0
  767. package/build/esm/instrument/index.js +12 -0
  768. package/build/esm/instrument/index.js.map +1 -0
  769. package/build/esm/signal/Abs.d.ts +34 -0
  770. package/build/esm/signal/Abs.js +51 -0
  771. package/build/esm/signal/Abs.js.map +1 -0
  772. package/build/esm/signal/Add.d.ts +40 -0
  773. package/build/esm/signal/Add.js +49 -0
  774. package/build/esm/signal/Add.js.map +1 -0
  775. package/build/esm/signal/AudioToGain.d.ts +27 -0
  776. package/build/esm/signal/AudioToGain.js +37 -0
  777. package/build/esm/signal/AudioToGain.js.map +1 -0
  778. package/build/esm/signal/GainToAudio.d.ts +27 -0
  779. package/build/esm/signal/GainToAudio.js +37 -0
  780. package/build/esm/signal/GainToAudio.js.map +1 -0
  781. package/build/esm/signal/GreaterThan.d.ts +47 -0
  782. package/build/esm/signal/GreaterThan.js +46 -0
  783. package/build/esm/signal/GreaterThan.js.map +1 -0
  784. package/build/esm/signal/GreaterThanZero.d.ts +29 -0
  785. package/build/esm/signal/GreaterThanZero.js +45 -0
  786. package/build/esm/signal/GreaterThanZero.js.map +1 -0
  787. package/build/esm/signal/Multiply.d.ts +52 -0
  788. package/build/esm/signal/Multiply.js +51 -0
  789. package/build/esm/signal/Multiply.js.map +1 -0
  790. package/build/esm/signal/Negate.d.ts +29 -0
  791. package/build/esm/signal/Negate.js +39 -0
  792. package/build/esm/signal/Negate.js.map +1 -0
  793. package/build/esm/signal/Pow.d.ts +42 -0
  794. package/build/esm/signal/Pow.js +58 -0
  795. package/build/esm/signal/Pow.js.map +1 -0
  796. package/build/esm/signal/Scale.d.ts +62 -0
  797. package/build/esm/signal/Scale.js +73 -0
  798. package/build/esm/signal/Scale.js.map +1 -0
  799. package/build/esm/signal/ScaleExp.d.ts +37 -0
  800. package/build/esm/signal/ScaleExp.js +46 -0
  801. package/build/esm/signal/ScaleExp.js.map +1 -0
  802. package/build/esm/signal/Signal.d.ts +92 -0
  803. package/build/esm/signal/Signal.js +183 -0
  804. package/build/esm/signal/Signal.js.map +1 -0
  805. package/build/esm/signal/SignalOperator.d.ts +9 -0
  806. package/build/esm/signal/SignalOperator.js +16 -0
  807. package/build/esm/signal/SignalOperator.js.map +1 -0
  808. package/build/esm/signal/Subtract.d.ts +48 -0
  809. package/build/esm/signal/Subtract.js +58 -0
  810. package/build/esm/signal/Subtract.js.map +1 -0
  811. package/build/esm/signal/SyncedSignal.d.ts +53 -0
  812. package/build/esm/signal/SyncedSignal.js +124 -0
  813. package/build/esm/signal/SyncedSignal.js.map +1 -0
  814. package/build/esm/signal/ToneConstantSource.d.ts +39 -0
  815. package/build/esm/signal/ToneConstantSource.js +61 -0
  816. package/build/esm/signal/ToneConstantSource.js.map +1 -0
  817. package/build/esm/signal/WaveShaper.d.ts +81 -0
  818. package/build/esm/signal/WaveShaper.js +99 -0
  819. package/build/esm/signal/WaveShaper.js.map +1 -0
  820. package/build/esm/signal/Zero.d.ts +29 -0
  821. package/build/esm/signal/Zero.js +38 -0
  822. package/build/esm/signal/Zero.js.map +1 -0
  823. package/build/esm/signal/index.d.ts +16 -0
  824. package/build/esm/signal/index.js +17 -0
  825. package/build/esm/signal/index.js.map +1 -0
  826. package/build/esm/source/Noise.d.ts +96 -0
  827. package/build/esm/source/Noise.js +225 -0
  828. package/build/esm/source/Noise.js.map +1 -0
  829. package/build/esm/source/OneShotSource.d.ts +102 -0
  830. package/build/esm/source/OneShotSource.js +183 -0
  831. package/build/esm/source/OneShotSource.js.map +1 -0
  832. package/build/esm/source/Source.d.ts +155 -0
  833. package/build/esm/source/Source.js +281 -0
  834. package/build/esm/source/Source.js.map +1 -0
  835. package/build/esm/source/UserMedia.d.ts +123 -0
  836. package/build/esm/source/UserMedia.js +214 -0
  837. package/build/esm/source/UserMedia.js.map +1 -0
  838. package/build/esm/source/buffer/GrainPlayer.d.ts +135 -0
  839. package/build/esm/source/buffer/GrainPlayer.js +235 -0
  840. package/build/esm/source/buffer/GrainPlayer.js.map +1 -0
  841. package/build/esm/source/buffer/Player.d.ts +190 -0
  842. package/build/esm/source/buffer/Player.js +352 -0
  843. package/build/esm/source/buffer/Player.js.map +1 -0
  844. package/build/esm/source/buffer/Players.d.ts +121 -0
  845. package/build/esm/source/buffer/Players.js +162 -0
  846. package/build/esm/source/buffer/Players.js.map +1 -0
  847. package/build/esm/source/buffer/ToneBufferSource.d.ts +97 -0
  848. package/build/esm/source/buffer/ToneBufferSource.js +196 -0
  849. package/build/esm/source/buffer/ToneBufferSource.js.map +1 -0
  850. package/build/esm/source/index.d.ts +15 -0
  851. package/build/esm/source/index.js +16 -0
  852. package/build/esm/source/index.js.map +1 -0
  853. package/build/esm/source/oscillator/AMOscillator.d.ts +101 -0
  854. package/build/esm/source/oscillator/AMOscillator.js +157 -0
  855. package/build/esm/source/oscillator/AMOscillator.js.map +1 -0
  856. package/build/esm/source/oscillator/FMOscillator.d.ts +101 -0
  857. package/build/esm/source/oscillator/FMOscillator.js +172 -0
  858. package/build/esm/source/oscillator/FMOscillator.js.map +1 -0
  859. package/build/esm/source/oscillator/FatOscillator.d.ts +99 -0
  860. package/build/esm/source/oscillator/FatOscillator.js +195 -0
  861. package/build/esm/source/oscillator/FatOscillator.js.map +1 -0
  862. package/build/esm/source/oscillator/LFO.d.ts +167 -0
  863. package/build/esm/source/oscillator/LFO.js +233 -0
  864. package/build/esm/source/oscillator/LFO.js.map +1 -0
  865. package/build/esm/source/oscillator/OmniOscillator.d.ts +162 -0
  866. package/build/esm/source/oscillator/OmniOscillator.js +348 -0
  867. package/build/esm/source/oscillator/OmniOscillator.js.map +1 -0
  868. package/build/esm/source/oscillator/Oscillator.d.ts +125 -0
  869. package/build/esm/source/oscillator/Oscillator.js +379 -0
  870. package/build/esm/source/oscillator/Oscillator.js.map +1 -0
  871. package/build/esm/source/oscillator/OscillatorInterface.d.ts +298 -0
  872. package/build/esm/source/oscillator/OscillatorInterface.js +22 -0
  873. package/build/esm/source/oscillator/OscillatorInterface.js.map +1 -0
  874. package/build/esm/source/oscillator/PWMOscillator.d.ts +94 -0
  875. package/build/esm/source/oscillator/PWMOscillator.js +136 -0
  876. package/build/esm/source/oscillator/PWMOscillator.js.map +1 -0
  877. package/build/esm/source/oscillator/PulseOscillator.d.ts +119 -0
  878. package/build/esm/source/oscillator/PulseOscillator.js +175 -0
  879. package/build/esm/source/oscillator/PulseOscillator.js.map +1 -0
  880. package/build/esm/source/oscillator/ToneOscillatorNode.d.ts +57 -0
  881. package/build/esm/source/oscillator/ToneOscillatorNode.js +90 -0
  882. package/build/esm/source/oscillator/ToneOscillatorNode.js.map +1 -0
  883. package/build/esm/version.d.ts +1 -0
  884. package/build/esm/version.js +2 -0
  885. package/build/esm/version.js.map +1 -0
  886. package/docs/tone.json +1 -0
  887. package/package.json +116 -0
@@ -0,0 +1,298 @@
1
+ import { AudioRange, Cents, Degrees, Frequency, Positive } from "../../core/type/Units";
2
+ import { Omit } from "../../core/util/Interface";
3
+ import { Signal } from "../../signal/Signal";
4
+ import { SourceOptions } from "../Source";
5
+ /**
6
+ * The common interface of all Oscillators
7
+ */
8
+ export interface ToneOscillatorInterface {
9
+ /**
10
+ * The oscillator type without the partialsCount appended to the end
11
+ * @example
12
+ * const osc = new Tone.Oscillator();
13
+ * osc.type = "sine2";
14
+ * console.log(osc.baseType); // "sine"
15
+ */
16
+ baseType: OscillatorType | "pulse" | "pwm";
17
+ /**
18
+ * The oscillator's type. Also capable of setting the first x number of partials of the oscillator.
19
+ * For example: "sine4" would set be the first 4 partials of the sine wave and "triangle8" would
20
+ * set the first 8 partials of the triangle wave.
21
+ * @example
22
+ * return Tone.Offline(() => {
23
+ * const osc = new Tone.Oscillator().toDestination().start();
24
+ * osc.type = "sine2";
25
+ * }, 0.1, 1);
26
+ */
27
+ type: ExtendedToneOscillatorType;
28
+ /**
29
+ * The frequency value of the oscillator
30
+ * @example
31
+ * const osc = new Tone.FMOscillator("Bb4").toDestination().start();
32
+ * osc.frequency.rampTo("D2", 3);
33
+ */
34
+ readonly frequency: Signal<"frequency">;
35
+ /**
36
+ * The detune value in cents (100th of a semitone).
37
+ * @example
38
+ * const osc = new Tone.PulseOscillator("F3").toDestination().start();
39
+ * // pitch it 1 octave = 12 semitones = 1200 cents
40
+ * osc.detune.setValueAtTime(-1200, Tone.now());
41
+ * osc.detune.setValueAtTime(1200, Tone.now() + 0.5);
42
+ * osc.detune.linearRampToValueAtTime(0, Tone.now() + 1);
43
+ * osc.stop(Tone.now() + 1.5);
44
+ */
45
+ readonly detune: Signal<"cents">;
46
+ /**
47
+ * The phase is the starting position within the oscillator's cycle. For example
48
+ * a phase of 180 would start halfway through the oscillator's cycle.
49
+ * @example
50
+ * return Tone.Offline(() => {
51
+ * const osc = new Tone.Oscillator({
52
+ * frequency: 20,
53
+ * phase: 90
54
+ * }).toDestination().start();
55
+ * }, 0.1, 1);
56
+ */
57
+ phase: Degrees;
58
+ /**
59
+ * The partials describes the relative amplitude of each of the harmonics of the oscillator.
60
+ * The first value in the array is the first harmonic (i.e. the fundamental frequency), the
61
+ * second harmonic is an octave up, the third harmonic is an octave and a fifth, etc. The resulting
62
+ * oscillator output is composed of a sine tone at the relative amplitude at each of the harmonic intervals.
63
+ *
64
+ * Setting this value will automatically set the type to "custom".
65
+ * The value is an empty array when the type is not "custom".
66
+ * @example
67
+ * const osc = new Tone.Oscillator("F3").toDestination().start();
68
+ * setInterval(() => {
69
+ * // generate 8 random partials
70
+ * osc.partials = new Array(8).fill(0).map(() => Math.random());
71
+ * }, 1000);
72
+ */
73
+ partials: number[];
74
+ /**
75
+ * 'partialCount' offers an alternative way to set the number of used partials.
76
+ * When partialCount is 0, the maximum number of partials are used when representing
77
+ * the waveform using the periodicWave. When 'partials' is set, this value is
78
+ * not settable, but equals the length of the partials array. A square wave wave
79
+ * is composed of only odd harmonics up through the harmonic series. Partial count
80
+ * can limit the number of harmonics which are used to generate the waveform.
81
+ * @example
82
+ * const osc = new Tone.Oscillator("C3", "square").toDestination().start();
83
+ * osc.partialCount = 1;
84
+ * setInterval(() => {
85
+ * osc.partialCount++;
86
+ * console.log(osc.partialCount);
87
+ * }, 500);
88
+ */
89
+ partialCount?: number;
90
+ /**
91
+ * Returns an array of values which represents the waveform.
92
+ * @param length The length of the waveform to return
93
+ */
94
+ asArray(length: number): Promise<Float32Array>;
95
+ }
96
+ /**
97
+ * Render a segment of the oscillator to an offline context and return the results as an array
98
+ */
99
+ export declare function generateWaveform(instance: any, length: number): Promise<Float32Array>;
100
+ /**
101
+ * Oscillators with partials
102
+ */
103
+ declare type SineWithPartials = "sine1" | "sine2" | "sine3" | "sine4" | "sine5" | "sine6" | "sine7" | "sine8" | "sine9" | "sine10" | "sine11" | "sine12" | "sine13" | "sine14" | "sine15" | "sine16" | "sine17" | "sine18" | "sine19" | "sine20" | "sine21" | "sine22" | "sine23" | "sine24" | "sine25" | "sine26" | "sine27" | "sine28" | "sine29" | "sine30" | "sine31" | "sine32";
104
+ declare type SquareWithPartials = "square1" | "square2" | "square3" | "square4" | "square5" | "square6" | "square7" | "square8" | "square9" | "square10" | "square11" | "square12" | "square13" | "square14" | "square15" | "square16" | "square17" | "square18" | "square19" | "square20" | "square21" | "square22" | "square23" | "square24" | "square25" | "square26" | "square27" | "square28" | "square29" | "square30" | "square31" | "square32";
105
+ declare type SawtoothWithPartials = "sawtooth1" | "sawtooth2" | "sawtooth3" | "sawtooth4" | "sawtooth5" | "sawtooth6" | "sawtooth7" | "sawtooth8" | "sawtooth9" | "sawtooth10" | "sawtooth11" | "sawtooth12" | "sawtooth13" | "sawtooth14" | "sawtooth15" | "sawtooth16" | "sawtooth17" | "sawtooth18" | "sawtooth19" | "sawtooth20" | "sawtooth21" | "sawtooth22" | "sawtooth23" | "sawtooth24" | "sawtooth25" | "sawtooth26" | "sawtooth27" | "sawtooth28" | "sawtooth29" | "sawtooth30" | "sawtooth31" | "sawtooth32";
106
+ declare type TriangleWithPartials = "triangle1" | "triangle2" | "triangle3" | "triangle4" | "triangle5" | "triangle6" | "triangle7" | "triangle8" | "triangle9" | "triangle10" | "triangle11" | "triangle12" | "triangle13" | "triangle14" | "triangle15" | "triangle16" | "triangle17" | "triangle18" | "triangle19" | "triangle20" | "triangle21" | "triangle22" | "triangle23" | "triangle24" | "triangle25" | "triangle26" | "triangle27" | "triangle28" | "triangle29" | "triangle30" | "triangle31" | "triangle32";
107
+ declare type TypeWithPartials = SineWithPartials | SquareWithPartials | TriangleWithPartials | SawtoothWithPartials;
108
+ interface BaseOscillatorOptions extends SourceOptions {
109
+ frequency: Frequency;
110
+ detune: Cents;
111
+ phase: Degrees;
112
+ }
113
+ export declare type NonCustomOscillatorType = Exclude<OscillatorType, "custom">;
114
+ declare type AllNonCustomOscillatorType = NonCustomOscillatorType | TypeWithPartials;
115
+ export declare type ToneOscillatorType = AllNonCustomOscillatorType | "custom";
116
+ export declare type ExtendedToneOscillatorType = ToneOscillatorType | "pwm" | "pulse";
117
+ /**
118
+ * Oscillator Interfaces
119
+ */
120
+ interface ToneCustomOscillatorOptions extends BaseOscillatorOptions {
121
+ type: "custom";
122
+ partials: number[];
123
+ }
124
+ interface ToneTypeOscillatorOptions extends BaseOscillatorOptions {
125
+ type: NonCustomOscillatorType;
126
+ partialCount?: number;
127
+ }
128
+ interface TonePartialOscillatorOptions extends BaseOscillatorOptions {
129
+ type: TypeWithPartials;
130
+ }
131
+ export declare type ToneOscillatorConstructorOptions = ToneCustomOscillatorOptions | ToneTypeOscillatorOptions | TonePartialOscillatorOptions;
132
+ export interface ToneOscillatorOptions extends BaseOscillatorOptions {
133
+ type: ToneOscillatorType;
134
+ partialCount: number;
135
+ partials: number[];
136
+ }
137
+ /**
138
+ * FMOscillator Interface
139
+ */
140
+ interface FMBaseOscillatorOptions extends BaseOscillatorOptions {
141
+ harmonicity: Positive;
142
+ modulationIndex: Positive;
143
+ modulationType: AllNonCustomOscillatorType;
144
+ }
145
+ interface FMCustomOscillatorOptions extends FMBaseOscillatorOptions {
146
+ type: "custom";
147
+ partials: number[];
148
+ }
149
+ interface FMTypeOscillatorOptions extends FMBaseOscillatorOptions {
150
+ type: NonCustomOscillatorType;
151
+ partialsCount?: number;
152
+ }
153
+ interface FMPartialsOscillatorOptions extends FMBaseOscillatorOptions {
154
+ type: TypeWithPartials;
155
+ }
156
+ export declare type FMConstructorOptions = FMTypeOscillatorOptions | FMCustomOscillatorOptions | FMPartialsOscillatorOptions;
157
+ export interface FMOscillatorOptions extends ToneOscillatorOptions {
158
+ harmonicity: Positive;
159
+ modulationIndex: Positive;
160
+ modulationType: AllNonCustomOscillatorType;
161
+ }
162
+ /**
163
+ * AMOscillator Interface
164
+ */
165
+ interface AMBaseOscillatorOptions extends BaseOscillatorOptions {
166
+ harmonicity: Positive;
167
+ modulationType: AllNonCustomOscillatorType;
168
+ }
169
+ interface AMCustomOscillatorOptions extends AMBaseOscillatorOptions {
170
+ type: "custom";
171
+ partials: number[];
172
+ }
173
+ interface AMTypeOscillatorOptions extends AMBaseOscillatorOptions {
174
+ type: NonCustomOscillatorType;
175
+ partialsCount?: number;
176
+ }
177
+ interface AMPartialsOscillatorOptions extends AMBaseOscillatorOptions {
178
+ type: TypeWithPartials;
179
+ }
180
+ export declare type AMConstructorOptions = AMCustomOscillatorOptions | AMTypeOscillatorOptions | AMPartialsOscillatorOptions;
181
+ export interface AMOscillatorOptions extends ToneOscillatorOptions {
182
+ harmonicity: Positive;
183
+ modulationType: AllNonCustomOscillatorType;
184
+ }
185
+ /**
186
+ * FatOscillator
187
+ */
188
+ interface FatBaseOscillatorOptions extends BaseOscillatorOptions {
189
+ spread: Cents;
190
+ count: Positive;
191
+ }
192
+ interface FatCustomOscillatorOptions extends FatBaseOscillatorOptions {
193
+ type: "custom";
194
+ partials: number[];
195
+ }
196
+ interface FatTypeOscillatorOptions extends FatBaseOscillatorOptions {
197
+ type: NonCustomOscillatorType;
198
+ partialCount?: number;
199
+ }
200
+ interface FatPartialsOscillatorOptions extends FatBaseOscillatorOptions {
201
+ type: TypeWithPartials;
202
+ }
203
+ export declare type FatConstructorOptions = FatCustomOscillatorOptions | FatTypeOscillatorOptions | FatPartialsOscillatorOptions;
204
+ export interface FatOscillatorOptions extends ToneOscillatorOptions {
205
+ spread: Cents;
206
+ count: Positive;
207
+ }
208
+ /**
209
+ * Pulse Oscillator
210
+ */
211
+ export interface PulseOscillatorOptions extends BaseOscillatorOptions {
212
+ type: "pulse";
213
+ width: AudioRange;
214
+ }
215
+ /**
216
+ * PWM Oscillator
217
+ */
218
+ export interface PWMOscillatorOptions extends BaseOscillatorOptions {
219
+ type: "pwm";
220
+ modulationFrequency: Frequency;
221
+ }
222
+ /**
223
+ * OMNI OSCILLATOR
224
+ */
225
+ /**
226
+ * FM Oscillators with partials
227
+ */
228
+ declare type FMSineWithPartials = "fmsine1" | "fmsine2" | "fmsine3" | "fmsine4" | "fmsine5" | "fmsine6" | "fmsine7" | "fmsine8" | "fmsine9" | "fmsine10" | "fmsine11" | "fmsine12" | "fmsine13" | "fmsine14" | "fmsine15" | "fmsine16" | "fmsine17" | "fmsine18" | "fmsine19" | "fmsine20" | "fmsine21" | "fmsine22" | "fmsine23" | "fmsine24" | "fmsine25" | "fmsine26" | "fmsine27" | "fmsine28" | "fmsine29" | "fmsine30" | "fmsine31" | "fmsine32";
229
+ declare type FMSquareWithPartials = "fmsquare1" | "fmsquare2" | "fmsquare3" | "fmsquare4" | "fmsquare5" | "fmsquare6" | "fmsquare7" | "fmsquare8" | "fmsquare9" | "fmsquare10" | "fmsquare11" | "fmsquare12" | "fmsquare13" | "fmsquare14" | "fmsquare15" | "fmsquare16" | "fmsquare17" | "fmsquare18" | "fmsquare19" | "fmsquare20" | "fmsquare21" | "fmsquare22" | "fmsquare23" | "fmsquare24" | "fmsquare25" | "fmsquare26" | "fmsquare27" | "fmsquare28" | "fmsquare29" | "fmsquare30" | "fmsquare31" | "fmsquare32";
230
+ declare type FMSawtoothWithPartials = "fmsawtooth1" | "fmsawtooth2" | "fmsawtooth3" | "fmsawtooth4" | "fmsawtooth5" | "fmsawtooth6" | "fmsawtooth7" | "fmsawtooth8" | "fmsawtooth9" | "fmsawtooth10" | "fmsawtooth11" | "fmsawtooth12" | "fmsawtooth13" | "fmsawtooth14" | "fmsawtooth15" | "fmsawtooth16" | "fmsawtooth17" | "fmsawtooth18" | "fmsawtooth19" | "fmsawtooth20" | "fmsawtooth21" | "fmsawtooth22" | "fmsawtooth23" | "fmsawtooth24" | "fmsawtooth25" | "fmsawtooth26" | "fmsawtooth27" | "fmsawtooth28" | "fmsawtooth29" | "fmsawtooth30" | "fmsawtooth31" | "fmsawtooth32";
231
+ declare type FMTriangleWithPartials = "fmtriangle1" | "fmtriangle2" | "fmtriangle3" | "fmtriangle4" | "fmtriangle5" | "fmtriangle6" | "fmtriangle7" | "fmtriangle8" | "fmtriangle9" | "fmtriangle10" | "fmtriangle11" | "fmtriangle12" | "fmtriangle13" | "fmtriangle14" | "fmtriangle15" | "fmtriangle16" | "fmtriangle17" | "fmtriangle18" | "fmtriangle19" | "fmtriangle20" | "fmtriangle21" | "fmtriangle22" | "fmtriangle23" | "fmtriangle24" | "fmtriangle25" | "fmtriangle26" | "fmtriangle27" | "fmtriangle28" | "fmtriangle29" | "fmtriangle30" | "fmtriangle31" | "fmtriangle32";
232
+ declare type FMTypeWithPartials = FMSineWithPartials | FMSquareWithPartials | FMSawtoothWithPartials | FMTriangleWithPartials;
233
+ /**
234
+ * AM Oscillators with partials
235
+ */
236
+ declare type AMSineWithPartials = "amsine1" | "amsine2" | "amsine3" | "amsine4" | "amsine5" | "amsine6" | "amsine7" | "amsine8" | "amsine9" | "amsine10" | "amsine11" | "amsine12" | "amsine13" | "amsine14" | "amsine15" | "amsine16" | "amsine17" | "amsine18" | "amsine19" | "amsine20" | "amsine21" | "amsine22" | "amsine23" | "amsine24" | "amsine25" | "amsine26" | "amsine27" | "amsine28" | "amsine29" | "amsine30" | "amsine31" | "amsine32";
237
+ declare type AMSquareWithPartials = "amsquare1" | "amsquare2" | "amsquare3" | "amsquare4" | "amsquare5" | "amsquare6" | "amsquare7" | "amsquare8" | "amsquare9" | "amsquare10" | "amsquare11" | "amsquare12" | "amsquare13" | "amsquare14" | "amsquare15" | "amsquare16" | "amsquare17" | "amsquare18" | "amsquare19" | "amsquare20" | "amsquare21" | "amsquare22" | "amsquare23" | "amsquare24" | "amsquare25" | "amsquare26" | "amsquare27" | "amsquare28" | "amsquare29" | "amsquare30" | "amsquare31" | "amsquare32";
238
+ declare type AMSawtoothWithPartials = "amsawtooth1" | "amsawtooth2" | "amsawtooth3" | "amsawtooth4" | "amsawtooth5" | "amsawtooth6" | "amsawtooth7" | "amsawtooth8" | "amsawtooth9" | "amsawtooth10" | "amsawtooth11" | "amsawtooth12" | "amsawtooth13" | "amsawtooth14" | "amsawtooth15" | "amsawtooth16" | "amsawtooth17" | "amsawtooth18" | "amsawtooth19" | "amsawtooth20" | "amsawtooth21" | "amsawtooth22" | "amsawtooth23" | "amsawtooth24" | "amsawtooth25" | "amsawtooth26" | "amsawtooth27" | "amsawtooth28" | "amsawtooth29" | "amsawtooth30" | "amsawtooth31" | "amsawtooth32";
239
+ declare type AMTriangleWithPartials = "amtriangle1" | "amtriangle2" | "amtriangle3" | "amtriangle4" | "amtriangle5" | "amtriangle6" | "amtriangle7" | "amtriangle8" | "amtriangle9" | "amtriangle10" | "amtriangle11" | "amtriangle12" | "amtriangle13" | "amtriangle14" | "amtriangle15" | "amtriangle16" | "amtriangle17" | "amtriangle18" | "amtriangle19" | "amtriangle20" | "amtriangle21" | "amtriangle22" | "amtriangle23" | "amtriangle24" | "amtriangle25" | "amtriangle26" | "amtriangle27" | "amtriangle28" | "amtriangle29" | "amtriangle30" | "amtriangle31" | "amtriangle32";
240
+ declare type AMTypeWithPartials = AMSineWithPartials | AMSquareWithPartials | AMSawtoothWithPartials | AMTriangleWithPartials;
241
+ /**
242
+ * Fat Oscillators with partials
243
+ */
244
+ declare type FatSineWithPartials = "fatsine1" | "fatsine2" | "fatsine3" | "fatsine4" | "fatsine5" | "fatsine6" | "fatsine7" | "fatsine8" | "fatsine9" | "fatsine10" | "fatsine11" | "fatsine12" | "fatsine13" | "fatsine14" | "fatsine15" | "fatsine16" | "fatsine17" | "fatsine18" | "fatsine19" | "fatsine20" | "fatsine21" | "fatsine22" | "fatsine23" | "fatsine24" | "fatsine25" | "fatsine26" | "fatsine27" | "fatsine28" | "fatsine29" | "fatsine30" | "fatsine31" | "fatsine32";
245
+ declare type FatSquareWithPartials = "fatsquare1" | "fatsquare2" | "fatsquare3" | "fatsquare4" | "fatsquare5" | "fatsquare6" | "fatsquare7" | "fatsquare8" | "fatsquare9" | "fatsquare10" | "fatsquare11" | "fatsquare12" | "fatsquare13" | "fatsquare14" | "fatsquare15" | "fatsquare16" | "fatsquare17" | "fatsquare18" | "fatsquare19" | "fatsquare20" | "fatsquare21" | "fatsquare22" | "fatsquare23" | "fatsquare24" | "fatsquare25" | "fatsquare26" | "fatsquare27" | "fatsquare28" | "fatsquare29" | "fatsquare30" | "fatsquare31" | "fatsquare32";
246
+ declare type FatSawtoothWithPartials = "fatsawtooth1" | "fatsawtooth2" | "fatsawtooth3" | "fatsawtooth4" | "fatsawtooth5" | "fatsawtooth6" | "fatsawtooth7" | "fatsawtooth8" | "fatsawtooth9" | "fatsawtooth10" | "fatsawtooth11" | "fatsawtooth12" | "fatsawtooth13" | "fatsawtooth14" | "fatsawtooth15" | "fatsawtooth16" | "fatsawtooth17" | "fatsawtooth18" | "fatsawtooth19" | "fatsawtooth20" | "fatsawtooth21" | "fatsawtooth22" | "fatsawtooth23" | "fatsawtooth24" | "fatsawtooth25" | "fatsawtooth26" | "fatsawtooth27" | "fatsawtooth28" | "fatsawtooth29" | "fatsawtooth30" | "fatsawtooth31" | "fatsawtooth32";
247
+ declare type FatTriangleWithPartials = "fattriangle1" | "fattriangle2" | "fattriangle3" | "fattriangle4" | "fattriangle5" | "fattriangle6" | "fattriangle7" | "fattriangle8" | "fattriangle9" | "fattriangle10" | "fattriangle11" | "fattriangle12" | "fattriangle13" | "fattriangle14" | "fattriangle15" | "fattriangle16" | "fattriangle17" | "fattriangle18" | "fattriangle19" | "fattriangle20" | "fattriangle21" | "fattriangle22" | "fattriangle23" | "fattriangle24" | "fattriangle25" | "fattriangle26" | "fattriangle27" | "fattriangle28" | "fattriangle29" | "fattriangle30" | "fattriangle31" | "fattriangle32";
248
+ declare type FatTypeWithPartials = FatSineWithPartials | FatSquareWithPartials | FatSawtoothWithPartials | FatTriangleWithPartials;
249
+ /**
250
+ * Omni FM
251
+ */
252
+ interface OmniFMCustomOscillatorOptions extends FMBaseOscillatorOptions {
253
+ type: "fmcustom";
254
+ partials: number[];
255
+ }
256
+ interface OmniFMTypeOscillatorOptions extends FMBaseOscillatorOptions {
257
+ type: "fmsine" | "fmsquare" | "fmsawtooth" | "fmtriangle";
258
+ partialsCount?: number;
259
+ }
260
+ interface OmniFMPartialsOscillatorOptions extends FMBaseOscillatorOptions {
261
+ type: FMTypeWithPartials;
262
+ }
263
+ /**
264
+ * Omni AM
265
+ */
266
+ interface OmniAMCustomOscillatorOptions extends AMBaseOscillatorOptions {
267
+ type: "amcustom";
268
+ partials: number[];
269
+ }
270
+ interface OmniAMTypeOscillatorOptions extends AMBaseOscillatorOptions {
271
+ type: "amsine" | "amsquare" | "amsawtooth" | "amtriangle";
272
+ partialsCount?: number;
273
+ }
274
+ interface OmniAMPartialsOscillatorOptions extends AMBaseOscillatorOptions {
275
+ type: AMTypeWithPartials;
276
+ }
277
+ /**
278
+ * Omni Fat
279
+ */
280
+ interface OmniFatCustomOscillatorOptions extends FatBaseOscillatorOptions {
281
+ type: "fatcustom";
282
+ partials: number[];
283
+ }
284
+ interface OmniFatTypeOscillatorOptions extends FatBaseOscillatorOptions {
285
+ type: "fatsine" | "fatsquare" | "fatsawtooth" | "fattriangle";
286
+ partialsCount?: number;
287
+ }
288
+ interface OmniFatPartialsOscillatorOptions extends FatBaseOscillatorOptions {
289
+ type: FatTypeWithPartials;
290
+ }
291
+ export declare type OmniOscillatorType = "fatsine" | "fatsquare" | "fatsawtooth" | "fattriangle" | "fatcustom" | FatTypeWithPartials | "fmsine" | "fmsquare" | "fmsawtooth" | "fmtriangle" | "fmcustom" | FMTypeWithPartials | "amsine" | "amsquare" | "amsawtooth" | "amtriangle" | "amcustom" | AMTypeWithPartials | TypeWithPartials | OscillatorType | "pulse" | "pwm";
292
+ export declare type OmniOscillatorOptions = PulseOscillatorOptions | PWMOscillatorOptions | OmniFatCustomOscillatorOptions | OmniFatTypeOscillatorOptions | OmniFatPartialsOscillatorOptions | OmniFMCustomOscillatorOptions | OmniFMTypeOscillatorOptions | OmniFMPartialsOscillatorOptions | OmniAMCustomOscillatorOptions | OmniAMTypeOscillatorOptions | OmniAMPartialsOscillatorOptions | ToneOscillatorConstructorOptions;
293
+ declare type OmitSourceOptions<T extends BaseOscillatorOptions> = Omit<T, "frequency" | "detune" | "context">;
294
+ /**
295
+ * The settable options for the omni oscillator inside of the source which excludes certain attributes that are defined by the parent class
296
+ */
297
+ export declare type OmniOscillatorSynthOptions = OmitSourceOptions<PulseOscillatorOptions> | OmitSourceOptions<PWMOscillatorOptions> | OmitSourceOptions<OmniFatCustomOscillatorOptions> | OmitSourceOptions<OmniFatTypeOscillatorOptions> | OmitSourceOptions<OmniFatPartialsOscillatorOptions> | OmitSourceOptions<OmniFMCustomOscillatorOptions> | OmitSourceOptions<OmniFMTypeOscillatorOptions> | OmitSourceOptions<OmniFMPartialsOscillatorOptions> | OmitSourceOptions<OmniAMCustomOscillatorOptions> | OmitSourceOptions<OmniAMTypeOscillatorOptions> | OmitSourceOptions<OmniAMPartialsOscillatorOptions> | OmitSourceOptions<ToneCustomOscillatorOptions> | OmitSourceOptions<ToneTypeOscillatorOptions> | OmitSourceOptions<TonePartialOscillatorOptions>;
298
+ export {};
@@ -0,0 +1,22 @@
1
+ import { __awaiter } from "tslib";
2
+ import { OfflineContext } from "../../core/context/OfflineContext";
3
+ /**
4
+ * Render a segment of the oscillator to an offline context and return the results as an array
5
+ */
6
+ export function generateWaveform(instance, length) {
7
+ return __awaiter(this, void 0, void 0, function* () {
8
+ const duration = length / instance.context.sampleRate;
9
+ const context = new OfflineContext(1, duration, instance.context.sampleRate);
10
+ const clone = new instance.constructor(Object.assign(instance.get(), {
11
+ // should do 2 iterations
12
+ frequency: 2 / duration,
13
+ // zero out the detune
14
+ detune: 0,
15
+ context
16
+ })).toDestination();
17
+ clone.start(0);
18
+ const buffer = yield context.render();
19
+ return buffer.getChannelData(0);
20
+ });
21
+ }
22
+ //# sourceMappingURL=OscillatorInterface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OscillatorInterface.js","sourceRoot":"","sources":["../../../../Tone/source/oscillator/OscillatorInterface.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAsGnE;;GAEG;AACH,MAAM,UAAgB,gBAAgB,CAAC,QAAa,EAAE,MAAc;;QACnE,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7E,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE;YACpE,yBAAyB;YACzB,SAAS,EAAE,CAAC,GAAG,QAAQ;YACvB,sBAAsB;YACtB,MAAM,EAAE,CAAC;YACT,OAAO;SACP,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACpB,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACf,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;CAAA"}
@@ -0,0 +1,94 @@
1
+ import { Degrees, Frequency, Seconds, Time } from "../../core/type/Units";
2
+ import { Signal } from "../../signal/Signal";
3
+ import { Source } from "../Source";
4
+ import { PWMOscillatorOptions, ToneOscillatorInterface } from "./OscillatorInterface";
5
+ export { PWMOscillatorOptions } from "./OscillatorInterface";
6
+ /**
7
+ * PWMOscillator modulates the width of a Tone.PulseOscillator
8
+ * at the modulationFrequency. This has the effect of continuously
9
+ * changing the timbre of the oscillator by altering the harmonics
10
+ * generated.
11
+ * @example
12
+ * return Tone.Offline(() => {
13
+ * const pwm = new Tone.PWMOscillator(60, 0.3).toDestination().start();
14
+ * }, 0.1, 1);
15
+ * @category Source
16
+ */
17
+ export declare class PWMOscillator extends Source<PWMOscillatorOptions> implements ToneOscillatorInterface {
18
+ readonly name: string;
19
+ readonly sourceType = "pwm";
20
+ /**
21
+ * the pulse oscillator
22
+ */
23
+ private _pulse;
24
+ /**
25
+ * the modulator
26
+ */
27
+ private _modulator;
28
+ /**
29
+ * Scale the oscillator so it doesn't go silent
30
+ * at the extreme values.
31
+ */
32
+ private _scale;
33
+ /**
34
+ * The frequency control.
35
+ */
36
+ readonly frequency: Signal<"frequency">;
37
+ /**
38
+ * The detune of the oscillator.
39
+ */
40
+ readonly detune: Signal<"cents">;
41
+ /**
42
+ * The width modulation rate of the oscillator.
43
+ * @example
44
+ * return Tone.Offline(() => {
45
+ * const osc = new Tone.PWMOscillator(20, 2).toDestination().start();
46
+ * }, 0.1, 1);
47
+ */
48
+ readonly modulationFrequency: Signal<"frequency">;
49
+ /**
50
+ * @param {Frequency} frequency The starting frequency of the oscillator.
51
+ * @param {Frequency} modulationFrequency The modulation frequency of the width of the pulse.
52
+ */
53
+ constructor(frequency?: Frequency, modulationFrequency?: Frequency);
54
+ constructor(options?: Partial<PWMOscillatorOptions>);
55
+ static getDefaults(): PWMOscillatorOptions;
56
+ /**
57
+ * start the oscillator
58
+ */
59
+ protected _start(time: Time): void;
60
+ /**
61
+ * stop the oscillator
62
+ */
63
+ protected _stop(time: Time): void;
64
+ /**
65
+ * restart the oscillator
66
+ */
67
+ protected _restart(time: Seconds): void;
68
+ /**
69
+ * The type of the oscillator. Always returns "pwm".
70
+ */
71
+ get type(): "pwm";
72
+ /**
73
+ * The baseType of the oscillator. Always returns "pwm".
74
+ */
75
+ get baseType(): "pwm";
76
+ /**
77
+ * The partials of the waveform. Cannot set partials for this waveform type
78
+ */
79
+ get partials(): number[];
80
+ /**
81
+ * No partials for this waveform type.
82
+ */
83
+ get partialCount(): number;
84
+ /**
85
+ * The phase of the oscillator in degrees.
86
+ */
87
+ get phase(): Degrees;
88
+ set phase(phase: Degrees);
89
+ asArray(length?: number): Promise<Float32Array>;
90
+ /**
91
+ * Clean up.
92
+ */
93
+ dispose(): this;
94
+ }
@@ -0,0 +1,136 @@
1
+ import { __awaiter } from "tslib";
2
+ import { optionsFromArguments } from "../../core/util/Defaults";
3
+ import { readOnly } from "../../core/util/Interface";
4
+ import { Multiply } from "../../signal/Multiply";
5
+ import { Source } from "../Source";
6
+ import { Oscillator } from "./Oscillator";
7
+ import { generateWaveform } from "./OscillatorInterface";
8
+ import { PulseOscillator } from "./PulseOscillator";
9
+ /**
10
+ * PWMOscillator modulates the width of a Tone.PulseOscillator
11
+ * at the modulationFrequency. This has the effect of continuously
12
+ * changing the timbre of the oscillator by altering the harmonics
13
+ * generated.
14
+ * @example
15
+ * return Tone.Offline(() => {
16
+ * const pwm = new Tone.PWMOscillator(60, 0.3).toDestination().start();
17
+ * }, 0.1, 1);
18
+ * @category Source
19
+ */
20
+ export class PWMOscillator extends Source {
21
+ constructor() {
22
+ super(optionsFromArguments(PWMOscillator.getDefaults(), arguments, ["frequency", "modulationFrequency"]));
23
+ this.name = "PWMOscillator";
24
+ this.sourceType = "pwm";
25
+ /**
26
+ * Scale the oscillator so it doesn't go silent
27
+ * at the extreme values.
28
+ */
29
+ this._scale = new Multiply({
30
+ context: this.context,
31
+ value: 2,
32
+ });
33
+ const options = optionsFromArguments(PWMOscillator.getDefaults(), arguments, ["frequency", "modulationFrequency"]);
34
+ this._pulse = new PulseOscillator({
35
+ context: this.context,
36
+ frequency: options.modulationFrequency,
37
+ });
38
+ // change the pulse oscillator type
39
+ this._pulse.carrierType = "sine";
40
+ this.modulationFrequency = this._pulse.frequency;
41
+ this._modulator = new Oscillator({
42
+ context: this.context,
43
+ detune: options.detune,
44
+ frequency: options.frequency,
45
+ onstop: () => this.onstop(this),
46
+ phase: options.phase,
47
+ });
48
+ this.frequency = this._modulator.frequency;
49
+ this.detune = this._modulator.detune;
50
+ // connections
51
+ this._modulator.chain(this._scale, this._pulse.width);
52
+ this._pulse.connect(this.output);
53
+ readOnly(this, ["modulationFrequency", "frequency", "detune"]);
54
+ }
55
+ static getDefaults() {
56
+ return Object.assign(Source.getDefaults(), {
57
+ detune: 0,
58
+ frequency: 440,
59
+ modulationFrequency: 0.4,
60
+ phase: 0,
61
+ type: "pwm",
62
+ });
63
+ }
64
+ /**
65
+ * start the oscillator
66
+ */
67
+ _start(time) {
68
+ time = this.toSeconds(time);
69
+ this._modulator.start(time);
70
+ this._pulse.start(time);
71
+ }
72
+ /**
73
+ * stop the oscillator
74
+ */
75
+ _stop(time) {
76
+ time = this.toSeconds(time);
77
+ this._modulator.stop(time);
78
+ this._pulse.stop(time);
79
+ }
80
+ /**
81
+ * restart the oscillator
82
+ */
83
+ _restart(time) {
84
+ this._modulator.restart(time);
85
+ this._pulse.restart(time);
86
+ }
87
+ /**
88
+ * The type of the oscillator. Always returns "pwm".
89
+ */
90
+ get type() {
91
+ return "pwm";
92
+ }
93
+ /**
94
+ * The baseType of the oscillator. Always returns "pwm".
95
+ */
96
+ get baseType() {
97
+ return "pwm";
98
+ }
99
+ /**
100
+ * The partials of the waveform. Cannot set partials for this waveform type
101
+ */
102
+ get partials() {
103
+ return [];
104
+ }
105
+ /**
106
+ * No partials for this waveform type.
107
+ */
108
+ get partialCount() {
109
+ return 0;
110
+ }
111
+ /**
112
+ * The phase of the oscillator in degrees.
113
+ */
114
+ get phase() {
115
+ return this._modulator.phase;
116
+ }
117
+ set phase(phase) {
118
+ this._modulator.phase = phase;
119
+ }
120
+ asArray(length = 1024) {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ return generateWaveform(this, length);
123
+ });
124
+ }
125
+ /**
126
+ * Clean up.
127
+ */
128
+ dispose() {
129
+ super.dispose();
130
+ this._pulse.dispose();
131
+ this._scale.dispose();
132
+ this._modulator.dispose();
133
+ return this;
134
+ }
135
+ }
136
+ //# sourceMappingURL=PWMOscillator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PWMOscillator.js","sourceRoot":"","sources":["../../../../Tone/source/oscillator/PWMOscillator.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAiD,MAAM,uBAAuB,CAAC;AACxG,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD;;;;;;;;;;GAUG;AACH,MAAM,OAAO,aAAc,SAAQ,MAA4B;IAiD9D;QACC,KAAK,CAAC,oBAAoB,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAhDlG,SAAI,GAAW,eAAe,CAAC;QAE/B,eAAU,GAAG,KAAK,CAAC;QAW5B;;;WAGG;QACK,WAAM,GAAa,IAAI,QAAQ,CAAC;YACvC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,CAAC;SACR,CAAC,CAAC;QA6BF,MAAM,OAAO,GAAG,oBAAoB,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC;QAEnH,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,OAAO,CAAC,mBAAmB;SACtC,CAAC,CAAC;QACH,mCAAmC;QACnC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;QAEjC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAEjD,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAErC,cAAc;QACd,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,QAAQ,CAAC,IAAI,EAAE,CAAC,qBAAqB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,WAAW;QACjB,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;YAC1C,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,GAAG;YACd,mBAAmB,EAAE,GAAG;YACxB,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,KAAc;SACpB,CAAC,CAAC;IACJ,CAAC;IACD;;OAEG;IACO,MAAM,CAAC,IAAU;QAC1B,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,IAAU;QACzB,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED;;OAEG;IACO,QAAQ,CAAC,IAAa;QAC/B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACP,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACX,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACX,OAAO,EAAE,CAAC;IACX,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACf,OAAO,CAAC,CAAC;IACV,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IAC9B,CAAC;IACD,IAAI,KAAK,CAAC,KAAc;QACvB,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;IAC/B,CAAC;IAEK,OAAO,CAAC,MAAM,GAAG,IAAI;;YAC1B,OAAO,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;KAAA;IAED;;OAEG;IACH,OAAO;QACN,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}