mirror of
https://github.com/Sendouc/sendou.ink.git
synced 2026-10-01 07:37:55 -05:00
Temporary handling of new discord names
This commit is contained in:
@@ -12,7 +12,11 @@ import { Image, WeaponImage } from "~/components/Image";
|
||||
import { useTranslation } from "~/hooks/useTranslation";
|
||||
import { modesShort } from "~/modules/in-game-lists";
|
||||
import { type SendouRouteHandle } from "~/utils/remix";
|
||||
import { rawSensToString } from "~/utils/strings";
|
||||
import {
|
||||
capitalize,
|
||||
isNewDiscordUniqueName,
|
||||
rawSensToString,
|
||||
} from "~/utils/strings";
|
||||
import type { Unpacked } from "~/utils/types";
|
||||
import { assertUnreachable } from "~/utils/types";
|
||||
import {
|
||||
@@ -39,10 +43,19 @@ export default function UserInfoPage() {
|
||||
<Avatar user={data} size="lg" className="u__avatar" />
|
||||
<div>
|
||||
<h2 className="u__name">
|
||||
<div>{data.discordName}</div>
|
||||
<div>
|
||||
{isNewDiscordUniqueName(data.discordDiscriminator)
|
||||
? capitalize(data.discordName)
|
||||
: data.discordName}
|
||||
</div>
|
||||
<div>
|
||||
<span className="u__discriminator">
|
||||
<wbr />#{data.discordDiscriminator}
|
||||
{!isNewDiscordUniqueName(data.discordDiscriminator) ? (
|
||||
<>
|
||||
#{data.discordDiscriminator}
|
||||
<wbr />
|
||||
</>
|
||||
) : null}
|
||||
</span>
|
||||
{data.country ? <Flag countryCode={data.country} tiny /> : null}
|
||||
</div>
|
||||
|
||||
@@ -1,9 +1,15 @@
|
||||
import type { GearType, User } from "~/db/types";
|
||||
import { assertUnreachable } from "./types";
|
||||
|
||||
export const isNewDiscordUniqueName = (discordDiscriminator: string) =>
|
||||
discordDiscriminator === "0";
|
||||
|
||||
export function discordFullName(
|
||||
user: Pick<User, "discordName" | "discordDiscriminator">
|
||||
) {
|
||||
if (isNewDiscordUniqueName(user.discordDiscriminator)) {
|
||||
return capitalize(user.discordName);
|
||||
}
|
||||
return `${user.discordName}#${user.discordDiscriminator}`;
|
||||
}
|
||||
|
||||
@@ -62,3 +68,7 @@ export function gearTypeToInitial(gearType: GearType) {
|
||||
assertUnreachable(gearType);
|
||||
}
|
||||
}
|
||||
|
||||
export function capitalize(str: string) {
|
||||
return str[0].toUpperCase() + str.slice(1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user