2023-07-26 22:31:52 -07:00
|
|
|
/*
|
2024-02-13 07:59:27 -08:00
|
|
|
* SPDX-FileCopyrightText: syuilo and misskey-project
|
2023-07-26 22:31:52 -07:00
|
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
*/
|
|
|
|
|
2024-09-10 02:39:53 -07:00
|
|
|
import type { Locale } from '../../../locales/index.js';
|
2023-01-06 17:13:02 -08:00
|
|
|
|
2024-09-10 02:39:53 -07:00
|
|
|
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
2023-11-09 04:21:39 -08:00
|
|
|
const address = new URL(document.querySelector<HTMLMetaElement>('meta[property="instance_url"]')?.content || location.href);
|
2023-04-13 02:47:49 -07:00
|
|
|
const siteName = document.querySelector<HTMLMetaElement>('meta[property="og:site_name"]')?.content;
|
2018-08-19 03:15:29 -07:00
|
|
|
|
|
|
|
export const host = address.host;
|
|
|
|
export const hostname = address.hostname;
|
|
|
|
export const url = address.origin;
|
2023-11-12 23:39:54 -08:00
|
|
|
export const apiUrl = location.origin + '/api';
|
|
|
|
export const wsOrigin = location.origin;
|
2024-09-09 04:57:36 -07:00
|
|
|
export const lang = localStorage.getItem('lang') ?? 'en-US';
|
2018-05-20 10:13:39 -07:00
|
|
|
export const langs = _LANGS_;
|
2024-10-15 09:23:18 -07:00
|
|
|
export const langsVersion = _LANGS_VERSION_;
|
2024-09-09 04:57:36 -07:00
|
|
|
const preParseLocale = localStorage.getItem('locale');
|
2024-09-10 02:39:53 -07:00
|
|
|
export let locale: Locale = preParseLocale ? JSON.parse(preParseLocale) : null;
|
2018-02-10 19:08:43 -08:00
|
|
|
export const version = _VERSION_;
|
2024-10-09 07:17:22 -07:00
|
|
|
export const instanceName = (siteName === 'Sharkey' || siteName == null) ? host : siteName;
|
2024-09-10 02:39:53 -07:00
|
|
|
export const ui = localStorage.getItem('ui');
|
2024-09-09 04:57:36 -07:00
|
|
|
export const debug = localStorage.getItem('debug') === 'true';
|
2023-01-21 23:52:15 -08:00
|
|
|
|
2024-09-10 02:39:53 -07:00
|
|
|
export function updateLocale(newLocale: Locale): void {
|
2023-01-21 23:52:15 -08:00
|
|
|
locale = newLocale;
|
|
|
|
}
|