Commit Graph

74 Commits

Author SHA1 Message Date
Cohee
de335a4a96 QR: Add toggle to hide popout button 2024-08-20 23:06:36 +03:00
LenAnderson
88d3771863 compile LESS 2024-07-30 16:00:41 -04:00
Wolfsblvt
7c27211bc9 QR label alignment/wrapping 2024-07-30 20:51:55 +02:00
LenAnderson
2470f775e2 Merge branch 'staging' into parser-followup-2 2024-07-28 08:32:25 -04:00
LenAnderson
ae90966f43 add debugger button states 2024-07-18 19:57:05 -04:00
LenAnderson
4340143b7b fix "Fix keyboard interaction on item adder" 2024-07-18 18:11:32 -04:00
LenAnderson
ab6b7f6200 add icon to QR switcher "switch sets" 2024-07-18 18:06:52 -04:00
Wolfsblvt
240048f833 Fix gap between icon and label, label min width 2024-07-17 20:04:01 +02:00
Wolfsblvt
a4a38e662e Fix keyboard interaction on item adder 2024-07-17 19:26:54 +02:00
Wolfsblvt
9d7ea745b2 Add 1px margin to qr item adder 2024-07-17 19:24:20 +02:00
Wolfsblvt
b291014a95 Resize FA icon in QR editor, add label caption 2024-07-17 19:20:38 +02:00
LenAnderson
25c86b65ac add quick QR switcher to editor 2024-07-16 10:51:02 -04:00
LenAnderson
ff39902f12 align show label checkbox on baseline 2024-07-15 18:08:44 -04:00
LenAnderson
db1094e391 add block comments with shortcut and breakpoint shortcut 2024-07-14 18:58:13 -04:00
Cohee
b7a1474d7b Switch to dynamic viewport units 2024-07-15 00:42:16 +03:00
LenAnderson
e256e55268 remove traces of execute on hide 2024-07-14 17:01:08 -04:00
LenAnderson
95cc4d3ccb add minimized debugger 2024-07-14 16:58:19 -04:00
LenAnderson
ddce6c4e89 clear QR Set color and bg adjustments 2024-07-14 14:13:57 -04:00
LenAnderson
a8d4e12419 adjust QR set colors for combined buttons 2024-07-13 15:03:52 -04:00
LenAnderson
9f9553db44 add QR set colors 2024-07-13 14:45:35 -04:00
LenAnderson
387ef83b72 nowrap in debugger call stack source 2024-07-13 14:15:55 -04:00
LenAnderson
40c5430b14 fix debug button mask repeat 2024-07-12 15:05:57 -04:00
LenAnderson
9446c487e9 add debugger icons 2024-07-12 13:41:55 -04:00
LenAnderson
ba1761d90a more export/import options
- export QR as JSON
- copy QR to clipboard
- cut QR (copy to clipboard and delete)
- transfer QR to other QR Set
- paste QR from clipboard
- import QR from JSON file
- add/paste/import buttons between existing QRs
2024-07-10 17:34:48 -04:00
LenAnderson
ffd44b622f add font-awesome icons to QR buttons 2024-07-09 13:28:21 -04:00
LenAnderson
aed6952a37 align source right 2024-07-09 08:21:39 -04:00
LenAnderson
75317f3eb4 better stepping into other scripts, with source indicator 2024-07-08 18:07:37 -04:00
LenAnderson
d8dc16d6c1 show scrollbars with noSyntax 2024-06-25 08:20:05 -04:00
LenAnderson
8f98a60e7e merge staging 2024-06-24 16:44:33 -04:00
Cohee
7a27c29695 #2416 Recompile popup styles 2024-06-24 21:37:21 +03:00
LenAnderson
7cdc4c5713 debugger 2024-06-23 14:27:18 -04:00
LenAnderson
bc40ee084d debugger 2024-06-23 14:19:10 -04:00
LenAnderson
ef5d4e394b debugger 2024-06-23 11:31:07 -04:00
LenAnderson
9bcfb9ab26 debugger 2024-06-22 15:22:51 -04:00
LenAnderson
e964a10612 debugger 2024-06-22 10:44:34 -04:00
LenAnderson
3b6f4dee2c debugger 2024-06-20 15:53:30 -04:00
LenAnderson
538724739b debugger stuff 2024-06-20 13:06:58 -04:00
LenAnderson
377f3892f7 Merge branch 'staging' into parser-enum-stuff 2024-06-19 09:47:01 -04:00
Wolfsblvt
dca81aef3d Small fixes to /popup, /buttons and QR popup
- FIx /popup and /buttons commands to use the new popups
- Change /buttons to utilize data results
- Fix "hide while executing" option from QR editor
- Fix QR editor throwing an error on execution
2024-06-19 01:40:22 +02:00
LenAnderson
eb02ca95f9 debugger basics rough 2024-06-18 14:29:29 -04:00
Wolfsblvt
96f04a1c49 Merge branch 'staging' into smol-tag-improvements 2024-06-13 23:40:19 +02:00
Len
aa4bdec79c
Fix syntax highlight editor (#2300)
* add Noto Sans Mono as default monospace font

* fix ::selection for syntax highlighted editor

* add full noto sans mono

* add explicit "overflow: auto" to textarea to stop Firefox from freaking out

* add syntax hightlight disable toggle

* fix noto sans mono path

* fix details position on scroll

* disable pointer events on autocomplete wrap

* fix for Firefox bug using relative colors

* Shorten font file names.
So that I won't have to scroll the list horizontally

---------

Co-authored-by: LenAnderson <Anderson.Len@outlook.com>
Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-06-13 21:05:50 +03:00
Wolfsblvt
d14af1592e Refactor naming/structure of popup CSS classes
- Refactor naming/structure of popup CSS classes
- Prepare Popup utility of opening/showing dialogs
2024-06-09 22:02:51 +02:00
Wolfsblvt
c939c544e2 Rename popup css classes 2024-05-31 21:59:26 +02:00
LenAnderson
bc4a8fbe1d fix qr editor height on narrow 2024-05-18 14:49:33 -04:00
LenAnderson
36f7bc4aae reduce qr editor small screen height 2024-05-15 15:41:26 -04:00
LenAnderson
b6f47c9927 prevent overflow of command results 2024-05-15 09:51:23 -04:00
LenAnderson
87b61f7cff fix QR editor on narrow screen 2024-05-15 08:27:22 -04:00
Len
1d75b98393
STscript Parser Rewrite (#1965)
* set isForced to true on input

* make floating auto-complete follow horizontal scrolling

* add callable closure vars

* changes to /let and /var for callable closures

* fix error message

* fix scope for closure arguments

* if should return the pipe result from closures

* use /run to call closures and no arguments on immediate closures

* throw exception from QRs window-function if no match

* when to show autocomplete vs info only

* autocomplete positioning

* autocomplete styling

* add theming to autocomplete (theme, dark, light)

* improve autocomplete show/hide logic and editor selection

* use blur tint color instead of chat tint color and use blur setting

* cleanup and docs

* use scope macros for QR args

* add enter to select autocomplete

* fix no executor found

* cleanup and comment

* fix alias list in help string

* fallback to empty string piped value if null or undefined

* fix typo

* blur textarea on ctrl+enter execute (and refocus after)

* stop executeSlashCommand if parser throws

* move /let and /var callbacks into functions

* switch textarea to monospace when value starts with slash

* add double pipe a pipe breaker

* fix /? slash

* remove some logging

* add "/:name" as shorthand for "/run name" after all

* move shit around

* fix error message

* use testRunShorthandEnd

* use parseQuotedValue and parseValue to determine name for "/:"

QR labels and set names can include spaces

* add some adjustments to make autocomplete work properly

some hint in there about "/:" would still be nice

* add autocomplete style  selector

* only strip quotes from subcommand if they are at both ends

* fix JSDoc

* escaping

* allow open quotes on dry run

* throwing shit at the wall for /: autocomplete

* escapes only for symbols

* clean up autocomplete

* improve performance

* fix scope macros

* remove unescaping of pipes

* fix macros in scope copy

* fix "/? slash"

* don't run parser for getNameAt if text has not changed

* fix options filter

* re-enable blur listener

* restore selection on non-replace select

* fix for escaping first character of value

* add support for {{pipe}} and {{var::}} closures

* add index support to var macro

* add scoped var macro to macro help

* more escape fixes

* reduce autocomplete render debounce

* cleanup

* restore old escape handling and parser flag for strict escaping

* fix "no match" autocomplete message

* add dummy commands for comments and parser flag

* fix type annotations

* somewhat safer macro replacements

* fix autocomplete select on blank / "no match"

* fix cutting off handled part in substitution

* add parser flag REPLACE_GETVAR

Replaces all {{getvar::}} and {{getglobalvar::}} macros with {{var::}}.
Inserts a series of command executors before the command with the macros that:
- save {{pipe}} to a var
- call /getvar or /getglobalvar to get the variable used in the macro
- call /let to save the retrieved variable
- return the saved {{pipe}} value

This helps to avoid double-substitutions when the var values contain text that could be interpreted as macros.

* remove old parser

* fix send on enter when no match

* deal with pipes in quoted values (loose escaping)

* add default parser flags to user settings

* allow quoted values in unnamed argument

* set parser flag without explicit state to "on"

* add click hint on parser error toast

* dirty more detailed cmd defs

* remove name from unnamed arg

* move autocomplete into class and floating with details

* replace jQuery's trigger('input') on #send_textarea with native events because jQuery does not dispatch the native event

* fix ctrl+space

* fix arrow navigation

* add comments

* fix pointer block

* add static fromProps

* fix up dummy commands

* migrate all commands to addCommandObject

* remove commented comment command

* fix alias in details

* add range as argument type

* switch to addCommandObject

* switch to addCommandObject

* fix height

* fix floating details position on left

* re-enable blur event

* use auto width for full details on floating autocomplete

* auto-size floating full details

* fix typo

* re-enable blur listener

* don't prevent enter when selected item is fully typed out

* add autocomplete details tooltips

* add language to slash command examples

* move makeItem into option and command and fix click select

* use autocomplete parts in /? slash

* fix alias formatting

* add language to slash command examples

* fix details position on initial input history

* small screen styles

* replace registerSlashCommand with detailed declarations

* put name on first line

* add missing returns

* fix missing comma

* fix alias display in autocomplete list

* remove args from help string

* move parser settings to its own section

* jsdoc

* hljs stscript lang

* add hljs to autocomplete help examples

* add missing import

* apply autocomplete colors to stscript codeblocks (hljs)

* add fromProps

* cache autocomplete elements

* towards generic autocomplete

* remove unused imports

* fix blanks

* add return types

* re-enable blur

* fix blank check

* Caption messages by id

* add aborting command execution

* fix return type

* fix chat input font reset

* add slash command progress indicator

* add missing return

* mark registerSlashCommand deprecated

* why??

* separate abort logic for commands

* remove parsing of quoted values from unnamed arg

* add adjustable autocomplete width

* revert stop button pulse

* add progress and pause/abort to QR editor

* add resize event on autocomplete width change

* add key= argument to all get vars

* refactoring

* introduce NamedArgumentAsignment

* add TODOs

* refactoring

* record start and end of named arg assignment

* refactoring

* prevent duplicate calls to show

* refactoring

* remove macro ac

* add secondary autocomplete and enum descriptions

* add syntax highlighting to QR editor

* add enum descriptions to /while

* add /let key=... to scope variable names

* add unnamed argument assignment class and unnamed argument splitting

* fix QR editor style

* remove dash before autocomplete help text

* add autocomplete for unnamed enums

* fix remaining dom after holding backslash

* fix for unnamed enums

* fix autocomplete for /parser-flag

* add parser-flag enum help

* fix type annotations

* fix autocomplete result for /:

* add colored autocomplete type icons

* collapse second line autocomplete help if empty

* mark optional named args in autocomplete

* fix when what

* remove duplicate debug buttons

* dispatch input on autocomplete select

* prevent grow from editor syntax layer

* add auto-adjust qr editor caret color

* remove text-shadow from autocomplete

* join value strings in /let and /var

* add /abort syntax highlight

* fix attempting secondary result when there is none

* rename settings headers and split autocomplete / stscript

* add parser flag tooltips

* add tooltips to chat width stops

* fix typo

* return clone of help item

* fix enum string

* don't make optional notice for autocomplete arguments smaller

* avoid scrollbar in chat input

* add rudimentary macro autocomplete

* strip macro from helptext

* finally remove closure delimiters around root

* cleanup

* fix index stuff for removed closure delimiters

* fix type hint

* add child commands to progress indicator

* include sub-separator in macro autocomplete

* remove all mentions of interruptsGeneration and purge

* remove unused imports

* fix syntax highlight with newline at end of input

* cleanup select pointer events

* coalesce onProgress call

* add regex to STscript syntax highlighting

* fix closure end

* fix autocomplete type icon alignment

* adjustments for small screens

* fix removing wrong element

* add missing "at=" arg to /sys, /comment, /sendas

* add font scale setting for autocomplete

* add target=_blank for parser flag links

* fix for searching enums

* remove REGEXP_MODE from hljs
just causes trouble

* fix autocomplete in closures

* fix typo

* fix type hint

* Get rid of scroll bar on load

* Add type hint for /send name argument. Fix 'at' types

* Add 'negative' arg hint to /sd command

* reenable blur event

* Allow /summarize to process any text

* Compact layout of script toggles

* Expand CSS by default

* fix double ranger indicator and adjust to narrow container

* make custom css input fill available vertical space

* reduce scroll lag

* use default cursor on scrollbar

* Clean-up module loading in index.html

* fix tab indent with hljs

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-05-12 22:15:05 +03:00
LenAnderson
b461c6f0bb use generic popups for QR editor 2024-04-08 18:43:21 -04:00