* web: move DomApplier, GlobalSnapshotManager, JsMicrotasksDispatcher to dedicated module
This will allow reusing them in test-utils module.
* web: move TestUtils.kt to a dedicated module
Use test-utils module in web-core as a dependency
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: mark internal and experimental api in web-widgets
* web: mark internal and experimental api in web-widgets
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
the build from master contains an important fix for using compose in kotlin/js (composables in constructors).
following (default) builds will include the fix, so normal version can be used again.
* Minimal documentation for AttrsBuilder
* Minimal documentation for the StyleBuilder
* Add documentation for AttrsBuilder::attr
* Update doc for AtrsBuilder
* Minimal documentation for EventsListenerBuilder
* Documentation for AttrsBuilder::ref (copied from tutorial)
* Documentation for AttrsBuilder::prop
* Add docs for ElementScope and dom specific effects
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
* web: add a tutorial for DomSideEffect
* web: add a tutorial for DomSideEffect (edits)
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>