import { parentEpml } from './connect.js' import './streams/streams.js' let config = {} let haveRegisteredNodeManagement = false parentEpml.ready().then(() => { // THOUGHTS: DONE: The request to register urls should be made once... // pluginUrlsConf let pluginUrlsConf = [ { url: 'minting', domain: 'core', page: 'minting/index.html', title: 'Minting Details', icon: 'info', menus: [], parent: false }, { url: 'wallet', domain: 'core', page: 'wallet/index.html', title: 'Wallet', icon: 'account_balance_wallet', menus: [], parent: false }, { url: 'send-coin', domain: 'core', page: 'send-coin/index.html', title: 'Send Coin', icon: 'send', menus: [], parent: false }, { url: 'trade-portal', domain: 'core', page: 'trade-portal/index.html', title: 'Trade Portal', icon: 'toc', menus: [], parent: false }, { url: 'reward-share', domain: 'core', page: 'reward-share/index.html', title: 'Reward Share', icon: 'call_split', menus: [], parent: false }, { url: 'name-registration', domain: 'core', page: 'name-registration/index.html', title: 'Name Registration', icon: 'assignment_ind', menus: [], parent: false }, { url: 'websites', domain: 'core', page: 'qdn/index.html', title: 'Websites', icon: 'computer', menus: [], parent: false }, { url: 'data-management', domain: 'core', page: 'qdn/data-management/index.html', title: 'Data Management', icon: 'dns', menus: [], parent: false }, { url: 'q-chat', domain: 'core', page: 'messaging/q-chat/index.html', title: 'Q-Chat', icon: 'message', menus: [], parent: false }, { url: 'group-management', domain: 'core', page: 'group-management/index.html', title: 'Group Management', icon: 'group', menus: [], parent: false }, { url: 'puzzles', domain: 'core', page: 'puzzles/index.html', title: 'Puzzles', icon: 'extension', menus: [], parent: false } ] const registerPlugins = (pluginInfo) => { parentEpml.request('registerUrl', pluginInfo) } parentEpml.subscribe('config', c => { config = JSON.parse(c) // Only register node management if node management is enabled and it hasn't already been registered if (!haveRegisteredNodeManagement && config.user.knownNodes[config.user.node].enableManagement) { haveRegisteredNodeManagement = true let nodeManagementConf = { url: 'node-management', domain: 'core', page: 'node-management/index.html', title: 'Node Management', icon: 'cloud', menus: [], parent: false } let _pluginUrlsConf = [...pluginUrlsConf, nodeManagementConf] registerPlugins(_pluginUrlsConf) } else { registerPlugins(pluginUrlsConf) } }) })