* impr: add selfhosting using docker only
* add recaptcha config and docs
* add documentation on the backend-configuration.json file, remove ---redacted--- from example config
---------
Co-authored-by: Jack <jack@monkeytype.com>
* impr: replace JSONSchema with ajv for faster validation
* Remove JSONSchema from packages
* Add ajv in dev-dependencies
* move dep to frontend
* Fix validation schema for different languages and error messages
* fix double space
* different way of showing errors
* por que no los dos
* return on failed schema
---------
Co-authored-by: Miodec <jack@monkeytype.com>
* initial rewrite
* remove title
* remove from dom on hide
* actual command dom
show active
keep active in view
update active index on keypress
* global event only shows commandline
* impr(dev): showing notifications with unhandled errors
* rename functions
* handle hover functions
handle nesting
handle exec
attaching handlers once
* void promise
* no need for async
* move font preview to ui
* add configkey to command
* add function to build single list
* add mouse mode
clearing preview on hide
add config icon
* using new function
* use fw icon
* fix incorrect type
* extract logic
* add support for input commands
* unused error
* update single list
* chevron icon margin
* only focusing when no popups and words are visible
* extract condition
* better type
* remove no icon
* only showing when nothing is already visible
* commandline lists no longer modify the commandline element
dynamically changing which funbox commnands are available
modified searching approach
showing active settings in single mode again
calling before list if needed
* ignore keydown on page transition
* add other ways to show the commandline
* always clearing previews
* incorrect icon being used
* extract logic
* support quick single list mode by starting input with >
* fix test words not being focused
* showing all if in quick single mode
* remove unused code
* rename entry to command
* remove more unused code
* add data- prefix
* rename to data-command-id
* fix input commands not refocusing words
* fix fontsize change not working as intended
* set active index to 0 when going back
* keeping active command in view
* remove console logs
* fix quick single mode
* move file
* add footer events
* add option for subgroup override
fix issue where commands would get hidden after clearing input field
fixed auto scrolling in mouse mode
* rename commands to lists
* add background after to avoid flashing
* getting config key from active subgroup
* updating active command after removing hidden class but before animating
* fix nasty hover behavior
* updating active before animation showing, keeping active after
* add keymap event
* remove comments
* invert if, use return, combine ifs to reduce nesting
* add test event
* popups events
* fix some commands not showing up on a single list
* use new animated modal
* use regex escaping function from misc
* add singlelistdisplay and singlelistdisplaynoicon properties
* add more navigation aliases
* not adding alias if not needed
* rework command filtering
* fix active icon not working
* add custom hide handlers
* fix active command not being kept in view after showing
* unused imports
* remove commandlinelists imports from other files
* delete old file
* remove unused file
* import commandline dynamically
* fix: if skeleton has wrapper, append before building animated modal
* using new parameters
* save skeleton on ready
* rename folder
* add util to get async modules
* remove empty imports
* remove unnecessary code
* unnecessary void
* catching errors and notifying user
* better error message
* making sure all the lists are fetched before getting the single command list
* add tab navigation
* feat: indicate premium users
* frontend
* Test multiple userFlags, remove later
* cleanup
* fix flag alignment on profile and leaderboards
* fix name auto scaling
* update screenshot watermark
* update header text
* use userFlags for lbOptOut
* use flex end
* removeo unused code, increase margin
---------
Co-authored-by: Miodec <jack@monkeytype.com>