Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[Low Priority] Word Filter silently fails when an invalid regex is entered

Đang mở Phù hợp với người mới
#8,422 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
70/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
react, typescript
Lĩnh vực
frontend

Hướng nghiên cứu

Lỗi bắt nguồn từ WordFilterModal.tsx tại dòng 137, nơi một RegExp mới được tạo. Hãy bắt đầu bằng cách kiểm tra trình xử lý onSubmit xung quanh dòng 207. Thêm xác thực trước khi tạo RegExp và hiển thị thông báo lỗi cho người dùng. Kiểm tra thư viện thành phần giao diện người dùng để biết cách hiển thị hộp thoại lỗi. Kiểm tra bằng cách nhập regex không hợp lệ như '(' hoặc '[' trong hộp thoại bộ lọc từ.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug
Did you clear cache before opening an issue?
  • I have cleared my cache
Is there an existing issue for this?
  • I have searched the existing open and closed issues
Does the issue happen when logged in?

Yes

Does the issue happen when logged out?

Yes

Does the issue happen in incognito mode when logged in?

Yes

Does the issue happen in incognito mode when logged out?

Yes

Account name

onedeath

Account config

Doesn't only happen when logged in, but just in case my config is
{"theme":"metaverse","themeLight":"serika","themeDark":"serika_dark","autoSwitchTheme":false,"customTheme":false,"customThemeColors":["#323437","#e2b714","#e2b714","#646669","#2c2e31","#d1d0c5","#ca4754","#7e2a33","#ca4754","#7e2a33"],"favThemes":["stealth","rgb","terminal","cyberspace","vscode","metaverse","matrix","shadow","midnight","dark","arch","husqy","dev"],"showKeyTips":true,"smoothCaret":"fast","codeUnindentOnBackspace":false,"quickRestart":"tab","punctuation":false,"numbers":false,"words":100,"time":15,"mode":"custom","quoteLength":[0,1,2,3],"language":"english","fontSize":2,"freedomMode":false,"difficulty":"normal","blindMode":false,"quickEnd":false,"caretStyle":"outline","paceCaretStyle":"outline","flipTestColors":false,"layout":"default","funbox":[],"confidenceMode":"off","indicateTypos":"off","compositionDisplay":"replace","timerStyle":"mini","liveSpeedStyle":"mini","liveAccStyle":"mini","liveBurstStyle":"mini","colorfulMode":false,"randomTheme":"off","timerColor":"main","timerOpacity":"1","stopOnError":"off","deleteOnError":"off","showAllLines":false,"keymapMode":"off","keymapStyle":"staggered","keymapLegendStyle":"lowercase","keymapLayout":"overrideSync","keymapKeys":"minimal","keymapSize":1,"fontFamily":"Kanit","smoothLineScroll":false,"alwaysShowDecimalPlaces":false,"alwaysShowWordsHistory":false,"singleListCommandLine":"on","capsLockWarning":true,"playSoundOnError":"off","playSoundOnClick":"off","soundVolume":0.5,"startGraphsAtZero":true,"showOutOfFocusWarning":true,"paceCaret":"off","paceCaretCustomSpeed":100,"repeatedPace":true,"accountChart":["on","on","on","on"],"minWpm":"off","minWpmCustomSpeed":100,"highlightMode":"letter","typedEffect":"keep","typingSpeedUnit":"wpm","ads":"result","hideExtraLetters":false,"strictSpace":false,"minAcc":"off","minAccCustom":90,"monkey":false,"repeatQuotes":"off","resultSaving":true,"oppositeShiftMode":"off","customBackground":"","customBackgroundSize":"cover","customBackgroundFilter":[0,1,1,1],"customLayoutfluid":["qwerty","dvorak"],"customPolyglot":["english","german"],"monkeyPowerLevel":"off","minBurst":"off","minBurstCustomSpeed":100,"burstHeatmap":false,"britishEnglish":false,"lazyMode":false,"showAverage":"off","showPb":false,"tapeMode":"off","tapeMargin":50,"maxLineWidth":0,"playTimeWarning":"off"}

Current Behavior

Entering an invalid regular expression in Custom Text → Word Filter and clicking Set or Add does nothing. No error message appears, no filter is applied, and the Word Filter modal remains open.

Honestly in my testing I've only tried the brackets '[' , ']' , and parentheses , '(' . ')', but I think other invalid regex should produce the same result.

Moreover, the Words Filter screen is unable to be opened until you refresh after you enter the invalid regex expression.

Expected Behavior

I expected the site to clearly show an error such as “Invalid regex expression” so the user knows why the filter was not applied. Instead the only error indicator is the lack of response when clicking Set or Add, or if you're a bit tech-savvy, the error in DevTools ->

WordFilterModal.tsx:137 Uncaught (in promise) SyntaxError: Invalid regular expression: /(/: Unterminated group
at new RegExp ()
at oM (WordFilterModal.tsx:137:18)
at Object.onSubmit (WordFilterModal.tsx:207:24)
at async Rg._handleSubmit (FormApi.js:561:9)

Steps To Reproduce
  1. Go to the main screen
  2. Enter the 'Custom' mode
  3. Click change next to the mode selector
  4. Click on the button with a funnel icon reading 'words filter'
  5. In the regex field, put any invalid regex expression such as parentheses or brackets
  6. No visible error modal
Environment
  • OS: Windows 11
  • Browser: Google Chrome
  • Browser Version: 153.0.8010.54 (Official Build) (64-bit) (cohort: Control)
Anything else?

No response

Ngôn ngữ chính
TypeScript
Star
20.7k
Fork
3.3k
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của monkeytypegame/monkeytype

Tất cả issue của monkeytypegame/monkeytype

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.