@expo/ui 58.0.4 → 58.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/expo/modules/ui/HostView.kt +6 -4
  4. package/android/src/main/java/expo/modules/ui/ModifierRegistry.kt +11 -0
  5. package/build/jetpack-compose/colors.js +20 -1
  6. package/build/jetpack-compose/colors.js.map +1 -1
  7. package/build/jetpack-compose/modifiers/index.d.ts +10 -0
  8. package/build/jetpack-compose/modifiers/index.js +11 -0
  9. package/build/jetpack-compose/modifiers/index.js.map +1 -1
  10. package/expo-module.config.json +1 -1
  11. package/ios/HostView.swift +29 -7
  12. package/local-maven-repo/expo/modules/ui/expo.modules.ui/{58.0.4/expo.modules.ui-58.0.4-sources.jar → 58.0.5/expo.modules.ui-58.0.5-sources.jar} +0 -0
  13. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5-sources.jar.md5 +1 -0
  14. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5-sources.jar.sha1 +1 -0
  15. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5-sources.jar.sha256 +1 -0
  16. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5-sources.jar.sha512 +1 -0
  17. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.aar +0 -0
  18. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.aar.md5 +1 -0
  19. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.aar.sha1 +1 -0
  20. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.aar.sha256 +1 -0
  21. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.aar.sha512 +1 -0
  22. package/local-maven-repo/expo/modules/ui/expo.modules.ui/{58.0.4/expo.modules.ui-58.0.4.module → 58.0.5/expo.modules.ui-58.0.5.module} +22 -22
  23. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.module.md5 +1 -0
  24. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.module.sha1 +1 -0
  25. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.module.sha256 +1 -0
  26. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.module.sha512 +1 -0
  27. package/local-maven-repo/expo/modules/ui/expo.modules.ui/{58.0.4/expo.modules.ui-58.0.4.pom → 58.0.5/expo.modules.ui-58.0.5.pom} +1 -1
  28. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.pom.md5 +1 -0
  29. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.pom.sha1 +1 -0
  30. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.pom.sha256 +1 -0
  31. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.5/expo.modules.ui-58.0.5.pom.sha512 +1 -0
  32. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml +4 -4
  33. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.md5 +1 -1
  34. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha1 +1 -1
  35. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha256 +1 -1
  36. package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha512 +1 -1
  37. package/package.json +2 -2
  38. package/prebuilds/output/debug/xcframeworks/ExpoUI.tar.gz +0 -0
  39. package/prebuilds/output/release/xcframeworks/ExpoUI.tar.gz +0 -0
  40. package/src/jetpack-compose/colors.ts +23 -1
  41. package/src/jetpack-compose/modifiers/index.ts +11 -0
  42. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4-sources.jar.md5 +0 -1
  43. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4-sources.jar.sha1 +0 -1
  44. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4-sources.jar.sha256 +0 -1
  45. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4-sources.jar.sha512 +0 -1
  46. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.aar +0 -0
  47. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.aar.md5 +0 -1
  48. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.aar.sha1 +0 -1
  49. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.aar.sha256 +0 -1
  50. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.aar.sha512 +0 -1
  51. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.module.md5 +0 -1
  52. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.module.sha1 +0 -1
  53. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.module.sha256 +0 -1
  54. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.module.sha512 +0 -1
  55. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.pom.md5 +0 -1
  56. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.pom.sha1 +0 -1
  57. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.pom.sha256 +0 -1
  58. package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.4/expo.modules.ui-58.0.4.pom.sha512 +0 -1
