mirror of
https://github.com/luc-github/ESP3D-WEBUI.git
synced 2025-10-31 11:56:46 -07:00
Fix Temperatures Panel crash due to missing code definition for ContainerHelper Add missing help entry for tooltip for select en boolean controls Refactorize exportPreferencesSection to handle more cases Remove usage of encodeURIComponent/decodeURIComponent for getting icon in extension Update extensions sample code for capabilities, icons, extension_settings and modal Update code for saving extensions data to rely on InterfaceSetting object instead of separate object Finalize implementation for fields_modal Update extension API documentation Rewrite importPreferences to importPreferencesSection for more flexibility Rewrite exportPreferences to exportPreferencesSection for more flexibility Bump version Build packages
48 lines
1.7 KiB
HTML
48 lines
1.7 KiB
HTML
<script type="text/javascript">
|
|
function sendMessage(msg) {
|
|
window.parent.postMessage(msg, '*');
|
|
}
|
|
|
|
function getCapabilities() {
|
|
const requestId = document.getElementById('request_id').value;
|
|
const extensionName = document.getElementById('extension_name').value;
|
|
sendMessage({ type: 'capabilities', target: 'webui', id: requestId, name: extensionName });
|
|
}
|
|
|
|
function processMessage(eventMsg) {
|
|
if (eventMsg.data.type === "capabilities") {
|
|
const response = eventMsg.data.content.response;
|
|
const resultPanel = document.getElementById("output");
|
|
const formattedResponse = JSON.stringify(response, null, 2);
|
|
resultPanel.textContent = formattedResponse;
|
|
}
|
|
}
|
|
|
|
function updateUI() {
|
|
const extensionNameInput = document.getElementById('extensionNameInput');
|
|
extensionNameInput.classList.toggle('d-none', document.getElementById('request_id').value !== 'extensions');
|
|
}
|
|
|
|
window.onload = (event) => {
|
|
window.addEventListener("message", processMessage, false);
|
|
};
|
|
</script>
|
|
|
|
<div class="container">
|
|
<select id="request_id" class="form-select column" onchange="updateUI()">
|
|
<option value="connection">connection</option>
|
|
<option value="features">features</option>
|
|
<option value="interface">interface</option>
|
|
<option value="settings">settings</option>
|
|
<option value="extensions">extensions</option>
|
|
</select>
|
|
|
|
<div class="form-group d-none" id="extensionNameInput">
|
|
<label class="form-label" for="extension_name">Extension Name:</label>
|
|
<input class="form-input" id="extension_name" type="text" value="click2go">
|
|
</div>
|
|
|
|
<button class="btn m-1" onclick="getCapabilities()">Get Capabilities</button>
|
|
|
|
<pre class="container m-2" id="output"></pre>
|
|
</div> |