This commit is contained in:
parent
d12f67b2b0
commit
ad5262dc05
@ -1275,7 +1275,7 @@ inquiry: "Contact"
|
|||||||
here: "here"
|
here: "here"
|
||||||
credits: "Closing Credits"
|
credits: "Closing Credits"
|
||||||
timeWillCome: "Will this have your name on it someday?"
|
timeWillCome: "Will this have your name on it someday?"
|
||||||
thankYou: "Oscar will always surf the waves with you, forever."
|
thankYou: "Thank you for joining us!"
|
||||||
privateMode: "Private Mode"
|
privateMode: "Private Mode"
|
||||||
hideSensitiveInformation: "Hide sensitive information"
|
hideSensitiveInformation: "Hide sensitive information"
|
||||||
youAreHidingSensitiveInformation: "This content was hidden by 'Private Mode'."
|
youAreHidingSensitiveInformation: "This content was hidden by 'Private Mode'."
|
||||||
|
@ -1274,8 +1274,8 @@ useNativeUIForVideoAudioPlayer: "브라우저 UI에서 미디어 재생"
|
|||||||
here: "여기"
|
here: "여기"
|
||||||
alwaysConfirmFollow: "팔로우할 때 항상 확인하기"
|
alwaysConfirmFollow: "팔로우할 때 항상 확인하기"
|
||||||
credits: "엔딩 크레딧"
|
credits: "엔딩 크레딧"
|
||||||
timeWillCome: "언젠가 이 칸에 당신의 이름이 쓰여지는 날이 올까요?"
|
timeWillCome: "언젠가 당신의 이름이 쓰여지는 날이 올까요?"
|
||||||
thankYou: "오스카는 당신과 함께 서핑할 것입니다. 언제까지고."
|
thankYou: "함께 서핑해주셔서 감사합니다!"
|
||||||
privateMode: "프라이빗 모드"
|
privateMode: "프라이빗 모드"
|
||||||
hideSensitiveInformation: "민감한 정보 숨기기"
|
hideSensitiveInformation: "민감한 정보 숨기기"
|
||||||
youAreHidingSensitiveInformation: "'프라이빗 모드'에 의해 숨겨졌습니다."
|
youAreHidingSensitiveInformation: "'프라이빗 모드'에 의해 숨겨졌습니다."
|
||||||
|
@ -8,7 +8,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<div :class="[$style.main, $style.panel]">
|
<div :class="[$style.main, $style.panel]">
|
||||||
<img v-if="miLocalStorage.getItem('kawaii')" src="/client-assets/kawaii/about-icon.png" alt="Logo by @sawaratsuki@misskey.io" :class="$style.mainIconAlt"/>
|
<img v-if="miLocalStorage.getItem('kawaii')" src="/client-assets/kawaii/about-icon.png" alt="Logo by @sawaratsuki@misskey.io" :class="$style.mainIconAlt"/>
|
||||||
<img v-else :src="instance.iconUrl || '/favicon.ico'" alt="" :class="$style.mainIcon"/>
|
<img v-else :src="instance.iconUrl || '/favicon.ico'" alt="" :class="$style.mainIcon"/>
|
||||||
<button class="_button _acrylic" :class="$style.mainMenu" @click="showMenu"><i class="ti ti-dots"></i></button>
|
<button class="_button _acrylic" style="background: none;" :class="$style.mainMenu" @click="showMenu"><i class="ti ti-dots"></i></button>
|
||||||
<div :class="$style.mainFg">
|
<div :class="$style.mainFg">
|
||||||
<h1 :class="$style.mainTitle">
|
<h1 :class="$style.mainTitle">
|
||||||
<!-- 背景色によってはロゴが見えなくなるのでとりあえず無効に -->
|
<!-- 背景色によってはロゴが見えなくなるのでとりあえず無効に -->
|
||||||
@ -48,26 +48,25 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<div :class="$style.panel">
|
<div :class="$style.panel">
|
||||||
<XActiveUsersChart/>
|
<XActiveUsersChart/>
|
||||||
</div>
|
</div>
|
||||||
<!--
|
|
||||||
<div :class="[$style.footer, $style.panel]">
|
<div :class="[$style.footer, $style.panel]">
|
||||||
|
<!--
|
||||||
<div :class="$style.sponsors">
|
<div :class="$style.sponsors">
|
||||||
<div><Mfm text="$[jelly ❤]"/> Sponsored by</div>
|
<div><Mfm text="$[jelly ❤]"/> Sponsored by</div>
|
||||||
<a title="Skeb" href="https://skeb.jp/" target="_blank"><img src="https://media.misskeyusercontent.jp/misskey-io/sponsors/skeb.png" alt="Skeb" width="140"></a>
|
<a title="Skeb" href="https://skeb.jp/" target="_blank"><img src="https://media.misskeyusercontent.jp/misskey-io/sponsors/skeb.png" alt="Skeb" width="140"></a>
|
||||||
</div>
|
</div>
|
||||||
|
-->
|
||||||
<div :class="$style.legalNotice">
|
<div :class="$style.legalNotice">
|
||||||
<div>© {{ new Date().getFullYear() }} MisskeyHQ Inc.</div>
|
<div>© {{ new Date().getFullYear() }} OSCAR Node #4</div>
|
||||||
<a href="https://go.misskey.io/legal-notice" target="_blank" rel="noopener"><u>特定商取引法に基づく表記</u></a>
|
<div>Illustration by <u><a href="https://x.com/@DK_DK42" target="_blank" rel="noopener">@DK_DK42</a></u></div>
|
||||||
</div>
|
</div>
|
||||||
<div :class="$style.links">
|
<div :class="$style.links">
|
||||||
<a href="#" @click="os.pageWindow('/about')"><u>{{ instanceName }}</u></a>
|
<a href="#" @click="os.pageWindow('/about')"><u>{{ instanceName }}</u></a>
|
||||||
<a href="#" @click="os.pageWindow('/about-misskey')"><u>{{ i18n.ts.aboutMisskey }}</u></a>
|
<a href="#" @click="os.pageWindow('/about-misskey')"><u>{{ i18n.ts.aboutMisskey }}</u></a>
|
||||||
<a v-if="instance.tosUrl" :href="instance.tosUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.termsOfService }}</u></a>
|
<a v-if="instance.tosUrl" :href="instance.tosUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.termsOfService }}</u></a>
|
||||||
<a v-if="instance.privacyPolicyUrl" :href="instance.privacyPolicyUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.privacyPolicy }}</u></a>
|
<a v-if="instance.privacyPolicyUrl" :href="instance.privacyPolicyUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.privacyPolicy }}</u></a>
|
||||||
<a v-if="instance.impressumUrl" :href="instance.impressumUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.impressum }}</u></a>
|
|
||||||
<a v-if="instance.feedbackUrl" :href="instance.feedbackUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.support }}</u></a>
|
<a v-if="instance.feedbackUrl" :href="instance.feedbackUrl" target="_blank" rel="noopener"><u>{{ i18n.ts.support }}</u></a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
-->
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -25,12 +25,12 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<template #value><div v-html="instance.description"></div></template>
|
<template #value><div v-html="instance.description"></div></template>
|
||||||
</MkKeyValue>
|
</MkKeyValue>
|
||||||
|
|
||||||
<!--
|
|
||||||
<div style="display:flex;flex-direction:column;align-items:center;justify-content:center">
|
<div style="display:flex;flex-direction:column;align-items:center;justify-content:center">
|
||||||
<div>© {{ new Date().getFullYear() }} MisskeyHQ Inc.</div>
|
<div>© {{ new Date().getFullYear() }} OSCAR Node #4</div>
|
||||||
<a href="https://go.misskey.io/legal-notice" target="_blank" rel="noopener"><u>特定商取引法に基づく表記</u></a>
|
<div>Illustration by <u><a href="https://x.com/@DK_DK42" target="_blank" rel="noopener">@DK_DK42</a></u></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!--
|
||||||
<FormSection>
|
<FormSection>
|
||||||
<template #label><Mfm text="$[jelly ❤]"/> Sponsored by</template>
|
<template #label><Mfm text="$[jelly ❤]"/> Sponsored by</template>
|
||||||
<div style="display:flex;flex-wrap:wrap;gap:8px 8px;align-items:center;justify-content:center;">
|
<div style="display:flex;flex-wrap:wrap;gap:8px 8px;align-items:center;justify-content:center;">
|
||||||
@ -45,6 +45,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<template #key>Misskey</template>
|
<template #key>Misskey</template>
|
||||||
<template #value>{{ version }}</template>
|
<template #value>{{ version }}</template>
|
||||||
</MkKeyValue>
|
</MkKeyValue>
|
||||||
|
<!-- eslint-disable-next-line vue/no-v-html -->
|
||||||
<div v-html="i18n.tsx.poweredByMisskeyDescription({ name: instance.name ?? host })">
|
<div v-html="i18n.tsx.poweredByMisskeyDescription({ name: instance.name ?? host })">
|
||||||
</div>
|
</div>
|
||||||
<FormLink to="/about-misskey">
|
<FormLink to="/about-misskey">
|
||||||
@ -132,13 +133,21 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<template #label>{{ i18n.ts.credits }}</template>
|
<template #label>{{ i18n.ts.credits }}</template>
|
||||||
<div :class="$style.contributors">
|
<div :class="$style.contributors">
|
||||||
<MkA to="/@oscar" :class="$style.contributor">
|
<MkA to="/@oscar" :class="$style.contributor">
|
||||||
<img src="https://ocean.oscar.surf/contents/webpublic-7d8cefdf-cb70-448c-8e9e-1d5c95a18f96.webp" :class="$style.contributorAvatar" alt="Profile image of @oscar@oscar.surf">
|
<img src="https://board.oscar.surf/contents/webpublic-90b08b25-292c-4350-8d04-bc3e36d5dde6.png" :class="$style.contributorAvatar" alt="Profile image of @oscar@oscar.surf">
|
||||||
<span :class="$style.contributorUsername">@oscar
|
<span :class="$style.contributorUsername">@oscar
|
||||||
<span :class="$style.contributorClient">
|
<span :class="$style.contributorClient">
|
||||||
<span :class="$style.oscar">オスカー。</span>
|
<span :class="$style.oscar">オスカー。</span>
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
</MkA>
|
</MkA>
|
||||||
|
<MkA to="/@oscar" :class="$style.contributor">
|
||||||
|
<img src="https://board.oscar.surf/contents/4b54943f-2f88-4a53-80c6-97956650e28f.png" :class="$style.contributorAvatar" alt="Profile image of @oscar@oscar.surf">
|
||||||
|
<span :class="$style.contributorUsername">@ion
|
||||||
|
<span :class="$style.contributorClient">
|
||||||
|
<span :class="$style.oscar">オスカー。</span>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
</MkA>
|
||||||
<MkA v-if="$i !== null" :to="`/@${$i.username}`" :class="$style.contributor">
|
<MkA v-if="$i !== null" :to="`/@${$i.username}`" :class="$style.contributor">
|
||||||
<img :src="$i.avatarUrl ?? undefined" :class="$style.contributorAvatar" :alt="`Profile image of @${$i.username}@oscar.surf`">
|
<img :src="$i.avatarUrl ?? undefined" :class="$style.contributorAvatar" :alt="`Profile image of @${$i.username}@oscar.surf`">
|
||||||
<span :class="$style.contributorUsername">{{ `@${$i.username}` }}
|
<span :class="$style.contributorUsername">{{ `@${$i.username}` }}
|
||||||
|
@ -6,15 +6,15 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<template>
|
<template>
|
||||||
<div v-if="meta" class="rsqzvsbo">
|
<div v-if="meta" class="rsqzvsbo">
|
||||||
<MkFeaturedPhotos class="bg" special/>
|
<MkFeaturedPhotos class="bg" special/>
|
||||||
<img :src="entranceTide" class="extra-1"/>
|
<img :src="entranceTide" class="extra-1" alt="OSCAR Node #4 Branding Asset"/>
|
||||||
<XTimeline class="tl"/>
|
<XTimeline class="tl"/>
|
||||||
<div class="shape1"></div>
|
<div class="shape1"></div>
|
||||||
<div class="shape2"></div>
|
<div class="shape2"></div>
|
||||||
<img :src="entranceBackground" class="extra-2"/>
|
<img :src="entranceBackground" class="extra-2" alt="OSCAR Node #4 Branding Asset"/>
|
||||||
<img :src="entranceCharacter" class="extra-1"/>
|
<img :src="entranceCharacter" class="extra-1" alt="OSCAR Node #4 Branding Asset"/>
|
||||||
<div class="logo-wrapper">
|
<div class="logo-wrapper">
|
||||||
<div class="powered-by">Powered by</div>
|
<div class="powered-by">Powered by</div>
|
||||||
<img :src="misskeysvg" class="misskey"/>
|
<img :src="misskeysvg" class="misskey" alt="Misskey Logo"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="emojis">
|
<div class="emojis">
|
||||||
<MkEmoji :normal="true" :noStyle="true" emoji="👍"/>
|
<MkEmoji :normal="true" :noStyle="true" emoji="👍"/>
|
||||||
@ -22,54 +22,23 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||||||
<MkEmoji :normal="true" :noStyle="true" emoji="😆"/>
|
<MkEmoji :normal="true" :noStyle="true" emoji="😆"/>
|
||||||
<MkEmoji :normal="true" :noStyle="true" emoji="🎉"/>
|
<MkEmoji :normal="true" :noStyle="true" emoji="🎉"/>
|
||||||
<MkEmoji :normal="true" :noStyle="true" emoji="🍮"/>
|
<MkEmoji :normal="true" :noStyle="true" emoji="🍮"/>
|
||||||
|
<MkEmoji :normal="true" :noStyle="true" emoji="🌊"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="contents">
|
<div class="contents">
|
||||||
<MkVisitorDashboard/>
|
<MkVisitorDashboard/>
|
||||||
</div>
|
</div>
|
||||||
<!--
|
|
||||||
<div v-if="instances && instances.length > 0" class="federation">
|
|
||||||
<MarqueeText :duration="40">
|
|
||||||
<MkA v-for="instance in instances" :key="instance.id" :class="$style.federationInstance" :to="`/instance-info/${instance.host}`" behavior="window">
|
|
||||||
<MkInstanceCardMini :instance="instance"/>
|
|
||||||
<img v-if="instance.iconUrl" class="icon" :src="getInstanceIcon(instance)" alt=""/>
|
|
||||||
<span class="name _monospace">{{ instance.host }}</span>
|
|
||||||
</MkA>
|
|
||||||
</MarqueeText>
|
|
||||||
</div>
|
|
||||||
-->
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { ref } from 'vue';
|
|
||||||
import * as Misskey from 'misskey-js';
|
|
||||||
import XTimeline from './welcome.timeline.vue';
|
import XTimeline from './welcome.timeline.vue';
|
||||||
// import MarqueeText from '@/components/MkMarquee.vue';
|
|
||||||
import MkFeaturedPhotos from '@/components/MkFeaturedPhotos.vue';
|
import MkFeaturedPhotos from '@/components/MkFeaturedPhotos.vue';
|
||||||
import { misskeyApiGet } from '@/scripts/misskey-api.js';
|
|
||||||
import MkVisitorDashboard from '@/components/MkVisitorDashboard.vue';
|
import MkVisitorDashboard from '@/components/MkVisitorDashboard.vue';
|
||||||
import { getProxiedImageUrl } from '@/scripts/media-proxy.js';
|
|
||||||
import { instance as meta } from '@/instance.js';
|
import { instance as meta } from '@/instance.js';
|
||||||
import misskeysvg from '/client-assets/misskey.svg';
|
import misskeysvg from '/client-assets/misskey.svg';
|
||||||
import entranceCharacter from '/client-assets/oscar/entrance-1.png';
|
import entranceCharacter from '/client-assets/oscar/entrance-1.png';
|
||||||
import entranceTide from '/client-assets/oscar/entrance-2.png';
|
import entranceTide from '/client-assets/oscar/entrance-2.png';
|
||||||
import entranceBackground from '/client-assets/oscar/entrance-3.png';
|
import entranceBackground from '/client-assets/oscar/entrance-3.png';
|
||||||
|
|
||||||
const instances = ref<Misskey.entities.FederationInstance[]>();
|
|
||||||
|
|
||||||
function getInstanceIcon(instance: Misskey.entities.FederationInstance): string {
|
|
||||||
if (!instance.iconUrl) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
return getProxiedImageUrl(instance.iconUrl, 'preview');
|
|
||||||
}
|
|
||||||
|
|
||||||
misskeyApiGet('federation/instances', {
|
|
||||||
sort: '+pubSub',
|
|
||||||
limit: 20,
|
|
||||||
}).then(_instances => {
|
|
||||||
instances.value = _instances;
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
Loading…
Reference in New Issue
Block a user