diff --git a/src/lib/account.js b/src/lib/account.js index 3e08748..2ae96fd 100644 --- a/src/lib/account.js +++ b/src/lib/account.js @@ -3,7 +3,7 @@ import { parseEmoji, renderEmoji } from '$lib/emoji.js'; import { get, writable } from 'svelte/store'; import Lang from '$lib/lang'; -const lang = Lang(); +const lang = Lang('en_GB'); const cache = writable({}); diff --git a/src/lib/client/server.js b/src/lib/client/server.js index d3f5126..c1d6426 100644 --- a/src/lib/client/server.js +++ b/src/lib/client/server.js @@ -4,7 +4,7 @@ import { app_name } from '$lib/config.js'; import { browser } from "$app/environment"; import Lang from '$lib/lang'; -const lang = Lang(); +const lang = Lang('en_GB'); const server_types = { UNSUPPORTED: "unsupported", diff --git a/src/lib/lang.js b/src/lib/lang.js index 6788c0e..66e70cc 100644 --- a/src/lib/lang.js +++ b/src/lib/lang.js @@ -1,18 +1,25 @@ import * as en_GB from '@cf/lang/en_GB.json'; -// import * as ga_IE from '@cf/lang/ga_IE.json'; +import * as ga_IE from '@cf/lang/ga_IE.json'; /** + * @param {string} lang IETH language tag (i.e. en_GB) * @returns Map */ -export default function init() { +export default function init(lang) { let i18n = new Object(); + let language; - // TODO: dynamic loading of language files - let language = en_GB; - let lang_code = 'en_GB'; + // TODO: dynamic imports seem to fail here; it can't find the file. + // try { + // language = import(`../lang/${lang}.json`); + // } catch (error) { + // throw error; + // } + + language = en_GB; i18n.lang = language; - i18n.lang_code = lang_code; + i18n.lang_code = lang; i18n.string = function(/* @type string */ key, ...args) { const tokens = key.split('.'); diff --git a/src/lib/sound.js b/src/lib/sound.js index e4e0e8e..9c94547 100644 --- a/src/lib/sound.js +++ b/src/lib/sound.js @@ -1,6 +1,6 @@ import Lang from '$lib/lang'; -const lang = Lang(); +const lang = Lang('en_GB'); import sound_log from '../sound/log.ogg'; import sound_hello from '../sound/hello.ogg'; diff --git a/src/lib/time.js b/src/lib/time.js index ce95fcb..9accb8a 100644 --- a/src/lib/time.js +++ b/src/lib/time.js @@ -1,5 +1,5 @@ import Lang from '$lib/lang'; -const lang = Lang(); +const lang = Lang('en_GB'); const denoms = [ { unit: lang.string('time.second'), min: 0 }, diff --git a/src/lib/timeline.js b/src/lib/timeline.js index 66db44d..03e5052 100644 --- a/src/lib/timeline.js +++ b/src/lib/timeline.js @@ -7,7 +7,7 @@ import Lang from '$lib/lang'; export const timeline = writable([]); -const lang = Lang(); +const lang = Lang('en_GB'); let loading = false; diff --git a/src/lib/ui/Composer.svelte b/src/lib/ui/Composer.svelte index 2aa3e80..0317ce2 100644 --- a/src/lib/ui/Composer.svelte +++ b/src/lib/ui/Composer.svelte @@ -20,7 +20,7 @@ import FollowersVisIcon from '@cf/icons/followers.svg'; import PrivateVisIcon from '@cf/icons/dm.svg'; - const lang = Lang(); + const lang = Lang('en_GB'); export let reply_id; diff --git a/src/lib/ui/LoginForm.svelte b/src/lib/ui/LoginForm.svelte index 7bac4cf..b71afdd 100644 --- a/src/lib/ui/LoginForm.svelte +++ b/src/lib/ui/LoginForm.svelte @@ -7,7 +7,7 @@ import Logo from '$lib/../img/campfire-logo.svg'; - const lang = Lang(); + const lang = Lang('en_GB'); let display_error = false; let logging_in = false; diff --git a/src/lib/ui/Navigation.svelte b/src/lib/ui/Navigation.svelte index 384450d..41b2f8e 100644 --- a/src/lib/ui/Navigation.svelte +++ b/src/lib/ui/Navigation.svelte @@ -28,7 +28,7 @@ import FollowersIcon from '../../img/icons/followers.svg'; const VERSION = APP_VERSION; - const lang = Lang(); + const lang = Lang('en_GB'); const dispatch = createEventDispatcher(); diff --git a/src/lib/ui/Notification.svelte b/src/lib/ui/Notification.svelte index e23a28d..984def0 100644 --- a/src/lib/ui/Notification.svelte +++ b/src/lib/ui/Notification.svelte @@ -11,7 +11,7 @@ import ActionBar from '$lib/ui/post/ActionBar.svelte'; import Lang from '$lib/lang'; - const lang = Lang(); + const lang = Lang('en_GB'); let mention = (accounts) => { let res = `${account.rich_name}`; diff --git a/src/lib/ui/Widgets.svelte b/src/lib/ui/Widgets.svelte index 54b4f97..e372f33 100644 --- a/src/lib/ui/Widgets.svelte +++ b/src/lib/ui/Widgets.svelte @@ -1,7 +1,7 @@
diff --git a/src/lib/ui/post/ActionBar.svelte b/src/lib/ui/post/ActionBar.svelte index 52ab7eb..f00e796 100644 --- a/src/lib/ui/post/ActionBar.svelte +++ b/src/lib/ui/post/ActionBar.svelte @@ -20,7 +20,7 @@ export let post; - const lang = Lang(); + const lang = Lang('en_GB'); async function toggleBoost() { if (!$app || !$app.token) return; diff --git a/src/lib/ui/post/Body.svelte b/src/lib/ui/post/Body.svelte index d95da18..a54c233 100644 --- a/src/lib/ui/post/Body.svelte +++ b/src/lib/ui/post/Body.svelte @@ -3,7 +3,7 @@ export let post; - const lang = Lang(); + const lang = Lang('en_GB'); let open = false; diff --git a/src/lib/ui/post/BoostContext.svelte b/src/lib/ui/post/BoostContext.svelte index 839cf53..d156d51 100644 --- a/src/lib/ui/post/BoostContext.svelte +++ b/src/lib/ui/post/BoostContext.svelte @@ -4,7 +4,7 @@ import RepostIcon from '@cf/icons/repost.svg'; import Lang from '$lib/lang'; - const lang = Lang(); + const lang = Lang('en_GB'); export let post; diff --git a/src/lib/ui/post/Post.svelte b/src/lib/ui/post/Post.svelte index 01554e0..cca5aac 100644 --- a/src/lib/ui/post/Post.svelte +++ b/src/lib/ui/post/Post.svelte @@ -15,7 +15,7 @@ export let focused = false; export let pinned = false; - const lang = Lang(); + const lang = Lang('en_GB'); let post_context = undefined; let post = post_data; @@ -54,7 +54,7 @@ {/await} {/if} {#if pinned} -

{lang.string('post.pinned')}

+

{lang.string('post.pinned')}

{/if} {#if is_boost && !post_context.text} @@ -89,10 +89,9 @@ } .pinned { - margin: .9em 1.2em .3em 1.2em; + margin: 1em 1.2em -.2em 1.2em; font-size: .8em; color: var(--accent); - background-color: inherit; } .post { diff --git a/src/lib/ui/post/PostHeader.svelte b/src/lib/ui/post/PostHeader.svelte index 0337c73..9a74b5b 100644 --- a/src/lib/ui/post/PostHeader.svelte +++ b/src/lib/ui/post/PostHeader.svelte @@ -3,7 +3,7 @@ import { server } from '$lib/client/server'; import Lang from '$lib/lang'; - const lang = Lang(); + const lang = Lang('en_GB'); export let post; export let reply = undefined; diff --git a/src/lib/ui/post/ReactionButton.svelte b/src/lib/ui/post/ReactionButton.svelte index f0fadce..088d0fa 100644 --- a/src/lib/ui/post/ReactionButton.svelte +++ b/src/lib/ui/post/ReactionButton.svelte @@ -4,7 +4,7 @@ import Lang from '$lib/lang'; const dispatch = createEventDispatcher(); - const lang = Lang(); + const lang = Lang('en_GB'); export let type = "react"; export let label = lang.string('post.actions.react'); diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 8c957c0..7f84883 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -13,7 +13,7 @@ import Composer from '@cf/ui/Composer.svelte'; import Widgets from '$lib/ui/Widgets.svelte'; - const lang = Lang(); + const lang = Lang('en_GB'); let show_composer = false; diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 766a6a4..f59c71f 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -9,7 +9,7 @@ import Post from '$lib/ui/post/Post.svelte'; import PageHeader from '../lib/ui/core/PageHeader.svelte'; - const lang = Lang(); + const lang = Lang('en_GB'); account.subscribe(account => { if (account) getTimeline(); diff --git a/src/routes/[server]/[account]/+page.svelte b/src/routes/[server]/[account]/+page.svelte index dee8a97..5e82dcb 100644 --- a/src/routes/[server]/[account]/+page.svelte +++ b/src/routes/[server]/[account]/+page.svelte @@ -18,7 +18,7 @@ export let data; - const lang = Lang(); + const lang = Lang('en_GB'); let profile_pinned_posts = writable([]); let profile_posts_max_id = null; diff --git a/src/routes/[server]/[account]/[post]/+page.svelte b/src/routes/[server]/[account]/[post]/+page.svelte index f4c345c..ca01a6c 100644 --- a/src/routes/[server]/[account]/[post]/+page.svelte +++ b/src/routes/[server]/[account]/[post]/+page.svelte @@ -12,7 +12,7 @@ export let data; - const lang = Lang(); + const lang = Lang('en_GB'); let post = fetchPost(data.post_id); let error = false; diff --git a/src/routes/callback/+page.svelte b/src/routes/callback/+page.svelte index b52e328..8d9d0f8 100644 --- a/src/routes/callback/+page.svelte +++ b/src/routes/callback/+page.svelte @@ -12,7 +12,7 @@ export let data; - const lang = Lang(); + const lang = Lang('en_GB'); let auth_code = data.code; diff --git a/src/routes/follow-requests/+page.svelte b/src/routes/follow-requests/+page.svelte index c6e62fb..5ac2d9b 100644 --- a/src/routes/follow-requests/+page.svelte +++ b/src/routes/follow-requests/+page.svelte @@ -11,7 +11,7 @@ import CrossIcon from '../../img/icons/cross.svg' import { get } from 'svelte/store'; - const lang = Lang(); + const lang = Lang('en_GB'); async function actionRequest(account_id, approved) { // remove item from array first - this updates the ui and diff --git a/src/routes/notifications/+page.svelte b/src/routes/notifications/+page.svelte index 128293d..901da39 100644 --- a/src/routes/notifications/+page.svelte +++ b/src/routes/notifications/+page.svelte @@ -7,7 +7,7 @@ import PageHeader from '../../lib/ui/core/PageHeader.svelte'; import Lang from '$lib/lang'; - const lang = Lang(); + const lang = Lang('en_GB'); if (!$account) goto("/");