@expo/ui 58.0.21 → 58.0.22
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.
- package/CHANGELOG.md +22 -0
- package/README.md +86 -2
- package/android/build.gradle +2 -2
- package/android/src/main/java/expo/modules/ui/CompositionLocalProviderView.kt +26 -0
- package/android/src/main/java/expo/modules/ui/ExpoUIModule.kt +12 -0
- package/android/src/main/java/expo/modules/ui/HostView.kt +4 -1
- package/android/src/main/java/expo/modules/ui/MaskView.kt +3 -2
- package/android/src/main/java/expo/modules/ui/ModifierRegistry.kt +3 -1
- package/android/src/main/java/expo/modules/ui/RNHostView.kt +11 -7
- package/android/src/main/java/expo/modules/ui/SwitchView.kt +6 -1
- package/android/src/main/java/expo/modules/ui/TopAppBarView.kt +62 -0
- package/android/src/main/java/expo/modules/ui/colors/MaterialColors.kt +61 -0
- package/build/community/bottom-sheet/BottomSheet.ios.js +8 -3
- package/build/community/bottom-sheet/BottomSheet.ios.js.map +1 -1
- package/build/community/pager-view/PagerView.ios.js +25 -8
- package/build/community/pager-view/PagerView.ios.js.map +1 -1
- package/build/community/segmented-control/SegmentedControl.ios.js +11 -2
- package/build/community/segmented-control/SegmentedControl.ios.js.map +1 -1
- package/build/community/segmented-control/types.d.ts +5 -1
- package/build/community/segmented-control/types.js.map +1 -1
- package/build/jetpack-compose/CompositionLocalProvider/index.d.ts +28 -0
- package/build/jetpack-compose/CompositionLocalProvider/index.js +15 -0
- package/build/jetpack-compose/CompositionLocalProvider/index.js.map +1 -0
- package/build/jetpack-compose/Host/index.d.ts +8 -0
- package/build/jetpack-compose/Host/index.js +38 -5
- package/build/jetpack-compose/Host/index.js.map +1 -1
- package/build/jetpack-compose/Switch/index.d.ts +2 -0
- package/build/jetpack-compose/Switch/index.js +1 -0
- package/build/jetpack-compose/Switch/index.js.map +1 -1
- package/build/jetpack-compose/TopAppBar/index.d.ts +72 -0
- package/build/jetpack-compose/TopAppBar/index.js +45 -0
- package/build/jetpack-compose/TopAppBar/index.js.map +1 -0
- package/build/jetpack-compose/index.d.ts +2 -0
- package/build/jetpack-compose/index.js +2 -0
- package/build/jetpack-compose/index.js.map +1 -1
- package/build/jetpack-compose/modifiers/index.d.ts +5 -1
- package/build/jetpack-compose/modifiers/index.js +6 -2
- package/build/jetpack-compose/modifiers/index.js.map +1 -1
- package/build/swift-ui/BottomSheet/index.d.ts +6 -0
- package/build/swift-ui/BottomSheet/index.js +9 -3
- package/build/swift-ui/BottomSheet/index.js.map +1 -1
- package/build/universal/Checkbox/index.android.js +16 -4
- package/build/universal/Checkbox/index.android.js.map +1 -1
- package/build/universal/ScrollView/index.ios.js +12 -6
- package/build/universal/ScrollView/index.ios.js.map +1 -1
- package/build/universal/Switch/index.android.js +17 -4
- package/build/universal/Switch/index.android.js.map +1 -1
- package/build/universal/Switch/index.js +1 -0
- package/build/universal/Switch/index.js.map +1 -1
- package/build/universal/Text/index.js +2 -2
- package/build/universal/Text/index.js.map +1 -1
- package/build/universal/webUtils.js +4 -0
- package/build/universal/webUtils.js.map +1 -1
- package/ios/BottomSheetView.swift +11 -2
- package/ios/DatePickerView.swift +134 -9
- package/ios/Modifiers/SelectedSegmentTintColorModifier.swift +86 -0
- package/ios/Modifiers/ViewModifierRegistry.swift +4 -0
- package/ios/RNHostView.swift +34 -16
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{58.0.21/expo.modules.ui-58.0.21-sources.jar → 58.0.22/expo.modules.ui-58.0.22-sources.jar} +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22-sources.jar.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22-sources.jar.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22-sources.jar.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22-sources.jar.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.aar +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.aar.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.aar.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.aar.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.aar.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{58.0.21/expo.modules.ui-58.0.21.module → 58.0.22/expo.modules.ui-58.0.22.module} +22 -22
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.module.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.module.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.module.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.module.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{58.0.21/expo.modules.ui-58.0.21.pom → 58.0.22/expo.modules.ui-58.0.22.pom} +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.pom.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.pom.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.pom.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.22/expo.modules.ui-58.0.22.pom.sha512 +1 -0
- package/package.json +2 -2
- package/src/community/bottom-sheet/BottomSheet.ios.tsx +7 -3
- package/src/community/pager-view/PagerView.ios.tsx +25 -8
- package/src/community/segmented-control/SegmentedControl.ios.tsx +13 -1
- package/src/community/segmented-control/types.tsx +5 -1
- package/src/jetpack-compose/CompositionLocalProvider/index.tsx +43 -0
- package/src/jetpack-compose/Host/index.tsx +50 -4
- package/src/jetpack-compose/Switch/index.tsx +4 -0
- package/src/jetpack-compose/TopAppBar/index.tsx +113 -0
- package/src/jetpack-compose/index.ts +2 -0
- package/src/jetpack-compose/modifiers/index.ts +11 -3
- package/src/swift-ui/BottomSheet/index.tsx +24 -3
- package/src/universal/Checkbox/index.android.tsx +24 -5
- package/src/universal/ScrollView/index.ios.tsx +14 -3
- package/src/universal/Switch/index.android.tsx +23 -4
- package/src/universal/Switch/index.tsx +1 -0
- package/src/universal/Text/index.tsx +2 -2
- package/src/universal/webUtils.ts +4 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21-sources.jar.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21-sources.jar.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21-sources.jar.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21-sources.jar.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.module.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.module.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.module.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.module.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.sha512 +0 -1
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
import { Checkbox as ComposeCheckbox, Row, Text } from '@expo/ui/jetpack-compose';
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
defaultMinSize,
|
|
4
|
+
testID as testIDModifier,
|
|
5
|
+
toggleable,
|
|
6
|
+
} from '@expo/ui/jetpack-compose/modifiers';
|
|
3
7
|
|
|
4
8
|
import type { CheckboxProps } from './types';
|
|
5
9
|
|
|
10
|
+
// Material's minimum touch target.
|
|
11
|
+
const MIN_INTERACTIVE_SIZE = 48;
|
|
12
|
+
|
|
6
13
|
export function Checkbox({
|
|
7
14
|
value,
|
|
8
15
|
onValueChange,
|
|
@@ -11,22 +18,34 @@ export function Checkbox({
|
|
|
11
18
|
testID,
|
|
12
19
|
modifiers,
|
|
13
20
|
}: CheckboxProps) {
|
|
21
|
+
const isLabeled = label != null;
|
|
14
22
|
const checkbox = (
|
|
15
23
|
<ComposeCheckbox
|
|
16
24
|
value={value}
|
|
17
|
-
onCheckedChange={
|
|
25
|
+
onCheckedChange={isLabeled ? undefined : onValueChange}
|
|
18
26
|
enabled={!disabled}
|
|
19
|
-
modifiers={[
|
|
27
|
+
modifiers={[
|
|
28
|
+
...(modifiers ?? []),
|
|
29
|
+
...(isLabeled
|
|
30
|
+
? [defaultMinSize({ minWidth: MIN_INTERACTIVE_SIZE, minHeight: MIN_INTERACTIVE_SIZE })]
|
|
31
|
+
: []),
|
|
32
|
+
...(testID ? [testIDModifier(testID)] : []),
|
|
33
|
+
]}
|
|
20
34
|
/>
|
|
21
35
|
);
|
|
22
36
|
|
|
23
|
-
if (
|
|
37
|
+
if (!isLabeled) return checkbox;
|
|
24
38
|
|
|
25
39
|
return (
|
|
26
40
|
<Row
|
|
27
41
|
verticalAlignment="center"
|
|
28
42
|
horizontalArrangement={{ spacedBy: 8 }}
|
|
29
|
-
modifiers={[
|
|
43
|
+
modifiers={[
|
|
44
|
+
toggleable(value, () => !disabled && onValueChange(!value), {
|
|
45
|
+
role: 'checkbox',
|
|
46
|
+
enabled: !disabled,
|
|
47
|
+
}),
|
|
48
|
+
]}>
|
|
30
49
|
{checkbox}
|
|
31
50
|
<Text>{label}</Text>
|
|
32
51
|
</Row>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HStack, ScrollView as SwiftUIScrollView, VStack } from '@expo/ui/swift-ui';
|
|
2
2
|
import { frame, padding } from '@expo/ui/swift-ui/modifiers';
|
|
3
3
|
import type { ModifierConfig } from '@expo/ui/swift-ui/modifiers';
|
|
4
4
|
|
|
@@ -18,7 +18,7 @@ export function ScrollView({
|
|
|
18
18
|
testID,
|
|
19
19
|
modifiers: extraModifiers,
|
|
20
20
|
}: ScrollViewProps) {
|
|
21
|
-
// Extract padding from style — it goes on the inner
|
|
21
|
+
// Extract padding from style — it goes on the inner stack so content is
|
|
22
22
|
// inset after stretching to full width.
|
|
23
23
|
const {
|
|
24
24
|
padding: paddingAll,
|
|
@@ -64,13 +64,24 @@ export function ScrollView({
|
|
|
64
64
|
);
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
+
const stack =
|
|
68
|
+
direction === 'horizontal' ? (
|
|
69
|
+
<HStack alignment="top" modifiers={innerModifiers}>
|
|
70
|
+
{children}
|
|
71
|
+
</HStack>
|
|
72
|
+
) : (
|
|
73
|
+
<VStack alignment="leading" modifiers={innerModifiers}>
|
|
74
|
+
{children}
|
|
75
|
+
</VStack>
|
|
76
|
+
);
|
|
77
|
+
|
|
67
78
|
return (
|
|
68
79
|
<SwiftUIScrollView
|
|
69
80
|
axes={direction}
|
|
70
81
|
showsIndicators={showsIndicators}
|
|
71
82
|
modifiers={scrollModifiers}
|
|
72
83
|
testID={testID}>
|
|
73
|
-
|
|
84
|
+
{stack}
|
|
74
85
|
</SwiftUIScrollView>
|
|
75
86
|
);
|
|
76
87
|
}
|
|
@@ -1,31 +1,50 @@
|
|
|
1
1
|
import { Row, Switch as ComposeSwitch, Text } from '@expo/ui/jetpack-compose';
|
|
2
2
|
import {
|
|
3
|
+
defaultMinSize,
|
|
3
4
|
fillMaxWidth,
|
|
4
5
|
IntrinsicSize,
|
|
5
6
|
testID as testIDModifier,
|
|
7
|
+
toggleable,
|
|
6
8
|
weight,
|
|
7
9
|
width,
|
|
8
10
|
} from '@expo/ui/jetpack-compose/modifiers';
|
|
9
11
|
|
|
10
12
|
import type { SwitchProps } from './types';
|
|
11
13
|
|
|
14
|
+
// Material's minimum touch target.
|
|
15
|
+
const MIN_INTERACTIVE_SIZE = 48;
|
|
16
|
+
|
|
12
17
|
export function Switch({ value, onValueChange, label, disabled, testID, modifiers }: SwitchProps) {
|
|
18
|
+
const isLabeled = label != null;
|
|
13
19
|
const toggle = (
|
|
14
20
|
<ComposeSwitch
|
|
15
21
|
value={value}
|
|
16
|
-
onCheckedChange={
|
|
22
|
+
onCheckedChange={isLabeled ? undefined : onValueChange}
|
|
17
23
|
enabled={!disabled}
|
|
18
|
-
modifiers={[
|
|
24
|
+
modifiers={[
|
|
25
|
+
...(modifiers ?? []),
|
|
26
|
+
...(isLabeled
|
|
27
|
+
? [defaultMinSize({ minWidth: MIN_INTERACTIVE_SIZE, minHeight: MIN_INTERACTIVE_SIZE })]
|
|
28
|
+
: []),
|
|
29
|
+
...(testID ? [testIDModifier(testID)] : []),
|
|
30
|
+
]}
|
|
19
31
|
/>
|
|
20
32
|
);
|
|
21
33
|
|
|
22
|
-
if (
|
|
34
|
+
if (!isLabeled) return toggle;
|
|
23
35
|
|
|
24
36
|
return (
|
|
25
37
|
<Row
|
|
26
38
|
verticalAlignment="center"
|
|
27
39
|
horizontalArrangement={{ spacedBy: 8 }}
|
|
28
|
-
modifiers={[
|
|
40
|
+
modifiers={[
|
|
41
|
+
fillMaxWidth(),
|
|
42
|
+
width(IntrinsicSize.Max),
|
|
43
|
+
toggleable(value, () => !disabled && onValueChange(!value), {
|
|
44
|
+
role: 'switch',
|
|
45
|
+
enabled: !disabled,
|
|
46
|
+
}),
|
|
47
|
+
]}>
|
|
29
48
|
<Text modifiers={[weight(1)]}>{label}</Text>
|
|
30
49
|
{toggle}
|
|
31
50
|
</Row>
|
|
@@ -4,8 +4,8 @@ import { useUniversalLifecycle } from '../hooks';
|
|
|
4
4
|
import type { TextProps } from './types';
|
|
5
5
|
|
|
6
6
|
const styles = StyleSheet.create({
|
|
7
|
-
light: { color: '#000000' },
|
|
8
|
-
dark: { color: '#FFFFFF' },
|
|
7
|
+
light: { color: 'var(--expo-ui-foreground, #000000)' },
|
|
8
|
+
dark: { color: 'var(--expo-ui-foreground, #FFFFFF)' },
|
|
9
9
|
hidden: { display: 'none' },
|
|
10
10
|
disabled: { opacity: 0.5 },
|
|
11
11
|
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
83ac1d8d00a142a3ffa834c4a6c1db65
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
5d7c4fd251da7578f23af5102d539533aefb3e64
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
f9a24faad34f9f66bebcdde7d05a6cf72a8b4b9030819b80049de5084a694ef0
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
10ed672c04082cf5f06e6ca6dca0f28229f11f3d503d46e5b61dbc7d3ad50bfdc1399838dd38dc5b8c1643ec375c4bf1672c95606ce28f7ed36384f66b829b68
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar
DELETED
|
Binary file
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.md5
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
485ed53072102e73937c25dae52b054c
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.sha1
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0a7945dfaec70218a5a6ed678049dd831dde7c23
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.sha256
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
83f788f94510400d5695ee901721e3cef284309da751b00c9df7eeb8e4fdd5ca
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.aar.sha512
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
61d884b5f7528ac4d2791cebbdc45eefa1bfaf4eca17faf37b322a58a5670b042b1096a860bba051adb4a9d95334f227a9ea8f69473289d7a7725ea2600d7c48
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.module.md5
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
8fcf066c38977392c25464211134215f
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.module.sha1
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
aa7bf9c6ba26b5b17ed01fee30da4bebcccc3a30
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
40b983bbed71d40341901a69d3ccb11f05df376770fdf645d690adcdc2ecb2ad
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
d99293cea982f3bb6bd43ced68122e957b7de2fe6462e340d3a712220a05102f2c399896100844629fbaf9e4676005d0f5975d27b35066d4b1714a40ba160e22
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.md5
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
5eeba624939deea1d7fb87fe510557ae
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.sha1
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
326c7b1245711c1546f6cff3d3b43a8d0055a7d5
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.sha256
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
6f11e59da1bd0114fa50e832c7adb7f64651956a13e2989218f3f24b5e210b63
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/58.0.21/expo.modules.ui-58.0.21.pom.sha512
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
d469c3b770e3c8135b80e503922da3361b5eb101d722a3cb92fa2602585c37938a0bc8096a6e1735e4d7d8612dcc46b7eb486816780a49a62531c58f48c7d3be
|