• Will Chen's avatar
    Improve Help dialog UX: DRY refactor, animations, and visual hierarchy (#2629) · b53dd77a
    Will Chen 提交于
    - Extract shared helpers (formatSettingsLines, formatSystemInfoSection,
    openGitHubIssue) to eliminate duplication between Report a Bug and
    Upload Chat Session flows
    - Extract reusable components (AnimatedScreen, ReviewDetailsSection,
    CopyButton) for modularity
    - Add smooth slide animations between dialog screens using
    framer-motion, with no animation on initial open
    - Collapse all review screen sections into accordions
    - Redesign upload complete screen: inline checkmark, animated copy
    button, Create GitHub Issue button above warning banner
    - Include error logs and system info in Upload Chat Session's GitHub
    issue (previously only in Report a Bug)
    - Add visual hierarchy to main screen: bordered cards for each report
    option, labeled divider separating self-help from issue reporting
    - Show clear "Open a chat first" warning when no chat is selected
    <!-- devin-review-badge-begin -->
    
    ---
    
    <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2629"
    target="_blank">
      <picture>
    <source media="(prefers-color-scheme: dark)"
    srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
    <img
    src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
    alt="Open with Devin">
      </picture>
    </a>
    <!-- devin-review-badge-end -->
    
    <!-- CURSOR_SUMMARY -->
    ---
    
    > [!NOTE]
    > **Low Risk**
    > Primarily UI/UX refactoring and animation changes, plus expanded
    GitHub issue prefill content; low risk but could affect
    support/reporting flow behavior if screen navigation or issue URL
    construction regresses.
    > 
    > **Overview**
    > Refactors `HelpDialog` into a 3-screen flow (`main` → `review` →
    `upload-complete`) with slide transitions via `framer-motion`, including
    reusable subcomponents (`AnimatedScreen`, `ReviewDetailsSection`,
    `CopyButton`) and a navigation helper.
    > 
    > Unifies GitHub issue creation for both bug reports and session uploads
    with shared formatting helpers and `openGitHubIssue`, and **expands
    session-upload issues to include system info, settings, and recent
    logs** (plus a `v2:` session ID prefix). Updates the main screen layout
    into clearer “self-help” vs “report an issue” sections with card styling
    and a disabled-state warning when no chat is selected, and makes review
    sections collapsible plus redesigns the upload-complete screen with an
    animated copy affordance and a clearer call-to-action to create the
    GitHub issue.
    > 
    > <sup>Written by [Cursor
    Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
    a3b76962ec8796ce1a081dcfb8447d5da4d2e15b. This will update automatically
    on new commits. Configure
    [here](https://cursor.com/dashboard?tab=bugbot).</sup>
    <!-- /CURSOR_SUMMARY -->
    Co-authored-by: 's avatarCursor <cursoragent@cursor.com>
    b53dd77a
名称
最后提交
最后更新
.claude 正在载入提交数据...
.cursor/rules 正在载入提交数据...
.devcontainer 正在载入提交数据...
.github 正在载入提交数据...
.husky 正在载入提交数据...
.storybook 正在载入提交数据...
assets 正在载入提交数据...
docs 正在载入提交数据...
drizzle 正在载入提交数据...
e2e-tests 正在载入提交数据...
makers 正在载入提交数据...
packages/@dyad-sh 正在载入提交数据...
rules 正在载入提交数据...
scaffold 正在载入提交数据...
scripts 正在载入提交数据...
shared 正在载入提交数据...
src 正在载入提交数据...
testing 正在载入提交数据...
tools 正在载入提交数据...
worker 正在载入提交数据...
workers/tsc 正在载入提交数据...
.cursorignore 正在载入提交数据...
.env.example 正在载入提交数据...
.eslintrc.json 正在载入提交数据...
.gitattributes 正在载入提交数据...
.gitignore 正在载入提交数据...
.npmrc 正在载入提交数据...
.oxfmtrc.json 正在载入提交数据...
.oxlintrc.json 正在载入提交数据...
.prettierignore 正在载入提交数据...
.prettierrc 正在载入提交数据...
AGENTS.md 正在载入提交数据...
CLA.md 正在载入提交数据...
CLAUDE.md 正在载入提交数据...
CONTRIBUTING.md 正在载入提交数据...
LICENSE 正在载入提交数据...
README.md 正在载入提交数据...
SECURITY.md 正在载入提交数据...
biome.json 正在载入提交数据...
components.json 正在载入提交数据...
drizzle.config.ts 正在载入提交数据...
forge.config.ts 正在载入提交数据...
forge.env.d.ts 正在载入提交数据...
index.html 正在载入提交数据...
lint-staged.config.js 正在载入提交数据...
merge.config.ts 正在载入提交数据...
package-lock.json 正在载入提交数据...
package.json 正在载入提交数据...
playwright.config.ts 正在载入提交数据...
tsconfig.app.json 正在载入提交数据...
tsconfig.json 正在载入提交数据...
tsconfig.node.json 正在载入提交数据...
vite.main.config.mts 正在载入提交数据...
vite.preload.config.mts 正在载入提交数据...
vite.renderer.config.mts 正在载入提交数据...
vite.worker.config.mts 正在载入提交数据...
vitest.config.ts 正在载入提交数据...
windowsSign.ts 正在载入提交数据...