make icon tiles grid clickable

This commit is contained in:
Kuba Orlik 2026-08-10 20:20:05 +02:00
parent bb8a7b7eb6
commit 26523c990f
2 changed files with 11 additions and 2 deletions

View File

@ -32,6 +32,7 @@
gap: 32px; gap: 32px;
min-height: 320px; min-height: 320px;
max-width: 400px; max-width: 400px;
text-decoration: none; /* in case it's an a href */
&, &,
* { * {
@ -55,5 +56,11 @@
font-size: 18px; font-size: 18px;
} }
} }
a[href].icon-tiles-grid__tile {
&:hover {
transform: scale(1.05);
}
}
} }
} }

View File

@ -18,6 +18,7 @@ const component_arguments = {
), ),
name: new Args.ShortText(), name: new Args.ShortText(),
description: new Args.ShortText(), description: new Args.ShortText(),
url: new Args.ShortText(),
}) })
), ),
} as const; } as const;
@ -44,16 +45,17 @@ export class IconTilesGrid extends Component<typeof component_arguments> {
<div>{render_markdown(language, description)}</div> <div>{render_markdown(language, description)}</div>
<section class="icon-tiles-grid__grid"> <section class="icon-tiles-grid__grid">
{tiles.map((tile) => ( {tiles.map((tile) => (
<div <a
class="icon-tiles-grid__tile" class="icon-tiles-grid__tile"
style={`--tile-bg-color: var(${tile.color}); --tile-fg-color: var(${getFgColorVariable(tile.color, 4.2)})`} style={`--tile-bg-color: var(${tile.color}); --tile-fg-color: var(${getFgColorVariable(tile.color, 4.2)})`}
href={tile.url ? tile.url : false}
> >
<div class="icon"> <div class="icon">
{tile.icon == "none" ? "" : icon(tile.icon)} {tile.icon == "none" ? "" : icon(tile.icon)}
</div> </div>
<div class="name">{insert_nbsp(tile.name)}</div> <div class="name">{insert_nbsp(tile.name)}</div>
<div class="description">{insert_nbsp(tile.name)}</div> <div class="description">{insert_nbsp(tile.name)}</div>
</div> </a>
))} ))}
</section> </section>
</div> </div>