[Low Priority] Word Filter silently fails when an invalid regex is entered
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 70/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- react, typescript
- Área
- frontend
Línea de trabajo
El error se origina en WordFilterModal.tsx en la línea 137 donde se construye un nuevo RegExp. Comience examinando el controlador onSubmit alrededor de la línea 207. Agregue validación antes de crear el RegExp y muestre un mensaje de error al usuario. Consulte la biblioteca de componentes de la interfaz de usuario para ver cómo mostrar modales de error. Pruebe ingresando expresiones regulares no válidas como '(' o '[' en el modal de filtro de palabras.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Go to the main screen
- Enter the 'Custom' mode
- Click change next to the mode selector
- Click on the button with a funnel icon reading 'words filter'
- In the regex field, put any invalid regex expression such as parentheses or brackets
- 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
- Lenguaje dominante
- TypeScript
- Estrellas
- 20.7k
- Forks
- 3.3k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de monkeytypegame/monkeytype
-
Bug: outOfFocusTimeouts array grows unboundedly — cleared timeout ids never removed from array Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
monkeytypegame/monkeytype#8366 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
monkeytypegame/monkeytype#8365 · 1 comentario ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
monkeytypegame/monkeytype#8364 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
monkeytypegame/monkeytype#8363 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
monkeytypegame/monkeytype#8362 · 1 comentario ·
Todos los issues de monkeytypegame/monkeytype
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
diegosouzapw/OmniRoute#14869 ·
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 94/100
-
status: waiting triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
freeCodeCamp/freeCodeCamp#70412 ·
-
Mend: dependency security vulnerability untriaged
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100