giseldo/neodataset huggingface dataset:
Preserve UTM codes in link previews

<!---
Please read this!

The Definition of Ready (DoR) can be found at https://developers.minds.com/docs/handbook/how-we-work/#definition-of-ready-dor

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "Type::Feature" label and verify the feature you're about to submit isn't a duplicate.
--->

## Goal

Enable marketers to measure the impact of posting on Minds / Boosting on Minds.

## What needs to be done

When an activity post contains a link with UTM parameters, and a link preview is added to the post, then the link preview should maintain the UTM parameters.

Currently, UTM parameters are preserved if the user clicks the URL address in the post, but not if the user clicks the link preview.

Example post: https://www.minds.com/newsfeed/1467274467364311058

![Untitled](/uploads/bb5cb74fd8e6e7e85a650b94fbe760ee/Untitled.png)
- make an API call with the UTM params from the link. 

## QA

<!---
Consideration is given to how the issue will be demoed and tested prior to being deployed
--->


## UX/Design

<!---
Sufficient wireframes have been presented and understood by the development team. Full mockups are not required and re-usable components are encouraged.
--->

## Mobile

<!---
Does a mobile card need to be created? Any notes for mobile?
--->

- [x] Is Mobile Required?

## Personas

<!---
Who does this user impact and why (optional)
--->


## Experiments

<!---
Experiments are not required, but it should be made clear if one is expected. If experiments are required, the hypothesis should be outlined.
--->


## Acceptance Criteria

<!--
Everyone should be able to understand what is expected to be delivered
--->

- [ ] Ensure we use the raw link instead of the canonical url

## Definition of Ready Checklist

- [ ] Definition Of Done (DoD)
- [ ] Acceptance criteria
- [ ] Weighted
- [ ] QA
- [ ] UX/Design
- [ ] Personas
- [ ] Experiments

Story points: 1.0
Email & Push notifications link to Boost console with selected post

<!---
Please read this!

The Definition of Ready (DoR) can be found at https://developers.minds.com/docs/handbook/how-we-work/#definition-of-ready-dor

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "Type::Feature" label and verify the feature you're about to submit isn't a duplicate.
--->

## Goal

Give users the best context when tapping CTAs on emails and push notifications.

## What needs to be done

When tapping a CTA on a Boost-related email and/or push notification, we should navigate the user to the Boost console with the relevant post displayed exclusively (e.g. how Supermind emails work).
- deeplinking to navigate to the single boost based on guid.

## QA

<!---
Consideration is given to how the issue will be demoed and tested prior to being deployed
--->


## UX/Design

<!---
Sufficient wireframes have been presented and understood by the development team. Full mockups are not required and re-usable components are encouraged.
--->
N/A

## Mobile

<!---
Does a mobile card need to be created? Any notes for mobile?
--->

- [x] Is Mobile Required?

## Personas

<!---
Who does this user impact and why (optional)
--->


## Experiments

<!---
Experiments are not required, but it should be made clear if one is expected. If experiments are required, the hypothesis should be outlined.
--->


## Acceptance Criteria

<!--
Everyone should be able to understand what is expected to be delivered
--->

- [ ] Introduce new single view page
- [ ] Notifications and emails to link to the single page
- [ ] Ensure the ACL is restricted to only the boost owner
- [ ] Designs to mirror supermind single page

## Definition of Ready Checklist

- [ ] Definition Of Done (DoD)
- [ ] Acceptance criteria
- [ ] Weighted
- [ ] QA
- [ ] UX/Design
- [ ] Personas
- [ ] Experiments

Story points: 3.0
Empty Boost console feeds show "Create a post" instead of "No boost" message

<!---
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

Empty Boost feeds (both Feed & Sidebar) display a `Create a post` button. The UX of this is a bit awkward -- for now we should just display `No posts` message like we do on web.

### Steps to reproduce

- Log in with an account with no Boosts
- Navigate to the Boost console

### Platform information 

- iOS app
- Android app

### What is the current *bug* behavior?

- A `Create a post` message + button appears

### What is the expected *correct* behavior?

- A `No boost` message appears

### Relevant logs and/or screenshots

Mobile app:

