feat(home): label the top-bar online counter with the hotel name
CI / check (push) Successful in 33s
CI / tests-integration (push) Successful in 1m58s
CI / tests-unit (push) Successful in 2m1s
CI / tests-imaging-browsers (push) Successful in 1m24s
CI / tests-quality (push) Successful in 50s
CI / tests-ui (push) Successful in 4m34s
CI / preflight (push) Skipped
CI / deploy (push) Successful in 3m12s
CI / check (push) Successful in 33s
CI / tests-integration (push) Successful in 1m58s
CI / tests-unit (push) Successful in 2m1s
CI / tests-imaging-browsers (push) Successful in 1m24s
CI / tests-quality (push) Successful in 50s
CI / tests-ui (push) Successful in 4m34s
CI / preflight (push) Skipped
CI / deploy (push) Successful in 3m12s
Use the shared LiveOnlineCount so the landing top bar reads "0 <hotel> online" instead of a bare number, and drop the hotel name from the left (the logo stays) so it is not shown twice.
This commit is contained in:
1 parent
e7a6b2b602
commit
5c428c4526
1 file changed
+6
-15
@@ -1,28 +1,27 @@
|
|||||||
import Image from "next/image";
|
import Image from "next/image";
|
||||||
import { Clock } from "@/components/clock";
|
import { Clock } from "@/components/clock";
|
||||||
import { LanguageSwitcher } from "@/components/language-switcher";
|
import { LanguageSwitcher } from "@/components/language-switcher";
|
||||||
import { LiveOnlineCounter } from "@/components/live-online-counter";
|
import { LiveOnlineCount } from "@/components/live-online-count";
|
||||||
import { Reveal } from "@/components/motion-reveal";
|
import { Reveal } from "@/components/motion-reveal";
|
||||||
import { ThemeSwitcher } from "@/components/theme-switcher";
|
import { ThemeSwitcher } from "@/components/theme-switcher";
|
||||||
import { ICON_LIGHTHOUSE } from "@/lib/site-icons";
|
import { ICON_LIGHTHOUSE } from "@/lib/site-icons";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Shared frosted-glass top bar for the public pages (index, login, register).
|
* Shared frosted-glass top bar for the public pages (index, login, register).
|
||||||
* Shows the hotel logo + name on the left and the live online count, language /
|
* Shows the hotel logo on the left and the live "online" counter (which carries
|
||||||
* clock / theme controls on the right. One component so every public page keeps
|
* the hotel name), language / clock / theme controls on the right. One
|
||||||
* the exact same chrome instead of duplicating it.
|
* component so every public page keeps the exact same chrome instead of
|
||||||
|
* duplicating it.
|
||||||
*/
|
*/
|
||||||
export function AuthTopBar({
|
export function AuthTopBar({
|
||||||
hotelName,
|
hotelName,
|
||||||
logo,
|
logo,
|
||||||
online,
|
online,
|
||||||
showHotelName = true,
|
|
||||||
}: {
|
}: {
|
||||||
hotelName: string;
|
hotelName: string;
|
||||||
logo?: string | null;
|
logo?: string | null;
|
||||||
/** Live online count; omit (or pass null) to hide the indicator. */
|
/** Live online count; omit (or pass null) to hide the indicator. */
|
||||||
online?: number | null;
|
online?: number | null;
|
||||||
showHotelName?: boolean;
|
|
||||||
}) {
|
}) {
|
||||||
return (
|
return (
|
||||||
<Reveal>
|
<Reveal>
|
||||||
@@ -71,14 +70,6 @@ export function AuthTopBar({
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{showHotelName ? (
|
|
||||||
<span
|
|
||||||
className="hidden truncate text-sm font-extrabold uppercase tracking-wide sm:inline"
|
|
||||||
style={{ color: "var(--color-text-readable)" }}
|
|
||||||
>
|
|
||||||
{hotelName}
|
|
||||||
</span>
|
|
||||||
) : null}
|
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
className="flex items-center gap-1 sm:gap-1.5 rounded-full px-1.5 py-1 sm:px-2"
|
className="flex items-center gap-1 sm:gap-1.5 rounded-full px-1.5 py-1 sm:px-2"
|
||||||
@@ -108,7 +99,7 @@ export function AuthTopBar({
|
|||||||
color: "var(--color-primary-readable, var(--color-primary))",
|
color: "var(--color-primary-readable, var(--color-primary))",
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<LiveOnlineCounter initial={online} />
|
<LiveOnlineCount initial={online} hotelName={hotelName} />
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in new issue
Block a user