[TS migration] Migrate 'RNTextInput.js' component to TypeScript#30056
Conversation
src/components/RNTextInput.tsx
Outdated
| import React, {ForwardedRef} from 'react'; | ||
| // eslint-disable-next-line no-restricted-imports | ||
| import {TextInput, TextInputProps} from 'react-native'; | ||
| import Animated, {AnimateProps} from 'react-native-reanimated'; |
There was a problem hiding this comment.
| import Animated, {AnimateProps} from 'react-native-reanimated'; | |
| import Animated, {AnimatedProps} from 'react-native-reanimated'; |
AnimateProps is deprecated 🙂
There was a problem hiding this comment.
This is a type that AnimatedTextInput is using, would you change it anyways?
There was a problem hiding this comment.
AnimateProps is an alias for AnimatedProps as we can see here, so it should not be a problem to use AnimatedProps 🙂
| RNTextInput.defaultProps = defaultProps; | ||
| RNTextInput.displayName = 'RNTextInput'; | ||
|
|
||
| const RNTextInputWithRef = React.forwardRef((props, ref) => ( |
There was a problem hiding this comment.
Why did you remove forwardRef?
There was a problem hiding this comment.
I moved it to export default according to guidelines
|
Done! @fabioh8010 |
Reviewer Checklist
Screenshots/VideosAndroid: NativeCleanShot.2023-11-07.at.19.59.42.mp4Android: mWeb ChromeCleanShot.2023-11-07.at.19.49.09.mp4iOS: NativeCleanShot.2023-11-07.at.18.48.12.mp4iOS: mWeb SafariCleanShot.2023-11-07.at.19.00.24.mp4MacOS: Chrome / SafariCleanShot.2023-11-07.at.18.06.19.mp4MacOS: DesktopCleanShot.2023-11-07.at.19.52.48.mp4 |
|
@BartoszGrajdek Could you please merge |
|
We did not find an internal engineer to review this PR, trying to assign a random engineer to #24993 as well as to this PR... Please reach out for help on Slack if no one gets assigned! |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/roryabraham in version: 1.3.96-6 🚀
|
|
🚀 Deployed to production by https://github.com/puneetlath in version: 1.3.96-15 🚀
|
|
🚀 Deployed to staging by https://github.com/roryabraham in version: 1.3.98-0 🚀
|
|
🚀 Deployed to production by https://github.com/roryabraham in version: 1.3.98-5 🚀
|
Details
Fixed Issues
$ #24993
Tests
Check if text inputs are working correctly in the app i.e.:
Offline tests
QA Steps
Check if text inputs are working correctly in the app i.e.:
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Web
web.mov
Mobile Web - Chrome
Mobile Web - Safari
Desktop
iOS
ios.mov
Android
android.mov