![IMG_B9F314549CDE-1](/uploads/0dea7d046287e42bccb06afcc2ee9dc3/IMG_B9F314549CDE-1.jpeg)

Mobile web:

![image](/uploads/868cc8c69bcc4c8f4a96d48394ad77a5/image.png)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Link to Boost content policy with rejection message in Boost console

<!---
Please read this!

The Definition of Ready (DoR) can be found at https://developers.minds.com/docs/handbook/how-we-work/#definition-of-ready-dor

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "Type::Feature" label and verify the feature you're about to submit isn't a duplicate.
--->

## Goal

Provide sufficient disclosure / communication about a Boost rejection so that the user is not confused.

## What needs to be done

Add a `Learn more` link to the Boost rejection reason in the Boost console.

Link to here: https://support.minds.com/hc/en-us/articles/11723536774292-Boost-Content-Policy

## QA

<!---
Consideration is given to how the issue will be demoed and tested prior to being deployed
--->


## UX/Design

![image](/uploads/61e6517dedde8e8d4967f544ecdd3d0c/image.png)

## Mobile

<!---
Does a mobile card need to be created? Any notes for mobile?
--->

- [x] Is Mobile Required?

## Personas

<!---
Who does this user impact and why (optional)
--->


## Experiments

<!---
Experiments are not required, but it should be made clear if one is expected. If experiments are required, the hypothesis should be outlined.
--->


## Acceptance Criteria

<!--
Everyone should be able to understand what is expected to be delivered
--->

- [ ] Add the link in above
- [ ] Learn more to go to zendesk (ryan to add)
- [ ] If the rejection reason was invalid audience, Display "Boost again" which would open the boost modal.

## Definition of Ready Checklist

- [ ] Definition Of Done (DoD)
- [ ] Acceptance criteria
- [ ] Weighted
- [ ] QA
- [ ] UX/Design
- [ ] Personas
- [ ] Experiments

Story points: 3.0
Put Twitter API integrations behind feat flag and turn off

<!---
Please read this!

The Definition of Ready (DoR) can be found at https://developers.minds.com/docs/handbook/how-we-work/#definition-of-ready-dor

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "Type::Feature" label and verify the feature you're about to submit isn't a duplicate.
--->

## Goal

Deprecate Twitter API integrations in such a way that if their recent decisions on their API are reversed, we can resume normal operation.

## What needs to be done

Gate Twitter API integrations behind a feature flag - turn the flag off on deploy for prod.

## QA

Test integrations are gated and nothing breaks.

## UX/Design

**TO BE DISCUSSED RAPIDLY**

## Mobile

<!---
Does a mobile card need to be created? Any notes for mobile?
--->

- [x] Is Mobile Required?

@valentin129 please track this card closely. Feel free to chat with me about it. Confirm with everybody before starting.

## Personas

Twitter Sync users

## Experiments

Create flag names `engine-2503-twitter-apis` - when this is OFF access to the Twitter API is OFF.

## Acceptance Criteria

- [ ] Deprecate endpoints that integrate with Twitter API by using Feature flag middleware if they're V3 endpoints else add checks in the endpoints themselves or managers - decide on best strategy based on what presents - do a scan but I think this is the OAuth2 flow for Supermind and possible XPosting.
- [ ] Feat flag off other pathways to the API such as the runner, and possibly delegates on boost creation
- [ ] Update UI to put references including OAuth2 setup, Xposting setup and settings, Supermind checkbox etc behind the feat flag.
- [ ] When flag is OFF access to the API is OFF.

## Definition of Ready Checklist

- [x] Definition Of Done (DoD)
- [x] Acceptance criteria
- [ ] Weighted
- [x] QA
- [x] UX/Design
- [x] Personas
- [x] Experiments

Story points: 2.0
Audience shows as "Mature" on "Review your Boost" screen

<!---
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

The label `Mature` is displayed under the selected Audience on the `Review your Boost` screen (last screen during purchase process).

### Steps to reproduce

- Start a new Boost
- Select the `Controversial` audience
- Get to the `Review your Boost` screen

### Platform information 

- iOS
- Android

### What is the current *bug* behavior?

- The selected audience is labeled `Mature`

