Default State Reducer

πŸ‘¨β€πŸ’Ό It's a pretty simple, yet powerful solution. Inversion of control with good defaults allows our component users to have a lot more power and will reduce the amount of feature requests you get for these components by a lot, I promise.
πŸ¦‰ An important thing to note is that once you do this your internal state becomes a part of your public API. So if you change the name of an internal state variable, then that will be a breaking change for your users. So be careful with this.
πŸ•· With great power comes great responsibility.