This repository has no description
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105<!DOCTYPE html><html lang=en-QS><meta charset="utf-8"><title>Markup2 Test Editor</title>
<!-- TODO: test renderer? at least make sure it doesn't crash -->
<script src=../parse.js></script><script src=../render.js></script><link rel=stylesheet href=../markup.css>
<link rel=stylesheet href=style.css><script src=test.js></script><script src=draw.js></script><style> html, body { position: fixed; overflow: hidden; top: 0; left: 0; right: 0; bottom: 0; } body { display: flex; flex-direction: row; } body > div { width: 50%; display: flex; flex-direction: column; overflow-y: scroll; } textarea { resize: vertical; }</style>
<body><div> <button onclick="run()">run tests</button> <hr> <textarea id=$input placeholder='markup'></textarea> <div> new test case: <input id=$title placeholder='name'> <button onclick="add_test($title.value, $input.value)">add</button> </div> <div class='Markup' id=$preview style='padding: 5px; border: 1px solid black;'></div> <hr> test definitions: (saved in localstorage) <textarea id=$show_entries style='resize: vertical;height: 200px;'></textarea></div><div> <div id=$output></div></div>
<script> let parser = new Markup_12y2() let renderer = new Markup_Render_Dom() $show_entries.value = localStorage.tests || `🟩 textabc🟩 {"type":"ROOT","tag":"","content":["abc"]}` load() run() $input.oninput = function() { let tree = parser.parse(this.value) let e = renderer.render(tree) $preview.replaceChildren(e) } function load() { localStorage.tests = $show_entries.value // todo: only update if valid Test.load_text($show_entries.value) } function run() { load() Test.run_all() $output.replaceChildren(Test.draw_results()) } //$output.replaceChildren(Test.draw_results()) //run() function add_test(title, input) { // todo: insert the output results element right away input = input.replace(/🟩/g, "?") let tree = parser.parse(input) JSON.stringify(tree) // just to test let t = new Test({name: title}, input, clean(tree)) $show_entries.value += "\n\n"+t.to_entry() load() run() }</script>