Skip to content

Commit 33501dc

Browse files
Fix thumbImage prop and adjust to the latest of RN versions (#736)
* Upgrade versions of react-native and react * Use ImageSource imported directly to parse image * Remove tests completely * Cast ImageSource to ImageSourcePropType * Correct the formatting of package sources * Update the lockfiles for the package relations
1 parent 47f3254 commit 33501dc

File tree

11 files changed

+7132
-42429
lines changed

11 files changed

+7132
-42429
lines changed

example-web/package-lock.json

Lines changed: 477 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example-web/package.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
"start": "craco start",
2222
"build": "craco build",
2323
"test": "craco test",
24-
"eject": "craco eject"
24+
"eject": "craco eject",
25+
"refresh-package": "rimraf ./node_modules/@react-native-community/slider && npx copyfiles -u 2 \"./../package/**/*\" ./node_modules/@react-native-community/slider && rimraf ./node_modules/@react-native-community/slider/node_modules"
2526
},
2627
"eslintConfig": {
2728
"extends": [
@@ -43,7 +44,9 @@
4344
},
4445
"devDependencies": {
4546
"@craco/craco": "^5.9.0",
46-
"@dealmore/craco-plugin-babel-include": "^1.0.0"
47+
"@dealmore/craco-plugin-babel-include": "^1.0.0",
48+
"copyfiles": "^2.4.1",
49+
"rimraf": "^6.0.1"
4750
},
4851
"overrides": {
4952
"react-scripts": {

example/package-lock.json

Lines changed: 8 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package/package-lock.json

Lines changed: 6620 additions & 9859 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package/package.json

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,12 @@
3131
"@react-native-community/cli-platform-android": "15.0.1",
3232
"@react-native-community/cli-platform-ios": "15.0.1",
3333
"@react-native-community/eslint-config": "^3.2.0",
34-
"@react-native/babel-preset": "0.76.3",
35-
"@react-native/eslint-config": "0.76.3",
36-
"@react-native/metro-config": "0.76.3",
37-
"@react-native/typescript-config": "0.76.3",
34+
"@react-native/babel-preset": "^0.81.1",
35+
"@react-native/eslint-config": "^0.81.1",
36+
"@react-native/metro-config": "^0.81.1",
37+
"@react-native/typescript-config": "^0.81.1",
3838
"@types/jest": "^28.1.8",
39-
"@types/react": "^18.2.6",
40-
"@types/react-test-renderer": "^18.0.0",
39+
"@types/react": "^19.2.0",
4140
"babel-jest": "^29.7.0",
4241
"babel-plugin-module-resolver": "5.0.0",
4342
"copyfiles": "^2.4.1",
@@ -48,10 +47,9 @@
4847
"flow-bin": "^0.163.0",
4948
"jest": "^29.5.0",
5049
"prettier": "2.8.8",
51-
"react": "^18.3.1",
52-
"react-native": "^0.76.3",
53-
"react-native-windows": "^0.76.2",
54-
"react-test-renderer": "^18.3.1",
50+
"react": "^19.2.0",
51+
"react-native": "^0.81.4",
52+
"react-test-renderer": "^19.2.0",
5553
"typescript": "^5.0.4"
5654
},
5755
"repository": {

package/src/RNCSliderNativeComponent.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import type {ColorValue, HostComponent, ViewProps} from 'react-native';
2-
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3-
//@ts-ignore
4-
import type {ImageSource} from 'react-native/Libraries/Image/ImageSource';
2+
import {ImageSource, codegenNativeComponent} from 'react-native';
53
import type {
64
Float,
75
WithDefault,

package/src/RNCSliderNativeComponent.web.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
GestureResponderEvent,
88
LayoutChangeEvent,
99
Image,
10+
ImageSourcePropType,
1011
} from 'react-native';
1112
//@ts-ignore
1213
import type {ImageSource} from 'react-native/Libraries/Image/ImageSource';
@@ -79,7 +80,7 @@ const RCTSliderWebComponent = React.forwardRef(
7980
const containerRef = forwardedRef || React.createRef();
8081
const containerPositionInvalidated = React.useRef(false);
8182
const [value, setValue] = React.useState(initialValue || minimumValue);
82-
const lastInitialValue = React.useRef<number>();
83+
const lastInitialValue = React.useRef<number>(0);
8384
const animationValues = React.useRef<AnimationValues>({
8485
val: new Animated.Value(value),
8586
min: new Animated.Value(minimumValue),
@@ -364,7 +365,7 @@ const RCTSliderWebComponent = React.forwardRef(
364365
<View pointerEvents="none" style={thumbViewStyle}>
365366
{thumbImage !== undefined ? (
366367
<Image
367-
source={thumbImage}
368+
source={thumbImage as ImageSourcePropType}
368369
style={{width: '100%', height: '100%'}}
369370
/>
370371
) : null}

package/src/Slider.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ import {
99
NativeSyntheticEvent,
1010
StyleProp,
1111
View,
12+
ImageSource,
13+
ImageSourcePropType,
1214
} from 'react-native';
1315
import RCTSliderNativeComponent from './index';
14-
//@ts-ignore
15-
import type {ImageSource} from 'react-native/Libraries/Image/ImageSource';
1616

1717
import type {FC, Ref} from 'react';
1818
import {MarkerProps} from './components/TrackMark';
@@ -317,9 +317,9 @@ const SliderComponent = (
317317
thumbImage={
318318
Platform.OS === 'web'
319319
? props.thumbImage
320-
: props.StepMarker
320+
: props.StepMarker || !props.thumbImage
321321
? undefined
322-
: Image.resolveAssetSource(props.thumbImage)
322+
: Image.resolveAssetSource(props.thumbImage as ImageSourcePropType)
323323
}
324324
ref={forwardedRef}
325325
style={[

package/src/__tests__/Slider.test.tsx

Lines changed: 0 additions & 89 deletions
This file was deleted.

0 commit comments

Comments
 (0)