feat: support concurrent Reddit accounts
This commit is contained in:
1 parent
d819a0f1e6
commit
16a31335d0
51 files changed
+3241
-250
No files matched your search
@@ -5,11 +5,13 @@ import {
|
||||
ConfigUpdateResponseSchema,
|
||||
ErrorResponseSchema,
|
||||
LoginStatusResponseSchema,
|
||||
RedditAccountsResponseSchema,
|
||||
RedditCookieImportRequestSchema,
|
||||
RedditCookieImportResponseSchema,
|
||||
type ConfigResponse,
|
||||
type ConfigUpdateRequest,
|
||||
type LoginStatusResponse,
|
||||
type RedditAccountSummary,
|
||||
} from '../../../../../packages/api-contracts/src/index.js';
|
||||
import { dashboardRequest } from '../../api/request.js';
|
||||
|
||||
@@ -46,7 +48,11 @@ export function fetchLoginStatus(): Promise<LoginStatusResponse> {
|
||||
return request('/api/login/status').then((response) => parseResponse(response, LoginStatusResponseSchema));
|
||||
}
|
||||
|
||||
export async function importRedditSession(exported: unknown): Promise<void> {
|
||||
export function fetchRedditAccounts(): Promise<RedditAccountSummary[]> {
|
||||
return request('/api/accounts').then((response) => parseResponse(response, RedditAccountsResponseSchema));
|
||||
}
|
||||
|
||||
export async function importRedditSession(exported: unknown): Promise<RedditAccountSummary> {
|
||||
const body = RedditCookieImportRequestSchema.parse(exported);
|
||||
const response = await parseResponse(
|
||||
await request('/api/login/session-import', {
|
||||
@@ -57,4 +63,5 @@ export async function importRedditSession(exported: unknown): Promise<void> {
|
||||
RedditCookieImportResponseSchema,
|
||||
);
|
||||
if (!response.ok) throw new Error(response.error);
|
||||
return response.account;
|
||||
}
|
||||
Reference in new issue
Block a user