feat: Add user settings page#131
Conversation
Create settings page to fix the broken /settings link in the header user menu. Features: - Notification preferences (desktop, email for updates/mentions/assignments) - Timezone selection with common timezones - Default ticket view configuration - Settings persist to localStorage Closes #126
There was a problem hiding this comment.
Pull request overview
This PR implements a user settings page to fix the broken /settings link in the header user menu. The page provides a clean interface for managing notification preferences, timezone selection, and default ticket view configuration, with all settings persisting to localStorage.
Key Changes:
- Created a new settings page at
src/app/settings/page.tsxwith notification, timezone, and default view preferences - Implemented localStorage-based persistence for user settings
- Added custom toggle components following the application's existing design patterns
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Fix default timezone evaluated on server by adding window check - Deep merge stored settings to preserve nested notification properties - Remove artificial 300ms save delay, save to localStorage immediately - Auto-clear save success indicator after 2 seconds - Ensure user's detected timezone is always in the dropdown list - Add aria-label to toggle buttons for screen reader accessibility - Add Space key support to toggle buttons for keyboard accessibility - Extract toggle offset to named constant Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
@EdiWeeks This is ready to test |
EdiWeeks
left a comment
There was a problem hiding this comment.
Approved. @BenGWeeks please merge
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Please add a screenshot @EdiWeeks / @akash2017sky |
|
Screenshot added @BenGWeeks |
- Replace hardcoded timezone list with Intl.supportedValuesOf('timeZone')
- Rename localStorage key from devdesk-settings to zapdesk-settings
- Fix misleading copy for default ticket view setting
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
All comments resolved, screenshot added @BenGWeeks please merge |
|
Doesn't look like this implementation actually witch on any DevOps notifications or am I missing something? This should amend user settings in DevOps ... if available to amend programmatically. |
Create settings page to fix the broken /settings link in the header user menu.
Features:
Closes #126