### Background
In V2 of Year in Review [[ https://www.figma.com/design/JRTyGA3rZ0qlQ9eqh0FMhE/iOS---Year-in-Review?node-id=2173-15561&t=UnInEzwMvg7DHDl8-1 | there was a slide ]] for logged-in users that showed the number of articles they read this year. We want to update the copy and logic of the slide.
### Task
#### [[ https://www.figma.com/design/NhCAbzD1sGjBMoK8tN47ot/iOS---%3E-Year-in-Review-v3?node-id=8-1537&t=4o5BWLCMLZhGLk4T-1 | EN Wiki ]]
[] Maintain the illustration but update the color schemes as advised by design
[] Title should include the following variables
- Hours spent
- # of articles read
- Year
[] The first sentence should use the denominator provided by @SNowick_WMF to place what percent the user is in for readers globally.
[] The first sentence should also include:
- Average amount of articles users
[] The second sentence should include the collective reading hours for English Wikipedia
#### [[ https://www.figma.com/design/NhCAbzD1sGjBMoK8tN47ot/iOS---%3E-Year-in-Review-v3?node-id=23-2585&t=4o5BWLCMLZhGLk4T-1 | Non EN Wiki ]]
[] Maintain the illustration but update the color schemes as advised by design
[] Title should include the following variables
- Hours spent
- # of articles read
- Year
[] The first sentence should use the denominator provided by @SNowick_WMF to place what percent the user is in for readers globally.
[] The first sentence should also include:
- Average amount of articles users
[] The second sentence should have copy from the non-EN collective slide about # of languages available
### Engineering Notes
1. Update `YearInReviewReadCountSlideDataController`'s `populateSlideData` method:
- Modify "read count" calculation:
- Do not fetch from legacy page views anymore. Instead get data from WMFPageViewsDataController's `fetchPageViewCounts` method.
- Add "Number of hours" calculation:
- Fetch all page views from the year from WMFPageViewsDataController. Each `CDPageView` has a `numberOfSeconds`. Aggregate those values so that we have a final count of hours across all page views. Ensure number of hours is persisted with slide data.
- Add "top X percent" calculation:
- Calculate a personalized percentage from the read count and number of hours calculations above, against denominators provided by @SNowick_WMF. (see T402445). Ensure percentage is persisted with slide data.
- Question: Not sure how we can get down to a single percentage here with two data points - number of articles and number of hours.
2. Create new V3 slide
- Lean on `WMFYearInReviewSlideStandardViewModel` + `WMFYearInReviewSlideStandardView` for this. Ensure new slide is //only// inserted when V3 developer setting is enabled, otherwise use old copy for V2. Slides are inserted in WMFYearInReviewViewModel. Ensure the correct collective sentence is inserted at the end of the body text for EN vs non-EN.
3. Ensure sharing individual slide still works well