dify icon indicating copy to clipboard operation
dify copied to clipboard

feat: add debounced enter key submission to install form (#15445)

Open jw0903 opened this issue 9 months ago • 0 comments

Summary

This PR includes two improvements:

  1. Added debounce functionality to the Enter key submission on the initial install page, preventing multiple form submissions when users hold down the Enter key. This enhancement improves user experience by avoiding unintended duplicate submissions.

  2. Updated Tailwind CSS class naming to align with v3 conventions, specifically changing placeholder-gray-400 to placeholder:text-gray-400 as per the migration guide.

[!Tip] Fixes #15445

Key changes:

  • Implemented debounce for Enter key form submission using ahooks's useDebounceFn
  • Set a 200ms debounce wait time to balance responsiveness and protection
  • Utilized React's useCallback for better performance
  • Leveraged existing form submission state from React Hook Form
  • Updated placeholder text color class to follow Tailwind CSS v3 syntax

Screenshots

Before After
... ...

Checklist

[!IMPORTANT]
Please review the checklist below before submitting your pull request.

  • [ ] This change requires a documentation update, included: Dify Document
  • [x] I understand that this PR may be closed in case there was no previous discussion or issues. (This doesn't apply to typos!)
  • [x] I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change.
  • [x] I've updated the documentation accordingly.
  • [x] I ran dev/reformat(backend) and cd web && npx lint-staged(frontend) to appease the lint gods

jw0903 avatar Mar 12 '25 01:03 jw0903