Skip to content

Sprint5/feature/us 4.5 indoor points of interest for services#311

Merged
NicG27 merged 15 commits intomainfrom
Sprint5/feature/us-4.5-indoor-points-of-interest-for-services
Mar 25, 2026
Merged

Sprint5/feature/us 4.5 indoor points of interest for services#311
NicG27 merged 15 commits intomainfrom
Sprint5/feature/us-4.5-indoor-points-of-interest-for-services

Conversation

@NicG27
Copy link
Copy Markdown
Collaborator

@NicG27 NicG27 commented Mar 25, 2026

Added a toggleable points of interest (POI) overlay to the indoor map, fixed indoor navigation connectivity for VL and MB buildings, and improved the MB floor map rendering.

  • Added a full-width icon toggle bar below the floor selector with one button per POI category (washrooms, water fountains, stairs, elevators, entrances)
  • Tapping a toggle shows/hides that category's POI markers on the current floor
  • POI markers are scaled and positioned using the same coordinate/stage system as room markers
  • Added missing entrance and stair nodes with connecting edges to the navigation graphs for MB, VL, and CC
image image

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 25, 2026

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown
Owner

@khalillabban khalillabban left a comment

Choose a reason for hiding this comment

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

Incredible work, Nick. Just a few changes that you can definitely debate if you think they're unnecessary.

Comment thread app/IndoorMapScreen.tsx Outdated
Comment thread app/IndoorMapScreen.tsx Outdated
Comment thread app/IndoorMapScreen.tsx
Comment thread app/IndoorMapScreen.tsx Outdated
[buildingName],
);

const allPOIs = useMemo(
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Can we confirm whether getIndoorPOIs(buildingName) is expensive enough to justify useMemo here? If this is just a static lookup, a plain const may be simpler and easier to read. Not blocking, just checking whether memoization is actually buying us anything. This is a possibility:

const allPOIs = buildingName ? getIndoorPOIs(buildingName) : [];

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Agreed, getIndoorPOIs is just a static lookup so there's no need for memoization. Replaced it with a plain const.

Comment thread app/IndoorMapScreen.tsx Outdated
Comment thread components/IndoorPOIFilter.tsx
Comment thread components/IndoorPOIFilter.tsx Outdated
Comment thread components/IndoorPOIOverlay.tsx Outdated
Comment thread components/IndoorPOIOverlay.tsx Outdated
Comment thread components/IndoorPOIOverlay.tsx
@NicoLandry
Copy link
Copy Markdown
Collaborator

@khalillabban all review comments have been addressed in the latest commits:

  1. Fixed useEffect deps for floor reset and initial room query
  2. Replaced allPOIs useMemo with a plain const
  3. Removed the unreachable if (!trimmedQuery) branch
  4. Added accessibilityHint to POI filter chips
  5. Typed POI_CATEGORIES and POI_CATEGORY_MAP with MaterialIconName to remove icon casts
  6. Added accessible={false} + importantForAccessibility to the overlay
  7. Normalized activeCategories with activeCategoryIds to avoid extra re-renders
  8. SonarQube quality gate is passing.

@sonarqubecloud
Copy link
Copy Markdown

Copy link
Copy Markdown
Owner

@khalillabban khalillabban left a comment

Choose a reason for hiding this comment

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

Incredible work gentlemen!

@NicG27 NicG27 merged commit a476dfd into main Mar 25, 2026
3 checks passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in Snorting Code Mar 25, 2026
@zachcorber zachcorber deleted the Sprint5/feature/us-4.5-indoor-points-of-interest-for-services branch March 25, 2026 21:41
@tinaw1412 tinaw1412 modified the milestones: Sprint 5, Sprint 6 Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment