123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <!doctype html>
- <html lang="en-us">
- <head>
- <meta charset="utf-8">
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link rel="shortcut icon" href="data:image/x-icon;," type="image/x-icon">
- <link rel="stylesheet" href="common/testing.css"/>
- <title>sqlite3-api batch SQL runner for the SAHPool VFS</title>
- </head>
- <body>
- <header id='titlebar'><span>sqlite3-api batch SQL runner for the SAHPool VFS</span></header>
- <div>
- <span class='input-wrapper'>
- <input type='checkbox' class='disable-during-eval' id='cb-reverse-log-order' checked></input>
- <label for='cb-reverse-log-order' id='lbl-reverse-log-order'>Reverse log order</label>
- </span>
- </div>
- <div id='test-output' class='reverse'></div>
- <script>
- (function(){
- const E = (sel)=>document.querySelector(sel);
- const eOut = E('#test-output');
- const log2 = function(cssClass,...args){
- let ln;
- if(1 || cssClass){
- ln = document.createElement('div');
- if(cssClass) ln.classList.add(cssClass);
- ln.append(document.createTextNode(args.join(' ')));
- }else{
- // This doesn't work with the "reverse order" option!
- ln = document.createTextNode(args.join(' ')+'\n');
- }
- eOut.append(ln);
- };
- const log = (...args)=>{
- //console.log(...args);
- log2('', ...args);
- };
- const logErr = function(...args){
- console.error(...args);
- log2('error', ...args);
- };
- const logWarn = function(...args){
- console.warn(...args);
- log2('warning', ...args);
- };
- const cbReverseLog = E('#cb-reverse-log-order');
- const lblReverseLog = E('#lbl-reverse-log-order');
- if(cbReverseLog.checked){
- lblReverseLog.classList.add('warning');
- eOut.classList.add('reverse');
- }
- cbReverseLog.addEventListener('change', function(){
- if(this.checked){
- eOut.classList.add('reverse');
- lblReverseLog.classList.add('warning');
- }else{
- eOut.classList.remove('reverse');
- lblReverseLog.classList.remove('warning');
- }
- }, false);
- const w = new Worker('batch-runner-sahpool.js?sqlite3.dir=jswasm');
- w.onmessage = function(msg){
- msg = msg.data;
- switch(msg.type){
- case 'stdout': log(...msg.data); break;
- case 'warn': logWarn(...msg.data); break;
- case 'error': logErr(...msg.data); break;
- default:
- logErr("Unhandled worker message type:",msg);
- break;
- }
- };
- })();
- </script>
- <style>
- #test-output {
- white-space: break-spaces;
- overflow: auto;
- }
- </style>
- </body>
- </html>
|