import * as api from 'qortal-ui-crypto' import mykey from './functional-components/mykey-page.js' 'use strict' export const checkApiKey = async (nodeConfig) => { let selectedNode = nodeConfig.knownNodes[nodeConfig.node]; if (selectedNode.enableManagement === false) { console.log("Skipping API key check because enableManagement is false"); return; } let apiKey = selectedNode.apiKey; // Attempt to generate an API key const generateUrl = "/admin/apikey/generate"; let generateRes = await api.request(generateUrl, { method: "POST" }); if (generateRes != null && generateRes.error == null && generateRes.length >= 8) { console.log("Generated API key"); apiKey = generateRes; } else { console.log("Unable to generate API key"); } // Now test the API key let testResult = await testApiKey(apiKey); if (testResult === true) { console.log("API key test passed"); } else { console.log("API key test failed"); mykey.show(); } } export const testApiKey = async (apiKey) => { const testUrl = "/admin/apikey/test?apiKey=" + apiKey; let testRes = await api.request(testUrl, { method: "GET" }); if (testRes === true) { return true; } return false; }