package/CHANGELOG.md CHANGED
@@ -10,6 +10,17 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 58.0.5 — 2026-09-22
14
+
15
+ ### 🎉 New features
16
+
17
+ - [Android] Added the widget-only `cornerRadius` modifier to `jetpack-compose`. ([#50332](https://github.com/expo/expo/pull/50332) by [@jakex7](https://github.com/jakex7))
18
+
19
+ ### 🐛 Bug fixes
20
+
21
+ - [iOS] Fixed `<Host matchContents>` centering its content, and so shifting it by half the height change for a frame, whenever the hosted view was not yet the size of its SwiftUI content. ([#50496](https://github.com/expo/expo/pull/50496) by [@expo-bot](https://github.com/expo-bot))
22
+ - [Android] Cache Material 3 palettes generated from an explicit `scheme` and `seedColor`, so `getMaterialColors` and `useMaterialColors` stop calling the synchronous native module on every render, and `Host` stops re-solving the same scheme on every recomposition. ([#50494](https://github.com/expo/expo/pull/50494) by [@expo-bot](https://github.com/expo-bot))
23
+
13
24
  ## 58.0.4 — 2026-09-21
14
25
 
15
26
  ### 🎉 New features
@@ -12,13 +12,13 @@ apply plugin: 'expo-module-gradle-plugin'
12
12
  apply plugin: 'org.jetbrains.kotlin.plugin.compose'
13
13
 
14
14
  group = 'expo.modules.ui'
15
- version = '58.0.4'
15
+ version = '58.0.5'
16
16
 
17
17
  android {
18
18
  namespace "expo.modules.ui"
19
19
  defaultConfig {
20
20
  versionCode 1
21
- versionName "58.0.4"
21
+ versionName "58.0.5"
22
22
  testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
23
23
  }
24
24
  buildFeatures {
@@ -24,6 +24,7 @@ import androidx.compose.runtime.Composable
24
24
  import androidx.compose.runtime.CompositionLocalProvider
25
25
  import androidx.compose.runtime.MutableState
26
26
  import androidx.compose.runtime.mutableStateOf
27
+ import androidx.compose.runtime.remember
27
28
  import androidx.compose.ui.Modifier
28
29
  import androidx.compose.ui.graphics.toArgb
29
30
  import androidx.compose.ui.layout.Layout
@@ -112,11 +113,12 @@ internal class HostView(context: Context, appContext: AppContext) :
112
113
  null -> isSystemInDarkTheme()
113
114
  }
114
115
  val seedArgb = props.seedColor.value?.composeOrNull?.toArgb()
115
- val colorScheme = when {
116
- seedArgb != null -> seedColorScheme(seedArgb, isDark)
117
- else -> props.colorScheme.value?.toColorScheme(context)
118
- ?: ExpoColorScheme.defaultColorScheme(context, isSystemInDarkTheme())
116
+ val seededScheme = remember(seedArgb, isDark) {
117
+ seedArgb?.let { seedColorScheme(it, isDark) }
119
118
  }
119
+ val colorScheme = seededScheme
120
+ ?: props.colorScheme.value?.toColorScheme(context)
121
+ ?: ExpoColorScheme.defaultColorScheme(context, isSystemInDarkTheme())
120
122
  val layoutDirection = props.layoutDirection.value.toLayoutDirection()
121
123
 
122
124
  // Material3's `MaterialTheme` does not provide `LocalContentColor` — only `Surface` does — so
@@ -216,6 +216,11 @@ internal data class BlurParams(
216
216
  @Field val radius: Int = 0
217
217
  ) : Record
218
218
 
219
+ @OptimizedRecord
220
+ data class CornerRadiusParams(
221
+ @Field val radius: Int = 0
222
+ ) : Record
223
+
219
224
  @OptimizedRecord
220
225
  internal data class RotateParams(
221
226
  @Field val degrees: Float = 0f
@@ -572,6 +577,12 @@ object ModifierRegistry {
572
577
  Modifier.blur(params.radius.dp)
573
578
  }
574
579
 
580
+ // Glance-only modifier: Jetpack Compose has no equivalent, so it is a no-op here.
581
+ // `expo-widgets` applies it to Android widgets.
582
+ register("cornerRadius") { _, _, _, _ ->
583
+ Modifier
584
+ }
585
+
575
586
  // Transform modifiers
576
587
  register("rotate") { map, _, appContext, _ ->
577
588
  val params = recordFromMap<RotateParams>(map, appContext)
@@ -11,10 +11,29 @@ import { ExpoUIModule } from './ExpoUIModule';
11
11
  * React context to cache the palette within a Host subtree.
12
12
  * @hidden
13
13
  */ export const HostPaletteContext = createContext(null);
14
+ // Cache the `scheme` + `seedColor` keyed palette to prevent sync calls to `getMaterialColors`.
15
+ // https://github.com/expo/expo/issues/50477
16
+ const seededPalettes = new Map();
17
+ const MAX_SEEDED_PALETTES = 32;
14
18
  /**
15
19
  * Get the Material 3 color palette.
16
20
  */ export function getMaterialColors(options) {
17
- return ExpoUIModule.getMaterialColors(options ?? null);
21
+ const scheme = options?.scheme;
22
+ const seedColor = options?.seedColor;
23
+ const isCacheable = (scheme === 'light' || scheme === 'dark') && (typeof seedColor === 'string' || typeof seedColor === 'number');
24
+ if (!isCacheable) {
25
+ return ExpoUIModule.getMaterialColors(options ?? null);
26
+ }
27
+ const key = `${scheme}:${seedColor}`;
28
+ let palette = seededPalettes.get(key);
29
+ if (!palette) {
30
+ palette = ExpoUIModule.getMaterialColors(options);
31
+ if (seededPalettes.size >= MAX_SEEDED_PALETTES) {
32
+ seededPalettes.delete(seededPalettes.keys().next().value);
33
+ }
34
+ seededPalettes.set(key, palette);
35
+ }
36
+ return palette;
18
37
  }
19
38
  /**
20
39
  * Returns the Material 3 color palette.
@@ -1 +1 @@
1
- {"version":3,"sources":["jetpack-compose/colors.ts"],"sourcesContent":[null],"names":["createContext","useContext","useColorScheme","useRNColorScheme","ExpoUIModule","isDynamicColorAvailable","HostPaletteContext","getMaterialColors","options","useMaterialColors","hostPalette","systemScheme","colorScheme","seedColor","resolvedScheme","scheme"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,QAAQ;AAClD,SAGEC,kBAAkBC,gBAAgB,QAC7B,eAAe;AAEtB,SAASC,YAAY,QAAQ,iBAAiB;AAoK9C;;;;;CAKC,GACD,OAAO,MAAMC,0BAAmCD,aAAaC,uBAAuB,IAAI,MAAM;AAE9F;;;CAGC,GACD,OAAO,MAAMC,qBAAqBN,cAAqC,MAAM;AAE7E;;CAEC,GACD,OAAO,SAASO,kBAAkBC,OAA+B;IAC/D,OAAOJ,aAAaG,iBAAiB,CAACC,WAAW;AACnD;AAEA;;;;CAIC,GACD,OAAO,SAASC,kBAAkBD,OAAkC;IAClE,MAAME,cAAcT,WAAWK;IAC/B,MAAMK,eAAeR;IACrB,IAAIK,WAAW,QAAQE,eAAe,MAAM;QAC1C,sDAAsD;QACtD,OAAOA;IACT;IACA,sEAAsE;IACtE,MAAM,EAAEE,WAAW,EAAEC,SAAS,EAAE,GAAGL,WAAW,CAAC;IAC/C,MAAMM,iBACJF,gBAAgB,WAAWA,gBAAgB,SACvCA,cACAD,iBAAiB,SACf,SACA;IACR,OAAOJ,kBAAkB;QAAEQ,QAAQD;QAAgBD;IAAU;AAC/D"}
1
+ {"version":3,"sources":["jetpack-compose/colors.ts"],"sourcesContent":[null],"names":["createContext","useContext","useColorScheme","useRNColorScheme","ExpoUIModule","isDynamicColorAvailable","HostPaletteContext","seededPalettes","Map","MAX_SEEDED_PALETTES","getMaterialColors","options","scheme","seedColor","isCacheable","key","palette","get","size","delete","keys","next","value","set","useMaterialColors","hostPalette","systemScheme","colorScheme","resolvedScheme"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,QAAQ;AAClD,SAGEC,kBAAkBC,gBAAgB,QAC7B,eAAe;AAEtB,SAASC,YAAY,QAAQ,iBAAiB;AAoK9C;;;;;CAKC,GACD,OAAO,MAAMC,0BAAmCD,aAAaC,uBAAuB,IAAI,MAAM;AAE9F;;;CAGC,GACD,OAAO,MAAMC,qBAAqBN,cAAqC,MAAM;AAE7E,+FAA+F;AAC/F,4CAA4C;AAC5C,MAAMO,iBAAiB,IAAIC;AAC3B,MAAMC,sBAAsB;AAE5B;;CAEC,GACD,OAAO,SAASC,kBAAkBC,OAA+B;IAC/D,MAAMC,SAASD,SAASC;IACxB,MAAMC,YAAYF,SAASE;IAC3B,MAAMC,cACJ,AAACF,CAAAA,WAAW,WAAWA,WAAW,MAAK,KACtC,CAAA,OAAOC,cAAc,YAAY,OAAOA,cAAc,QAAO;IAChE,IAAI,CAACC,aAAa;QAChB,OAAOV,aAAaM,iBAAiB,CAACC,WAAW;IACnD;IACA,MAAMI,MAAM,GAAGH,OAAO,CAAC,EAAEC,WAAW;IACpC,IAAIG,UAAUT,eAAeU,GAAG,CAACF;IACjC,IAAI,CAACC,SAAS;QACZA,UAAUZ,aAAaM,iBAAiB,CAACC;QACzC,IAAIJ,eAAeW,IAAI,IAAIT,qBAAqB;YAC9CF,eAAeY,MAAM,CAACZ,eAAea,IAAI,GAAGC,IAAI,GAAGC,KAAK;QAC1D;QACAf,eAAegB,GAAG,CAACR,KAAKC;IAC1B;IACA,OAAOA;AACT;AAEA;;;;CAIC,GACD,OAAO,SAASQ,kBAAkBb,OAAkC;IAClE,MAAMc,cAAcxB,WAAWK;IAC/B,MAAMoB,eAAevB;IACrB,IAAIQ,WAAW,QAAQc,eAAe,MAAM;QAC1C,sDAAsD;QACtD,OAAOA;IACT;IACA,sEAAsE;IACtE,MAAM,EAAEE,WAAW,EAAEd,SAAS,EAAE,GAAGF,WAAW,CAAC;IAC/C,MAAMiB,iBACJD,gBAAgB,WAAWA,gBAAgB,SACvCA,cACAD,iBAAiB,SACf,SACA;IACR,OAAOhB,kBAAkB;QAAEE,QAAQgB;QAAgBf;IAAU;AAC/D"}
@@ -141,6 +141,16 @@ export declare const alpha: (alpha: number) => import("./createModifier").Modifi
141
141
  * @param radius - Blur radius in dp.
142
142
  */
143
143
  export declare const blur: (radius: number) => import("./createModifier").ModifierConfig;
144
+ /**
145
+ * Adds rounded corners to the component.
146
+ *
147
+ * > **Note:** Works only inside Android widgets built with `expo-widgets`, on Android 12 (API level 31) and later.
148
+ *
149
+ * Jetpack Compose has no exact equivalent of Glance's `cornerRadius`, so Expo UI ignores this
150
+ * modifier. Use `clip(Shapes.RoundedCorner(radius))` to round corners in an app.
151
+ * @param radius - Corner radius in dp.
152
+ */
153
+ export declare const cornerRadius: (radius: number) => import("./createModifier").ModifierConfig;
144
154
  /**
145
155
  * Rotates the view.
146
156
  * @param degrees - Rotation angle in degrees.
@@ -153,6 +153,17 @@ export { animated, spring, tween, snap, keyframes } from './animation';
153
153
  */ export const blur = (radius)=>createModifier('blur', {
154
154
  radius
155
155
  });
156
+ /**
157
+ * Adds rounded corners to the component.
158
+ *
159
+ * > **Note:** Works only inside Android widgets built with `expo-widgets`, on Android 12 (API level 31) and later.
160
+ *
161
+ * Jetpack Compose has no exact equivalent of Glance's `cornerRadius`, so Expo UI ignores this
162
+ * modifier. Use `clip(Shapes.RoundedCorner(radius))` to round corners in an app.
163
+ * @param radius - Corner radius in dp.
164
+ */ export const cornerRadius = (radius)=>createModifier('cornerRadius', {
165
+ radius
166
+ });
156
167
  // =============================================================================
157
168
  // Transform Modifiers
158
169
  // =============================================================================
@@ -1 +1 @@
1
- {"version":3,"sources":["jetpack-compose/modifiers/index.ts"],"sourcesContent":[null],"names":["createModifier","createModifierWithEventListener","animated","spring","tween","snap","keyframes","paddingAll","all","padding","start","top","end","bottom","size","width","height","fillMaxSize","fraction","fillMaxWidth","fillMaxHeight","value","defaultMinSize","options","wrapContentWidth","alignment","wrapContentHeight","imePadding","offset","x","y","background","color","animationSpec","border","borderWidth","borderColor","shadow","elevation","dropShadow","shape","config","innerShadow","alpha","blur","radius","rotate","degrees","graphicsLayer","params","zIndex","index","animateContentSize","dampingRatio","stiffness","weight","align","matchParentSize","menuAnchor","type","enabled","clickable","handler","indication","combinedClickable","handlers","event","onClick","onLongClick","selectable","selected","role","selectableGroup","toggleable","onVisibilityChanged","isVisible","minDurationMs","minFractionVisible","onSizeChanged","onGloballyPositioned","layout","testID","tag","semantics","material","name","Shapes","Rectangle","Circle","RoundedCorner","CutCorner","Material","Cookie4Sided","Cookie6Sided","Cookie7Sided","Cookie9Sided","Cookie12Sided","Clover4Leaf","Clover8Leaf","SoftBurst","Boom","Oval","Pill","Triangle","Diamond","Pentagon","Sunny","VerySunny","Fan","PixelCircle","PixelTriangle","Ghostish","Bun","Heart","Arch","Slanted","Puffy","PuffyDiamond","clip","maskClip","verticalScroll","horizontalScroll","createViewModifierEventListener"],"mappings":"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"}
1
+ {"version":3,"sources":["jetpack-compose/modifiers/index.ts"],"sourcesContent":[null],"names":["createModifier","createModifierWithEventListener","animated","spring","tween","snap","keyframes","paddingAll","all","padding","start","top","end","bottom","size","width","height","fillMaxSize","fraction","fillMaxWidth","fillMaxHeight","value","defaultMinSize","options","wrapContentWidth","alignment","wrapContentHeight","imePadding","offset","x","y","background","color","animationSpec","border","borderWidth","borderColor","shadow","elevation","dropShadow","shape","config","innerShadow","alpha","blur","radius","cornerRadius","rotate","degrees","graphicsLayer","params","zIndex","index","animateContentSize","dampingRatio","stiffness","weight","align","matchParentSize","menuAnchor","type","enabled","clickable","handler","indication","combinedClickable","handlers","event","onClick","onLongClick","selectable","selected","role","selectableGroup","toggleable","onVisibilityChanged","isVisible","minDurationMs","minFractionVisible","onSizeChanged","onGloballyPositioned","layout","testID","tag","semantics","material","name","Shapes","Rectangle","Circle","RoundedCorner","CutCorner","Material","Cookie4Sided","Cookie6Sided","Cookie7Sided","Cookie9Sided","Cookie12Sided","Clover4Leaf","Clover8Leaf","SoftBurst","Boom","Oval","Pill","Triangle","Diamond","Pentagon","Sunny","VerySunny","Fan","PixelCircle","PixelTriangle","Ghostish","Bun","Heart","Arch","Slanted","Puffy","PuffyDiamond","clip","maskClip","verticalScroll","horizontalScroll","createViewModifierEventListener"],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  "publication": {
11
11
  "groupId": "expo.modules.ui",
12
12
  "artifactId": "expo.modules.ui",
13
- "version": "58.0.4",
13
+ "version": "58.0.5",
14
14
  "repository": "local-maven-repo"
15
15
  }
16
16
  }
@@ -57,6 +57,8 @@ struct HostView: ExpoSwiftUI.View, ExpoSwiftUI.WithHostingView {
57
57
  let alignment: Alignment = layoutDirection == .rightToLeft ? .topTrailing : .topLeading
58
58
  let fillHorizontal = !props.useViewportSizeMeasurement && !props.matchContentsHorizontal
59
59
  let fillVertical = !props.useViewportSizeMeasurement && !props.matchContentsVertical
60
+ let pinHorizontal = !props.useViewportSizeMeasurement && props.matchContentsHorizontal
61
+ let pinVertical = !props.useViewportSizeMeasurement && props.matchContentsVertical
60
62
 
61
63
  if #available(iOS 16.0, tvOS 16.0, macOS 13.0, *) {
62
64
  // swiftlint:disable:next identifier_name
@@ -76,7 +78,13 @@ struct HostView: ExpoSwiftUI.View, ExpoSwiftUI.WithHostingView {
76
78
  globalEventDispatcher: props.globalEventDispatcher
77
79
  )
78
80
  .modifier(GeometryChangeModifier(props: props))
79
- .modifier(FillAlignmentModifier(alignment: alignment, fillHorizontal: fillHorizontal, fillVertical: fillVertical))
81
+ .modifier(FillAlignmentModifier(
82
+ alignment: alignment,
83
+ fillHorizontal: fillHorizontal,
84
+ fillVertical: fillVertical,
85
+ pinHorizontal: pinHorizontal,
86
+ pinVertical: pinVertical
87
+ ))
80
88
  .coordinateSpace(name: expoHostCoordinateSpace)
81
89
  } else {
82
90
  ZStack(alignment: alignment) {
@@ -92,7 +100,13 @@ struct HostView: ExpoSwiftUI.View, ExpoSwiftUI.WithHostingView {
92
100
  globalEventDispatcher: props.globalEventDispatcher
93
101
  )
94
102
  .modifier(GeometryChangeModifier(props: props))
95
- .modifier(FillAlignmentModifier(alignment: alignment, fillHorizontal: fillHorizontal, fillVertical: fillVertical))
103
+ .modifier(FillAlignmentModifier(
104
+ alignment: alignment,
105
+ fillHorizontal: fillHorizontal,
106
+ fillVertical: fillVertical,
107
+ pinHorizontal: pinHorizontal,
108
+ pinVertical: pinVertical
109
+ ))
96
110
  .coordinateSpace(name: expoHostCoordinateSpace)
97
111
  }
98
112
  }
@@ -197,17 +211,25 @@ private struct FillAlignmentModifier: ViewModifier {
197
211
  let alignment: Alignment
198
212
  let fillHorizontal: Bool
199
213
  let fillVertical: Bool
214
+ let pinHorizontal: Bool
215
+ let pinVertical: Bool
200
216
 
201
217
  func body(content: Content) -> some View {
202
- if fillHorizontal || fillVertical {
218
+ if fillHorizontal || fillVertical || pinHorizontal || pinVertical {
219
+ // A `matchContents` axis needs a `0` minimum as well. Without it the frame keeps the
220
+ // content's own size whenever that size is larger than the proposal, and the hosting
221
+ // controller centers the overflow instead of keeping it at `alignment`. The proposal is
222
+ // smaller on every frame where the hosting view still has the previous content size.
203
223
  content.frame(
204
- maxWidth: fillHorizontal ? .infinity : nil,
205
- maxHeight: fillVertical ? .infinity : nil,
224
+ minWidth: pinHorizontal ? 0 : nil,
225
+ maxWidth: fillHorizontal || pinHorizontal ? .infinity : nil,
226
+ minHeight: pinVertical ? 0 : nil,
227
+ maxHeight: fillVertical || pinVertical ? .infinity : nil,
206
228
  alignment: alignment
207
229
  )
208
230
  } else {
209
- // Leave the view untouched (e.g. useViewportSizeMeasurement / full matchContents) so the
210
- // layout proposal reaches the content's own layout unmodified.
231
+ // Leave the view untouched (useViewportSizeMeasurement) so the layout proposal reaches the
232
+ // content's own layout unmodified.
211
233
  content
212
234
  }
213
235
  }
@@ -0,0 +1 @@
1
+ ccc4bc2b5f6f1713a4f7c85ae9be4a6247690fc5
@@ -0,0 +1 @@
1
+ d4e08c526d892c05d1ab6e42bd451df874e4da5cc58c18080ad730fc0ae59dfa
@@ -0,0 +1 @@
1
+ 5a6dc466f00aa1d74a9e1df2c4a06f3bf9c00b9eebe03e54e1ae68db446806f3f47f98e4a1d04bd90db6683459dd11785d22499d9cef48dd979293f8a88104d3
@@ -0,0 +1 @@
1
+ 643965a7c8a6f46ba589dcd348cbf5e112834194
@@ -0,0 +1 @@
1
+ 9b228fbd60d559e9dfebe894e1846a8c7ce3c72e5c91936b4382c97295e9b072
@@ -0,0 +1 @@
1
+ ddcedbdcc0e95db83f0657a68090572e6d7c7fb9233e796ea875d86e9782c619560ef0e98316cdf6642abbed4b42eb43b5e8264be55130f47e473adbc0f77c11
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "expo.modules.ui",
5
5
  "module": "expo.modules.ui",
6
- "version": "58.0.4",
6
+ "version": "58.0.5",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -24,13 +24,13 @@
24
24
  },
25
25
  "files": [
26
26
  {
27
- "name": "expo.modules.ui-58.0.4.aar",
28
- "url": "expo.modules.ui-58.0.4.aar",
29
- "size": 1789426,
30
- "sha512": "408cceb3d6f97d29c6e734ab578c86c5c2c3f65fba19170bf1edc1f30648e6906b3a0e2284f1721543450bb579ddf37e54b00a51d21f9e5d77ad82e0857fef02",
31
- "sha256": "7576f0fb76c81d2a1925ffa93e4175b8ab41c4c47a7c4c375b73707812438133",
32
- "sha1": "77a2cb3cfd3195ad299b84c7d844dcb10d52fbe9",
33
- "md5": "317b952ccecb056bea4a1e5b20b7b5bf"
27
+ "name": "expo.modules.ui-58.0.5.aar",
28
+ "url": "expo.modules.ui-58.0.5.aar",
29
+ "size": 1792968,
30
+ "sha512": "ddcedbdcc0e95db83f0657a68090572e6d7c7fb9233e796ea875d86e9782c619560ef0e98316cdf6642abbed4b42eb43b5e8264be55130f47e473adbc0f77c11",
31
+ "sha256": "9b228fbd60d559e9dfebe894e1846a8c7ce3c72e5c91936b4382c97295e9b072",
32
+ "sha1": "643965a7c8a6f46ba589dcd348cbf5e112834194",
33
+ "md5": "61e999a9915231a3196a7fc2864c479e"
34
34
  }
35
35
  ]
36
36
  },
@@ -141,13 +141,13 @@
141
141
  ],
142
142
  "files": [
143
143
  {
144
- "name": "expo.modules.ui-58.0.4.aar",
145
- "url": "expo.modules.ui-58.0.4.aar",
146
- "size": 1789426,
147
- "sha512": "408cceb3d6f97d29c6e734ab578c86c5c2c3f65fba19170bf1edc1f30648e6906b3a0e2284f1721543450bb579ddf37e54b00a51d21f9e5d77ad82e0857fef02",
148
- "sha256": "7576f0fb76c81d2a1925ffa93e4175b8ab41c4c47a7c4c375b73707812438133",
149
- "sha1": "77a2cb3cfd3195ad299b84c7d844dcb10d52fbe9",
150
- "md5": "317b952ccecb056bea4a1e5b20b7b5bf"
144
+ "name": "expo.modules.ui-58.0.5.aar",
145
+ "url": "expo.modules.ui-58.0.5.aar",
146
+ "size": 1792968,
147
+ "sha512": "ddcedbdcc0e95db83f0657a68090572e6d7c7fb9233e796ea875d86e9782c619560ef0e98316cdf6642abbed4b42eb43b5e8264be55130f47e473adbc0f77c11",
148
+ "sha256": "9b228fbd60d559e9dfebe894e1846a8c7ce3c72e5c91936b4382c97295e9b072",
149
+ "sha1": "643965a7c8a6f46ba589dcd348cbf5e112834194",
150
+ "md5": "61e999a9915231a3196a7fc2864c479e"
151
151
  }
152
152
  ]
153
153
  },
@@ -161,13 +161,13 @@
161
161
  },
162
162
  "files": [
163
163
  {
164
- "name": "expo.modules.ui-58.0.4-sources.jar",
165
- "url": "expo.modules.ui-58.0.4-sources.jar",
166
- "size": 106170,
167
- "sha512": "d105c1535934d743de599730ba9b0501a424eece52f1a4190b3764b4e7e280be42e3c9b880e4f80bef8ab6299938a0da275c00d342c593fd54375574d0ecd3ae",
168
- "sha256": "c42bba76435f8b36b4fc0ed86a8290f9e1ccaa3a0ebe4cb6e77d029a4be92be6",
169
- "sha1": "749807825339b7f72362b37e830ea704ec60f72d",
170
- "md5": "feafc8819618513e9a38001814fc14e2"
164
+ "name": "expo.modules.ui-58.0.5-sources.jar",
165
+ "url": "expo.modules.ui-58.0.5-sources.jar",
166
+ "size": 106293,
167
+ "sha512": "5a6dc466f00aa1d74a9e1df2c4a06f3bf9c00b9eebe03e54e1ae68db446806f3f47f98e4a1d04bd90db6683459dd11785d22499d9cef48dd979293f8a88104d3",
168
+ "sha256": "d4e08c526d892c05d1ab6e42bd451df874e4da5cc58c18080ad730fc0ae59dfa",
169
+ "sha1": "ccc4bc2b5f6f1713a4f7c85ae9be4a6247690fc5",
170
+ "md5": "a2c50d54e658f6c03ab37ce21bc712ed"
171
171
  }
172
172
  ]
173
173
  }
@@ -0,0 +1 @@
1
+ 842b6342d3ac040ed8069f06731423ce098d4c06
@@ -0,0 +1 @@
1
+ 713717be0ec2dabfe766d7916d5c69df3434313c9cff38b1067c9efa8c46f9ab
@@ -0,0 +1 @@
1
+ a0cbbe1a7eae1d80cd5d3284ab5fe64f36e357ed1b94685f469f7d71f7794e787fa6919d0d15df9eee791fe7142554344c0424ac4c9eb205dd2ce86b706b756e
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>expo.modules.ui</groupId>
11
11
  <artifactId>expo.modules.ui</artifactId>
12
- <version>58.0.4</version>
12
+ <version>58.0.5</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.ui</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ be3b0d33e5b9fb949a42f962c343e0119fdaedc0
@@ -0,0 +1 @@
1
+ b3ded768986b2232ffeff134fec3af26cf68977a970bd9db2c5f6f7994d99391
@@ -0,0 +1 @@
1
+ fd0be2177afd1ca4fb68653adcd767e5f25e5c7fa99d787b79a7b63fc5ec234381d9374fb7c5233cc0fcc3bffce07bd9abbf30b43da1bc63777e3ea3f7b4c644
@@ -3,11 +3,11 @@
3
3
  <groupId>expo.modules.ui</groupId>
4
4
  <artifactId>expo.modules.ui</artifactId>
5
5
  <versioning>
6
- <latest>58.0.4</latest>
7
- <release>58.0.4</release>
6
+ <latest>58.0.5</latest>
7
+ <release>58.0.5</release>
8
8
  <versions>
9
- <version>58.0.4</version>
9
+ <version>58.0.5</version>
10
10
  </versions>
11
- <lastUpdated>20260921105157</lastUpdated>
11
+ <lastUpdated>20260922160135</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- aeb3687fda3babb900b2707c7eccdb58
1
+ c4131ab7d3611c2ad7222519c1ac6dbc
@@ -1 +1 @@
1
- dd275fe2064eb6646022d5d7a7267798f746ae78
1
+ 40d27ef259a3a4594d9eb687a6acf1489c4d23a9
@@ -1 +1 @@
1
- bf551fbc49828d971a3be529217cfc4eabd7be7be59392253769cf5e900a2f80
1
+ be1b14600c8809450004a609ef15392fa45790d99c199668b2fdbeeb38072cdf
@@ -1 +1 @@
1
- be2b24ecf8748c7315ba41f174f8b07f3150d103136753794b87a2793af26ee5ae9c7bc4d0620dd6d6af95e0bd56bc8895b6c9ab35e1929a19e3c8fe3bda6d27
1
+ aa2b01073faddd2b62d7984ff6ff1637f53cdc23fb83803f432a6fc824ad2a88349638c7ab718dd0961d11ff3e7e0a7ee92ceea63c880257947348b3501c39fa
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/ui",
3
- "version": "58.0.4",
3
+ "version": "58.0.5",
4
4
  "description": "A collection of UI components",
5
5
  "keywords": [
6
6
  "Jetpack Compose",
@@ -171,7 +171,7 @@
171
171
  "optional": true
172
172
  }
173
173
  },
174
- "gitHead": "ebb1fd7569c9c9e172cb9abd73dfede027c1d674",
174
+ "gitHead": "add8cbf49f477cfd2283ae05af35b4713a773c55",
175
175
  "scripts": {
176
176
  "precompile-ios": "et prebuild-package-for-publish",
177
177
  "build": "pnpm run build:lib && pnpm run build:plugin",
@@ -183,11 +183,33 @@ export const isDynamicColorAvailable: boolean = ExpoUIModule.isDynamicColorAvail
183
183
  */
184
184
  export const HostPaletteContext = createContext<MaterialColors | null>(null);
185
185
 
186
+ // Cache the `scheme` + `seedColor` keyed palette to prevent sync calls to `getMaterialColors`.
187
+ // https://github.com/expo/expo/issues/50477
188
+ const seededPalettes = new Map<string, MaterialColors>();
189
+ const MAX_SEEDED_PALETTES = 32;
190
+
186
191
  /**
187
192
  * Get the Material 3 color palette.
188
193
  */
189
194
  export function getMaterialColors(options?: MaterialColorsOptions): MaterialColors {
190
- return ExpoUIModule.getMaterialColors(options ?? null);
195
+ const scheme = options?.scheme;
196
+ const seedColor = options?.seedColor;
197
+ const isCacheable =
198
+ (scheme === 'light' || scheme === 'dark') &&
199
+ (typeof seedColor === 'string' || typeof seedColor === 'number');
200
+ if (!isCacheable) {
201
+ return ExpoUIModule.getMaterialColors(options ?? null);
202
+ }
203
+ const key = `${scheme}:${seedColor}`;
204
+ let palette = seededPalettes.get(key);
205
+ if (!palette) {
206
+ palette = ExpoUIModule.getMaterialColors(options) as MaterialColors;
207
+ if (seededPalettes.size >= MAX_SEEDED_PALETTES) {
208
+ seededPalettes.delete(seededPalettes.keys().next().value!);
209
+ }
210
+ seededPalettes.set(key, palette);
211
+ }
212
+ return palette;
191
213
  }
192
214
 
193
215
  /**
@@ -211,6 +211,17 @@ export const alpha = (alpha: number) => createModifier('alpha', { alpha });
211
211
  */
212
212
  export const blur = (radius: number) => createModifier('blur', { radius });
213
213
 
214
+ /**
215
+ * Adds rounded corners to the component.
216
+ *
217
+ * > **Note:** Works only inside Android widgets built with `expo-widgets`, on Android 12 (API level 31) and later.
218
+ *
219
+ * Jetpack Compose has no exact equivalent of Glance's `cornerRadius`, so Expo UI ignores this
220
+ * modifier. Use `clip(Shapes.RoundedCorner(radius))` to round corners in an app.
221
+ * @param radius - Corner radius in dp.
222
+ */
223
+ export const cornerRadius = (radius: number) => createModifier('cornerRadius', { radius });
224
+
214
225
  // =============================================================================
215
226
  // Transform Modifiers
216
227
  // =============================================================================
@@ -1 +0,0 @@
1
- 749807825339b7f72362b37e830ea704ec60f72d
@@ -1 +0,0 @@
1
- c42bba76435f8b36b4fc0ed86a8290f9e1ccaa3a0ebe4cb6e77d029a4be92be6
@@ -1 +0,0 @@
1
- d105c1535934d743de599730ba9b0501a424eece52f1a4190b3764b4e7e280be42e3c9b880e4f80bef8ab6299938a0da275c00d342c593fd54375574d0ecd3ae
@@ -1 +0,0 @@
1
- 317b952ccecb056bea4a1e5b20b7b5bf
@@ -1 +0,0 @@
1
- 77a2cb3cfd3195ad299b84c7d844dcb10d52fbe9
@@ -1 +0,0 @@
1
- 7576f0fb76c81d2a1925ffa93e4175b8ab41c4c47a7c4c375b73707812438133
@@ -1 +0,0 @@
1
- 408cceb3d6f97d29c6e734ab578c86c5c2c3f65fba19170bf1edc1f30648e6906b3a0e2284f1721543450bb579ddf37e54b00a51d21f9e5d77ad82e0857fef02
@@ -1 +0,0 @@
1
- a5735cfc927a4a919d056a8d002778b3b03a9571
@@ -1 +0,0 @@
1
- 6ac59cdec02bfaab3cc9a0201b3f3efc2472ebdae06731eb1754f50be6adeb56
@@ -1 +0,0 @@
1
- dd59787b0055dc18c4dae85147258bdbce099df415a74de7bd47a403b17d9138fdffbf7351e383761e9bea7c3c7aa72ed062784da242edfa312a4d8a4703e4dd
@@ -1 +0,0 @@
1
- 7d3bc2e18bfdc6ff7dde3b9952e57b0d
@@ -1 +0,0 @@
1
- 686f495f389f5d58061c48dd2be09c59dff6d282
@@ -1 +0,0 @@
1
- ed17ef29d2de582e5dd219506d2f5c6a83ae6b9499877a208b82c4642389afab
@@ -1 +0,0 @@
1
- ec8c0d91c6f8c40ced69d655e02868faa9945e2417cd82852b5455e3ddec9a1a23b14093fbb0e07093570af8823812af20ad0a61d84c035ae88fb093d0aee7fd