Skip to content

Web Version of App#168

Draft
benjaminsunliu wants to merge 66 commits into
masterfrom
fix-web-map
Draft

Web Version of App#168
benjaminsunliu wants to merge 66 commits into
masterfrom
fix-web-map

Conversation

@benjaminsunliu
Copy link
Copy Markdown
Owner

@benjaminsunliu benjaminsunliu commented Mar 15, 2026

Summary

  • A web version of the app is kept on a separate branch to avoid introducing breaking changes.

  • Many components / modules we use are mobile only and web requires to duplicate many of them or to modify a lot of things, so to be safe, we will not be merging this to master, it will be kept to generate a web version & link for testing purposes.

  • Latest web version: https://conumaps.expo.app/

  • All core features are intended to be functional on web, although some bugs may still be present. When differences exist between platforms, the mobile version remains the primary reference for functionality.

Testing

  • Manual testing performed (describe briefly)
  • Unit tests added or updated (if applicable)
  • All tests pass locally / in CI

Checklist (Author & Reviewer)

  • Code follows project conventions
  • The change was run locally and works as expected
  • Acceptance criteria met
  • No breaking changes

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a web-specific map implementation using Leaflet/React-Leaflet for the Expo web build, and adjusts building search UX to better support web interactions.

Changes:

  • Add Leaflet + React-Leaflet dependencies (plus @types/leaflet).
  • Introduce web-only MapViewer implementation with a client-only dynamic import wrapper.
  • Add a web-only CampusToggle and update BuildingSelection to defer blur handling on web.

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
package.json Adds Leaflet/React-Leaflet runtime deps and Leaflet typings.
package-lock.json Locks new Leaflet/React-Leaflet dependency tree (including licenses).
components/map/map-viewer.web.tsx Web entrypoint that lazy-loads the Leaflet-based map client module.
components/map/map-viewer.web.client.tsx Full Leaflet-based web map viewer (buildings, selection, routing overlays, location).
components/map/campus-toggle.web.tsx Web-specific campus toggle that animates the web map region.
components/map/building-selection.tsx Web blur-delay workaround so clicking search results works reliably.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread package.json
Comment thread components/map/map-viewer.web.tsx Outdated
Comment thread components/map/map-viewer.web.tsx Outdated
Comment thread components/map/map-viewer.web.client.tsx Outdated
Comment thread components/map/building-selection.tsx Outdated
Comment thread components/map/campus-toggle.web.tsx Outdated
@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 15, 2026

Codecov Report

❌ Patch coverage is 82.92683% with 14 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
components/map/building-selection.tsx 70.37% 8 Missing ⚠️
components/map/map-viewer.web.tsx 83.33% 3 Missing ⚠️
components/ui/popup.tsx 50.00% 3 Missing ⚠️

📢 Thoughts on this report? Let us know!

@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
19.6% Coverage on New Code (required ≥ 80%)
39.7% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@benjaminsunliu benjaminsunliu changed the title Fix Web Version of App Web Version of App Apr 5, 2026
@benjaminsunliu benjaminsunliu self-assigned this Apr 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants