Conversation
eesha264
requested review from
ChitkulLakshya,
prem22k and
thanmayeereddykotha
as code owners
August 5, 2026 04:26
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Pull request overview
This PR aims to improve the mobile experience by restructuring navigation (“My Workspace” vs “My Projects”) and fixing Contribution Graph month-label overlap, alongside several related UI/UX and reliability tweaks across mobile, landing pages, and some backend/frontend utilities.
Changes:
- Restructures mobile navigation/drawer and introduces additional mobile UI updates (including sign-out flow adjustments).
- Updates the Contribution Graph calendar rendering to avoid overlapping month labels and constrain mobile weeks.
- Adds/updates various utilities and documentation; however, the PR also includes multiple duplicate “ 2” files and committed local/build artifacts that should not be in version control.
Reviewed changes
Copilot reviewed 49 out of 69 changed files in this pull request and generated 13 comments.
Show a summary per file
| File | Description |
|---|---|
| vite.config.ts | Adds esbuild JSX automatic mode. |
| tsconfig.app.json | Switches TS JSX mode to react-jsx. |
| tmp_transcript 2.txt | Accidental transcript/log file committed. |
| src/services/taskSocketService.ts | Formatting-only change. |
| src/services/chatSocketService.ts | Formatting-only change. |
| src/pages/ProjectDetails.tsx | Formatting/whitespace-only JSX changes. |
| src/pages/Login.tsx | Install-wall return commented out (causes unused locals unless restored). |
| src/mobile/pages/LoginMobile.tsx | Mobile login header UI adjustment. |
| src/lib/utils.ts | Changes dev/prod socket base URL selection. |
| src/lib/auth-signout.ts | Makes sign-out cleanup best-effort with try/catch + storage clearing. |
| src/hooks/usePresence.ts | Formatting-only change. |
| src/hooks/use-confirm 2.tsx | Duplicate hook file (space + “2” suffix). |
| src/features/install-wall/hooks/useAppInstallStatus.ts | Hard-disables install wall (scope not described in PR). |
| src/components/views/TaskBoardView 2.tsx | Duplicate view file (space + “2” suffix). |
| src/components/views/SettingsView.tsx | Adjusts phone number + country-code UI. |
| src/components/views/MobileView.tsx | Mobile drawer/nav restructure, adds My Projects entry and sign-out button. |
| src/components/views/mobile/MobileWorkspace.tsx | Renames header to “My Workspace”; removes redundant sheet close buttons. |
| src/components/views/mobile/MobileTasks 2.tsx | Duplicate mobile tasks view file (space + “2” suffix). |
| src/components/views/mobile/MobileSettings.tsx | Sign-out flow changed; leaves unused locals unless reconciled. |
| src/components/views/mobile/MobileSettings 2.tsx | Duplicate mobile settings file (space + “2” suffix). |
| src/components/views/mobile/MobileNewProject 2.tsx | Duplicate mobile new-project file (space + “2” suffix). |
| src/components/views/mobile/MobileMeet 2.tsx | Duplicate mobile meet file (space + “2” suffix). |
| src/components/views/mobile/MobileDashboardView.tsx | Improves mobile dashboard layout; adds recent GitHub activity list. |
| src/components/views/DesktopView.tsx | Minor indentation/formatting adjustment. |
| src/components/views/activity/activityUtils.ts | Adds new pure helpers for activity log calculations. |
| src/components/views/activity/activityTypes.ts | Adds shared activity-log types/tokens. |
| src/components/views/activity/ActivitySummaryCard.tsx | Adds new activity summary UI component. |
| src/components/views/activity/ActivityStatCards.tsx | Adds stat card UI component. |
| src/components/views/activity/ActivityFeed.tsx | Adds activity feed UI component. |
| src/components/views/activity/ActivityCharts.tsx | Adds activity charts using Chart.js. |
| src/components/notes/editor/ShareDialog.tsx | Formatting-only JSX empty-expression changes. |
| src/components/layout/MobileLayout.tsx | Reworks mobile layout; install-wall usage commented (unused locals unless restored). |
| src/components/landing/MobilePreview.tsx | Updates landing mobile-preview card styling. |
| src/components/landing/MobileAppSection.tsx | Hides mobile app section on small screens (hidden md:block). |
| src/components/landing/HeroSection.tsx | Mobile hero layout changes; uses MobilePreview on mobile. |
| src/components/landing/Footer.tsx | Adjusts footer spacing for mobile. |
| src/components/landing/FeaturesSection.tsx | Adjusts spacing; hides bento header/grid on mobile. |
| src/components/landing/CTASection.tsx | Adjusts CTA spacing/padding for mobile. |
| src/components/kibo-ui/contribution-graph.tsx | Adds maxWeeks and adjusts month-label logic to reduce overlap. |
| src/api/calendar.ts | Makes holiday fetch resilient (returns [] on errors). |
| docs/bug-fixes/team-settings-state-fix 2.md | New doc (duplicate “2” naming). |
| docs/bug-fixes/github-app-installation-false-negative 2.md | New doc (duplicate “2” naming). |
| docs/bug-fixes/frontend-ui-fixes 2.md | New doc (duplicate “2” naming). |
| docs/bug-fixes/frontend-session-error-handling 2.md | New doc (duplicate “2” naming). |
| docs/bug-fixes/backend-jest-node-protocol-fix 2.md | New doc (duplicate “2” naming). |
| docs/bug-fixes/backend-github-pagination 2.md | New doc (duplicate “2” naming). |
| docs/architecture/feature-github-integration-enhancements 2.md | New doc (duplicate “2” naming). |
| docs/architecture/feature-fcm-frontend-setup 2.md | New doc (duplicate “2” naming). |
| bugs.md | Scratchpad-like notes committed at repo root. |
| backend/utils/githubInstallation 2.js | Duplicate backend module file (space + “2” suffix). |
| backend/scripts/ops/purge-cloudinary 2.js | Duplicate ops script file (space + “2” suffix). |
| backend/routes/calendarRoutes.js | Changes holidays endpoint to return [] instead of error statuses. |
| app-clients/android-kotlin/.gradle/vcs-1/gc.properties | Gradle cache artifact committed. |
| app-clients/android-kotlin/.gradle/buildOutputCleanup/cache.properties | Gradle cache artifact committed. |
| app-clients/android-kotlin/.gradle/9.2.0/gc.properties | Gradle cache artifact committed. |
| app-clients/android-kotlin/.gradle/8.9/gc.properties | Gradle cache artifact committed. |
| app-clients/android-kotlin/.gradle/8.9/gc 2.properties | Gradle cache artifact committed (duplicate “2” naming). |
| app-clients/android-kotlin/.gradle/8.9/dependencies-accessors/gc.properties | Gradle cache artifact committed. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
43
to
+47
| const { hasCheckedStatus, requiresInstallWall, isIOS, isAndroid } = useAppInstallStatus(); | ||
|
|
||
| if (hasCheckedStatus && requiresInstallWall) { | ||
| return <InstallPromptView isIOS={isIOS} isAndroid={isAndroid} appName="ZYNC" />; | ||
| } | ||
| // if (hasCheckedStatus && requiresInstallWall) { | ||
| // return <InstallPromptView isIOS={isIOS} isAndroid={isAndroid} appName="ZYNC" />; | ||
| // } |
Comment on lines
20
to
+24
| const handleSignOut = async () => { | ||
| const ok = await confirm({ title: 'Sign Out', description: 'Are you sure you want to sign out?' }); | ||
| if (!ok) {return;} | ||
| await signOutAndClearState(auth); | ||
| navigate('/'); | ||
| try { | ||
| await signOutAndClearState(auth); | ||
| } catch (err) { | ||
| console.error('Sign out error:', err); |
Comment on lines
+376
to
+378
| // if (hasCheckedStatus && requiresInstallWall) { | ||
| // return <InstallPromptView isIOS={isIOS} isAndroid={isAndroid} appName="ZYNC" />; | ||
| // } |
Comment on lines
140
to
+144
| // Memoizes the calculation for 'requiresInstallWall' to avoid unnecessary re-evaluations on every render, recalculating only when its dependencies change. | ||
| const requiresInstallWall = useMemo(() => { | ||
| // Immediately returns false if the status hasn't been checked yet, preventing the install wall from flashing on the screen before the environment is fully verified. | ||
| if (!hasCheckedStatus) { | ||
| return false; | ||
| } | ||
| // Returns true if the device is a mobile device AND it is NOT currently running in standalone mode, meaning mobile web browser users are prompted to install. | ||
| return isMobileDevice && !isStandalone; | ||
| // Declares dependencies so the memoized value recalculates if the check status, device type, or standalone mode state changes. | ||
| }, [hasCheckedStatus, isMobileDevice, isStandalone]); | ||
| // Temporarily disabled install wall to allow direct mobile web browser access | ||
| return false; | ||
| }, []); |
Comment on lines
+239
to
+243
| return ( | ||
| <div | ||
| key={event.id || Math.random()} | ||
| className="flex items-center justify-between p-2.5 rounded-xl bg-card/40 dark:bg-white/5 border border-white/10 text-center gap-2" | ||
| > |
Comment on lines
+1
to
+5
| import { useState, useEffect, useMemo, useCallback, useRef } from 'react'; | ||
| import { fetchProjects, Project } from '@/api/projects'; | ||
| import { Inbox, RefreshCw, ChevronDown, User as UserIcon, Users as UsersIcon } from 'lucide-react'; | ||
| import { Button } from '@/components/ui/button'; | ||
| import { Badge } from '@/components/ui/badge'; |
Comment on lines
+1
to
+5
| import React, { createContext, useContext, useState, useCallback, ReactNode } from 'react'; | ||
| import { | ||
| AlertDialog, | ||
| AlertDialogContent, | ||
| AlertDialogHeader, |
Comment on lines
+1
to
+10
| /** | ||
| * @fileoverview githubInstallation.js | ||
| * @module githubInstallation | ||
| * | ||
| * ============================================================================ | ||
| * SELF-HEALING GITHUB APP INSTALLATION RESOLVER | ||
| * ============================================================================ | ||
| * | ||
| * PROBLEM THIS SOLVES | ||
| * ---------------------------------------------------------------------------- |
Comment on lines
+1
to
+5
| require('dotenv').config({ path: require('path').resolve(__dirname, '../../.env') }); | ||
| const mongoose = require('mongoose'); | ||
| const User = require('../../models/User'); | ||
| const Team = require('../../models/Team'); | ||
| const { getApps, initializeApp, cert } = require('firebase-admin/app'); |
Comment on lines
+1
to
+3
| analyze the notes section the share feature is not working. | ||
| do not edit any chnages just analyze the code and tell why the feature is not working | ||
|
|
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.
Changes
All tests pass and the production build builds cleanly without errors.