giseldo/neodataset huggingface dataset:
[GAT-MDS-2-3] Not able to open 'Terms&condition'  in join minds page

Component:
Login

Steps to reproduce:
Launch the app
Tap on join minds
Tap on the 'Terms&condition'  link notice the user redirect to the login page

Severity:
High

Attachments:
https://tracker.testerwork.com/video_files/3d413b079e72ac442c83bc5b9584e0da0a1e9a8160569655a032ab1e89c43cc77dd8cf37fbb761918f257b22e44554c6

Test case id:


Country:


Description:
Actual results
When the user accesses the join minds page and taps on the 'Terms&condition'  link it can be noticed the user redirect to the login page

Expected results
The user should be able to open the 'Terms&condition'  page in the join minds page without any issue



Environment:
platform_info: Samsung Galaxy S9, Android 10.0 10
operating_system: -
mobile_device_name: Samsung Galaxy S9
web_browser_and_version: -
operating_system_version: Android 10.0 10

Credentials:


Repro rate x5 1:

Story points: 2.0
[GAT-MDS-2-1] User not able to create new account due to the Verification Code won't appear during verification process

Component:
Register

Steps to reproduce:
Launch App
Tap Join Minds
Enter all data
Agree to the Teerms and condition
Tap Join Minds
Observe that the Verification Code not appear to be typed in the verification process

Severity:
High

Attachments:
https://tracker.testerwork.com/video_files/a676f669bc5ecf51a3155fd2b2c9eb221ed0a06583248e925d423f25a647bb8209a336036deda55717cd648f80d7d0fd, https://tracker.testerwork.com/video_files/3a89a64ce9eae6f7ffcad78291b4a15581953229d90508da7f4e1f1978dcfdda41551c28b460ad14fae57d454d889342

Test case id:


Country:


Description:
Actual results
User not able to create new account due to the Verification Code won't appear during verification process

Expected results
User able to verify the account normally and successfully create new account



Environment:
platform_info: Google Pixel 3 XL, Android 11.0 11
operating_system: -
mobile_device_name: Google Pixel 3 XL
web_browser_and_version: -
operating_system_version: Android 11.0 11

Credentials:


Repro rate x5 1:

Story points: 2.0
Base UI Avatar component

This is the base Avatar UI definitions/creation.

- [x] Define the number of avatar size variations throughout the UI aligning it with Design
- [x] **Internal** border prop with an `active` option (following menu/story states)
- [x] Options for rendering it wrapped on `Pressable`, `ScalePressable` and `View` components

This ties with #3693 by simplifying the visual activation of the component. Before replacing it on the main feeds it would be good to do a benchmark test to check if it's not affecting scrolling on Android.

Story points: 2.0
Base UI Spacing components

This maps the work done with the spacing components. It follows the new UI Tokens (`Tokens.ts`) that has been aligned with UI Design and aim to be a centralized way of managing spacing and alignment throughout the mobile interface.

- [x] Create the `Row` component for managing horizontally distributed items
- [x] Create the `Column` component for managing vertically distributed items
- [x] Both should extend the `Spacer` component for handling the spacing props `left` `top` `right` `bottom` `horizontal` `vertical`

#### Reasoning
- Remove spacing responsibility from base ui components
- Clean up the per-screen style prop definition
- Align with the new design tokens spacing unit
- Creates a clear strategy for moving towards a scalable interface based on a single centralized multiplier value, which enables the UI to adjust itself proportionally on multiple screen sizes

Story points: 2.0
Create 4.19.0 changelog

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Implement Icon component light and shadow variants

#### Summary

For rendering on top of the camera, the Icon component needs a shadow and light variants.

- [x] Create a shadow variant to the Icon
- [x] Create a light variant to the Icon
- [x] Add the new props to the camera back Icon

#### Future proof

In the future - as the Icon component gets better defined on the Mobile UI side - we can refactor the shadow and light variants to be built into a component wrapper for reducing the main component complexity.

Story points: 1.0
Improvement: Comments UX / A/B testing

### Summary

This extends @manishoo comments on #3464.

Minds web version allows commenting from the feed view and they're visible by default on the detail view. On mobile there is a two step paced animation for getting into it. Fixing it can easily improve the network's overall mobile post interactions.

- [ ] Open the `BottomView` from the list on the Comment Action
- [ ] Show the top comments (if any) on the feed list
- [ ] Show the comment section on the detail screen with a fixed composer

### Reasoning

There are two different issues and test opportunities.
 - Currently there is friction for posting a comment
 - Comments are hidden on the post detail page
 - Showing a reduced version of 1/2 top comments on the list can improve the post interaction metrics by triggering new actions

Any friction created between the user interaction and its final action will reduce its usage, that is true for the feed list but also for the detail page with the hidden comments and absent fixed composer.

### A/B Testing

There are two opportunities for testing
- Commenting without a full navigation vs commenting with a full navigation
- Showing top comments on the feed vs not showing top comments on the feed

### Comparison

By comparing it with similar apps architecture it could go both ways. There is a higher tendency of opening the comment section without a full navigation on Android and on the detail screen on iOS. The only way for closing on it would be testing on Mind's user base. Facebook show comments on the feed mainly for groups while Instagram was recently testing a reduced version of it.

### Limitations

If this goes through Product, we still need to check if there are any service limitations for showing a top comment on the feed.

Story points: 4.0
Improvement: Deprecate excessive use of web-like in-app tooltips

### Summary

There are a number of components using different types of tooltips throughout the app, none of which are ideal for mobile UX. We already have an optimal strategy for replacing them with the `BottomSheet` component, let's just apply that throughout.

- [ ] Remove all unnecessary tooltip libraries replacing them with the default `BottomSheet` component

#### Examples

<img src="/uploads/e996e2a70af141547278d515d7112fe8/IMG_0030.jpg" height="100" />
<img src="/uploads/96ca2dd45bb49c7d216fe79b8cd195c7/IMG_0029.jpg" height="100" />
<img src="/uploads/58fec3c797a7aa31cbc38621a5ab4984/IMG_0028.jpg" height="100" />
<img src="/uploads/8bcb00ea722d9d45105b790d3a277194/IMG_0027.jpg" height="100" />

#### Reasoning

Apart from the problem of the tooltip not being a mobile usable pattern; the new approach using the `BottomSheet` opens the opportunity for conveying significantly more and more organized information about each one of the sections, which can be later updated accordingly.

Story points: 3.0
Improvement: Notification tab section purpose quick-fixes

### Summary

On the Mobile's Notification screen there is an information gap on the purpose of each one of the sections. This needs to be addressed at least with a quick-fix as the action comes from the first navigation layer / BottomTabs and could influence on the initial onboarding process.

- [ ] Add a `label` to each `Icon` and/or a `Header4` to each section
- [ ] Add a section specific text for each of the `EmptyList` components
- [ ] Fix the placeholder loader misalignment

### The Problem

On Mind's web version there is a hover label for every section. On mobile there is no information for identifying the purpose of each one of the tabs.

<img src="/uploads/2f2dc2c6ab2792debcf2f5ae52e0eaf7/Screen_Shot_2021-10-20_at_13.54.45.png" height="100" />
<img src="/uploads/7d8356ecfac2255ddc7fe13e6a8668f0/IMG_0015.jpg" height="100" />

### The source

This comes in part as result of the fact that the current UI abdicates to use it's TopHeader for contextualizing each screen and will probably be addressed as the navigation/screen architecture itself gets reviewed.

### Proposed quick-fix

As a quick-fix we could add a `Body4` text to every icon label or a `Header3`/`Header4` title to the top of each one of the list messages.

### Placeholder misalignment

The animated placeholder should be aligned with the list. If not perfectly at least should match the avatar's position to avoid the visual UI flick.

<img src="/uploads/cd470f94b59036309bab8438d6fa1102/Frame_1.png" width="360" />

Story points: 2.0
Improvement: Clearing search bar UX

### Summary

The search bar currently doesn't have the clear action. As this is standard for any re-actionable input and the search bar is a common feature, this has an increased critical level. 

- [ ] Add the action reset `tiny` `close` `IconButton` to the search bar input
- [ ] On closing and re-opening the search view the search should not keep it's state
- [ ] Add the correct `returnKeyType` for the keyboard action
- [ ] Refactor the bar structure to avoid the double close icon proximity

#### On re-opening

The `user expectation` is for the search to have cleared after closing and re-opening the view.

#### The returnKeyType

The `user expectation` is for having an actionable key on it's keyboard whenever it uses an actionable text input.

<img src="/uploads/aaf676d700d1da7703bebab3a53c97b5/keyboard.png" height="80" />

#### Avoiding the double close icon

Twitter and Instagram does this by using the `Close` labeled button on the right side of the input. Facebook does it by adding the back button on the left side of the input giving up on the search icon.

<img src="/uploads/755b00369c22b42660258a0f75703224/IMG_0007.jpg" height="40" />
<img src="/uploads/3d80b3b5f8667682c772f86612e17bfc/IMG_0009.jpg" height="40" />
<img src="/uploads/2dffe1a02d617d7293a607428de98376/IMG_0008.jpg" height="40" />


### Current app version

<img src="/uploads/98e2844a2810b4960e4c1cf00de8c139/IMG_0014.jpg" width="240" />

Story points: 3.0
Improvement: Chat pre-installation bottom sheet

### Summary

Not sure if this should be considered an improvement or a bug. The app can't have a button on it's main navigation bar that automatically sends the user away from the application on the first press without any context. This can affect onboarding by inadvertently bouncing the user away from the app.

### Comparison

Facebook covers this by:
- Showing directly a modal with the in-app download modal on iOS
- Showing an informative modal then opening the in-app download modal on Android

### Proposed fix

We can use the `BottomSheet` to inform the user about the existence of the separate Chat application with the download option on the main action button. If the user choose to download it we can open the in-app download modal or send the user directly to the store/url.

### Future proof

Even if there is a future decision of moving away the chat action from the bottom bar, this behavior is still valid.

### Development

If there are any extra complications on adding the in-app install modal. Just showing the information sheet should be enough. The BottomSheet should be shown if the user have never pressed the action or doesn't have the app installed.

Story points: 4.0
Improvement: Composer UX

The composer is on the center stage of the content creation and there are a couple basic UX inconsistencies that together can increase it's easiness of use impacting on user retention and the content creation process itself.

- [x] Default to the Text composer when pressing on the BottomTab (+)
- [x] Default to the Camera composer when pressing on the Story (+) pressable circle
- [x] Remove the duality of the Photo/Video tabs by merging them into one
- [x] Use a darkened rounded frame on both dark and light themes
- [x] Show Post/Story independently from which action the user is coming from
- [x] Add a label text to the composer story button on the list for increased UI consistency
- [ ] Invert the position of the cog and submit actions
- [x] Change the ChevronBack icon with a back action to a unified close (X) one

> This was added as a single issue for it being linked together and having reduced implementation complexity.

**Reasonign**

##### Duality on the tabs Video/Photo

Since the introduction of the Story feature by Snapchat the common user expectation is to have the video activated by long shutter press. On the development side it unnecessarily increases the complexity of the composer navigation/structure and maintenance.

##### Darkened rounded frame

Immersiveness is on the core of the Story/Reels way of publishing/viewing content. The darkened frame increases it by giving focus to what's shown on the camera. Instagram/Facebook/Linkedin/TikTok apply the rounded corners on iOS and just TikTok on Android. We could maintain the rounded corners for throughout both for consistency.

<img src="/uploads/782604e155d273fa3e07764689ec0afc/IMG_9996.PNG" width="260" />

##### Show Post/Story independently from the action origin

Currently we're hiding the text option when coming from the story (+) itself. As this is not being done by other social platforms and it's an extra step for development/maintenance the behavior can be removed.

##### Label text to the composer story button

This one is for visual consistency and increased usability. Instagram is using `Your Story` as label, but also `Add Story`/`Create Story` can be considered. It's occuring a 

<img src="/uploads/c9c911f699ce9db9ea88cb72b64eb4ac/IMG_9993.jpg" height="100" />
<img src="/uploads/b143af9ec167262d5b77e2db99577cc5/IMG_9994.jpg" height="100" />

##### Unifying the close action

Independently of the OS being used, the user doesn't expect a back action for changing tabs. We can replace it with a single closing action that closes the component. Currently if you are on Text and hit back you would open the camera view.

##### Inverting settings and submit actions
This is mainly due for it being positioned closer to the user's finger while typing. It also could have an active color for increased visibility.

Story points: 20.0
Update storage package to 0.6.6

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Make test build 4.19.0. Smoke test it

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Fix React Native 0.65 home feed scroll issue

### Summary

With the update to RN 0.65 the scroll on Android is slowing/freezing on the home feed.

### Steps to reproduce

Open the app and scroll the main feed on an Android device.

### What is the current *bug* behavior?

The scroll is oddly slow/freezing on the render of new items of the list.

### Possible fixes

This is possibly as result of the issues the reanimated library is having with RN 0.65 and 0.66 → see also https://github.com/facebook/react-native/issues/32070.

Story points: 5.0
Base UI Button component

I'm splitting each of the base components creation into three parts.

#### Creation
Creation of the base component initial version following what was done and agreed on the Icon/Typography ones. This is composed of structure, design and single use. @michaelfbradley is creating a simple mock for the design side of it.

#### Spread
Spread it throughout the current UI in order to understand how it can be best adapted for using in the legacy application, adapting the props and exposing the necessary component wrappers.

#### Performance
Analyze the component's performance on the benchmarking tool to understand if any additional tweaks could be made to improve it's render/update phase either through memoization or exposing new wrappers.

Story points: 3.0
Notification screen empties on tab re-navigation

### Summary

When navigating again to the same notification tab that you're currently on the content get emptied out showing the `Sorry this list is empty` message.

