From d32355a1a2f932d1770f199152a65e97f3a25a19 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Tue, 26 May 2026 22:17:07 -0400 Subject: [PATCH] docs(launcher): add cfg menu inventory and v3.1 design docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MODULE__AE_Events_Launcher_Config_Menu.md โ€” v3.0 inventory of the 3-tab drawer layout (now superseded but kept as reference baseline). MODULE__AE_Events_Launcher_Config_Menu_new.md โ€” v3.1 unified design spec that drove the sidebar tab migration. Co-Authored-By: Claude Sonnet 4.6 --- .../MODULE__AE_Events_Launcher_Config_Menu.md | 94 +++++++++++++++ ...ULE__AE_Events_Launcher_Config_Menu_new.md | 110 ++++++++++++++++++ 2 files changed, 204 insertions(+) create mode 100644 documentation/MODULE__AE_Events_Launcher_Config_Menu.md create mode 100644 documentation/MODULE__AE_Events_Launcher_Config_Menu_new.md diff --git a/documentation/MODULE__AE_Events_Launcher_Config_Menu.md b/documentation/MODULE__AE_Events_Launcher_Config_Menu.md new file mode 100644 index 00000000..e7152af3 --- /dev/null +++ b/documentation/MODULE__AE_Events_Launcher_Config_Menu.md @@ -0,0 +1,94 @@ +# Aether Events โ€” Launcher Configuration Menu (Inventory) + +> **Status:** Current Reference (v3.0) +> **Location:** `src/routes/events/[event_id]/(launcher)/launcher_cfg.svelte` + +This document provides a detailed inventory of the Launcher's configuration menu settings as of May 2026. This serves as the baseline for the v3.1 reorganization into a modal-based tabbed interface. + +--- + +## 1. UI Architecture & Visibility + +The configuration menu currently resides in a slide-out **Drawer** (sidebar). + +### 1.1 Visibility Modes +- **Standard Mode:** Default view for onsite operators. Hides advanced technical and destructive controls. +- **Technical Mode (`$ae_loc.edit_mode`):** Toggled via a subtle pencil icon. Reveals advanced diagnostic fields, manual overrides, and debug tools. +- **Native Mode (`$ae_loc.is_native`):** Automatically detected when running in the Electron shell. Shows OS-level controls (Filesystem, Power, Apps). + +### 1.2 Section Expansion Logic +- **`collapsed`**: Content hidden. +- **`auto`**: Expanded by default; collapses when another "auto" section opens. +- **`pinned`**: Remains expanded regardless of other interactions. + +--- + +## 2. Menu Inventory (Tabbed View) + +### Tab 1: Setup (Onsite Operator Focus) + +| Section | Feature | Technical Mode Only | +| :--- | :--- | :--- | +| **Display & App Modes** | Session Mode Preset (Oral vs Poster Kiosk) | | +| | Operational Env (Web / App / Onsite) | | +| | Interface Visibility (Hide Header/Menu/Footer/Times) | | +| | Clock Format (12/24 hour) | | +| | WebSocket Debugger Toggle | Yes | +| | Poster Modal Title Toggle | Yes | +| | Native Test Mode (Simulation) | Yes | +| **Remote Controller** | WS Connection Status Badge | | +| | Controller Strategy (Local / Remote / Local Push) | | +| | Connect / Disconnect Action | | +| | Group Reload (WS trigger) | | +| | Channel Group Code (Locked/Unlockable) | Yes | +| **Poster Screen Saver** | Idle Timeout Summary | | +| | Timer Overrides (Idle / Cycle / Loop) | Yes | + +### Tab 2: Device (Technical & Native Focus) + +| Section | Feature | Technical Mode Only | +| :--- | :--- | :--- | +| **Sync Engine & Timers** | Pause / Resume Sync | | +| | Force Sync Location (Recursive fetch) | | +| | Polling Periods (Event/Device/Loc/Sess/Pres/Presenter) | Yes | +| | Cache Hash Prefix Length (1-3 chars) | Yes | +| **System & Sync Health** | CPU & RAM Usage Gauges | | +| | Heartbeat Status & Timestamp | | +| | Sync Progress (Cached vs Total) | | +| | Active Sync Filename (Animated) | | +| | Hostname & IP List | Yes | +| | Raw Device JSON Inspector | Yes | +| **Native OS Management** | Open Cache / Temp Folders | | +| | Window Control (Maximize / Kiosk) | | +| | Display Mode (Extend / Mirror) | | +| | Presentation Remote (Prev/Start/Stop/Next) | | +| | Reset Wallpaper (Site Header) | Yes | +| | Kill Presentation Apps (PowerPoint/Keynote/etc) | Yes | +| | Power Actions (Reboot / Shutdown) | Yes | +| | Manual Terminal Command Entry | Yes | +| **Wallpaper** | Primary Display URL Preset/Input | | +| | External Display URL Preset/Input | | +| | Save & Apply Wallpaper | | +| | Restore macOS Default | | +| **Launch Timing** | Per-Profile Post-Open Delay (ms) Overrides | Yes | +| **Application Updates** | Update Source (File / URL) | Yes | +| | Check for Updates | | +| | Install & Relaunch | | + +### Tab 3: Dev (Technical/Developer Focus) + +| Section | Feature | Technical Mode Only | +| :--- | :--- | :--- | +| **Local Reset & Actions** | Maintenance Select (Wipe IDB / LocalStorage) | Yes | +| | Global Sys Menu Toggle | Yes | +| | Global Debug Menu Toggle | Yes | +| | Cache .tmp Cleanup (Native Only) | Yes | +| | API Endpoint & Account ID Summary | Yes | + +--- + +## 3. Global Actions (Footer) + +- **Close:** Dismisses the configuration menu. +- **Reload:** Performs a full browser `location.reload()`. +- **Debug Panel:** Opens the raw state inspector (Technical Mode Only). diff --git a/documentation/MODULE__AE_Events_Launcher_Config_Menu_new.md b/documentation/MODULE__AE_Events_Launcher_Config_Menu_new.md new file mode 100644 index 00000000..b13fcac6 --- /dev/null +++ b/documentation/MODULE__AE_Events_Launcher_Config_Menu_new.md @@ -0,0 +1,110 @@ +# Aether Events โ€” Unified Launcher Configuration (Vision v3.1) + +> **Status:** Strategic Design / Unified Proposal +> **Author:** Gemini CLI (Interactive Agent) +> **Target:** Full consistency across all configuration modules. + +## 1. Unified Design Language + +To eliminate the "created by 3 different people" feel, all components must strictly adhere to this shared specification. + +### 1.1 Color Palette & Semantics +- **Primary (Blue):** Main actions, active tabs, and standard configuration toggles. +- **Secondary (Green):** Safe actions (Connect, Sync, Apply). +- **Warning (Orange):** Technical overrides that require caution (Timers, Native Shell). +- **Error (Red):** Destructive actions (Resets, Shutdown, Kill Apps). +- **Surface (Gray):** Containers, input backgrounds, and inactive states. + +### 1.2 Typography & Spacing +- **Section Headers:** `text-sm font-bold uppercase tracking-tight` (Provided by Wrapper). +- **Field Labels:** `text-[10px] font-bold uppercase tracking-wider opacity-60 mb-1`. +- **Sub-Descriptions:** `text-[9px] italic opacity-40 leading-snug mt-1`. +- **Status Badges:** `text-[8px] font-bold uppercase tracking-tighter`. +- **Grid Standard:** + * Single Column for complex fields. + * `grid-cols-2` with `gap-4` for standard inputs. + * `grid-cols-3` or `grid-cols-4` only for small buttons or icon toggles. + +--- + +## 2. Structural Reorganization (The "Aether" Layout) + +The menu is now a **Vertical Sidebar Modal**. This allows for persistent navigation while dedicating the large right pane to content. + +### Tab 1: ๐Ÿ–ฅ๏ธ Display (General Operator) +*Focus: What the screen looks like.* +- **Category: Layout & UI** + - Presets: Oral/Default vs Poster Kiosk (One-tap setup). + - Toggles: Header, Menu, Footer, Times visibility. + - Formatting: Clock (12/24h), Date formats. +- **Category: Screen Saver** + - Idle Timeout (Minutes). + - Mode: Image Cycle vs Video vs Custom. + +### Tab 2: ๐Ÿ”Œ Connectivity (Onsite Tech) +*Focus: How it talks to the network.* +- **Category: WebSocket Control** + - Connection Status & Signal Strength. + - Controller Mode: Local vs Remote vs Push. + - Group Code: Channel sharding for multi-room management. +- **Category: API Context** + - Current Endpoint, Account, and Site context. + +### Tab 3: ๐Ÿ”„ Sync & Health (Onsite Tech) +*Focus: Data integrity and performance.* +- **Category: Sync Engine** + - Status: Active vs Paused. + - Action: Force Sync Location (recursive metadata fetch). + - Stats: Cached Files vs Total Files (Progress bar). +- **Category: System Telemetry** + - CPU & RAM usage (Visual gauges). + - Heartbeat monitor (Last success timestamp). + - Device Identity: Hostname, IP list, Local paths. + +### Tab 4: ๐Ÿ› ๏ธ Native Shell (Specialized / Mac) +*Focus: OS-level capabilities.* +- **Category: App Control** + - Window: Maximize, Kiosk Mode, Fullscreen. + - Automation: Kill presentation apps (Clean slate). + - Remote: Virtual clicker (Prev/Next/Start/Stop). +- **Category: System Action** + - Displays: Extend vs Mirror (Native bridge). + - Folders: Open Cache / Open Temp. + - Power: Reboot / Shutdown (With confirmation). + +### Tab 5: ๐Ÿ–ผ๏ธ Wallpaper (Branding) +*Focus: Event-specific aesthetics.* +- **Category: Customization** + - Primary Display: URL/Preset. + - Secondary/Projector: URL/Preset. + - Action: Apply to OS (Native) + Preview (Web). + +### Tab 6: ๐Ÿงช Advanced (Developer Mode) +*Focus: Fine-tuning and updates.* +- **Category: Performance** + - Polling Intervals (Event, Device, Room, Session, Presenter). + - Cache Sharding (Prefix length). +- **Category: Launch Logic** + - Per-Profile Post-Open Delays (ms). +- **Category: Updates** + - Source: File vs URL. + - Version: Current vs Target. + - Action: Download/Install. + +### Tab 7: ๐Ÿงน Maintenance (Emergency) +*Focus: Troubleshooting.* +- **Category: Resets** + - Wipe IndexedDB (Module selective). + - Clear LocalStorage (Reset config). +- **Category: Diagnostics** + - Raw Device JSON inspector. + - Terminal Command Entry. + +--- + +## 3. Implementation Plan: The "Cohesion" Refactor + +1. **Standardize `Launcher_Cfg_Section.svelte`:** Ensure padding and spacing are baked into the wrapper so children don't have to define it. +2. **Create `Launcher_Cfg_Field.svelte`:** A new helper component to handle the Label + Description + Input pattern consistently. +3. **Audit Sub-Components:** Update all 10 components to use the new colors, grid patterns, and typography. +4. **Polish Transitions:** Ensure the Modal entry and Tab switching are butter-smooth with Svelte 5 transitions.