You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+21Lines changed: 21 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,26 @@
1
1
# Change log
2
2
3
+
## v0.5.0 / 2024-12-05
4
+
5
+
Important changes:
6
+
7
+
* This library is renamed from **Compose Multiplatform Material** to **Compose Multiplatform HTML Unified** which better describes its purpose since this release. The **Maven coordinates** have changed accordingly. Please adapt to these changes following the updated README.md.
8
+
* replace the terms "Androidx"/"androidx"/"AndroidxCommon"/"androidxCommon" with Compose UI / "ComposeUi" / "composeUi" at appropriate places, both in docs and in code
9
+
10
+
This introduces some breaking changes. Please adapt accordingly. We are sorry for the inconvenience.
11
+
12
+
Functional change:
13
+
14
+
* delegate `Spacer` just to `DivBox` on JS DOM because the Kobweb `Spacer` has a different semantic from the Compose UI one
15
+
16
+
Miscellaneous changes:
17
+
18
+
* bump Kotlin to 2.1.0, Compose Multiplatform to 1.7.1, and Kobweb to 0.20.0
19
+
* add a "side by side" demo hosted at <https://huanshankeji.github.io/compose-multiplatform-html-unified/>
20
+
* add CODE_OF_CONDUCT.md and CONTRIBUTING.md
21
+
* use the Kotlin binary compatibility validator
22
+
* run IntelliJ IDEA Code Cleanup and Reformat Code for the whole project
23
+
3
24
## v0.4.0 / 2024-10-24
4
25
5
26
* fix a bug that a dependent project might crash on Android and add the Android target explicitly for all modules
Copy file name to clipboardExpand all lines: README.md
+3-6Lines changed: 3 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -132,6 +132,7 @@ The `com.huanshankeji.compose.material.icons.Icon` class delegates to both kinds
132
132
133
133
-`outerBorder`
134
134
-`roundedCornerBackgroundAndOuterBorder`
135
+
-`outerPadding`, `innerPadding`
135
136
136
137
### Other APIs
137
138
@@ -143,15 +144,11 @@ The `com.huanshankeji.compose.material.icons.Icon` class delegates to both kinds
143
144
144
145
### ViewModel
145
146
146
-
The ViewModel module currently supports a small subset of the Compose ViewModel APIs, and delegates to raw UI state on
147
-
Compose HTML / JS DOM. These APIs are highly experimental now.
147
+
The ViewModel module currently supports a subset of the Compose ViewModel APIs. For ViewModel to work properly on Compose HTML / JS DOM, call `com.huanshankeji.compose.ui.window.renderComposableInBodyWithViewModelStoreOwner` instead of `org.jetbrains.compose.web.renderComposableInBody` on JS. These APIs are experimental now.
148
148
149
149
### Navigation
150
150
151
-
The navigation module currently supports a small subset of the Compose Navigation APIs, which does not support
152
-
transition or animation on Compose HTML / JS DOM. These APIs are also highly experimental now.
153
-
See [CMP-4966](https://youtrack.jetbrains.com/issue/CMP-4966) for a bug to avoid. Also, ViewModel-related functions
154
-
are not implemented yet on Compose HTML / JS DOM.
151
+
The navigation module currently supports a small subset of the Compose Navigation APIs, which does not support transition or animation on Compose HTML / JS DOM. These APIs are also experimental now. See [CMP-4966](https://youtrack.jetbrains.com/issue/CMP-4966) for a bug to avoid.
Copy file name to clipboardExpand all lines: common/api/android/compose-multiplatform-html-unified-common.api
+14-8Lines changed: 14 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -3,9 +3,15 @@ public final class com/huanshankeji/compose/Content_composeUiKt {
3
3
public static final fun toNullableContentWithoutModifier (Lkotlin/jvm/functions/Function3;)Lkotlin/jvm/functions/Function2;
4
4
}
5
5
6
+
public abstract interface annotation class com/huanshankeji/compose/ExperimentalApi : java/lang/annotation/Annotation {
7
+
}
8
+
6
9
public abstract interface annotation class com/huanshankeji/compose/ExtRecommendedApi : java/lang/annotation/Annotation {
7
10
}
8
11
12
+
public abstract interface annotation class com/huanshankeji/compose/LikelyInconsistentApi : java/lang/annotation/Annotation {
13
+
}
14
+
9
15
public abstract class com/huanshankeji/compose/ext/LoadingState {
10
16
public static final field $stable I
11
17
}
@@ -140,7 +146,7 @@ public final class com/huanshankeji/compose/foundation/layout/Arrangement$Vertic
140
146
}
141
147
142
148
public abstract interface class com/huanshankeji/compose/foundation/layout/BoxScope {
143
-
public abstract fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment;)Lcom/huanshankeji/compose/ui/Modifier;
149
+
public fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment;)Lcom/huanshankeji/compose/ui/Modifier;
144
150
public abstract fun getPlatformBoxScope ()Landroidx/compose/foundation/layout/BoxScope;
145
151
}
146
152
@@ -174,9 +180,9 @@ public final class com/huanshankeji/compose/foundation/layout/ColumnKt {
174
180
}
175
181
176
182
public abstract interface class com/huanshankeji/compose/foundation/layout/ColumnScope {
177
-
public abstract fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Horizontal;)Lcom/huanshankeji/compose/ui/Modifier;
183
+
public fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Horizontal;)Lcom/huanshankeji/compose/ui/Modifier;
178
184
public abstract fun getPlatformValue ()Landroidx/compose/foundation/layout/ColumnScope;
179
-
public abstract fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
185
+
public fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
180
186
}
181
187
182
188
public final class com/huanshankeji/compose/foundation/layout/ColumnScope$DefaultImpls {
@@ -255,9 +261,9 @@ public final class com/huanshankeji/compose/foundation/layout/RowKt {
255
261
}
256
262
257
263
public abstract interface class com/huanshankeji/compose/foundation/layout/RowScope {
258
-
public abstract fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Vertical;)Lcom/huanshankeji/compose/ui/Modifier;
264
+
public fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Vertical;)Lcom/huanshankeji/compose/ui/Modifier;
259
265
public abstract fun getPlatformValue ()Landroidx/compose/foundation/layout/RowScope;
260
-
public abstract fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
266
+
public fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
261
267
}
262
268
263
269
public final class com/huanshankeji/compose/foundation/layout/RowScope$DefaultImpls {
@@ -659,10 +665,10 @@ public final class com/huanshankeji/compose/ui/Alignment$Vertical$Impl : com/hua
659
665
660
666
public abstract interface class com/huanshankeji/compose/ui/Modifier {
661
667
public static final field Companion Lcom/huanshankeji/compose/ui/Modifier$Companion;
662
-
public abstract fun foldIn (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
668
+
public fun foldIn (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
663
669
public abstract fun getPlatformModifier ()Landroidx/compose/ui/Modifier;
664
-
public abstract fun platformModify (Lkotlin/jvm/functions/Function1;)Lcom/huanshankeji/compose/ui/Modifier;
665
-
public abstract fun then (Lcom/huanshankeji/compose/ui/Modifier;)Lcom/huanshankeji/compose/ui/Modifier;
670
+
public fun platformModify (Lkotlin/jvm/functions/Function1;)Lcom/huanshankeji/compose/ui/Modifier;
671
+
public fun then (Lcom/huanshankeji/compose/ui/Modifier;)Lcom/huanshankeji/compose/ui/Modifier;
666
672
}
667
673
668
674
public final class com/huanshankeji/compose/ui/Modifier$Companion : com/huanshankeji/compose/ui/Modifier {
final enum class com.huanshankeji.compose.foundation.layout/IntrinsicSize : kotlin/Enum<com.huanshankeji.compose.foundation.layout/IntrinsicSize> { // com.huanshankeji.compose.foundation.layout/IntrinsicSize|null[0]
19
27
enum entry Max // com.huanshankeji.compose.foundation.layout/IntrinsicSize.Max|null[0]
20
28
enum entry Min // com.huanshankeji.compose.foundation.layout/IntrinsicSize.Min|null[0]
@@ -984,6 +992,14 @@ final enum class com.huanshankeji.browser/Browser : kotlin/Enum<com.huanshankeji
984
992
final fun values(): kotlin/Array<com.huanshankeji.browser/Browser> // com.huanshankeji.browser/Browser.values|values#static(){}[0]
985
993
}
986
994
995
+
// Targets: [js]
996
+
final class com.huanshankeji.compose.ui.window/SimpleViewModelStoreOwner : androidx.lifecycle/ViewModelStoreOwner { // com.huanshankeji.compose.ui.window/SimpleViewModelStoreOwner|null[0]
final val viewModelStore // com.huanshankeji.compose.ui.window/SimpleViewModelStoreOwner.viewModelStore|{}viewModelStore[0]
1000
+
final fun <get-viewModelStore>(): androidx.lifecycle/ViewModelStore // com.huanshankeji.compose.ui.window/SimpleViewModelStoreOwner.viewModelStore.<get-viewModelStore>|<get-viewModelStore>(){}[0]
1001
+
}
1002
+
987
1003
// Targets: [js]
988
1004
final object com.huanshankeji.compose.foundation.lazy/LazyItemScope { // com.huanshankeji.compose.foundation.lazy/LazyItemScope|null[0]
989
1005
final fun (com.huanshankeji.compose.ui/Modifier).fillParentMaxHeight(kotlin/Float = ...): com.huanshankeji.compose.ui/Modifier // com.huanshankeji.compose.foundation.lazy/LazyItemScope.fillParentMaxHeight|[email protected](kotlin.Float){}[0]
@@ -1020,6 +1036,9 @@ final val com.huanshankeji.compose.foundation/imitateComposeUiLayoutHorizontalSc
1020
1036
final val com.huanshankeji.compose.foundation/imitateComposeUiLayoutVerticalScrollPlatformModifier // com.huanshankeji.compose.foundation/imitateComposeUiLayoutVerticalScrollPlatformModifier|{}imitateComposeUiLayoutVerticalScrollPlatformModifier[0]
1021
1037
final fun <get-imitateComposeUiLayoutVerticalScrollPlatformModifier>(): com.varabyte.kobweb.compose.ui/Modifier // com.huanshankeji.compose.foundation/imitateComposeUiLayoutVerticalScrollPlatformModifier.<get-imitateComposeUiLayoutVerticalScrollPlatformModifier>|<get-imitateComposeUiLayoutVerticalScrollPlatformModifier>(){}[0]
1022
1038
1039
+
// Targets: [js]
1040
+
final val com.huanshankeji.compose.ui.window/com_huanshankeji_compose_ui_window_SimpleViewModelStoreOwner$stableprop // com.huanshankeji.compose.ui.window/com_huanshankeji_compose_ui_window_SimpleViewModelStoreOwner$stableprop|#static{}com_huanshankeji_compose_ui_window_SimpleViewModelStoreOwner$stableprop[0]
1041
+
1023
1042
// Targets: [js]
1024
1043
final fun (androidx.compose.ui.unit/Dp).com.huanshankeji.compose.ui.unit/toPx(): org.jetbrains.compose.web.css/CSSSizeValue<org.jetbrains.compose.web.css/CSSUnit.px> // com.huanshankeji.compose.ui.unit/toPx|[email protected](){}[0]
1025
1044
@@ -1130,3 +1149,12 @@ final fun com.huanshankeji.compose.foundation/com_huanshankeji_compose_foundatio
1130
1149
1131
1150
// Targets: [js]
1132
1151
final fun com.huanshankeji.compose.foundation/rememberScrollState(kotlin/Int, androidx.compose.runtime/Composer?, kotlin/Int, kotlin/Int): com.huanshankeji.compose.foundation/ScrollState // com.huanshankeji.compose.foundation/rememberScrollState|rememberScrollState(kotlin.Int;androidx.compose.runtime.Composer?;kotlin.Int;kotlin.Int){}[0]
1152
+
1153
+
// Targets: [js]
1154
+
final fun com.huanshankeji.compose.ui.platform/findComposeDefaultViewModelStoreOwner(androidx.compose.runtime/Composer?, kotlin/Int): androidx.lifecycle/ViewModelStoreOwner? // com.huanshankeji.compose.ui.platform/findComposeDefaultViewModelStoreOwner|findComposeDefaultViewModelStoreOwner(androidx.compose.runtime.Composer?;kotlin.Int){}[0]
1155
+
1156
+
// Targets: [js]
1157
+
final fun com.huanshankeji.compose.ui.window/com_huanshankeji_compose_ui_window_SimpleViewModelStoreOwner$stableprop_getter(): kotlin/Int // com.huanshankeji.compose.ui.window/com_huanshankeji_compose_ui_window_SimpleViewModelStoreOwner$stableprop_getter|com_huanshankeji_compose_ui_window_SimpleViewModelStoreOwner$stableprop_getter(){}[0]
1158
+
1159
+
// Targets: [js]
1160
+
final fun com.huanshankeji.compose.ui.window/renderComposableInBodyWithViewModelStoreOwner(kotlin/Function3<org.jetbrains.compose.web.dom/DOMScope<org.w3c.dom/HTMLBodyElement>, androidx.compose.runtime/Composer, kotlin/Int, kotlin/Unit>): androidx.compose.runtime/Composition // com.huanshankeji.compose.ui.window/renderComposableInBodyWithViewModelStoreOwner|renderComposableInBodyWithViewModelStoreOwner(kotlin.Function3<org.jetbrains.compose.web.dom.DOMScope<org.w3c.dom.HTMLBodyElement>,androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}[0]
Copy file name to clipboardExpand all lines: common/api/jvm/compose-multiplatform-html-unified-common.api
+14-8Lines changed: 14 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -3,9 +3,15 @@ public final class com/huanshankeji/compose/Content_composeUiKt {
3
3
public static final fun toNullableContentWithoutModifier (Lkotlin/jvm/functions/Function3;)Lkotlin/jvm/functions/Function2;
4
4
}
5
5
6
+
public abstract interface annotation class com/huanshankeji/compose/ExperimentalApi : java/lang/annotation/Annotation {
7
+
}
8
+
6
9
public abstract interface annotation class com/huanshankeji/compose/ExtRecommendedApi : java/lang/annotation/Annotation {
7
10
}
8
11
12
+
public abstract interface annotation class com/huanshankeji/compose/LikelyInconsistentApi : java/lang/annotation/Annotation {
13
+
}
14
+
9
15
public abstract class com/huanshankeji/compose/ext/LoadingState {
10
16
public static final field $stable I
11
17
}
@@ -140,7 +146,7 @@ public final class com/huanshankeji/compose/foundation/layout/Arrangement$Vertic
140
146
}
141
147
142
148
public abstract interface class com/huanshankeji/compose/foundation/layout/BoxScope {
143
-
public abstract fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment;)Lcom/huanshankeji/compose/ui/Modifier;
149
+
public fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment;)Lcom/huanshankeji/compose/ui/Modifier;
144
150
public abstract fun getPlatformBoxScope ()Landroidx/compose/foundation/layout/BoxScope;
145
151
}
146
152
@@ -174,9 +180,9 @@ public final class com/huanshankeji/compose/foundation/layout/ColumnKt {
174
180
}
175
181
176
182
public abstract interface class com/huanshankeji/compose/foundation/layout/ColumnScope {
177
-
public abstract fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Horizontal;)Lcom/huanshankeji/compose/ui/Modifier;
183
+
public fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Horizontal;)Lcom/huanshankeji/compose/ui/Modifier;
178
184
public abstract fun getPlatformValue ()Landroidx/compose/foundation/layout/ColumnScope;
179
-
public abstract fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
185
+
public fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
180
186
}
181
187
182
188
public final class com/huanshankeji/compose/foundation/layout/ColumnScope$DefaultImpls {
@@ -255,9 +261,9 @@ public final class com/huanshankeji/compose/foundation/layout/RowKt {
255
261
}
256
262
257
263
public abstract interface class com/huanshankeji/compose/foundation/layout/RowScope {
258
-
public abstract fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Vertical;)Lcom/huanshankeji/compose/ui/Modifier;
264
+
public fun align (Lcom/huanshankeji/compose/ui/Modifier;Lcom/huanshankeji/compose/ui/Alignment$Vertical;)Lcom/huanshankeji/compose/ui/Modifier;
259
265
public abstract fun getPlatformValue ()Landroidx/compose/foundation/layout/RowScope;
260
-
public abstract fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
266
+
public fun weight (Lcom/huanshankeji/compose/ui/Modifier;F)Lcom/huanshankeji/compose/ui/Modifier;
261
267
}
262
268
263
269
public final class com/huanshankeji/compose/foundation/layout/RowScope$DefaultImpls {
@@ -659,10 +665,10 @@ public final class com/huanshankeji/compose/ui/Alignment$Vertical$Impl : com/hua
659
665
660
666
public abstract interface class com/huanshankeji/compose/ui/Modifier {
661
667
public static final field Companion Lcom/huanshankeji/compose/ui/Modifier$Companion;
662
-
public abstract fun foldIn (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
668
+
public fun foldIn (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
663
669
public abstract fun getPlatformModifier ()Landroidx/compose/ui/Modifier;
664
-
public abstract fun platformModify (Lkotlin/jvm/functions/Function1;)Lcom/huanshankeji/compose/ui/Modifier;
665
-
public abstract fun then (Lcom/huanshankeji/compose/ui/Modifier;)Lcom/huanshankeji/compose/ui/Modifier;
670
+
public fun platformModify (Lkotlin/jvm/functions/Function1;)Lcom/huanshankeji/compose/ui/Modifier;
671
+
public fun then (Lcom/huanshankeji/compose/ui/Modifier;)Lcom/huanshankeji/compose/ui/Modifier;
666
672
}
667
673
668
674
public final class com/huanshankeji/compose/ui/Modifier$Companion : com/huanshankeji/compose/ui/Modifier {
0 commit comments