### Steps to reproduce

- Click on the Notifiations icon on the BottomTab
- Navigate on the TopBar to the same section that you are currently on 

### Platform information

iOS/Android

### App version

4.18.0 and 4.19.0

### What is the current *bug* behavior / *correct* behavior?

Instead of emptying the list, it should refuse to navigate or reload the same page

### Relevant logs and/or screenshots

![Simulator_Screen_Recording_-_iPhone_13_-_2021-10-15_at_11.03.18](/uploads/87bffbb8f95ba419ee9f395dd2dab62c/Simulator_Screen_Recording_-_iPhone_13_-_2021-10-15_at_11.03.18.mp4)

Story points: 3.0
Add Top and Latest option to the newsfeed

### Mobile Designs

* Newsfeed - Top posts enabled view -> https://www.sketch.com/s/00f71688-a435-4c27-82c0-299fd810da56/a/AxGOkVM
* Newsfeed - Latest posts enabled view -> https://www.sketch.com/s/00f71688-a435-4c27-82c0-299fd810da56/a/paWZ80Q


#### Actionsheets
The user can switch between Top Posts and Latest Posts via action sheets. The proposed designs should align well with the existing action sheet structure.

* https://www.sketch.com/s/00f71688-a435-4c27-82c0-299fd810da56/a/g0Ye50M
* https://www.sketch.com/s/00f71688-a435-4c27-82c0-299fd810da56/a/8yo80Vx

#### Feed view
* A total of three top posts will display, with an option to view more top posts - https://www.sketch.com/s/00f71688-a435-4c27-82c0-299fd810da56/a/09OwgVe
* Top post view: https://www.sketch.com/s/00f71688-a435-4c27-82c0-299fd810da56/a/wLWy2WV

#### General Questions - Confirmation required
* What is the default selection for newly onboarded users. Suggestion: 'Top'.
* Selection for existing users. Suggestion. 'Latest', but with a cue that alerts that top posts is a new feature.
* Will top posts be cached - if so, for how long? Suggestion: Sensible cache time could be in the region of 5 minutes.

#### A/B questions
* Can we compare and contrast engagement (i.e. up-votes, comments, reminds, click-throughs) for top/latest versus the normal feed?


### Summary

Match front end new filter bar
https://gitlab.com/minds/front/-/commit/5367c6b0efc2962eda4796defc874ba2c6769a0e

Story points: 20.0
Soft deprecate the SMS MFA option

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Soft deprecate the SMS MFA option in settings in the style of https://gitlab.com/minds/front/-/commit/7095d676dfb2cfbae1bf788991eca72a706abc2b

Story points: 1.0
Improve Blog View Experience

- [ ] there is no way to subscribe to the user when one is in the middle of a blog
- [ ] there is no way to react (like, dislike, remind, share, tip) a blog or its owner when one was in the middle of the blog. Share and tip which are most important are totally absent.
- [ ] back button is white in a dark theme
- [ ] Clicking a link makes the scroll jump

Story points: 3.0
Check push notification navigation

### Summary

Check if push notifications navigate to the right place within the app

- [ ] TYPE_VOTE_UP
- [ ] TYPE_VOTE_DOWN
- [ ] TYPE_REMIND
- [ ] TYPE_QUOTE
- [ ] TYPE_COMMENT
- [ ] TYPE_TAG
- [ ] TYPE_SUBSCRIBE
- [ ] TYPE_TOKEN_REWARDS_SUMMARY

We should take into account the variations in the types. For example, TYPE_TAG can be on a post or a comment.

Story points: 3.0
Update react-native-mmkv-storage

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
TypeError: undefined is not a function

Sentry Issue: [MOBILE-5W6](https://sentry.io/organizations/minds-inc/issues/2693683636/?referrer=gitlab_integration)

```
TypeError: undefined is not a function
  at <global> (src/common/components/explicit/ExplicitOverlay.tsx:33:22)
  at apply (native)
  at apply (native)
  at apply (native)
  at forEach (native)
...
(19 additional frame(s) were not displayed)
```

Story points: 1.0
TypeError: undefined is not a function

Sentry Issue: [MOBILE-62B](https://sentry.io/organizations/minds-inc/issues/2711736569/?referrer=gitlab_integration)

```
TypeError: undefined is not a function
  at <global> (src/newsfeed/activity/OwnerBlock.tsx:40:18)
  at _navToChannel (src/newsfeed/activity/OwnerBlock.tsx:62:35)
  at props.entity.remind_users.map$argument_0 (src/newsfeed/activity/OwnerBlock.tsx:155:48)
  at apply (native)
  at apply (native)
...
(22 additional frame(s) were not displayed)
```

Story points: 1.0