chore: Migrate JoinCode room to ts

This commit is contained in:
AlexAlexandre 2021-12-02 00:20:03 -03:00
parent 1849c295a2
commit 7408cf88fe
2 changed files with 13 additions and 18 deletions

View File

@ -69,11 +69,6 @@ interface IRCTextInputProps extends TextInputProps {
}
export default class RCTextInput extends React.PureComponent<IRCTextInputProps, any> {
static defaultProps = {
error: {},
theme: 'light'
};
state = {
showPassword: false
};

View File

@ -1,5 +1,4 @@
import React, { forwardRef, useImperativeHandle, useState } from 'react';
import PropTypes from 'prop-types';
import { InteractionManager, StyleSheet, Text, View } from 'react-native';
import Modal from 'react-native-modal';
import { connect } from 'react-redux';
@ -41,10 +40,18 @@ const styles = StyleSheet.create({
}
});
interface IRoomJoinCodeProps {
rid: string;
t: string;
onJoin: Function;
isMasterDetail: boolean;
theme: string;
}
const JoinCode = React.memo(
forwardRef(({ rid, t, onJoin, isMasterDetail, theme }, ref) => {
forwardRef(({ rid, t, onJoin, isMasterDetail, theme }: IRoomJoinCodeProps, ref) => {
const [visible, setVisible] = useState(false);
const [error, setError] = useState(false);
const [error, setError] = useState<any>(false);
const [code, setCode] = useState('');
const show = () => setVisible(true);
@ -64,7 +71,7 @@ const JoinCode = React.memo(
useImperativeHandle(ref, () => ({ show }));
return (
<Modal transparent avoidKeyboard useNativeDriver isVisible={visible} hideModalContentWhileAnimating>
<Modal avoidKeyboard useNativeDriver isVisible={visible} hideModalContentWhileAnimating>
<View style={styles.container} testID='join-code'>
<View
style={[
@ -76,7 +83,7 @@ const JoinCode = React.memo(
<TextInput
value={code}
theme={theme}
inputRef={e => InteractionManager.runAfterInteractions(() => e?.getNativeRef()?.focus())}
inputRef={(e: any) => InteractionManager.runAfterInteractions(() => e?.getNativeRef()?.focus())}
returnKeyType='send'
autoCapitalize='none'
onChangeText={setCode}
@ -111,15 +118,8 @@ const JoinCode = React.memo(
);
})
);
JoinCode.propTypes = {
rid: PropTypes.string,
t: PropTypes.string,
onJoin: PropTypes.func,
isMasterDetail: PropTypes.bool,
theme: PropTypes.string
};
const mapStateToProps = state => ({
const mapStateToProps = (state: any) => ({
isMasterDetail: state.app.isMasterDetail
});
export default connect(mapStateToProps, null, null, { forwardRef: true })(JoinCode);