import {createApp} from 'vue' import {BootstrapIconsPlugin} from 'bootstrap-icons-vue'; import App from './App.vue' import './scss/toolshed.scss' import router from './router' import _nacl from 'js-nacl'; const app = createApp(App).use(BootstrapIconsPlugin); _nacl.instantiate((nacl) => { window.nacl = nacl app.use(router).mount('#app') }); window.closeAllDropdowns = function () { const dropdowns = document.getElementsByClassName("dropdown-menu"); let i; for (i = 0; i < dropdowns.length; i++) { const openDropdown = dropdowns[i]; if (openDropdown.classList.contains('show')) { openDropdown.classList.remove('show'); } } } window.onclick = function (event) { if (!event.target.matches('.dropdown-toggle *') && !event.target.matches('.dropdown-toggle') && !event.target.matches('.dropdown-menu *') && !event.target.matches('.dropdown-menu')) { closeAllDropdowns(); } if (!event.target.matches('.sidebar-toggle *') && !event.target.matches('.sidebar-toggle') && !event.target.matches('.sidebar *') && !event.target.matches('.sidebar')) { const sidebar = document.getElementById("sidebar"); const marginLeft = parseInt(getComputedStyle(sidebar).marginLeft); if (sidebar.classList.contains('collapsed') && marginLeft === 0) { sidebar.classList.remove('collapsed'); } } }