forked from monkeytypegame/monkeytype
-
Notifications
You must be signed in to change notification settings - Fork 0
feat: Asdf (@someone) #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…) (monkeytypegame#6909) ### Description Made it so all \t are converted to tab characters. ### Closes Fixes monkeytypegame#6906 --------- Co-authored-by: Miodec <jack@monkeytype.com>
### Description Changed punctuation in the about page. We can also make the text in the parenthesis a standalone sentence by just removing the parenthesis.
…#6914) ### Description <!-- Please describe the change(s) made in your PR --> ### Checks - [ ] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [ ] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [ ] Add language to `packages/schemas/src/languages.ts` - [ ] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [ ] Add language json file to `frontend/static/languages` - [ ] Adding a theme? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md) - [ ] Add theme to `packages/schemas/src/themes.ts` - [ ] Add theme to `frontend/src/ts/constants/themes.ts` - [ ] Add theme css file to `frontend/static/themes` - [ ] Add some screenshot of the theme, especially with different test settings (colorful, flip colors) to your pull request - [x] Adding a layout? - [x] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [x] Add layout to `packages/schemas/src/layouts.ts` - [x] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md) - [ ] Add font file to `frontend/static/webfonts` - [ ] Add font to `packages/schemas/src/fonts.ts` - [ ] Add font to `frontend/src/ts/constants/fonts.ts` - [ ] Check if any open issues are related to this PR; if so, be sure to tag them below. - [ ] Make sure the PR title follows the Conventional Commits standard. (https://www.conventionalcommits.org for more info) - [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. <!-- label(optional scope): pull request title (@your_github_username) --> <!-- I know I know they seem boring but please do them, they help us and you will find out it also helps you.--> Closes # <!-- the issue(s) your PR resolves if any (delete if that is not the case) --> <!-- please also reference any issues and or PRs related to your pull request --> <!-- Also remove it if you are not following any issues. --> <!-- pro tip: you can mention an issue, PR, or discussion on GitHub by referencing its hash number e.g: [monkeytypegame#1234](monkeytypegame#1234) --> <!-- pro tip: you can press . (dot or period) in the code tab of any GitHub repo to get access to GitHub's VS Code web editor Enjoy! :) -->
…opilot) (monkeytypegame#6912) Implements temporary email detection for the registration email input field on the login page. When users focus on the email input, the system dynamically imports the `disposable-email-domains-js` package to check for temporary/disposable email addresses. ## Changes Made - **Dynamic Import**: Added lazy loading of `disposable-email-domains-js` package that triggers on email input focus - **Email Validation Enhancement**: Extended the existing email validation in `login.ts` to include temporary email detection - **User Warning**: Shows warning message "Be careful when using temporary emails - you will need it to log into your account" for detected temporary emails - **Graceful Degradation**: Handles module import failures silently without breaking existing functionality - **Dependency Management**: Added `disposable-email-domains-js` to frontend package dependencies ## Technical Implementation The implementation integrates seamlessly with the existing `validateWithIndicator` system: ```typescript // Dynamic import on focus emailInputEl.addEventListener("focus", async () => { if (!moduleLoadAttempted) { moduleLoadAttempted = true; try { disposableEmailModule = await import("disposable-email-domains-js"); } catch (e) { // Silent failure - continues without temp email detection } } }); // Validation check if (disposableEmailModule && disposableEmailModule.isDisposableEmail) { if (disposableEmailModule.isDisposableEmail(email)) { return { warning: "Be careful when using temporary emails - you will need it to log into your account" }; } } ``` ## Key Features - **Non-blocking**: Module only loads when needed and failures don't interrupt the user experience - **Warning Level**: Uses the existing warning system, allowing users to continue with registration - **Preserved Functionality**: All existing email validation (education emails, typos) continues to work unchanged - **Performance Optimized**: Lazy loading prevents unnecessary network requests until the feature is actually used ## Testing Verified that: - Temporary emails (e.g., mailinator.com, 10minutemail.com) show appropriate warnings - Regular emails (e.g., gmail.com, outlook.com) pass validation normally - Education emails continue to show existing warnings - Module import failures are handled gracefully - All existing validation behavior is preserved <screenshot>   </screenshot> Resolves the requirement to detect temporary emails while maintaining a smooth user experience and backward compatibility. > [!WARNING] > > <details> > <summary>Firewall rules blocked me from connecting to one or more addresses (expand for details)</summary> > > #### I tried to connect to the following addresses, but was blocked by firewall rules: > > - `https://api.github.com/repos/mziyut/disposable-email-domains-js/contents/package.json` > - Triggering command: `curl -s REDACTED` (http block) > > If you need me to access, download, or install something from one of these locations, you can either: > > - Configure [Actions setup steps](https://gh.io/copilot/actions-setup-steps) to set up my environment, which run before the firewall is enabled > - Add the appropriate URLs or hosts to the custom allowlist in this repository's [Copilot coding agent settings](https://github.com/monkeytypegame/monkeytype/settings/copilot/coding_agent) (admins only) > > </details> <!-- START COPILOT CODING AGENT TIPS --> --- ✨ Let Copilot coding agent [set things up for you](https://github.com/monkeytypegame/monkeytype/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot) — coding agent works faster and does higher quality work when set up for your repo. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Miodec <13181393+Miodec@users.noreply.github.com> Co-authored-by: Jack <jack@monkeytype.com>
1. when a custom theme is active preview of regular theme was not applied, introduced with monkeytypegame@fdead53 2. when custom theme is active previewing other custom themes set the color to the active custom theme first, then the selected one causing flashing To reproduce: 1. preview of regular theme not working - create a custom theme with black background, activate it - open commandline to preview a regular theme 2. custom theme colors get set multiple times - create a custom theme with white background called white and activate it - create to custom themes with black background called black1 and black2 - switch preview between black1 and black2
…stic-Fire) (monkeytypegame#6897) ### Description - Fixed a visual bug in the updateXp() function where claiming rewards would update any visible profile - Added same user check when updating XP from alerts modal - Check uid or displayname, when sameUserCheck is true and the activePage is "profile". https://github.com/user-attachments/assets/bd6ec3ca-14ea-4021-a889-7c1931ed6888 ### Checks - [ ] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [ ] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [ ] Add language to `packages/schemas/src/languages.ts` - [ ] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [ ] Add language json file to `frontend/static/languages` - [ ] Adding a theme? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md) - [ ] Add theme to `packages/schemas/src/themes.ts` - [ ] Add theme to `frontend/src/ts/constants/themes.ts` - [ ] Add theme css file to `frontend/static/themes` - [ ] Add some screenshot of the theme, especially with different test settings (colorful, flip colors) to your pull request - [ ] Adding a layout? - [ ] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [ ] Add layout to `packages/schemas/src/layouts.ts` - [ ] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md) - [ ] Add font file to `frontend/static/webfonts` - [ ] Add font to `packages/schemas/src/fonts.ts` - [ ] Add font to `frontend/src/ts/constants/fonts.ts` - [x] Check if any open issues are related to this PR; if so, be sure to tag them below. - [x] Make sure the PR title follows the Conventional Commits standard. (https://www.conventionalcommits.org for more info) - [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. --------- Co-authored-by: Miodec <jack@monkeytype.com>
…onkeytypegame#6927) ### Description There was a bug in which the displayed text in the custom text modal was not being saved when submitted. This occurred when users opened the custom text modal while taking a test with practice words. The new behavior is clicking "ok" in the custom text modal calls `resetBefore()` from `practise-words.ts` to prevent the test from reverting to the previous list of words. ### Tests |Action|Behavior| |---|---| |Submit some text in the custom text modal without practicing words|The text in the modal's text area is displayed in the test| |Submit some text in the custom text modal during a test with practice words|The text in the modal's text area is displayed in the test| |set the custom text to practice words twice in a row|The text in the modal's text area is displayed in the test| |change the custom text during a test with practice words|The text in the modal's text area is displayed in the test| ### Checks - [ ] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [ ] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [ ] Add language to `packages/schemas/src/languages.ts` - [ ] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [ ] Add language json file to `frontend/static/languages` - [ ] Adding a theme? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md) - [ ] Add theme to `packages/schemas/src/themes.ts` - [ ] Add theme to `frontend/src/ts/constants/themes.ts` - [ ] Add theme css file to `frontend/static/themes` - [ ] Add some screenshot of the theme, especially with different test settings (colorful, flip colors) to your pull request - [ ] Adding a layout? - [ ] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [ ] Add layout to `packages/schemas/src/layouts.ts` - [ ] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md) - [ ] Add font file to `frontend/static/webfonts` - [ ] Add font to `packages/schemas/src/fonts.ts` - [ ] Add font to `frontend/src/ts/constants/fonts.ts` - [ ] Check if any open issues are related to this PR; if so, be sure to tag them below. - [x] Make sure the PR title follows the Conventional Commits standard. (https://www.conventionalcommits.org for more info) - [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. <!-- label(optional scope): pull request title (@your_github_username) --> <!-- I know I know they seem boring but please do them, they help us and you will find out it also helps you.-->
### Description <!-- Please describe the change(s) made in your PR --> addition of kuntem-jq, a variation of kuntem featuring a jq swap that is better in the english languange and what i use personally ### Checks - [ ] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [ ] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [ ] Add language to `packages/schemas/src/languages.ts` - [ ] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [ ] Add language json file to `frontend/static/languages` - [ ] Adding a theme? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md) - [ ] Add theme to `packages/schemas/src/themes.ts` - [ ] Add theme to `frontend/src/ts/constants/themes.ts` - [ ] Add theme css file to `frontend/static/themes` - [ ] Add some screenshot of the theme, especially with different test settings (colorful, flip colors) to your pull request - [x] Adding a layout? - [x] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [x] Add layout to `packages/schemas/src/layouts.ts` - [x] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md) - [ ] Add font file to `frontend/static/webfonts` - [ ] Add font to `packages/schemas/src/fonts.ts` - [ ] Add font to `frontend/src/ts/constants/fonts.ts` - [ ] Check if any open issues are related to this PR; if so, be sure to tag them below. - [ ] Make sure the PR title follows the Conventional Commits standard. (https://www.conventionalcommits.org for more info) - [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. <!-- label(optional scope): pull request title (@your_github_username) --> <!-- I know I know they seem boring but please do them, they help us and you will find out it also helps you.--> Closes # <!-- the issue(s) your PR resolves if any (delete if that is not the case) --> <!-- please also reference any issues and or PRs related to your pull request --> <!-- Also remove it if you are not following any issues. --> <!-- pro tip: you can mention an issue, PR, or discussion on GitHub by referencing its hash number e.g: [monkeytypegame#1234](monkeytypegame#1234) --> <!-- pro tip: you can press . (dot or period) in the code tab of any GitHub repo to get access to GitHub's VS Code web editor Enjoy! :) -->
…e#6929) move all legacy test value migration into a central place, update the tests to only check if that was called, test replaceLegacyValues
…ability to hide chart data (@Miodec) (monkeytypegame#6907)
!nuf also adds greek characters closes monkeytypegame#7036
…monkeytypegame#7038) - quick restarting immediately after some input makes the caret fail to reset its position sometimes. https://github.com/user-attachments/assets/d9e1def5-d8f6-4af2-845c-778c89279849 this happens because the reset of caret's position that should happen on the callback inside `requestAnimationFrame` in `caret.goTo()` (triggered in `TestUI.updateWordsWrapperClasses()`) is cancelled by a later call to `caret.goTo()` (triggered by `TestUI.focusWords()`). However the second call sets the position directly without stopping previous animation `$('#caret').stop().animate()`. As a result, the earlier animation (caused by last input) continues after the reset, if the restart was done fast enough. - update some previous comments.
…dalaba) (monkeytypegame#7043) - this happens if words were removed (due to overflowing the wrapper) before turning the tape off https://github.com/user-attachments/assets/97be5efb-4a37-46b7-baa2-dd482e84a43c this is a regression introduced in monkeytypegame#6932
…@Rowan441) (monkeytypegame#7025) ### Description fixes monkeytypegame#6972 The setup logic for the "tags", "funbox", and "language" advanced filters are only run on the first load. So adding a tag in the /settings won't make the "tags" multiselect render when you navigate back to the /account page unless you reload. Added logic to add / destroy the "tags" multiselect if you create your first tag or delete your last tag. <!-- Please describe the change(s) made in your PR --> ### Checks - [ ] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [ ] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [ ] Add language to `packages/schemas/src/languages.ts` - [ ] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [ ] Add language json file to `frontend/static/languages` - [ ] Adding a theme? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md) - [ ] Add theme to `packages/schemas/src/themes.ts` - [ ] Add theme to `frontend/src/ts/constants/themes.ts` - [ ] Add theme css file to `frontend/static/themes` - [ ] Add some screenshot of the theme, especially with different test settings (colorful, flip colors) to your pull request - [ ] Adding a layout? - [ ] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [ ] Add layout to `packages/schemas/src/layouts.ts` - [ ] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md) - [ ] Add font file to `frontend/static/webfonts` - [ ] Add font to `packages/schemas/src/fonts.ts` - [ ] Add font to `frontend/src/ts/constants/fonts.ts` - [x] Check if any open issues are related to this PR; if so, be sure to tag them below. - [x] Make sure the PR title follows the Conventional Commits standard. (https://www.conventionalcommits.org for more info) - [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. <!-- label(optional scope): pull request title (@your_github_username) --> <!-- I know I know they seem boring but please do them, they help us and you will find out it also helps you.--> Closes monkeytypegame#6972 <!-- the issue(s) your PR resolves if any (delete if that is not the case) --> <!-- please also reference any issues and or PRs related to your pull request --> <!-- Also remove it if you are not following any issues. --> <!-- pro tip: you can mention an issue, PR, or discussion on GitHub by referencing its hash number e.g: [monkeytypegame#1234](monkeytypegame#1234) --> <!-- pro tip: you can press . (dot or period) in the code tab of any GitHub repo to get access to GitHub's VS Code web editor Enjoy! :) -->
### Description <!-- Please describe the change(s) made in your PR --> ### Checks - [x] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [ ] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [ ] Add language to `packages/schemas/src/languages.ts` - [ ] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [ ] Add language json file to `frontend/static/languages` - [ ] Adding a theme? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md) - [ ] Add theme to `packages/schemas/src/themes.ts` - [ ] Add theme to `frontend/src/ts/constants/themes.ts` - [ ] Add theme css file to `frontend/static/themes` - [ ] Add some screenshot of the theme, especially with different test settings (colorful, flip colors) to your pull request - [ ] Adding a layout? - [ ] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [ ] Add layout to `packages/schemas/src/layouts.ts` - [ ] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [themes documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md) - [ ] Add font file to `frontend/static/webfonts` - [ ] Add font to `packages/schemas/src/fonts.ts` - [ ] Add font to `frontend/src/ts/constants/fonts.ts` - [x] Check if any open issues are related to this PR; if so, be sure to tag them below. - [x] Make sure the PR title follows the Conventional Commits standard. (https://www.conventionalcommits.org for more info) - [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. <!-- label(optional scope): pull request title (@your_github_username) --> <!-- I know I know they seem boring but please do them, they help us and you will find out it also helps you.--> Closes # <!-- the issue(s) your PR resolves if any (delete if that is not the case) --> <!-- please also reference any issues and or PRs related to your pull request --> <!-- Also remove it if you are not following any issues. --> <!-- pro tip: you can mention an issue, PR, or discussion on GitHub by referencing its hash number e.g: [monkeytypegame#1234](monkeytypegame#1234) --> <!-- pro tip: you can press . (dot or period) in the code tab of any GitHub repo to get access to GitHub's VS Code web editor Enjoy! :) -->
Co-authored-by: Miodec <jack@monkeytype.com>
Fixed a typo in one quote and added others. --------- Co-authored-by: Miodec <jack@monkeytype.com>
make some friends on monkeytype --------- Co-authored-by: Miodec <jack@monkeytype.com>
…game#6747) replace sortable table on accounts page with `SortedTable`
…keytypegame#7060) When build fails for some reason the generate version step also failed because the `/dist` directory is missing. This was hiding other problems like an error in the fontawesome step. Also changes the trigger for the frontend build to include `html` files.
…game#7062) Store sorting of the friends list in local storage and apply on load
…rdhan12) (monkeytypegame#7037) - Add new "custom generator" button to custom text modal - Create generator modal with character input and presets - Support min/max word length and word count configuration - Include presets for alphas, numbers, symbols, bigrams, trigrams - Add code-specific patterns for programming practice Closes monkeytypegame#6941 ### Description Adds a custom character generator to the custom text modal, allowing users to generate random "words" from a custom set of characters or strings. Useful for practicing specific character combinations, especially for programmers who want to improve typing speed with symbols and patterns commonly used in code. ### Testing 1. Open custom text modal 2. Click "custom generator" 3. Try presets or enter custom characters 4. Adjust word length and count 5. Click "Set" or "Add" --------- Co-authored-by: Amp <amp@ampcode.com> Co-authored-by: Miodec <jack@monkeytype.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Checks
packages/schemas/src/languages.tsfrontend/src/ts/constants/languages.tsfrontend/static/languagespackages/schemas/src/themes.tsfrontend/src/ts/constants/themes.tsfrontend/static/themespackages/schemas/src/layouts.tsfrontend/static/layoutsfrontend/static/webfontspackages/schemas/src/fonts.tsfrontend/src/ts/constants/fonts.tsCloses #