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

Add a customizable card in the dashboard #853

Merged
merged 26 commits into from
Sep 26, 2023

Conversation

HugoMigner
Copy link
Contributor

@HugoMigner HugoMigner commented Sep 21, 2023

⁉️ Related Issue

Closes #528

📖 Description

Add a customizable card in the dashboard, allowing devs to show alerts and/or relevant information to the users. The card is customized directly in firebase remote config, allowing the content to fit the type of announcement.

🧪 How Has This Been Tested?

The new card will only appear in the dashboard, once the flag has been turned on by the team on firebase remote config.

☑️ Checklist before requesting a review

  • I have performed a self-review of my code.
  • If it is a core feature, I have added thorough tests.
  • If needed, I added analytics.
  • Make sure to add either one of the following labels: version: Major,version: Minor or version: Patch.
  • Make sure golden files changes were reviewed and approved.

🖼️ Screenshots (if useful):

image

Copy link
Contributor

@XavierPaquet-Rapold XavierPaquet-Rapold left a comment

Choose a reason for hiding this comment

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

LGTM 💯

Copy link
Contributor

@camillebrulotte camillebrulotte left a comment

Choose a reason for hiding this comment

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

LGTM ! :D

@MysticFragilist
Copy link
Contributor

Petite question, je me demandais, est-ce que si quelqu'un discard la carte d'annonce et qu'une nouvelle annonce apparait, est-ce qu'elle va revenir?

@HugoMigner
Copy link
Contributor Author

Petite question, je me demandais, est-ce que si quelqu'un discard la carte d'annonce et qu'une nouvelle annonce apparait, est-ce qu'elle va revenir?

Pour l'instant je pense que dans ce cas là le user va devoir cliquer sur le refresh cards button pour que ça réapparaît. 😮

@github-actions
Copy link

Coverage after merging feature/dashboard_broadcast_card into master will be

79.43%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
lib
   locator.dart4.35%100%100%4.35%32, 34–46, 49–53, 56–58
lib/core/constants
   preferences_flags.dart0%100%100%0%60, 65, 67, 69–71, 74, 76–79, 81, 83
   quick_links.dart100%100%100%100%
   widget_helper.dart100%100%100%100%
   emergency_procedures.dart100%100%100%100%
   markers.dart100%100%100%100%
lib/core/managers
   user_repository.dart94.96%100%100%94.96%100–101, 313–315, 99
   cache_manager.dart0%100%100%0%31–32, 35–38, 41, 45, 47–50, 52, 60, 62–64, 66, 73, 75–78
   course_repository.dart96.74%100%100%96.74%244, 252, 254–255, 430–431, 502
   settings_manager.dart88.98%100%100%88.98%219, 225, 228, 232, 234, 254, 256–257, 270, 272–274, 41, 90
   quick_link_repository.dart85.71%100%100%85.71%43–44
lib/core/models
   quick_link.dart100%100%100%100%
   quick_link_data.dart100%100%100%100%
   feedback_issue.dart100%100%100%100%
   discovery.dart100%100%100%100%
   group_discovery.dart100%100%100%100%
   widget_models.dart100%100%100%100%
   faq_actions.dart100%100%100%100%
   faq_questions.dart100%100%100%100%
   emergency_procedure.dart100%100%100%100%
lib/core/services
   navigation_service.dart0%100%100%0%19, 22–24, 31–34, 36–37, 42, 45–47, 49–50
   analytics_service.dart0%100%100%0%14–15, 18, 21–23, 26, 31, 33–35, 39–41, 43
   rive_animation_service.dart0%100%100%0%11–12, 15, 18–19, 27, 31–32, 34
   preferences_service.dart68.52%100%100%68.52%116–117, 119, 33, 35, 37, 40–42, 66–67, 77–79, 82, 84–85
   github_api.dart0%100%100%0%100, 103, 108, 110–114, 116–117, 120, 128–131, 135–136, 138, 39, 42–43, 47, 51–55, 57–58, 60, 62, 64–65, 68, 76, 81–87, 91, 93, 95–97, 99
   networking_service.dart0%100%100%0%11–13, 16–18, 8–9
   internal_info_service.dart0%100%100%0%14–17, 20–25, 28, 30–34, 38–39
   siren_flutter_service.dart0%100%100%0%11–12, 16–17, 21–23, 27–29, 33, 39
   app_widget_service.dart80%100%100%80%67, 69–74
   in_app_review_service.dart0%100%100%0%14, 18, 21, 25
   launch_url_service.dart0%100%100%0%18–20, 23–25, 28–29, 31–32, 38, 56–57, 60
   remote_config_service.dart0%100%100%0%101, 106–108, 38–40, 43–45, 48–50, 53–55, 58–60, 63–65, 68–70, 73–75, 78–80, 83–85, 88–90, 93–94, 96–99
