Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: migrate NewServerView to hooks #5919

Open
wants to merge 6 commits into
base: develop
Choose a base branch
from

Conversation

OtavioStasiak
Copy link
Contributor

@OtavioStasiak OtavioStasiak commented Oct 15, 2024

Proposed changes

MIgrate the NewServerView code from class components to function component.

Issue(s)

https://rocketchat.atlassian.net/browse/NATIVE-18

How to test or reproduce

  • Open the app;
  • Add a workspace;

Screenshots

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • Improvement (non-breaking change which improves a current function)
  • New feature (non-breaking change which adds functionality)
  • Documentation update (if none of the other choices apply)

Checklist

  • I have read the CONTRIBUTING doc
  • I have signed the CLA
  • Lint and unit tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works (if applicable)
  • I have added necessary documentation (if applicable)
  • Any dependent changes have been merged and published in downstream modules

Further comments

@OtavioStasiak OtavioStasiak force-pushed the chore-migrate-to-hooks-new-server-view branch from 5c776db to 7fdf956 Compare October 17, 2024 17:54
@OtavioStasiak OtavioStasiak marked this pull request as draft October 17, 2024 18:56
@OtavioStasiak OtavioStasiak force-pushed the chore-migrate-to-hooks-new-server-view branch from 7fdf956 to 1538871 Compare October 18, 2024 16:19
@OtavioStasiak OtavioStasiak force-pushed the chore-migrate-to-hooks-new-server-view branch 2 times, most recently from 203b7ad to 9178ada Compare October 18, 2024 19:30
@OtavioStasiak OtavioStasiak force-pushed the chore-migrate-to-hooks-new-server-view branch from 9178ada to 825b054 Compare October 18, 2024 19:32
@OtavioStasiak OtavioStasiak marked this pull request as ready for review October 18, 2024 19:36
@@ -67,8 +67,7 @@ const ServerInput = ({
/>
{focused && serversHistory?.length ? (
<View
style={[styles.serverHistory, { backgroundColor: themes[theme].surfaceRoom, borderColor: themes[theme].strokeLight }]}
>
style={[styles.serverHistory, { backgroundColor: themes[theme].surfaceRoom, borderColor: themes[theme].strokeLight }]}>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useTheme

@@ -0,0 +1,51 @@
import { useLayoutEffect, useState } from 'react';
import { Q } from '@nozbe/watermelondb';
import { sanitizeLikeString } from '@nozbe/watermelondb/QueryDescription';
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

import { sanitizeLikeString } from '../../lib/database/utils';

}
};

useLayoutEffect(() => {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useEffect

connecting: state.server.connecting
}));

const [text, setText] = useState<string>('');
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use ref

dispatch(inviteLinksClear());
if (previousServer) {
dispatch(selectServerRequest(previousServer));
}
};

handleNewServerEvent = (event: { server: string }) => {
const handleNewServerEvent = (event: { server: string }) => {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useCallback

this.setState({ connectingOpen: false });
useLayoutEffect(() => {
EventEmitter.addEventListener('NewServer', handleNewServerEvent);
BackHandler.addEventListener('hardwareBackPress', handleBackPress);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useCallback

const { dispatch } = this.props;

this.setState({ connectingOpen: false });
useLayoutEffect(() => {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useEffect

chooseCertificate={chooseCertificate}
handleRemove={removeCertificate}
previousServer={previousServer}
theme={theme}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useTheme


import { serializeAsciiUrl } from '../../../lib/methods';

const completeUrl = (url: string) => {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Write unit tests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants