fix(navigation): import HealthDashboardScreen and AchievementsScreen (Closes #209) - #212
Merged
Him-an-shi merged 1 commit intoAug 3, 2026
Conversation
|
@SakethSumanBathini is attempting to deploy a commit to the himanshipathak-240263-3015's projects Team on Vercel. A member of the Team first needs to authorize it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #209
Cause
The first possibility listed in the issue.
AppNavigator.jsregisters the screen at line 91:but the file has no import for it. Fifteen other screens are imported at lines 9-23; this one was missed.
The component itself is fine —
frontend/screens/HealthDashboardScreen.jsis 228 lines with a single named export at line 20, matching every sibling, and the path is correct. Only the import line is absent.That also explains why the failure is a bare
ReferenceErrorrather than a module-resolution error: there is nothing for the bundler to resolve, so the identifier is simply undefined when the navigator is constructed.A second occurrence of the same bug
Auditing every
component={...}reference in the file turned upAchievementsScreenat line 93 in exactly the same state — file present, named export, no import.Fixing only the reported screen would have moved the crash rather than removed it. Both are fixed here.
Change
Two import lines, following the existing convention:
Verification
Verified in a running web build. Both the Health Dashboard and the Achievements screen render, with no
ReferenceErrorin the console.Getting there took a detour worth flagging:
npx expo start --webdoesn't bundle at all on a clean install, for an unrelated reason —frontend/.babelrcshadowsbabel.config.js, sobabel-preset-exponever loads and Expo's own Flow-typed source fails to parse. Raised separately as #. Renaming.babelrcaside unblocks the bundle, and that's how this fix was confirmed end to end.Also checked statically: every
component={...}reference in every navigator file resolves to an import or local declaration, andAppNavigator.jsparses cleanly as ESM + JSX.Why this class of bug ships silently
There's no ESLint config in the repo.
no-undef— on by default ineslint:recommended— catches exactly this, at commit time rather than at runtime in the web build.Worth adding as a follow-up if useful. Both bugs here would have been caught before merge, and it's the kind of thing that recurs each time a screen is added.
Note on the console output in the issue
The expo-notifications web warning and the Google/Apple CORS errors are unaffected by this change — they come from connectivity checks rather than app code, as the issue already suspected.