Commit graph

2137 commits

Author SHA1 Message Date
Yotam Mann
97002d776f using already computed fadeOut time 2019-07-24 19:30:31 -04:00
Yotam Mann
fa95e74ab9 removing the disconnect onended
causes glitches and clicks. might be because the frequency.disconnect is not fully implemented
2019-07-24 19:28:39 -04:00
Yotam Mann
934ab5d77f clearer error messages
catch the error before it becomes "the value is non-finite". show the original value
2019-07-24 09:30:58 -04:00
Yotam Mann
6362f00e58 checking both time and value arguments 2019-07-23 17:46:13 -04:00
Yotam Mann
6cb6472f46 if object key is 'value' just copy it over
deep merging was causing some errors with ToneEvent
2019-07-23 17:09:11 -04:00
Yotam Mann
3c0953b3a4 adding more detailed error handling
addresses #515
2019-07-23 17:08:48 -04:00
Yotam Mann
e9f68103de need to fix this, skipping test for now
the issue is that merge creates a new object
2019-07-23 15:18:23 -04:00
Yotam Mann
659e5e62ea converting Part to ts 2019-07-23 15:17:45 -04:00
Yotam Mann
61a02e6633 toTicks can take a class as well 2019-07-23 15:17:11 -04:00
Yotam Mann
1c8210fb25 using Set instead of array 2019-07-23 13:47:36 -04:00
Yotam Mann
53df0f3caa differentiating between BasicPlaybackState and PlaybackState
PlaybackState includes "paused"
2019-07-23 13:43:35 -04:00
Yotam Mann
9306e5188c adding additional option to StateTimeline.add
enables more strict typing of returned object
2019-07-23 13:43:11 -04:00
Yotam Mann
f6f2e78574 convert Event to typescript 2019-07-23 13:15:04 -04:00
Yotam Mann
2978244fd5 interval can also be a time class 2019-07-23 13:12:27 -04:00
Yotam Mann
027bffc10e check if the attribute exists and is not falsy 2019-07-23 13:11:01 -04:00
Yotam Mann
ffad8c1475 confirm that an instance was disposed
implement Tone.prototype.dispose which flips a boolean wasDisposed.
2019-07-23 12:11:57 -04:00
Yotam Mann
07bd1d6867 updating docs 2019-07-23 11:48:26 -04:00
Yotam Mann
23bbbcb887 moving onended functionality to OneShotSource class 2019-07-23 11:47:32 -04:00
Yotam Mann
126b4a3226 updating typing 2019-07-23 11:46:08 -04:00
Yotam Mann
cd968292d4 correcting docs 2019-07-23 11:28:33 -04:00
Yotam Mann
7e65d90ec9 dont remove primitive types from 'get' response 2019-07-23 11:28:22 -04:00
Yotam Mann
c31aa5fa77 converting Player to ts 2019-07-23 11:27:55 -04:00
Yotam Mann
1f4fcbf996 removing need for time to be clamped to currentTime
when player is synced, this is necessary
2019-07-23 11:27:43 -04:00
Yotam Mann
5a8ee37c77 adding implicit end attribute to StateTimeline
used when the ending is impilcitly scheduled as in Player
2019-07-23 11:26:41 -04:00
Yotam Mann
a820e5bee5 implementing debug 2019-07-23 11:24:38 -04:00
Yotam Mann
63cce0d48a converting Sampler to ts 2019-07-22 16:18:16 -04:00
Yotam Mann
622b547e32 time is optional in toSeconds 2019-07-22 16:18:01 -04:00
Yotam Mann
5a2e6ee714 moved some setup to parent class 2019-07-22 16:17:49 -04:00
Yotam Mann
8fcff92e39 time is optional 2019-07-22 16:17:03 -04:00
Yotam Mann
4540533727 one shot source sets up fadeIn/Out and curve 2019-07-22 16:16:54 -04:00
Yotam Mann
329ef50e45 Time is optional 2019-07-22 16:16:29 -04:00
Yotam Mann
9f14b53d26 moving input definition to Instrument 2019-07-22 16:16:13 -04:00
Yotam Mann
9e8ffa3dd0 optionsFromArguments can accept an object
uses 4th parameter to know which options should be an object
2019-07-22 16:15:55 -04:00
Yotam Mann
ca43351e92 convert ToneAudioBuffers to ts 2019-07-22 12:29:50 -04:00
Yotam Mann
cd0ab3ae10 only relative paths 2019-07-19 13:26:38 -04:00
Yotam Mann
45622f1418 omit context from child classes 2019-07-19 13:21:02 -04:00
Yotam Mann
cae39e7435 fixing test
something was accidentally commented out
2019-07-19 13:20:32 -04:00
Yotam Mann
6e8cb73ca3 type coersion 2019-07-19 12:32:55 -04:00
Yotam Mann
c56798ebf4 takes a string array instead of object 2019-07-19 12:32:42 -04:00
Yotam Mann
b9dd8440b7 using OscillatorInterface to define all the oscilator properties 2019-07-19 12:32:17 -04:00
Yotam Mann
f8d845cede return from 'get' should be serializable 2019-07-19 11:09:28 -04:00
Yotam Mann
60736135f3 updating docs 2019-07-18 14:57:13 -04:00
Yotam Mann
e2d505c6fd only relative paths 2019-07-18 14:54:20 -04:00
Yotam Mann
b3ab8e88ff exporting instruments 2019-07-18 14:48:02 -04:00
Yotam Mann
f69666fe07 converting Synth to typescript 2019-07-18 14:07:25 -04:00
Yotam Mann
9306f9e797 RecursivePartial is useful for nested properties 2019-07-18 14:06:53 -04:00
Yotam Mann
c39dacf22d adding name prop 2019-07-18 14:06:32 -04:00
Yotam Mann
72d4b80f97 fixing typo 2019-07-18 14:06:20 -04:00
Yotam Mann
3efd706458 omiting defaults from object
useful for removing redundant properties in get/set
2019-07-18 14:06:10 -04:00
Yotam Mann
8b501cca7e only using the attributes which are available in getDefaults() 2019-07-18 14:05:42 -04:00
Yotam Mann
b36d57d5d0 deriving OmniOscillatorOptions from ConditionalOptions 2019-07-18 14:04:21 -04:00
Yotam Mann
7f47b50917 converting AmplitudeEnvelope to ts 2019-07-18 11:24:32 -04:00
Yotam Mann
6f040c3d2c checking that harmonicity is undefined when not set to AM or FM osc 2019-07-18 11:24:20 -04:00
Yotam Mann
c1ade5494a using connectSignal method internally 2019-07-18 11:23:45 -04:00
Yotam Mann
11a353a117 linting 2019-07-18 10:21:42 -04:00
Yotam Mann
ea21746bc3 removing console 2019-07-18 10:21:34 -04:00
Yotam Mann
9d131effb1 converting Envelope to ts 2019-07-18 10:21:27 -04:00
Yotam Mann
698dee1e73 changing <pre> tags to markdown 2019-07-17 17:40:47 -04:00
Yotam Mann
71e9176eba moving common implementation to one spot 2019-07-17 13:46:48 -04:00
Yotam Mann
5d36e4a523 only use relative imports 2019-07-17 13:12:21 -04:00
Yotam Mann
70e945396d adding Omni to source export 2019-07-17 12:56:44 -04:00
Yotam Mann
0101edf173 converting OmniOscillator to ts 2019-07-17 12:55:34 -04:00
Yotam Mann
e7b898eb1a souce has 1 output 2019-07-17 12:54:42 -04:00
Yotam Mann
11aed433d7 don't try to set an undefined attribute 2019-07-17 12:54:25 -04:00
Yotam Mann
58bf79a872 increasing comparison threshold 2019-07-16 17:15:55 -04:00
Yotam Mann
7c6a873121 adding oscillator types 2019-07-16 17:10:47 -04:00
Yotam Mann
38d1197359 converting PWMOscillator to typescript 2019-07-16 17:10:07 -04:00
Yotam Mann
6bd5a0d45b updating docs 2019-07-16 17:09:54 -04:00
Yotam Mann
ad7d928be8 adding some doc image 2019-07-16 16:47:07 -04:00
Yotam Mann
f13336bcaa converting FatOscillator to ts 2019-07-16 16:30:09 -04:00
Yotam Mann
8c3c2fe9d1 removing old type classes 2019-07-16 16:05:58 -04:00
Yotam Mann
b339dee564 converting FMOscillator to typescript 2019-07-16 16:05:48 -04:00
Yotam Mann
e2ede8e8cc marking signal value to readonly 2019-07-16 16:05:38 -04:00
Yotam Mann
e0a83ef8cd removing old js files 2019-07-16 15:44:43 -04:00
Yotam Mann
45a254f7e6 setting unused method to abstract
should be implemented by extending classes
2019-07-16 15:44:36 -04:00
Yotam Mann
7f17209530 tear down created classes on context close 2019-07-16 15:41:59 -04:00
Yotam Mann
4c4db4b614 fully converting all Time classes to ts 2019-07-16 15:29:34 -04:00
Yotam Mann
4e11f13336 adding midi to frequency conversion 2019-07-16 09:32:36 -04:00
Yotam Mann
1277564f2c making oscillator props readonly 2019-07-16 09:32:22 -04:00
Yotam Mann
47d991f09c fixing type error
introduced while testing some things out
2019-07-15 15:39:47 -04:00
Yotam Mann
990c0f56ed using type instead of string types 2019-07-15 15:37:25 -04:00
Yotam Mann
d0b73ded77 WaveShaper doesn't need to use SignalOptions
uses ToneAudioNodeOptions instead
2019-07-15 15:10:11 -04:00
Yotam Mann
f553fc3b63 surrounding diagram with pre tags 2019-07-15 12:33:40 -04:00
Yotam Mann
7c2e675c52 fixing typo and allowing for extended oscillator types 2019-07-15 12:33:31 -04:00
Yotam Mann
3b22baea67 updating doc diagram 2019-07-15 12:32:48 -04:00
Yotam Mann
4fc334c9c7 converting PulseOscillator to typescript 2019-07-15 12:22:55 -04:00
Yotam Mann
ada1423bd4 Merge branch 'dev' into typescript 2019-07-15 09:46:22 -04:00
Yotam Mann
ab9b363965 converting AMOscillator to ts 2019-07-15 09:46:10 -04:00
Yotam Mann
b8f0d1d576 exporting OscillatorInterface
to make sure that all oscillators have the same interface
2019-07-15 09:45:56 -04:00
Yotam Mann
1ba36bde6a connectSeries uses the ToneAudioNode's connect method
this is necessary when connecting from a signal since there is additional logic in it's connect method
2019-07-15 09:45:05 -04:00
Yotam Mann
80e5da5bd4 making paths relative 2019-07-11 17:33:04 -04:00
Yotam Mann
7388548e9d also set signal value for AudioParamsq
accidentally removed this
2019-07-11 17:32:57 -04:00
Yotam Mann
e328619fb4 converting Abs to ts 2019-07-11 17:20:11 -04:00
Yotam Mann
95bc7bed7e linting 2019-07-11 17:15:00 -04:00
Yotam Mann
71729c0827 Signal doesn't overwrite the output if not set to 'override' 2019-07-11 17:14:23 -04:00
Yotam Mann
d6143a0e60 adding new base class for some signals
replaces SignalBase
2019-07-11 17:13:58 -04:00
Yotam Mann
182d1040db converting WaveShaper to ts 2019-07-11 17:13:43 -04:00
Yotam Mann
117b4667d4 fixing test 2019-07-11 17:13:11 -04:00
Yotam Mann
d5014d36a8 convert to ts 2019-07-11 17:11:29 -04:00
Yotam Mann
8e551ff755 convert to ts 2019-07-11 17:11:17 -04:00