mirror of
https://iceshrimp.dev/Crimekillz/jointrashposs.git
synced 2024-11-22 00:43:50 +01:00
(wip) server page
This commit is contained in:
parent
09ed2249e4
commit
66c32554c5
29
assets/css/bootstrap-forms.scss
vendored
Normal file
29
assets/css/bootstrap-forms.scss
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
@import "bootstrap/scss/mixins/banner";
|
||||||
|
@include bsBanner("Forms & Buttons");
|
||||||
|
|
||||||
|
//$primary: #4a4c94;
|
||||||
|
$primary: #86b300;
|
||||||
|
|
||||||
|
// scss-docs-start import-stack
|
||||||
|
// Configuration
|
||||||
|
@import "bootstrap/scss/functions";
|
||||||
|
@import "bootstrap/scss/variables";
|
||||||
|
@import "bootstrap/scss/variables-dark";
|
||||||
|
@import "bootstrap/scss/maps";
|
||||||
|
@import "bootstrap/scss/mixins";
|
||||||
|
@import "bootstrap/scss/utilities";
|
||||||
|
|
||||||
|
// Layout & components
|
||||||
|
@import "bootstrap/scss/root";
|
||||||
|
|
||||||
|
// Breaking down form components
|
||||||
|
@import "bootstrap/scss/forms/labels";
|
||||||
|
@import "bootstrap/scss/forms/form-control";
|
||||||
|
@import "bootstrap/scss/forms/form-select";
|
||||||
|
@import "bootstrap/scss/forms/form-range";
|
||||||
|
@import "bootstrap/scss/forms/form-check";
|
||||||
|
@import "bootstrap/scss/forms/input-group";
|
||||||
|
|
||||||
|
// button
|
||||||
|
@import "bootstrap/scss/buttons";
|
||||||
|
@import "bootstrap/scss/button-group";
|
@ -19,6 +19,10 @@
|
|||||||
height: 1em;
|
height: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
min-height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
@tailwind base;
|
@tailwind base;
|
||||||
@tailwind components;
|
@tailwind components;
|
||||||
@tailwind utilities;
|
@tailwind utilities;
|
||||||
|
82
assets/data/lang.ts
Normal file
82
assets/data/lang.ts
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
export default [
|
||||||
|
{
|
||||||
|
"lang": "de",
|
||||||
|
"label": "Deutsch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "en",
|
||||||
|
"label": "English"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "es",
|
||||||
|
"label": "español"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "es-419",
|
||||||
|
"label": "español (Latinoamérica)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "fr",
|
||||||
|
"label": "français"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "hr",
|
||||||
|
"label": "hrvatski"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "it",
|
||||||
|
"label": "italiano"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "nl",
|
||||||
|
"label": "Nederlands"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "pl",
|
||||||
|
"label": "polski"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "pt-BR",
|
||||||
|
"label": "português (Brasil)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "pt-PT",
|
||||||
|
"label": "português (Portugal)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "vi",
|
||||||
|
"label": "Tiếng Việt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "tr",
|
||||||
|
"label": "Türkçe"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "ru",
|
||||||
|
"label": "русский"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "ar",
|
||||||
|
"label": "العربية"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "th",
|
||||||
|
"label": "ไทย"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "ko",
|
||||||
|
"label": "한국어"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "zh-CN",
|
||||||
|
"label": "中文 (简体)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "zh-TW",
|
||||||
|
"label": "中文 (繁體)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lang": "ja",
|
||||||
|
"label": "日本語"
|
||||||
|
}
|
||||||
|
];
|
21
components/g/Hero.vue
Normal file
21
components/g/Hero.vue
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
<template>
|
||||||
|
<header>
|
||||||
|
<div class="container mx-auto max-w-screen-xl px-6 min-h-[330px] py-4 space-y-6 lg:space-y-0 lg:flex items-center justify-between lg:space-x-6">
|
||||||
|
<div class="max-w-lg mx-auto lg:mx-0">
|
||||||
|
<h1 class="font-title font-bold text-center lg:text-start text-2xl lg:text-4xl mb-4"><slot name="title"></slot></h1>
|
||||||
|
<p class="opacity-90 lg:text-lg lg:leading-relaxed max-w-lg"><slot name="description"></slot></p>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<slot name="icon"></slot>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -1,15 +1,56 @@
|
|||||||
<template>
|
<template>
|
||||||
<nav class="h-[4rem] fixed top-0 left-0 w-full bg-white dark:bg-gray-700 bg-opacity-80 backdrop-blur-lg z-[9950]">
|
<nav class="sticky top-0 z-[9900] md:relative container mx-auto max-w-screen-xl h-16 lg:h-20 grid items-center grid-cols-2 md:grid-cols-4 lg:grid-cols-6 p-4">
|
||||||
|
<div class="">
|
||||||
|
<GNuxtLink :to="localePath('/')" class="flex items-center space-x-2 hover:opacity-80">
|
||||||
|
<MiIcon class="h-8 w-8" />
|
||||||
|
<div class="font-title font-bold text-lg">{{ $t('_seo.siteName') }}</div>
|
||||||
|
</GNuxtLink>
|
||||||
|
</div>
|
||||||
|
<ul class="hidden lg:col-span-4 lg:space-x-8 xl:space-x-10 lg:flex justify-center">
|
||||||
|
<li v-for="item in NavData.center">
|
||||||
|
<GNuxtLink :to="localePath(item.to)" :class="['rounded-full px-4 py-1.5 hover:bg-slate-300 dark:hover:bg-slate-700 hover:bg-opacity-50 bg-blend-multiply', { 'bg-slate-200 dark:bg-slate-800': path.includes(item.to) }]">
|
||||||
|
<component v-if="item.icon" :is="item.icon" class="h-5 w-5" />
|
||||||
|
<template v-else>
|
||||||
|
{{ $t(item.i18n) }}
|
||||||
|
</template>
|
||||||
|
</GNuxtLink>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div>
|
||||||
|
<ul class="hidden lg:col-span-4 lg:space-x-4 lg:flex justify-center">
|
||||||
|
<li class="relative group">
|
||||||
|
<a class="hover:opacity-80" href="#"><I18nIcon class="h-5 w-5" /><span class="sr-only">{{ $t('_nav.switchLang') }}</span></a>
|
||||||
|
<div class="absolute top-6 right-0 hidden group-hover:block z-[9955]">
|
||||||
|
<ul class="px-4 py-2 bg-slate-50 dark:bg-slate-700 rounded-lg shadow-lg space-y-1">
|
||||||
|
<li v-for="locale in locales">
|
||||||
|
<GNuxtLink :to="switchLocalePath(locale.code)" class="hover:text-accent-600">
|
||||||
|
{{ locale.name }}
|
||||||
|
</GNuxtLink>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li class="border-l"></li>
|
||||||
|
<li v-for="item in NavData.right">
|
||||||
|
<GNuxtLink :to="item.to" class="hover:opacity-80">
|
||||||
|
<component v-if="item.icon" :is="item.icon" class="h-5 w-5" />
|
||||||
|
<template v-else>
|
||||||
|
{{ $t(item.i18n) }}
|
||||||
|
</template>
|
||||||
|
</GNuxtLink>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup>
|
||||||
defineProps<{
|
import MiIcon from '@/assets/svg/misskey_mi_bi.svg';
|
||||||
isOpen: boolean;
|
import I18nIcon from 'bi/translate.svg';
|
||||||
}>();
|
import NavData from '@/assets/data/nav';
|
||||||
|
|
||||||
|
const { locales } = useI18n();
|
||||||
|
const { path } = useRoute();
|
||||||
|
const switchLocalePath = useSwitchLocalePath();
|
||||||
|
const localePath = useLocalePath();
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
|
||||||
|
|
||||||
</style>
|
|
@ -3,7 +3,7 @@
|
|||||||
<div class="">
|
<div class="">
|
||||||
<GNuxtLink to="/" class="flex items-center space-x-2 hover:opacity-80">
|
<GNuxtLink to="/" class="flex items-center space-x-2 hover:opacity-80">
|
||||||
<MiIcon class="h-8 w-8" />
|
<MiIcon class="h-8 w-8" />
|
||||||
<div class="font-title font-bold text-lg">Misskey Hub</div>
|
<div class="font-title font-bold text-lg">{{ $t('_seo.siteName') }}</div>
|
||||||
</GNuxtLink>
|
</GNuxtLink>
|
||||||
</div>
|
</div>
|
||||||
<ul class="hidden lg:col-span-4 lg:space-x-8 xl:space-x-10 lg:flex justify-center">
|
<ul class="hidden lg:col-span-4 lg:space-x-8 xl:space-x-10 lg:flex justify-center">
|
||||||
|
17
components/servers/Item.vue
Normal file
17
components/servers/Item.vue
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import type { InstanceItem } from 'types/instances-info';
|
||||||
|
|
||||||
|
defineProps<{
|
||||||
|
instance: InstanceItem;
|
||||||
|
}>()
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -72,4 +72,29 @@ _landing:
|
|||||||
docs: "ドキュメントを見る"
|
docs: "ドキュメントを見る"
|
||||||
_donation:
|
_donation:
|
||||||
title: "寄付のお願い"
|
title: "寄付のお願い"
|
||||||
description: "Misskeyは非営利なため、開発資金は皆様からの寄付に頼っています。Misskeyを気に入られたら、今後も開発を続けられるようにぜひ支援をお願いします。"
|
description: "Misskeyは非営利なため、開発資金は皆様からの寄付に頼っています。Misskeyを気に入られたら、今後も開発を続けられるようにぜひ支援をお願いします。"
|
||||||
|
_servers:
|
||||||
|
title: "サーバー一覧"
|
||||||
|
description: "Misskeyは単一のサービスではなく、各々がサービスを提供する分散型ネットワークとなっています。Misskeyを利用するには、サービスを提供しているサーバーでアカウントを作成する必要があります。"
|
||||||
|
addYourServer: "あなたのサーバーが表示されませんか?{0}から登録してください!"
|
||||||
|
addYourServerLink: "こちら"
|
||||||
|
_system:
|
||||||
|
fetchError: "データの読み込みに失敗しました。後でもう一度お試しください。"
|
||||||
|
_statistics:
|
||||||
|
notes: "ノート数"
|
||||||
|
users: "ユーザー数"
|
||||||
|
servers: "サーバー数"
|
||||||
|
_search:
|
||||||
|
title: "絞り込み検索"
|
||||||
|
all: "すべて"
|
||||||
|
lang: "言語"
|
||||||
|
orderBy: "並び替え"
|
||||||
|
recomendded: "デフォルト"
|
||||||
|
notesCount: "ノート数"
|
||||||
|
usersCount: "ユーザー数"
|
||||||
|
_registerAcceptance:
|
||||||
|
title: "新規登録"
|
||||||
|
public: "開放"
|
||||||
|
inviteOnly: "招待のみ"
|
||||||
|
|
||||||
|
|
@ -7,6 +7,7 @@ export default defineNuxtConfig({
|
|||||||
devtools: { enabled: true },
|
devtools: { enabled: true },
|
||||||
css: [
|
css: [
|
||||||
"@/assets/css/tailwind.css",
|
"@/assets/css/tailwind.css",
|
||||||
|
"@/assets/css/bootstrap-forms.scss",
|
||||||
],
|
],
|
||||||
modules: [
|
modules: [
|
||||||
'@nuxt/content',
|
'@nuxt/content',
|
||||||
|
@ -18,11 +18,13 @@
|
|||||||
"@types/three": "^0.153.0",
|
"@types/three": "^0.153.0",
|
||||||
"@types/tinycolor2": "^1.4.3",
|
"@types/tinycolor2": "^1.4.3",
|
||||||
"autoprefixer": "^10.4.14",
|
"autoprefixer": "^10.4.14",
|
||||||
|
"bootstrap": "^5.3.0",
|
||||||
"bootstrap-icons": "^1.10.5",
|
"bootstrap-icons": "^1.10.5",
|
||||||
"github-markdown-css": "^5.2.0",
|
"github-markdown-css": "^5.2.0",
|
||||||
"meshline": "^3.1.6",
|
"meshline": "^3.1.6",
|
||||||
"nuxt": "^3.6.2",
|
"nuxt": "^3.6.2",
|
||||||
"postcss": "^8.4.25",
|
"postcss": "^8.4.25",
|
||||||
|
"sass": "^1.63.6",
|
||||||
"schema-dts": "^1.1.2",
|
"schema-dts": "^1.1.2",
|
||||||
"sitemap": "^7.1.1",
|
"sitemap": "^7.1.1",
|
||||||
"tailwindcss": "^3.3.2",
|
"tailwindcss": "^3.3.2",
|
||||||
|
@ -1,13 +1,107 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
|
<GHero>
|
||||||
|
<template #title>{{ $t('_servers.title') }}</template>
|
||||||
|
<template #description>
|
||||||
|
{{ $t('_servers.description') }}<br>
|
||||||
|
<I18nT keypath="_servers.addYourServer" tag="span">
|
||||||
|
<NuxtLink class="font-bold hover:underline underline-offset-4" to="https://github.com/joinmisskey/api">{{ $t('_servers.addYourServerLink') }}</NuxtLink>
|
||||||
|
</I18nT>
|
||||||
|
</template>
|
||||||
|
<template #icon>
|
||||||
|
<div class="relative px-6 py-8">
|
||||||
|
<GDots class="absolute top-0 left-0 w-32 h-32 text-accent-600" />
|
||||||
|
<GDots class="absolute bottom-0 right-0 w-32 h-32 text-accent-600" />
|
||||||
|
<div class="relative bg-white dark:bg-slate-800 shadow-lg rounded-lg lg:w-72 p-6 space-y-4">
|
||||||
|
<dl>
|
||||||
|
<dt>{{ $t('_servers._statistics.notes') }}</dt>
|
||||||
|
<dd class="font-bold text-accent-600 text-2xl">{{ data?.stats.notesCount.toLocaleString() }}</dd>
|
||||||
|
</dl>
|
||||||
|
<dl>
|
||||||
|
<dt>{{ $t('_servers._statistics.users') }}</dt>
|
||||||
|
<dd class="font-bold text-accent-600 text-2xl">{{ data?.stats.usersCount.toLocaleString() }}</dd>
|
||||||
|
</dl>
|
||||||
|
<dl>
|
||||||
|
<dt>{{ $t('_servers._statistics.servers') }}</dt>
|
||||||
|
<dd class="font-bold text-accent-600 text-2xl">{{ data?.stats.instancesCount.toLocaleString() }}</dd>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</GHero>
|
||||||
|
<div class="mt-12 pt-6 bg-white dark:bg-slate-950">
|
||||||
|
<div class="container mx-auto max-w-screen-xl px-6 grid server-list gap-8">
|
||||||
|
<aside class="hidden lg:block">
|
||||||
|
<div class="sticky top-6 py-2 space-y-4">
|
||||||
|
<h3 class="text-xl font-bold">絞り込み検索</h3>
|
||||||
|
<div>
|
||||||
|
<label class="form-label" for="languages">{{ $t('_servers._search.lang') }}</label>
|
||||||
|
<select id="languages" class="form-select">
|
||||||
|
<option :value="null">{{ $t('_servers._search.all') }}</option>
|
||||||
|
<option v-for="lang in langs" :value="lang.lang">{{ lang.label }}</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<label class="form-label" for="orderBy">{{ $t('_servers._search.orderBy') }}</label>
|
||||||
|
<select id="orderBy" class="form-select">
|
||||||
|
<option value="recomendded">{{ $t('_servers._search.recomendded') }}</option>
|
||||||
|
<option value="notesCount">{{ $t('_servers._search.notesCount') }}</option>
|
||||||
|
<option value="usersCount">{{ $t('_servers._search.usersCount') }}</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div class="mb-1">{{ $t('_servers._search._registerAcceptance.title') }}</div>
|
||||||
|
<div class="form-check">
|
||||||
|
<input class="form-check-input" type="radio" name="registerAcceptance" :value="null" id="registerAcceptance0">
|
||||||
|
<label class="form-check-label" for="registerAcceptance0">
|
||||||
|
{{ $t('_servers._search.all') }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-check">
|
||||||
|
<input class="form-check-input" type="radio" name="registerAcceptance" value="public" id="registerAcceptance1">
|
||||||
|
<label class="form-check-label" for="registerAcceptance1">
|
||||||
|
{{ $t('_servers._search._registerAcceptance.public') }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-check">
|
||||||
|
<input class="form-check-input" type="radio" name="registerAcceptance" value="inviteOnly" id="registerAcceptance2">
|
||||||
|
<label class="form-check-label" for="registerAcceptance2">
|
||||||
|
{{ $t('_servers._search._registerAcceptance.inviteOnly') }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</aside>
|
||||||
|
<div class="grid gap-4 grid-cols-1 lg:grid-cols-3 xl:grid-cols-4">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import type { InstanceInfo } from '@/types/instances-info';
|
||||||
|
import langs from '@/assets/data/lang';
|
||||||
|
|
||||||
|
const { t, locale } = useI18n();
|
||||||
|
const route = useRoute();
|
||||||
|
|
||||||
|
route.meta.title = t('_servers.title');
|
||||||
|
route.meta.description = t('_servers.description');
|
||||||
|
|
||||||
|
const { data } = await useFetch<InstanceInfo>('https://instanceapp.misskey.page/instances.json', {
|
||||||
|
onRequestError: () => {
|
||||||
|
alert(t('_servers._system.fetchError'));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
@screen lg {
|
||||||
|
.server-list {
|
||||||
|
grid-template-columns: 300px 1fr;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
@ -32,6 +32,9 @@ devDependencies:
|
|||||||
autoprefixer:
|
autoprefixer:
|
||||||
specifier: ^10.4.14
|
specifier: ^10.4.14
|
||||||
version: 10.4.14(postcss@8.4.25)
|
version: 10.4.14(postcss@8.4.25)
|
||||||
|
bootstrap:
|
||||||
|
specifier: ^5.3.0
|
||||||
|
version: 5.3.0(@popperjs/core@2.11.8)
|
||||||
bootstrap-icons:
|
bootstrap-icons:
|
||||||
specifier: ^1.10.5
|
specifier: ^1.10.5
|
||||||
version: 1.10.5
|
version: 1.10.5
|
||||||
@ -43,10 +46,13 @@ devDependencies:
|
|||||||
version: 3.1.6(three@0.154.0)
|
version: 3.1.6(three@0.154.0)
|
||||||
nuxt:
|
nuxt:
|
||||||
specifier: ^3.6.2
|
specifier: ^3.6.2
|
||||||
version: 3.6.2(@types/node@18.0.0)(typescript@5.1.6)
|
version: 3.6.2(@types/node@18.0.0)(sass@1.63.6)(typescript@5.1.6)
|
||||||
postcss:
|
postcss:
|
||||||
specifier: ^8.4.25
|
specifier: ^8.4.25
|
||||||
version: 8.4.25
|
version: 8.4.25
|
||||||
|
sass:
|
||||||
|
specifier: ^1.63.6
|
||||||
|
version: 1.63.6
|
||||||
schema-dts:
|
schema-dts:
|
||||||
specifier: ^1.1.2
|
specifier: ^1.1.2
|
||||||
version: 1.1.2(typescript@5.1.6)
|
version: 1.1.2(typescript@5.1.6)
|
||||||
@ -897,6 +903,11 @@ packages:
|
|||||||
engines: {node: '>= 16'}
|
engines: {node: '>= 16'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
/@intlify/shared@9.3.0-beta.24:
|
||||||
|
resolution: {integrity: sha512-AKxJ8s7eKIQWkNaf4wyyoLRwf4puCuQgjSChlDJm5JBEt6T8HGgnYTJLRXu6LD/JACn3Qwu6hM/XRX1c9yvjmQ==}
|
||||||
|
engines: {node: '>= 16'}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/@intlify/unplugin-vue-i18n@0.12.1(vue-i18n@9.3.0-beta.22):
|
/@intlify/unplugin-vue-i18n@0.12.1(vue-i18n@9.3.0-beta.22):
|
||||||
resolution: {integrity: sha512-gdWRdlOWC8x/OyvVk5qnGnvScMj+PRZaTB4LBf24l7X1dhGYVrQVt2dAZt97tSpEwRRxy4vBaL/qBqKN4kkaRw==}
|
resolution: {integrity: sha512-gdWRdlOWC8x/OyvVk5qnGnvScMj+PRZaTB4LBf24l7X1dhGYVrQVt2dAZt97tSpEwRRxy4vBaL/qBqKN4kkaRw==}
|
||||||
engines: {node: '>= 14.16'}
|
engines: {node: '>= 14.16'}
|
||||||
@ -1067,7 +1078,7 @@ packages:
|
|||||||
'@rollup/pluginutils': 5.0.2(rollup@3.26.2)
|
'@rollup/pluginutils': 5.0.2(rollup@3.26.2)
|
||||||
js-yaml: 4.1.0
|
js-yaml: 4.1.0
|
||||||
tosource: 2.0.0-alpha.3
|
tosource: 2.0.0-alpha.3
|
||||||
vite: 4.4.2(@types/node@18.0.0)
|
vite: 4.4.2(@types/node@18.0.0)(sass@1.63.6)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- rollup
|
- rollup
|
||||||
dev: true
|
dev: true
|
||||||
@ -1230,8 +1241,8 @@ packages:
|
|||||||
'@nuxt/kit': 3.6.2
|
'@nuxt/kit': 3.6.2
|
||||||
'@nuxt/schema': 3.6.2
|
'@nuxt/schema': 3.6.2
|
||||||
execa: 7.1.1
|
execa: 7.1.1
|
||||||
nuxt: 3.6.2(@types/node@18.0.0)(typescript@5.1.6)
|
nuxt: 3.6.2(@types/node@18.0.0)(sass@1.63.6)(typescript@5.1.6)
|
||||||
vite: 4.4.2(@types/node@18.0.0)
|
vite: 4.4.2(@types/node@18.0.0)(sass@1.63.6)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
@ -1279,7 +1290,7 @@ packages:
|
|||||||
launch-editor: 2.6.0
|
launch-editor: 2.6.0
|
||||||
local-pkg: 0.4.3
|
local-pkg: 0.4.3
|
||||||
magicast: 0.2.9
|
magicast: 0.2.9
|
||||||
nuxt: 3.6.2(@types/node@18.0.0)(typescript@5.1.6)
|
nuxt: 3.6.2(@types/node@18.0.0)(sass@1.63.6)(typescript@5.1.6)
|
||||||
nypm: 0.2.2
|
nypm: 0.2.2
|
||||||
pacote: 15.2.0
|
pacote: 15.2.0
|
||||||
pathe: 1.1.1
|
pathe: 1.1.1
|
||||||
@ -1290,7 +1301,7 @@ packages:
|
|||||||
semver: 7.5.3
|
semver: 7.5.3
|
||||||
sirv: 2.0.3
|
sirv: 2.0.3
|
||||||
unimport: 3.0.14(rollup@3.26.2)
|
unimport: 3.0.14(rollup@3.26.2)
|
||||||
vite: 4.4.2(@types/node@18.0.0)
|
vite: 4.4.2(@types/node@18.0.0)(sass@1.63.6)
|
||||||
vite-plugin-inspect: 0.7.32(vite@4.4.2)
|
vite-plugin-inspect: 0.7.32(vite@4.4.2)
|
||||||
vite-plugin-vue-inspector: 3.4.2(vite@4.4.2)
|
vite-plugin-vue-inspector: 3.4.2(vite@4.4.2)
|
||||||
wait-on: 7.0.1
|
wait-on: 7.0.1
|
||||||
@ -1381,7 +1392,7 @@ packages:
|
|||||||
resolution: {integrity: sha512-MSZza7dxccNb/p7nuzGF8/m4POaFpHzVhNdR7f4xahOpH7Ja02lFeYR+rHtoHIJC0yym4qriqv0mQ+Qf/R61bQ==}
|
resolution: {integrity: sha512-MSZza7dxccNb/p7nuzGF8/m4POaFpHzVhNdR7f4xahOpH7Ja02lFeYR+rHtoHIJC0yym4qriqv0mQ+Qf/R61bQ==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@nuxt/vite-builder@3.6.2(@types/node@18.0.0)(typescript@5.1.6)(vue@3.3.4):
|
/@nuxt/vite-builder@3.6.2(@types/node@18.0.0)(sass@1.63.6)(typescript@5.1.6)(vue@3.3.4):
|
||||||
resolution: {integrity: sha512-+JOWj8f5W5CKTHCPUhcuHrIIfOJHMdOaRfWA6DiIK8xPUQ5b3i737GQ9CRoSBHr9EaySJVuYjs6ptT6r0t7Spg==}
|
resolution: {integrity: sha512-+JOWj8f5W5CKTHCPUhcuHrIIfOJHMdOaRfWA6DiIK8xPUQ5b3i737GQ9CRoSBHr9EaySJVuYjs6ptT6r0t7Spg==}
|
||||||
engines: {node: ^14.18.0 || >=16.10.0}
|
engines: {node: ^14.18.0 || >=16.10.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -1418,8 +1429,8 @@ packages:
|
|||||||
strip-literal: 1.0.1
|
strip-literal: 1.0.1
|
||||||
ufo: 1.1.2
|
ufo: 1.1.2
|
||||||
unplugin: 1.3.2
|
unplugin: 1.3.2
|
||||||
vite: 4.3.9(@types/node@18.0.0)
|
vite: 4.3.9(@types/node@18.0.0)(sass@1.63.6)
|
||||||
vite-node: 0.32.4(@types/node@18.0.0)
|
vite-node: 0.32.4(@types/node@18.0.0)(sass@1.63.6)
|
||||||
vite-plugin-checker: 0.6.1(typescript@5.1.6)(vite@4.3.9)
|
vite-plugin-checker: 0.6.1(typescript@5.1.6)(vite@4.3.9)
|
||||||
vue: 3.3.4
|
vue: 3.3.4
|
||||||
vue-bundle-renderer: 1.0.3
|
vue-bundle-renderer: 1.0.3
|
||||||
@ -1509,6 +1520,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
|
resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
/@popperjs/core@2.11.8:
|
||||||
|
resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/@rollup/plugin-alias@5.0.0(rollup@3.26.2):
|
/@rollup/plugin-alias@5.0.0(rollup@3.26.2):
|
||||||
resolution: {integrity: sha512-l9hY5chSCjuFRPsnRm16twWBiSApl2uYFLsepQYwtBuAxNMQ/1dJqADld40P0Jkqm65GRTLy/AC6hnpVebtLsA==}
|
resolution: {integrity: sha512-l9hY5chSCjuFRPsnRm16twWBiSApl2uYFLsepQYwtBuAxNMQ/1dJqADld40P0Jkqm65GRTLy/AC6hnpVebtLsA==}
|
||||||
engines: {node: '>=14.0.0'}
|
engines: {node: '>=14.0.0'}
|
||||||
@ -1864,7 +1879,7 @@ packages:
|
|||||||
'@babel/core': 7.22.8
|
'@babel/core': 7.22.8
|
||||||
'@babel/plugin-transform-typescript': 7.22.5(@babel/core@7.22.8)
|
'@babel/plugin-transform-typescript': 7.22.5(@babel/core@7.22.8)
|
||||||
'@vue/babel-plugin-jsx': 1.1.5(@babel/core@7.22.8)
|
'@vue/babel-plugin-jsx': 1.1.5(@babel/core@7.22.8)
|
||||||
vite: 4.3.9(@types/node@18.0.0)
|
vite: 4.3.9(@types/node@18.0.0)(sass@1.63.6)
|
||||||
vue: 3.3.4
|
vue: 3.3.4
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
@ -1877,7 +1892,7 @@ packages:
|
|||||||
vite: ^4.0.0
|
vite: ^4.0.0
|
||||||
vue: ^3.2.25
|
vue: ^3.2.25
|
||||||
dependencies:
|
dependencies:
|
||||||
vite: 4.3.9(@types/node@18.0.0)
|
vite: 4.3.9(@types/node@18.0.0)(sass@1.63.6)
|
||||||
vue: 3.3.4
|
vue: 3.3.4
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
@ -2324,6 +2339,14 @@ packages:
|
|||||||
resolution: {integrity: sha512-oSX26F37V7QV7NCE53PPEL45d7EGXmBgHG3pDpZvcRaKVzWMqIRL9wcqJUyEha1esFtM3NJzvmxFXDxjJYD0jQ==}
|
resolution: {integrity: sha512-oSX26F37V7QV7NCE53PPEL45d7EGXmBgHG3pDpZvcRaKVzWMqIRL9wcqJUyEha1esFtM3NJzvmxFXDxjJYD0jQ==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
/bootstrap@5.3.0(@popperjs/core@2.11.8):
|
||||||
|
resolution: {integrity: sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==}
|
||||||
|
peerDependencies:
|
||||||
|
'@popperjs/core': ^2.11.7
|
||||||
|
dependencies:
|
||||||
|
'@popperjs/core': 2.11.8
|
||||||
|
dev: true
|
||||||
|
|
||||||
/boxen@7.1.1:
|
/boxen@7.1.1:
|
||||||
resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==}
|
resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==}
|
||||||
engines: {node: '>=14.16'}
|
engines: {node: '>=14.16'}
|
||||||
@ -4074,6 +4097,10 @@ packages:
|
|||||||
engines: {node: '>=10.18.0'}
|
engines: {node: '>=10.18.0'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
/immutable@4.3.0:
|
||||||
|
resolution: {integrity: sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==}
|
||||||
|
dev: true
|
||||||
|
|
||||||
/imurmurhash@0.1.4:
|
/imurmurhash@0.1.4:
|
||||||
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
|
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
|
||||||
engines: {node: '>=0.8.19'}
|
engines: {node: '>=0.8.19'}
|
||||||
@ -5586,7 +5613,7 @@ packages:
|
|||||||
fsevents: 2.3.2
|
fsevents: 2.3.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/nuxt@3.6.2(@types/node@18.0.0)(typescript@5.1.6):
|
/nuxt@3.6.2(@types/node@18.0.0)(sass@1.63.6)(typescript@5.1.6):
|
||||||
resolution: {integrity: sha512-nzxXEKyjBUjRIfP/vojFdZ9RbpaiVftatT+p5tzJGea8beocRB2XsZ0hcDtmMuOcF6glQjG3EIsVu2p9Ckz/Kg==}
|
resolution: {integrity: sha512-nzxXEKyjBUjRIfP/vojFdZ9RbpaiVftatT+p5tzJGea8beocRB2XsZ0hcDtmMuOcF6glQjG3EIsVu2p9Ckz/Kg==}
|
||||||
engines: {node: ^14.18.0 || >=16.10.0}
|
engines: {node: ^14.18.0 || >=16.10.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -5602,7 +5629,7 @@ packages:
|
|||||||
'@nuxt/schema': 3.6.2
|
'@nuxt/schema': 3.6.2
|
||||||
'@nuxt/telemetry': 2.3.1
|
'@nuxt/telemetry': 2.3.1
|
||||||
'@nuxt/ui-templates': 1.2.0
|
'@nuxt/ui-templates': 1.2.0
|
||||||
'@nuxt/vite-builder': 3.6.2(@types/node@18.0.0)(typescript@5.1.6)(vue@3.3.4)
|
'@nuxt/vite-builder': 3.6.2(@types/node@18.0.0)(sass@1.63.6)(typescript@5.1.6)(vue@3.3.4)
|
||||||
'@types/node': 18.0.0
|
'@types/node': 18.0.0
|
||||||
'@unhead/ssr': 1.1.30
|
'@unhead/ssr': 1.1.30
|
||||||
'@unhead/vue': 1.1.30(vue@3.3.4)
|
'@unhead/vue': 1.1.30(vue@3.3.4)
|
||||||
@ -6699,6 +6726,16 @@ packages:
|
|||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
/sass@1.63.6:
|
||||||
|
resolution: {integrity: sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==}
|
||||||
|
engines: {node: '>=14.0.0'}
|
||||||
|
hasBin: true
|
||||||
|
dependencies:
|
||||||
|
chokidar: 3.5.3
|
||||||
|
immutable: 4.3.0
|
||||||
|
source-map-js: 1.0.2
|
||||||
|
dev: true
|
||||||
|
|
||||||
/sax@1.2.4:
|
/sax@1.2.4:
|
||||||
resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==}
|
resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==}
|
||||||
dev: true
|
dev: true
|
||||||
@ -7661,7 +7698,7 @@ packages:
|
|||||||
vfile-message: 3.1.4
|
vfile-message: 3.1.4
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/vite-node@0.32.4(@types/node@18.0.0):
|
/vite-node@0.32.4(@types/node@18.0.0)(sass@1.63.6):
|
||||||
resolution: {integrity: sha512-L2gIw+dCxO0LK14QnUMoqSYpa9XRGnTTTDjW2h19Mr+GR0EFj4vx52W41gFXfMLqpA00eK4ZjOVYo1Xk//LFEw==}
|
resolution: {integrity: sha512-L2gIw+dCxO0LK14QnUMoqSYpa9XRGnTTTDjW2h19Mr+GR0EFj4vx52W41gFXfMLqpA00eK4ZjOVYo1Xk//LFEw==}
|
||||||
engines: {node: '>=v14.18.0'}
|
engines: {node: '>=v14.18.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -7671,7 +7708,7 @@ packages:
|
|||||||
mlly: 1.4.0
|
mlly: 1.4.0
|
||||||
pathe: 1.1.1
|
pathe: 1.1.1
|
||||||
picocolors: 1.0.0
|
picocolors: 1.0.0
|
||||||
vite: 4.3.9(@types/node@18.0.0)
|
vite: 4.3.9(@types/node@18.0.0)(sass@1.63.6)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@types/node'
|
- '@types/node'
|
||||||
- less
|
- less
|
||||||
@ -7727,7 +7764,7 @@ packages:
|
|||||||
strip-ansi: 6.0.1
|
strip-ansi: 6.0.1
|
||||||
tiny-invariant: 1.3.1
|
tiny-invariant: 1.3.1
|
||||||
typescript: 5.1.6
|
typescript: 5.1.6
|
||||||
vite: 4.3.9(@types/node@18.0.0)
|
vite: 4.3.9(@types/node@18.0.0)(sass@1.63.6)
|
||||||
vscode-languageclient: 7.0.0
|
vscode-languageclient: 7.0.0
|
||||||
vscode-languageserver: 7.0.0
|
vscode-languageserver: 7.0.0
|
||||||
vscode-languageserver-textdocument: 1.0.8
|
vscode-languageserver-textdocument: 1.0.8
|
||||||
@ -7747,7 +7784,7 @@ packages:
|
|||||||
open: 9.1.0
|
open: 9.1.0
|
||||||
picocolors: 1.0.0
|
picocolors: 1.0.0
|
||||||
sirv: 2.0.3
|
sirv: 2.0.3
|
||||||
vite: 4.4.2(@types/node@18.0.0)
|
vite: 4.4.2(@types/node@18.0.0)(sass@1.63.6)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
@ -7767,7 +7804,7 @@ packages:
|
|||||||
kolorist: 1.8.0
|
kolorist: 1.8.0
|
||||||
magic-string: 0.30.1
|
magic-string: 0.30.1
|
||||||
shell-quote: 1.8.1
|
shell-quote: 1.8.1
|
||||||
vite: 4.4.2(@types/node@18.0.0)
|
vite: 4.4.2(@types/node@18.0.0)(sass@1.63.6)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
@ -7779,7 +7816,7 @@ packages:
|
|||||||
svgo: 3.0.2
|
svgo: 3.0.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/vite@4.3.9(@types/node@18.0.0):
|
/vite@4.3.9(@types/node@18.0.0)(sass@1.63.6):
|
||||||
resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==}
|
resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==}
|
||||||
engines: {node: ^14.18.0 || >=16.0.0}
|
engines: {node: ^14.18.0 || >=16.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -7808,11 +7845,12 @@ packages:
|
|||||||
esbuild: 0.17.19
|
esbuild: 0.17.19
|
||||||
postcss: 8.4.25
|
postcss: 8.4.25
|
||||||
rollup: 3.26.2
|
rollup: 3.26.2
|
||||||
|
sass: 1.63.6
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
fsevents: 2.3.2
|
fsevents: 2.3.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/vite@4.4.2(@types/node@18.0.0):
|
/vite@4.4.2(@types/node@18.0.0)(sass@1.63.6):
|
||||||
resolution: {integrity: sha512-zUcsJN+UvdSyHhYa277UHhiJ3iq4hUBwHavOpsNUGsTgjBeoBlK8eDt+iT09pBq0h9/knhG/SPrZiM7cGmg7NA==}
|
resolution: {integrity: sha512-zUcsJN+UvdSyHhYa277UHhiJ3iq4hUBwHavOpsNUGsTgjBeoBlK8eDt+iT09pBq0h9/knhG/SPrZiM7cGmg7NA==}
|
||||||
engines: {node: ^14.18.0 || >=16.0.0}
|
engines: {node: ^14.18.0 || >=16.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -7844,6 +7882,7 @@ packages:
|
|||||||
esbuild: 0.18.11
|
esbuild: 0.18.11
|
||||||
postcss: 8.4.25
|
postcss: 8.4.25
|
||||||
rollup: 3.26.2
|
rollup: 3.26.2
|
||||||
|
sass: 1.63.6
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
fsevents: 2.3.2
|
fsevents: 2.3.2
|
||||||
dev: true
|
dev: true
|
||||||
@ -7934,7 +7973,7 @@ packages:
|
|||||||
vue-router:
|
vue-router:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@intlify/shared': 9.3.0-beta.22
|
'@intlify/shared': 9.3.0-beta.24
|
||||||
'@intlify/vue-i18n-bridge': 0.8.0(vue-i18n@9.3.0-beta.22)
|
'@intlify/vue-i18n-bridge': 0.8.0(vue-i18n@9.3.0-beta.22)
|
||||||
'@intlify/vue-router-bridge': 0.8.0(vue@3.3.4)
|
'@intlify/vue-router-bridge': 0.8.0(vue@3.3.4)
|
||||||
ufo: 1.1.2
|
ufo: 1.1.2
|
||||||
|
47
types/instances-info.ts
Normal file
47
types/instances-info.ts
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
/** 各インスタンスの情報 */
|
||||||
|
export type InstanceItem = {
|
||||||
|
/** Hostname (e.g. `misskey.io`) */
|
||||||
|
url: string;
|
||||||
|
/** Name (e.g. `すしすきー`) */
|
||||||
|
name: string;
|
||||||
|
/** Language the API author aqz set manually (e.g. `["ja"]`, `["zh"]`) */
|
||||||
|
langs: string[],
|
||||||
|
/** `meta.description` or the the API author aqz set manually */
|
||||||
|
description: string | null;
|
||||||
|
/** `true` only */
|
||||||
|
isAlive: true,
|
||||||
|
/** The server Value calculated from the version, etc. */
|
||||||
|
value: number,
|
||||||
|
/** Banner existance */
|
||||||
|
banner: boolean;
|
||||||
|
/** Background Image existance */
|
||||||
|
background: boolean;
|
||||||
|
/** Icon Image existance */
|
||||||
|
icon: boolean;
|
||||||
|
/** nodeinfo */
|
||||||
|
nodeinfo: Object | null,
|
||||||
|
/** result of api/meta */
|
||||||
|
meta: Object | null,
|
||||||
|
|
||||||
|
stats?: Object, // deprecated (result of api/stats)
|
||||||
|
};
|
||||||
|
|
||||||
|
/** JSON Object Returned from `joinmisskey/api`. */
|
||||||
|
export type InstanceInfo = {
|
||||||
|
/** The date instances.json was published at. */
|
||||||
|
date: string;
|
||||||
|
/** Statistics */
|
||||||
|
stats: {
|
||||||
|
/** Total notes */
|
||||||
|
notesCount: number;
|
||||||
|
/** Total Users */
|
||||||
|
usersCount: number;
|
||||||
|
/** Total MAUs */
|
||||||
|
mau: number;
|
||||||
|
/** Servers counter */
|
||||||
|
instancesCount: number;
|
||||||
|
},
|
||||||
|
/** Instance List */
|
||||||
|
instancesInfos: InstanceItem[];
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user