@expo/ui 56.0.18 → 56.0.20
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 +38 -0
- package/android/build.gradle +2 -2
- package/android/src/main/java/expo/modules/ui/DatePickerView.kt +33 -8
- package/build/community/bottom-sheet/BottomSheet.android.d.ts.map +1 -1
- package/build/community/bottom-sheet/BottomSheet.ios.d.ts.map +1 -1
- package/build/community/bottom-sheet/scrollContextReset.d.ts +5 -0
- package/build/community/bottom-sheet/scrollContextReset.d.ts.map +1 -0
- package/build/community/datetime-picker/DateTimePicker.d.ts.map +1 -1
- package/build/community/datetime-picker/types.d.ts +2 -2
- package/build/community/datetime-picker/types.d.ts.map +1 -1
- package/build/community/masked-view/MaskedView.android.d.ts.map +1 -1
- package/build/community/masked-view/MaskedView.ios.d.ts.map +1 -1
- package/build/community/menu/types.d.ts +2 -2
- package/build/community/menu/types.d.ts.map +1 -1
- package/build/community/pager-view/types.d.ts +2 -2
- package/build/community/pager-view/types.d.ts.map +1 -1
- package/build/community/segmented-control/types.d.ts +2 -2
- package/build/community/segmented-control/types.d.ts.map +1 -1
- package/build/community/slider/types.d.ts +2 -2
- package/build/community/slider/types.d.ts.map +1 -1
- package/build/jetpack-compose/AlertDialog/index.d.ts +2 -2
- package/build/jetpack-compose/AlertDialog/index.d.ts.map +1 -1
- package/build/jetpack-compose/AnimatedVisibility/index.d.ts +2 -2
- package/build/jetpack-compose/AnimatedVisibility/index.d.ts.map +1 -1
- package/build/jetpack-compose/Badge/index.d.ts +2 -2
- package/build/jetpack-compose/Badge/index.d.ts.map +1 -1
- package/build/jetpack-compose/BadgedBox/index.d.ts +2 -2
- package/build/jetpack-compose/BadgedBox/index.d.ts.map +1 -1
- package/build/jetpack-compose/BasicAlertDialog/index.d.ts +2 -2
- package/build/jetpack-compose/BasicAlertDialog/index.d.ts.map +1 -1
- package/build/jetpack-compose/Box/index.d.ts +2 -2
- package/build/jetpack-compose/Box/index.d.ts.map +1 -1
- package/build/jetpack-compose/Button/index.d.ts +2 -2
- package/build/jetpack-compose/Button/index.d.ts.map +1 -1
- package/build/jetpack-compose/Card/index.d.ts +6 -6
- package/build/jetpack-compose/Card/index.d.ts.map +1 -1
- package/build/jetpack-compose/Carousel/index.d.ts +6 -6
- package/build/jetpack-compose/Carousel/index.d.ts.map +1 -1
- package/build/jetpack-compose/Checkbox/index.d.ts +4 -4
- package/build/jetpack-compose/Checkbox/index.d.ts.map +1 -1
- package/build/jetpack-compose/Chip/index.d.ts +8 -8
- package/build/jetpack-compose/Chip/index.d.ts.map +1 -1
- package/build/jetpack-compose/Column/index.d.ts +2 -2
- package/build/jetpack-compose/Column/index.d.ts.map +1 -1
- package/build/jetpack-compose/DatePicker/index.d.ts +6 -6
- package/build/jetpack-compose/DatePicker/index.d.ts.map +1 -1
- package/build/jetpack-compose/DockedSearchBar/index.d.ts +2 -2
- package/build/jetpack-compose/DockedSearchBar/index.d.ts.map +1 -1
- package/build/jetpack-compose/DropdownMenu/DropdownMenuItem.d.ts +2 -2
- package/build/jetpack-compose/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
- package/build/jetpack-compose/DropdownMenu/index.d.ts +2 -2
- package/build/jetpack-compose/DropdownMenu/index.d.ts.map +1 -1
- package/build/jetpack-compose/ExposedDropdownMenuBox/ExposedDropdownMenu.d.ts +2 -2
- package/build/jetpack-compose/ExposedDropdownMenuBox/ExposedDropdownMenu.d.ts.map +1 -1
- package/build/jetpack-compose/ExposedDropdownMenuBox/index.d.ts +2 -2
- package/build/jetpack-compose/ExposedDropdownMenuBox/index.d.ts.map +1 -1
- package/build/jetpack-compose/FloatingActionButton/index.d.ts +8 -6
- package/build/jetpack-compose/FloatingActionButton/index.d.ts.map +1 -1
- package/build/jetpack-compose/FlowRow/index.d.ts +2 -2
- package/build/jetpack-compose/FlowRow/index.d.ts.map +1 -1
- package/build/jetpack-compose/HorizontalFloatingToolbar/index.d.ts +4 -4
- package/build/jetpack-compose/HorizontalFloatingToolbar/index.d.ts.map +1 -1
- package/build/jetpack-compose/HorizontalPager/index.d.ts +2 -2
- package/build/jetpack-compose/HorizontalPager/index.d.ts.map +1 -1
- package/build/jetpack-compose/Host/index.d.ts +2 -2
- package/build/jetpack-compose/Host/index.d.ts.map +1 -1
- package/build/jetpack-compose/Icon/index.d.ts +2 -2
- package/build/jetpack-compose/Icon/index.d.ts.map +1 -1
- package/build/jetpack-compose/IconButton/index.d.ts +2 -2
- package/build/jetpack-compose/IconButton/index.d.ts.map +1 -1
- package/build/jetpack-compose/LazyColumn/index.d.ts +2 -2
- package/build/jetpack-compose/LazyColumn/index.d.ts.map +1 -1
- package/build/jetpack-compose/LazyRow/index.d.ts +2 -2
- package/build/jetpack-compose/LazyRow/index.d.ts.map +1 -1
- package/build/jetpack-compose/ListItem/index.d.ts +2 -2
- package/build/jetpack-compose/ListItem/index.d.ts.map +1 -1
- package/build/jetpack-compose/LoadingIndicator/index.d.ts +2 -2
- package/build/jetpack-compose/LoadingIndicator/index.d.ts.map +1 -1
- package/build/jetpack-compose/ModalBottomSheet/index.d.ts +2 -2
- package/build/jetpack-compose/ModalBottomSheet/index.d.ts.map +1 -1
- package/build/jetpack-compose/MultiChoiceSegmentedButtonRow/index.d.ts +2 -2
- package/build/jetpack-compose/MultiChoiceSegmentedButtonRow/index.d.ts.map +1 -1
- package/build/jetpack-compose/NavigationBar/index.d.ts +4 -4
- package/build/jetpack-compose/NavigationBar/index.d.ts.map +1 -1
- package/build/jetpack-compose/Progress/index.d.ts +9 -8
- package/build/jetpack-compose/Progress/index.d.ts.map +1 -1
- package/build/jetpack-compose/PullToRefreshBox/index.d.ts +4 -4
- package/build/jetpack-compose/PullToRefreshBox/index.d.ts.map +1 -1
- package/build/jetpack-compose/RadioButton/index.d.ts +2 -2
- package/build/jetpack-compose/RadioButton/index.d.ts.map +1 -1
- package/build/jetpack-compose/Row/index.d.ts +2 -2
- package/build/jetpack-compose/Row/index.d.ts.map +1 -1
- package/build/jetpack-compose/SearchBar/index.d.ts +2 -2
- package/build/jetpack-compose/SearchBar/index.d.ts.map +1 -1
- package/build/jetpack-compose/SegmentedButton/index.d.ts +2 -2
- package/build/jetpack-compose/SegmentedButton/index.d.ts.map +1 -1
- package/build/jetpack-compose/Shape/index.d.ts +2 -2
- package/build/jetpack-compose/Shape/index.d.ts.map +1 -1
- package/build/jetpack-compose/SingleChoiceSegmentedButtonRow/index.d.ts +2 -2
- package/build/jetpack-compose/SingleChoiceSegmentedButtonRow/index.d.ts.map +1 -1
- package/build/jetpack-compose/Slider/index.d.ts +2 -2
- package/build/jetpack-compose/Slider/index.d.ts.map +1 -1
- package/build/jetpack-compose/Snackbar/index.d.ts +4 -4
- package/build/jetpack-compose/Snackbar/index.d.ts.map +1 -1
- package/build/jetpack-compose/Spacer/index.d.ts +2 -2
- package/build/jetpack-compose/Spacer/index.d.ts.map +1 -1
- package/build/jetpack-compose/Surface/index.d.ts +2 -2
- package/build/jetpack-compose/Surface/index.d.ts.map +1 -1
- package/build/jetpack-compose/Switch/index.d.ts +2 -2
- package/build/jetpack-compose/Switch/index.d.ts.map +1 -1
- package/build/jetpack-compose/SyncSwitch/index.d.ts +2 -2
- package/build/jetpack-compose/SyncSwitch/index.d.ts.map +1 -1
- package/build/jetpack-compose/Text/index.d.ts +2 -2
- package/build/jetpack-compose/Text/index.d.ts.map +1 -1
- package/build/jetpack-compose/TextField/BasicTextField.d.ts +2 -2
- package/build/jetpack-compose/TextField/BasicTextField.d.ts.map +1 -1
- package/build/jetpack-compose/TextField/TextField.d.ts +4 -4
- package/build/jetpack-compose/TextField/TextField.d.ts.map +1 -1
- package/build/jetpack-compose/ToggleButton/index.d.ts +2 -2
- package/build/jetpack-compose/ToggleButton/index.d.ts.map +1 -1
- package/build/jetpack-compose/Tooltip/index.d.ts +6 -6
- package/build/jetpack-compose/Tooltip/index.d.ts.map +1 -1
- package/build/swift-ui/AccessoryWidgetBackground/index.d.ts +2 -1
- package/build/swift-ui/AccessoryWidgetBackground/index.d.ts.map +1 -1
- package/build/swift-ui/Alert/index.d.ts +2 -2
- package/build/swift-ui/Alert/index.d.ts.map +1 -1
- package/build/swift-ui/BottomSheet/index.d.ts +2 -2
- package/build/swift-ui/BottomSheet/index.d.ts.map +1 -1
- package/build/swift-ui/Button/index.d.ts +2 -2
- package/build/swift-ui/Button/index.d.ts.map +1 -1
- package/build/swift-ui/Chart/index.d.ts +2 -2
- package/build/swift-ui/Chart/index.d.ts.map +1 -1
- package/build/swift-ui/ColorPicker/index.d.ts +2 -2
- package/build/swift-ui/ColorPicker/index.d.ts.map +1 -1
- package/build/swift-ui/ConfirmationDialog/index.d.ts +2 -2
- package/build/swift-ui/ConfirmationDialog/index.d.ts.map +1 -1
- package/build/swift-ui/ContextMenu/types.d.ts +4 -4
- package/build/swift-ui/ContextMenu/types.d.ts.map +1 -1
- package/build/swift-ui/DatePicker/index.d.ts +2 -2
- package/build/swift-ui/DatePicker/index.d.ts.map +1 -1
- package/build/swift-ui/Divider/index.d.ts +2 -1
- package/build/swift-ui/Divider/index.d.ts.map +1 -1
- package/build/swift-ui/Gauge/index.d.ts +2 -2
- package/build/swift-ui/Gauge/index.d.ts.map +1 -1
- package/build/swift-ui/GlassEffectContainer/index.d.ts +2 -2
- package/build/swift-ui/GlassEffectContainer/index.d.ts.map +1 -1
- package/build/swift-ui/Grid/index.d.ts +2 -2
- package/build/swift-ui/Grid/index.d.ts.map +1 -1
- package/build/swift-ui/HStack/index.d.ts +2 -2
- package/build/swift-ui/HStack/index.d.ts.map +1 -1
- package/build/swift-ui/Host/index.d.ts +9 -3
- package/build/swift-ui/Host/index.d.ts.map +1 -1
- package/build/swift-ui/Label/index.d.ts +2 -2
- package/build/swift-ui/Label/index.d.ts.map +1 -1
- package/build/swift-ui/LabeledContent/index.d.ts +2 -2
- package/build/swift-ui/LabeledContent/index.d.ts.map +1 -1
- package/build/swift-ui/LazyHStack/index.d.ts +2 -2
- package/build/swift-ui/LazyHStack/index.d.ts.map +1 -1
- package/build/swift-ui/LazyVStack/index.d.ts +2 -2
- package/build/swift-ui/LazyVStack/index.d.ts.map +1 -1
- package/build/swift-ui/Link/index.d.ts +2 -2
- package/build/swift-ui/Link/index.d.ts.map +1 -1
- package/build/swift-ui/List/ListForEach.d.ts +2 -2
- package/build/swift-ui/List/ListForEach.d.ts.map +1 -1
- package/build/swift-ui/Mask/index.d.ts +2 -2
- package/build/swift-ui/Mask/index.d.ts.map +1 -1
- package/build/swift-ui/Menu/types.d.ts +2 -2
- package/build/swift-ui/Menu/types.d.ts.map +1 -1
- package/build/swift-ui/Namespace.d.ts +2 -2
- package/build/swift-ui/Namespace.d.ts.map +1 -1
- package/build/swift-ui/Overlay/index.d.ts +2 -2
- package/build/swift-ui/Overlay/index.d.ts.map +1 -1
- package/build/swift-ui/Popover/index.d.ts +2 -2
- package/build/swift-ui/Popover/index.d.ts.map +1 -1
- package/build/swift-ui/ProgressView/index.d.ts +2 -2
- package/build/swift-ui/ProgressView/index.d.ts.map +1 -1
- package/build/swift-ui/RNHostView.d.ts +2 -2
- package/build/swift-ui/RNHostView.d.ts.map +1 -1
- package/build/swift-ui/ScrollView/index.d.ts +2 -2
- package/build/swift-ui/ScrollView/index.d.ts.map +1 -1
- package/build/swift-ui/Section/index.d.ts +2 -2
- package/build/swift-ui/Section/index.d.ts.map +1 -1
- package/build/swift-ui/SecureField/index.d.ts +2 -2
- package/build/swift-ui/SecureField/index.d.ts.map +1 -1
- package/build/swift-ui/ShareLink/index.d.ts +2 -2
- package/build/swift-ui/ShareLink/index.d.ts.map +1 -1
- package/build/swift-ui/Slider/index.d.ts +2 -2
- package/build/swift-ui/Slider/index.d.ts.map +1 -1
- package/build/swift-ui/Stepper/index.d.ts +2 -2
- package/build/swift-ui/Stepper/index.d.ts.map +1 -1
- package/build/swift-ui/SwipeActions/index.d.ts +4 -4
- package/build/swift-ui/SwipeActions/index.d.ts.map +1 -1
- package/build/swift-ui/SyncToggle/index.d.ts +2 -2
- package/build/swift-ui/SyncToggle/index.d.ts.map +1 -1
- package/build/swift-ui/TabView/Tab.d.ts +2 -2
- package/build/swift-ui/TabView/Tab.d.ts.map +1 -1
- package/build/swift-ui/TabView/index.d.ts +2 -2
- package/build/swift-ui/TabView/index.d.ts.map +1 -1
- package/build/swift-ui/TextField/index.d.ts +2 -2
- package/build/swift-ui/TextField/index.d.ts.map +1 -1
- package/build/swift-ui/Toggle/index.d.ts +2 -2
- package/build/swift-ui/Toggle/index.d.ts.map +1 -1
- package/build/swift-ui/VStack/index.d.ts +2 -2
- package/build/swift-ui/VStack/index.d.ts.map +1 -1
- package/build/swift-ui/ZStack/index.d.ts +2 -2
- package/build/swift-ui/ZStack/index.d.ts.map +1 -1
- package/build/swift-ui/modifiers/index.d.ts +107 -1
- package/build/swift-ui/modifiers/index.d.ts.map +1 -1
- package/build/swift-ui/modifiers/presentationModifiers.d.ts +19 -0
- package/build/swift-ui/modifiers/presentationModifiers.d.ts.map +1 -1
- package/build/universal/Button/index.d.ts.map +1 -1
- package/build/universal/Checkbox/index.d.ts.map +1 -1
- package/build/universal/Collapsible/index.d.ts.map +1 -1
- package/build/universal/FieldGroup/FieldGroup.d.ts.map +1 -1
- package/build/universal/FieldGroup/FieldSection.d.ts.map +1 -1
- package/build/universal/Host/index.d.ts +1 -2
- package/build/universal/Host/index.d.ts.map +1 -1
- package/build/universal/Host/types.d.ts +16 -2
- package/build/universal/Host/types.d.ts.map +1 -1
- package/build/universal/ListItem/ListItem.android.d.ts.map +1 -1
- package/build/universal/ListItem/ListItem.ios.d.ts.map +1 -1
- package/build/universal/ListItem/types.d.ts +8 -0
- package/build/universal/ListItem/types.d.ts.map +1 -1
- package/build/universal/Picker/Picker.d.ts.map +1 -1
- package/build/universal/Slider/index.d.ts.map +1 -1
- package/build/universal/Switch/index.d.ts.map +1 -1
- package/build/universal/TextInput/index.d.ts.map +1 -1
- package/build/universal/hooks.d.ts +11 -0
- package/build/universal/hooks.d.ts.map +1 -1
- package/build/universal/keyboardEvent.fx.d.ts +2 -0
- package/build/universal/keyboardEvent.fx.d.ts.map +1 -0
- package/build/universal/webUtils.d.ts +66 -0
- package/build/universal/webUtils.d.ts.map +1 -0
- package/expo-module.config.json +1 -1
- package/ios/HostView.swift +15 -0
- package/ios/Modifiers/PresentationModifiers.swift +30 -0
- package/ios/Modifiers/ShapeTypes.swift +50 -0
- package/ios/Modifiers/ViewModifierRegistry.swift +259 -11
- package/ios/Modifiers/WidgetModifiers.swift +1 -1
- package/ios/RNHostView.swift +5 -0
- package/ios/TextFieldView.swift +29 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.18/expo.modules.ui-56.0.18-sources.jar → 56.0.20/expo.modules.ui-56.0.20-sources.jar} +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20-sources.jar.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20-sources.jar.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20-sources.jar.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20-sources.jar.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.aar +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.aar.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.aar.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.aar.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.aar.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.18/expo.modules.ui-56.0.18.module → 56.0.20/expo.modules.ui-56.0.20.module} +22 -22
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.module.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.module.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.module.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.module.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.18/expo.modules.ui-56.0.18.pom → 56.0.20/expo.modules.ui-56.0.20.pom} +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.pom.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.pom.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.pom.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.20/expo.modules.ui-56.0.20.pom.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml +4 -4
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.md5 +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha1 +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha256 +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/maven-metadata.xml.sha512 +1 -1
- package/package.json +5 -9
- package/plugin/tsconfig.tsbuildinfo +1 -0
- package/src/State/index.fx.ts +4 -5
- package/src/community/bottom-sheet/BottomSheet.android.tsx +6 -1
- package/src/community/bottom-sheet/BottomSheet.ios.tsx +8 -4
- package/src/community/bottom-sheet/scrollContextReset.tsx +24 -0
- package/src/community/datetime-picker/DateTimePicker.tsx +9 -1
- package/src/community/datetime-picker/types.tsx +2 -2
- package/src/community/masked-view/MaskedView.android.tsx +5 -2
- package/src/community/masked-view/MaskedView.ios.tsx +5 -2
- package/src/community/menu/types.tsx +2 -2
- package/src/community/pager-view/types.tsx +2 -2
- package/src/community/segmented-control/types.tsx +2 -2
- package/src/community/slider/types.tsx +2 -2
- package/src/jetpack-compose/AlertDialog/index.tsx +2 -2
- package/src/jetpack-compose/AnimatedVisibility/index.tsx +2 -2
- package/src/jetpack-compose/Badge/index.tsx +2 -2
- package/src/jetpack-compose/BadgedBox/index.tsx +2 -2
- package/src/jetpack-compose/BasicAlertDialog/index.tsx +2 -2
- package/src/jetpack-compose/Box/index.tsx +2 -2
- package/src/jetpack-compose/Button/index.tsx +2 -2
- package/src/jetpack-compose/Card/index.tsx +6 -6
- package/src/jetpack-compose/Carousel/index.tsx +6 -6
- package/src/jetpack-compose/Checkbox/index.tsx +4 -4
- package/src/jetpack-compose/Chip/index.tsx +8 -8
- package/src/jetpack-compose/Column/index.tsx +2 -2
- package/src/jetpack-compose/DatePicker/index.tsx +6 -6
- package/src/jetpack-compose/DockedSearchBar/index.tsx +2 -2
- package/src/jetpack-compose/DropdownMenu/DropdownMenuItem.tsx +2 -2
- package/src/jetpack-compose/DropdownMenu/index.tsx +2 -2
- package/src/jetpack-compose/ExposedDropdownMenuBox/ExposedDropdownMenu.tsx +2 -2
- package/src/jetpack-compose/ExposedDropdownMenuBox/index.tsx +2 -2
- package/src/jetpack-compose/FloatingActionButton/index.tsx +6 -6
- package/src/jetpack-compose/FlowRow/index.tsx +2 -2
- package/src/jetpack-compose/HorizontalFloatingToolbar/index.tsx +4 -4
- package/src/jetpack-compose/HorizontalPager/index.tsx +2 -2
- package/src/jetpack-compose/Host/index.tsx +2 -2
- package/src/jetpack-compose/Icon/index.tsx +2 -2
- package/src/jetpack-compose/IconButton/index.tsx +2 -2
- package/src/jetpack-compose/LazyColumn/index.tsx +2 -2
- package/src/jetpack-compose/LazyRow/index.tsx +2 -2
- package/src/jetpack-compose/ListItem/index.tsx +2 -2
- package/src/jetpack-compose/LoadingIndicator/index.tsx +2 -2
- package/src/jetpack-compose/ModalBottomSheet/index.tsx +2 -2
- package/src/jetpack-compose/MultiChoiceSegmentedButtonRow/index.tsx +2 -2
- package/src/jetpack-compose/NavigationBar/index.tsx +4 -4
- package/src/jetpack-compose/Progress/index.tsx +7 -7
- package/src/jetpack-compose/PullToRefreshBox/index.tsx +4 -4
- package/src/jetpack-compose/RadioButton/index.tsx +2 -2
- package/src/jetpack-compose/Row/index.tsx +2 -2
- package/src/jetpack-compose/SearchBar/index.tsx +2 -2
- package/src/jetpack-compose/SegmentedButton/index.tsx +2 -2
- package/src/jetpack-compose/Shape/index.tsx +2 -2
- package/src/jetpack-compose/SingleChoiceSegmentedButtonRow/index.tsx +2 -2
- package/src/jetpack-compose/Slider/index.tsx +2 -2
- package/src/jetpack-compose/Snackbar/index.tsx +4 -4
- package/src/jetpack-compose/Spacer/index.tsx +2 -2
- package/src/jetpack-compose/Surface/index.tsx +2 -2
- package/src/jetpack-compose/Switch/index.tsx +2 -2
- package/src/jetpack-compose/SyncSwitch/index.tsx +2 -2
- package/src/jetpack-compose/Text/index.tsx +2 -2
- package/src/jetpack-compose/TextField/BasicTextField.tsx +2 -2
- package/src/jetpack-compose/TextField/TextField.tsx +4 -4
- package/src/jetpack-compose/ToggleButton/index.tsx +2 -2
- package/src/jetpack-compose/Tooltip/index.tsx +6 -6
- package/src/swift-ui/AccessoryWidgetBackground/index.tsx +1 -1
- package/src/swift-ui/Alert/index.tsx +2 -2
- package/src/swift-ui/BottomSheet/index.tsx +2 -2
- package/src/swift-ui/Button/index.tsx +2 -2
- package/src/swift-ui/Chart/index.tsx +2 -2
- package/src/swift-ui/ColorPicker/index.tsx +2 -2
- package/src/swift-ui/ConfirmationDialog/index.tsx +2 -2
- package/src/swift-ui/ContextMenu/types.ts +4 -4
- package/src/swift-ui/DatePicker/index.tsx +2 -2
- package/src/swift-ui/Divider/index.tsx +1 -1
- package/src/swift-ui/Gauge/index.tsx +2 -2
- package/src/swift-ui/GlassEffectContainer/index.tsx +2 -2
- package/src/swift-ui/Grid/index.tsx +2 -2
- package/src/swift-ui/HStack/index.tsx +2 -2
- package/src/swift-ui/Host/index.tsx +12 -3
- package/src/swift-ui/Label/index.tsx +2 -2
- package/src/swift-ui/LabeledContent/index.tsx +2 -2
- package/src/swift-ui/LazyHStack/index.tsx +2 -2
- package/src/swift-ui/LazyVStack/index.tsx +2 -2
- package/src/swift-ui/Link/index.tsx +2 -2
- package/src/swift-ui/List/ListForEach.tsx +2 -2
- package/src/swift-ui/Mask/index.tsx +2 -2
- package/src/swift-ui/Menu/types.ts +2 -2
- package/src/swift-ui/Namespace.tsx +2 -2
- package/src/swift-ui/Overlay/index.tsx +2 -2
- package/src/swift-ui/Popover/index.tsx +2 -2
- package/src/swift-ui/ProgressView/index.tsx +2 -2
- package/src/swift-ui/RNHostView.tsx +2 -2
- package/src/swift-ui/ScrollView/index.tsx +2 -2
- package/src/swift-ui/Section/index.tsx +2 -2
- package/src/swift-ui/SecureField/index.tsx +2 -2
- package/src/swift-ui/ShareLink/index.tsx +2 -2
- package/src/swift-ui/Slider/index.tsx +2 -2
- package/src/swift-ui/Stepper/index.tsx +2 -2
- package/src/swift-ui/SwipeActions/index.tsx +4 -4
- package/src/swift-ui/SyncToggle/index.tsx +2 -2
- package/src/swift-ui/TabView/Tab.tsx +2 -2
- package/src/swift-ui/TabView/index.tsx +2 -2
- package/src/swift-ui/TextField/index.tsx +2 -2
- package/src/swift-ui/Toggle/index.tsx +2 -2
- package/src/swift-ui/VStack/index.tsx +2 -2
- package/src/swift-ui/ZStack/index.tsx +2 -2
- package/src/swift-ui/modifiers/index.ts +161 -0
- package/src/swift-ui/modifiers/presentationModifiers.ts +22 -0
- package/src/ts-declarations/react-native-web.d.ts +31 -3
- package/src/universal/Button/index.tsx +83 -35
- package/src/universal/Checkbox/index.tsx +85 -30
- package/src/universal/Collapsible/index.tsx +5 -17
- package/src/universal/FieldGroup/FieldGroup.tsx +5 -15
- package/src/universal/FieldGroup/FieldSection.tsx +14 -31
- package/src/universal/Host/index.tsx +44 -30
- package/src/universal/Host/types.ts +17 -2
- package/src/universal/ListItem/ListItem.android.tsx +10 -2
- package/src/universal/ListItem/ListItem.ios.tsx +23 -6
- package/src/universal/ListItem/types.ts +10 -0
- package/src/universal/Picker/Picker.tsx +74 -29
- package/src/universal/Slider/index.tsx +90 -9
- package/src/universal/Switch/index.android.tsx +2 -2
- package/src/universal/Switch/index.tsx +77 -18
- package/src/universal/TextInput/index.tsx +49 -13
- package/src/universal/hooks.ts +25 -1
- package/src/universal/keyboardEvent.fx.ts +28 -0
- package/src/universal/webUtils.ts +245 -0
- package/CLAUDE.md +0 -54
- package/CONTRIBUTING.md +0 -30
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18-sources.jar.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18-sources.jar.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18-sources.jar.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18-sources.jar.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.aar +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.aar.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.aar.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.aar.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.aar.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.module.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.module.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.module.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.module.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.pom.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.pom.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.pom.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.18/expo.modules.ui-56.0.18.pom.sha512 +0 -1
package/package.json
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expo/ui",
|
|
3
|
-
"version": "56.0.
|
|
3
|
+
"version": "56.0.20",
|
|
4
4
|
"description": "A collection of UI components",
|
|
5
5
|
"sideEffects": [
|
|
6
|
-
"*.fx.js"
|
|
6
|
+
"*.fx.js",
|
|
7
|
+
"*.fx.ts"
|
|
7
8
|
],
|
|
8
9
|
"exports": {
|
|
9
10
|
"./package.json": "./package.json",
|
|
@@ -93,9 +94,8 @@
|
|
|
93
94
|
"@types/babel__core": "^7.20.5",
|
|
94
95
|
"@types/node": "^22.14.0",
|
|
95
96
|
"@types/react": "~19.2.0",
|
|
96
|
-
"react-native-reanimated": "4.3.1",
|
|
97
97
|
"react-native-worklets": "0.8.3",
|
|
98
|
-
"expo": "56.0.
|
|
98
|
+
"expo": "56.0.14",
|
|
99
99
|
"expo-module-scripts": "56.0.3"
|
|
100
100
|
},
|
|
101
101
|
"jest": {
|
|
@@ -107,7 +107,6 @@
|
|
|
107
107
|
"react": "*",
|
|
108
108
|
"react-dom": "*",
|
|
109
109
|
"react-native": "*",
|
|
110
|
-
"react-native-reanimated": "*",
|
|
111
110
|
"react-native-worklets": "*"
|
|
112
111
|
},
|
|
113
112
|
"peerDependenciesMeta": {
|
|
@@ -117,14 +116,11 @@
|
|
|
117
116
|
"react-dom": {
|
|
118
117
|
"optional": true
|
|
119
118
|
},
|
|
120
|
-
"react-native-reanimated": {
|
|
121
|
-
"optional": true
|
|
122
|
-
},
|
|
123
119
|
"react-native-worklets": {
|
|
124
120
|
"optional": true
|
|
125
121
|
}
|
|
126
122
|
},
|
|
127
|
-
"gitHead": "
|
|
123
|
+
"gitHead": "b2e161a54f90a778ab7e5560c0c8f021bbfcaae2",
|
|
128
124
|
"scripts": {
|
|
129
125
|
"build": "expo-module build",
|
|
130
126
|
"clean": "expo-module clean",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["./src/babel-plugin.ts"],"version":"6.0.3"}
|
package/src/State/index.fx.ts
CHANGED
|
@@ -61,11 +61,10 @@ function registerSharedObjectSerializer(): void {
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
try {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
registerSharedObjectSerializer();
|
|
64
|
+
if (worklets) {
|
|
65
|
+
installOnUIRuntime(worklets.getUIRuntimeHolder());
|
|
66
|
+
registerSharedObjectSerializer();
|
|
67
|
+
}
|
|
69
68
|
} catch {
|
|
70
69
|
// Fail silently as worklet support is currently optional in Expo UI
|
|
71
70
|
}
|
|
@@ -2,6 +2,7 @@ import { useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState
|
|
|
2
2
|
import { StyleSheet, useWindowDimensions, View } from 'react-native';
|
|
3
3
|
|
|
4
4
|
import { BottomSheetContext, BottomSheetInternalContext } from './context';
|
|
5
|
+
import { SheetScrollContextReset } from './scrollContextReset';
|
|
5
6
|
import type { BottomSheetMethods, BottomSheetProps } from './types';
|
|
6
7
|
import { parseSnapPoint } from './types';
|
|
7
8
|
import { Host } from '../../jetpack-compose/Host';
|
|
@@ -199,7 +200,11 @@ export function BottomSheet(props: BottomSheetProps) {
|
|
|
199
200
|
shouldDismissOnClickOutside: enablePanDownToClose,
|
|
200
201
|
}}>
|
|
201
202
|
<RNHostView matchContents={fitToContents}>
|
|
202
|
-
|
|
203
|
+
{/* flexGrow:1 + height:0 (flex-basis 0) fills RNHostView's measured height without
|
|
204
|
+
inheriting the scrollable child's content height, which would block scrolling to the end. */}
|
|
205
|
+
<View style={fitToContents ? undefined : { flexGrow: 1, height: 0 }}>
|
|
206
|
+
<SheetScrollContextReset>{children}</SheetScrollContextReset>
|
|
207
|
+
</View>
|
|
203
208
|
</RNHostView>
|
|
204
209
|
</ModalBottomSheet>
|
|
205
210
|
</Host>
|
|
@@ -3,6 +3,7 @@ import { useWindowDimensions, View, StyleSheet } from 'react-native';
|
|
|
3
3
|
import type { StyleProp, ViewStyle } from 'react-native';
|
|
4
4
|
|
|
5
5
|
import { BottomSheetContext, BottomSheetInternalContext } from './context';
|
|
6
|
+
import { SheetScrollContextReset } from './scrollContextReset';
|
|
6
7
|
import type { BottomSheetMethods, BottomSheetProps } from './types';
|
|
7
8
|
import { parseSnapPoint } from './types';
|
|
8
9
|
import { BottomSheet as NativeBottomSheet } from '../../swift-ui/BottomSheet';
|
|
@@ -15,6 +16,7 @@ import {
|
|
|
15
16
|
presentationBackground,
|
|
16
17
|
presentationDetents,
|
|
17
18
|
presentationDragIndicator,
|
|
19
|
+
presentationSizing,
|
|
18
20
|
} from '../../swift-ui/modifiers/presentationModifiers';
|
|
19
21
|
|
|
20
22
|
export { useBottomSheet } from './context';
|
|
@@ -206,7 +208,8 @@ export function BottomSheet(props: BottomSheetProps) {
|
|
|
206
208
|
const bg = extractBackgroundColor(backgroundStyle);
|
|
207
209
|
return [
|
|
208
210
|
...(fitToContents
|
|
209
|
-
?
|
|
211
|
+
? // Makes the iPad sheet size to that content instead of opening near full height.
|
|
212
|
+
[presentationSizing('fitted')]
|
|
210
213
|
: [
|
|
211
214
|
presentationDetents(detents, {
|
|
212
215
|
selection: selectedDetent,
|
|
@@ -238,15 +241,16 @@ export function BottomSheet(props: BottomSheetProps) {
|
|
|
238
241
|
<Group modifiers={modifiers}>
|
|
239
242
|
<RNHostView matchContents={fitToContents}>
|
|
240
243
|
{/* paddingTop compensates for tighter spacing between native drag indicator and content
|
|
241
|
-
compared to gorhom's handle.
|
|
244
|
+
compared to gorhom's handle. flexGrow:1 + height:0 (flex-basis 0) fills the snap-point
|
|
245
|
+
height without inheriting the scrollable child's intrinsic content height. Omitted for fitToContents
|
|
242
246
|
so RNHostView can measure natural content height. */}
|
|
243
247
|
<View
|
|
244
248
|
style={
|
|
245
249
|
fitToContents
|
|
246
250
|
? { paddingTop: handleComponent !== null ? 16 : 0 }
|
|
247
|
-
: {
|
|
251
|
+
: { flexGrow: 1, height: 0, paddingTop: handleComponent !== null ? 16 : 0 }
|
|
248
252
|
}>
|
|
249
|
-
{children}
|
|
253
|
+
<SheetScrollContextReset>{children}</SheetScrollContextReset>
|
|
250
254
|
</View>
|
|
251
255
|
</RNHostView>
|
|
252
256
|
</Group>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Context, ReactNode } from 'react';
|
|
2
|
+
import { ScrollView, VirtualizedList } from 'react-native';
|
|
3
|
+
|
|
4
|
+
const VirtualizedListContext = (VirtualizedList as unknown as { contextType?: Context<unknown> })
|
|
5
|
+
.contextType;
|
|
6
|
+
const ScrollViewContext = (ScrollView as unknown as { Context?: Context<unknown> }).Context;
|
|
7
|
+
|
|
8
|
+
// When a virtualised list (RN Flatlist) is nested within another Flatlist,
|
|
9
|
+
// it renders a regular View as Scroll component https://github.com/react/react-native/blob/5c197fb303ed0d975482757fefb7ed38349601b6/packages/virtualized-lists/Lists/VirtualizedList.js#L1291
|
|
10
|
+
// which breaks scrolling.
|
|
11
|
+
// Nested same direction FlatLists are generally considered bad
|
|
12
|
+
// but the react context check it is doing to identify nesting can break some genuine cases
|
|
13
|
+
// e.g. User has a FlatList with a button child that opens bottomsheet with a Flatlist.
|
|
14
|
+
// RN Modal uses similar pattern as below
|
|
15
|
+
export function SheetScrollContextReset({ children }: { children: ReactNode }) {
|
|
16
|
+
let node: ReactNode = children;
|
|
17
|
+
if (ScrollViewContext) {
|
|
18
|
+
node = <ScrollViewContext.Provider value={null}>{node}</ScrollViewContext.Provider>;
|
|
19
|
+
}
|
|
20
|
+
if (VirtualizedListContext) {
|
|
21
|
+
node = <VirtualizedListContext.Provider value={null}>{node}</VirtualizedListContext.Provider>;
|
|
22
|
+
}
|
|
23
|
+
return <>{node}</>;
|
|
24
|
+
}
|
|
@@ -54,6 +54,11 @@ export function DateTimePicker(props: DateTimePickerProps) {
|
|
|
54
54
|
|
|
55
55
|
const pickerStyle = displayToDatePickerStyle(display);
|
|
56
56
|
|
|
57
|
+
// The compact style hugs its content, so the Host must match it
|
|
58
|
+
// on both axes, otherwise it collapses to 0 width under a non-stretch parent like
|
|
59
|
+
// `alignItems: 'center'` https://github.com/expo/expo/issues/46904.
|
|
60
|
+
const isCompactStyle = pickerStyle === 'compact' || pickerStyle === 'automatic';
|
|
61
|
+
|
|
57
62
|
const modifiers: ModifierConfig[] = [datePickerStyle(pickerStyle)];
|
|
58
63
|
if (accentColor) {
|
|
59
64
|
modifiers.push(tint(accentColor));
|
|
@@ -87,7 +92,10 @@ export function DateTimePicker(props: DateTimePickerProps) {
|
|
|
87
92
|
};
|
|
88
93
|
|
|
89
94
|
return (
|
|
90
|
-
<Host
|
|
95
|
+
<Host
|
|
96
|
+
matchContents={isCompactStyle ? true : { vertical: true }}
|
|
97
|
+
style={style}
|
|
98
|
+
ignoreSafeArea="all">
|
|
91
99
|
<DatePicker {...iosProps} />
|
|
92
100
|
</Host>
|
|
93
101
|
);
|
|
@@ -24,7 +24,7 @@ export type DateTimePickerChangeEvent = {
|
|
|
24
24
|
};
|
|
25
25
|
};
|
|
26
26
|
|
|
27
|
-
export
|
|
27
|
+
export interface DateTimePickerProps extends Pick<ViewProps, 'style'> {
|
|
28
28
|
/**
|
|
29
29
|
* The current date value (controlled).
|
|
30
30
|
*/
|
|
@@ -123,7 +123,7 @@ export type DateTimePickerProps = {
|
|
|
123
123
|
* @platform android
|
|
124
124
|
*/
|
|
125
125
|
negativeButton?: { label?: string };
|
|
126
|
-
}
|
|
126
|
+
}
|
|
127
127
|
|
|
128
128
|
// -- Helpers ---------------------------------------------------------------
|
|
129
129
|
|
|
@@ -19,16 +19,19 @@ const MaskNativeView: React.ComponentType<{
|
|
|
19
19
|
*/
|
|
20
20
|
export function MaskedView(props: MaskedViewProps) {
|
|
21
21
|
const { maskElement, children, style, ...viewProps } = props;
|
|
22
|
+
// `style` is applied only to the outer container. Re-applying it inside the
|
|
23
|
+
// Host/MaskView wrappers used to double offsets (`translateX`, `marginLeft`, …)
|
|
24
|
+
// and transforms because the inner views inherit layout from `absoluteFill`.
|
|
22
25
|
return (
|
|
23
26
|
<View {...viewProps} style={style}>
|
|
24
27
|
<Host style={StyleSheet.absoluteFill}>
|
|
25
28
|
<MaskNativeView alignment="topStart" modifiers={[fillMaxSize()]}>
|
|
26
29
|
<RNHostView modifiers={[fillMaxSize()]}>
|
|
27
|
-
<View style={
|
|
30
|
+
<View style={StyleSheet.absoluteFill}>{children}</View>
|
|
28
31
|
</RNHostView>
|
|
29
32
|
<Slot slotName="content">
|
|
30
33
|
<RNHostView modifiers={[fillMaxSize()]}>
|
|
31
|
-
<View style={
|
|
34
|
+
<View style={StyleSheet.absoluteFill}>{maskElement}</View>
|
|
32
35
|
</RNHostView>
|
|
33
36
|
</Slot>
|
|
34
37
|
</MaskNativeView>
|
|
@@ -11,16 +11,19 @@ import { RNHostView } from '../../swift-ui/RNHostView';
|
|
|
11
11
|
*/
|
|
12
12
|
export function MaskedView(props: MaskedViewProps) {
|
|
13
13
|
const { maskElement, children, style, ...viewProps } = props;
|
|
14
|
+
// `style` is applied only to the outer container. Re-applying it inside the
|
|
15
|
+
// Host/Mask wrappers used to double offsets (`translateX`, `marginLeft`, …)
|
|
16
|
+
// and transforms because the inner views inherit layout from `absoluteFill`.
|
|
14
17
|
return (
|
|
15
18
|
<View {...viewProps} style={style}>
|
|
16
19
|
<Host style={StyleSheet.absoluteFill}>
|
|
17
20
|
<Mask alignment="topLeading">
|
|
18
21
|
<RNHostView>
|
|
19
|
-
<View style={
|
|
22
|
+
<View style={StyleSheet.absoluteFill}>{children}</View>
|
|
20
23
|
</RNHostView>
|
|
21
24
|
<Mask.Content>
|
|
22
25
|
<RNHostView>
|
|
23
|
-
<View style={
|
|
26
|
+
<View style={StyleSheet.absoluteFill}>{maskElement}</View>
|
|
24
27
|
</RNHostView>
|
|
25
28
|
</Mask.Content>
|
|
26
29
|
</Mask>
|
|
@@ -118,7 +118,7 @@ export type NativeActionEvent = {
|
|
|
118
118
|
* Props for the `MenuView` component.
|
|
119
119
|
* Drop-in compatible with `@react-native-menu/menu`.
|
|
120
120
|
*/
|
|
121
|
-
export
|
|
121
|
+
export interface MenuComponentProps {
|
|
122
122
|
/**
|
|
123
123
|
* Menu title shown at the top of the menu.
|
|
124
124
|
* @platform ios
|
|
@@ -168,4 +168,4 @@ export type MenuComponentProps = {
|
|
|
168
168
|
* Trigger view. Long-pressing or tapping (per `shouldOpenOnLongPress`) opens the menu.
|
|
169
169
|
*/
|
|
170
170
|
children?: ReactNode;
|
|
171
|
-
}
|
|
171
|
+
}
|
|
@@ -40,7 +40,7 @@ export const wrapNativeEvent = <T,>(nativeEvent: T): NativeSyntheticEvent<T> =>
|
|
|
40
40
|
* Props for the `PagerView` component.
|
|
41
41
|
* Compatible with `react-native-pager-view`.
|
|
42
42
|
*/
|
|
43
|
-
export
|
|
43
|
+
export interface PagerViewProps extends ViewProps {
|
|
44
44
|
/**
|
|
45
45
|
* Ref handle exposing imperative `setPage`, `setPageWithoutAnimation`,
|
|
46
46
|
* and `setScrollEnabled` methods.
|
|
@@ -104,7 +104,7 @@ export type PagerViewProps = ViewProps & {
|
|
|
104
104
|
* stretched to fill the pager. Each child should have a stable `key`.
|
|
105
105
|
*/
|
|
106
106
|
children?: ReactNode;
|
|
107
|
-
}
|
|
107
|
+
}
|
|
108
108
|
|
|
109
109
|
/**
|
|
110
110
|
* Ref handle for the `PagerView` component.
|
|
@@ -18,7 +18,7 @@ export type NativeSegmentedControlChangeEvent = {
|
|
|
18
18
|
*/
|
|
19
19
|
export type NativeSegmentedControlIOSChangeEvent = NativeSegmentedControlChangeEvent;
|
|
20
20
|
|
|
21
|
-
export
|
|
21
|
+
export interface SegmentedControlProps {
|
|
22
22
|
/**
|
|
23
23
|
* The labels for the control's segment buttons, in order.
|
|
24
24
|
*/
|
|
@@ -52,7 +52,7 @@ export type SegmentedControlProps = {
|
|
|
52
52
|
appearance?: 'dark' | 'light';
|
|
53
53
|
style?: StyleProp<ViewStyle>;
|
|
54
54
|
testID?: string;
|
|
55
|
-
}
|
|
55
|
+
}
|
|
56
56
|
|
|
57
57
|
/**
|
|
58
58
|
* Builds a synthetic `onChange` event matching the community library shape.
|
|
@@ -4,7 +4,7 @@ import type { ColorValue, StyleProp, ViewStyle } from 'react-native';
|
|
|
4
4
|
* Props for the `Slider` community drop-in component.
|
|
5
5
|
* Compatible with `@react-native-community/slider`.
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export interface SliderProps {
|
|
8
8
|
/**
|
|
9
9
|
* Initial / current value of the slider.
|
|
10
10
|
* Behaves like the community lib: passing a new value updates the thumb,
|
|
@@ -72,4 +72,4 @@ export type SliderProps = {
|
|
|
72
72
|
* Used to style and layout the Slider.
|
|
73
73
|
*/
|
|
74
74
|
style?: StyleProp<ViewStyle>;
|
|
75
|
-
}
|
|
75
|
+
}
|
|
@@ -26,7 +26,7 @@ export type AlertDialogColors = {
|
|
|
26
26
|
textContentColor?: ColorValue;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
-
export
|
|
29
|
+
export interface AlertDialogProps {
|
|
30
30
|
/**
|
|
31
31
|
* Colors for the alert dialog.
|
|
32
32
|
*/
|
|
@@ -54,7 +54,7 @@ export type AlertDialogProps = {
|
|
|
54
54
|
* `AlertDialog.ConfirmButton`, `AlertDialog.DismissButton`, `AlertDialog.Icon`).
|
|
55
55
|
*/
|
|
56
56
|
children?: React.ReactNode;
|
|
57
|
-
}
|
|
57
|
+
}
|
|
58
58
|
|
|
59
59
|
type NativeAlertDialogProps = Omit<AlertDialogProps, 'onDismissRequest'> &
|
|
60
60
|
ViewEvent<'onDismissRequest', { onDismissRequest?: () => void }>;
|
|
@@ -163,7 +163,7 @@ export const ExitTransition = {
|
|
|
163
163
|
createExitTransition([{ type: 'scaleOut', ...params }]),
|
|
164
164
|
};
|
|
165
165
|
|
|
166
|
-
export
|
|
166
|
+
export interface AnimatedVisibilityProps extends PrimitiveBaseProps {
|
|
167
167
|
children?: React.ReactNode;
|
|
168
168
|
/**
|
|
169
169
|
* Whether the content is visible. When changed, the content will animate in or out.
|
|
@@ -181,7 +181,7 @@ export type AnimatedVisibilityProps = {
|
|
|
181
181
|
* Defaults to Compose's `fadeOut + shrinkOut` when not specified.
|
|
182
182
|
*/
|
|
183
183
|
exitTransition?: ExitTransitionType;
|
|
184
|
-
}
|
|
184
|
+
}
|
|
185
185
|
|
|
186
186
|
type AnimatedVisibilityNativeProps = Omit<
|
|
187
187
|
AnimatedVisibilityProps,
|
|
@@ -4,7 +4,7 @@ import { type ColorValue } from 'react-native';
|
|
|
4
4
|
import { type ModifierConfig } from '../../types';
|
|
5
5
|
import { createViewModifierEventListener } from '../modifiers/utils';
|
|
6
6
|
|
|
7
|
-
export
|
|
7
|
+
export interface BadgeProps {
|
|
8
8
|
/**
|
|
9
9
|
* Background color of the badge.
|
|
10
10
|
* @default BadgeDefaults.containerColor
|
|
@@ -24,7 +24,7 @@ export type BadgeProps = {
|
|
|
24
24
|
* When omitted, renders as a small indicator dot.
|
|
25
25
|
*/
|
|
26
26
|
children?: React.ReactNode;
|
|
27
|
-
}
|
|
27
|
+
}
|
|
28
28
|
|
|
29
29
|
const BadgeNativeView: React.ComponentType<BadgeProps> = requireNativeView('ExpoUI', 'BadgeView');
|
|
30
30
|
|
|
@@ -3,7 +3,7 @@ import { requireNativeView } from 'expo';
|
|
|
3
3
|
import { type ModifierConfig } from '../../types';
|
|
4
4
|
import { createViewModifierEventListener } from '../modifiers/utils';
|
|
5
5
|
|
|
6
|
-
export
|
|
6
|
+
export interface BadgedBoxProps {
|
|
7
7
|
/**
|
|
8
8
|
* Modifiers for the component.
|
|
9
9
|
*/
|
|
@@ -12,7 +12,7 @@ export type BadgedBoxProps = {
|
|
|
12
12
|
* Children containing the main content and a `BadgedBox.Badge` slot.
|
|
13
13
|
*/
|
|
14
14
|
children?: React.ReactNode;
|
|
15
|
-
}
|
|
15
|
+
}
|
|
16
16
|
|
|
17
17
|
type SlotProps = {
|
|
18
18
|
slotName: string;
|
|
@@ -3,7 +3,7 @@ import { requireNativeView } from 'expo';
|
|
|
3
3
|
import { type ViewEvent, type ModifierConfig, type DialogProperties } from '../../types';
|
|
4
4
|
import { createViewModifierEventListener } from '../modifiers/utils';
|
|
5
5
|
|
|
6
|
-
export
|
|
6
|
+
export interface BasicAlertDialogProps {
|
|
7
7
|
/**
|
|
8
8
|
* The content to display inside the dialog.
|
|
9
9
|
*/
|
|
@@ -21,7 +21,7 @@ export type BasicAlertDialogProps = {
|
|
|
21
21
|
* Modifiers for the component.
|
|
22
22
|
*/
|
|
23
23
|
modifiers?: ModifierConfig[];
|
|
24
|
-
}
|
|
24
|
+
}
|
|
25
25
|
|
|
26
26
|
type NativeBasicAlertDialogProps = Omit<BasicAlertDialogProps, 'onDismissRequest'> &
|
|
27
27
|
ViewEvent<
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
transformProps,
|
|
8
8
|
} from '../layout-types';
|
|
9
9
|
|
|
10
|
-
export
|
|
10
|
+
export interface BoxProps extends PrimitiveBaseProps {
|
|
11
11
|
children?: React.ReactNode;
|
|
12
12
|
/**
|
|
13
13
|
* Alignment of children within the box.
|
|
@@ -17,7 +17,7 @@ export type BoxProps = {
|
|
|
17
17
|
* Scroll behavior for the floating toolbar exit.
|
|
18
18
|
*/
|
|
19
19
|
floatingToolbarExitAlwaysScrollBehavior?: FloatingToolbarExitAlwaysScrollBehavior;
|
|
20
|
-
}
|
|
20
|
+
}
|
|
21
21
|
|
|
22
22
|
const BoxNativeView: React.ComponentType<BoxProps> = requireNativeView('ExpoUI', 'BoxView');
|
|
23
23
|
|
|
@@ -26,7 +26,7 @@ export type ButtonContentPadding = {
|
|
|
26
26
|
bottom?: number;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
-
export
|
|
29
|
+
export interface ButtonProps {
|
|
30
30
|
/**
|
|
31
31
|
* Callback that is called when the button is clicked.
|
|
32
32
|
*/
|
|
@@ -57,7 +57,7 @@ export type ButtonProps = {
|
|
|
57
57
|
* Content to display inside the button.
|
|
58
58
|
*/
|
|
59
59
|
children: React.ReactNode;
|
|
60
|
-
}
|
|
60
|
+
}
|
|
61
61
|
|
|
62
62
|
type NativeButtonProps = Omit<ButtonProps, 'onClick' | 'shape' | 'children'> & {
|
|
63
63
|
shape?: ShapeRecordProps;
|
|
@@ -49,7 +49,7 @@ function createCardComponent<P extends { modifiers?: ModifierConfig[] }>(
|
|
|
49
49
|
|
|
50
50
|
// region Card
|
|
51
51
|
|
|
52
|
-
export
|
|
52
|
+
export interface CardProps {
|
|
53
53
|
/**
|
|
54
54
|
* The content to display inside the card.
|
|
55
55
|
*/
|
|
@@ -70,7 +70,7 @@ export type CardProps = {
|
|
|
70
70
|
* Modifiers for the component.
|
|
71
71
|
*/
|
|
72
72
|
modifiers?: ModifierConfig[];
|
|
73
|
-
}
|
|
73
|
+
}
|
|
74
74
|
|
|
75
75
|
/**
|
|
76
76
|
* A card component that renders a filled card surface for content.
|
|
@@ -81,7 +81,7 @@ export const Card = createCardComponent<CardProps>('CardView');
|
|
|
81
81
|
|
|
82
82
|
// region ElevatedCard
|
|
83
83
|
|
|
84
|
-
export
|
|
84
|
+
export interface ElevatedCardProps {
|
|
85
85
|
/**
|
|
86
86
|
* The content to display inside the card.
|
|
87
87
|
*/
|
|
@@ -98,7 +98,7 @@ export type ElevatedCardProps = {
|
|
|
98
98
|
* Modifiers for the component.
|
|
99
99
|
*/
|
|
100
100
|
modifiers?: ModifierConfig[];
|
|
101
|
-
}
|
|
101
|
+
}
|
|
102
102
|
|
|
103
103
|
/**
|
|
104
104
|
* An elevated card component that provides a raised surface for content.
|
|
@@ -109,7 +109,7 @@ export const ElevatedCard = createCardComponent<ElevatedCardProps>('ElevatedCard
|
|
|
109
109
|
|
|
110
110
|
// region OutlinedCard
|
|
111
111
|
|
|
112
|
-
export
|
|
112
|
+
export interface OutlinedCardProps {
|
|
113
113
|
/**
|
|
114
114
|
* The content to display inside the card.
|
|
115
115
|
*/
|
|
@@ -130,7 +130,7 @@ export type OutlinedCardProps = {
|
|
|
130
130
|
* Modifiers for the component.
|
|
131
131
|
*/
|
|
132
132
|
modifiers?: ModifierConfig[];
|
|
133
|
-
}
|
|
133
|
+
}
|
|
134
134
|
|
|
135
135
|
/**
|
|
136
136
|
* An outlined card component that provides a bordered surface for content.
|
|
@@ -71,7 +71,7 @@ function createCarouselComponent<P extends { modifiers?: ModifierConfig[] }>(
|
|
|
71
71
|
|
|
72
72
|
// region HorizontalCenteredHeroCarousel
|
|
73
73
|
|
|
74
|
-
export
|
|
74
|
+
export interface HorizontalCenteredHeroCarouselProps extends CarouselCommonConfig {
|
|
75
75
|
/**
|
|
76
76
|
* Maximum width of the hero item in dp.
|
|
77
77
|
* When unspecified, the hero item will be as wide as possible.
|
|
@@ -87,7 +87,7 @@ export type HorizontalCenteredHeroCarouselProps = CarouselCommonConfig & {
|
|
|
87
87
|
* @default CarouselDefaults.MaxSmallItemSize
|
|
88
88
|
*/
|
|
89
89
|
maxSmallItemWidth?: number;
|
|
90
|
-
}
|
|
90
|
+
}
|
|
91
91
|
|
|
92
92
|
/**
|
|
93
93
|
* A hero carousel that centers one large item between two small peek items,
|
|
@@ -102,7 +102,7 @@ export const HorizontalCenteredHeroCarousel =
|
|
|
102
102
|
|
|
103
103
|
// region HorizontalMultiBrowseCarousel
|
|
104
104
|
|
|
105
|
-
export
|
|
105
|
+
export interface HorizontalMultiBrowseCarouselProps extends CarouselCommonConfig {
|
|
106
106
|
/**
|
|
107
107
|
* The preferred width of the large item in dp.
|
|
108
108
|
*/
|
|
@@ -117,7 +117,7 @@ export type HorizontalMultiBrowseCarouselProps = CarouselCommonConfig & {
|
|
|
117
117
|
* @default CarouselDefaults.MaxSmallItemSize
|
|
118
118
|
*/
|
|
119
119
|
maxSmallItemWidth?: number;
|
|
120
|
-
}
|
|
120
|
+
}
|
|
121
121
|
|
|
122
122
|
/**
|
|
123
123
|
* A carousel that shows a large item alongside smaller peek items,
|
|
@@ -130,12 +130,12 @@ export const HorizontalMultiBrowseCarousel =
|
|
|
130
130
|
|
|
131
131
|
// region HorizontalUncontainedCarousel
|
|
132
132
|
|
|
133
|
-
export
|
|
133
|
+
export interface HorizontalUncontainedCarouselProps extends CarouselCommonConfig {
|
|
134
134
|
/**
|
|
135
135
|
* The width of each item in dp.
|
|
136
136
|
*/
|
|
137
137
|
itemWidth: number;
|
|
138
|
-
}
|
|
138
|
+
}
|
|
139
139
|
|
|
140
140
|
/**
|
|
141
141
|
* A carousel where each item has a fixed width with free-form scrolling,
|
|
@@ -16,7 +16,7 @@ export type CheckboxColors = {
|
|
|
16
16
|
disabledIndeterminateColor?: ColorValue;
|
|
17
17
|
};
|
|
18
18
|
|
|
19
|
-
export
|
|
19
|
+
export interface CheckboxProps {
|
|
20
20
|
/**
|
|
21
21
|
* Indicates whether the checkbox is checked.
|
|
22
22
|
*/
|
|
@@ -38,7 +38,7 @@ export type CheckboxProps = {
|
|
|
38
38
|
* Modifiers for the component.
|
|
39
39
|
*/
|
|
40
40
|
modifiers?: ModifierConfig[];
|
|
41
|
-
}
|
|
41
|
+
}
|
|
42
42
|
|
|
43
43
|
type NativeCheckboxProps = Omit<CheckboxProps, 'onCheckedChange'> & {
|
|
44
44
|
nativeClickable: boolean;
|
|
@@ -75,7 +75,7 @@ export function Checkbox(props: CheckboxProps) {
|
|
|
75
75
|
*/
|
|
76
76
|
export type ToggleableState = 'on' | 'off' | 'indeterminate';
|
|
77
77
|
|
|
78
|
-
export
|
|
78
|
+
export interface TriStateCheckboxProps {
|
|
79
79
|
/**
|
|
80
80
|
* The toggleable state of the checkbox: `'on'`, `'off'`, or `'indeterminate'`.
|
|
81
81
|
*/
|
|
@@ -97,7 +97,7 @@ export type TriStateCheckboxProps = {
|
|
|
97
97
|
* Modifiers for the component.
|
|
98
98
|
*/
|
|
99
99
|
modifiers?: ModifierConfig[];
|
|
100
|
-
}
|
|
100
|
+
}
|
|
101
101
|
|
|
102
102
|
type NativeTriStateCheckboxProps = Omit<TriStateCheckboxProps, 'onClick'> & {
|
|
103
103
|
nativeClickable: boolean;
|
|
@@ -81,7 +81,7 @@ const SlotNativeView: React.ComponentType<NativeSlotViewProps> = requireNativeVi
|
|
|
81
81
|
|
|
82
82
|
// region AssistChip
|
|
83
83
|
|
|
84
|
-
export
|
|
84
|
+
export interface AssistChipProps {
|
|
85
85
|
/**
|
|
86
86
|
* Whether the chip is enabled and can be clicked.
|
|
87
87
|
* @default true
|
|
@@ -111,7 +111,7 @@ export type AssistChipProps = {
|
|
|
111
111
|
* Children containing Label, LeadingIcon, and TrailingIcon slots.
|
|
112
112
|
*/
|
|
113
113
|
children: React.ReactNode;
|
|
114
|
-
}
|
|
114
|
+
}
|
|
115
115
|
|
|
116
116
|
type NativeAssistChipProps = Omit<AssistChipProps, 'onClick'> & {
|
|
117
117
|
onNativeClick?: () => void;
|
|
@@ -170,7 +170,7 @@ export { AssistChipComponent as AssistChip };
|
|
|
170
170
|
|
|
171
171
|
// region FilterChip
|
|
172
172
|
|
|
173
|
-
export
|
|
173
|
+
export interface FilterChipProps {
|
|
174
174
|
/**
|
|
175
175
|
* Whether the chip is currently selected.
|
|
176
176
|
*/
|
|
@@ -203,7 +203,7 @@ export type FilterChipProps = {
|
|
|
203
203
|
* Children containing Label, LeadingIcon, and TrailingIcon slots.
|
|
204
204
|
*/
|
|
205
205
|
children: React.ReactNode;
|
|
206
|
-
}
|
|
206
|
+
}
|
|
207
207
|
|
|
208
208
|
type NativeFilterChipProps = Omit<FilterChipProps, 'onClick'> & {
|
|
209
209
|
onNativeClick?: () => void;
|
|
@@ -262,7 +262,7 @@ export { FilterChipComponent as FilterChip };
|
|
|
262
262
|
|
|
263
263
|
// region InputChip
|
|
264
264
|
|
|
265
|
-
export
|
|
265
|
+
export interface InputChipProps {
|
|
266
266
|
/**
|
|
267
267
|
* Whether the chip is enabled and can be interacted with.
|
|
268
268
|
* @default true
|
|
@@ -297,7 +297,7 @@ export type InputChipProps = {
|
|
|
297
297
|
* Children containing Label, Avatar, and TrailingIcon slots.
|
|
298
298
|
*/
|
|
299
299
|
children: React.ReactNode;
|
|
300
|
-
}
|
|
300
|
+
}
|
|
301
301
|
|
|
302
302
|
type NativeInputChipProps = Omit<InputChipProps, 'onClick'> & {
|
|
303
303
|
onNativeClick?: () => void;
|
|
@@ -356,7 +356,7 @@ export { InputChipComponent as InputChip };
|
|
|
356
356
|
|
|
357
357
|
// region SuggestionChip
|
|
358
358
|
|
|
359
|
-
export
|
|
359
|
+
export interface SuggestionChipProps {
|
|
360
360
|
/**
|
|
361
361
|
* Whether the chip is enabled and can be clicked.
|
|
362
362
|
* @default true
|
|
@@ -386,7 +386,7 @@ export type SuggestionChipProps = {
|
|
|
386
386
|
* Children containing Label and Icon slots.
|
|
387
387
|
*/
|
|
388
388
|
children: React.ReactNode;
|
|
389
|
-
}
|
|
389
|
+
}
|
|
390
390
|
|
|
391
391
|
type NativeSuggestionChipProps = Omit<SuggestionChipProps, 'onClick'> & {
|
|
392
392
|
onNativeClick?: () => void;
|