chore: format html
All checks were successful
Node.js CI / Lint and Test (pull_request) Successful in 1m1s

This commit is contained in:
2025-07-04 19:59:16 -07:00
parent e5b77b8821
commit 68f9043679
5 changed files with 138 additions and 47 deletions

View File

@ -1,5 +1,9 @@
<h1>Hi there, I'm Hikari~!</h1>
<img src="https://cdn.nhcarrigan.com/new-avatars/hikari-full.png" alt="Hikari" height="250" />
<img
src="https://cdn.nhcarrigan.com/new-avatars/hikari-full.png"
alt="Hikari"
height="250"
/>
<p id="one">How may I help you today?</p>
<p id="two">I can assist you with:</p>
<ul>

View File

@ -1,5 +1,9 @@
<nav>
<a href="/" id="logo"><img src="https://cdn.nhcarrigan.com/logo.png" alt="Logo"><span id="name">Hikari</span></a>
<a href="/" id="logo"
><img src="https://cdn.nhcarrigan.com/logo.png" alt="Logo" /><span id="name"
>Hikari</span
></a
>
<div [class]="dropdownClass">
<a href="/products" class="nav-link">Products</a>
<hr />

View File

@ -13,20 +13,46 @@
>
Community Tooling and Integrations
</button>
<button class="btn" (click)="selectCategory('websites')" [disabled]="view === 'websites' ? true : false">
<button
class="btn"
(click)="selectCategory('websites')"
[disabled]="view === 'websites' ? true : false"
>
Websites and APIs
</button>
<button class="btn" (click)="selectCategory('apps')" [disabled]="view === 'apps' ? true : false">Apps and Games</button>
<button class="btn" (click)="selectCategory('all')" [disabled]="view === 'all' ? true : false">
<button
class="btn"
(click)="selectCategory('apps')"
[disabled]="view === 'apps' ? true : false"
>
Apps and Games
</button>
<button
class="btn"
(click)="selectCategory('all')"
[disabled]="view === 'all' ? true : false"
>
Show Me Everything!
</button>
</div>
<p>And would you like to apply a filter?</p>
<div class="row">
<button class="btn" (click)="toggleFilter('wip')"><span *ngIf="filters.wip">Hide</span><span *ngIf="!filters.wip">Show</span> WIP</button>
<button class="btn" (click)="toggleFilter('prod')"><span *ngIf="filters.prod">Hide</span><span *ngIf="!filters.prod">Show</span> Production</button>
<button class="btn" (click)="toggleFilter('paid')"><span *ngIf="filters.paid">Hide</span><span *ngIf="!filters.paid">Show</span> Paid</button>
<button class="btn" (click)="toggleFilter('free')"><span *ngIf="filters.free">Hide</span><span *ngIf="!filters.free">Show</span> Free</button>
<button class="btn" (click)="toggleFilter('wip')">
<span *ngIf="filters.wip">Hide</span
><span *ngIf="!filters.wip">Show</span> WIP
</button>
<button class="btn" (click)="toggleFilter('prod')">
<span *ngIf="filters.prod">Hide</span
><span *ngIf="!filters.prod">Show</span> Production
</button>
<button class="btn" (click)="toggleFilter('paid')">
<span *ngIf="filters.paid">Hide</span
><span *ngIf="!filters.paid">Show</span> Paid
</button>
<button class="btn" (click)="toggleFilter('free')">
<span *ngIf="filters.free">Hide</span
><span *ngIf="!filters.free">Show</span> Free
</button>
</div>
<hr />
<p *ngIf="products.length === 0">
@ -36,34 +62,81 @@
<div id="products">
<div *ngFor="let product of products">
<!-- Render as <a> if product has a URL -->
<a *ngIf="product.url"
<a
*ngIf="product.url"
[class]="product.wip ? 'product wip' : 'product'"
[href]="product.url"
target="_blank"
>
<h2 class="title">{{ product.name }}</h2>
<img class="logo" [src]="product.avatar ?? 'https://cdn.nhcarrigan.com/logo.png'" alt="{{ product.name }} Logo" />
<img
class="logo"
[src]="product.avatar ?? 'https://cdn.nhcarrigan.com/logo.png'"
alt="{{ product.name }} Logo"
/>
<p class="description">{{ product.description }}</p>
<div class="icons">
<i title="Under construction" *ngIf="product.wip" class="fa-solid fa-wrench" style="color: rgb(141, 23, 23);"></i>
<i title="Production Ready" *ngIf="!product.wip" class="fa-solid fa-check" style="color: rgb(31, 117, 19);"></i>
<i title="Requires Subscription" *ngIf="product.premium" class="fa-solid fa-money-bill-1-wave" style="color: rgb(145, 129, 40);"></i>
<i title="Free to Use" *ngIf="!product.premium" class="fa-solid fa-piggy-bank" style="color: rgb(116, 37, 206);"></i>
<i
title="Under construction"
*ngIf="product.wip"
class="fa-solid fa-wrench"
style="color: rgb(141, 23, 23)"
></i>
<i
title="Production Ready"
*ngIf="!product.wip"
class="fa-solid fa-check"
style="color: rgb(31, 117, 19)"
></i>
<i
title="Requires Subscription"
*ngIf="product.premium"
class="fa-solid fa-money-bill-1-wave"
style="color: rgb(145, 129, 40)"
></i>
<i
title="Free to Use"
*ngIf="!product.premium"
class="fa-solid fa-piggy-bank"
style="color: rgb(116, 37, 206)"
></i>
</div>
</a>
<!-- Render as <div> if no URL -->
<div *ngIf="!product.url"
[class]="product.wip ? 'product wip' : 'product'"
>
<div *ngIf="!product.url" [class]="product.wip ? 'product wip' : 'product'">
<h2 class="title">{{ product.name }}</h2>
<img class="logo" [src]="product.avatar ?? 'https://cdn.nhcarrigan.com/logo.png'" alt="{{ product.name }} Logo" />
<img
class="logo"
[src]="product.avatar ?? 'https://cdn.nhcarrigan.com/logo.png'"
alt="{{ product.name }} Logo"
/>
<p class="description">{{ product.description }}</p>
<div *ngIf="product.wip || product.premium" class="icons">
<i title="Under construction" *ngIf="product.wip" class="fa-solid fa-wrench" style="color: rgb(141, 23, 23);"></i>
<i title="Production Ready" *ngIf="!product.wip" class="fa-solid fa-check" style="color: rgb(31, 117, 19);"></i>
<i title="Requires Subscription" *ngIf="product.premium" class="fa-solid fa-money-bill-1-wave" style="color: rgb(145, 129, 40);"></i>
<i title="Free to Use" *ngIf="!product.premium" class="fa-solid fa-piggy-bank" style="color: rgb(116, 37, 206);"></i>
<i
title="Under construction"
*ngIf="product.wip"
class="fa-solid fa-wrench"
style="color: rgb(141, 23, 23)"
></i>
<i
title="Production Ready"
*ngIf="!product.wip"
class="fa-solid fa-check"
style="color: rgb(31, 117, 19)"
></i>
<i
title="Requires Subscription"
*ngIf="product.premium"
class="fa-solid fa-money-bill-1-wave"
style="color: rgb(145, 129, 40)"
></i>
<i
title="Free to Use"
*ngIf="!product.premium"
class="fa-solid fa-piggy-bank"
style="color: rgb(116, 37, 206)"
></i>
</div>
</div>
</div>

