Files
frm.so/ui/desktop/components/Sidebar.js

46 lines
1.7 KiB
JavaScript

class Sidebar extends Shadow {
currentNetwork = null
render() {
VStack(() => {
img(document.documentElement.classList.contains("red") ? "/_/icons/quillblack.svg" : "/_/icons/quill.svg", "2.5em", "2.5em")
.marginTop(6, vh)
.marginBottom(2, vh)
let networks = window.profile.networks
for(let i=0; i<networks.length; i++) {
let selected = window.location.pathname.startsWith("/" + networks[i].abbreviation)
img(`/db/images/${networks[i].logo}`, "2.25em", "2.25em")
.marginTop(3, vh)
.paddingRight(0.5, em)
.paddingLeft(selected ? 9 : 10, px)
.borderLeft(selected ? "1px solid var(--accent)" : "0")
.onHover(function (hovering) {
if(hovering) {
this.style.opacity = 0.8
} else {
this.style.opacity = ""
}
})
.onClick(function (finished) {
if(finished) {
this.setAttribute("selected", "")
this.style.borderLeft = "1px solid var(--accent)"
this.style.paddingLeft = "9px"
}
})
.cursor("default")
}
})
.paddingLeft(1.5, em)
.paddingRight(1, em)
.position("fixed")
.x(0).y(0)
.height(100, vh)
.borderRight("1px solid var(--accent)")
.zIndex(3)
}
}
register(Sidebar)