* Added highlight modes next word, next two words and next three words
* updating active element to make sure change is visible when applied from the commandline
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* Updated the overlay text of the screenshot button to be more descriptive.
* Update result-screen.ts
added save as alias
* Update sourcecode.txt
reverted change to aria-label
* strings rename
* added alias
* renamed to min speed
* missing string rename
* wpm to speed rename
* converted displayed and inputted values for pace caret to the currently active speed unit
* accepting active speed unit in the commandline for min speed and min burst
* taking input in the currently selected unit for min burst
* displaying min burst in the selected unit
* converting min speed to the current unit
* Added configuration for typing speed unit, removed alwaysShowCPM
* review comments
* fix live-burst, activityChart and results-pb label
* Added support for typing speed unit in account histogram chart
* trigger build
* Update account.ts
* Fix chart scaling and wpm/rawWpm hovers on result page
fix chart scaling and bucket size on account page
* refactor histogramChartData to support 0.5 steps
* Revert dynamic scaling on accounts/result graph
* Refactor histogramChartData to an int[]
* Fix cutoff in account history
* Fix labels on result page
* Limit result chart label to two decimals
* renamed show average wpm to show average speed
* fix scaling on accounts history graph (again), not adding an easteregg 🤫
* hiding by default
* fix scaling on accounts history graph episode three
* move typingSpeedUnit related functions out of Misc
* updating account page if typing speed unit changes
* updating result page if changing units on the result page
* missing buton change
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* backend flow to set hour offset
* added frontend popup to set streak hour offset
* displaying a message that the user can change offset
displaying the actual offset if its already set
* applying offset when checking streaks
* added tests for the new offset
updated old streak tests
* defaulting to undefined
* removing content if offset is already set
* updated the way offset is displayed
* also updating in the local snapshot
* Added Optional Background Data sharing to Theme Share URL, and updated URL Handling to support new JSON format
* Fixed Clipboard Fail Popup
* Do it Properly this time
* Prettier
* err
* err
* removed one margin, updated the other
* updated button text
* updated type
* unnecessary await
* more descriptive variable names
* using shorter param names (urls are limited in length)
* level 1 instead of 0
* better notifications when copying failed
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* Add section input
* Restore code
* Cleaner approach
* Correct current index
* Remove import
* Call punctuation, numbers, funboxes on all words in section
* Plus n adds n words instead of n sections
* Undo
* Fix normal test
* Replace word with section when delimiter is checked
* Restore
* Set progress to current section / section total
* Fix memory funbox
* Fix randomcase
* Fix text generation when random is not enabled
* no word limit if in random section mode
* instead of using a for loop, using a while loop and stopping dynamically
* handling getting next section
tracking section history to avoid repeating sections
* test
* Revert "test"
This reverts commit 50d20fff3d.
* allowing infinite
* fixed words not being added after the first word generation
* not checking section index if infinite word
* throwing if word contains a space (should never happen)
* removed/reverted old approach to this feature
* using input history everytime for now until a better solution is found
* removed unused import
* exporting section index and current section
* code used by the previous approach, most likely will be deleted
* revered a change this pr makes (idk why this was deleted)
* missing comment
* removed comment
* added section progress tracking
word generator now returns a list of section indexes, which is stored in test words module
this array is then used to determine which section the current word belongs to inside timer progress
* better errors
* replacing multiple spaces with one
replacing starting and trailing spaces before splitting
* fixed pipe delmiter non random custom text not working
* extracted logic into constants to make the if statement easier to understand and expand in the future
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* fix: add role missing in aria-label
* fix: add web-kit option to support safari browsers
* fix: change div to link to keep the structure of the others
* fix:add rel to avoid tab access with window.opener
* fix: add missing roles when using aria-label
* fix: delete placeholders
* fix:add webkit to all,comment unused css selectors
* removed placeholder
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* Create graph with ao10, ao100, and pb
* Display best ao10 and 100
* Fix ts errors
* Remove old graph
* Remove smoothing slider and toggle chart style button
* Clean up code
* Populate graph if chartData > 0
* Fix filter not displaying data correctly
* Fix wpm cpm labels
* Update colors using theme colors
* brought back accuracy averages
* different colors
* Add toggle ao10 and ao100
* Change opacity based on toggles
* Persist on refresh
* Fix accountActivity chart point color not updating when changing theme in the command line
* Refactor
* Keep pb color consistent
* removed dot
* smaller buttons, in one row, media queries
* hiding bottom scale
* connected the config properties into 1
* Refactor
* Combine into one loop
* cleanup
removed unused functions
reduced repeating code
removed comments
removed console logs
* removed highest avg 10 and 100 stats
* sweep
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* added button to opt out of leaderboards
* also not allowing daily leaderboards
* also not allowing weekly lb
* added lb opt out notice on the leaderboards
* updated message
* resetting lboptout state on account reset
* Add word filter presets
* updated structure and styling
* updated button classes and click handlers
* removed timeouts to fix annoying jumping
* typescript fixes
* renamed function
* converted file to using single object that defines presets
* using spread
* added right hand preset
using spread
added key position B to the right hand preset
* removed line
* changed text
* Finish rewriting presets in new format
* added home keys filter preset
* removed comment
* Fix home keys preset
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* 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>