View File

@ -1,7 +1,14 @@
<h1>Oh dear~!</h1>
<img src="https://cdn.nhcarrigan.com/new-avatars/hikari-cry-full.png" alt="Hikari" height="250" />
<img
src="https://cdn.nhcarrigan.com/new-avatars/hikari-cry-full.png"
alt="Hikari"
height="250"
/>
<p>You appear to have become lost!</p>
<p>Either this feature is still under construction, or you have tried to go somewhere that does not exist.</p>
<p>
Either this feature is still under construction, or you have tried to go
somewhere that does not exist.
</p>
<p>Do not worry, I can guide you back. Where would you like to go?</p>
<div id="fade">
<a href="javascript:history.back()" class="btn">Take me back!</a>

View File

@ -1,21 +1,24 @@
<!doctype html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<head>
<meta charset="utf-8" />
<title>Hikari</title>
<meta name="description" content="Dashboard and account management platform for NHCarrigan's products.">
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<meta
name="description"
content="Dashboard and account management platform for NHCarrigan's products."
/>
<base href="/" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" type="image/x-icon" href="favicon.ico" />
</head>
<body>
<app-root></app-root>
</body>
<script src="https://cdn.nhcarrigan.com/headers/index.js"></script>
<script>
</body>
<script src="https://cdn.nhcarrigan.com/headers/index.js"></script>
<script>
const styleElement = document.getElementById("nhcarrigan-global-styles");
if (styleElement) {
styleElement.remove();
}
</script>
</script>
</html>