-
Notifications
You must be signed in to change notification settings - Fork 353
feat: Add multi-theme system #1618
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…r references - Added AppThemeProvider to _app.tsx for centralized theme management. - Updated color references across various components to use the new brand color scheme. - Introduced ClickStack and HyperDX themes with corresponding color definitions. - Enhanced UserPreferencesModal to allow theme selection and added brand theme options for development mode. - Updated stylesheets to support new theme colors and ensure consistent branding.
- Replaced direct imports of Logo and Icon with theme hooks in AppNav, LandingHeader, OnboardingChecklist, and Spotlights components. - Introduced ThemedLogo component in nextra.config.tsx for consistent logo rendering. - Updated styles in AppNav.module.scss to reflect new brand color scheme. - Modified Icon component to use a new SVG design for improved aesthetics.
- Changed the class name for the search link in AppNav from 'text-success' to 'text-brand' to align with the new branding guidelines.
- Changed instances of 'text-success' to 'text-brand' in AuthPage, ExpandableRowTable, TimePicker, and DisplaySwitcher components to align with the new branding guidelines. - Added new utility classes for brand text styling in _utilities.scss. - Introduced base design tokens for themes in _base-tokens.scss, and created theme-specific tokens for ClickStack and HyperDX. - Updated app.scss to use the new theme tokens for consistent styling across the application.
- Simplified button styles in DBDashboardPage by removing redundant props. - Removed the 'color' prop from the Slider component in DBServiceMapPage for consistency. - Updated ThemeWrapper to utilize the app theme for MantineProvider, enhancing theme management. - Added comprehensive brand and neutral color palettes in _tokens.scss for both dark and light modes. - Refactored Logo components in ClickStack and HyperDX themes to remove unnecessary size props, standardizing their implementation.
- Adjusted primary button background and text colors to use new SCSS token values. - Modified hover state colors for primary buttons to enhance visual consistency across the theme.
…yperDX themes - Renamed primary button background and hover variables for clarity. - Consolidated button style definitions to utilize base variables for improved maintainability. - Ensured consistent button styling across both Clickstack and HyperDX themes.
- Removed unused default font variable import for cleaner code. - Updated font selection logic to only override the default font if a user preference is explicitly set, improving clarity and maintainability.
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR Review: Multi-Theme SystemCritical Issues❌ Type safety issue in ThemeProvider.tsx:128-131 → Add proper type definitions for window object pollution
Code Quality Issues🔍 Duplicate localStorage logic → DRY violation between ThemeProvider.tsx and index.ts
Questions/Suggestions💡 Consider server-side theme detection via environment variable for production builds to avoid flash of wrong theme Summary: No blockers, but fix type safety issue and consider UX impact of page reloads before merge. The architecture is solid overall. |
E2E Test Results✅ All tests passed • 60 passed • 4 skipped • 760s
Tests ran across 4 shards in parallel. |
- Added custom CSS variables for the Tabs component to enhance styling capabilities. - Improved theme customization by allowing dynamic color adjustments for the Tabs root element.
WIP