-
-
Notifications
You must be signed in to change notification settings - Fork 3k
refactor: convert footer to a component (@fehmer, @miodec) #7346
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
Conversation
|
Continuous integration check(s) failed. Please review the failing check's logs and make the necessary changes. |
6f31b91 to
450c5ee
Compare
f256c1b to
7eb4f79
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR refactors the footer and several modals into SolidJS components, moving from imperative DOM manipulation to a reactive component-based architecture. The changes consolidate modal state management into a centralized store and modernize the codebase structure.
Changes:
- Converted footer from static HTML to a SolidJS component with reactive theme and version indicators
- Migrated Contact and Support modals to SolidJS components with centralized state management
- Introduced a modal state store with chaining support to manage modal visibility and transitions
- Fixed CSS selector from
keytokbdin theme files
Reviewed changes
Copilot reviewed 40 out of 40 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| frontend/static/themes/solarized_osaka.css | Fixed invalid CSS selector from key to kbd |
| frontend/static/themes/9009.css | Fixed invalid CSS selector from key to kbd |
| frontend/src/ts/utils/animated-modal.ts | Added store integration for modal state management with chaining support |
| frontend/src/ts/stores/modals.ts | Implemented centralized modal state store with visibility tracking and chain management |
| frontend/src/ts/signals/core.ts | Added signals for theme indicator and commandline subgroup state |
| frontend/src/ts/modals/support.ts | Removed imperative modal implementation (migrated to component) |
| frontend/src/ts/modals/contact.ts | Removed imperative modal implementation (migrated to component) |
| frontend/src/ts/index.ts | Removed footer event handlers import |
| frontend/src/ts/event-handlers/footer.ts | Removed event handlers (logic moved to Footer component) |
| frontend/src/ts/event-handlers/about.ts | Updated to use modal store instead of direct modal calls |
| frontend/src/ts/controllers/theme-controller.ts | Refactored to use signals instead of direct DOM manipulation |
| frontend/src/ts/components/mount.tsx | Updated component mounting configuration for new components |
| frontend/src/ts/components/VersionHistoryModal.tsx | Simplified to use store-based state management |
| frontend/src/ts/components/VersionButton.tsx | Added stylesheet import |
| frontend/src/ts/components/VersionButton.scss | Extracted version button styles into component stylesheet |
| frontend/src/ts/components/ThemeIndicator.tsx | New component for reactive theme display and selection |
| frontend/src/ts/components/ThemeIndicator.scss | Styles for theme indicator component |
| frontend/src/ts/components/SupportModal.tsx | New SolidJS component for support modal |
| frontend/src/ts/components/SupportModal.scss | Styles for support modal component |
| frontend/src/ts/components/Modals.tsx | Container component for all modal instances |
| frontend/src/ts/components/ModalChainContext.tsx | Removed context-based chain management (replaced by store) |
| frontend/src/ts/components/Footer.tsx | New SolidJS footer component with reactive indicators |
| frontend/src/ts/components/Footer.scss | Footer component styles with responsive design |
| frontend/src/ts/components/ContactModal.tsx | New SolidJS component for contact modal |
| frontend/src/ts/components/ContactModal.scss | Styles for contact modal component |
| frontend/src/ts/components/Conditional.tsx | New utility component for conditional rendering |
| frontend/src/ts/components/Button.tsx | New reusable button component supporting both buttons and anchors |
| frontend/src/ts/components/AnimatedModal.tsx | Refactored to integrate with modal store for state management |
| frontend/src/ts/commandline/lists.ts | Extracted ads commands for reuse in subgroup mapping |
| frontend/src/ts/commandline/commandline.ts | Integrated with modal store and added reactive effect for visibility |
| frontend/src/styles/popups.scss | Removed modal styles (moved to component stylesheets) |
| frontend/src/styles/media-queries-purple.scss | Removed footer and modal responsive styles (moved to components) |
| frontend/src/styles/media-queries-green.scss | Removed footer and modal responsive styles (moved to components) |
| frontend/src/styles/index.scss | Removed footer stylesheet import |
| frontend/src/styles/buttons.scss | Added .icon selector for button components |
| frontend/src/index.html | Replaced footer HTML include with component mountpoint |
| frontend/src/html/popups.html | Replaced modal HTML with Modals component |
| frontend/src/html/footer.html | Removed static footer HTML (replaced by component) |
| frontend/tests/components/Button.spec.tsx | Added comprehensive tests for Button component |
| frontend/tests/components/AnimatedModal.spec.tsx | Updated tests to work with store-based modal state |
Comments suppressed due to low confidence (1)
frontend/src/ts/components/Footer.scss:1
- Corrected capitalization of 'line' in 'command Line' to 'command line'.
@use "../../styles/media.scss" as *;
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Continuous integration check(s) failed. Please review the failing check's logs and make the necessary changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 40 out of 40 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.