v0.9.9
Pre-release
Pre-release
I'm now starting to use Kobweb more and more in personal projects. This update is a mish-mash of fixes I ran into needing while doing so.
Note: (Breaking change) Some breakpoint code (such as rememberBreakpoint
) has been refactored under a subpackage, which may cause compile errors in some projects (although it's not expected that this feature is heavily used at this time)
Frontend
- Fixed an issue with
Box
es with more than one child not stacking as expected - Modifier extensions
- Outline support
- Transform support
placeContent
support
- Allow chaining ComponentVariants (meaning you can define a base style and apply multiple variants to it, not just a single one)
- (Breaking change) Rename
addBaseVariant
toaddVariantBase
.- The original format was probably due to me being tired at the time. My hope is that most people aren't using this feature yet and many won't notice, but you can simply rename this if you're seeing errors here.
- Add optional
elementScope
parameter to all Kobweb / Silk widgets.- This can allow a user to get access to the underlying element reference, which also allows using Compose for Web side effects
rememberPageContext
crashes with a more descriptive error message now if used outside of a@Page
context- Fixed the implementation of the various
DisplayIf
modifers (DisplayIfSm
,DisplayIfMd
, etc.), which was previously and unintentionally breaking elements that themselves needed to set thedisplay
style (like, uh,Rows
,Columns
, andBoxes
.... whoooops....) - Add support for
AppGlobals
, a way to register global strings from your build.gradle file that can be seen from your Kobweb app- This is good for letting your build process set a version, for example.
- Add helper
thenIf
andthenUnless
helper extensions forModifier
andComponentVariant
classes, which makes it way easier to chain them conditionally - Remove the ugly and unecessary outline from showing up when setting keyboard focus on a
Button
widget
Gradle
- Refactored code allowing the Kobweb Applicaiton Plugin to no longer prevent configuration caching from working