* added scale function
* cleaned up merge
* cleaned up scale implementation and created closure for previewing scales
* finalized changes
* fixed ci/de
* switched to upper camel case
* undid accidental changes
* updates
* fixed indexing bug and audioCtxt being intialized
* removed mapping
* updated schema with non-inclusive range for two new sound-on-clicks
---------
Co-authored-by: Bruce Berrios <bberr022@fiu.edu>
Co-authored-by: Bruce Berrios <58147810+Bruception@users.noreply.github.com>
* created file which holds skeletons for popups
* using skeleton
* saving skeleton after the events are bound
* moved click event to a static element
* using skeleton
* added hide and show functions
using skeleton
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* fixed a bug where updating the preset name would not immediately show the update
* using skeleton
* shorter link transition
* using skeleton
* using skeleton
* using skeleton
* fixed a bug where accounts with no pbs would cause misplaced "show all pbs" button
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* fixed quote mod not being sent to the client
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* using state object instead of html attributes
fixed a bug where no tags text would persist even when tags were added to the test
using skeleton
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* removed unused code
* unnecessary import
* unused code
* using skeleton
* changed click handling element
only hiding and restarting the test if init returned true
* using skeleton
returning boolean from init function
* removed console log
* added function to check if a popup is visible
* better visibility check
* rewrote alerts to use state object instead of pushing straight to dom
using skeleton
* better visibility check
* not using skeleton for now
* using skeleton
using state object
better visibility check
* added parent override
* unnecessary code
* changed function to a more generic one
* fixed cookie popup text possibly overflowing popup
* using "isPopupVisible" function instead of a "hasClass" check
added some missing escape key handlers
* using skeleton
* using skeleton
* using skeleton
* using skeleton
* standard popup animation length
* consistent animation timing
* using iselementvisible function
* removed unused function
* using isElementVisible
* proper show and hide functions, added callback funciton on hide,
added noAnim params
* fixed no animation on the logo sub text
* reordered click handlers
* moved code to a fill function
* using proper show and hide functions
added callback on hide param
added no anim and no callback parameters
* added no anim parameter
callback func is optional
* also applying noanimation to hiding animation
* using proper hide and show functions
* using iselementvisible
* using skeleton
* missing space
* storing text area state in custom text
* using skeleton
* setting state on show instead of on hide
* moved click handler
* unused code
* missing parent override
* using skeleton
* no longer waiting for document to be ready
* settings using skeleton
* profile search using skeleton
* page profile using skeleton
* navigating to account if already logged in
* using skeleton
* using skeleton
* emptying result replay and words history on restart
* optimised theme picker
* optimised settings page fill
* performance optimisation
* awaiting promises
* brought back code that was accidentally removed
* async
* addad param to avoid duplicate group update on settings page load
* added main thread yields to remove long tasks
* optimising performance of about page loading
* not awaiting
* breaking up long tasks to optimise performance
* optimised button appending
* fixed avatar being too big
* optimisation
splitting up code
added yields to split tasks
* fixed merge
* removed sleep
* missing chart color update
* updating main chart first
* disabling animation during update
* updating chart colors once instead of on every update
* added one more sleep
* removed sleep causing graphical issues
* update chart regardless if it has data or not
* hiding estimated words typed when no data was found
* Apply debounce on restart test focus state
* Replace sleep and ignore modifier keys for test autofocus
* Update autofocus warning text
Co-authored-by: Andrew Chang <achang3@atlassian.com>
* Save speed stats in leaderboard update
Saves a histogram data structure of speeds for buckets rounded to the nearest 10.
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* API endpoint to get public speed stats
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Add APE class for public stats (WIP)
I created an APE class for accessing public stats. Also stubbed getting and showing the public speed stats on the about page. Haven't implemented the histogram yet though.
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Draw histogram for global speed stats
On about page
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Update histogram colors on theme change
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Fixed out-of-order data in speed histogram
Data was not sorted correctly, which resulted in an incorrect histogram being drawn.
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Public speed stats PR fixes
Small fixes based on PR feedback:
- changed _req to req
- removed unnecessary client version header
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Add endpoint for typing stats
New endpoint to retrieve the public typing stats such as global count of tests completed.
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Renamed public-stats to public
Except in cases where it would cause an identifier named `public` as this is forbidden in strict mode.
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Add stats section to about page
In this commit:
- add a section above about called stats
- display typing stats in three columns
- underneath show the histogram of speeds on english time 60
- make chart responsive
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* Add unit test for Public DAL
Signed-off-by: Brian Evans <ebrian101@gmail.com>
* updated styling
* only requesting data once per session
* going one column on narrow screens
* added option to specify number of decimal poitns
* just showing million instead of abbreviating
updated structure
updated styling
Signed-off-by: Brian Evans <ebrian101@gmail.com>
Co-authored-by: Miodec <jack@monkeytype.com>
* Create state for storing custom text name
* Save custom text name on click
* Add todo
* add some utility functions to custom-text.ts
* Set custom text name to empty upon modification
* now update the custom text progress in localStorage
* rework logic for updating progress in test-logic.ts
* more logic changes
* Keep progress in mind when starting next test after bailout
* reset test once they complete it and minor refactor
* Now set custom text progress to 0 when it is modified
* Add UI for continuing and change var name
* Reset progress if they start it again
* Move functions
* remove debug log
* replaced simple popup with custom popup
* fixed media query
* also setting opacity to 1
* saving long custom text into a separate object
* fixed incorrect saving function
fixed get custom text names function
* setting to empty object structure first
* long list style fix
* showing long texts
handling delete and progress reset
* renamed file
tracking if custom text is long
* unnecessary comment
* showing a warning that editing will disable progress tracking
* checking if text is long
updating progress
* added notifications
* setting custom text
* showing if progress tracking is working
* showing if progress tracking was disabled
* longer notification
* corrected button text
* joining with space
* checking if name is taken
added indicator
Co-authored-by: Miodec <jack@monkeytype.com>