Conversation
liaohr9
commented
Jul 12, 2025

There was a problem hiding this comment.
Pull Request Overview
This PR integrates an interactive tutorial flow into the app, updates E2E tests to skip the tutorial when needed, and bumps the app version.
- Added skip-guide checks in E2E tests to automatically bypass the new tutorial overlay.
- Tagged key UI elements (
add-event,view-switcher,search) withdata-tutorialand implemented aTutorialGuidecomponent. - Updated version strings to 1.2.2 across
package.jsonand settings page.
Reviewed Changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/e2e/*.e2e.ts | Inserted skipGuideButton logic to skip tutorial in each test |
| src/renderer/components/sidebar/ViewSelector.vue | Added data-tutorial="view-switcher" attribute |
| src/renderer/components/sidebar/Sidebar.vue | Added data-tutorial="add-event" on the add-event button |
| src/renderer/components/pages/WelcomePage.vue | Integrated TutorialGuide, modified start button handler and styles |
| src/renderer/components/pages/TutorialGuide.vue | New tutorial overlay component handling spotlight and tooltips |
| src/renderer/components/pages/SettingPage.vue | Updated displayed version to 1.2.2 |
| src/renderer/components/CalendarHeader.vue | Tagged search elements with data-tutorial="search" |
| package.json | Bumped version from 1.2.1 to 1.2.2 |
Comments suppressed due to low confidence (2)
src/renderer/components/pages/TutorialGuide.vue:8
- The new
TutorialGuidecomponent and its integration inWelcomePagelack automated tests. Consider adding E2E or unit tests to verify tutorial step navigation and completion.
<template>
src/renderer/components/pages/WelcomePage.vue:293
- [nitpick] Changing the start-button background to white with light-colored text may reduce contrast. Verify that the color contrast ratio meets accessibility standards.
background: linear-gradient(45deg, #fff, #fff);
tests/e2e/search.e2e.ts
Outdated
| await startButton.click(); | ||
| } | ||
|
|
||
| const skipGuideButton = page.getByRole('button', { name: '跳过引导' }); |
There was a problem hiding this comment.
The skip-guide snippet is duplicated across multiple E2E tests. Consider extracting this logic into a helper or test fixture to DRY up the code.
| </div> | ||
| <!-- 视图按钮列表 --> | ||
| <div class="flex flex-col space-y-1"> | ||
| <div class="flex flex-col space-y-1" data-tutorial="view-switcher"> |
There was a problem hiding this comment.
The tutorial selector uses .view-buttons in its config, but there's no element with that class here. Either add class="view-buttons" or update the selector in the tutorial steps.
| <div class="flex flex-col space-y-1" data-tutorial="view-switcher"> | |
| <div class="flex flex-col space-y-1 view-buttons" data-tutorial="view-switcher"> |
| }; | ||
|
|
||
| // 关闭欢迎界面(如果用户点击背景) | ||
| const closeWelcome = async () => { |
There was a problem hiding this comment.
The closeWelcome handler hides the welcome modal but doesn't persist hasWelcomeBeenShown. Add await settingStore.setWelcomeShown(true) here to match skip/complete behavior.
…low into feat/tuition_liaohr9
09883f2 to
4dfd396
Compare