Skip to content

Conversation

@duckduckhero
Copy link
Contributor

No description provided.

@coderabbitai
Copy link

coderabbitai bot commented Oct 10, 2025

Caution

Review failed

The pull request is closed.

📝 Walkthrough

Walkthrough

Unifies per-day calendar item rendering with a visibleItems cap and “+N more” overflow; adds popover-driven event/session detail and creation flows; introduces a sessionsByEvent TinyBase index; removes a contact recommendation button; refactors CalendarStructure layout and sizing.

Changes

Cohort / File(s) Summary
Calendar day rendering & interactions
apps/desktop2/src/components/main/body/calendars.tsx
Consolidates events and sessions into a single visibleItems list per day with a computed maxVisibleItems; adds hiddenCount and a “+N more” overflow control; introduces Popover wrappers for event/session items and the overflow list; adds local popover state and useTabs open/create integrations; formats dates/times and adds action links (open/create session/note).
Contacts UI cleanup
apps/desktop2/src/components/main/body/contacts/details.tsx
Removes the conditional “Recommend Hyprnote to {name}” button and its click handler; removes unused UserPlus import.
TinyBase indexing
apps/desktop2/src/store/tinybase/persisted.ts
Adds INDEXES.sessionsByEvent key and calls setIndexDefinition(INDEXES.sessionsByEvent, "sessions", "event_id", "created_at") to index sessions by event_id with created_at ordering.
Calendar layout refactor
packages/ui/src/components/block/calendar-structure.tsx
Refactors layout: removes outer padding wrapper, introduces a dedicated header row for weekdays, uses a content grid with computed height for the days area (h-[calc(100%-48px)]), ensures a 7-column grid with preserved 6 rows, and consolidates container nesting under a single h-full wrapper.

Sequence Diagram(s)

sequenceDiagram
  actor User
  participant DayCell as Calendar Day Cell
  participant Pop as Popover
  participant Tabs as Tabs (openNew)
  participant Store as TinyBase

  User->>DayCell: Click event/session item
  DayCell->>Pop: Open item popover
  Pop-->>User: Show details (title, time, actions)

  alt Open existing session
    Pop->>Tabs: openNew(sessionId)
  else Create session or note
    Pop->>Store: (optional) query sessionsByEvent
    Pop->>Tabs: openNew(newSessionSpec)
  end
Loading
sequenceDiagram
  actor User
  participant DayCell as Calendar Day Cell
  participant Pop as Popover

  User->>DayCell: Click "+N more"
  DayCell->>Pop: Open overflow popover
  Pop-->>User: List hidden items
  User->>Pop: Select item
  Pop->>DayCell: Delegate to item popover flow
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

  • Refactor main area #1548 — Modifies calendars.tsx; appears to be an earlier change to day cell rendering that this PR continues/refines.
  • Migration 1008 #1546 — Related calendar UI and session handling changes; likely connected to session indexing and item flows.
  • Calendar UI porting #1544 — Prior Calendar UI porting adjustments for per-day rendering that this PR extends with popovers and unified visibleItems.

Pre-merge checks and finishing touches

❌ Failed checks (3 warnings)
Check name Status Explanation Resolution
Title Check ⚠️ Warning The title “Calendar card 1010” only references an internal ticket and does not concisely summarize the main calendar UI refactor that unifies event and session rendering with interactive popovers. Please rename the pull request to a descriptive title that highlights the primary change, such as “Refactor calendar card to unify event and session rendering with popovers.”
Description Check ⚠️ Warning No pull request description has been provided, so there is no context or summary of the changes for reviewers to understand the scope or intent of the modifications. Please add a brief description outlining the key changes, motivations, and any important details about the calendar UI refactor and new interactive features.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6544fed and f5dd64a.

📒 Files selected for processing (1)
  • apps/desktop2/src/components/main/body/calendars.tsx (4 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 648c185 and 6544fed.

📒 Files selected for processing (4)
  • apps/desktop2/src/components/main/body/calendars.tsx (4 hunks)
  • apps/desktop2/src/components/main/body/contacts/details.tsx (1 hunks)
  • apps/desktop2/src/store/tinybase/persisted.ts (2 hunks)
  • packages/ui/src/components/block/calendar-structure.tsx (2 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**/*.{js,ts,tsx,rs}

⚙️ CodeRabbit configuration file

**/*.{js,ts,tsx,rs}: 1. Do not add any error handling. Keep the existing one.
2. No unused imports, variables, or functions.
3. For comments, keep it minimal. It should be about "Why", not "What".

Files:

  • apps/desktop2/src/store/tinybase/persisted.ts
  • packages/ui/src/components/block/calendar-structure.tsx
  • apps/desktop2/src/components/main/body/calendars.tsx
  • apps/desktop2/src/components/main/body/contacts/details.tsx
🧬 Code graph analysis (1)
apps/desktop2/src/components/main/body/calendars.tsx (1)
apps/desktop2/src/store/zustand/tabs.ts (1)
  • useTabs (31-121)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: ci (macos, macos-14)
  • GitHub Check: ci (windows, windows-latest)

@yujonglee yujonglee merged commit 8ef47d3 into main Oct 10, 2025
4 checks passed
@yujonglee yujonglee deleted the calendar-card-1010 branch October 10, 2025 06:28
@coderabbitai coderabbitai bot mentioned this pull request Oct 10, 2025
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.

3 participants