mirror of https://git.lenooby09.tech/LeNooby09/social-app.git
1import {Router} from '#/lib/routes/router'
2import {type FlatNavigatorParams} from './lib/routes/types'
3
4type AllNavigatableRoutes = Omit<
5 FlatNavigatorParams,
6 'NotFound' | 'SharedPreferencesTester'
7>
8
9export const router = new Router<AllNavigatableRoutes>({
10 Home: '/',
11 Search: '/search',
12 Feeds: '/feeds',
13 Notifications: '/notifications',
14 NotificationsActivityList: '/notifications/activity',
15 LegacyNotificationSettings: '/notifications/settings',
16 Settings: '/settings',
17 Lists: '/lists',
18 // moderation
19 Moderation: '/moderation',
20 ModerationModlists: '/moderation/modlists',
21 ModerationMutedAccounts: '/moderation/muted-accounts',
22 ModerationBlockedAccounts: '/moderation/blocked-accounts',
23 ModerationInteractionSettings: '/moderation/interaction-settings',
24 ModerationVerificationSettings: '/moderation/verification-settings',
25 // profiles, threads, lists
26 Profile: ['/profile/:name', '/profile/:name/rss'],
27 ProfileFollowers: '/profile/:name/followers',
28 ProfileFollows: '/profile/:name/follows',
29 ProfileKnownFollowers: '/profile/:name/known-followers',
30 ProfileSearch: '/profile/:name/search',
31 ProfileList: '/profile/:name/lists/:rkey',
32 PostThread: '/profile/:name/post/:rkey',
33 PostLikedBy: '/profile/:name/post/:rkey/liked-by',
34 PostRepostedBy: '/profile/:name/post/:rkey/reposted-by',
35 PostQuotes: '/profile/:name/post/:rkey/quotes',
36 ProfileFeed: '/profile/:name/feed/:rkey',
37 ProfileFeedLikedBy: '/profile/:name/feed/:rkey/liked-by',
38 ProfileLabelerLikedBy: '/profile/:name/labeler/liked-by',
39 // debug
40 Debug: '/sys/debug',
41 DebugMod: '/sys/debug-mod',
42 Log: '/sys/log',
43 // settings
44 LanguageSettings: '/settings/language',
45 AppPasswords: '/settings/app-passwords',
46 PreferencesFollowingFeed: '/settings/following-feed',
47 PreferencesThreads: '/settings/threads',
48 PreferencesExternalEmbeds: '/settings/external-embeds',
49 AccessibilitySettings: '/settings/accessibility',
50 AppearanceSettings: '/settings/appearance',
51 SavedFeeds: '/settings/saved-feeds',
52 AccountSettings: '/settings/account',
53 PrivacyAndSecuritySettings: '/settings/privacy-and-security',
54 ActivityPrivacySettings: '/settings/privacy-and-security/activity',
55 ContentAndMediaSettings: '/settings/content-and-media',
56 InterestsSettings: '/settings/interests',
57 AboutSettings: '/settings/about',
58 AppIconSettings: '/settings/app-icon',
59 NotificationSettings: '/settings/notifications',
60 ReplyNotificationSettings: '/settings/notifications/replies',
61 MentionNotificationSettings: '/settings/notifications/mentions',
62 QuoteNotificationSettings: '/settings/notifications/quotes',
63 LikeNotificationSettings: '/settings/notifications/likes',
64 RepostNotificationSettings: '/settings/notifications/reposts',
65 NewFollowerNotificationSettings: '/settings/notifications/new-followers',
66 LikesOnRepostsNotificationSettings:
67 '/settings/notifications/likes-on-reposts',
68 RepostsOnRepostsNotificationSettings:
69 '/settings/notifications/reposts-on-reposts',
70 ActivityNotificationSettings: '/settings/notifications/activity',
71 MiscellaneousNotificationSettings: '/settings/notifications/miscellaneous',
72 // support
73 Support: '/support',
74 PrivacyPolicy: '/support/privacy',
75 TermsOfService: '/support/tos',
76 CommunityGuidelines: '/support/community-guidelines',
77 CopyrightPolicy: '/support/copyright',
78 // hashtags
79 Hashtag: '/hashtag/:tag',
80 Topic: '/topic/:topic',
81 // DMs
82 Messages: '/messages',
83 MessagesSettings: '/messages/settings',
84 MessagesInbox: '/messages/inbox',
85 MessagesConversation: '/messages/:conversation',
86 // starter packs
87 Start: '/start/:name/:rkey',
88 StarterPackEdit: '/starter-pack/edit/:rkey',
89 StarterPack: '/starter-pack/:name/:rkey',
90 StarterPackShort: '/starter-pack-short/:code',
91 StarterPackWizard: '/starter-pack/create',
92 VideoFeed: '/video-feed',
93})