{"body":"use Selkie::UI;\n\nApp {\n    my $code  := new-state \"\";\n    my $error := new-state \"\";\n    HBox {\n        Border :title<Code>, {\n            MultiLineInput.placeholder('Write your Selkie::UI code').on-change: -> $, $text {\n                $error = \"\";\n                $code = $text\n            }\n        }\n        VBox {\n            Border(:title<Playground>, {\n                if $code {\n                    CATCH {\n                        default {\n                            $error = .Str\n                        }\n                    }\n                    my $app  = $*UI-APP;\n                    my $node = $*UI-NODE;\n                    [\n                        'my $*UI-APP  = $app',\n                        'my $*UI-NODE = $node',\n                        $code\n                    ].join(\"; \").EVAL\n                }\n            }).size: :3flex;\n            Border :title<Error>, {\n                given $error -> $text {\n                    Text :$text\n                }\n            }\n        }\n    }\n}\n","name":"","extension":"raku","url":"https://www.irccloud.com/pastebin/GUHV9OY0","modified":1777418695,"id":"GUHV9OY0","size":1012,"lines":37,"own_paste":false,"theme":"","date":1777417976}