about summary refs log tree commit diff
path: root/src/state/queries/preferences/const.ts
blob: b7f9206e82a1da56c5d84970d7f0a54d0ccb301d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import {
  UsePreferencesQueryResponse,
  ThreadViewPreferences,
} from '#/state/queries/preferences/types'
import {DEFAULT_LOGGED_OUT_LABEL_PREFERENCES} from '#/state/queries/preferences/moderation'

export const DEFAULT_HOME_FEED_PREFS: UsePreferencesQueryResponse['feedViewPrefs'] =
  {
    hideReplies: false,
    hideRepliesByUnfollowed: false,
    hideRepliesByLikeCount: 0,
    hideReposts: false,
    hideQuotePosts: false,
    lab_mergeFeedEnabled: false, // experimental
  }

export const DEFAULT_THREAD_VIEW_PREFS: ThreadViewPreferences = {
  sort: 'newest',
  prioritizeFollowedUsers: true,
  lab_treeViewEnabled: false,
}

const DEFAULT_PROD_FEED_PREFIX = (rkey: string) =>
  `at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/${rkey}`
export const DEFAULT_PROD_FEEDS = {
  pinned: [DEFAULT_PROD_FEED_PREFIX('whats-hot')],
  saved: [DEFAULT_PROD_FEED_PREFIX('whats-hot')],
}

export const DEFAULT_LOGGED_OUT_PREFERENCES: UsePreferencesQueryResponse = {
  birthDate: new Date('2022-11-17'), // TODO(pwi)
  adultContentEnabled: false,
  feeds: {
    saved: [],
    pinned: [],
    unpinned: [],
  },
  // labels are undefined until set by user
  contentLabels: {
    nsfw: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.nsfw,
    nudity: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.nudity,
    suggestive: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.suggestive,
    gore: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.gore,
    hate: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.hate,
    spam: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.spam,
    impersonation: DEFAULT_LOGGED_OUT_LABEL_PREFERENCES.impersonation,
  },
  feedViewPrefs: DEFAULT_HOME_FEED_PREFS,
  threadViewPrefs: DEFAULT_THREAD_VIEW_PREFS,
  userAge: 13, // TODO(pwi)
}