Commit graph

6759 commits

Author SHA1 Message Date
Miodec 123acaecec path 2022-03-10 15:28:58 +01:00
Miodec bc9209e15e storing path in const 2022-03-10 15:26:01 +01:00
Miodec b54cf2b03f incorrect path 2022-03-10 15:24:30 +01:00
Miodec 71a8936bfb fixed incorrect path 2022-03-10 15:20:05 +01:00
Miodec ef14a35df4 fixed random theme not working
closes #2669 and #2668
2022-03-10 15:06:28 +01:00
Miodec b6912c2401 only setting word to correct if highlight mode is not off 2022-03-10 15:00:43 +01:00
Bruce Berrios 746fcbe934
Fix safari issue (#2666) 2022-03-09 23:36:18 +01:00
Bruce Berrios 95a8a32008
Add user permissions for ape keys (#2665)
* Add user permissions for ape keys

* Optional

* Rename
2022-03-09 20:41:50 +01:00
Jack 34e730c6fc
Custom themes storage (#2660)
* Fixed typo

* Created method for adding theme in the UserDAO:

* Created function for checking if custom theme object is valid

* Exported the isThemeValid function

* Added controller for adding customTheme

* Created route for adding custom theme

* Created rateLimit for adding customTheme

* Fixed typo

* Fixed incorrect color length

* Added method for removing, getting and editing custom themes on the backend

* Moved validations from controllers to routes and some aesthetic changes in the user dao

* Started working on frontend and some minor changes in the backend

- Commandline support for custom themes
- Allow user to shift to their custom theme using Shift-click
- Updated the backend to be compatible with some changes
- Create a new custom theme for users with old system to prevent their custom theme loss

* Fixed custom theme type in ape and now new custom theme is created if user clicks the custom tab and doesn't already have one

* Fixed ape type issue

* Format html file

* Fixed wrong tab being active

* Created new custom theme edit section

* Fixed bug where user theme would have impact on icons with custom theme

* Update customThemes API

* Updated the custom theme sharing option to work with multiple custom themes

* Started working on the UI for custom theme buttons

* Added DOM event for clicking custom theme buttons

* Updated the updateActiveButton to work with multiple custom themes

* Removed favorite button for themes and fixed bug where double theme buttons were being added

* Fixed bug where preset theme buttons were not appearing if user has applied custom theme on website load and refreshed

* Moved DOM event for sharing custom theme to more appropriate place

* Integrated the save custom theme button with the changes

* Fixed bug with custom theme tab buttons and theme buttons

* Fixed commented div

* Replaced 'sds' with a meaningful message for custom theme buttons

* Integrated the delete button for deleting custom themes and fixed bug where id of newly added custom theme was not set properly

* Integrated the add button and name field for custom themes editing

* Added addCustomThemeWrapper element

I added it before but seems like vscode and other editors can't handle large files

* Removed some debug statements

* Removed some more debug statements

* Used parial types for custom theme. Thanks Bruce

* Removed unnecssary try catch blocks. Thanks Bruce

* Rephrased custom theme API messages

* Set new theme fields explicitly to prevent validtion failures and rephrased API message

* Replaced let with const

* Replaced let with const for _id

* Replaced let with const and used nullish coalescing

* Improved code quality in User DAO

* Strict equality in user DAO

* Moved validation scheme to a variables at the top of file

* Fixed bugs with strict equality checks

* Renamed themeId to themeID for consistency

* Made customThemes a required type in db to remove unnecessary undefined checks

* Uncommented GET API endpoint

* Prevent colorId being updated on custom theme name chnage

* Removed debug log

* Added loader on api calls

* Commenced shift from customThemeIndex to customThemeId

* Added required to themeColors schema

* Temp fix for validation fail for customThemeId

* Changed default value of customThemeId back to ''

* Temp fix for validation fail for customThemeId

* Fixed minor bug

* Fixed bug where account-controller would pass undefined to ThemeController.set

* Created methods in db.ts for adding, deleting and editing custom themes. Created new interface for raw custom themes and renamed ape methods

* Removed repeating code in account-controller

* Removed repeating code in theme-picker

* Removed setThemes in config

* Fixed minor bug

* Removed repeating code in user DAO

* Made custom themes available to registered users only

* Fixed minor bug

* Removed debug log and updated custom theme commands before showing list

* Added popup for confirming custom theme deletion

* Added custom option for random theme

* Minor improvement

* Workaround for local config firing before firebase initalization

* Removed debug log and created workaround for migration

* Added legacy customTheme config field

* Replaced workaround

* Changed put to patch

* Changed put to patch

* Added customTheme field back

* Integrated customTheme into to feature

* Added notifications for users when they access custom theme cmd option without being logged in

* Removed debug logs and comments

* Replaced literals with constant. Thanks Bruception

* Fixed wrong querySelector parameters and reset custom theme colors after deleting a custom theme

* added notification on save

* duplicating object instead of referencing

* Added return type on function

* Fixed wrong notification code

* spreading default config instead of referencing

* added index, psas, configs, presets

* camel_case

* added ape keys, leaderboards, results, quotes

* Modified setCustomTheme

* Modified setCustomThemeId

* Added tip for random themes settings

* Modified setCustomThemeId

* Now load custom theme before account loading

* Added custom theme compatibility for non-logged in users to theme-controller

* Now update tabs and buttons on custom theme config value change and modified boolean checks to use customTheme instead of customThemeId

* Fixed bug

* Refactoring in theme-controller.ts

* Enable custom theme support in commandline for logged out users

* More refactoring in theme-controller.ts

* Added custom theme compatibility for logged out users

* Removed double events in settings.ts and now turn on custom theme upon applying

* Fixed bug and recursive call

* Fixed bug

* Fixed random theme custom option

* Fix jquery wrong syntax

* Readded notification upon custom theme edit

* One notification upon error only

* Change notification type

* New custom themes now have default colors

* Notification on custom theme edit for non-logged in users

* Refresh buttons upon settings load

* missing gitignore

* updated message

* updated message

* setting config to unchanged when logging in to avoid issues with applying db config

* reverted some over complicated code, excessive auth checks

* removed customthemeid from config

* not setting custom theme id

* removed all customthemeid references

* removed commented code

* removed name field

* added edit button

* unused file

* removed popup

* removed add button, removed text

* removed duplicate code

* added simple popup checkbox support

* whitespace

* added custom theme popups

* removed warning when no custom themes were found

* removed add button click handler

* added function to save custom theme

* saving current theme not default

* removed custom theme id from default config

* not creating new theme by default, just applying

* reacting to customThemeColors save

* unnecessary function call

* removed unused code

* small refactor

* spacing

* unnecessary code

* turned off warnings for non null asertion

* showing theme name when randomising customs

* Revert "turned off warnings for non null asertion"

This reverts commit 433e1dc767.

* optional with default instead

* fixed custom theme colors always loaded on page load

* fixed custom theme buttons not showing up

* fixed various loading issues

* fixed custom theme edit styles

* showing custom in footer, removed unused code

* savaing custom theme colors
fixed typos

* changing theme

* updated custom theme buttons styling

* scaling custom theme buttons on hover

* not updating settings on theme event

* fixed quote id

* only showing custom themes when logged in

* updating save button text depending on auth state

* fixed double notification when trying to save too many custom themes

* fixed custom theme saving when signed out

* removed user check from db

* fixed exception when signed out user tried to open the custom themes command line

* ignoring file when compiling

* typo

* avoiding href errors

* setting href to an existing file
this fixes firefox custom themes not working

* better hex color regex

* spacing

* renamed function

* typo

* destructuring request

* removed unused function

* removed unused code

* removed unused code

* type fix

* removed non capturing group

* saving colors to config before saving custom theme

* encoding in base64

* added handler that can load themes in the old and new format from the url

Co-authored-by: Rizwan Mustafa <rizwanmustafa0000@gmail.com>
Co-authored-by: Rizwan Mustafa <69350358+rizwanmustafa@users.noreply.github.com>
2022-03-09 19:48:22 +01:00
Bruce Berrios 7fa2827a60
Final touches/tuning for ApeKeys (#2663)
* Final touches/tuning to ApeKeys

* Add rate limiting note

* Add malformed status
2022-03-09 19:40:35 +01:00
Miodec 67e7c44e89 reduced shake displacement 2022-03-09 14:28:43 +01:00
Miodec 395c7b9e57 monkey uses raw if blind mode is enabled 2022-03-09 14:27:50 +01:00
Miodec 46832316d8 updated hyper and animation speed thresholds 2022-03-09 14:27:32 +01:00
Miodec e1027ddc70 only showing monkey during the test
closes #2659
2022-03-09 14:12:53 +01:00
Bruce Berrios 2dba957adc
Add public api docs (#2656) by bruce
* Add public documentation

* typo

* added hard limit on the leaderboards

* ignoring worker when compiling

* added leaderboard routes

* leaderboards accept apekeys

* Fix docs

* Fix

* Specify parse base

* Add ape rate limiter

* added documentation link

* updated message

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-03-09 13:02:37 +01:00
Rasmit Devkota 4ebfd98c2c
Added Hindi INSCRIPT Keyboard Layout (#2661) by DrAlienTech
* Added Hindi INSCRIPT Keyboard Layout

* fixed maximum length <= 2 error for Hindi INSCRIPT
2022-03-09 12:51:54 +01:00
Bruce Berrios 79a6cb86ed
Migrate presets to TS (#2662) by bruce 2022-03-09 12:51:20 +01:00
Miodec ef69178abf fixed quote id 2022-03-09 01:31:03 +01:00
Miodec cfbecff59c added mr robot quote 2022-03-08 23:25:51 +01:00
Rizwan Mustafa d5f7e3890c
Remove deprecated frontend (#2658)
* Remove deprecated click calls

* Remove deprecated focus calls

* Remove deprecated keypress event

* Remove deprecated keyCode

* Remove .keydown depracated frontend
2022-03-08 08:01:11 -06:00
Bruce Berrios 9dfb352a40
Update ape keys data model (#2655) by bruce
* Update ape keys data model

* Add use count

* Add safer check
2022-03-08 00:41:04 +01:00
Bruce Berrios 61ebf2cc39
Add error handling for bad requests (#2654) by bruce
* Add error handling for bad requests

* Fix status code

* Update

* Tidy status codes
2022-03-07 22:16:42 +01:00
Bruce Berrios f4bfb938b2
Consolidate personal bests endpoints (#2653) 2022-03-07 11:25:12 -05:00
Bruce Berrios 3240abc22e
Enable strict null checks in backend (#2639)
* Enable strict null checks in backend

* Fix

* Use non-null assertion

* Add none
2022-03-07 11:10:07 -05:00
Bruce Berrios ff0ee93fe4
Fix tokenizer (#2652) 2022-03-07 15:32:59 +01:00
Miodec 244b35e071 removed jquery cookie 2022-03-07 15:10:31 +01:00
Miodec f144a03336 Merge branch 'master' of https://github.com/Miodec/monkeytype 2022-03-07 14:39:14 +01:00
Miodec 0ff1d347a6 fixed ignore 2022-03-07 14:39:09 +01:00
Miodec 44c75552ad renamed 2022-03-07 14:37:53 +01:00
Miodec 88d1529706 added worker to ignore 2022-03-07 14:36:55 +01:00
Miodec d0d1ec10d3 typo 2022-03-07 14:24:04 +01:00
Bruce Berrios 538fb9d385
Improve quote search experience (#2644) by Bruception
* Initial

* Improve

* Fix comment

* Add stemming and idf

* Remove normalization

* Move idf calc outside
2022-03-07 14:17:15 +01:00
Evan 1622f37efd
Add Custom Text Storage (#2648) by Fero
* Add custom text

* changed function return type

* added popups for saving and deleting saved texts

* moved saved texts to their own file
logic changes
styling changes

Co-authored-by: Miodec <bartnikjack@gmail.com>
2022-03-07 14:16:00 +01:00
Ashkan Arabi 965482959d
Added 1k and 5k to Persian (#2650) by AshkanArabim
* Added 1k and 5k to Persian

* Update persian_1k.json

* Update persian_5k.json
2022-03-07 14:14:32 +01:00
Abinawan Bhattarai d914de9ebe
Updated Nepali Language and Added Nepali Quotes. (#2651) by Abinawan
* Create nepali.json

* Update _groups.json

* Update _list.json

* Update _groups.json

* Update _list.json

* Update nepali.json

* Update nepali.json

* Updated nepali.json

[-] Removed some words that had similar meaning but was different due to Nepali language having different word for different kind of people (Elder, Younger, Friends, Parents, etc).
[-] Removed some letters from words which had no meaning while typing in single word like हाम्रोमा(in ours) and हाम्रो(ours), word मा is removed.
[+] Words are arranged in alphabetical order to make easier incase someone wants to check either there is grammatical error.

* Create nepali_1k.json

* Update _list.json

* Update _groups.json

* Create nepali.json

* Update nepali.json

* Update nepali.json

* Update nepali.json

* Update nepali.json
2022-03-07 14:14:09 +01:00
Miodec 3521008928 no need to modify local keys - they are redownloaded every time the popup is shown 2022-03-06 23:44:32 +01:00
Miodec bd0c2b9026 not storing ape keys in snapshot,
redownloading when opening the ape keys popup to get latest dates
2022-03-06 23:42:22 +01:00
Miodec 8049cb661d hiding ape keys for now 2022-03-06 18:37:02 +01:00
Miodec f8cc82cd23 always rounding to 2 after calculations are done 2022-03-06 18:36:25 +01:00
Miodec 8af10af599 added enpoints for getting personal bests 2022-03-06 18:33:36 +01:00
Miodec 83c1e8adf5 added rate limiting for ape key endpoints 2022-03-06 18:33:20 +01:00
Miodec 08d7ded235 changed error code 2022-03-06 18:13:58 +01:00
Miodec 16a982e71e added decoded token types 2022-03-06 17:16:33 +01:00
Jack f221326f47
Added Ape Keys Popup (#2642)
* added disabled field to simple popup input

* inverted disabled logic

* fixed initial value completely not working in simple popups

* loading ape keys into the snapshot

* added type for ape keys

* only vertical resize for textareas

* added before init function
added can close parameter
correclty handling textearas

* storing active popup in a variable

* fixed click handler

* hiding text element if string is empty

* updated ape keys types

* added click handler to open ape keys popup

* added simple poopups for generating, editing and deleting ape keys

* added ape keys popup

* updated ape key type

* ape keys is optional

* not getting ape keys by default

* added function to get ape keys

* refactor

* using last used on property
2022-03-06 09:34:48 -06:00
Miodec 134389515c difficulty change clears active challenge 2022-03-06 15:34:19 +01:00
Bruce Berrios 5ae8ff0759
Remove quote languages check (#2645) 2022-03-06 13:33:53 +01:00
Bruce Berrios 7d19f54828
Add last used on logic (#2643)
* Add last used on logic

* Remove lodash
2022-03-05 21:25:30 -05:00
Bruce Berrios 6645c2d4bd
Fix (#2641) 2022-03-06 02:09:06 +01:00
Sagittarius 97f6a4ff8e
New Quotes German (#2640)
* New Quotes German

* Update german.json

* Update german.json

* Update german.json

* Update german.json

* Update german.json

* Update german.json
2022-03-05 16:19:44 -05:00
Bruce Berrios 5aa6fd7621
Remove mongo types (#2637) 2022-03-04 19:20:40 -06:00