feat: build dark fantasy application shell
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
<nav class="side-navigation" aria-label="Spielnavigation">
|
||||
<button
|
||||
class="side-navigation__item side-navigation__item--active"
|
||||
type="button"
|
||||
routerLink="/world"
|
||||
data-navigation="world"
|
||||
aria-current="page"
|
||||
>
|
||||
<img src="/images/hud/MapsIcon.png" alt="" />
|
||||
<span>Karte</span>
|
||||
</button>
|
||||
|
||||
<button
|
||||
class="side-navigation__item"
|
||||
type="button"
|
||||
data-navigation="hunt"
|
||||
disabled
|
||||
aria-label="Jagd ist noch nicht verfügbar"
|
||||
>
|
||||
<img src="/images/hud/HuntIcon.png" alt="" />
|
||||
<span>Jagd</span>
|
||||
</button>
|
||||
<button
|
||||
class="side-navigation__item"
|
||||
type="button"
|
||||
data-navigation="quests"
|
||||
disabled
|
||||
aria-label="Quests sind noch nicht verfügbar"
|
||||
>
|
||||
<img src="/images/hud/QuestsIcon.png" alt="" />
|
||||
<span>Quests</span>
|
||||
</button>
|
||||
<button
|
||||
class="side-navigation__item"
|
||||
type="button"
|
||||
data-navigation="inventory"
|
||||
disabled
|
||||
aria-label="Inventar ist noch nicht verfügbar"
|
||||
>
|
||||
<img src="/images/hud/InventoryIcon.png" alt="" />
|
||||
<span>Inventar</span>
|
||||
</button>
|
||||
<button
|
||||
class="side-navigation__item"
|
||||
type="button"
|
||||
data-navigation="character"
|
||||
disabled
|
||||
aria-label="Charakter ist noch nicht verfügbar"
|
||||
>
|
||||
<img src="/images/hud/CharacterIcon.png" alt="" />
|
||||
<span>Charakter</span>
|
||||
</button>
|
||||
</nav>
|
||||
@@ -0,0 +1,73 @@
|
||||
:host {
|
||||
display: block;
|
||||
background: var(--ar-panel);
|
||||
}
|
||||
|
||||
.side-navigation {
|
||||
display: grid;
|
||||
align-content: start;
|
||||
padding-block: var(--ar-space-3);
|
||||
}
|
||||
|
||||
.side-navigation__item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: var(--ar-space-3);
|
||||
inline-size: 100%;
|
||||
min-block-size: 4.3rem;
|
||||
padding: var(--ar-space-3) var(--ar-space-4);
|
||||
border: 0;
|
||||
border-block-end: 1px solid color-mix(in srgb, var(--ar-border) 65%, transparent);
|
||||
border-inline-start: 3px solid transparent;
|
||||
color: var(--ar-text-muted);
|
||||
background: transparent;
|
||||
font: inherit;
|
||||
text-align: start;
|
||||
text-decoration: none;
|
||||
transition:
|
||||
color var(--ar-motion-fast),
|
||||
background var(--ar-motion-fast),
|
||||
border-color var(--ar-motion-fast);
|
||||
}
|
||||
|
||||
.side-navigation__item img {
|
||||
inline-size: 2.25rem;
|
||||
block-size: 2.25rem;
|
||||
object-fit: cover;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.side-navigation__item--active {
|
||||
border-inline-start-color: var(--ar-blue);
|
||||
color: var(--ar-text);
|
||||
background: linear-gradient(90deg, rgb(92 169 216 / 0.2), transparent);
|
||||
box-shadow: inset 0 0 1.25rem rgb(92 169 216 / 0.08);
|
||||
}
|
||||
|
||||
.side-navigation__item:not(:disabled):hover,
|
||||
.side-navigation__item:not(:disabled):focus-visible {
|
||||
color: var(--ar-text);
|
||||
background: rgb(255 255 255 / 0.04);
|
||||
}
|
||||
|
||||
.side-navigation__item:disabled {
|
||||
cursor: not-allowed;
|
||||
opacity: 0.52;
|
||||
}
|
||||
|
||||
@media (width < 620px) {
|
||||
.side-navigation {
|
||||
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.side-navigation__item {
|
||||
justify-content: center;
|
||||
min-block-size: 3.5rem;
|
||||
padding: var(--ar-space-2);
|
||||
}
|
||||
|
||||
.side-navigation__item span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { RouterLink } from '@angular/router';
|
||||
|
||||
@Component({
|
||||
selector: 'app-side-navigation',
|
||||
imports: [RouterLink],
|
||||
templateUrl: './side-navigation.component.html',
|
||||
styleUrl: './side-navigation.component.scss',
|
||||
})
|
||||
export class SideNavigationComponent {}
|
||||
Reference in New Issue
Block a user