about summary refs log tree commit diff
path: root/src/lib/strings
diff options
context:
space:
mode:
authorSamuel Newman <mozzius@protonmail.com>2025-02-06 14:55:57 +0000
committerGitHub <noreply@github.com>2025-02-06 14:55:57 +0000
commit1db2668a96208046ffe316114f65d432e57db994 (patch)
tree735a1a2989721f05910fc21343a2b1f15cc02963 /src/lib/strings
parent00c08ba525638ab105e142d8f58788c66cb75b00 (diff)
downloadvoidsky-1db2668a96208046ffe316114f65d432e57db994.tar.zst
Improved service handle validation logic (#7657)
* fix validation logic for 3p pdses

* fix bad import

* add service handle validation test
Diffstat (limited to 'src/lib/strings')
-rw-r--r--src/lib/strings/handles.ts7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/lib/strings/handles.ts b/src/lib/strings/handles.ts
index bf329a869..754d219ed 100644
--- a/src/lib/strings/handles.ts
+++ b/src/lib/strings/handles.ts
@@ -42,10 +42,9 @@ export interface IsValidHandle {
 }
 
 // More checks from https://github.com/bluesky-social/atproto/blob/main/packages/pds/src/handle/index.ts#L72
-export function validateHandle(
+export function validateServiceHandle(
   str: string,
   userDomain: string,
-  isServiceHandle?: boolean,
 ): IsValidHandle {
   const fullHandle = createFullHandle(str, userDomain)
 
@@ -53,8 +52,8 @@ export function validateHandle(
     handleChars:
       !str || (VALIDATE_REGEX.test(fullHandle) && !str.includes('.')),
     hyphenStartOrEnd: !str.startsWith('-') && !str.endsWith('-'),
-    frontLength: str.length >= 3,
-    totalLength: fullHandle.length <= (isServiceHandle ? 30 : 253),
+    frontLength: str.length >= 3 && str.length <= 18,
+    totalLength: fullHandle.length <= 253,
   }
 
   return {