* web (breaking change): Make CSSSelector constructors internal and move constant selectors instances to `SelectorsScope`
* web (breaking change): Make CSSSelectors classes internal
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
* web (breaking change): move top level functions for css selectors to new SelectorsScope
These functions don't need to be on top level because their purpose is to be used within StyleSheet
* web: update CSSSelector plus operator
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
* web: make TextInput manage its view state
* web: make TextInput manage its view state
* web: make TextInput manage its view state
* web: add tests for controlled TextArea and RadioButton
* Add more tests for controlled and uncontrolled inputs
* Add more tests for controlled and uncontrolled inputs
* Update date input tests
* Update time input tests
* Update date input tests
* Add docs for controlled and unctontrolled input modes
* web: improve docs for controlled inputs
* web: make benchmark add1kItems run only 2 times instead of 3 (to prevent it from throwing timeout)
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
* web: Use SyntheticMouseEvent as a type for a value in mouse events listeners
* add tests for mouse event
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
* web: Add more tests for the event handlers
* web: Inputs refactoring (wip)
* web: Add `Options` for `addEventListener`
* web: Add basic methods and properties to the SyntheticInputEvent to align it with `org.w3c.dom.events.Event`
* web: Add a test for `capture = true` Event Listener Option
* web: Update PR to make contain only relevant changes + add specific functions for Inputs
* web: Update PR to align with master after rebase
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
* Remove atrributes completely and reapply everything
Rather than keeping map with attributes applied
* Don't allow nullable signatures while calling attr