@expo/ui 56.0.5 → 56.0.6
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 +12 -1
- package/android/build.gradle +2 -2
- package/android/src/main/java/expo/modules/ui/SliderView.kt +10 -4
- package/build/State/useNativeState.d.ts +2 -1
- package/build/State/useNativeState.d.ts.map +1 -1
- package/build/community/slider/Slider.android.d.ts +7 -0
- package/build/community/slider/Slider.android.d.ts.map +1 -0
- package/build/community/slider/Slider.d.ts +8 -0
- package/build/community/slider/Slider.d.ts.map +1 -0
- package/build/community/slider/Slider.ios.d.ts +7 -0
- package/build/community/slider/Slider.ios.d.ts.map +1 -0
- package/build/community/slider/index.d.ts +5 -0
- package/build/community/slider/index.d.ts.map +1 -0
- package/build/community/slider/types.d.ts +75 -0
- package/build/community/slider/types.d.ts.map +1 -0
- package/build/jetpack-compose/Slider/index.d.ts +10 -0
- package/build/jetpack-compose/Slider/index.d.ts.map +1 -1
- package/build/swift-ui/Slider/index.d.ts +10 -0
- package/build/swift-ui/Slider/index.d.ts.map +1 -1
- package/build/universal/TextInput/index.d.ts +1 -0
- package/build/universal/TextInput/index.d.ts.map +1 -1
- package/build/universal/index.d.ts +1 -1
- package/build/universal/index.d.ts.map +1 -1
- package/expo-module.config.json +1 -1
- package/ios/ChartView.swift +8 -4
- package/ios/SliderView.swift +21 -6
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.5/expo.modules.ui-56.0.5-sources.jar → 56.0.6/expo.modules.ui-56.0.6-sources.jar} +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6-sources.jar.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6-sources.jar.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6-sources.jar.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6-sources.jar.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.5/expo.modules.ui-56.0.5.aar → 56.0.6/expo.modules.ui-56.0.6.aar} +0 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.5/expo.modules.ui-56.0.5.module → 56.0.6/expo.modules.ui-56.0.6.module} +22 -22
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.sha512 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/{56.0.5/expo.modules.ui-56.0.5.pom → 56.0.6/expo.modules.ui-56.0.6.pom} +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.md5 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.sha1 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.sha256 +1 -0
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.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 +7 -3
- package/src/State/useNativeState.ts +6 -3
- package/src/community/slider/Slider.android.tsx +49 -0
- package/src/community/slider/Slider.ios.tsx +48 -0
- package/src/community/slider/Slider.tsx +45 -0
- package/src/community/slider/index.tsx +7 -0
- package/src/community/slider/types.tsx +75 -0
- package/src/jetpack-compose/Slider/index.tsx +10 -0
- package/src/swift-ui/Slider/index.tsx +10 -0
- package/src/universal/TextInput/index.tsx +1 -0
- package/src/universal/index.ts +1 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5-sources.jar.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5-sources.jar.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5-sources.jar.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5-sources.jar.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.sha512 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.md5 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.sha1 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.sha256 +0 -1
- package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.sha512 +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,17 @@
|
|
|
10
10
|
|
|
11
11
|
### 💡 Others
|
|
12
12
|
|
|
13
|
+
## 56.0.6 — 2026-05-13
|
|
14
|
+
|
|
15
|
+
### 🎉 New features
|
|
16
|
+
|
|
17
|
+
- Added `@expo/ui/community/slider`, a drop-in replacement for `@react-native-community/slider`. ([#45623](https://github.com/expo/expo/pull/45623) by [@nishan](https://github.com/intergalacticspacehighway))
|
|
18
|
+
- Make `ChartView` public. ([#45674](https://github.com/expo/expo/pull/45674) by [@jakex7](https://github.com/jakex7))
|
|
19
|
+
|
|
20
|
+
### 🐛 Bug fixes
|
|
21
|
+
|
|
22
|
+
- Fix `useNativeState` recreating the `ObservableState` when initial value changes; the seed is now captured once via `useRef`. ([#45623](https://github.com/expo/expo/pull/45623) by [@nishan](https://github.com/intergalacticspacehighway))
|
|
23
|
+
|
|
13
24
|
## 56.0.5 — 2026-05-11
|
|
14
25
|
|
|
15
26
|
### 🎉 New features
|
|
@@ -345,7 +356,7 @@ _This version does not introduce any user-facing changes._
|
|
|
345
356
|
- [iOS] - Add range and custom label support in `DatePicker` ([#41546](https://github.com/expo/expo/pull/41546) by [@nishan](https://github.com/intergalacticspacehighway))
|
|
346
357
|
- [jetpack-compose] Added `matchContents` support to `Host`. ([#41553](https://github.com/expo/expo/pull/41553) by [@kudo](https://github.com/kudo))
|
|
347
358
|
- [iOS] Add `timerInterval` to `Progress` component. ([#41598](https://github.com/expo/expo/pull/41598) by [@jakex7](https://github.com/jakex7))
|
|
348
|
-
- [iOS] Make some views public.
|
|
359
|
+
- [iOS] Make some views public. ([#41641](https://github.com/expo/expo/pull/41641) by [@jakex7](https://github.com/jakex7))
|
|
349
360
|
- [iOS] - Add `Menu` component ([#41664](https://github.com/expo/expo/pull/41664) by [@nishan](https://github.com/intergalacticspacehighway))
|
|
350
361
|
- [iOS] Remove presentation props from `BottomSheet` and add equivalent modifiers ([#42029](https://github.com/expo/expo/pull/42029) by [@nishan](https://github.com/intergalacticspacehighway))
|
|
351
362
|
- [iOS] - Nested `Text` support ([#41707](https://github.com/expo/expo/pull/41707) by [@intergalacticspacehighway](https://github.com/intergalacticspacehighway))
|
package/android/build.gradle
CHANGED
|
@@ -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 = '56.0.
|
|
15
|
+
version = '56.0.6'
|
|
16
16
|
|
|
17
17
|
android {
|
|
18
18
|
namespace "expo.modules.ui"
|
|
19
19
|
defaultConfig {
|
|
20
20
|
versionCode 1
|
|
21
|
-
versionName "56.0.
|
|
21
|
+
versionName "56.0.6"
|
|
22
22
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
23
23
|
}
|
|
24
24
|
buildFeatures {
|
|
@@ -42,6 +42,8 @@ data class SliderProps(
|
|
|
42
42
|
val value: Float = 0.0f,
|
|
43
43
|
val min: Float = 0.0f,
|
|
44
44
|
val max: Float = 1.0f,
|
|
45
|
+
val lowerLimit: Float? = null,
|
|
46
|
+
val upperLimit: Float? = null,
|
|
45
47
|
val steps: Int = 0,
|
|
46
48
|
val enabled: Boolean = true,
|
|
47
49
|
val colors: SliderColors = SliderColors(),
|
|
@@ -60,9 +62,12 @@ fun FunctionalComposableScope.SliderContent(props: SliderProps) {
|
|
|
60
62
|
val onValueChangeFinished by remember { this@SliderContent.EventDispatcher<Unit>() }
|
|
61
63
|
val interactionSource = remember { MutableInteractionSource() }
|
|
62
64
|
|
|
63
|
-
|
|
65
|
+
val effectiveLower = maxOf(props.min, props.lowerLimit ?: Float.NEGATIVE_INFINITY)
|
|
66
|
+
val effectiveUpper = minOf(props.max, props.upperLimit ?: Float.POSITIVE_INFINITY)
|
|
67
|
+
|
|
68
|
+
var localValue by remember { mutableFloatStateOf(props.value.coerceIn(effectiveLower, effectiveUpper)) }
|
|
64
69
|
var isDragging by remember { mutableStateOf(false) }
|
|
65
|
-
val clampedPropsValue = props.value.coerceIn(
|
|
70
|
+
val clampedPropsValue = props.value.coerceIn(effectiveLower, effectiveUpper)
|
|
66
71
|
var prevPropsValue by remember { mutableFloatStateOf(clampedPropsValue) }
|
|
67
72
|
|
|
68
73
|
if (clampedPropsValue != prevPropsValue) {
|
|
@@ -90,9 +95,10 @@ fun FunctionalComposableScope.SliderContent(props: SliderProps) {
|
|
|
90
95
|
enabled = props.enabled,
|
|
91
96
|
interactionSource = interactionSource,
|
|
92
97
|
onValueChange = {
|
|
98
|
+
val clamped = it.coerceIn(effectiveLower, effectiveUpper)
|
|
93
99
|
isDragging = true
|
|
94
|
-
localValue =
|
|
95
|
-
onValueChange(SliderValueChangedEvent(
|
|
100
|
+
localValue = clamped
|
|
101
|
+
onValueChange(SliderValueChangedEvent(clamped))
|
|
96
102
|
},
|
|
97
103
|
onValueChangeFinished = {
|
|
98
104
|
isDragging = false
|
|
@@ -12,7 +12,8 @@ export type ObservableState<T> = SharedObject & {
|
|
|
12
12
|
value: T;
|
|
13
13
|
};
|
|
14
14
|
/**
|
|
15
|
-
* Creates an observable native state that is automatically cleaned up when the
|
|
15
|
+
* Creates an observable native state that is automatically cleaned up when the
|
|
16
|
+
* component unmounts. `initialValue` is captured once on the first render
|
|
16
17
|
*/
|
|
17
18
|
export declare function useNativeState<T>(initialValue: T): ObservableState<T>;
|
|
18
19
|
//# sourceMappingURL=useNativeState.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNativeState.d.ts","sourceRoot":"","sources":["../../src/State/useNativeState.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,YAAY,EAA4B,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"useNativeState.d.ts","sourceRoot":"","sources":["../../src/State/useNativeState.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,YAAY,EAA4B,MAAM,mBAAmB,CAAC;AAOhF;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,YAAY,GAAG;IAC9C;;;;OAIG;IACH,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAOrE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type SliderProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* A drop-in replacement for `@react-native-community/slider` on Android.
|
|
4
|
+
* Renders a Material 3 `Slider` wrapped in a Host.
|
|
5
|
+
*/
|
|
6
|
+
export declare function Slider(props: SliderProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=Slider.android.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.android.d.ts","sourceRoot":"","sources":["../../../src/community/slider/Slider.android.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3C;;;GAGG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAwCxC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type SliderProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* A drop-in replacement for `@react-native-community/slider`. Renders a
|
|
4
|
+
* SwiftUI `Slider` on iOS, a Material 3 `Slider` on Android, and a native
|
|
5
|
+
* HTML `<input type="range">` on web.
|
|
6
|
+
*/
|
|
7
|
+
export declare function Slider(props: SliderProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=Slider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/community/slider/Slider.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAkCxC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type SliderProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* A drop-in replacement for `@react-native-community/slider` on iOS.
|
|
4
|
+
* Renders a SwiftUI `Slider` wrapped in a Host.
|
|
5
|
+
*/
|
|
6
|
+
export declare function Slider(props: SliderProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=Slider.ios.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.ios.d.ts","sourceRoot":"","sources":["../../../src/community/slider/Slider.ios.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAM3C;;;GAGG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAqCxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/community/slider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,eAAe,MAAM,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { ColorValue, StyleProp, ViewStyle } from 'react-native';
|
|
2
|
+
/**
|
|
3
|
+
* Props for the `Slider` community drop-in component.
|
|
4
|
+
* Compatible with `@react-native-community/slider`.
|
|
5
|
+
*/
|
|
6
|
+
export type SliderProps = {
|
|
7
|
+
/**
|
|
8
|
+
* Initial / current value of the slider.
|
|
9
|
+
* Behaves like the community lib: passing a new value updates the thumb,
|
|
10
|
+
* but live drag emits via `onValueChange` without needing external state.
|
|
11
|
+
* @default 0
|
|
12
|
+
*/
|
|
13
|
+
value?: number;
|
|
14
|
+
/**
|
|
15
|
+
* Initial minimum value of the slider.
|
|
16
|
+
* @default 0
|
|
17
|
+
*/
|
|
18
|
+
minimumValue?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Initial maximum value of the slider.
|
|
21
|
+
* @default 1
|
|
22
|
+
*/
|
|
23
|
+
maximumValue?: number;
|
|
24
|
+
/**
|
|
25
|
+
* The lower limit value of the slider. The user won't be able to slide
|
|
26
|
+
* below this limit.
|
|
27
|
+
*/
|
|
28
|
+
lowerLimit?: number;
|
|
29
|
+
/**
|
|
30
|
+
* The upper limit value of the slider. The user won't be able to slide
|
|
31
|
+
* above this limit.
|
|
32
|
+
*/
|
|
33
|
+
upperLimit?: number;
|
|
34
|
+
/**
|
|
35
|
+
* If true the user won't be able to move the slider.
|
|
36
|
+
* @default false
|
|
37
|
+
*/
|
|
38
|
+
disabled?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Step value of the slider. The value should be between 0 and
|
|
41
|
+
* (maximumValue - minimumValue). A value of 0 means continuous (no
|
|
42
|
+
* snapping).
|
|
43
|
+
* @default 0
|
|
44
|
+
*/
|
|
45
|
+
step?: number;
|
|
46
|
+
/**
|
|
47
|
+
* Reverses the direction of the slider so the maximum value is on the
|
|
48
|
+
* left and the minimum value is on the right.
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
inverted?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Color of the track to the left of the thumb.
|
|
54
|
+
*/
|
|
55
|
+
minimumTrackTintColor?: ColorValue;
|
|
56
|
+
/**
|
|
57
|
+
* Color of the track to the right of the thumb.
|
|
58
|
+
* @platform android
|
|
59
|
+
*/
|
|
60
|
+
maximumTrackTintColor?: ColorValue;
|
|
61
|
+
/**
|
|
62
|
+
* Color of the thumb.
|
|
63
|
+
* @platform android
|
|
64
|
+
*/
|
|
65
|
+
thumbTintColor?: ColorValue;
|
|
66
|
+
/**
|
|
67
|
+
* Callback continuously called while the user is dragging the slider.
|
|
68
|
+
*/
|
|
69
|
+
onValueChange?: (value: number) => void;
|
|
70
|
+
/**
|
|
71
|
+
* Used to style and layout the Slider.
|
|
72
|
+
*/
|
|
73
|
+
style?: StyleProp<ViewStyle>;
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/community/slider/types.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAErE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC;;;OAGG;IACH,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC"}
|
|
@@ -32,6 +32,16 @@ export type SliderProps = {
|
|
|
32
32
|
* @default 1
|
|
33
33
|
*/
|
|
34
34
|
max?: number;
|
|
35
|
+
/**
|
|
36
|
+
* Lower limit the user can drag the thumb to. The visible track still
|
|
37
|
+
* spans `min..max`, but the thumb stops at `lowerLimit` during drag.
|
|
38
|
+
*/
|
|
39
|
+
lowerLimit?: number;
|
|
40
|
+
/**
|
|
41
|
+
* Upper limit the user can drag the thumb to. The visible track still
|
|
42
|
+
* spans `min..max`, but the thumb stops at `upperLimit` during drag.
|
|
43
|
+
*/
|
|
44
|
+
upperLimit?: number;
|
|
35
45
|
/**
|
|
36
46
|
* Whether the slider is enabled for user interaction.
|
|
37
47
|
* @default true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/Slider/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,aAAa,CAAC;AAa7D;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,iBAAiB,CAAC,EAAE,UAAU,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAqDF;;;;GAIG;AACH,iBAAS,eAAe,CAAC,KAAK,EAAE,WAAW,2CAG1C;kBAHQ,eAAe;uBAnBF;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;uBAU7B;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;;AAiBnD,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jetpack-compose/Slider/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,aAAa,CAAC;AAa7D;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,iBAAiB,CAAC,EAAE,UAAU,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAqDF;;;;GAIG;AACH,iBAAS,eAAe,CAAC,KAAK,EAAE,WAAW,2CAG1C;kBAHQ,eAAe;uBAnBF;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;uBAU7B;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;;AAiBnD,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,CAAC"}
|
|
@@ -16,6 +16,16 @@ export type SliderProps = {
|
|
|
16
16
|
* The maximum value of the slider. Updating this value does not trigger callbacks if the current value is above `max`.
|
|
17
17
|
*/
|
|
18
18
|
max?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Lower limit the user can drag the thumb to. The visible track still
|
|
21
|
+
* spans `min..max`, but the thumb stops at `lowerLimit` during drag.
|
|
22
|
+
*/
|
|
23
|
+
lowerLimit?: number;
|
|
24
|
+
/**
|
|
25
|
+
* Upper limit the user can drag the thumb to. The visible track still
|
|
26
|
+
* spans `min..max`, but the thumb stops at `upperLimit` during drag.
|
|
27
|
+
*/
|
|
28
|
+
upperLimit?: number;
|
|
19
29
|
/**
|
|
20
30
|
* A label describing the slider's purpose.
|
|
21
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/swift-ui/Slider/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC;;OAEG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD,GAAG,uBAAuB,CAAC;AAwC5B,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAUxC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/swift-ui/Slider/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC;;OAEG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD,GAAG,uBAAuB,CAAC;AAwC5B,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAUxC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { TextInputProps } from './types';
|
|
2
2
|
export declare function TextInput({ ref, value, onChangeText, placeholder, autoFocus, editable, multiline, keyboardType, autoCapitalize, autoCorrect, returnKeyType, onSubmitEditing, onFocus, onBlur, cursorColor, textAlign, readOnly, inputMode, enterKeyHint, defaultValue, numberOfLines, rows, testID, placeholderTextColor, style, textStyle, secureTextEntry, autoComplete, onContentSizeChange, maxLength, caretHidden, selectionColor, selection, onSelectionChange, selectTextOnFocus, }: TextInputProps): import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export * from './types';
|
|
4
|
+
export { type ObservableState } from '../State';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/universal/TextInput/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,wBAAgB,SAAS,CAAC,EACxB,GAAG,EACH,KAAK,EACL,YAAY,EACZ,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EACb,eAAe,EACf,OAAO,EACP,MAAM,EACN,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,IAAI,EACJ,MAAM,EACN,oBAAoB,EACpB,KAAK,EACL,SAAS,EACT,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,WAAW,EACX,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,iBAAiB,GAClB,EAAE,cAAc,2CAiFhB;AAED,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/universal/TextInput/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,wBAAgB,SAAS,CAAC,EACxB,GAAG,EACH,KAAK,EACL,YAAY,EACZ,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,cAAc,EACd,WAAW,EACX,aAAa,EACb,eAAe,EACf,OAAO,EACP,MAAM,EACN,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,IAAI,EACJ,MAAM,EACN,oBAAoB,EACpB,KAAK,EACL,SAAS,EACT,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,WAAW,EACX,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,iBAAiB,GAClB,EAAE,cAAc,2CAiFhB;AAED,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -12,6 +12,6 @@ export * from './FieldGroup';
|
|
|
12
12
|
export * from './Icon';
|
|
13
13
|
export * from './Spacer';
|
|
14
14
|
export * from './State';
|
|
15
|
-
export
|
|
15
|
+
export { TextInput, type TextInputProps, type TextInputRef } from './TextInput';
|
|
16
16
|
export type { UniversalStyle, UniversalAlignment, UniversalBaseProps } from './types';
|
|
17
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/universal/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/universal/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhF,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC"}
|
package/expo-module.config.json
CHANGED
package/ios/ChartView.swift
CHANGED
|
@@ -77,7 +77,7 @@ struct RuleChartStyle: Record {
|
|
|
77
77
|
@Field var dashArray: [Double]?
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
-
final class ChartProps: UIBaseViewProps {
|
|
80
|
+
public final class ChartProps: UIBaseViewProps {
|
|
81
81
|
@Field var data: [ChartDataPoint] = []
|
|
82
82
|
@Field var type: ChartType = .line
|
|
83
83
|
@Field var showGrid: Bool = true
|
|
@@ -93,8 +93,12 @@ final class ChartProps: UIBaseViewProps {
|
|
|
93
93
|
@Field var ruleStyle: RuleChartStyle?
|
|
94
94
|
}
|
|
95
95
|
|
|
96
|
-
struct ChartView: ExpoSwiftUI.View {
|
|
97
|
-
@ObservedObject var props: ChartProps
|
|
96
|
+
public struct ChartView: ExpoSwiftUI.View {
|
|
97
|
+
@ObservedObject public var props: ChartProps
|
|
98
|
+
|
|
99
|
+
public init(props: ChartProps) {
|
|
100
|
+
self.props = props
|
|
101
|
+
}
|
|
98
102
|
|
|
99
103
|
@available(iOS 16.0, tvOS 16.0, *)
|
|
100
104
|
private func createBaseBarMark(for dataPoint: ChartDataPoint) -> BarMark {
|
|
@@ -188,7 +192,7 @@ struct ChartView: ExpoSwiftUI.View {
|
|
|
188
192
|
return ruleMark.lineStyle(.init(lineWidth: CGFloat(lineWidth)))
|
|
189
193
|
}
|
|
190
194
|
|
|
191
|
-
var body: some View {
|
|
195
|
+
public var body: some View {
|
|
192
196
|
if #available(iOS 16.0, tvOS 16.0, *) {
|
|
193
197
|
let hasIndividualColors = props.data.contains { $0.color != nil }
|
|
194
198
|
|
package/ios/SliderView.swift
CHANGED
|
@@ -16,11 +16,11 @@ struct SliderView: ExpoSwiftUI.View {
|
|
|
16
16
|
#if !os(tvOS)
|
|
17
17
|
sliderContent
|
|
18
18
|
.onAppear {
|
|
19
|
-
value = props.value ?? 0.0
|
|
19
|
+
value = clamp(props.value ?? 0.0)
|
|
20
20
|
}
|
|
21
21
|
.onChange(of: props.value) { newValue in
|
|
22
22
|
guard !isEditing else { return }
|
|
23
|
-
value = newValue ?? 0.0
|
|
23
|
+
value = clamp(newValue ?? 0.0)
|
|
24
24
|
}
|
|
25
25
|
.onChange(of: value) { newValue in
|
|
26
26
|
if props.value != newValue {
|
|
@@ -35,6 +35,19 @@ struct SliderView: ExpoSwiftUI.View {
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
#if !os(tvOS)
|
|
38
|
+
private func clamp(_ raw: Float) -> Float {
|
|
39
|
+
let lower = Swift.max(props.min ?? -.infinity, props.lowerLimit ?? -.infinity)
|
|
40
|
+
let upper = Swift.min(props.max ?? .infinity, props.upperLimit ?? .infinity)
|
|
41
|
+
return Swift.min(upper, Swift.max(lower, raw))
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
private var clampedBinding: Binding<Float> {
|
|
45
|
+
Binding(
|
|
46
|
+
get: { value },
|
|
47
|
+
set: { newValue in value = clamp(newValue) }
|
|
48
|
+
)
|
|
49
|
+
}
|
|
50
|
+
|
|
38
51
|
@ViewBuilder
|
|
39
52
|
private var sliderContent: some View {
|
|
40
53
|
let label = props.children?.slot("label")
|
|
@@ -43,7 +56,7 @@ struct SliderView: ExpoSwiftUI.View {
|
|
|
43
56
|
|
|
44
57
|
if let min = props.min, let max = props.max, let step = props.step {
|
|
45
58
|
Slider(
|
|
46
|
-
value:
|
|
59
|
+
value: clampedBinding,
|
|
47
60
|
in: min...max,
|
|
48
61
|
step: step,
|
|
49
62
|
label: { label },
|
|
@@ -55,7 +68,7 @@ struct SliderView: ExpoSwiftUI.View {
|
|
|
55
68
|
}
|
|
56
69
|
} else if let min = props.min, let max = props.max {
|
|
57
70
|
Slider(
|
|
58
|
-
value:
|
|
71
|
+
value: clampedBinding,
|
|
59
72
|
in: min...max,
|
|
60
73
|
label: { label },
|
|
61
74
|
minimumValueLabel: { minimumValueLabel },
|
|
@@ -66,7 +79,7 @@ struct SliderView: ExpoSwiftUI.View {
|
|
|
66
79
|
}
|
|
67
80
|
} else if let step = props.step {
|
|
68
81
|
Slider(
|
|
69
|
-
value:
|
|
82
|
+
value: clampedBinding,
|
|
70
83
|
in: 0...1,
|
|
71
84
|
step: step,
|
|
72
85
|
label: { label },
|
|
@@ -78,7 +91,7 @@ struct SliderView: ExpoSwiftUI.View {
|
|
|
78
91
|
}
|
|
79
92
|
} else {
|
|
80
93
|
Slider(
|
|
81
|
-
value:
|
|
94
|
+
value: clampedBinding,
|
|
82
95
|
label: { label },
|
|
83
96
|
minimumValueLabel: { minimumValueLabel },
|
|
84
97
|
maximumValueLabel: { maximumValueLabel }
|
|
@@ -96,6 +109,8 @@ final class SliderProps: UIBaseViewProps {
|
|
|
96
109
|
@Field var step: Float?
|
|
97
110
|
@Field var min: Float?
|
|
98
111
|
@Field var max: Float?
|
|
112
|
+
@Field var lowerLimit: Float?
|
|
113
|
+
@Field var upperLimit: Float?
|
|
99
114
|
var onValueChanged = EventDispatcher()
|
|
100
115
|
var onEditingChanged = EventDispatcher()
|
|
101
116
|
}
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
f6beb7095321eea7da6845fa478235b0
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
a534f795e8ea46629011b2f8939608619b954ff1
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
213a1693673392a710d27fef37d99ef030c8a8783b4ccaa971ea914588dc5241
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
26e067865e2bbdd9f770d670f8212c2a309bee05009f722931b339ca9f76c235bbed2286a876d9c7a7b0ddb0e4b152617031f487c047ae78d0672ecc2649c6be
|
|
Binary file
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.md5
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
69d6e33780c1406aa3d7dace9bdb5302
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.sha1
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
28dcb1963deda39da1d284330ae45e0c900c24bd
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.sha256
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
034e7b27268544deeae53969a3c6edb7dccaa9648517de96383f64de4735b61d
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.aar.sha512
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
9153e9187cc172ce1793a149742c785d8a21bdb184999f83942f74a9eec67fac4526c6710563a45ce99d43773f1e2e2b2a7d11fedf03653a5d3125c66900c85e
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"component": {
|
|
4
4
|
"group": "expo.modules.ui",
|
|
5
5
|
"module": "expo.modules.ui",
|
|
6
|
-
"version": "56.0.
|
|
6
|
+
"version": "56.0.6",
|
|
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-56.0.
|
|
28
|
-
"url": "expo.modules.ui-56.0.
|
|
29
|
-
"size":
|
|
30
|
-
"sha512": "
|
|
31
|
-
"sha256": "
|
|
32
|
-
"sha1": "
|
|
33
|
-
"md5": "
|
|
27
|
+
"name": "expo.modules.ui-56.0.6.aar",
|
|
28
|
+
"url": "expo.modules.ui-56.0.6.aar",
|
|
29
|
+
"size": 1741087,
|
|
30
|
+
"sha512": "9153e9187cc172ce1793a149742c785d8a21bdb184999f83942f74a9eec67fac4526c6710563a45ce99d43773f1e2e2b2a7d11fedf03653a5d3125c66900c85e",
|
|
31
|
+
"sha256": "034e7b27268544deeae53969a3c6edb7dccaa9648517de96383f64de4735b61d",
|
|
32
|
+
"sha1": "28dcb1963deda39da1d284330ae45e0c900c24bd",
|
|
33
|
+
"md5": "69d6e33780c1406aa3d7dace9bdb5302"
|
|
34
34
|
}
|
|
35
35
|
]
|
|
36
36
|
},
|
|
@@ -141,13 +141,13 @@
|
|
|
141
141
|
],
|
|
142
142
|
"files": [
|
|
143
143
|
{
|
|
144
|
-
"name": "expo.modules.ui-56.0.
|
|
145
|
-
"url": "expo.modules.ui-56.0.
|
|
146
|
-
"size":
|
|
147
|
-
"sha512": "
|
|
148
|
-
"sha256": "
|
|
149
|
-
"sha1": "
|
|
150
|
-
"md5": "
|
|
144
|
+
"name": "expo.modules.ui-56.0.6.aar",
|
|
145
|
+
"url": "expo.modules.ui-56.0.6.aar",
|
|
146
|
+
"size": 1741087,
|
|
147
|
+
"sha512": "9153e9187cc172ce1793a149742c785d8a21bdb184999f83942f74a9eec67fac4526c6710563a45ce99d43773f1e2e2b2a7d11fedf03653a5d3125c66900c85e",
|
|
148
|
+
"sha256": "034e7b27268544deeae53969a3c6edb7dccaa9648517de96383f64de4735b61d",
|
|
149
|
+
"sha1": "28dcb1963deda39da1d284330ae45e0c900c24bd",
|
|
150
|
+
"md5": "69d6e33780c1406aa3d7dace9bdb5302"
|
|
151
151
|
}
|
|
152
152
|
]
|
|
153
153
|
},
|
|
@@ -161,13 +161,13 @@
|
|
|
161
161
|
},
|
|
162
162
|
"files": [
|
|
163
163
|
{
|
|
164
|
-
"name": "expo.modules.ui-56.0.
|
|
165
|
-
"url": "expo.modules.ui-56.0.
|
|
166
|
-
"size":
|
|
167
|
-
"sha512": "
|
|
168
|
-
"sha256": "
|
|
169
|
-
"sha1": "
|
|
170
|
-
"md5": "
|
|
164
|
+
"name": "expo.modules.ui-56.0.6-sources.jar",
|
|
165
|
+
"url": "expo.modules.ui-56.0.6-sources.jar",
|
|
166
|
+
"size": 82267,
|
|
167
|
+
"sha512": "26e067865e2bbdd9f770d670f8212c2a309bee05009f722931b339ca9f76c235bbed2286a876d9c7a7b0ddb0e4b152617031f487c047ae78d0672ecc2649c6be",
|
|
168
|
+
"sha256": "213a1693673392a710d27fef37d99ef030c8a8783b4ccaa971ea914588dc5241",
|
|
169
|
+
"sha1": "a534f795e8ea46629011b2f8939608619b954ff1",
|
|
170
|
+
"md5": "f6beb7095321eea7da6845fa478235b0"
|
|
171
171
|
}
|
|
172
172
|
]
|
|
173
173
|
}
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.md5
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
51c74a9ca05aad2e3faa0ff2e0ea797f
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.sha1
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
d7c80c16e1995920f696bf4f8676ee0208f51bea
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.sha256
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
22a0498924db370ce70a0f895ee07fc9c79669679c0ac257851ba1225330b990
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.module.sha512
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
88a8b97dd20a2c8cacfa8f5ca445d444fc60eccdd0ee5ba04083b0b5f509091ea976ae80c9ceacde4c0e267cb7873815707a07028efb94893ab60299724fb6dd
|
|
@@ -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>56.0.
|
|
12
|
+
<version>56.0.6</version>
|
|
13
13
|
<packaging>aar</packaging>
|
|
14
14
|
<name>expo.modules.ui</name>
|
|
15
15
|
<url>https://github.com/expo/expo</url>
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.md5
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1908319c0f950058cd7e4af54bde810e
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.sha1
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
656a2d7cce1be45517a43cf7c9010a47be716994
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.sha256
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
88522b12f07c121eb385f9e2bbfc235461ff9fa12a4311c0c3e8db3b9224e7d8
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.6/expo.modules.ui-56.0.6.pom.sha512
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
03523e913bb66754494f8af213caa9ce93d944050e1bff21dda5eb9c614fd384dbea15795217496be8791c4c61210d4629f22ce473811f20302790db638416a8
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
<groupId>expo.modules.ui</groupId>
|
|
4
4
|
<artifactId>expo.modules.ui</artifactId>
|
|
5
5
|
<versioning>
|
|
6
|
-
<latest>56.0.
|
|
7
|
-
<release>56.0.
|
|
6
|
+
<latest>56.0.6</latest>
|
|
7
|
+
<release>56.0.6</release>
|
|
8
8
|
<versions>
|
|
9
|
-
<version>56.0.
|
|
9
|
+
<version>56.0.6</version>
|
|
10
10
|
</versions>
|
|
11
|
-
<lastUpdated>
|
|
11
|
+
<lastUpdated>20260513103326</lastUpdated>
|
|
12
12
|
</versioning>
|
|
13
13
|
</metadata>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
b3ca330a5f2396c76ef2a75c6a63a1b5
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
056c42f73a3ce70484fd129941ba605b4b43b1a2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
51b027c8f2849c17546bf8aa17f35a8707289abfd20627996422c4cf2287115e
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
b7ac9cf92e7dbf7455874551e21d961c47e7df4031554f03584b4c67ad1e64e8510ad7a4a99f1ab39a4bd945a94f162f43153c49b16a851b398e6d42505cd8b1
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expo/ui",
|
|
3
|
-
"version": "56.0.
|
|
3
|
+
"version": "56.0.6",
|
|
4
4
|
"description": "A collection of UI components",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"*.fx.js"
|
|
@@ -43,6 +43,10 @@
|
|
|
43
43
|
"types": "./build/community/picker/index.d.ts",
|
|
44
44
|
"default": "./src/community/picker/index.tsx"
|
|
45
45
|
},
|
|
46
|
+
"./community/slider": {
|
|
47
|
+
"types": "./build/community/slider/index.d.ts",
|
|
48
|
+
"default": "./src/community/slider/index.tsx"
|
|
49
|
+
},
|
|
46
50
|
"./community/masked-view": {
|
|
47
51
|
"types": "./build/community/masked-view/index.d.ts",
|
|
48
52
|
"default": "./src/community/masked-view/index.tsx"
|
|
@@ -83,7 +87,7 @@
|
|
|
83
87
|
"@types/react": "~19.2.0",
|
|
84
88
|
"react-native-reanimated": "4.3.1",
|
|
85
89
|
"react-native-worklets": "0.8.3",
|
|
86
|
-
"expo": "56.0.0-preview.
|
|
90
|
+
"expo": "56.0.0-preview.10",
|
|
87
91
|
"expo-module-scripts": "56.0.2"
|
|
88
92
|
},
|
|
89
93
|
"jest": {
|
|
@@ -112,7 +116,7 @@
|
|
|
112
116
|
"optional": true
|
|
113
117
|
}
|
|
114
118
|
},
|
|
115
|
-
"gitHead": "
|
|
119
|
+
"gitHead": "40f0a6f6711d93762e0506b37e6e077e4bd9a541",
|
|
116
120
|
"scripts": {
|
|
117
121
|
"build": "expo-module build",
|
|
118
122
|
"clean": "expo-module clean",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { requireNativeModule } from 'expo';
|
|
2
2
|
import { type SharedObject, useReleasingSharedObject } from 'expo-modules-core';
|
|
3
|
+
import { useRef } from 'react';
|
|
3
4
|
|
|
4
5
|
import { worklets } from './optionalWorklets';
|
|
5
6
|
|
|
@@ -19,14 +20,16 @@ export type ObservableState<T> = SharedObject & {
|
|
|
19
20
|
};
|
|
20
21
|
|
|
21
22
|
/**
|
|
22
|
-
* Creates an observable native state that is automatically cleaned up when the
|
|
23
|
+
* Creates an observable native state that is automatically cleaned up when the
|
|
24
|
+
* component unmounts. `initialValue` is captured once on the first render
|
|
23
25
|
*/
|
|
24
26
|
export function useNativeState<T>(initialValue: T): ObservableState<T> {
|
|
27
|
+
const initialValueRef = useRef(initialValue);
|
|
25
28
|
return useReleasingSharedObject(() => {
|
|
26
|
-
const state = new ExpoUI.ObservableState({ value:
|
|
29
|
+
const state = new ExpoUI.ObservableState({ value: initialValueRef.current });
|
|
27
30
|
defineValueProperty(state);
|
|
28
31
|
return state;
|
|
29
|
-
}, [
|
|
32
|
+
}, []) as ObservableState<T>;
|
|
30
33
|
}
|
|
31
34
|
|
|
32
35
|
type NativeObservableState = {
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { type SliderProps } from './types';
|
|
2
|
+
import { Host } from '../../jetpack-compose/Host';
|
|
3
|
+
import { Slider as ComposeSlider } from '../../jetpack-compose/Slider';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* A drop-in replacement for `@react-native-community/slider` on Android.
|
|
7
|
+
* Renders a Material 3 `Slider` wrapped in a Host.
|
|
8
|
+
*/
|
|
9
|
+
export function Slider(props: SliderProps) {
|
|
10
|
+
const {
|
|
11
|
+
value,
|
|
12
|
+
minimumValue,
|
|
13
|
+
maximumValue,
|
|
14
|
+
lowerLimit,
|
|
15
|
+
upperLimit,
|
|
16
|
+
step,
|
|
17
|
+
disabled,
|
|
18
|
+
inverted,
|
|
19
|
+
minimumTrackTintColor,
|
|
20
|
+
maximumTrackTintColor,
|
|
21
|
+
thumbTintColor,
|
|
22
|
+
onValueChange,
|
|
23
|
+
style,
|
|
24
|
+
} = props;
|
|
25
|
+
const min = minimumValue ?? 0;
|
|
26
|
+
const max = maximumValue ?? 1;
|
|
27
|
+
const steps = step && step > 0 ? Math.max(0, Math.round((max - min) / step) - 1) : 0;
|
|
28
|
+
const hostStyle = inverted ? [style, { transform: [{ scaleX: -1 }] }] : style;
|
|
29
|
+
const colors = {
|
|
30
|
+
activeTrackColor: minimumTrackTintColor,
|
|
31
|
+
inactiveTrackColor: maximumTrackTintColor,
|
|
32
|
+
thumbColor: thumbTintColor,
|
|
33
|
+
};
|
|
34
|
+
return (
|
|
35
|
+
<Host matchContents={{ vertical: true }} style={hostStyle}>
|
|
36
|
+
<ComposeSlider
|
|
37
|
+
value={value}
|
|
38
|
+
min={minimumValue}
|
|
39
|
+
max={maximumValue}
|
|
40
|
+
lowerLimit={lowerLimit}
|
|
41
|
+
upperLimit={upperLimit}
|
|
42
|
+
steps={steps}
|
|
43
|
+
enabled={disabled === undefined ? undefined : !disabled}
|
|
44
|
+
colors={colors}
|
|
45
|
+
onValueChange={onValueChange}
|
|
46
|
+
/>
|
|
47
|
+
</Host>
|
|
48
|
+
);
|
|
49
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { type SliderProps } from './types';
|
|
2
|
+
import { Host } from '../../swift-ui/Host';
|
|
3
|
+
import { Slider as SwiftUISlider } from '../../swift-ui/Slider';
|
|
4
|
+
import { disabled as disabledModifier, tint as tintModifier } from '../../swift-ui/modifiers';
|
|
5
|
+
import type { ModifierConfig } from '../../types';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* A drop-in replacement for `@react-native-community/slider` on iOS.
|
|
9
|
+
* Renders a SwiftUI `Slider` wrapped in a Host.
|
|
10
|
+
*/
|
|
11
|
+
export function Slider(props: SliderProps) {
|
|
12
|
+
const {
|
|
13
|
+
value,
|
|
14
|
+
minimumValue,
|
|
15
|
+
maximumValue,
|
|
16
|
+
lowerLimit,
|
|
17
|
+
upperLimit,
|
|
18
|
+
step,
|
|
19
|
+
disabled,
|
|
20
|
+
inverted,
|
|
21
|
+
minimumTrackTintColor,
|
|
22
|
+
onValueChange,
|
|
23
|
+
style,
|
|
24
|
+
} = props;
|
|
25
|
+
const hostStyle = inverted ? [style, { transform: [{ scaleX: -1 }] }] : style;
|
|
26
|
+
// SwiftUI's Slider only exposes `.tint(...)` for the minimum (active)
|
|
27
|
+
// track. `maximumTrackTintColor` and `thumbTintColor` are accepted at the
|
|
28
|
+
// type level but not visually applied on iOS
|
|
29
|
+
const modifiers: ModifierConfig[] = [];
|
|
30
|
+
if (disabled) modifiers.push(disabledModifier(true));
|
|
31
|
+
if (minimumTrackTintColor !== undefined) {
|
|
32
|
+
modifiers.push(tintModifier(minimumTrackTintColor as string));
|
|
33
|
+
}
|
|
34
|
+
return (
|
|
35
|
+
<Host matchContents={{ vertical: true }} style={hostStyle}>
|
|
36
|
+
<SwiftUISlider
|
|
37
|
+
value={value}
|
|
38
|
+
min={minimumValue}
|
|
39
|
+
max={maximumValue}
|
|
40
|
+
lowerLimit={lowerLimit}
|
|
41
|
+
upperLimit={upperLimit}
|
|
42
|
+
step={step && step > 0 ? step : undefined}
|
|
43
|
+
modifiers={modifiers.length > 0 ? modifiers : undefined}
|
|
44
|
+
onValueChange={onValueChange}
|
|
45
|
+
/>
|
|
46
|
+
</Host>
|
|
47
|
+
);
|
|
48
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { StyleSheet } from 'react-native';
|
|
3
|
+
|
|
4
|
+
import { type SliderProps } from './types';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A drop-in replacement for `@react-native-community/slider`. Renders a
|
|
8
|
+
* SwiftUI `Slider` on iOS, a Material 3 `Slider` on Android, and a native
|
|
9
|
+
* HTML `<input type="range">` on web.
|
|
10
|
+
*/
|
|
11
|
+
export function Slider(props: SliderProps) {
|
|
12
|
+
const {
|
|
13
|
+
value,
|
|
14
|
+
minimumValue = 0,
|
|
15
|
+
maximumValue = 1,
|
|
16
|
+
lowerLimit,
|
|
17
|
+
upperLimit,
|
|
18
|
+
step,
|
|
19
|
+
disabled,
|
|
20
|
+
inverted,
|
|
21
|
+
minimumTrackTintColor,
|
|
22
|
+
onValueChange,
|
|
23
|
+
style,
|
|
24
|
+
} = props;
|
|
25
|
+
const clamp = (v: number) =>
|
|
26
|
+
Math.min(upperLimit ?? Infinity, Math.max(lowerLimit ?? -Infinity, v));
|
|
27
|
+
return (
|
|
28
|
+
<input
|
|
29
|
+
type="range"
|
|
30
|
+
min={minimumValue}
|
|
31
|
+
max={maximumValue}
|
|
32
|
+
step={step && step > 0 ? step : 'any'}
|
|
33
|
+
value={clamp(value ?? 0)}
|
|
34
|
+
disabled={disabled}
|
|
35
|
+
onChange={(e) => onValueChange?.(clamp(e.target.valueAsNumber))}
|
|
36
|
+
style={{
|
|
37
|
+
...(StyleSheet.flatten(style) as React.CSSProperties),
|
|
38
|
+
...(minimumTrackTintColor !== undefined && {
|
|
39
|
+
accentColor: minimumTrackTintColor as string,
|
|
40
|
+
}),
|
|
41
|
+
...(inverted && { transform: 'scaleX(-1)' }),
|
|
42
|
+
}}
|
|
43
|
+
/>
|
|
44
|
+
);
|
|
45
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { ColorValue, StyleProp, ViewStyle } from 'react-native';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Props for the `Slider` community drop-in component.
|
|
5
|
+
* Compatible with `@react-native-community/slider`.
|
|
6
|
+
*/
|
|
7
|
+
export type SliderProps = {
|
|
8
|
+
/**
|
|
9
|
+
* Initial / current value of the slider.
|
|
10
|
+
* Behaves like the community lib: passing a new value updates the thumb,
|
|
11
|
+
* but live drag emits via `onValueChange` without needing external state.
|
|
12
|
+
* @default 0
|
|
13
|
+
*/
|
|
14
|
+
value?: number;
|
|
15
|
+
/**
|
|
16
|
+
* Initial minimum value of the slider.
|
|
17
|
+
* @default 0
|
|
18
|
+
*/
|
|
19
|
+
minimumValue?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Initial maximum value of the slider.
|
|
22
|
+
* @default 1
|
|
23
|
+
*/
|
|
24
|
+
maximumValue?: number;
|
|
25
|
+
/**
|
|
26
|
+
* The lower limit value of the slider. The user won't be able to slide
|
|
27
|
+
* below this limit.
|
|
28
|
+
*/
|
|
29
|
+
lowerLimit?: number;
|
|
30
|
+
/**
|
|
31
|
+
* The upper limit value of the slider. The user won't be able to slide
|
|
32
|
+
* above this limit.
|
|
33
|
+
*/
|
|
34
|
+
upperLimit?: number;
|
|
35
|
+
/**
|
|
36
|
+
* If true the user won't be able to move the slider.
|
|
37
|
+
* @default false
|
|
38
|
+
*/
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Step value of the slider. The value should be between 0 and
|
|
42
|
+
* (maximumValue - minimumValue). A value of 0 means continuous (no
|
|
43
|
+
* snapping).
|
|
44
|
+
* @default 0
|
|
45
|
+
*/
|
|
46
|
+
step?: number;
|
|
47
|
+
/**
|
|
48
|
+
* Reverses the direction of the slider so the maximum value is on the
|
|
49
|
+
* left and the minimum value is on the right.
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
inverted?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Color of the track to the left of the thumb.
|
|
55
|
+
*/
|
|
56
|
+
minimumTrackTintColor?: ColorValue;
|
|
57
|
+
/**
|
|
58
|
+
* Color of the track to the right of the thumb.
|
|
59
|
+
* @platform android
|
|
60
|
+
*/
|
|
61
|
+
maximumTrackTintColor?: ColorValue;
|
|
62
|
+
/**
|
|
63
|
+
* Color of the thumb.
|
|
64
|
+
* @platform android
|
|
65
|
+
*/
|
|
66
|
+
thumbTintColor?: ColorValue;
|
|
67
|
+
/**
|
|
68
|
+
* Callback continuously called while the user is dragging the slider.
|
|
69
|
+
*/
|
|
70
|
+
onValueChange?: (value: number) => void;
|
|
71
|
+
/**
|
|
72
|
+
* Used to style and layout the Slider.
|
|
73
|
+
*/
|
|
74
|
+
style?: StyleProp<ViewStyle>;
|
|
75
|
+
};
|
|
@@ -47,6 +47,16 @@ export type SliderProps = {
|
|
|
47
47
|
* @default 1
|
|
48
48
|
*/
|
|
49
49
|
max?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Lower limit the user can drag the thumb to. The visible track still
|
|
52
|
+
* spans `min..max`, but the thumb stops at `lowerLimit` during drag.
|
|
53
|
+
*/
|
|
54
|
+
lowerLimit?: number;
|
|
55
|
+
/**
|
|
56
|
+
* Upper limit the user can drag the thumb to. The visible track still
|
|
57
|
+
* spans `min..max`, but the thumb stops at `upperLimit` during drag.
|
|
58
|
+
*/
|
|
59
|
+
upperLimit?: number;
|
|
50
60
|
/**
|
|
51
61
|
* Whether the slider is enabled for user interaction.
|
|
52
62
|
* @default true
|
|
@@ -21,6 +21,16 @@ export type SliderProps = {
|
|
|
21
21
|
* The maximum value of the slider. Updating this value does not trigger callbacks if the current value is above `max`.
|
|
22
22
|
*/
|
|
23
23
|
max?: number;
|
|
24
|
+
/**
|
|
25
|
+
* Lower limit the user can drag the thumb to. The visible track still
|
|
26
|
+
* spans `min..max`, but the thumb stops at `lowerLimit` during drag.
|
|
27
|
+
*/
|
|
28
|
+
lowerLimit?: number;
|
|
29
|
+
/**
|
|
30
|
+
* Upper limit the user can drag the thumb to. The visible track still
|
|
31
|
+
* spans `min..max`, but the thumb stops at `upperLimit` during drag.
|
|
32
|
+
*/
|
|
33
|
+
upperLimit?: number;
|
|
24
34
|
/**
|
|
25
35
|
* A label describing the slider's purpose.
|
|
26
36
|
*/
|
package/src/universal/index.ts
CHANGED
|
@@ -12,6 +12,6 @@ export * from './FieldGroup';
|
|
|
12
12
|
export * from './Icon';
|
|
13
13
|
export * from './Spacer';
|
|
14
14
|
export * from './State';
|
|
15
|
-
export
|
|
15
|
+
export { TextInput, type TextInputProps, type TextInputRef } from './TextInput';
|
|
16
16
|
|
|
17
17
|
export type { UniversalStyle, UniversalAlignment, UniversalBaseProps } from './types';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
813c4db4263146688584a4c5f309f653
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
15482bf66b78fc5bb944571c2ee52b665c21b307
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
e144b778f1df5f7e73be22ffe120819c376f3309599468cc22a5c5528ce3ad84
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
788dc7a233524ec8b7eed4a0f242bf546284f3a2ea501806e2e90047c3221702430584413d684677dc330195a378feed1bb1956e2d980c8f689ebce716cf54b6
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.md5
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
ec6173e86a8ac7f1e588b08dc6ff96b1
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.sha1
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
f071c18852f0767d13d3b64a54aac75cb42108bd
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.sha256
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
c04258a22308940aa735f6f81a47fa83d842db257c39396b2e3d9007cb6802fb
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.aar.sha512
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
24e656ae1e397c8abea2fb5a2d49bc826a58f84afd58b3104ff22cede3fcf720f86ac532223279fa5efda5c402d0c75f3ab700bdcbb5b0847c2618028243c04c
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.md5
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
20fa89b33ffbafb26f87ab05d3c32ebc
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.sha1
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
8af300dc73a015cee99929df946b62705307d374
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.sha256
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
2d4e884d1d445423d4608a09248b9d49434fabb2e18c059dc4a2d78d66a55fe8
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.module.sha512
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
7ef41b17be6853a76e87a0b4a155f37861c02033bbb6ff137775ff9de82452e2ca6fa5e5b92e8a45c103ce4f43ae2e7557389f222468a48dfc3c1237f78db180
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.md5
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
e0d09d44f4f69b2700d13613441e6a47
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.sha1
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
3f3e8b7f098233c4c770b721cff0cc4fb302d55b
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.sha256
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4f11274efe940c9970dcda4dd3ebd5d0d18adbdc37a0b17b5fed4bab2c8b5a91
|
package/local-maven-repo/expo/modules/ui/expo.modules.ui/56.0.5/expo.modules.ui-56.0.5.pom.sha512
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
455e2a3ebec70972f19e10afa615cfd2a1e82e61d2cd40b6c93711799eb9863253c60fe661b61fe9a8ceca4faf23d86a3eb6689baa0c7f929e56cf0b27989692
|