UNPKG

json-object-editor

Version:

JOE the Json Object Editor | Platform Edition

54 lines (50 loc) 2.33 kB
;(function(){ function buildNav(){ var nav = document.createElement('nav'); nav.setAttribute('style','display:flex;flex-direction:column;gap:6px;margin-bottom:8px'); var infoRow = '<div id="mcp-nav-info" class="small" style="opacity:.8"></div>'; var linksRow = [ '<div style="display:flex;gap:10px;align-items:center">', '<a href="/mcp-test.html" target="mcp_test_win" rel="noopener">MCP Test</a>', '<a href="/mcp-export.html" target="mcp_export_win" rel="noopener">MCP Export</a>', '<a href="/mcp-schemas.html" target="mcp_schemas_win" rel="noopener">Schemas</a>', '<a href="/matrix.html" target="matrix_win" rel="noopener">Matrix</a>', '<a href="/mcp-prompt.html" target="mcp_prompt_win" rel="noopener">MCP Prompt</a>', '<a href="/ai-widget-test.html" target="ai_widget_test_win" rel="noopener">AI Widget</a>', '<span style="margin-left:auto"></span>', '<a href="/privacy" target="privacy_win" rel="noopener">Privacy</a>', '<a href="/terms" target="terms_win" rel="noopener">Terms</a>', '</div>' ].join(''); nav.innerHTML = infoRow + linksRow; return nav; } function insert(){ var placeholder = document.getElementById('mcp-nav'); var nav = buildNav(); if(placeholder){ placeholder.parentNode.replaceChild(nav, placeholder); }else{ document.body.insertBefore(nav, document.body.firstChild); } } async function updateInstance(){ try{ var res = await fetch('/.well-known/mcp/manifest.json'); if(!res.ok) return; var m = await res.json(); var info = document.getElementById('mcp-nav-info'); if(info && m && m.joe){ info.textContent = 'Name: '+(m.joe.name||'JOE')+' | Version: '+(m.joe.version||'')+' | Host: '+(m.joe.hostname||''); } }catch(e){} } if(document.readyState === 'loading'){ document.addEventListener('DOMContentLoaded', insert); document.addEventListener('DOMContentLoaded', updateInstance); }else{ insert(); updateInstance(); } // Load favicon environment script for production detection var faviconScript = document.createElement('script'); faviconScript.src = '/JsonObjectEditor/js/favicon-env.js'; document.head.appendChild(faviconScript); })();