summaryrefslogtreecommitdiff
path: root/packages/client/src/instance.ts
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2022-02-28 22:42:32 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2022-02-28 22:42:32 +0900
commit94d4f8271e3406ff549a8f18831fb74adcd0d1ab (patch)
treec797bde2136e749743056b8700d11e27f8e396d5 /packages/client/src/instance.ts
parentfix esm (diff)
downloadsharkey-94d4f8271e3406ff549a8f18831fb74adcd0d1ab.tar.gz
sharkey-94d4f8271e3406ff549a8f18831fb74adcd0d1ab.tar.bz2
sharkey-94d4f8271e3406ff549a8f18831fb74adcd0d1ab.zip
refactor
Diffstat (limited to 'packages/client/src/instance.ts')
-rw-r--r--packages/client/src/instance.ts9
1 files changed, 7 insertions, 2 deletions
diff --git a/packages/client/src/instance.ts b/packages/client/src/instance.ts
index 6e912aa2e5..85ad84b43c 100644
--- a/packages/client/src/instance.ts
+++ b/packages/client/src/instance.ts
@@ -8,11 +8,11 @@ const data = localStorage.getItem('instance');
// TODO: instanceをリアクティブにするかは再考の余地あり
-export const instance: Misskey.entities.InstanceMetadata = reactive(data ? JSON.parse(data) : {
+export const instance: Misskey.entities.InstanceMetadata = reactive(data != null ? JSON.parse(data) : {
// TODO: set default values
});
-export async function fetchInstance() {
+async function fetchInstance() {
const meta = await api('meta', {
detail: false
});
@@ -24,6 +24,11 @@ export async function fetchInstance() {
localStorage.setItem('instance', JSON.stringify(instance));
}
+const initialFetchPromise = fetchInstance();
+export const instanceMetaReady = data != null ? Promise.resolve() : initialFetchPromise;
+
+export const refetchInstanceMeta = fetchInstance;
+
export const emojiCategories = computed(() => {
if (instance.emojis == null) return [];
const categories = new Set();