global-functions: $ParseJson: handle outher curly brackets

This commit is contained in:
Christian Hesse 2023-10-10 12:54:59 +02:00
parent bb899b1fb0
commit 7df4f9e78c

View file

@ -698,11 +698,16 @@
# parse JSON into array
# Warning: This is not a complete parser!
:set ParseJson do={
:local Input [ :toarray $1 ];
:local Input [ :tostr $1 ];
:local Return ({});
:local Skip 0;
:if ([ :pick $Input 0 ] = "{") do={
:set Input [ :pick $Input 1 ([ :len $Input ] - 1) ];
}
:set Input [ :toarray $Input ];
:for I from=0 to=[ :len $Input ] do={
:if ($Skip > 0 || $Input->$I = "\n" || $Input->$I = "\r\n") do={
:if ($Skip > 0) do={