about summary refs log tree commit diff
path: root/src/view/com/util/UserAvatar.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/com/util/UserAvatar.tsx')
-rw-r--r--src/view/com/util/UserAvatar.tsx35
1 files changed, 1 insertions, 34 deletions
diff --git a/src/view/com/util/UserAvatar.tsx b/src/view/com/util/UserAvatar.tsx
index 8699bcd37..2385316fe 100644
--- a/src/view/com/util/UserAvatar.tsx
+++ b/src/view/com/util/UserAvatar.tsx
@@ -1,13 +1,6 @@
 import React from 'react'
 import Svg, {Circle, Text, Defs, LinearGradient, Stop} from 'react-native-svg'
-import {colors} from '../../lib/styles'
-
-const GRADIENTS = [
-  [colors.pink3, colors.purple3],
-  [colors.purple3, colors.blue3],
-  [colors.blue3, colors.green3],
-  [colors.red3, colors.pink3],
-]
+import {getGradient} from '../../lib/asset-gen'
 
 export function UserAvatar({
   size,
@@ -42,11 +35,6 @@ export function UserAvatar({
   )
 }
 
-export function getGradient(handle: string): string[] {
-  const gi = cyrb53(handle) % GRADIENTS.length
-  return GRADIENTS[gi]
-}
-
 function getInitials(str: string): string {
   const tokens = str
     .split(' ')
@@ -60,24 +48,3 @@ function getInitials(str: string): string {
   }
   return 'X'
 }
-
-// deterministic string->hash
-// https://stackoverflow.com/a/52171480
-function cyrb53(str: string, seed = 0): number {
-  let h1 = 0xdeadbeef ^ seed,
-    h2 = 0x41c6ce57 ^ seed
-  for (let i = 0, ch; i < str.length; i++) {
-    ch = str.charCodeAt(i)
-    h1 = Math.imul(h1 ^ ch, 2654435761)
-    h2 = Math.imul(h2 ^ ch, 1597334677)
-  }
-
-  h1 =
-    Math.imul(h1 ^ (h1 >>> 16), 2246822507) ^
-    Math.imul(h2 ^ (h2 >>> 13), 3266489909)
-  h2 =
-    Math.imul(h2 ^ (h2 >>> 16), 2246822507) ^
-    Math.imul(h1 ^ (h1 >>> 13), 3266489909)
-
-  return 4294967296 * (2097151 & h2) + (h1 >>> 0)
-}