diff --git a/src/api.ts b/src/api.ts index 9f1f9d0..7cafdc2 100644 --- a/src/api.ts +++ b/src/api.ts @@ -1,6 +1,18 @@ import { AuthenticatedAPI } from "./api/authenticated_api"; import { BlueskyAPI, HiddenRepliesError, URLError } from "./api/bluesky_api"; import { APIError, Minisky } from "./api/minisky"; +import { settings } from "./models/settings.svelte"; export { AuthenticatedAPI, BlueskyAPI, Minisky }; export { APIError, HiddenRepliesError, URLError }; + +export let appView = new BlueskyAPI('api.bsky.app'); +export let blueAPI = new BlueskyAPI('blue.mackuba.eu'); +export let accountAPI = new AuthenticatedAPI(); +export let api: BlueskyAPI; + +export function setAPI() { + api = (accountAPI.isLoggedIn && !settings.incognitoMode) ? accountAPI : appView; +} + +setAPI(); diff --git a/src/api/authenticated_api.ts b/src/api/authenticated_api.ts index 0ccb27f..7486770 100644 --- a/src/api/authenticated_api.ts +++ b/src/api/authenticated_api.ts @@ -27,9 +27,9 @@ class LocalStorageConfig { export class AuthenticatedAPI extends BlueskyAPI { user: json; - constructor(host?: string | null | undefined) { + constructor() { let config = new LocalStorageConfig(); - let pds: string | null = host || config.user.pdsEndpoint || null; + let pds: string | null = config.user.pdsEndpoint || null; super(pds, config); this.user = config.user; } diff --git a/src/api/bluesky_api.ts b/src/api/bluesky_api.ts index b5e94d1..7fba91b 100644 --- a/src/api/bluesky_api.ts +++ b/src/api/bluesky_api.ts @@ -1,4 +1,5 @@ import { HandleCache } from './handle_cache.js'; +import { blueAPI, appView } from '../api.js'; import { APIError, Minisky, type FetchAllOnPageLoad, type MiniskyConfig, type MiniskyOptions } from './minisky.js'; import { atURI, feedPostTime } from '../utils.js'; import { Post } from '../models/posts.js'; diff --git a/src/api/identity.ts b/src/api/identity.ts index a545417..e107483 100644 --- a/src/api/identity.ts +++ b/src/api/identity.ts @@ -1,3 +1,4 @@ +import { appView } from '../api.js'; import { APIError } from './minisky.js'; /** diff --git a/src/components/UserAutocomplete.svelte b/src/components/UserAutocomplete.svelte index b1002d4..72ba3be 100644 --- a/src/components/UserAutocomplete.svelte +++ b/src/components/UserAutocomplete.svelte @@ -1,4 +1,6 @@