Bluesky app fork with some witchin' additions 馃挮
witchsky.app
bluesky
fork
client
1import {useMemo} from 'react'
2import {msg} from '@lingui/core/macro'
3import {useLingui} from '@lingui/react'
4
5export const interests = [
6 'animals',
7 'art',
8 'books',
9 'comedy',
10 'comics',
11 'culture',
12 'dev',
13 'education',
14 'finance',
15 'food',
16 'gaming',
17 'journalism',
18 'movies',
19 'music',
20 'nature',
21 'news',
22 'pets',
23 'photography',
24 'politics',
25 'science',
26 'sports',
27 'tech',
28 'tv',
29 'writers',
30] as const
31export type Interest = (typeof interests)[number]
32
33// most popular selected interests
34export const popularInterests = [
35 'art',
36 'gaming',
37 'sports',
38 'comics',
39 'music',
40 'politics',
41 'photography',
42 'science',
43 'news',
44] satisfies Interest[]
45
46export function useInterestsDisplayNames() {
47 const {_} = useLingui()
48
49 return useMemo<Record<string, string>>(() => {
50 return {
51 // Keep this alphabetized
52 animals: _(msg`Animals`),
53 art: _(msg`Art`),
54 books: _(msg`Books`),
55 comedy: _(msg`Comedy`),
56 comics: _(msg`Comics`),
57 culture: _(msg`Culture`),
58 dev: _(msg`Software Dev`),
59 education: _(msg`Education`),
60 finance: _(msg`Finance`),
61 food: _(msg`Food`),
62 gaming: _(msg`Video Games`),
63 journalism: _(msg`Journalism`),
64 movies: _(msg`Movies`),
65 music: _(msg`Music`),
66 nature: _(msg`Nature`),
67 news: _(msg`News`),
68 pets: _(msg`Pets`),
69 photography: _(msg`Photography`),
70 politics: _(msg`Politics`),
71 science: _(msg`Science`),
72 sports: _(msg`Sports`),
73 tech: _(msg`Tech`),
74 tv: _(msg`TV`),
75 writers: _(msg`Writers`),
76 } satisfies Record<Interest, string>
77 }, [_])
78}