Sidebar — uklanjanje treptanja pri učitavanju skupljenog stanja

Inline skript u <head> odmah postavlja klasu na <html> pre iscrtavanja,
CSS je primenjuje bez tranzicije, JS je uklanja nakon što doda .skupljen.
Changes to be committed:
	modified: build.sh
	modified: go.mod
	modified: go.sum
	modified: internal/config/setup.go
	modified: web/static/css/main.css
	modified: web/templates/teme/podrazumevana/base.html
This commit is contained in:
2026-06-04 15:33:17 +02:00
parent a884c06331
commit 588db54ed5
6 changed files with 190 additions and 30 deletions
@@ -7,6 +7,12 @@
<title>{{block "naslov" .}}NTech{{end}}</title>
<meta name="csrf-token" content="{{.CsrfToken}}">
<script>
if (window.innerWidth > 768 && localStorage.getItem('sidebar-skupljen') === 'true') {
document.documentElement.classList.add('sidebar-init-skupljen');
}
</script>
<!-- tema — učitava se prva -->
<link rel="stylesheet" href="/static/css/teme/{{.Tema}}.css" />
@@ -51,6 +57,7 @@
if (!mobilni() && localStorage.getItem("sidebar-skupljen") === "true") {
sidebar.classList.add("skupljen");
}
document.documentElement.classList.remove('sidebar-init-skupljen');
hamburger.addEventListener("click", () => {
if (mobilni()) {