ui: raise in-game emoji button above the hand + gender = male/female/unknown
- GameTable reactions button (and its tray) moved up from the bottom-right so it no longer overlaps the player's cards on mobile portrait. - Gender options are now Male / Female / Unknown — removed "other" from the Gender type, GENDER_META, and the profile picker; the empty value renders as «نامشخص» / "Unknown". Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -800,7 +800,7 @@ function Reactions() {
|
||||
initial={{ opacity: 0, y: 12, scale: 0.95 }}
|
||||
animate={{ opacity: 1, y: 0, scale: 1 }}
|
||||
exit={{ opacity: 0, y: 12, scale: 0.95 }}
|
||||
className="absolute bottom-20 ltr:right-4 rtl:left-4 z-50 glass rounded-2xl p-2 w-[min(270px,86vw)]"
|
||||
className="absolute bottom-60 ltr:right-3 rtl:left-3 z-50 glass rounded-2xl p-2 w-[min(270px,86vw)]"
|
||||
>
|
||||
<div className="flex gap-1 p-1 rounded-xl bg-navy-900/70 mb-2">
|
||||
<button
|
||||
@@ -852,10 +852,10 @@ function Reactions() {
|
||||
)}
|
||||
</AnimatePresence>
|
||||
|
||||
{/* button */}
|
||||
{/* button — raised above the hand so it doesn't overlap the cards on mobile */}
|
||||
<button
|
||||
onClick={() => setOpen((o) => !o)}
|
||||
className="absolute bottom-[max(1rem,env(safe-area-inset-bottom))] ltr:right-4 rtl:left-4 z-50 glass rounded-full min-h-12 min-w-12 grid place-items-center hover:bg-navy-800 transition"
|
||||
className="absolute bottom-44 ltr:right-3 rtl:left-3 z-50 glass rounded-full min-h-12 min-w-12 grid place-items-center hover:bg-navy-800 transition"
|
||||
title={t("reactions.title")}
|
||||
>
|
||||
<SmilePlus className="size-5 text-gold-400" />
|
||||
|
||||
@@ -407,7 +407,7 @@ function Stat({ label, value }: { label: string; value: string | number }) {
|
||||
);
|
||||
}
|
||||
|
||||
const GENDERS: Gender[] = ["male", "female", "other", ""];
|
||||
const GENDERS: Gender[] = ["male", "female", ""];
|
||||
const VIS_OPTIONS: { id: SocialVisibility; icon: React.ReactNode; key: string }[] = [
|
||||
{ id: "public", icon: <Eye className="size-3.5" />, key: "profile.visPublic" },
|
||||
{ id: "friends", icon: <Users className="size-3.5" />, key: "profile.visFriends" },
|
||||
|
||||
+1
-1
@@ -737,7 +737,7 @@ const en: Dict = {
|
||||
"profile.cardBack": "Card back",
|
||||
"profile.social": "Social & contact",
|
||||
"profile.gender": "Gender",
|
||||
"profile.genderNone": "Unspecified",
|
||||
"profile.genderNone": "Unknown",
|
||||
"profile.socialLinks": "Social media",
|
||||
"profile.socialsVisibility": "Show socials to",
|
||||
"profile.visPublic": "Everyone",
|
||||
|
||||
@@ -34,7 +34,7 @@ export interface PlayerStats {
|
||||
export type PlanId = "free" | "pro";
|
||||
|
||||
/** Player-stated gender (empty = unspecified / not shown). */
|
||||
export type Gender = "" | "male" | "female" | "other";
|
||||
export type Gender = "" | "male" | "female";
|
||||
|
||||
/** Who may see a player's social links. */
|
||||
export type SocialVisibility = "public" | "friends" | "hidden";
|
||||
|
||||
@@ -7,7 +7,6 @@ export const GENDER_META: Record<
|
||||
> = {
|
||||
male: { symbol: "♂", color: "#5aa6e0", faLabel: "آقا", enLabel: "Male" },
|
||||
female: { symbol: "♀", color: "#ff7aa8", faLabel: "خانم", enLabel: "Female" },
|
||||
other: { symbol: "⚧", color: "#c77dff", faLabel: "دیگر", enLabel: "Other" },
|
||||
};
|
||||
|
||||
/** The social platforms a player can share, with link prefixes + brand colours. */
|
||||
|
||||
Reference in New Issue
Block a user