- Add
Signal#bufferWithmethod - Fix
Signal.zipmethod - Add window combinator
- Add zipLatestWith combinator
- Fix
Signal.mergefunction - Only complete
zipWithsignal after all signals have completed - Allow
withCallbackto handle an unmount function - Fix concat combinator
- Fix take combinator
- Fix takeWhile combinator
- Fix
Signal.concatfunction - Add typescript types
- Add
Signal#tapmethod
- Refactor combinators to fix cyclical dependency warnings
- Add dev dependency on Fkit
- Export classes in separate files to help with bundle sizes
- Rename
value->nextto match the observable proposal - Remove runtime dependency on Fkit
- Mark subscriptions as closed when an observer unsubscribes
- Allow
Signal.ofto take multiple arguments - Don't allow functions which take multiple arguments to an array (use the array spread syntax instead)
- Rename fromArray -> from
- Fix peer dependencies for bulb-input
- Add
Busclass
- Add
Signal#allmethod - Add
Signal#anymethod
- Fix issue with array arguments passed to
startWith,endWith,append, andprependmethods
- Add
Signal#startWithandSignal#endWithmethods
- Remove
Signal.sequentialstatic method - Change
Signal.periodicto emit sequential numbers - Add
Signal#firstmethod - Add
Signal#lastmethod - Add index to
map,filter,fold, andscanmethods - Add
Signal.mergestatic method - Add
Signal.zipstatic method - Add
Signal.zipWithstatic method - Remove combinator functions from exports
- Extract keyboard and mouse signals into
bulb-inputpackage
- Add
applyfunction - Add
Signal.throwErrorstatic method - Add
catchErrorfunction - Add
Signal#catchErrormethod
- Add
bufferfunction - Add
Signal#buffermethod
- Add
switchMapfunction - Add
Signal#switchMapmethod - Fix an issue where
concatMapwouldn't wait for signals to complete - Add missing combinators to exports
- Add
concatfunction - Add
Signal#concatmethod - Add
alwaysfunction - Add
cyclefunction - Add
sequentialfunction - Add
prependfunction - Add
appendfunction - Add
Signal#prependmethod - Add
Signal#appendmethod - Fix an issue where exceptions were being swallowed when mounting
- Add
takeUntilfunction - Add
dropUntilfunction - Add
Signal#takeUntilmethod - Add
Signal#dropUntilmethod - Reorder the arguments for
Signal#sampleandSignal#hold
- Add
Signal#cyclemethod - Add
Signal#sequentialmethod - Deprecate
Signal.sequentialmethod (useSignal.periodic(1000).sequential([1, 2, 3])instead) - Remove
setTimeoutinSignal.fromArraymethod - Remove
setTimeoutinscanfunction - Unmount signals when they have completed
- Add
takefunction - Add
takeWhilefunction - Add
dropfunction - Add
dropWhilefunction - Add
Signal#takemethod - Add
Signal#takeWhilemethod - Add
Signal#dropmethod - Add
Signal#dropWhilemethod
- Rename
emit.next->emit.value - Move keyboard and mouse methods to separate functions (e.g.
keyboardKeys,keyboardState,mouseButtons,mousePosition, andmouseState) - Extract all functions to separate files
- Change to documentation.js for API docs
- Switch to jest for tests
- Update readme
- Fix issue where some signals weren't being unmounted properly
- Fix issue with initial value scheduling
- Add watch task
- Fix param documentation for curried functions
- Update readme
- Add book search example
- Fix an issue with Signal.fromEvent
- Update documentation
- Rename bulb.js -> index.js
- Rename combinator -> combinators
- Update rollup to 0.53.2
- Update jsdoc-react to 1.0.0
- Update fkit to 1.1.0
- Update mocha to 4.1.0
- Update documentation
- Refactor keyboard and mouse modules
- Add Signal#throttle and Signal#debounce
- Add throttle function
- Add debounce function
- Curry the combinator functions
- Extract combinators into modules
- Update zipWith function to buffer values
- Rename license to licence
- Remove sampleWith and holdWith functions
- Ensure signal combinators are unsubscribed
- Add Signal#encode
- Add Signal#switch
- Allow Signal#merge to receieve signals as an array
- Update copyright in license
- Don't export default from main module
- Rename observer -> emit
- Refactor subscribe calls to use object reset spread
- Fix rollup packaging
- Allow merge to take many arguments
- Refactor stateMachine to take observer argument
- Store keyboard state in a set
- Add Signal#startWith function
- Don't generate duplicate keyboard events
- Handle no transform function result in Signal#stateMachine
- Add Signal#stateMachine function
- First cut of the API
- Initial import