@@ -1,34 +1,36 @@
1 1 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<aside x-data="{ collapsed: localStorage.getItem('sidebarCollapsed') === 'true', projectsOpen: true, docsOpen: false }"
2 2 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
:class="collapsed ? 'w-14' : 'w-60'"
3 3 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
class="hidden lg:flex lg:flex-col flex-shrink-0 bg-gray-900 border-r border-gray-700 overflow-y-auto overflow-x-hidden transition-all duration-200">
4 4 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
5 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <!-- Sidebar header — branded -->
6 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="px-3 py-4 border-b border-gray-800 flex-shrink-0">
7 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <a href="{% url 'dashboard' %}" class="flex items-center gap-2" :title="collapsed ? 'Fossilrepo' : ''">
8 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <svg class="h-6 w-6 flex-shrink-0 text-brand" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5">
9 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <circle cx="12" cy="12" r="10" stroke-opacity="0.6"/>
10 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <circle cx="12" cy="12" r="4" fill="currentColor" fill-opacity="0.3"/>
11 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <path d="M12 2v4M12 18v4M2 12h4M18 12h4" stroke-opacity="0.4"/>
12 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </svg>
13 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span x-show="!collapsed" class="text-sm font-bold tracking-tight">
14 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span class="text-gray-100">fossil</span><span class="text-brand">repo</span>
15 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </span>
16 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </a>
17 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
18 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
19 5 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<nav class="flex-1 px-2 py-3 space-y-1 overflow-y-auto">
20 6 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
21 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <!-- Dashboard -->
22 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <a href="{% url 'dashboard' %}"
23 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- class="flex items-center gap-2 rounded-md px-2 py-2 text-sm font-medium {% if request.path == '/dashboard/' %}bg-gray-800 text-white{% else %}text-gray-400 hover:bg-gray-800 hover:text-white{% endif %}"
24 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- :title="collapsed ? 'Dashboard' : ''">
25 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <svg class="h-4 w-4 flex-shrink-0" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
26 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <path stroke-linecap="round" stroke-linejoin="round" d="M2.25 12l8.954-8.955a1.126 1.126 0 011.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25" />
27 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </svg>
28 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span x-show="!collapsed" class="truncate">Dashboard</span>
29 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </a>
7 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Dashboard + collapse toggle -->
8 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center gap-1">
9 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'dashboard' %}"
10 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ class="flex-1 flex items-center gap-2 rounded-md px-2 py-2 text-sm font-medium {% if request.path == '/dashboard/' %}bg-gray-800 text-white{% else %}text-gray-400 hover:bg-gray-800 hover:text-white{% endif %}"
11 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ :title="collapsed ? 'Dashboard' : ''">
12 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-4 w-4 flex-shrink-0" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
13 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <path stroke-linecap="round" stroke-linejoin="round" d="M2.25 12l8.954-8.955a1.126 1.126 0 011.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25" />
14 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </svg>
15 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span x-show="!collapsed" class="truncate">Dashboard</span>
16 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </a>
17 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <button x-show="!collapsed" @click="collapsed = true; localStorage.setItem('sidebarCollapsed', 'true')"
18 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ class="flex-shrink-0 rounded-md p-1.5 text-gray-600 hover:text-gray-300 hover:bg-gray-800 transition-colors"
19 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ title="Collapse sidebar">
20 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-3.5 w-3.5" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
21 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <path stroke-linecap="round" stroke-linejoin="round" d="M18.75 19.5l-7.5-7.5 7.5-7.5m-6 15L5.25 12l7.5-7.5" />
22 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </svg>
23 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </button>
24 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <button x-show="collapsed" style="display:none" @click="collapsed = false; localStorage.setItem('sidebarCollapsed', 'false')"
25 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ class="flex-shrink-0 rounded-md p-1.5 text-gray-600 hover:text-gray-300 hover:bg-gray-800 transition-colors"
26 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ title="Expand sidebar">
27 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-3.5 w-3.5" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
28 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <path stroke-linecap="round" stroke-linejoin="round" d="M11.25 4.5l7.5 7.5-7.5 7.5m-6-15l7.5 7.5-7.5 7.5" />
29 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </svg>
30 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </button>
31 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
30 32 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
31 33 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<!-- Explore -->
32 34 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<a href="{% url 'explore' %}"
33 35 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
class="flex items-center gap-2 rounded-md px-2 py-2 text-sm font-medium {% if request.path == '/explore/' %}bg-gray-800 text-white{% else %}text-gray-400 hover:bg-gray-800 hover:text-white{% endif %}"
34 36 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
:title="collapsed ? 'Explore' : ''">
@@ -79,21 +81,21 @@
79 81 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% endif %}
80 82 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</div>
81 83 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</div>
82 84 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% endif %}
83 85 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
84 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <!-- Fossilrepo KB section -->
86 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- FossilRepo KB section -->
85 87 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% if perms.pages.view_page %}
86 88 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<div>
87 89 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<button @click="collapsed ? (collapsed = false, docsOpen = true) : (docsOpen = !docsOpen)"
88 90 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
class="flex items-center justify-between w-full rounded-md px-2 py-2 text-sm font-medium {% if '/kb/' in request.path %}text-white{% else %}text-gray-400 hover:bg-gray-800 hover:text-white{% endif %}"
89 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- :title="collapsed ? 'Fossilrepo KB' : ''">
91 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ :title="collapsed ? 'FossilRepo KB' : ''">
90 92 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<span class="flex items-center gap-2">
91 93 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<svg class="h-4 w-4 flex-shrink-0" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
92 94 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<path stroke-linecap="round" stroke-linejoin="round" d="M12 6.042A8.967 8.967 0 006 3.75c-1.052 0-2.062.18-3 .512v14.25A8.987 8.987 0 016 18c2.305 0 4.408.867 6 2.292m0-14.25a8.966 8.966 0 016-2.292c1.052 0 2.062.18 3 .512v14.25A8.987 8.987 0 0018 18a8.967 8.967 0 00-6 2.292m0-14.25v14.25" />
93 95 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</svg>
94 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span x-show="!collapsed" class="truncate">Fossilrepo KB</span>
96 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span x-show="!collapsed" class="truncate">FossilRepo KB</span>
95 97 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</span>
96 98 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<svg x-show="!collapsed" class="h-4 w-4 transition-transform" :class="docsOpen && 'rotate-90'" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
97 99 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5" />
98 100 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</svg>
99 101 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</button>
@@ -112,18 +114,18 @@
112 114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% endif %}
113 115 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</div>
114 116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</div>
115 117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% endif %}
116 118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <!-- Fossil Guide -->
119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- FossilSCM Guide -->
118 120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<a href="{% url 'fossil:docs' slug='fossil-scm' %}"
119 121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
class="flex items-center gap-2 rounded-md px-2 py-2 text-sm font-medium {% if '/fossil/docs/' in request.path %}bg-gray-800 text-white{% else %}text-gray-400 hover:bg-gray-800 hover:text-white{% endif %}"
120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- :title="collapsed ? 'Fossil Guide' : ''">
122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ :title="collapsed ? 'FossilSCM Guide' : ''">
121 123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<svg class="h-4 w-4 flex-shrink-0" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
122 124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<path stroke-linecap="round" stroke-linejoin="round" d="M4.26 10.147a60.438 60.438 0 00-.491 6.347A48.62 48.62 0 0112 20.904a48.62 48.62 0 018.232-4.41 60.46 60.46 0 00-.491-6.347m-15.482 0a50.636 50.636 0 00-2.658-.813A59.906 59.906 0 0112 3.493a59.903 59.903 0 0110.399 5.84c-.896.248-1.783.52-2.658.814m-15.482 0A50.717 50.717 0 0112 13.489a50.702 50.702 0 017.74-3.342M6.75 15a.75.75 0 100-1.5.75.75 0 000 1.5zm0 0v-3.675A55.378 55.378 0 0112 8.443m-7.007 11.55A5.981 5.981 0 006.75 15.75v-1.5" />
123 125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</svg>
124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span x-show="!collapsed" class="truncate">Fossil Guide</span>
126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span x-show="!collapsed" class="truncate">FossilSCM Guide</span>
125 127 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</a>
126 128 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
127 129 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<!-- Admin section (collapsible) -->
128 130 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% if perms.organization.view_organization or user.is_staff %}
129 131 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
<div x-data="{ adminOpen: window.location.pathname.includes('/settings/') || window.location.pathname.includes('/projects/groups/') }">
@@ -186,17 +188,6 @@
186 188 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</div>
187 189 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% endif %}
188 190 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
189 191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</nav>
190 192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <!-- Bottom-pinned collapse toggle -->
192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="flex-shrink-0 border-t border-gray-800 px-2 py-2">
193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <button @click="collapsed = !collapsed; localStorage.setItem('sidebarCollapsed', collapsed)"
194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- class="flex items-center gap-2 w-full rounded-md px-2 py-2 text-xs text-gray-500 hover:text-white hover:bg-gray-800 transition-colors"
195 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- :title="collapsed ? 'Expand sidebar' : 'Collapse sidebar'">
196 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <svg :class="collapsed && 'rotate-180'" class="h-4 w-4 flex-shrink-0 transition-transform duration-200" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
197 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <path stroke-linecap="round" stroke-linejoin="round" d="M18.75 19.5l-7.5-7.5 7.5-7.5m-6 15L5.25 12l7.5-7.5" />
198 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </svg>
199 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span x-show="!collapsed" class="truncate">Collapse</span>
200 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </button>
201 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
202 193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</aside>
203 194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!