### What is the expected *correct* behavior?

- The selected audience is labeled `Controversial`

### Relevant logs and/or screenshots

![IMG_73C19A98E32C-1](/uploads/13d7dbea469ad06940848a0c294f1f53/IMG_73C19A98E32C-1.jpeg)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Start earning tokens button is shown after 2 minutes and the onboarding screen is empty



### Summary

The "Star earning tokens" button is shown after 2 minutes (it should be immediate)
The onboarding screen is empty

### Steps to reproduce

Log in with a new user

### Platform information 

both

### What is the current *bug* behavior?

-

### What is the expected *correct* behavior?

- Earning button should be shown immediately
- The onboarding screen should shown some options

### Relevant logs and/or screenshots

![Simulator_Screen_Shot_-_iPhone_14_-_2023-02-03_at_10.43.27](/uploads/dfeb3f8bc93d8c3e4abe77df53596b26/Simulator_Screen_Shot_-_iPhone_14_-_2023-02-03_at_10.43.27.png)

### Possible fixes

TBD

Story points: 3.0
Fix changing CP deployment in developer options when production and staging are identical.

<!---
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

When both production and staging codepush environments are identical, the deployment target cannot be change in the developer options.
(Summarize the bug encountered concisely)

### Steps to reproduce

Ensure that there's no pending code-pushes between staging and production. Try to change the deployment in developer options from production to staging or vice-versa.
(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

When trying to change the target deployment env from production to staging or vice-versa it won't change.
(What actually happens)

### What is the expected *correct* behavior?
When trying to change the target deployment env from production to staging or vice-versa it should change.
(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: 3.0
Change boost console location param

<!---
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
Error displayed when you tap on rejected boost in-app notification

<!---
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

An error message is displayed when you tap on a boost notification of rejected status within the app. Does not happen on web.

### Steps to reproduce

1. Open mobile app
2. Navigate to profile and boost a post with new boost console.
3. make sure admin rejects the boost
4. You get a notification
5. go within app and tap on notifications icon
6. tap on boost rejected notification
7. error appears

### Platform information 

Staging

### What is the current *bug* behavior?

Error appears

### What is the expected *correct* behavior?

Notification should take you to boost post

### Relevant logs and/or screenshots

![FullSizeRender](/uploads/f8c85ed483fce1301a21486fe3d0fc5e/FullSizeRender.MOV)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Update react-native to 0.70.7 which incudes a mitigation for the keyboard problem



## Goal

React native released a new patch release that mitigates the keyboard issue on Samsung devices

It doesn't completely fix the problem but at least is less frequent


## What needs to be done

Update react native to 0.70.7


## Definition of Ready Checklist

- [ ] Definition Of Done (DoD)
- [ ] Acceptance criteria
- [ ] Weighted
- [ ] QA
- [ ] UX/Design
- [ ] Personas
- [ ] Experiments

Story points: 1.0
Controlled mandatory codepush UX

<!---
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

The mandatory codepush now lets the user use the app and once the codepush is downloaded it will restart the app. This causes bad UX since the user could be writing a comment or posting something in the meanwhile. Ideally, we should either keep the user waiting on a splash screen, prevent the unexpected restart, or show a mandatory update prompt. Or a combination of these solutions

### Steps to reproduce

- do a mandatory codepush
- open the app
- notice that at some point the app will get restarted

### Platform information 

all

### What is the current *bug* behavior?

app unexpectedly restarts

### What is the expected *correct* behavior?

restart should be controlled. The mandatory update UX should be taken care of

### Relevant logs and/or screenshots

N/A

### Possible fixes

- if the app is on cold start show a screen showing download or just wait + progress bar
- if the app is moved to the background or comes to foreground.

Story points: 5.0
Boosted content should not appear on Channel page when FF is off

<!---
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

Even when mob-4638-boost-v3 flag is off, the boosted content is appearing on channel pages. This should be hidden before this feature flag. Please fix. Reported by @ottman and users. 

### Steps to reproduce

1. Open minds app.
2. Navigate to a users channel page
3. scroll down and view boosted content which is visible

### Platform information 

Prod

### What is the current *bug* behavior?

Boosted content appears on channel page irrespective of feature flag value

### What is the expected *correct* behavior?

Boosted content should only appear on channel page when feature flag is on 

### Relevant logs and/or screenshots

![C44FCC66-0904-4F5C-A4EA-90468F36A40F](/uploads/bff0a85231752b511fb3d80272e15bed/C44FCC66-0904-4F5C-A4EA-90468F36A40F.png)


### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Rename Newsfeed and Sidebar to Content and Channel. (mobile)

<!---
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

Rename newsfeed and sidebar to Content and Channel.

Newsfeed > Content

Sidebar > Channel

### 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
New Boost console tokens are rounded off incorrectly

<!---
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

New boost console is not showing the correct amount of tokens and is rounding off too much which is misleading.
Works as expected on web. 

### Steps to reproduce

1. Open app
2. create a boost
3. on boost page, check the tokens.
4. if you have 0.57 tokens they show up as 1 token which is misleading as user would want to use that token to boost.

### Platform information 

Staging

### What is the current *bug* behavior?

Rounding up 0.57 to 1 token is misleading as 1 token can do a boost and it will not work when user tries to boost. 

### What is the expected *correct* behavior?

Tokens should appear exactly as in wallet- on chain and off chain both

### Relevant logs and/or screenshots

![208B29F2-E6DD-41CC-B81E-9992B7B9B76D](/uploads/de2bd4a19a53413677eb1358902b0373/208B29F2-E6DD-41CC-B81E-9992B7B9B76D.jpeg)

![246A2241-7D43-4AF4-89FA-7FDF71165721](/uploads/ee724b2e52e00856e7cb2508606001c6/246A2241-7D43-4AF4-89FA-7FDF71165721.jpeg)

(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

Check all possible instances of showing tokens rounded to integer.

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Results are appearing as 0 in new Boost Console

<!---
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

Results should have a value when a boost is ongoing. It should increase. The web results value works as expected. 


### Steps to reproduce

1. Open app
2. boost a post
3. wait for it to be accepted and some time to have elapsed
4. results value is not updated

### Platform information 

Prod

### What is the current *bug* behavior?

Results value is set to 0

### What is the expected *correct* behavior?

Results value should be updated

### Relevant logs and/or screenshots

![66E07E0A-EC0D-49DC-B169-8AA5C86B2C6D](/uploads/05955d5e0c6e234126b3363678623712/66E07E0A-EC0D-49DC-B169-8AA5C86B2C6D.jpeg)
(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: 3.0
Supermind: show supermind target

<!---
Please read this!

The Definition of Ready (DoR) can be found at https://developers.minds.com/docs/handbook/how-we-work/#definition-of-ready-dor

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "Type::Feature" label and verify the feature you're about to submit isn't a duplicate.
--->

## Goal

<!---
Clearly outline the goal of the issue and why we are doing it
--->

We need to show the target of the supermind

## What needs to be done

<!---
Clearly detail what needs to be done to achieve the goal set out above
--->

now:
![Pasted_Graphic](/uploads/ff1ef28cd9cd3e85a4e5085eea7a0f9d/Pasted_Graphic.png)

should be:
![Screenshot_2023-01-27_at_12.06.31](/uploads/89f9abaa334cba3713524a298b6cc41d/Screenshot_2023-01-27_at_12.06.31.png)


## QA

<!---
Consideration is given to how the issue will be demoed and tested prior to being deployed
--->

TBD

## UX/Design

<!---
Sufficient wireframes have been presented and understood by the development team. Full mockups are not required and re-usable components are encouraged.
--->

N/A

## Personas

<!---
Who does this user impact and why (optional)
--->

N/A

## Experiments

<!---
Experiments are not required, but it should be made clear if one is expected. If experiments are required, the hypothesis should be outlined.
--->

N/A

## Acceptance Criteria

<!--
Everyone should be able to understand what is expected to be delivered
--->

- [ ] ...

## Definition of Ready Checklist

- [ ] Definition Of Done (DoD)
- [ ] Acceptance criteria
- [ ] Weighted
- [ ] QA
- [ ] UX/Design
- [ ] Personas
- [ ] Experiments

Story points: 3.0