From 6fcab7cef2112d07cd8d3f0effae67e6e075e64f Mon Sep 17 00:00:00 2001 From: Hailey Date: Wed, 19 Jun 2024 19:02:43 -0700 Subject: [PATCH] helper to sanitize handle or display name --- .../create-sanitized-display-name.ts | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/lib/moderation/create-sanitized-display-name.ts diff --git a/src/lib/moderation/create-sanitized-display-name.ts b/src/lib/moderation/create-sanitized-display-name.ts new file mode 100644 index 0000000000..16135b2745 --- /dev/null +++ b/src/lib/moderation/create-sanitized-display-name.ts @@ -0,0 +1,21 @@ +import {AppBskyActorDefs} from '@atproto/api' + +import {sanitizeDisplayName} from 'lib/strings/display-names' +import {sanitizeHandle} from 'lib/strings/handles' + +export function createSanitizedDisplayName( + profile: + | AppBskyActorDefs.ProfileViewBasic + | AppBskyActorDefs.ProfileViewDetailed, + noAt = false, +) { + if (profile.displayName != null && profile.displayName !== '') { + return sanitizeDisplayName(profile.displayName) + } else { + let sanitizedHandle = sanitizeHandle(profile.handle) + if (!noAt) { + sanitizedHandle = `@${sanitizedHandle}` + } + return sanitizedHandle + } +}