update penambahan API ruang

This commit is contained in:
Fanrouver
2026-02-04 08:40:16 +07:00
parent b327997021
commit a29838e2c7
5 changed files with 253 additions and 172 deletions

No files matched your search

+16 -74
View File
@@ -164,7 +164,7 @@
</v-list>
<!-- Lock Sidebar Toggle -->
<div class="sidebar-lock-container">
<div class="sidebar-lock-container" :class="{ 'justify-center': rail }">
<v-tooltip
open-on-hover
location="end"
@@ -175,75 +175,12 @@
v-bind="tooltipProps"
:class="['sidebar-lock-btn', { 'sidebar-lock-btn-locked': isLocked }]"
variant="text"
size="small"
icon
@click="handleLockToggle(!isLocked)"
>
<!-- Icon Collapsed Sidebar (sidebar collapsed/locked) -->
<svg
v-if="isLocked"
class="sidebar-toggle-icon"
width="20"
height="20"
viewBox="0 0 20 20"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<!-- Rounded rectangle container -->
<rect
x="2"
y="2"
width="16"
height="16"
rx="3"
fill="var(--color-primary-100)"
/>
<!-- Sidebar area (kiri, narrow ~30%, biru gelap) -->
<rect
x="2"
y="2"
width="6"
height="16"
rx="3"
fill="var(--color-primary-600)"
/>
</svg>
<!-- Icon Expanded Sidebar (sidebar expanded/unlocked) -->
<svg
v-else
class="sidebar-toggle-icon"
width="20"
height="20"
viewBox="0 0 20 20"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<!-- Rounded rectangle container -->
<rect
x="2"
y="2"
width="16"
height="16"
rx="3"
fill="var(--color-primary-100)"
/>
<!-- Sidebar area (kiri, wider ~55%, biru gelap) -->
<rect
x="2"
y="2"
width="11"
height="16"
rx="3"
fill="var(--color-primary-600)"
/>
<!-- Left-pointing arrow in the white area -->
<path
d="M 15.5 10 L 13.5 8 M 15.5 10 L 13.5 12"
stroke="var(--color-primary-600)"
stroke-width="1.5"
stroke-linecap="round"
stroke-linejoin="round"
/>
</svg>
<v-icon size="22">
{{ isLocked ? 'mdi-pin' : 'mdi-pin-outline' }}
</v-icon>
</v-btn>
</template>
</v-tooltip>
@@ -507,6 +444,12 @@ onMounted(async () => {
display: flex;
justify-content: flex-start;
align-items: center;
transition: all 0.3s ease;
&.justify-center {
justify-content: center;
padding: 8px 0;
}
}
.sidebar-lock-btn {
@@ -529,14 +472,13 @@ onMounted(async () => {
}
:deep(.v-icon) {
font-size: 20px;
font-size: 22px;
transition: transform 0.3s ease;
}
}
.sidebar-toggle-icon {
width: 20px;
height: 20px;
display: block;
&:active :deep(.v-icon) {
transform: scale(0.9);
}
}
.sidebar-popup-menu {