diff options
Diffstat (limited to '.rules/plan/calendar-phase-6.md')
| -rw-r--r-- | .rules/plan/calendar-phase-6.md | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/.rules/plan/calendar-phase-6.md b/.rules/plan/calendar-phase-6.md deleted file mode 100644 index 382059a..0000000 --- a/.rules/plan/calendar-phase-6.md +++ /dev/null @@ -1,39 +0,0 @@ -# Phase 6: Main Plugin Wiring (`src/main.ts`) - -**Status:** Not started -**Depends on:** Phase 4 (calendar-view.ts), Phase 5 (settings) -**Modifies:** `src/main.ts` - ---- - -## Overview - -Wire the calendar view into the main plugin class: register the view, add ribbon icon, register commands, handle lifecycle. - ---- - -## Changes to `src/main.ts` - -``` -In onload(): - - registerView(VIEW_TYPE_CALENDAR, (leaf) => new CalendarView(leaf, this)) - - addRibbonIcon("calendar", "Open Calendar", () => activateCalendarView()) - - addCommand("open-calendar", "Open Calendar View", ...) - - addCommand("reveal-active-note", "Reveal active note in calendar", ...) - - addCommand("open-today", "Open today's daily note", ...) - -In onunload(): - - detachLeavesOfType(VIEW_TYPE_CALENDAR) - -activateCalendarView(): - - Same pattern as activateView() for the chat — check for existing leaf first -``` - ---- - -## Notes - -- Follow the existing pattern in `main.ts` for registering views (look at how the chat view is registered). -- The `activateCalendarView()` helper should check if a calendar leaf already exists before creating a new one. -- Calendar settings must be included in `loadData()`/`saveData()` — merge with defaults. -- The "Open today's daily note" command uses `openDailyNote()` from Phase 1 with `window.moment()` as the date. |
