Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
2c23dd1
build(android): add gradle flags from Flutter migrator
Zeroupper Jul 10, 2026
6dfbc63
fix(android): add ic_launcher drawable for local notifications
Zeroupper Jul 10, 2026
17caf1a
fix(view_models): log and ignore measurement stream errors
Zeroupper Jul 10, 2026
f34d5b1
fix(profile): read study id from study instead of deployment
Zeroupper Jul 10, 2026
9817f0c
feat(ui): add design 2.0 app shell, home page, and tab routing
Zeroupper Jul 10, 2026
0783ad8
refactor(ui): unify tab page titles and remove scoreboard card
Zeroupper Jul 10, 2026
76dbf52
fix(ui): push full-screen pages on the root navigator
Zeroupper Jul 10, 2026
20e769f
feat(ui): redesign home cards and add status and surveys sections
Zeroupper Jul 16, 2026
28f2ee2
build: bump CAMS packages and add share_plus and shimmer
Zeroupper Jul 27, 2026
c7b2ceb
feat(ui): redesign profile and study details pages
Zeroupper Jul 27, 2026
ffb175f
feat(home): show backend messages in the feeds section
Zeroupper Jul 27, 2026
11cdb6e
fix(invitations): sort invitations and log them for debugging
Zeroupper Jul 27, 2026
d3a475a
Merge remote-tracking branch 'origin/test' into feat/design-2.0
Zeroupper Jul 27, 2026
31e98a4
feat(messages): notify the user about new announcements
Zeroupper Jul 28, 2026
39a3ca9
fix(invitations): identify invitations by their deployment id
Zeroupper Jul 28, 2026
c1a6390
refactor(consent): gate informed consent in the app shell
Zeroupper Jul 28, 2026
2f299db
refactor(ui): navigate to the profile page with go_router
Zeroupper Jul 28, 2026
8345842
refactor: group core and helper files and trim app logging
Zeroupper Jul 28, 2026
4430a55
fix: remove some comments
Zeroupper Jul 28, 2026
7150d19
fix: dart format
Zeroupper Jul 28, 2026
6db9921
refactor(statistics): rename the data visualization page and view model
Zeroupper Jul 28, 2026
77ef2d9
feat(statistics): rebuild the statistics charts and their selection
Zeroupper Jul 28, 2026
930619a
feat(statistics): back the demo charts with real CAMS measurements
Zeroupper Jul 28, 2026
610149d
fix: make consistent chart styling
Zeroupper Jul 28, 2026
51b5fad
fix: dart format
Zeroupper Jul 28, 2026
65a015a
refactor(ui): modernize the announcement details page
Zeroupper Jul 29, 2026
65acd30
refactor(tasks): modernize the task list design
Zeroupper Jul 29, 2026
bfc75d2
refactor(connections): modernize the connections page
Zeroupper Jul 29, 2026
2c4bb1f
fix(statistics): let the task completion chart clear its selection
Zeroupper Jul 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 14 additions & 7 deletions assets/lang/da.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
"settings": "Indstillinger",
"get": "Få",
"app_home.nav_bar_item.tasks": "Opgaver",
"app_home.nav_bar_item.about": "Om",
"app_home.nav_bar_item.data": "Data",
"app_home.nav_bar_item.devices": "Enheder",
"app_home.nav_bar_item.statistics": "Statistik",
"app_home.nav_bar_item.connections": "Forbindelser",
"app_home.nav_bar_item.home": "Hjem",
"invitation.invitations": "Invitationer",
"invitation.subtitle": "Her kan du finde alle de invitationer til studier, du er blevet inviteret til.",
"invitation.invited_to_study": "Invitation til studie",
Expand Down Expand Up @@ -48,11 +48,13 @@
"cards.scoreboard.tasks": "Antal opgaver udført",
"cards.scoreboard.tasks-short": "Opgaver",
"cards.measures.title": "MÅLINGER",
"cards.survey.title": "SPØRGESKEMAER",
"cards.survey.title": "Besvarede spørgeskemaer",
"cards.task_completion.title": "Opgaver gennemført de sidste 14 dage",
"cards.task_completion.title_on": "Opgaver gennemført den",
"cards.audio.title": "LYDOPTAGELSER",
"cards.video.title": "VIDEOS",
"cards.image.title": "FOTO",
"cards.study_progress.title": "STATUS PÅ STUDIET",
"cards.study_progress.title": "Opgaver",
"cards.study_progress.pending": "Igangværende",
"cards.study_progress.completed": "Afsluttet",
"cards.study_progress.expired": "Udløbet",
Expand All @@ -70,10 +72,14 @@
"cards.distance.average": "Gennemsnit",
"cards.steps.title": "Antal Skridt",
"cards.steps.steps": "skridt",
"cards.steps.per_week": "skridt/uge",
"cards.heartrate.title": "Hjerterytme",
"cards.heartrate.bpm": "SPM",
"cards.heartrate.heartrate": "Hjerterytme",
"cards.heartrate.range": "Målinger",
"cards.heartrate.average": "Gennemsnit",
"cards.heartrate.day": "Dag",
"cards.heartrate.week": "Uge",
"pages.audio_task.play": "Tryk på knappen nedenfor, når du er klar.",
"pages.audio_task.recording": "Optager...",
"pages.audio_task.recording_completed": "Optagelsen er færdig. Tryk på den grønne knap for at gemme denne optagelse.\n\nHvis du vil gentage optagelsen, tryk på knappen til venstre.",
Expand All @@ -97,9 +103,10 @@
"pages.profile.device_role": "Engedsrolle",
"pages.profile.contact": "Kontakt forsker",
"pages.profile.privacy": "Fortrolighedspolitik",
"pages.profile.download_consent": "Download informeret samtykke",
"pages.profile.study_website": "Hjemmeside for studiet",
"pages.profile.leave_study": "Forlad studie",
"pages.profile.log_out": "Forlad studie & Log ud",
"pages.profile.log_out": "Log ud",
"pages.profile.log_out.confirmation": "Du er ved at forlade dette studie og logge af. Operativsystemet vil åbne en browser for at logge dig ud. Er du sikker?",
"pages.profile.leave_study.confirmation": "Du er ved at forlade studiet. Du vil ikke længere deltage i dette studie. Er du sikker?",
"announcements": "Annonceringer",
Expand Down Expand Up @@ -136,7 +143,7 @@
"pages.ic.need_accept": "Du skal acceptere denne informerede samtykke for at kunne deltage i dette studie.",
"pages.ic.go_to_ic": "Tilbage til samtykke",
"pages.devices.title": "Enheder",
"pages.devices.message": "Her kan du se hvilke enheder og online tjenester som anvendes i dette studie.",
"pages.devices.message": "Her kan du forbinde de online tjenester og enheder, som dette studie bruger til at indsamle data.",
"pages.devices.phone.title": "Telefon",
"pages.devices.devices.title": "Enheder",
"pages.devices.services.title": "Ydelser",
Expand Down
21 changes: 14 additions & 7 deletions assets/lang/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
"get": "Get",
"scan": "Scan",
"app_home.nav_bar_item.tasks": "Tasks",
"app_home.nav_bar_item.about": "About",
"app_home.nav_bar_item.data": "Data",
"app_home.nav_bar_item.devices": "Devices",
"app_home.nav_bar_item.statistics": "Statistics",
"app_home.nav_bar_item.connections": "Connections",
"app_home.nav_bar_item.home": "Home",
"invitation.invitations": "Invitations",
"invitation.subtitle": "Here you can find all the invitations to studies that you have been invited to.",
"invitation.invited_to_study": "Study Invitation",
Expand Down Expand Up @@ -52,11 +52,13 @@
"cards.scoreboard.tasks": "Tasks completed",
"cards.scoreboard.tasks-short": "Tasks",
"cards.measures.title": "MEASURES",
"cards.survey.title": "SURVEYS",
"cards.survey.title": "Completed Surveys",
"cards.task_completion.title": "Tasks completed in the last 14 days",
"cards.task_completion.title_on": "Tasks completed on",
"cards.audio.title": "AUDIOS",
"cards.video.title": "VIDEOS",
"cards.image.title": "PHOTOS",
"cards.study_progress.title": "STUDY PROGRESS",
"cards.study_progress.title": "Tasks",
"cards.study_progress.pending": "Pending",
"cards.study_progress.completed": "Completed",
"cards.study_progress.expired": "Expired",
Expand All @@ -74,10 +76,14 @@
"cards.distance.average": "Average",
"cards.steps.title": "Number of Steps",
"cards.steps.steps": "steps",
"cards.steps.per_week": "steps/week",
"cards.heartrate.title": "Heart Rate",
"cards.heartrate.bpm": "BPM",
"cards.heartrate.heartrate": "Heart rate",
"cards.heartrate.range": "Range",
"cards.heartrate.average": "Average",
"cards.heartrate.day": "Day",
"cards.heartrate.week": "Week",
"pages.audio_task.play": "Please press the button below when ready.",
"pages.audio_task.recording": "Recording...",
"pages.audio_task.recording_completed": "Recording completed. Press the green button to save this recording.\n\nIf you want to redo the recording, then press the button on the left.",
Expand Down Expand Up @@ -111,8 +117,9 @@
"pages.profile.contact": "Contact researcher",
"pages.profile.privacy": "Privacy policy",
"pages.profile.study_website": "Study website",
"pages.profile.download_consent": "Download Informed Consent",
"pages.profile.leave_study": "Leave study",
"pages.profile.log_out": "Leave study & Log out",
"pages.profile.log_out": "Sign Out",
"pages.profile.log_out.confirmation": "You are about to leave this study and log out. The operating system will open a browser to log you out. Are you sure?",
"pages.profile.leave_study.confirmation": "You are about to leave the study. You will no longer participate in this study. Are you sure?",
"announcements": "Announcements",
Expand Down Expand Up @@ -144,7 +151,7 @@
"pages.ic.need_accept": "You need to accept the informed consent to participate in this study.",
"pages.ic.go_to_ic": "Back to informed consent",
"pages.devices.title": "Devices",
"pages.devices.message": "Here you can see the devices and online services used in your study.",
"pages.devices.message": "Here you can connect the online services and devices this study uses to collect data.",
"pages.devices.phone.title": "Phone",
"pages.devices.devices.title": "Devices",
"pages.devices.services.title": "Online Services",
Expand Down
24 changes: 17 additions & 7 deletions assets/lang/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
"pages.devices.type.health.instructions.data.heart_rate": "Frecuencia cardíaca",
"pages.devices.type.health.instructions.data.exercise": "Sesiones de ejercicio",
"app_home.nav_bar_item.tasks": "Tareas",
"app_home.nav_bar_item.about": "Acerca de",
"app_home.nav_bar_item.data": "Datos",
"app_home.nav_bar_item.devices": "Dispositivos",
"app_home.nav_bar_item.statistics": "Estadísticas",
"app_home.nav_bar_item.connections": "Conexiones",
"app_home.nav_bar_item.home": "Inicio",
"pages.task_list.title": "MIS TAREAS",
"pages.task_list.pending": "Pendientes",
"pages.task_list.completed": "Completadas",
Expand All @@ -29,11 +29,13 @@
"cards.scoreboard.days": "Dias en el estudio",
"cards.scoreboard.tasks": "Tareas completadas",
"cards.measures.title": "MEDICIONES",
"cards.survey.title": "ENCUESTAS",
"cards.survey.title": "Encuestas completadas",
"cards.task_completion.title": "Tareas completadas en los últimos 14 días",
"cards.task_completion.title_on": "Tareas completadas el",
"cards.audio.title": "AUDIOS",
"cards.video.title": "VIDEOS",
"cards.image.title": "FOTOS",
"cards.study_progress.title": "PROGRESO DE LAS TAREAS",
"cards.study_progress.title": "Tareas",
"cards.study_progress.pending": "Pendientes",
"cards.study_progress.completed": "Completadas",
"cards.study_progress.expired": "Expiradas",
Expand All @@ -47,6 +49,13 @@
"cards.mobility.places": "lugares",
"cards.steps.title": "Numero de pasos",
"cards.steps.steps": "pasos",
"cards.steps.per_week": "pasos/semana",
"cards.heartrate.title": "Frecuencia cardíaca",
"cards.heartrate.bpm": "LPM",
"cards.heartrate.range": "Rango",
"cards.heartrate.average": "Promedio",
"cards.heartrate.day": "Día",
"cards.heartrate.week": "Semana",
"pages.audio_task.play": "Por favor, presiona el botón de abajo cuando estés listo. ",
"pages.audio_task.recording": "Grabando...",
"pages.audio_task.recording_completed": "Grabación completada. Presiona el botón verde para guardar la grabación.\n\nSi deseas repetir la grabación, presiona el botón izquierdo.",
Expand All @@ -65,9 +74,10 @@
"pages.profile.account_id": "Id Usuario",
"pages.profile.contact": "Contactar investigador",
"pages.profile.privacy": "Política de privacidad",
"pages.profile.download_consent": "Descargar consentimiento informado",
"pages.profile.study_website": "Página web del estudio",
"pages.profile.leave_study": "Abandonar el estudio",
"pages.profile.log_out": "Cerrar estudio & sesión",
"pages.profile.log_out": "Cerrar sesión",
"pages.profile.log_out.confirmation": "Estás a punto de cerrar sesión et abandonar el estudio. ¿Estás seguro?",
"pages.profile.leave_study.confirmation": "Estás a punto de abandonar el estudio. Dejarás de participar en el es estudio. ¿Estás seguro?",
"announcement": "Anuncio",
Expand All @@ -85,7 +95,7 @@
"dialog.location.continue": "Continuar",
"pages.ic.need_accept": "Necesitas acceptar el consentimiento para participar en el estudio.",
"pages.ic.go_to_ic": "Volver al consentimiento",
"pages.devices.message": "Aquí puedess encontrar todos los dispositivos y servicios que se usan en tu estudio.",
"pages.devices.message": "Aquí puedes conectar los servicios en línea y dispositivos que este estudio usa para recopilar datos.",
"pages.devices.phone.title": "Teléfono",
"pages.devices.devices.title": "Dispositivos",
"pages.devices.services.title": "Servicios",
Expand Down
4 changes: 2 additions & 2 deletions integration_test/join_study_flow_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ void main() {
// runtime and consent has not been given yet.
expect(bloc.study.hasStudy, isTrue);
expect(bloc.study.isDeployed, isFalse);
expect(await bloc.consent.hasBeenAccepted(bloc.study.study), isFalse);
expect(LocalSettings().participant?.hasInformedConsentBeenAccepted ?? false, isFalse);

await tester.pumpWidget(const CarpStudyApp());

Expand All @@ -176,7 +176,7 @@ void main() {
);
await pumpUntil(tester, () => bloc.isConfigured, reason: 'study configuration to complete');

expect(await bloc.consent.hasBeenAccepted(bloc.study.study), isTrue);
expect(LocalSettings().participant?.hasInformedConsentBeenAccepted ?? false, isTrue);
expect(bloc.study.isDeployed, isTrue);
expect(bloc.study.deployment?.studyDeploymentId, status.studyDeploymentId);

Expand Down
67 changes: 0 additions & 67 deletions lib/blocs/app_log.dart

This file was deleted.

Loading
Loading