lib/core/utils
   cache_exception.dart33.33%100%100%33.33%13, 15
   animation_exception.dart20%100%100%20%18, 20–22
   utils.dart70.83%100%100%70.83%10–13, 15–16, 48
   login_mask.dart5%100%100%5%11, 14–15, 17–19, 22–29, 32–33, 36–38
lib/core/viewmodels
   grades_viewmodel.dart100%100%100%100%
   dashboard_viewmodel.dart84.39%100%100%84.39%230–231, 245–249, 251, 260–261, 303, 343–345, 350, 453, 469–471, 473, 478–479, 536–537, 542, 544, 546, 548, 550, 553–554, 556, 559, 561, 563–564, 566–567, 570–571, 583–584
   grades_details_viewmodel.dart100%100%100%100%
   more_viewmodel.dart80.49%100%100%80.49%109–111, 113–114, 116, 121–122
   schedule_viewmodel.dart88.95%100%100%88.95%104–108, 123, 249, 254–255, 290, 333–337, 346–347, 395–396
   schedule_settings_viewmodel.dart69.23%100%100%69.23%101–105, 112–116, 132, 134, 136, 139, 142, 144–145, 70, 72–77
   login_viewmodel.dart100%100%100%100%
   quick_links_viewmodel.dart100%100%100%100%
   faq_viewmodel.dart41.67%100%100%41.67%32, 34–35, 37, 40, 43, 45
   startup_viewmodel.dart92.50%100%100%92.50%107, 142–143
   profile_viewmodel.dart92.45%100%100%92.45%135–136, 84, 87
   choose_language_viewmodel.dart100%100%100%100%
   settings_viewmodel.dart100%100%100%100%
   feedback_viewmodel.dart79.41%100%100%79.41%65–66, 68–70, 72–73
   not_found_viewmodel.dart100%100%100%100%
   web_link_card_viewmodel.dart62.50%100%100%62.50%37, 42–43
   emergency_viewmodel.dart7.69%100%100%7.69%17–18, 20–21, 23–25, 29, 31–32, 39–40
   security_viewmodel.dart50%100%100%50%37–38, 42–44, 46, 51–52
lib/ui/utils
   app_theme.dart0%100%100%0%5, 71–73, 76–81, 85–87, 93–98
   discovery_components.dart93.23%100%100%93.23%108, 139, 170, 200, 230, 46, 464, 471–472, 474, 476–481, 77
   loading.dart100%100%100%100%
lib/ui/views
   more_view.dart85.37%100%100%85.37%116–118, 201–202, 204, 208, 240–242, 244, 246–248, 50–51, 70–71
   choose_language_view.dart94.59%100%100%94.59%36–37
   login_view.dart77.14%100%100%77.14%128–130, 160–161, 163, 176, 178, 180–182, 185, 191, 201, 217–218, 220, 265–266, 268–269, 66–68
   about_view.dart71.64%100%100%71.64%129–130, 136–137, 143–144, 150–151, 157–158, 164–165, 170, 173, 175, 23–25, 92
   grades_view.dart96.36%100%100%96.36%135, 52
   dashboard_view.dart80.85%100%100%80.85%165–167, 175–177, 185–187, 195–197, 235–238, 252–254, 260–262, 270, 272–273, 291–294, 298–300, 326–327, 364–365, 377–378, 413–414, 461–463, 508, 96
   grade_details_view.dart95.68%100%100%95.68%103, 145, 310, 70, 72–73, 78
   faq_view.dart90%100%100%90%107–108, 203–207, 278–279, 282, 284
   settings_view.dart100%100%100%100%
   feedback_view.dart70.51%100%100%70.51%107, 110–111,

Copy link
Contributor

@camillebrulotte camillebrulotte left a comment

Choose a reason for hiding this comment

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

LGTM !

Copy link
Contributor

@eneiss eneiss left a comment

Choose a reason for hiding this comment

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

Good job 🚀
Désolée de pas avoir terminé l'issue, c'est super que tu t'en sois occupé, et avec une couple d'améliorations sympathiques en plus 😊

@HugoMigner HugoMigner merged commit e5a8dd9 into master Sep 26, 2023
7 checks passed
@HugoMigner HugoMigner deleted the feature/dashboard_broadcast_card branch September 26, 2023 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Broadcast important information using Firebase Remote Config
6 participants