-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
feat(tours): re-implement tour with inverse theme #95530
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
to avoid a light border being shown for dark content and vice versa
only relevant for old theme, does nothing in chonk
const navTourModalCss = css` | ||
width: 545px; | ||
[role='document'] { | ||
box-shadow: none; | ||
} |
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.
<TourContainer> | ||
<ImageContainer | ||
alt={t('Preview of the issue details experience')} | ||
src={issueDetailsPreview} |
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.
we got a new image here by @Jesse-Box that works in both light and dark mode, and is consistent with the other StartTour
dialogs we have.
{t('Maybe later')} | ||
</TextTourAction> | ||
<TourAction onClick={handleStartTour} autoFocus> | ||
{t('Take a tour')} |
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.
I streamlined the wording between all three StartTour
dialogs.
This PR changes how tours are implemented in the platform. Instead of custom theming and custom theme values (like `theme.tour.background`), we now wrap the tour in it’s own `ThemeProvider` with an inverse theme - in light mode, the tour becomes dark, and in dark mode, it becomes light. That ensures tours stand out, while at the same time it allows for a streamlined implementation: We can use normal buttons, normal text and background colors and they will look good - in both the old UI and chonkUI. Therefore, this PR also removes the custom `theme.tour` values. | Tour light | Tour dark | |--------|--------| | <img width="630" height="470" alt="Screenshot 2025-07-15 at 14 34 47" src="https://github.com/user-attachments/assets/1ca10735-d676-4551-8ad0-7b9a2517df75" /> | <img width="630" height="470" alt="Screenshot 2025-07-15 at 14 34 42" src="https://github.com/user-attachments/assets/9f809b8a-fd28-4a44-afd7-7cb56f7dcd7f" /> | | <img width="630" height="470" alt="Screenshot 2025-07-15 at 14 34 53" src="https://github.com/user-attachments/assets/0302cf1e-b9b3-4c12-9fd8-cd28c6c1bf26" /> | <img width="630" height="470" alt="Screenshot 2025-07-15 at 14 34 34" src="https://github.com/user-attachments/assets/7d1bf1f3-b47c-41c3-b192-6a42a128b6ad" /> | Note: The `StartTour` dialog had to be changed 3 times, because it’s not a shared component. I plan to improve this in a follow-up, as there’s no need to re-implement this every time for every tour. | StartTour light | StartTour dark | |--------|--------| | <img width="1451" height="601" alt="Screenshot 2025-07-15 at 14 33 48" src="https://github.com/user-attachments/assets/8fe7ac9a-ae3e-456b-99bd-7432651a7abf" /> | <img width="1451" height="601" alt="Screenshot 2025-07-15 at 14 33 52" src="https://github.com/user-attachments/assets/6311c649-72e9-4130-88ee-ff9fac1f5702" /> | | <img width="1451" height="601" alt="Screenshot 2025-07-15 at 14 33 40" src="https://github.com/user-attachments/assets/57b540dd-a430-4336-8b94-dc94cb260cbc" /> | <img width="1451" height="601" alt="Screenshot 2025-07-15 at 14 33 57" src="https://github.com/user-attachments/assets/9aded215-b44b-4f28-a648-549b815ae4a4" /> |
This PR changes how tours are implemented in the platform. Instead of custom theming and custom theme values (like
theme.tour.background
), we now wrap the tour in it’s ownThemeProvider
with an inverse theme - in light mode, the tour becomes dark, and in dark mode, it becomes light.That ensures tours stand out, while at the same time it allows for a streamlined implementation: We can use normal buttons, normal text and background colors and they will look good - in both the old UI and chonkUI.
Therefore, this PR also removes the custom
theme.tour
values.Note: The
StartTour
dialog had to be changed 3 times, because it’s not a shared component. I plan to improve this in a follow-up, as there’s no need to re-implement this every time for every tour.