* feat: add /regex-state command to check script enabled status
Adds a new slash command that returns 'on' or 'off' to indicate whether a regex script is currently enabled or disabled.
* refactor: change /regex-state return values from 'on'/'off' to 'true'/'false'
Updates the /regex-state slash command to return boolean string values ('true'/'false') instead of ('on'/'off') for better consistency with standard boolean conventions.
* Migrate group metadata to group chat files
* Skip migration if chat already has metadata
* Fix active group not being set on group conversion
* Improve types in createGroup
* Fix padding in hotswap group avatars
* Fix centering of empty hotswap avatar
* Added automatic backups of migrated data
* Fix 'OVERWRITE' for GC
* Fix metadata parsing order in migration
* Remove color accents from regular migration logs
* Always set gen_id in converted message
* Clone messages before conversion
* Reduce size of add/remove buttons
* Fix group chat file size calculation
* feat: apply preset regexes before scoped regexes
* feat: apply preset regexes before scoped regexes for debugger list
* fix: don't notify reload regexes when save preset through ui button
* docs: add comment for SCRIPT_TYPES order
* fix: updatePreset is wrongly reset preset
* feat: preset regex
* refactor: unify `saveScriptsByType`
* fix: default branch for `saveScriptsByType`
* refactor: resolve some reviews
* fix: lint
* refactor: getPresetName -> getCurrentPresetName
* refactor: unify regex allow operation
* feat: notify whether to reload current chat when preset is changed
* refacotr: set timeout for reload current chat notification
* fix: _ -> lodash
* i18n
* Refactor API ID access
* refactor: replace UNKNOWN type with a separate constant
* refactor: consolidate CSS rules for scoped and preset script blocks
* Extend toast timeout
* Fix bug with moving, refactor
* Refactor bulk toggle operations
* Use for..of for preset application
* refactor: enhance parameter documentation for scriptType in regex functions
* fix: await loadRegexScripts in event handlers
* fix: correct script type in saveScriptsByType for preset handling
* fix: add null checks for preset manager and API ID in regex functions
* feat: implement expandable regex script options in UI
* Always show edit/delete buttons
* Add title attribute to regex script name
* fix: correct class name for regex script display
* Remove extra paddings from script blocks
* fix: ensure preset scripts are only disallowed if currently allowed during rename
* fix: reload on bulk script toggle
* feat: add PRESET_RENAMED_BEFORE event type and emit it during preset renaming
* fix: always preserve preset extensions on rename
* Handle horde in getPresetManager
---------
Co-authored-by: ZoinkCN <zoinkcn@outlook.com>
Co-authored-by: StageDog <aksanajw845@gmail.com>
* Add confirmation for bulk move, add UNKNOWN type, improve JSDoc
* Fix toggle all bulk move visibility
* Improve function documentation
* Refactor currentChatId check and improve JSDoc for getScriptDecorators function
* Check against known values in moveRegexScript
* Fix console warning spam
* Simplify currentChatId check
* Prevent moving scripts into the void
* Make texts translatable
- Add /regex-toggle command, similarly to /extension-toggle
- toggles the state of both global and character-bound scripts
- Update jsdoc being inconsistent
Closes#3613
* continue works same as swipe continued message isn't depth counted
* correct early-out check
* update regex depth setting tooltips for accuracy
* update max tooltip
* remove redundant check
* Allow -1 as a min depth value
---------
Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>