summaryrefslogtreecommitdiff
path: root/packages/client/src/pages
diff options
context:
space:
mode:
Diffstat (limited to 'packages/client/src/pages')
-rw-r--r--packages/client/src/pages/_error_.vue4
-rw-r--r--packages/client/src/pages/about-misskey.vue6
-rw-r--r--packages/client/src/pages/about.emojis.vue2
-rw-r--r--packages/client/src/pages/about.federation.vue2
-rw-r--r--packages/client/src/pages/about.vue8
-rw-r--r--packages/client/src/pages/admin-file.vue10
-rw-r--r--packages/client/src/pages/admin/abuses.vue2
-rw-r--r--packages/client/src/pages/admin/ads.vue8
-rw-r--r--packages/client/src/pages/admin/announcements.vue8
-rw-r--r--packages/client/src/pages/admin/bot-protection.vue14
-rw-r--r--packages/client/src/pages/admin/database.vue22
-rw-r--r--packages/client/src/pages/admin/email-settings.vue4
-rw-r--r--packages/client/src/pages/admin/emoji-edit-dialog.vue2
-rw-r--r--packages/client/src/pages/admin/emojis.vue56
-rw-r--r--packages/client/src/pages/admin/files.vue6
-rw-r--r--packages/client/src/pages/admin/index.vue48
-rw-r--r--packages/client/src/pages/admin/instance-block.vue4
-rw-r--r--packages/client/src/pages/admin/integrations.discord.vue6
-rw-r--r--packages/client/src/pages/admin/integrations.github.vue6
-rw-r--r--packages/client/src/pages/admin/integrations.twitter.vue6
-rw-r--r--packages/client/src/pages/admin/integrations.vue2
-rw-r--r--packages/client/src/pages/admin/object-storage.vue8
-rw-r--r--packages/client/src/pages/admin/other-settings.vue4
-rw-r--r--packages/client/src/pages/admin/overview.vue2
-rw-r--r--packages/client/src/pages/admin/relays.vue12
-rw-r--r--packages/client/src/pages/admin/security.vue12
-rw-r--r--packages/client/src/pages/admin/settings.vue22
-rw-r--r--packages/client/src/pages/admin/users.vue8
-rw-r--r--packages/client/src/pages/announcements.vue4
-rw-r--r--packages/client/src/pages/antenna-timeline.vue4
-rw-r--r--packages/client/src/pages/api-console.vue4
-rw-r--r--packages/client/src/pages/channel-editor.vue10
-rw-r--r--packages/client/src/pages/channel.vue12
-rw-r--r--packages/client/src/pages/channels.vue10
-rw-r--r--packages/client/src/pages/clip.vue6
-rw-r--r--packages/client/src/pages/drive.vue2
-rw-r--r--packages/client/src/pages/emojis.emoji.vue2
-rw-r--r--packages/client/src/pages/explore.users.vue18
-rw-r--r--packages/client/src/pages/explore.vue8
-rw-r--r--packages/client/src/pages/favorites.vue2
-rw-r--r--packages/client/src/pages/follow-requests.vue6
-rw-r--r--packages/client/src/pages/gallery/edit.vue14
-rw-r--r--packages/client/src/pages/gallery/index.vue14
-rw-r--r--packages/client/src/pages/gallery/post.vue14
-rw-r--r--packages/client/src/pages/instance-info.vue14
-rw-r--r--packages/client/src/pages/messaging/index.vue8
-rw-r--r--packages/client/src/pages/messaging/messaging-room.form.vue6
-rw-r--r--packages/client/src/pages/messaging/messaging-room.message.vue2
-rw-r--r--packages/client/src/pages/messaging/messaging-room.vue4
-rw-r--r--packages/client/src/pages/mfm-cheat-sheet.vue2
-rw-r--r--packages/client/src/pages/my-antennas/create.vue2
-rw-r--r--packages/client/src/pages/my-antennas/edit.vue2
-rw-r--r--packages/client/src/pages/my-antennas/editor.vue4
-rw-r--r--packages/client/src/pages/my-antennas/index.vue4
-rw-r--r--packages/client/src/pages/my-clips/index.vue6
-rw-r--r--packages/client/src/pages/my-lists/index.vue6
-rw-r--r--packages/client/src/pages/my-lists/list.vue4
-rw-r--r--packages/client/src/pages/not-found.vue2
-rw-r--r--packages/client/src/pages/note.vue4
-rw-r--r--packages/client/src/pages/notifications.vue12
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.button.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.counter.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.if.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.number-input.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.post.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.radio-button.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.section.vue4
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.switch.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.text-input.vue2
-rw-r--r--packages/client/src/pages/page-editor/els/page-editor.el.textarea-input.vue2
-rw-r--r--packages/client/src/pages/page-editor/page-editor.container.vue8
-rw-r--r--packages/client/src/pages/page-editor/page-editor.script-block.vue4
-rw-r--r--packages/client/src/pages/page-editor/page-editor.vue22
-rw-r--r--packages/client/src/pages/page.vue8
-rw-r--r--packages/client/src/pages/pages.vue8
-rw-r--r--packages/client/src/pages/preview.vue2
-rw-r--r--packages/client/src/pages/registry.keys.vue2
-rw-r--r--packages/client/src/pages/registry.value.vue6
-rw-r--r--packages/client/src/pages/registry.vue2
-rw-r--r--packages/client/src/pages/reset-password.vue4
-rw-r--r--packages/client/src/pages/scratchpad.vue4
-rw-r--r--packages/client/src/pages/search.vue2
-rw-r--r--packages/client/src/pages/settings/2fa.vue4
-rw-r--r--packages/client/src/pages/settings/account-info.vue2
-rw-r--r--packages/client/src/pages/settings/accounts.vue6
-rw-r--r--packages/client/src/pages/settings/api.vue2
-rw-r--r--packages/client/src/pages/settings/apps.vue4
-rw-r--r--packages/client/src/pages/settings/custom-css.vue2
-rw-r--r--packages/client/src/pages/settings/deck.vue2
-rw-r--r--packages/client/src/pages/settings/delete-account.vue2
-rw-r--r--packages/client/src/pages/settings/drive.vue2
-rw-r--r--packages/client/src/pages/settings/email.vue6
-rw-r--r--packages/client/src/pages/settings/general.vue10
-rw-r--r--packages/client/src/pages/settings/import-export.vue38
-rw-r--r--packages/client/src/pages/settings/index.vue50
-rw-r--r--packages/client/src/pages/settings/instance-mute.vue4
-rw-r--r--packages/client/src/pages/settings/integration.vue2
-rw-r--r--packages/client/src/pages/settings/mute-block.vue2
-rw-r--r--packages/client/src/pages/settings/navbar.vue2
-rw-r--r--packages/client/src/pages/settings/notifications.vue4
-rw-r--r--packages/client/src/pages/settings/other.vue6
-rw-r--r--packages/client/src/pages/settings/plugin.install.vue4
-rw-r--r--packages/client/src/pages/settings/plugin.vue8
-rw-r--r--packages/client/src/pages/settings/preferences-backups.vue12
-rw-r--r--packages/client/src/pages/settings/privacy.vue2
-rw-r--r--packages/client/src/pages/settings/profile.vue6
-rw-r--r--packages/client/src/pages/settings/reaction.vue8
-rw-r--r--packages/client/src/pages/settings/security.vue6
-rw-r--r--packages/client/src/pages/settings/sounds.vue4
-rw-r--r--packages/client/src/pages/settings/statusbar.vue2
-rw-r--r--packages/client/src/pages/settings/theme.install.vue6
-rw-r--r--packages/client/src/pages/settings/theme.manage.vue2
-rw-r--r--packages/client/src/pages/settings/theme.vue14
-rw-r--r--packages/client/src/pages/settings/webhook.edit.vue6
-rw-r--r--packages/client/src/pages/settings/webhook.new.vue6
-rw-r--r--packages/client/src/pages/settings/webhook.vue8
-rw-r--r--packages/client/src/pages/settings/word-mute.vue4
-rw-r--r--packages/client/src/pages/share.vue2
-rw-r--r--packages/client/src/pages/signup-complete.vue2
-rw-r--r--packages/client/src/pages/tag.vue2
-rw-r--r--packages/client/src/pages/theme-editor.vue8
-rw-r--r--packages/client/src/pages/timeline.tutorial.vue8
-rw-r--r--packages/client/src/pages/timeline.vue16
-rw-r--r--packages/client/src/pages/user-info.vue16
-rw-r--r--packages/client/src/pages/user-list-timeline.vue4
-rw-r--r--packages/client/src/pages/user/followers.vue2
-rw-r--r--packages/client/src/pages/user/following.vue2
-rw-r--r--packages/client/src/pages/user/home.vue16
-rw-r--r--packages/client/src/pages/user/index.activity.vue4
-rw-r--r--packages/client/src/pages/user/index.vue10
-rw-r--r--packages/client/src/pages/welcome.entrance.a.vue8
-rw-r--r--packages/client/src/pages/welcome.entrance.b.vue6
-rw-r--r--packages/client/src/pages/welcome.entrance.c.vue8
-rw-r--r--packages/client/src/pages/welcome.setup.vue2
-rw-r--r--packages/client/src/pages/welcome.timeline.vue2
135 files changed, 484 insertions, 482 deletions
diff --git a/packages/client/src/pages/_error_.vue b/packages/client/src/pages/_error_.vue
index a90a023cb6..232d525347 100644
--- a/packages/client/src/pages/_error_.vue
+++ b/packages/client/src/pages/_error_.vue
@@ -3,7 +3,7 @@
<transition :name="$store.state.animation ? 'zoom' : ''" appear>
<div v-show="loaded" class="mjndxjch">
<img src="https://xn--931a.moe/assets/error.jpg" class="_ghost"/>
- <p><b><i class="fas fa-exclamation-triangle"></i> {{ i18n.ts.pageLoadError }}</b></p>
+ <p><b><i class="ti ti-alert-triangle"></i> {{ i18n.ts.pageLoadError }}</b></p>
<p v-if="meta && (version === meta.version)">{{ i18n.ts.pageLoadErrorDescription }}</p>
<p v-else-if="serverIsDead">{{ i18n.ts.serverIsDead }}</p>
<template v-else>
@@ -58,7 +58,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.error,
- icon: 'fas fa-exclamation-triangle',
+ icon: 'ti ti-alert-triangle',
});
</script>
diff --git a/packages/client/src/pages/about-misskey.vue b/packages/client/src/pages/about-misskey.vue
index 7bcccea98f..3ec972bcda 100644
--- a/packages/client/src/pages/about-misskey.vue
+++ b/packages/client/src/pages/about-misskey.vue
@@ -20,17 +20,17 @@
<FormSection>
<div class="_formLinks">
<FormLink to="https://github.com/misskey-dev/misskey" external>
- <template #icon><i class="fas fa-code"></i></template>
+ <template #icon><i class="ti ti-code"></i></template>
{{ i18n.ts._aboutMisskey.source }}
<template #suffix>GitHub</template>
</FormLink>
<FormLink to="https://crowdin.com/project/misskey" external>
- <template #icon><i class="fas fa-language"></i></template>
+ <template #icon><i class="ti ti-language-hiragana"></i></template>
{{ i18n.ts._aboutMisskey.translation }}
<template #suffix>Crowdin</template>
</FormLink>
<FormLink to="https://www.patreon.com/syuilo" external>
- <template #icon><i class="fas fa-hand-holding-medical"></i></template>
+ <template #icon><i class="ti ti-pig-money"></i></template>
{{ i18n.ts._aboutMisskey.donate }}
<template #suffix>Patreon</template>
</FormLink>
diff --git a/packages/client/src/pages/about.emojis.vue b/packages/client/src/pages/about.emojis.vue
index df64378c01..53ce1e4b75 100644
--- a/packages/client/src/pages/about.emojis.vue
+++ b/packages/client/src/pages/about.emojis.vue
@@ -2,7 +2,7 @@
<div class="driuhtrh">
<div class="query">
<MkInput v-model="q" class="" :placeholder="$ts.search">
- <template #prefix><i class="fas fa-search"></i></template>
+ <template #prefix><i class="ti ti-search"></i></template>
</MkInput>
<!-- たくさんあると邪魔
diff --git a/packages/client/src/pages/about.federation.vue b/packages/client/src/pages/about.federation.vue
index c501a77582..6c92ab1264 100644
--- a/packages/client/src/pages/about.federation.vue
+++ b/packages/client/src/pages/about.federation.vue
@@ -2,7 +2,7 @@
<div class="taeiyria">
<div class="query">
<MkInput v-model="host" :debounce="true" class="">
- <template #prefix><i class="fas fa-search"></i></template>
+ <template #prefix><i class="ti ti-search"></i></template>
<template #label>{{ i18n.ts.host }}</template>
</MkInput>
<FormSplit style="margin-top: var(--margin);">
diff --git a/packages/client/src/pages/about.vue b/packages/client/src/pages/about.vue
index d124db55a7..0ed692c5c5 100644
--- a/packages/client/src/pages/about.vue
+++ b/packages/client/src/pages/about.vue
@@ -119,20 +119,20 @@ const headerTabs = $computed(() => [{
}, {
key: 'emojis',
title: i18n.ts.customEmojis,
- icon: 'fas fa-laugh',
+ icon: 'ti ti-mood-happy',
}, {
key: 'federation',
title: i18n.ts.federation,
- icon: 'fas fa-globe',
+ icon: 'ti ti-whirl',
}, {
key: 'charts',
title: i18n.ts.charts,
- icon: 'fas fa-chart-simple',
+ icon: 'ti ti-chart-line',
}]);
definePageMetadata(computed(() => ({
title: i18n.ts.instanceInfo,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
})));
</script>
diff --git a/packages/client/src/pages/admin-file.vue b/packages/client/src/pages/admin-file.vue
index a62e0f630f..1b16a66ac4 100644
--- a/packages/client/src/pages/admin-file.vue
+++ b/packages/client/src/pages/admin-file.vue
@@ -36,7 +36,7 @@
</div>
<div class="_formBlock">
- <MkButton danger @click="del"><i class="fas fa-trash-alt"></i> {{ i18n.ts.delete }}</MkButton>
+ <MkButton danger @click="del"><i class="ti ti-trash"></i> {{ i18n.ts.delete }}</MkButton>
</div>
</div>
<div v-else-if="tab === 'ip' && info" class="_formRoot">
@@ -114,7 +114,7 @@ async function toggleIsSensitive(v) {
const headerActions = $computed(() => [{
text: i18n.ts.openInNewTab,
- icon: 'fas fa-external-link-alt',
+ icon: 'ti ti-external-link',
handler: () => {
window.open(file.url, '_blank');
},
@@ -123,15 +123,15 @@ const headerActions = $computed(() => [{
const headerTabs = $computed(() => [{
key: 'overview',
title: i18n.ts.overview,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
}, iAmModerator ? {
key: 'ip',
title: 'IP',
- icon: 'fas fa-bars-staggered',
+ icon: 'ti ti-password',
} : null, {
key: 'raw',
title: 'Raw data',
- icon: 'fas fa-code',
+ icon: 'ti ti-code',
}]);
definePageMetadata(computed(() => ({
diff --git a/packages/client/src/pages/admin/abuses.vue b/packages/client/src/pages/admin/abuses.vue
index 9907d4d235..973ec871ab 100644
--- a/packages/client/src/pages/admin/abuses.vue
+++ b/packages/client/src/pages/admin/abuses.vue
@@ -86,7 +86,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.abuseReports,
- icon: 'fas fa-exclamation-circle',
+ icon: 'ti ti-exclamation-circle',
});
</script>
diff --git a/packages/client/src/pages/admin/ads.vue b/packages/client/src/pages/admin/ads.vue
index 9a28d2ad61..2ec926c65c 100644
--- a/packages/client/src/pages/admin/ads.vue
+++ b/packages/client/src/pages/admin/ads.vue
@@ -37,8 +37,8 @@
<template #label>{{ i18n.ts.memo }}</template>
</MkTextarea>
<div class="buttons _formBlock">
- <MkButton class="button" inline primary style="margin-right: 12px;" @click="save(ad)"><i class="fas fa-save"></i> {{ i18n.ts.save }}</MkButton>
- <MkButton class="button" inline danger @click="remove(ad)"><i class="fas fa-trash-alt"></i> {{ i18n.ts.remove }}</MkButton>
+ <MkButton class="button" inline primary style="margin-right: 12px;" @click="save(ad)"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton class="button" inline danger @click="remove(ad)"><i class="ti ti-trash"></i> {{ i18n.ts.remove }}</MkButton>
</div>
</div>
</div>
@@ -106,7 +106,7 @@ function save(ad) {
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.add,
handler: add,
}]);
@@ -115,7 +115,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.ads,
- icon: 'fas fa-audio-description',
+ icon: 'ti ti-ad',
});
</script>
diff --git a/packages/client/src/pages/admin/announcements.vue b/packages/client/src/pages/admin/announcements.vue
index f10693314a..607ad8aa02 100644
--- a/packages/client/src/pages/admin/announcements.vue
+++ b/packages/client/src/pages/admin/announcements.vue
@@ -16,8 +16,8 @@
</MkInput>
<p v-if="announcement.reads">{{ i18n.t('nUsersRead', { n: announcement.reads }) }}</p>
<div class="buttons">
- <MkButton class="button" inline primary @click="save(announcement)"><i class="fas fa-save"></i> {{ i18n.ts.save }}</MkButton>
- <MkButton class="button" inline @click="remove(announcement)"><i class="fas fa-trash-alt"></i> {{ i18n.ts.remove }}</MkButton>
+ <MkButton class="button" inline primary @click="save(announcement)"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton class="button" inline @click="remove(announcement)"><i class="ti ti-trash"></i> {{ i18n.ts.remove }}</MkButton>
</div>
</div>
</section>
@@ -92,7 +92,7 @@ function save(announcement) {
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.add,
handler: add,
}]);
@@ -101,7 +101,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.announcements,
- icon: 'fas fa-broadcast-tower',
+ icon: 'ti ti-speakerphone',
});
</script>
diff --git a/packages/client/src/pages/admin/bot-protection.vue b/packages/client/src/pages/admin/bot-protection.vue
index 484a9d1a1a..d03961cf95 100644
--- a/packages/client/src/pages/admin/bot-protection.vue
+++ b/packages/client/src/pages/admin/bot-protection.vue
@@ -11,11 +11,11 @@
<template v-if="provider === 'hcaptcha'">
<FormInput v-model="hcaptchaSiteKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>{{ i18n.ts.hcaptchaSiteKey }}</template>
</FormInput>
<FormInput v-model="hcaptchaSecretKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>{{ i18n.ts.hcaptchaSecretKey }}</template>
</FormInput>
<FormSlot class="_formBlock">
@@ -25,11 +25,11 @@
</template>
<template v-else-if="provider === 'recaptcha'">
<FormInput v-model="recaptchaSiteKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>{{ i18n.ts.recaptchaSiteKey }}</template>
</FormInput>
<FormInput v-model="recaptchaSecretKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>{{ i18n.ts.recaptchaSecretKey }}</template>
</FormInput>
<FormSlot v-if="recaptchaSiteKey" class="_formBlock">
@@ -39,11 +39,11 @@
</template>
<template v-else-if="provider === 'turnstile'">
<FormInput v-model="turnstileSiteKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>{{ i18n.ts.turnstileSiteKey }}</template>
</FormInput>
<FormInput v-model="turnstileSecretKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>{{ i18n.ts.turnstileSecretKey }}</template>
</FormInput>
<FormSlot class="_formBlock">
@@ -52,7 +52,7 @@
</FormSlot>
</template>
- <FormButton primary @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</div>
</FormSuspense>
</div>
diff --git a/packages/client/src/pages/admin/database.vue b/packages/client/src/pages/admin/database.vue
index 1c2656b8f5..5a0d3d5e51 100644
--- a/packages/client/src/pages/admin/database.vue
+++ b/packages/client/src/pages/admin/database.vue
@@ -1,13 +1,15 @@
-<template><MkStickyContainer>
+<template>
+<MkStickyContainer>
<template #header><MkPageHeader :actions="headerActions" :tabs="headerTabs"/></template>
- <MkSpacer :content-max="800" :margin-min="16" :margin-max="32">
- <FormSuspense v-slot="{ result: database }" :p="databasePromiseFactory">
- <MkKeyValue v-for="table in database" :key="table[0]" oneline style="margin: 1em 0;">
- <template #key>{{ table[0] }}</template>
- <template #value>{{ bytes(table[1].size) }} ({{ number(table[1].count) }} recs)</template>
- </MkKeyValue>
- </FormSuspense>
-</MkSpacer></MkStickyContainer>
+ <MkSpacer :content-max="800" :margin-min="16" :margin-max="32">
+ <FormSuspense v-slot="{ result: database }" :p="databasePromiseFactory">
+ <MkKeyValue v-for="table in database" :key="table[0]" oneline style="margin: 1em 0;">
+ <template #key>{{ table[0] }}</template>
+ <template #value>{{ bytes(table[1].size) }} ({{ number(table[1].count) }} recs)</template>
+ </MkKeyValue>
+ </FormSuspense>
+ </MkSpacer>
+</MkStickyContainer>
</template>
<script lang="ts" setup>
@@ -28,6 +30,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.database,
- icon: 'fas fa-database',
+ icon: 'ti ti-database',
});
</script>
diff --git a/packages/client/src/pages/admin/email-settings.vue b/packages/client/src/pages/admin/email-settings.vue
index 64137f0c3e..6c9dee1704 100644
--- a/packages/client/src/pages/admin/email-settings.vue
+++ b/packages/client/src/pages/admin/email-settings.vue
@@ -112,7 +112,7 @@ const headerActions = $computed(() => [{
handler: testEmail,
}, {
asFullButton: true,
- icon: 'fas fa-check',
+ icon: 'ti ti-check',
text: i18n.ts.save,
handler: save,
}]);
@@ -121,6 +121,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.emailServer,
- icon: 'fas fa-envelope',
+ icon: 'ti ti-mail',
});
</script>
diff --git a/packages/client/src/pages/admin/emoji-edit-dialog.vue b/packages/client/src/pages/admin/emoji-edit-dialog.vue
index 090dd9afc1..bd601cb1de 100644
--- a/packages/client/src/pages/admin/emoji-edit-dialog.vue
+++ b/packages/client/src/pages/admin/emoji-edit-dialog.vue
@@ -22,7 +22,7 @@
<template #label>{{ i18n.ts.tags }}</template>
<template #caption>{{ i18n.ts.setMultipleBySeparatingWithSpace }}</template>
</MkInput>
- <MkButton danger @click="del()"><i class="fas fa-trash-alt"></i> {{ i18n.ts.delete }}</MkButton>
+ <MkButton danger @click="del()"><i class="ti ti-trash"></i> {{ i18n.ts.delete }}</MkButton>
</div>
</div>
</XModalWindow>
diff --git a/packages/client/src/pages/admin/emojis.vue b/packages/client/src/pages/admin/emojis.vue
index 94f152d7db..14c8466d73 100644
--- a/packages/client/src/pages/admin/emojis.vue
+++ b/packages/client/src/pages/admin/emojis.vue
@@ -6,7 +6,7 @@
<div class="ogwlenmc">
<div v-if="tab === 'local'" class="local">
<MkInput v-model="query" :debounce="true" type="search">
- <template #prefix><i class="fas fa-search"></i></template>
+ <template #prefix><i class="ti ti-search"></i></template>
<template #label>{{ i18n.ts.search }}</template>
</MkInput>
<MkSwitch v-model="selectMode" style="margin: 8px 0;">
@@ -39,7 +39,7 @@
<div v-else-if="tab === 'remote'" class="remote">
<FormSplit>
<MkInput v-model="queryRemote" :debounce="true" type="search">
- <template #prefix><i class="fas fa-search"></i></template>
+ <template #prefix><i class="ti ti-search"></i></template>
<template #label>{{ i18n.ts.search }}</template>
</MkInput>
<MkInput v-model="host" :debounce="true">
@@ -164,49 +164,49 @@ const remoteMenu = (emoji, ev: MouseEvent) => {
text: ':' + emoji.name + ':',
}, {
text: i18n.ts.import,
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
action: () => { im(emoji); },
}], ev.currentTarget ?? ev.target);
};
const menu = (ev: MouseEvent) => {
os.popupMenu([{
- icon: 'fas fa-download',
+ icon: 'ti ti-download',
text: i18n.ts.export,
action: async () => {
os.api('export-custom-emojis', {
})
- .then(() => {
- os.alert({
- type: 'info',
- text: i18n.ts.exportRequested,
+ .then(() => {
+ os.alert({
+ type: 'info',
+ text: i18n.ts.exportRequested,
+ });
+ }).catch((err) => {
+ os.alert({
+ type: 'error',
+ text: err.message,
+ });
});
- }).catch((err) => {
- os.alert({
- type: 'error',
- text: err.message,
- });
- });
},
}, {
- icon: 'fas fa-upload',
+ icon: 'ti ti-upload',
text: i18n.ts.import,
action: async () => {
const file = await selectFile(ev.currentTarget ?? ev.target);
os.api('admin/emoji/import-zip', {
fileId: file.id,
})
- .then(() => {
- os.alert({
- type: 'info',
- text: i18n.ts.importRequested,
- });
- }).catch((err) => {
- os.alert({
- type: 'error',
- text: err.message,
+ .then(() => {
+ os.alert({
+ type: 'info',
+ text: i18n.ts.importRequested,
+ });
+ }).catch((err) => {
+ os.alert({
+ type: 'error',
+ text: err.message,
+ });
});
- });
},
}], ev.currentTarget ?? ev.target);
};
@@ -273,11 +273,11 @@ const delBulk = async () => {
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.addEmoji,
handler: add,
}, {
- icon: 'fas fa-ellipsis-h',
+ icon: 'ti ti-dots',
handler: menu,
}]);
@@ -291,7 +291,7 @@ const headerTabs = $computed(() => [{
definePageMetadata(computed(() => ({
title: i18n.ts.customEmojis,
- icon: 'fas fa-laugh',
+ icon: 'ti ti-mood-happy',
})));
</script>
diff --git a/packages/client/src/pages/admin/files.vue b/packages/client/src/pages/admin/files.vue
index 2e3a807ba6..8ad6bd4fc0 100644
--- a/packages/client/src/pages/admin/files.vue
+++ b/packages/client/src/pages/admin/files.vue
@@ -97,11 +97,11 @@ async function find() {
const headerActions = $computed(() => [{
text: i18n.ts.lookup,
- icon: 'fas fa-search',
+ icon: 'ti ti-search',
handler: find,
}, {
text: i18n.ts.clearCachedFiles,
- icon: 'fas fa-trash-alt',
+ icon: 'ti ti-trash',
handler: clear,
}]);
@@ -109,7 +109,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: i18n.ts.files,
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
})));
</script>
diff --git a/packages/client/src/pages/admin/index.vue b/packages/client/src/pages/admin/index.vue
index 20f82bba28..75d3fcae70 100644
--- a/packages/client/src/pages/admin/index.vue
+++ b/packages/client/src/pages/admin/index.vue
@@ -40,7 +40,7 @@ const router = useRouter();
const indexInfo = {
title: i18n.ts.controlPanel,
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
hideHeader: true,
};
@@ -75,34 +75,34 @@ const menuDef = $computed(() => [{
title: i18n.ts.quickAction,
items: [{
type: 'button',
- icon: 'fas fa-search',
+ icon: 'ti ti-search',
text: i18n.ts.lookup,
action: lookup,
}, ...(instance.disableRegistration ? [{
type: 'button',
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
text: i18n.ts.invite,
action: invite,
}] : [])],
}, {
title: i18n.ts.administration,
items: [{
- icon: 'fas fa-tachometer-alt',
+ icon: 'ti ti-dashboard',
text: i18n.ts.dashboard,
to: '/admin/overview',
active: currentPage?.route.name === 'overview',
}, {
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
text: i18n.ts.users,
to: '/admin/users',
active: currentPage?.route.name === 'users',
}, {
- icon: 'fas fa-laugh',
+ icon: 'ti ti-mood-happy',
text: i18n.ts.customEmojis,
to: '/admin/emojis',
active: currentPage?.route.name === 'emojis',
}, {
- icon: 'fas fa-globe',
+ icon: 'ti ti-whirl',
text: i18n.ts.federation,
to: '/about#federation',
active: currentPage?.route.name === 'federation',
@@ -112,22 +112,22 @@ const menuDef = $computed(() => [{
to: '/admin/queue',
active: currentPage?.route.name === 'queue',
}, {
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
text: i18n.ts.files,
to: '/admin/files',
active: currentPage?.route.name === 'files',
}, {
- icon: 'fas fa-broadcast-tower',
+ icon: 'ti ti-speakerphone',
text: i18n.ts.announcements,
to: '/admin/announcements',
active: currentPage?.route.name === 'announcements',
}, {
- icon: 'fas fa-audio-description',
+ icon: 'ti ti-ad',
text: i18n.ts.ads,
to: '/admin/ads',
active: currentPage?.route.name === 'ads',
}, {
- icon: 'fas fa-exclamation-circle',
+ icon: 'ti ti-exclamation-circle',
text: i18n.ts.abuseReports,
to: '/admin/abuses',
active: currentPage?.route.name === 'abuses',
@@ -135,37 +135,37 @@ const menuDef = $computed(() => [{
}, {
title: i18n.ts.settings,
items: [{
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
text: i18n.ts.general,
to: '/admin/settings',
active: currentPage?.route.name === 'settings',
}, {
- icon: 'fas fa-envelope',
+ icon: 'ti ti-mail',
text: i18n.ts.emailServer,
to: '/admin/email-settings',
active: currentPage?.route.name === 'email-settings',
}, {
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
text: i18n.ts.objectStorage,
to: '/admin/object-storage',
active: currentPage?.route.name === 'object-storage',
}, {
- icon: 'fas fa-lock',
+ icon: 'ti ti-lock',
text: i18n.ts.security,
to: '/admin/security',
active: currentPage?.route.name === 'security',
}, {
- icon: 'fas fa-globe',
+ icon: 'ti ti-planet',
text: i18n.ts.relays,
to: '/admin/relays',
active: currentPage?.route.name === 'relays',
}, {
- icon: 'fas fa-share-alt',
+ icon: 'ti ti-share',
text: i18n.ts.integration,
to: '/admin/integrations',
active: currentPage?.route.name === 'integrations',
}, {
- icon: 'fas fa-ban',
+ icon: 'ti ti-ban',
text: i18n.ts.instanceBlocking,
to: '/admin/instance-block',
active: currentPage?.route.name === 'instance-block',
@@ -175,7 +175,7 @@ const menuDef = $computed(() => [{
to: '/admin/proxy-account',
active: currentPage?.route.name === 'proxy-account',
}, {
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
text: i18n.ts.other,
to: '/admin/other-settings',
active: currentPage?.route.name === 'other-settings',
@@ -183,7 +183,7 @@ const menuDef = $computed(() => [{
}, {
title: i18n.ts.info,
items: [{
- icon: 'fas fa-database',
+ icon: 'ti ti-database',
text: i18n.ts.database,
to: '/admin/database',
active: currentPage?.route.name === 'database',
@@ -234,25 +234,25 @@ const invite = () => {
const lookup = (ev) => {
os.popupMenu([{
text: i18n.ts.user,
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
action: () => {
lookupUser();
},
}, {
text: i18n.ts.note,
- icon: 'fas fa-pencil-alt',
+ icon: 'ti ti-pencil',
action: () => {
alert('TODO');
},
}, {
text: i18n.ts.file,
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
action: () => {
alert('TODO');
},
}, {
text: i18n.ts.instance,
- icon: 'fas fa-globe',
+ icon: 'ti ti-planet',
action: () => {
alert('TODO');
},
diff --git a/packages/client/src/pages/admin/instance-block.vue b/packages/client/src/pages/admin/instance-block.vue
index 94b740a4d5..1bdd174de4 100644
--- a/packages/client/src/pages/admin/instance-block.vue
+++ b/packages/client/src/pages/admin/instance-block.vue
@@ -8,7 +8,7 @@
<template #caption>{{ i18n.ts.blockedInstancesDescription }}</template>
</FormTextarea>
- <FormButton primary class="_formBlock" @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary class="_formBlock" @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</FormSuspense>
</MkSpacer>
</MkStickyContainer>
@@ -46,6 +46,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.instanceBlocking,
- icon: 'fas fa-ban',
+ icon: 'ti ti-ban',
});
</script>
diff --git a/packages/client/src/pages/admin/integrations.discord.vue b/packages/client/src/pages/admin/integrations.discord.vue
index 0ab6ecbb4f..0a69c44c93 100644
--- a/packages/client/src/pages/admin/integrations.discord.vue
+++ b/packages/client/src/pages/admin/integrations.discord.vue
@@ -9,17 +9,17 @@
<FormInfo class="_formBlock">Callback URL: {{ `${uri}/api/dc/cb` }}</FormInfo>
<FormInput v-model="discordClientId" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Client ID</template>
</FormInput>
<FormInput v-model="discordClientSecret" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Client Secret</template>
</FormInput>
</template>
- <FormButton primary class="_formBlock" @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary class="_formBlock" @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</div>
</FormSuspense>
</template>
diff --git a/packages/client/src/pages/admin/integrations.github.vue b/packages/client/src/pages/admin/integrations.github.vue
index 34761e9a7b..66419d5891 100644
--- a/packages/client/src/pages/admin/integrations.github.vue
+++ b/packages/client/src/pages/admin/integrations.github.vue
@@ -9,17 +9,17 @@
<FormInfo class="_formBlock">Callback URL: {{ `${uri}/api/gh/cb` }}</FormInfo>
<FormInput v-model="githubClientId" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Client ID</template>
</FormInput>
<FormInput v-model="githubClientSecret" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Client Secret</template>
</FormInput>
</template>
- <FormButton primary class="_formBlock" @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary class="_formBlock" @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</div>
</FormSuspense>
</template>
diff --git a/packages/client/src/pages/admin/integrations.twitter.vue b/packages/client/src/pages/admin/integrations.twitter.vue
index a870d76a4d..1e8d882b9c 100644
--- a/packages/client/src/pages/admin/integrations.twitter.vue
+++ b/packages/client/src/pages/admin/integrations.twitter.vue
@@ -9,17 +9,17 @@
<FormInfo class="_formBlock">Callback URL: {{ `${uri}/api/tw/cb` }}</FormInfo>
<FormInput v-model="twitterConsumerKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Consumer Key</template>
</FormInput>
<FormInput v-model="twitterConsumerSecret" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Consumer Secret</template>
</FormInput>
</template>
- <FormButton primary class="_formBlock" @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary class="_formBlock" @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</div>
</FormSuspense>
</template>
diff --git a/packages/client/src/pages/admin/integrations.vue b/packages/client/src/pages/admin/integrations.vue
index 9964426a68..d02fc48076 100644
--- a/packages/client/src/pages/admin/integrations.vue
+++ b/packages/client/src/pages/admin/integrations.vue
@@ -52,6 +52,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.integration,
- icon: 'fas fa-share-alt',
+ icon: 'ti ti-share',
});
</script>
diff --git a/packages/client/src/pages/admin/object-storage.vue b/packages/client/src/pages/admin/object-storage.vue
index 5cc3018532..f2ab30eaa5 100644
--- a/packages/client/src/pages/admin/object-storage.vue
+++ b/packages/client/src/pages/admin/object-storage.vue
@@ -34,12 +34,12 @@
<FormSplit :min-width="280">
<FormInput v-model="objectStorageAccessKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Access key</template>
</FormInput>
<FormInput v-model="objectStorageSecretKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Secret key</template>
</FormInput>
</FormSplit>
@@ -134,7 +134,7 @@ function save() {
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-check',
+ icon: 'ti ti-check',
text: i18n.ts.save,
handler: save,
}]);
@@ -143,6 +143,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.objectStorage,
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
});
</script>
diff --git a/packages/client/src/pages/admin/other-settings.vue b/packages/client/src/pages/admin/other-settings.vue
index ee4e8edba0..62dff6ce7f 100644
--- a/packages/client/src/pages/admin/other-settings.vue
+++ b/packages/client/src/pages/admin/other-settings.vue
@@ -30,7 +30,7 @@ function save() {
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-check',
+ icon: 'ti ti-check',
text: i18n.ts.save,
handler: save,
}]);
@@ -39,6 +39,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.other,
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
});
</script>
diff --git a/packages/client/src/pages/admin/overview.vue b/packages/client/src/pages/admin/overview.vue
index b0d1b543d0..07b808d55b 100644
--- a/packages/client/src/pages/admin/overview.vue
+++ b/packages/client/src/pages/admin/overview.vue
@@ -467,7 +467,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.dashboard,
- icon: 'fas fa-tachometer-alt',
+ icon: 'ti ti-dashboard',
});
</script>
diff --git a/packages/client/src/pages/admin/relays.vue b/packages/client/src/pages/admin/relays.vue
index e6f7f4ead1..4768ae67b1 100644
--- a/packages/client/src/pages/admin/relays.vue
+++ b/packages/client/src/pages/admin/relays.vue
@@ -5,12 +5,12 @@
<div v-for="relay in relays" :key="relay.inbox" class="relaycxt _panel _block" style="padding: 16px;">
<div>{{ relay.inbox }}</div>
<div class="status">
- <i v-if="relay.status === 'accepted'" class="fas fa-check icon accepted"></i>
- <i v-else-if="relay.status === 'rejected'" class="fas fa-ban icon rejected"></i>
- <i v-else class="fas fa-clock icon requesting"></i>
+ <i v-if="relay.status === 'accepted'" class="ti ti-check icon accepted"></i>
+ <i v-else-if="relay.status === 'rejected'" class="ti ti-ban icon rejected"></i>
+ <i v-else class="ti ti-clock icon requesting"></i>
<span>{{ $t(`_relayStatus.${relay.status}`) }}</span>
</div>
- <MkButton class="button" inline danger @click="remove(relay.inbox)"><i class="fas fa-trash-alt"></i> {{ i18n.ts.remove }}</MkButton>
+ <MkButton class="button" inline danger @click="remove(relay.inbox)"><i class="ti ti-trash"></i> {{ i18n.ts.remove }}</MkButton>
</div>
</MkSpacer>
</MkStickyContainer>
@@ -68,7 +68,7 @@ refresh();
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.addRelay,
handler: addRelay,
}]);
@@ -77,7 +77,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.relays,
- icon: 'fas fa-globe',
+ icon: 'ti ti-planet',
});
</script>
diff --git a/packages/client/src/pages/admin/security.vue b/packages/client/src/pages/admin/security.vue
index 65d079c2cf..11c06257cc 100644
--- a/packages/client/src/pages/admin/security.vue
+++ b/packages/client/src/pages/admin/security.vue
@@ -5,7 +5,7 @@
<FormSuspense :p="init">
<div class="_formRoot">
<FormFolder class="_formBlock">
- <template #icon><i class="fas fa-shield-alt"></i></template>
+ <template #icon><i class="ti ti-shield"></i></template>
<template #label>{{ i18n.ts.botProtection }}</template>
<template v-if="enableHcaptcha" #suffix>hCaptcha</template>
<template v-else-if="enableRecaptcha" #suffix>reCAPTCHA</template>
@@ -16,7 +16,7 @@
</FormFolder>
<FormFolder class="_formBlock">
- <template #icon><i class="fas fa-eye-slash"></i></template>
+ <template #icon><i class="ti ti-eye-off"></i></template>
<template #label>{{ i18n.ts.sensitiveMediaDetection }}</template>
<template v-if="sensitiveMediaDetection === 'all'" #suffix>{{ i18n.ts.all }}</template>
<template v-else-if="sensitiveMediaDetection === 'local'" #suffix>{{ i18n.ts.localOnly }}</template>
@@ -54,7 +54,7 @@
</FormSwitch>
-->
- <FormButton primary class="_formBlock" @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary class="_formBlock" @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</div>
</FormFolder>
@@ -88,11 +88,11 @@
<div class="_formRoot">
<FormInput v-model="summalyProxy" class="_formBlock">
- <template #prefix><i class="fas fa-link"></i></template>
+ <template #prefix><i class="ti ti-link"></i></template>
<template #label>Summaly Proxy URL</template>
</FormInput>
- <FormButton primary class="_formBlock" @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary class="_formBlock" @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
</div>
</FormFolder>
</div>
@@ -174,6 +174,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.security,
- icon: 'fas fa-lock',
+ icon: 'ti ti-lock',
});
</script>
diff --git a/packages/client/src/pages/admin/settings.vue b/packages/client/src/pages/admin/settings.vue
index cf6b1f17e9..460eb92694 100644
--- a/packages/client/src/pages/admin/settings.vue
+++ b/packages/client/src/pages/admin/settings.vue
@@ -14,7 +14,7 @@
</FormTextarea>
<FormInput v-model="tosUrl" class="_formBlock">
- <template #prefix><i class="fas fa-link"></i></template>
+ <template #prefix><i class="ti ti-link"></i></template>
<template #label>{{ i18n.ts.tosUrl }}</template>
</FormInput>
@@ -24,7 +24,7 @@
</FormInput>
<FormInput v-model="maintainerEmail" type="email" class="_formBlock">
- <template #prefix><i class="fas fa-envelope"></i></template>
+ <template #prefix><i class="ti ti-mail"></i></template>
<template #label>{{ i18n.ts.maintainerEmail }}</template>
</FormInput>
</FormSplit>
@@ -54,22 +54,22 @@
<template #label>{{ i18n.ts.theme }}</template>
<FormInput v-model="iconUrl" class="_formBlock">
- <template #prefix><i class="fas fa-link"></i></template>
+ <template #prefix><i class="ti ti-link"></i></template>
<template #label>{{ i18n.ts.iconUrl }}</template>
</FormInput>
<FormInput v-model="bannerUrl" class="_formBlock">
- <template #prefix><i class="fas fa-link"></i></template>
+ <template #prefix><i class="ti ti-link"></i></template>
<template #label>{{ i18n.ts.bannerUrl }}</template>
</FormInput>
<FormInput v-model="backgroundImageUrl" class="_formBlock">
- <template #prefix><i class="fas fa-link"></i></template>
+ <template #prefix><i class="ti ti-link"></i></template>
<template #label>{{ i18n.ts.backgroundImageUrl }}</template>
</FormInput>
<FormInput v-model="themeColor" class="_formBlock">
- <template #prefix><i class="fas fa-palette"></i></template>
+ <template #prefix><i class="ti ti-palette"></i></template>
<template #label>{{ i18n.ts.themeColor }}</template>
<template #caption>#RRGGBB</template>
</FormInput>
@@ -118,12 +118,12 @@
<template v-if="enableServiceWorker">
<FormInput v-model="swPublicKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Public key</template>
</FormInput>
<FormInput v-model="swPrivateKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>Private key</template>
</FormInput>
</template>
@@ -133,7 +133,7 @@
<template #label>DeepL Translation</template>
<FormInput v-model="deeplAuthKey" class="_formBlock">
- <template #prefix><i class="fas fa-key"></i></template>
+ <template #prefix><i class="ti ti-key"></i></template>
<template #label>DeepL Auth Key</template>
</FormInput>
<FormSwitch v-model="deeplIsPro" class="_formBlock">
@@ -248,7 +248,7 @@ function save() {
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-check',
+ icon: 'ti ti-check',
text: i18n.ts.save,
handler: save,
}]);
@@ -257,6 +257,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.general,
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
});
</script>
diff --git a/packages/client/src/pages/admin/users.vue b/packages/client/src/pages/admin/users.vue
index eeb335a430..bf630d28d2 100644
--- a/packages/client/src/pages/admin/users.vue
+++ b/packages/client/src/pages/admin/users.vue
@@ -115,17 +115,17 @@ function show(user) {
}
const headerActions = $computed(() => [{
- icon: 'fas fa-search',
+ icon: 'ti ti-search',
text: i18n.ts.search,
handler: searchUser,
}, {
asFullButton: true,
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.addUser,
handler: addUser,
}, {
asFullButton: true,
- icon: 'fas fa-search',
+ icon: 'ti ti-search',
text: i18n.ts.lookup,
handler: lookupUser,
}]);
@@ -134,7 +134,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: i18n.ts.users,
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
})));
</script>
diff --git a/packages/client/src/pages/announcements.vue b/packages/client/src/pages/announcements.vue
index 5f66596997..6a93b3b9fa 100644
--- a/packages/client/src/pages/announcements.vue
+++ b/packages/client/src/pages/announcements.vue
@@ -10,7 +10,7 @@
<img v-if="announcement.imageUrl" :src="announcement.imageUrl"/>
</div>
<div v-if="$i && !announcement.isRead" class="_footer">
- <MkButton primary @click="read(items, announcement, i)"><i class="fas fa-check"></i> {{ $ts.gotIt }}</MkButton>
+ <MkButton primary @click="read(items, announcement, i)"><i class="ti ti-check"></i> {{ $ts.gotIt }}</MkButton>
</div>
</section>
</MkPagination>
@@ -46,7 +46,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.announcements,
- icon: 'fas fa-broadcast-tower',
+ icon: 'ti ti-speakerphone',
});
</script>
diff --git a/packages/client/src/pages/antenna-timeline.vue b/packages/client/src/pages/antenna-timeline.vue
index 500cb3a7c5..592131b2a8 100644
--- a/packages/client/src/pages/antenna-timeline.vue
+++ b/packages/client/src/pages/antenna-timeline.vue
@@ -76,7 +76,7 @@ const headerActions = $computed(() => antenna ? [{
text: i18n.ts.jumpToSpecifiedDate,
handler: timetravel,
}, {
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
text: i18n.ts.settings,
handler: settings,
}] : []);
@@ -85,7 +85,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => antenna ? {
title: antenna.name,
- icon: 'fas fa-satellite',
+ icon: 'ti ti-antenna',
} : null));
</script>
diff --git a/packages/client/src/pages/api-console.vue b/packages/client/src/pages/api-console.vue
index 0064e4c3f1..a46b85462e 100644
--- a/packages/client/src/pages/api-console.vue
+++ b/packages/client/src/pages/api-console.vue
@@ -15,7 +15,7 @@
</MkSwitch>
<MkButton class="_formBlock" primary :disabled="sending" @click="send">
<template v-if="sending"><MkEllipsis/></template>
- <template v-else><i class="fas fa-paper-plane"></i> Send</template>
+ <template v-else><i class="ti ti-send"></i> Send</template>
</MkButton>
</div>
<div v-if="res" class="_formBlock">
@@ -84,6 +84,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: 'API console',
- icon: 'fas fa-terminal',
+ icon: 'ti ti-terminal-2',
});
</script>
diff --git a/packages/client/src/pages/channel-editor.vue b/packages/client/src/pages/channel-editor.vue
index 3e94b5f041..5ae7e63f99 100644
--- a/packages/client/src/pages/channel-editor.vue
+++ b/packages/client/src/pages/channel-editor.vue
@@ -12,14 +12,14 @@
</MkTextarea>
<div class="banner">
- <MkButton v-if="bannerId == null" @click="setBannerImage"><i class="fas fa-plus"></i> {{ i18n.ts._channel.setBanner }}</MkButton>
+ <MkButton v-if="bannerId == null" @click="setBannerImage"><i class="ti ti-plus"></i> {{ i18n.ts._channel.setBanner }}</MkButton>
<div v-else-if="bannerUrl">
<img :src="bannerUrl" style="width: 100%;"/>
- <MkButton @click="removeBannerImage()"><i class="fas fa-trash-alt"></i> {{ i18n.ts._channel.removeBanner }}</MkButton>
+ <MkButton @click="removeBannerImage()"><i class="ti ti-trash"></i> {{ i18n.ts._channel.removeBanner }}</MkButton>
</div>
</div>
<div class="_formBlock">
- <MkButton primary @click="save()"><i class="fas fa-save"></i> {{ channelId ? i18n.ts.save : i18n.ts.create }}</MkButton>
+ <MkButton primary @click="save()"><i class="ti ti-device-floppy"></i> {{ channelId ? i18n.ts.save : i18n.ts.create }}</MkButton>
</div>
</div>
</MkSpacer>
@@ -110,10 +110,10 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => props.channelId ? {
title: i18n.ts._channel.edit,
- icon: 'fas fa-satellite-dish',
+ icon: 'ti ti-device-tv',
} : {
title: i18n.ts._channel.create,
- icon: 'fas fa-satellite-dish',
+ icon: 'ti ti-device-tv',
}));
</script>
diff --git a/packages/client/src/pages/channel.vue b/packages/client/src/pages/channel.vue
index 380c3efc8e..f271bb270f 100644
--- a/packages/client/src/pages/channel.vue
+++ b/packages/client/src/pages/channel.vue
@@ -6,15 +6,15 @@
<div class="wpgynlbz _panel _gap" :class="{ hide: !showBanner }">
<XChannelFollowButton :channel="channel" :full="true" class="subscribe"/>
<button class="_button toggle" @click="() => showBanner = !showBanner">
- <template v-if="showBanner"><i class="fas fa-angle-up"></i></template>
- <template v-else><i class="fas fa-angle-down"></i></template>
+ <template v-if="showBanner"><i class="ti ti-chevron-up"></i></template>
+ <template v-else><i class="ti ti-chevron-down"></i></template>
</button>
<div v-if="!showBanner" class="hideOverlay">
</div>
<div :style="{ backgroundImage: channel.bannerUrl ? `url(${channel.bannerUrl})` : null }" class="banner">
<div class="status">
- <div><i class="fas fa-users fa-fw"></i><I18n :src="i18n.ts._channel.usersCount" tag="span" style="margin-left: 4px;"><template #n><b>{{ channel.usersCount }}</b></template></I18n></div>
- <div><i class="fas fa-pencil-alt fa-fw"></i><I18n :src="i18n.ts._channel.notesCount" tag="span" style="margin-left: 4px;"><template #n><b>{{ channel.notesCount }}</b></template></I18n></div>
+ <div><i class="ti ti-users ti-fw"></i><I18n :src="i18n.ts._channel.usersCount" tag="span" style="margin-left: 4px;"><template #n><b>{{ channel.usersCount }}</b></template></I18n></div>
+ <div><i class="ti ti-pencil ti-fw"></i><I18n :src="i18n.ts._channel.notesCount" tag="span" style="margin-left: 4px;"><template #n><b>{{ channel.notesCount }}</b></template></I18n></div>
</div>
<div class="fade"></div>
</div>
@@ -70,7 +70,7 @@ function edit() {
}
const headerActions = $computed(() => channel && channel.userId ? [{
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
text: i18n.ts.edit,
handler: edit,
}] : null);
@@ -79,7 +79,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => channel ? {
title: channel.name,
- icon: 'fas fa-satellite-dish',
+ icon: 'ti ti-device-tv',
} : null));
</script>
diff --git a/packages/client/src/pages/channels.vue b/packages/client/src/pages/channels.vue
index 56ea98d15e..7c84629a0a 100644
--- a/packages/client/src/pages/channels.vue
+++ b/packages/client/src/pages/channels.vue
@@ -13,7 +13,7 @@
</MkPagination>
</div>
<div v-else-if="tab === 'owned'" class="_content grwlizim owned">
- <MkButton class="new" @click="create()"><i class="fas fa-plus"></i></MkButton>
+ <MkButton class="new" @click="create()"><i class="ti ti-plus"></i></MkButton>
<MkPagination v-slot="{items}" :pagination="ownedPagination">
<MkChannelPreview v-for="channel in items" :key="channel.id" class="_gap" :channel="channel"/>
</MkPagination>
@@ -53,7 +53,7 @@ function create() {
}
const headerActions = $computed(() => [{
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.create,
handler: create,
}]);
@@ -65,15 +65,15 @@ const headerTabs = $computed(() => [{
}, {
key: 'following',
title: i18n.ts._channel.following,
- icon: 'fas fa-heart',
+ icon: 'ti ti-heart',
}, {
key: 'owned',
title: i18n.ts._channel.owned,
- icon: 'fas fa-edit',
+ icon: 'ti ti-edit',
}]);
definePageMetadata(computed(() => ({
title: i18n.ts.channel,
- icon: 'fas fa-satellite-dish',
+ icon: 'ti ti-device-tv',
})));
</script>
diff --git a/packages/client/src/pages/clip.vue b/packages/client/src/pages/clip.vue
index 5b56651bdd..e0fbcb6bed 100644
--- a/packages/client/src/pages/clip.vue
+++ b/packages/client/src/pages/clip.vue
@@ -53,7 +53,7 @@ watch(() => props.clipId, async () => {
provide('currentClipPage', $$(clip));
const headerActions = $computed(() => clip && isOwned ? [{
- icon: 'fas fa-pencil-alt',
+ icon: 'ti ti-pencil',
text: i18n.ts.edit,
handler: async (): Promise<void> => {
const { canceled, result } = await os.form(clip.name, {
@@ -83,7 +83,7 @@ const headerActions = $computed(() => clip && isOwned ? [{
});
},
}, {
- icon: 'fas fa-trash-alt',
+ icon: 'ti ti-trash',
text: i18n.ts.delete,
danger: true,
handler: async (): Promise<void> => {
@@ -101,7 +101,7 @@ const headerActions = $computed(() => clip && isOwned ? [{
definePageMetadata(computed(() => clip ? {
title: clip.name,
- icon: 'fas fa-paperclip',
+ icon: 'ti ti-paperclip',
} : null));
</script>
diff --git a/packages/client/src/pages/drive.vue b/packages/client/src/pages/drive.vue
index 088f0eacdc..04ade5c207 100644
--- a/packages/client/src/pages/drive.vue
+++ b/packages/client/src/pages/drive.vue
@@ -19,7 +19,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: folder ? folder.name : i18n.ts.drive,
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
hideHeader: true,
})));
</script>
diff --git a/packages/client/src/pages/emojis.emoji.vue b/packages/client/src/pages/emojis.emoji.vue
index b2801694db..04bf4ef167 100644
--- a/packages/client/src/pages/emojis.emoji.vue
+++ b/packages/client/src/pages/emojis.emoji.vue
@@ -24,7 +24,7 @@ function menu(ev) {
text: ':' + props.emoji.name + ':',
}, {
text: i18n.ts.copy,
- icon: 'fas fa-copy',
+ icon: 'ti ti-copy',
action: () => {
copyToClipboard(`:${props.emoji.name}:`);
os.success();
diff --git a/packages/client/src/pages/explore.users.vue b/packages/client/src/pages/explore.users.vue
index e16e40b8ed..bfee0a6c07 100644
--- a/packages/client/src/pages/explore.users.vue
+++ b/packages/client/src/pages/explore.users.vue
@@ -7,26 +7,26 @@
<div v-if="origin === 'local'">
<template v-if="tag == null">
<MkFolder class="_gap" persist-key="explore-pinned-users">
- <template #header><i class="fas fa-bookmark fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.pinnedUsers }}</template>
+ <template #header><i class="fas fa-bookmark ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.pinnedUsers }}</template>
<XUserList :pagination="pinnedUsers"/>
</MkFolder>
<MkFolder class="_gap" persist-key="explore-popular-users">
- <template #header><i class="fas fa-chart-line fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.popularUsers }}</template>
+ <template #header><i class="fas fa-chart-line ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.popularUsers }}</template>
<XUserList :pagination="popularUsers"/>
</MkFolder>
<MkFolder class="_gap" persist-key="explore-recently-updated-users">
- <template #header><i class="fas fa-comment-alt fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyUpdatedUsers }}</template>
+ <template #header><i class="fas fa-comment-alt ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyUpdatedUsers }}</template>
<XUserList :pagination="recentlyUpdatedUsers"/>
</MkFolder>
<MkFolder class="_gap" persist-key="explore-recently-registered-users">
- <template #header><i class="fas fa-plus fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyRegisteredUsers }}</template>
+ <template #header><i class="ti ti-plus ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyRegisteredUsers }}</template>
<XUserList :pagination="recentlyRegisteredUsers"/>
</MkFolder>
</template>
</div>
<div v-else>
<MkFolder ref="tagsEl" :foldable="true" :expanded="false" class="_gap">
- <template #header><i class="fas fa-hashtag fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.popularTags }}</template>
+ <template #header><i class="ti ti-hash ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.popularTags }}</template>
<div class="vxjfqztj">
<MkA v-for="tag in tagsLocal" :key="'local:' + tag.tag" :to="`/explore/tags/${tag.tag}`" class="local">{{ tag.tag }}</MkA>
@@ -35,21 +35,21 @@
</MkFolder>
<MkFolder v-if="tag != null" :key="`${tag}`" class="_gap">
- <template #header><i class="fas fa-hashtag fa-fw" style="margin-right: 0.5em;"></i>{{ tag }}</template>
+ <template #header><i class="ti ti-hash ti-fw" style="margin-right: 0.5em;"></i>{{ tag }}</template>
<XUserList :pagination="tagUsers"/>
</MkFolder>
<template v-if="tag == null">
<MkFolder class="_gap">
- <template #header><i class="fas fa-chart-line fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.popularUsers }}</template>
+ <template #header><i class="fas fa-chart-line ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.popularUsers }}</template>
<XUserList :pagination="popularUsersF"/>
</MkFolder>
<MkFolder class="_gap">
- <template #header><i class="fas fa-comment-alt fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyUpdatedUsers }}</template>
+ <template #header><i class="fas fa-comment-alt ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyUpdatedUsers }}</template>
<XUserList :pagination="recentlyUpdatedUsersF"/>
</MkFolder>
<MkFolder class="_gap">
- <template #header><i class="fas fa-rocket fa-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyDiscoveredUsers }}</template>
+ <template #header><i class="fas fa-rocket ti-fw" style="margin-right: 0.5em;"></i>{{ i18n.ts.recentlyDiscoveredUsers }}</template>
<XUserList :pagination="recentlyRegisteredUsersF"/>
</MkFolder>
</template>
diff --git a/packages/client/src/pages/explore.vue b/packages/client/src/pages/explore.vue
index 279960d139..6b0bcdaf62 100644
--- a/packages/client/src/pages/explore.vue
+++ b/packages/client/src/pages/explore.vue
@@ -12,7 +12,7 @@
<MkSpacer :content-max="1200">
<div>
<MkInput v-model="searchQuery" :debounce="true" type="search" class="_formBlock">
- <template #prefix><i class="fas fa-search"></i></template>
+ <template #prefix><i class="ti ti-search"></i></template>
<template #label>{{ i18n.ts.searchUser }}</template>
</MkInput>
<MkRadios v-model="searchOrigin" class="_formBlock">
@@ -69,11 +69,11 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => [{
key: 'featured',
- icon: 'fas fa-bolt',
+ icon: 'ti ti-bolt',
title: i18n.ts.featured,
}, {
key: 'users',
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
title: i18n.ts.users,
}, {
key: 'search',
@@ -82,6 +82,6 @@ const headerTabs = $computed(() => [{
definePageMetadata(computed(() => ({
title: i18n.ts.explore,
- icon: 'fas fa-hashtag',
+ icon: 'ti ti-hash',
})));
</script>
diff --git a/packages/client/src/pages/favorites.vue b/packages/client/src/pages/favorites.vue
index 32a1dbf592..ab47efec71 100644
--- a/packages/client/src/pages/favorites.vue
+++ b/packages/client/src/pages/favorites.vue
@@ -37,7 +37,7 @@ const pagingComponent = ref<InstanceType<typeof MkPagination>>();
definePageMetadata({
title: i18n.ts.favorites,
- icon: 'fas fa-star',
+ icon: 'ti ti-star',
});
</script>
diff --git a/packages/client/src/pages/follow-requests.vue b/packages/client/src/pages/follow-requests.vue
index 82d7164260..2bef35746e 100644
--- a/packages/client/src/pages/follow-requests.vue
+++ b/packages/client/src/pages/follow-requests.vue
@@ -22,8 +22,8 @@
<Mfm :text="req.follower.description" :is-note="false" :author="req.follower" :i="$i" :custom-emojis="req.follower.emojis" :plain="true" :nowrap="true"/>
</div>
<div class="actions">
- <button class="_button" @click="accept(req.follower)"><i class="fas fa-check"></i></button>
- <button class="_button" @click="reject(req.follower)"><i class="fas fa-times"></i></button>
+ <button class="_button" @click="accept(req.follower)"><i class="ti ti-check"></i></button>
+ <button class="_button" @click="reject(req.follower)"><i class="ti ti-x"></i></button>
</div>
</div>
</div>
@@ -67,7 +67,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: i18n.ts.followRequests,
- icon: 'fas fa-user-clock',
+ icon: 'ti ti-user-clock',
})));
</script>
diff --git a/packages/client/src/pages/gallery/edit.vue b/packages/client/src/pages/gallery/edit.vue
index 8f716d9eb3..c8111d7890 100644
--- a/packages/client/src/pages/gallery/edit.vue
+++ b/packages/client/src/pages/gallery/edit.vue
@@ -14,17 +14,17 @@
<div class="">
<div v-for="file in files" :key="file.id" class="wqugxsfx" :style="{ backgroundImage: file ? `url(${ file.thumbnailUrl })` : null }">
<div class="name">{{ file.name }}</div>
- <button v-tooltip="i18n.ts.remove" class="remove _button" @click="remove(file)"><i class="fas fa-times"></i></button>
+ <button v-tooltip="i18n.ts.remove" class="remove _button" @click="remove(file)"><i class="ti ti-x"></i></button>
</div>
- <FormButton primary @click="selectFile"><i class="fas fa-plus"></i> {{ i18n.ts.attachFile }}</FormButton>
+ <FormButton primary @click="selectFile"><i class="ti ti-plus"></i> {{ i18n.ts.attachFile }}</FormButton>
</div>
<FormSwitch v-model="isSensitive">{{ i18n.ts.markAsSensitive }}</FormSwitch>
- <FormButton v-if="postId" primary @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</FormButton>
- <FormButton v-else primary @click="save"><i class="fas fa-save"></i> {{ i18n.ts.publish }}</FormButton>
+ <FormButton v-if="postId" primary @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton v-else primary @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.publish }}</FormButton>
- <FormButton v-if="postId" danger @click="del"><i class="fas fa-trash-alt"></i> {{ i18n.ts.delete }}</FormButton>
+ <FormButton v-if="postId" danger @click="del"><i class="ti ti-trash"></i> {{ i18n.ts.delete }}</FormButton>
</FormSuspense>
</MkSpacer>
</MkStickyContainer>
@@ -115,10 +115,10 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => props.postId ? {
title: i18n.ts.edit,
- icon: 'fas fa-pencil-alt',
+ icon: 'ti ti-pencil',
} : {
title: i18n.ts.postToGallery,
- icon: 'fas fa-pencil-alt',
+ icon: 'ti ti-pencil',
}));
</script>
diff --git a/packages/client/src/pages/gallery/index.vue b/packages/client/src/pages/gallery/index.vue
index 598383217e..b04c1fad94 100644
--- a/packages/client/src/pages/gallery/index.vue
+++ b/packages/client/src/pages/gallery/index.vue
@@ -5,7 +5,7 @@
<div class="_root">
<div v-if="tab === 'explore'">
<MkFolder class="_gap">
- <template #header><i class="fas fa-clock"></i>{{ i18n.ts.recentPosts }}</template>
+ <template #header><i class="ti ti-clock"></i>{{ i18n.ts.recentPosts }}</template>
<MkPagination v-slot="{items}" :pagination="recentPostsPagination" :disable-auto-load="true">
<div class="vfpdbgtk">
<MkGalleryPostPreview v-for="post in items" :key="post.id" :post="post" class="post"/>
@@ -29,7 +29,7 @@
</MkPagination>
</div>
<div v-else-if="tab === 'my'">
- <MkA to="/gallery/new" class="_link" style="margin: 16px;"><i class="fas fa-plus"></i> {{ i18n.ts.postToGallery }}</MkA>
+ <MkA to="/gallery/new" class="_link" style="margin: 16px;"><i class="ti ti-plus"></i> {{ i18n.ts.postToGallery }}</MkA>
<MkPagination v-slot="{items}" :pagination="myPostsPagination">
<div class="vfpdbgtk">
<MkGalleryPostPreview v-for="post in items" :key="post.id" :post="post" class="post"/>
@@ -98,7 +98,7 @@ watch(() => props.tag, () => {
});
const headerActions = $computed(() => [{
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.create,
handler: () => {
router.push('/gallery/new');
@@ -108,20 +108,20 @@ const headerActions = $computed(() => [{
const headerTabs = $computed(() => [{
key: 'explore',
title: i18n.ts.gallery,
- icon: 'fas fa-icons',
+ icon: 'ti ti-icons',
}, {
key: 'liked',
title: i18n.ts._gallery.liked,
- icon: 'fas fa-heart',
+ icon: 'ti ti-heart',
}, {
key: 'my',
title: i18n.ts._gallery.my,
- icon: 'fas fa-edit',
+ icon: 'ti ti-edit',
}]);
definePageMetadata({
title: i18n.ts.gallery,
- icon: 'fas fa-icons',
+ icon: 'ti ti-icons',
});
</script>
diff --git a/packages/client/src/pages/gallery/post.vue b/packages/client/src/pages/gallery/post.vue
index 3804bcdcf5..7a125cfaab 100644
--- a/packages/client/src/pages/gallery/post.vue
+++ b/packages/client/src/pages/gallery/post.vue
@@ -14,17 +14,17 @@
<div class="title">{{ post.title }}</div>
<div class="description"><Mfm :text="post.description"/></div>
<div class="info">
- <i class="fas fa-clock"></i> <MkTime :time="post.createdAt" mode="detail"/>
+ <i class="ti ti-clock"></i> <MkTime :time="post.createdAt" mode="detail"/>
</div>
<div class="actions">
<div class="like">
- <MkButton v-if="post.isLiked" v-tooltip="i18n.ts._gallery.unlike" class="button" primary @click="unlike()"><i class="fas fa-heart"></i><span v-if="post.likedCount > 0" class="count">{{ post.likedCount }}</span></MkButton>
+ <MkButton v-if="post.isLiked" v-tooltip="i18n.ts._gallery.unlike" class="button" primary @click="unlike()"><i class="ti ti-heart"></i><span v-if="post.likedCount > 0" class="count">{{ post.likedCount }}</span></MkButton>
<MkButton v-else v-tooltip="i18n.ts._gallery.like" class="button" @click="like()"><i class="far fa-heart"></i><span v-if="post.likedCount > 0" class="count">{{ post.likedCount }}</span></MkButton>
</div>
<div class="other">
- <button v-if="$i && $i.id === post.user.id" v-tooltip="i18n.ts.edit" v-click-anime class="_button" @click="edit"><i class="fas fa-pencil-alt fa-fw"></i></button>
- <button v-tooltip="i18n.ts.shareWithNote" v-click-anime class="_button" @click="shareWithNote"><i class="fas fa-retweet fa-fw"></i></button>
- <button v-tooltip="i18n.ts.share" v-click-anime class="_button" @click="share"><i class="fas fa-share-alt fa-fw"></i></button>
+ <button v-if="$i && $i.id === post.user.id" v-tooltip="i18n.ts.edit" v-click-anime class="_button" @click="edit"><i class="ti ti-pencil ti-fw"></i></button>
+ <button v-tooltip="i18n.ts.shareWithNote" v-click-anime class="_button" @click="shareWithNote"><i class="ti ti-repeat ti-fw"></i></button>
+ <button v-tooltip="i18n.ts.share" v-click-anime class="_button" @click="share"><i class="ti ti-share ti-fw"></i></button>
</div>
</div>
<div class="user">
@@ -38,7 +38,7 @@
</div>
<MkAd :prefer="['horizontal', 'horizontal-big']"/>
<MkContainer :max-height="300" :foldable="true" class="other">
- <template #header><i class="fas fa-clock"></i> {{ i18n.ts.recentPosts }}</template>
+ <template #header><i class="ti ti-clock"></i> {{ i18n.ts.recentPosts }}</template>
<MkPagination v-slot="{items}" :pagination="otherPostsPagination">
<div class="sdrarzaf">
<MkGalleryPostPreview v-for="post in items" :key="post.id" :post="post" class="post"/>
@@ -139,7 +139,7 @@ function edit() {
watch(() => props.postId, fetchPost, { immediate: true });
const headerActions = $computed(() => [{
- icon: 'fas fa-pencil-alt',
+ icon: 'ti ti-pencil',
text: i18n.ts.edit,
handler: edit,
}]);
diff --git a/packages/client/src/pages/instance-info.vue b/packages/client/src/pages/instance-info.vue
index 6e13da0d68..92288f573d 100644
--- a/packages/client/src/pages/instance-info.vue
+++ b/packages/client/src/pages/instance-info.vue
@@ -28,7 +28,7 @@
<template #label>Moderation</template>
<FormSwitch v-model="suspended" class="_formBlock" @update:modelValue="toggleSuspend">{{ i18n.ts.stopActivityDelivery }}</FormSwitch>
<FormSwitch v-model="isBlocked" class="_formBlock" @update:modelValue="toggleBlock">{{ i18n.ts.blockThisInstance }}</FormSwitch>
- <MkButton @click="refreshMetadata"><i class="fas fa-refresh"></i> Refresh metadata</MkButton>
+ <MkButton @click="refreshMetadata"><i class="ti ti-refresh"></i> Refresh metadata</MkButton>
</FormSection>
<FormSection>
@@ -195,7 +195,7 @@ fetch();
const headerActions = $computed(() => [{
text: `https://${props.host}`,
- icon: 'fas fa-external-link-alt',
+ icon: 'ti ti-external-link',
handler: () => {
window.open(`https://${props.host}`, '_blank');
},
@@ -204,24 +204,24 @@ const headerActions = $computed(() => [{
const headerTabs = $computed(() => [{
key: 'overview',
title: i18n.ts.overview,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
}, {
key: 'chart',
title: i18n.ts.charts,
- icon: 'fas fa-chart-simple',
+ icon: 'ti ti-chart-line',
}, {
key: 'users',
title: i18n.ts.users,
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
}, {
key: 'raw',
title: 'Raw',
- icon: 'fas fa-code',
+ icon: 'ti ti-code',
}]);
definePageMetadata({
title: props.host,
- icon: 'fas fa-server',
+ icon: 'ti ti-server',
});
</script>
diff --git a/packages/client/src/pages/messaging/index.vue b/packages/client/src/pages/messaging/index.vue
index 56d852fe3d..b4cec5f5e9 100644
--- a/packages/client/src/pages/messaging/index.vue
+++ b/packages/client/src/pages/messaging/index.vue
@@ -3,7 +3,7 @@
<template #header><MkPageHeader :actions="headerActions" :tabs="headerTabs"/></template>
<MkSpacer :content-max="800">
<div v-size="{ max: [400] }" class="yweeujhr">
- <MkButton primary class="start" @click="start"><i class="fas fa-plus"></i> {{ $ts.startMessaging }}</MkButton>
+ <MkButton primary class="start" @click="start"><i class="ti ti-plus"></i> {{ $ts.startMessaging }}</MkButton>
<div v-if="messages.length > 0" class="history">
<MkA
@@ -96,11 +96,11 @@ function onRead(ids) {
function start(ev) {
os.popupMenu([{
text: i18n.ts.messagingWithUser,
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
action: () => { startUser(); },
}, {
text: i18n.ts.messagingWithGroup,
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
action: () => { startGroup(); },
}], ev.currentTarget ?? ev.target);
}
@@ -158,7 +158,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.messaging,
- icon: 'fas fa-comments',
+ icon: 'ti ti-messages',
});
</script>
diff --git a/packages/client/src/pages/messaging/messaging-room.form.vue b/packages/client/src/pages/messaging/messaging-room.form.vue
index 4589069df0..ca0ebf554e 100644
--- a/packages/client/src/pages/messaging/messaging-room.form.vue
+++ b/packages/client/src/pages/messaging/messaging-room.form.vue
@@ -15,10 +15,10 @@
<footer>
<div v-if="file" class="file" @click="file = null">{{ file.name }}</div>
<div class="buttons">
- <button class="_button" @click="chooseFile"><i class="fas fa-photo-video"></i></button>
- <button class="_button" @click="insertEmoji"><i class="fas fa-laugh-squint"></i></button>
+ <button class="_button" @click="chooseFile"><i class="ti ti-photo-plus"></i></button>
+ <button class="_button" @click="insertEmoji"><i class="ti ti-mood-happy"></i></button>
<button class="send _button" :disabled="!canSend || sending" :title="i18n.ts.send" @click="send">
- <template v-if="!sending"><i class="fas fa-paper-plane"></i></template><template v-if="sending"><i class="fas fa-spinner fa-pulse fa-fw"></i></template>
+ <template v-if="!sending"><i class="ti ti-send"></i></template><template v-if="sending"><i class="fas fa-spinner fa-pulse ti-fw"></i></template>
</button>
</div>
</footer>
diff --git a/packages/client/src/pages/messaging/messaging-room.message.vue b/packages/client/src/pages/messaging/messaging-room.message.vue
index 2b5a9569a1..e7cf54a066 100644
--- a/packages/client/src/pages/messaging/messaging-room.message.vue
+++ b/packages/client/src/pages/messaging/messaging-room.message.vue
@@ -29,7 +29,7 @@
<span v-if="isMe && message.isRead" class="read">{{ $ts.messageRead }}</span>
</template>
<MkTime :time="message.createdAt"/>
- <template v-if="message.is_edited"><i class="fas fa-pencil-alt"></i></template>
+ <template v-if="message.is_edited"><i class="ti ti-pencil"></i></template>
</footer>
</div>
</div>
diff --git a/packages/client/src/pages/messaging/messaging-room.vue b/packages/client/src/pages/messaging/messaging-room.vue
index 37d4145ee8..b6eeb9260e 100644
--- a/packages/client/src/pages/messaging/messaging-room.vue
+++ b/packages/client/src/pages/messaging/messaging-room.vue
@@ -40,7 +40,7 @@
</div>
<transition :name="animation ? 'fade' : ''">
<div v-show="showIndicator" class="new-message">
- <button class="_buttonPrimary" @click="onIndicatorClick"><i class="fas fa-fw fa-arrow-circle-down"></i>{{ i18n.ts.newMessageExists }}</button>
+ <button class="_buttonPrimary" @click="onIndicatorClick"><i class="fas ti-fw fa-arrow-circle-down"></i>{{ i18n.ts.newMessageExists }}</button>
</div>
</transition>
<XForm v-if="!fetching" ref="formEl" :user="user" :group="group" class="form"/>
@@ -300,7 +300,7 @@ definePageMetadata(computed(() => !fetching ? user ? {
avatar: user,
} : {
title: group?.name,
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
} : null));
</script>
diff --git a/packages/client/src/pages/mfm-cheat-sheet.vue b/packages/client/src/pages/mfm-cheat-sheet.vue
index bd8ae4e0b6..7c85dfb7ad 100644
--- a/packages/client/src/pages/mfm-cheat-sheet.vue
+++ b/packages/client/src/pages/mfm-cheat-sheet.vue
@@ -351,7 +351,7 @@ let preview_plain = $ref('<plain>**bold** @mention #hashtag `code` $[x2 🍮]</p
definePageMetadata({
title: i18n.ts._mfm.cheatSheet,
- icon: 'fas fa-question-circle',
+ icon: 'ti ti-question-circle',
});
</script>
diff --git a/packages/client/src/pages/my-antennas/create.vue b/packages/client/src/pages/my-antennas/create.vue
index dc10bece81..005b036696 100644
--- a/packages/client/src/pages/my-antennas/create.vue
+++ b/packages/client/src/pages/my-antennas/create.vue
@@ -37,7 +37,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.manageAntennas,
- icon: 'fas fa-satellite',
+ icon: 'ti ti-antenna',
});
</script>
diff --git a/packages/client/src/pages/my-antennas/edit.vue b/packages/client/src/pages/my-antennas/edit.vue
index 53f9b07db0..cb583faaeb 100644
--- a/packages/client/src/pages/my-antennas/edit.vue
+++ b/packages/client/src/pages/my-antennas/edit.vue
@@ -34,7 +34,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.manageAntennas,
- icon: 'fas fa-satellite',
+ icon: 'ti ti-antenna',
});
</script>
diff --git a/packages/client/src/pages/my-antennas/editor.vue b/packages/client/src/pages/my-antennas/editor.vue
index 054053fbfb..a409a734b5 100644
--- a/packages/client/src/pages/my-antennas/editor.vue
+++ b/packages/client/src/pages/my-antennas/editor.vue
@@ -38,8 +38,8 @@
<MkSwitch v-model="notify" class="_formBlock">{{ i18n.ts.notifyAntenna }}</MkSwitch>
</div>
<div class="actions">
- <MkButton inline primary @click="saveAntenna()"><i class="fas fa-save"></i> {{ i18n.ts.save }}</MkButton>
- <MkButton v-if="antenna.id != null" inline danger @click="deleteAntenna()"><i class="fas fa-trash"></i> {{ i18n.ts.delete }}</MkButton>
+ <MkButton inline primary @click="saveAntenna()"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton v-if="antenna.id != null" inline danger @click="deleteAntenna()"><i class="ti ti-trash"></i> {{ i18n.ts.delete }}</MkButton>
</div>
</div>
</template>
diff --git a/packages/client/src/pages/my-antennas/index.vue b/packages/client/src/pages/my-antennas/index.vue
index dc73ba674e..9daf23f9b5 100644
--- a/packages/client/src/pages/my-antennas/index.vue
+++ b/packages/client/src/pages/my-antennas/index.vue
@@ -2,7 +2,7 @@
<template #header><MkPageHeader :actions="headerActions" :tabs="headerTabs"/></template>
<MkSpacer :content-max="700">
<div class="ieepwinx">
- <MkButton :link="true" to="/my/antennas/create" primary class="add"><i class="fas fa-plus"></i> {{ i18n.ts.add }}</MkButton>
+ <MkButton :link="true" to="/my/antennas/create" primary class="add"><i class="ti ti-plus"></i> {{ i18n.ts.add }}</MkButton>
<div class="">
<MkPagination v-slot="{items}" ref="list" :pagination="pagination">
@@ -33,7 +33,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.manageAntennas,
- icon: 'fas fa-satellite',
+ icon: 'ti ti-antenna',
});
</script>
diff --git a/packages/client/src/pages/my-clips/index.vue b/packages/client/src/pages/my-clips/index.vue
index 68330d6db4..dd6b5b3a37 100644
--- a/packages/client/src/pages/my-clips/index.vue
+++ b/packages/client/src/pages/my-clips/index.vue
@@ -3,7 +3,7 @@
<template #header><MkPageHeader :actions="headerActions" :tabs="headerTabs"/></template>
<MkSpacer :content-max="700">
<div class="qtcaoidl">
- <MkButton primary class="add" @click="create"><i class="fas fa-plus"></i> {{ i18n.ts.add }}</MkButton>
+ <MkButton primary class="add" @click="create"><i class="ti ti-plus"></i> {{ i18n.ts.add }}</MkButton>
<MkPagination v-slot="{items}" ref="pagingComponent" :pagination="pagination" class="list">
<MkA v-for="item in items" :key="item.id" :to="`/clips/${item.id}`" class="item _panel _gap">
@@ -70,9 +70,9 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.clip,
- icon: 'fas fa-paperclip',
+ icon: 'ti ti-paperclip',
action: {
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
handler: create,
},
});
diff --git a/packages/client/src/pages/my-lists/index.vue b/packages/client/src/pages/my-lists/index.vue
index 9af7c0d105..3476436b27 100644
--- a/packages/client/src/pages/my-lists/index.vue
+++ b/packages/client/src/pages/my-lists/index.vue
@@ -3,7 +3,7 @@
<template #header><MkPageHeader :actions="headerActions" :tabs="headerTabs"/></template>
<MkSpacer :content-max="700">
<div class="qkcjvfiv">
- <MkButton primary class="add" @click="create"><i class="fas fa-plus"></i> {{ i18n.ts.createList }}</MkButton>
+ <MkButton primary class="add" @click="create"><i class="ti ti-plus"></i> {{ i18n.ts.createList }}</MkButton>
<MkPagination v-slot="{items}" ref="pagingComponent" :pagination="pagination" class="lists _content">
<MkA v-for="list in items" :key="list.id" class="list _panel" :to="`/my/lists/${ list.id }`">
@@ -47,9 +47,9 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.manageLists,
- icon: 'fas fa-list-ul',
+ icon: 'ti ti-list',
action: {
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
handler: create,
},
});
diff --git a/packages/client/src/pages/my-lists/list.vue b/packages/client/src/pages/my-lists/list.vue
index d90453526e..f6234ffe44 100644
--- a/packages/client/src/pages/my-lists/list.vue
+++ b/packages/client/src/pages/my-lists/list.vue
@@ -25,7 +25,7 @@
<MkAcct :user="user" class="acct"/>
</div>
<div class="action">
- <button class="_button" @click="removeUser(user)"><i class="fas fa-times"></i></button>
+ <button class="_button" @click="removeUser(user)"><i class="ti ti-x"></i></button>
</div>
</div>
</div>
@@ -122,7 +122,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => list ? {
title: list.name,
- icon: 'fas fa-list-ul',
+ icon: 'ti ti-list',
} : null));
</script>
diff --git a/packages/client/src/pages/not-found.vue b/packages/client/src/pages/not-found.vue
index 253ecdb235..e58e44ef79 100644
--- a/packages/client/src/pages/not-found.vue
+++ b/packages/client/src/pages/not-found.vue
@@ -17,6 +17,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.notFound,
- icon: 'fas fa-exclamation-triangle',
+ icon: 'ti ti-alert-triangle',
});
</script>
diff --git a/packages/client/src/pages/note.vue b/packages/client/src/pages/note.vue
index 6509cb306e..ba2bb91239 100644
--- a/packages/client/src/pages/note.vue
+++ b/packages/client/src/pages/note.vue
@@ -10,7 +10,7 @@
</div>
<div class="main _gap">
- <MkButton v-if="!showNext && hasNext" class="load next" @click="showNext = true"><i class="fas fa-chevron-up"></i></MkButton>
+ <MkButton v-if="!showNext && hasNext" class="load next" @click="showNext = true"><i class="ti ti-chevron-up"></i></MkButton>
<div class="note _gap">
<MkRemoteCaution v-if="note.user.host != null" :href="note.url ?? note.uri"/>
<XNoteDetailed :key="note.id" v-model:note="note" class="note"/>
@@ -25,7 +25,7 @@
</div>
</MkA>
</div>
- <MkButton v-if="!showPrev && hasPrev" class="load prev" @click="showPrev = true"><i class="fas fa-chevron-down"></i></MkButton>
+ <MkButton v-if="!showPrev && hasPrev" class="load prev" @click="showPrev = true"><i class="ti ti-chevron-down"></i></MkButton>
</div>
<div v-if="showPrev" class="_gap">
diff --git a/packages/client/src/pages/notifications.vue b/packages/client/src/pages/notifications.vue
index dd57060fda..7106951de2 100644
--- a/packages/client/src/pages/notifications.vue
+++ b/packages/client/src/pages/notifications.vue
@@ -50,7 +50,7 @@ function setFilter(ev) {
},
}));
const items = includeTypes != null ? [{
- icon: 'fas fa-times',
+ icon: 'ti ti-x',
text: i18n.ts.clear,
action: () => {
includeTypes = null;
@@ -61,12 +61,12 @@ function setFilter(ev) {
const headerActions = $computed(() => [tab === 'all' ? {
text: i18n.ts.filter,
- icon: 'fas fa-filter',
+ icon: 'ti ti-filter',
highlighted: includeTypes != null,
handler: setFilter,
} : undefined, tab === 'all' ? {
text: i18n.ts.markAllAsRead,
- icon: 'fas fa-check',
+ icon: 'ti ti-check',
handler: () => {
os.apiWithDialog('notifications/mark-all-as-read');
},
@@ -81,15 +81,15 @@ const headerTabs = $computed(() => [{
}, {
key: 'mentions',
title: i18n.ts.mentions,
- icon: 'fas fa-at',
+ icon: 'ti ti-at',
}, {
key: 'directNotes',
title: i18n.ts.directNotes,
- icon: 'fas fa-envelope',
+ icon: 'ti ti-mail',
}]);
definePageMetadata(computed(() => ({
title: i18n.ts.notifications,
- icon: 'fas fa-bell',
+ icon: 'ti ti-bell',
})));
</script>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.button.vue b/packages/client/src/pages/page-editor/els/page-editor.el.button.vue
index 4c2e0e4eb4..0438969afa 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.button.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.button.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.button }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.button }}</template>
<section class="xfhsjczc">
<MkInput v-model="value.text"><template #label>{{ $ts._pages.blocks._button.text }}</template></MkInput>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.counter.vue b/packages/client/src/pages/page-editor/els/page-editor.el.counter.vue
index 1a2078448d..8625c26e78 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.counter.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.counter.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.counter }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.counter }}</template>
<section style="padding: 0 16px 0 16px;">
<MkInput v-model="value.name">
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.if.vue b/packages/client/src/pages/page-editor/els/page-editor.el.if.vue
index d763070b15..c93caeb9bd 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.if.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.if.vue
@@ -4,7 +4,7 @@
<template #header><i class="fas fa-question"></i> {{ $ts._pages.blocks.if }}</template>
<template #func>
<button class="_button" @click="add()">
- <i class="fas fa-plus"></i>
+ <i class="ti ti-plus"></i>
</button>
</template>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.number-input.vue b/packages/client/src/pages/page-editor/els/page-editor.el.number-input.vue
index 479a859e76..a8fb702329 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.number-input.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.number-input.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.numberInput }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.numberInput }}</template>
<section style="padding: 0 16px 0 16px;">
<MkInput v-model="value.name">
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.post.vue b/packages/client/src/pages/page-editor/els/page-editor.el.post.vue
index f8c42c296b..39be01ab32 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.post.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.post.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-paper-plane"></i> {{ $ts._pages.blocks.post }}</template>
+ <template #header><i class="ti ti-send"></i> {{ $ts._pages.blocks.post }}</template>
<section style="padding: 16px;">
<MkTextarea v-model="value.text"><template #label>{{ $ts._pages.blocks._post.text }}</template></MkTextarea>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.radio-button.vue b/packages/client/src/pages/page-editor/els/page-editor.el.radio-button.vue
index 4b28f120a9..754af477b6 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.radio-button.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.radio-button.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.radioButton }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.radioButton }}</template>
<section style="padding: 0 16px 16px 16px;">
<MkInput v-model="value.name"><template #prefix><i class="fas fa-magic"></i></template><template #label>{{ $ts._pages.blocks._radioButton.name }}</template></MkInput>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.section.vue b/packages/client/src/pages/page-editor/els/page-editor.el.section.vue
index 7276cc1e1b..c7b87c660b 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.section.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.section.vue
@@ -4,10 +4,10 @@
<template #header><i class="fas fa-sticky-note"></i> {{ value.title }}</template>
<template #func>
<button class="_button" @click="rename()">
- <i class="fas fa-pencil-alt"></i>
+ <i class="ti ti-pencil"></i>
</button>
<button class="_button" @click="add()">
- <i class="fas fa-plus"></i>
+ <i class="ti ti-plus"></i>
</button>
</template>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.switch.vue b/packages/client/src/pages/page-editor/els/page-editor.el.switch.vue
index ded57cf304..c74b17cc2c 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.switch.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.switch.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.switch }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.switch }}</template>
<section class="kjuadyyj">
<MkInput v-model="value.name"><template #prefix><i class="fas fa-magic"></i></template><template #label>{{ $ts._pages.blocks._switch.name }}</template></MkInput>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.text-input.vue b/packages/client/src/pages/page-editor/els/page-editor.el.text-input.vue
index 1e269ae58c..99631c4dae 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.text-input.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.text-input.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.textInput }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.textInput }}</template>
<section style="padding: 0 16px 0 16px;">
<MkInput v-model="value.name"><template #prefix><i class="fas fa-magic"></i></template><template #label>{{ $ts._pages.blocks._textInput.name }}</template></MkInput>
diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.textarea-input.vue b/packages/client/src/pages/page-editor/els/page-editor.el.textarea-input.vue
index 1bb4aaa543..4b417e39a7 100644
--- a/packages/client/src/pages/page-editor/els/page-editor.el.textarea-input.vue
+++ b/packages/client/src/pages/page-editor/els/page-editor.el.textarea-input.vue
@@ -1,7 +1,7 @@
<template>
<!-- eslint-disable vue/no-mutating-props -->
<XContainer :draggable="true" @remove="() => $emit('remove')">
- <template #header><i class="fas fa-bolt"></i> {{ $ts._pages.blocks.textareaInput }}</template>
+ <template #header><i class="ti ti-bolt"></i> {{ $ts._pages.blocks.textareaInput }}</template>
<section style="padding: 0 16px 16px 16px;">
<MkInput v-model="value.name"><template #prefix><i class="fas fa-magic"></i></template><template #label>{{ $ts._pages.blocks._textareaInput.name }}</template></MkInput>
diff --git a/packages/client/src/pages/page-editor/page-editor.container.vue b/packages/client/src/pages/page-editor/page-editor.container.vue
index 6927e55868..efc9aac2a7 100644
--- a/packages/client/src/pages/page-editor/page-editor.container.vue
+++ b/packages/client/src/pages/page-editor/page-editor.container.vue
@@ -5,14 +5,14 @@
<div class="buttons">
<slot name="func"></slot>
<button v-if="removable" class="_button" @click="remove()">
- <i class="fas fa-trash-alt"></i>
+ <i class="ti ti-trash"></i>
</button>
<button v-if="draggable" class="drag-handle _button">
- <i class="fas fa-bars"></i>
+ <i class="ti ti-menu-2"></i>
</button>
<button class="_button" @click="toggleContent(!showBody)">
- <template v-if="showBody"><i class="fas fa-angle-up"></i></template>
- <template v-else><i class="fas fa-angle-down"></i></template>
+ <template v-if="showBody"><i class="ti ti-chevron-up"></i></template>
+ <template v-else><i class="ti ti-chevron-down"></i></template>
</button>
</div>
</header>
diff --git a/packages/client/src/pages/page-editor/page-editor.script-block.vue b/packages/client/src/pages/page-editor/page-editor.script-block.vue
index ded9368b89..bb07adaae2 100644
--- a/packages/client/src/pages/page-editor/page-editor.script-block.vue
+++ b/packages/client/src/pages/page-editor/page-editor.script-block.vue
@@ -4,7 +4,7 @@
<template #header><i v-if="icon" :class="icon"></i> <template v-if="title">{{ title }} <span v-if="typeText" class="turmquns">({{ typeText }})</span></template><template v-else-if="typeText">{{ typeText }}</template></template>
<template #func>
<button class="_button" @click="changeType()">
- <i class="fas fa-pencil-alt"></i>
+ <i class="ti ti-pencil"></i>
</button>
</template>
@@ -116,7 +116,7 @@ export default defineComponent({
computed: {
icon(): any {
if (this.modelValue.type === null) return null;
- if (this.modelValue.type.startsWith('fn:')) return 'fas fa-plug';
+ if (this.modelValue.type.startsWith('fn:')) return 'ti ti-plug';
return blockDefs.find(x => x.type === this.modelValue.type).icon;
},
typeText(): any {
diff --git a/packages/client/src/pages/page-editor/page-editor.vue b/packages/client/src/pages/page-editor/page-editor.vue
index 591d13053a..1230119c63 100644
--- a/packages/client/src/pages/page-editor/page-editor.vue
+++ b/packages/client/src/pages/page-editor/page-editor.vue
@@ -3,10 +3,10 @@
<template #header><MkPageHeader v-model:tab="tab" :actions="headerActions" :tabs="headerTabs"/></template>
<MkSpacer :content-max="700">
<div class="jqqmcavi">
- <MkButton v-if="pageId" class="button" inline link :to="`/@${ author.username }/pages/${ currentName }`"><i class="fas fa-external-link-square-alt"></i> {{ $ts._pages.viewPage }}</MkButton>
- <MkButton v-if="!readonly" inline primary class="button" @click="save"><i class="fas fa-save"></i> {{ $ts.save }}</MkButton>
- <MkButton v-if="pageId" inline class="button" @click="duplicate"><i class="fas fa-copy"></i> {{ $ts.duplicate }}</MkButton>
- <MkButton v-if="pageId && !readonly" inline class="button" danger @click="del"><i class="fas fa-trash-alt"></i> {{ $ts.delete }}</MkButton>
+ <MkButton v-if="pageId" class="button" inline link :to="`/@${ author.username }/pages/${ currentName }`"><i class="ti ti-external-link"></i> {{ $ts._pages.viewPage }}</MkButton>
+ <MkButton v-if="!readonly" inline primary class="button" @click="save"><i class="ti ti-device-floppy"></i> {{ $ts.save }}</MkButton>
+ <MkButton v-if="pageId" inline class="button" @click="duplicate"><i class="ti ti-copy"></i> {{ $ts.duplicate }}</MkButton>
+ <MkButton v-if="pageId && !readonly" inline class="button" danger @click="del"><i class="ti ti-trash"></i> {{ $ts.delete }}</MkButton>
</div>
<div v-if="tab === 'settings'">
@@ -35,10 +35,10 @@
<MkSwitch v-model="hideTitleWhenPinned" class="_formBlock">{{ $ts._pages.hideTitleWhenPinned }}</MkSwitch>
<div class="eyeCatch">
- <MkButton v-if="eyeCatchingImageId == null && !readonly" @click="setEyeCatchingImage"><i class="fas fa-plus"></i> {{ $ts._pages.eyeCatchingImageSet }}</MkButton>
+ <MkButton v-if="eyeCatchingImageId == null && !readonly" @click="setEyeCatchingImage"><i class="ti ti-plus"></i> {{ $ts._pages.eyeCatchingImageSet }}</MkButton>
<div v-else-if="eyeCatchingImage">
<img :src="eyeCatchingImage.url" :alt="eyeCatchingImage.name" style="max-width: 100%;"/>
- <MkButton v-if="!readonly" @click="removeEyeCatchingImage()"><i class="fas fa-trash-alt"></i> {{ $ts._pages.eyeCatchingImageRemove }}</MkButton>
+ <MkButton v-if="!readonly" @click="removeEyeCatchingImage()"><i class="ti ti-trash"></i> {{ $ts._pages.eyeCatchingImageRemove }}</MkButton>
</div>
</div>
</div>
@@ -48,7 +48,7 @@
<div>
<XBlocks v-model="content" class="content" :hpml="hpml"/>
- <MkButton v-if="!readonly" @click="add()"><i class="fas fa-plus"></i></MkButton>
+ <MkButton v-if="!readonly" @click="add()"><i class="ti ti-plus"></i></MkButton>
</div>
</div>
@@ -68,7 +68,7 @@
</template>
</XDraggable>
- <MkButton v-if="!readonly" class="add" @click="addVariable()"><i class="fas fa-plus"></i></MkButton>
+ <MkButton v-if="!readonly" class="add" @click="addVariable()"><i class="ti ti-plus"></i></MkButton>
</div>
</div>
@@ -412,7 +412,7 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => [{
key: 'settings',
title: i18n.ts._pages.pageSetting,
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
}, {
key: 'contents',
title: i18n.ts._pages.contents,
@@ -424,7 +424,7 @@ const headerTabs = $computed(() => [{
}, {
key: 'script',
title: i18n.ts.script,
- icon: 'fas fa-code',
+ icon: 'ti ti-code',
}]);
definePageMetadata(computed(() => {
@@ -437,7 +437,7 @@ definePageMetadata(computed(() => {
}
return {
title: title,
- icon: 'fas fa-pencil-alt',
+ icon: 'ti ti-pencil',
};
}));
</script>
diff --git a/packages/client/src/pages/page.vue b/packages/client/src/pages/page.vue
index fb0e6a4914..5a37df64d3 100644
--- a/packages/client/src/pages/page.vue
+++ b/packages/client/src/pages/page.vue
@@ -18,12 +18,12 @@
</div>
<div class="actions">
<div class="like">
- <MkButton v-if="page.isLiked" v-tooltip="i18n.ts._pages.unlike" class="button" primary @click="unlike()"><i class="fas fa-heart"></i><span v-if="page.likedCount > 0" class="count">{{ page.likedCount }}</span></MkButton>
+ <MkButton v-if="page.isLiked" v-tooltip="i18n.ts._pages.unlike" class="button" primary @click="unlike()"><i class="ti ti-heart"></i><span v-if="page.likedCount > 0" class="count">{{ page.likedCount }}</span></MkButton>
<MkButton v-else v-tooltip="i18n.ts._pages.like" class="button" @click="like()"><i class="far fa-heart"></i><span v-if="page.likedCount > 0" class="count">{{ page.likedCount }}</span></MkButton>
</div>
<div class="other">
- <button v-tooltip="i18n.ts.shareWithNote" v-click-anime class="_button" @click="shareWithNote"><i class="fas fa-retweet fa-fw"></i></button>
- <button v-tooltip="i18n.ts.share" v-click-anime class="_button" @click="share"><i class="fas fa-share-alt fa-fw"></i></button>
+ <button v-tooltip="i18n.ts.shareWithNote" v-click-anime class="_button" @click="shareWithNote"><i class="ti ti-repeat ti-fw"></i></button>
+ <button v-tooltip="i18n.ts.share" v-click-anime class="_button" @click="share"><i class="ti ti-share ti-fw"></i></button>
</div>
</div>
<div class="user">
@@ -49,7 +49,7 @@
</div>
<MkAd :prefer="['horizontal', 'horizontal-big']"/>
<MkContainer :max-height="300" :foldable="true" class="other">
- <template #header><i class="fas fa-clock"></i> {{ i18n.ts.recentPosts }}</template>
+ <template #header><i class="ti ti-clock"></i> {{ i18n.ts.recentPosts }}</template>
<MkPagination v-slot="{items}" :pagination="otherPostsPagination">
<MkPagePreview v-for="page in items" :key="page.id" :page="page" class="_gap"/>
</MkPagination>
diff --git a/packages/client/src/pages/pages.vue b/packages/client/src/pages/pages.vue
index 02b05c57ba..53e65c82a4 100644
--- a/packages/client/src/pages/pages.vue
+++ b/packages/client/src/pages/pages.vue
@@ -9,7 +9,7 @@
</div>
<div v-else-if="tab === 'my'" class="rknalgpo my">
- <MkButton class="new" @click="create()"><i class="fas fa-plus"></i></MkButton>
+ <MkButton class="new" @click="create()"><i class="ti ti-plus"></i></MkButton>
<MkPagination v-slot="{items}" :pagination="myPagesPagination">
<MkPagePreview v-for="page in items" :key="page.id" class="ckltabjg" :page="page"/>
</MkPagination>
@@ -55,7 +55,7 @@ function create() {
}
const headerActions = $computed(() => [{
- icon: 'fas fa-plus',
+ icon: 'ti ti-plus',
text: i18n.ts.create,
handler: create,
}]);
@@ -67,11 +67,11 @@ const headerTabs = $computed(() => [{
}, {
key: 'my',
title: i18n.ts._pages.my,
- icon: 'fas fa-edit',
+ icon: 'ti ti-edit',
}, {
key: 'liked',
title: i18n.ts._pages.liked,
- icon: 'fas fa-heart',
+ icon: 'ti ti-heart',
}]);
definePageMetadata(computed(() => ({
diff --git a/packages/client/src/pages/preview.vue b/packages/client/src/pages/preview.vue
index efbe53a523..354f686e46 100644
--- a/packages/client/src/pages/preview.vue
+++ b/packages/client/src/pages/preview.vue
@@ -16,7 +16,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: i18n.ts.preview,
- icon: 'fas fa-eye',
+ icon: 'ti ti-eye',
})));
</script>
diff --git a/packages/client/src/pages/registry.keys.vue b/packages/client/src/pages/registry.keys.vue
index ac586b4e72..f179fbe957 100644
--- a/packages/client/src/pages/registry.keys.vue
+++ b/packages/client/src/pages/registry.keys.vue
@@ -88,7 +88,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.registry,
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
});
</script>
diff --git a/packages/client/src/pages/registry.value.vue b/packages/client/src/pages/registry.value.vue
index b6f3d73bb6..378420b1ba 100644
--- a/packages/client/src/pages/registry.value.vue
+++ b/packages/client/src/pages/registry.value.vue
@@ -24,14 +24,14 @@
<template #label>{{ i18n.ts.value }} (JSON)</template>
</FormTextarea>
- <MkButton class="_formBlock" primary @click="save"><i class="fas fa-save"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton class="_formBlock" primary @click="save"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</MkButton>
<MkKeyValue class="_formBlock">
<template #key>{{ i18n.ts.updatedAt }}</template>
<template #value><MkTime :time="value.updatedAt" mode="detail"/></template>
</MkKeyValue>
- <MkButton danger @click="del"><i class="fas fa-trash"></i> {{ i18n.ts.delete }}</MkButton>
+ <MkButton danger @click="del"><i class="ti ti-trash"></i> {{ i18n.ts.delete }}</MkButton>
</template>
</MkSpacer>
</MkStickyContainer>
@@ -115,7 +115,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.registry,
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
});
</script>
diff --git a/packages/client/src/pages/registry.vue b/packages/client/src/pages/registry.vue
index 80a44d5589..a2c65294fc 100644
--- a/packages/client/src/pages/registry.vue
+++ b/packages/client/src/pages/registry.vue
@@ -66,7 +66,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.registry,
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
});
</script>
diff --git a/packages/client/src/pages/reset-password.vue b/packages/client/src/pages/reset-password.vue
index 38f2cf289d..8ec15f6425 100644
--- a/packages/client/src/pages/reset-password.vue
+++ b/packages/client/src/pages/reset-password.vue
@@ -4,7 +4,7 @@
<MkSpacer v-if="token" :content-max="700" :margin-min="16" :margin-max="32">
<div class="_formRoot">
<FormInput v-model="password" type="password" class="_formBlock">
- <template #prefix><i class="fas fa-lock"></i></template>
+ <template #prefix><i class="ti ti-lock"></i></template>
<template #label>{{ i18n.ts.newPassword }}</template>
</FormInput>
@@ -50,7 +50,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.resetPassword,
- icon: 'fas fa-lock',
+ icon: 'ti ti-lock',
});
</script>
diff --git a/packages/client/src/pages/scratchpad.vue b/packages/client/src/pages/scratchpad.vue
index 12b5d78b27..edb2d8e18c 100644
--- a/packages/client/src/pages/scratchpad.vue
+++ b/packages/client/src/pages/scratchpad.vue
@@ -2,7 +2,7 @@
<div class="iltifgqe">
<div class="editor _panel _gap">
<PrismEditor v-model="code" class="_code code" :highlight="highlighter" :line-numbers="false"/>
- <MkButton style="position: absolute; top: 8px; right: 8px;" primary @click="run()"><i class="fas fa-play"></i></MkButton>
+ <MkButton style="position: absolute; top: 8px; right: 8px;" primary @click="run()"><i class="ti ti-player-play"></i></MkButton>
</div>
<MkContainer :foldable="true" class="_gap">
@@ -112,7 +112,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.scratchpad,
- icon: 'fas fa-terminal',
+ icon: 'ti ti-terminal-2',
});
</script>
diff --git a/packages/client/src/pages/search.vue b/packages/client/src/pages/search.vue
index fdcbb57e44..c080b763bb 100644
--- a/packages/client/src/pages/search.vue
+++ b/packages/client/src/pages/search.vue
@@ -33,6 +33,6 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: i18n.t('searchWith', { q: props.query }),
- icon: 'fas fa-search',
+ icon: 'ti ti-search',
})));
</script>
diff --git a/packages/client/src/pages/settings/2fa.vue b/packages/client/src/pages/settings/2fa.vue
index 89d8178dc6..422b55e227 100644
--- a/packages/client/src/pages/settings/2fa.vue
+++ b/packages/client/src/pages/settings/2fa.vue
@@ -26,7 +26,7 @@
<ol v-if="registration && !registration.error">
<li v-if="registration.stage >= 0">
{{ i18n.ts.tapSecurityKey }}
- <i v-if="registration.saving && registration.stage == 0" class="fas fa-spinner fa-pulse fa-fw"></i>
+ <i v-if="registration.saving && registration.stage == 0" class="fas fa-spinner fa-pulse ti-fw"></i>
</li>
<li v-if="registration.stage >= 1">
<MkForm :disabled="registration.stage != 1 || registration.saving">
@@ -34,7 +34,7 @@
<template #label>{{ i18n.ts.securityKeyName }}</template>
</MkInput>
<MkButton :disabled="keyName.length == 0" @click="registerKey">{{ i18n.ts.registerSecurityKey }}</MkButton>
- <i v-if="registration.saving && registration.stage == 1" class="fas fa-spinner fa-pulse fa-fw"></i>
+ <i v-if="registration.saving && registration.stage == 1" class="fas fa-spinner fa-pulse ti-fw"></i>
</MkForm>
</li>
</ol>
diff --git a/packages/client/src/pages/settings/account-info.vue b/packages/client/src/pages/settings/account-info.vue
index 93e65d55b1..ccd99c162a 100644
--- a/packages/client/src/pages/settings/account-info.vue
+++ b/packages/client/src/pages/settings/account-info.vue
@@ -153,6 +153,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.accountInfo,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
});
</script>
diff --git a/packages/client/src/pages/settings/accounts.vue b/packages/client/src/pages/settings/accounts.vue
index e16931a9ca..a2b7de81af 100644
--- a/packages/client/src/pages/settings/accounts.vue
+++ b/packages/client/src/pages/settings/accounts.vue
@@ -1,7 +1,7 @@
<template>
<div class="_formRoot">
<FormSuspense :p="init">
- <FormButton primary @click="addAccount"><i class="fas fa-plus"></i> {{ i18n.ts.addAccount }}</FormButton>
+ <FormButton primary @click="addAccount"><i class="ti ti-plus"></i> {{ i18n.ts.addAccount }}</FormButton>
<div v-for="account in accounts" :key="account.id" class="_panel _button lcjjdxlm" @click="menu(account, $event)">
<div class="avatar">
@@ -54,7 +54,7 @@ function menu(account, ev) {
action: () => switchAccount(account),
}, {
text: i18n.ts.remove,
- icon: 'fas fa-trash-alt',
+ icon: 'ti ti-trash',
danger: true,
action: () => removeAccount(account),
}], ev.currentTarget ?? ev.target);
@@ -108,7 +108,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.accounts,
- icon: 'fas fa-users',
+ icon: 'ti ti-users',
});
</script>
diff --git a/packages/client/src/pages/settings/api.vue b/packages/client/src/pages/settings/api.vue
index 7165089e39..8d7291cd10 100644
--- a/packages/client/src/pages/settings/api.vue
+++ b/packages/client/src/pages/settings/api.vue
@@ -41,6 +41,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: 'API',
- icon: 'fas fa-key',
+ icon: 'ti ti-api',
});
</script>
diff --git a/packages/client/src/pages/settings/apps.vue b/packages/client/src/pages/settings/apps.vue
index 8b345c8e9f..05abadff23 100644
--- a/packages/client/src/pages/settings/apps.vue
+++ b/packages/client/src/pages/settings/apps.vue
@@ -22,7 +22,7 @@
<div><MkTime :time="token.lastUsedAt"/></div>
</div>
<div class="actions">
- <button class="_button" @click="revoke(token)"><i class="fas fa-trash-alt"></i></button>
+ <button class="_button" @click="revoke(token)"><i class="ti ti-trash"></i></button>
</div>
<details>
<summary>{{ i18n.ts.details }}</summary>
@@ -66,7 +66,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.installedApps,
- icon: 'fas fa-plug',
+ icon: 'ti ti-plug',
});
</script>
diff --git a/packages/client/src/pages/settings/custom-css.vue b/packages/client/src/pages/settings/custom-css.vue
index 2992906e6d..2caad22b7b 100644
--- a/packages/client/src/pages/settings/custom-css.vue
+++ b/packages/client/src/pages/settings/custom-css.vue
@@ -41,6 +41,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.customCss,
- icon: 'fas fa-code',
+ icon: 'ti ti-code',
});
</script>
diff --git a/packages/client/src/pages/settings/deck.vue b/packages/client/src/pages/settings/deck.vue
index 1285a6641c..82cefe05d5 100644
--- a/packages/client/src/pages/settings/deck.vue
+++ b/packages/client/src/pages/settings/deck.vue
@@ -34,6 +34,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.deck,
- icon: 'fas fa-columns',
+ icon: 'ti ti-columns',
});
</script>
diff --git a/packages/client/src/pages/settings/delete-account.vue b/packages/client/src/pages/settings/delete-account.vue
index 851a857fed..8a25ff39f0 100644
--- a/packages/client/src/pages/settings/delete-account.vue
+++ b/packages/client/src/pages/settings/delete-account.vue
@@ -47,6 +47,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts._accountDelete.accountDelete,
- icon: 'fas fa-exclamation-triangle',
+ icon: 'ti ti-alert-triangle',
});
</script>
diff --git a/packages/client/src/pages/settings/drive.vue b/packages/client/src/pages/settings/drive.vue
index a10e2d9f7d..ed44509774 100644
--- a/packages/client/src/pages/settings/drive.vue
+++ b/packages/client/src/pages/settings/drive.vue
@@ -120,7 +120,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.drive,
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
});
</script>
diff --git a/packages/client/src/pages/settings/email.vue b/packages/client/src/pages/settings/email.vue
index 1dae233a07..d4a6dc48e5 100644
--- a/packages/client/src/pages/settings/email.vue
+++ b/packages/client/src/pages/settings/email.vue
@@ -3,9 +3,9 @@
<FormSection>
<template #label>{{ i18n.ts.emailAddress }}</template>
<FormInput v-model="emailAddress" type="email" manual-save>
- <template #prefix><i class="fas fa-envelope"></i></template>
+ <template #prefix><i class="ti ti-mail"></i></template>
<template v-if="$i.email && !$i.emailVerified" #caption>{{ i18n.ts.verificationEmailSent }}</template>
- <template v-else-if="emailAddress === $i.email && $i.emailVerified" #caption><i class="fas fa-check" style="color: var(--success);"></i> {{ i18n.ts.emailVerified }}</template>
+ <template v-else-if="emailAddress === $i.email && $i.emailVerified" #caption><i class="ti ti-check" style="color: var(--success);"></i> {{ i18n.ts.emailVerified }}</template>
</FormInput>
</FormSection>
@@ -106,6 +106,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.email,
- icon: 'fas fa-envelope',
+ icon: 'ti ti-mail',
});
</script>
diff --git a/packages/client/src/pages/settings/general.vue b/packages/client/src/pages/settings/general.vue
index 9072bcefc9..e4dbde0220 100644
--- a/packages/client/src/pages/settings/general.vue
+++ b/packages/client/src/pages/settings/general.vue
@@ -15,9 +15,9 @@
<FormRadios v-model="overridedDeviceKind" class="_formBlock">
<template #label>{{ i18n.ts.overridedDeviceKind }}</template>
<option :value="null">{{ i18n.ts.auto }}</option>
- <option value="smartphone"><i class="fas fa-mobile-alt"/> {{ i18n.ts.smartphone }}</option>
- <option value="tablet"><i class="fas fa-tablet-alt"/> {{ i18n.ts.tablet }}</option>
- <option value="desktop"><i class="fas fa-desktop"/> {{ i18n.ts.desktop }}</option>
+ <option value="smartphone"><i class="ti ti-device-mobile"/> {{ i18n.ts.smartphone }}</option>
+ <option value="tablet"><i class="ti ti-device-tablet"/> {{ i18n.ts.tablet }}</option>
+ <option value="desktop"><i class="ti ti-device-desktop"/> {{ i18n.ts.desktop }}</option>
</FormRadios>
<FormSwitch v-model="showFixedPostForm" class="_formBlock">{{ i18n.ts.showFixedPostForm }}</FormSwitch>
@@ -88,7 +88,7 @@
<FormLink to="/settings/deck" class="_formBlock">{{ i18n.ts.deck }}</FormLink>
- <FormLink to="/settings/custom-css" class="_formBlock"><template #icon><i class="fas fa-code"></i></template>{{ i18n.ts.customCss }}</FormLink>
+ <FormLink to="/settings/custom-css" class="_formBlock"><template #icon><i class="ti ti-code"></i></template>{{ i18n.ts.customCss }}</FormLink>
</div>
</template>
@@ -185,6 +185,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.general,
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
});
</script>
diff --git a/packages/client/src/pages/settings/import-export.vue b/packages/client/src/pages/settings/import-export.vue
index d3d155894e..68460cf7ad 100644
--- a/packages/client/src/pages/settings/import-export.vue
+++ b/packages/client/src/pages/settings/import-export.vue
@@ -4,66 +4,66 @@
<template #label>{{ i18n.ts._exportOrImport.allNotes }}</template>
<FormFolder>
<template #label>{{ i18n.ts.export }}</template>
- <template #icon><i class="fas fa-download"></i></template>
- <MkButton primary :class="$style.button" inline @click="exportNotes()"><i class="fas fa-download"></i> {{ i18n.ts.export }}</MkButton>
+ <template #icon><i class="ti ti-download"></i></template>
+ <MkButton primary :class="$style.button" inline @click="exportNotes()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</FormFolder>
</FormSection>
<FormSection>
<template #label>{{ i18n.ts._exportOrImport.followingList }}</template>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.export }}</template>
- <template #icon><i class="fas fa-download"></i></template>
+ <template #icon><i class="ti ti-download"></i></template>
<FormSwitch v-model="excludeMutingUsers" class="_formBlock">
{{ i18n.ts._exportOrImport.excludeMutingUsers }}
</FormSwitch>
<FormSwitch v-model="excludeInactiveUsers" class="_formBlock">
{{ i18n.ts._exportOrImport.excludeInactiveUsers }}
</FormSwitch>
- <MkButton primary :class="$style.button" inline @click="exportFollowing()"><i class="fas fa-download"></i> {{ i18n.ts.export }}</MkButton>
+ <MkButton primary :class="$style.button" inline @click="exportFollowing()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</FormFolder>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.import }}</template>
- <template #icon><i class="fas fa-upload"></i></template>
- <MkButton primary :class="$style.button" inline @click="importFollowing($event)"><i class="fas fa-upload"></i> {{ i18n.ts.import }}</MkButton>
+ <template #icon><i class="ti ti-upload"></i></template>
+ <MkButton primary :class="$style.button" inline @click="importFollowing($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
</FormFolder>
</FormSection>
<FormSection>
<template #label>{{ i18n.ts._exportOrImport.userLists }}</template>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.export }}</template>
- <template #icon><i class="fas fa-download"></i></template>
- <MkButton primary :class="$style.button" inline @click="exportUserLists()"><i class="fas fa-download"></i> {{ i18n.ts.export }}</MkButton>
+ <template #icon><i class="ti ti-download"></i></template>
+ <MkButton primary :class="$style.button" inline @click="exportUserLists()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</FormFolder>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.import }}</template>
- <template #icon><i class="fas fa-upload"></i></template>
- <MkButton primary :class="$style.button" inline @click="importUserLists($event)"><i class="fas fa-upload"></i> {{ i18n.ts.import }}</MkButton>
+ <template #icon><i class="ti ti-upload"></i></template>
+ <MkButton primary :class="$style.button" inline @click="importUserLists($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
</FormFolder>
</FormSection>
<FormSection>
<template #label>{{ i18n.ts._exportOrImport.muteList }}</template>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.export }}</template>
- <template #icon><i class="fas fa-download"></i></template>
- <MkButton primary :class="$style.button" inline @click="exportMuting()"><i class="fas fa-download"></i> {{ i18n.ts.export }}</MkButton>
+ <template #icon><i class="ti ti-download"></i></template>
+ <MkButton primary :class="$style.button" inline @click="exportMuting()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</FormFolder>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.import }}</template>
- <template #icon><i class="fas fa-upload"></i></template>
- <MkButton primary :class="$style.button" inline @click="importMuting($event)"><i class="fas fa-upload"></i> {{ i18n.ts.import }}</MkButton>
+ <template #icon><i class="ti ti-upload"></i></template>
+ <MkButton primary :class="$style.button" inline @click="importMuting($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
</FormFolder>
</FormSection>
<FormSection>
<template #label>{{ i18n.ts._exportOrImport.blockingList }}</template>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.export }}</template>
- <template #icon><i class="fas fa-download"></i></template>
- <MkButton primary :class="$style.button" inline @click="exportBlocking()"><i class="fas fa-download"></i> {{ i18n.ts.export }}</MkButton>
+ <template #icon><i class="ti ti-download"></i></template>
+ <MkButton primary :class="$style.button" inline @click="exportBlocking()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</FormFolder>
<FormFolder class="_formBlock">
<template #label>{{ i18n.ts.import }}</template>
- <template #icon><i class="fas fa-upload"></i></template>
- <MkButton primary :class="$style.button" inline @click="importBlocking($event)"><i class="fas fa-upload"></i> {{ i18n.ts.import }}</MkButton>
+ <template #icon><i class="ti ti-upload"></i></template>
+ <MkButton primary :class="$style.button" inline @click="importBlocking($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
</FormFolder>
</FormSection>
</div>
@@ -113,7 +113,7 @@ const exportFollowing = () => {
excludeMuting: excludeMutingUsers.value,
excludeInactive: excludeInactiveUsers.value,
})
- .then(onExportSuccess).catch(onError);
+ .then(onExportSuccess).catch(onError);
};
const exportBlocking = () => {
diff --git a/packages/client/src/pages/settings/index.vue b/packages/client/src/pages/settings/index.vue
index c38e1394f0..5c9d8a8efd 100644
--- a/packages/client/src/pages/settings/index.vue
+++ b/packages/client/src/pages/settings/index.vue
@@ -36,7 +36,7 @@ import * as os from '@/os';
const indexInfo = {
title: i18n.ts.settings,
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
hideHeader: true,
};
const INFO = ref(indexInfo);
@@ -58,42 +58,42 @@ const ro = new ResizeObserver((entries, observer) => {
const menuDef = computed(() => [{
title: i18n.ts.basicSettings,
items: [{
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
text: i18n.ts.profile,
to: '/settings/profile',
active: currentPage?.route.name === 'profile',
}, {
- icon: 'fas fa-lock-open',
+ icon: 'ti ti-lock-open',
text: i18n.ts.privacy,
to: '/settings/privacy',
active: currentPage?.route.name === 'privacy',
}, {
- icon: 'fas fa-laugh',
+ icon: 'ti ti-mood-happy',
text: i18n.ts.reaction,
to: '/settings/reaction',
active: currentPage?.route.name === 'reaction',
}, {
- icon: 'fas fa-cloud',
+ icon: 'ti ti-cloud',
text: i18n.ts.drive,
to: '/settings/drive',
active: currentPage?.route.name === 'drive',
}, {
- icon: 'fas fa-bell',
+ icon: 'ti ti-bell',
text: i18n.ts.notifications,
to: '/settings/notifications',
active: currentPage?.route.name === 'notifications',
}, {
- icon: 'fas fa-envelope',
+ icon: 'ti ti-mail',
text: i18n.ts.email,
to: '/settings/email',
active: currentPage?.route.name === 'email',
}, {
- icon: 'fas fa-share-alt',
+ icon: 'ti ti-share',
text: i18n.ts.integration,
to: '/settings/integration',
active: currentPage?.route.name === 'integration',
}, {
- icon: 'fas fa-lock',
+ icon: 'ti ti-lock',
text: i18n.ts.security,
to: '/settings/security',
active: currentPage?.route.name === 'security',
@@ -101,32 +101,32 @@ const menuDef = computed(() => [{
}, {
title: i18n.ts.clientSettings,
items: [{
- icon: 'fas fa-cogs',
+ icon: 'ti ti-adjustments',
text: i18n.ts.general,
to: '/settings/general',
active: currentPage?.route.name === 'general',
}, {
- icon: 'fas fa-palette',
+ icon: 'ti ti-palette',
text: i18n.ts.theme,
to: '/settings/theme',
active: currentPage?.route.name === 'theme',
}, {
- icon: 'fas fa-bars',
+ icon: 'ti ti-menu-2',
text: i18n.ts.navbar,
to: '/settings/navbar',
active: currentPage?.route.name === 'navbar',
}, {
- icon: 'fas fa-bars-progress',
+ icon: 'ti ti-equal-double',
text: i18n.ts.statusbar,
to: '/settings/statusbar',
active: currentPage?.route.name === 'statusbar',
}, {
- icon: 'fas fa-music',
+ icon: 'ti ti-music',
text: i18n.ts.sounds,
to: '/settings/sounds',
active: currentPage?.route.name === 'sounds',
}, {
- icon: 'fas fa-plug',
+ icon: 'ti ti-plug',
text: i18n.ts.plugins,
to: '/settings/plugin',
active: currentPage?.route.name === 'plugin',
@@ -134,50 +134,50 @@ const menuDef = computed(() => [{
}, {
title: i18n.ts.otherSettings,
items: [{
- icon: 'fas fa-boxes',
+ icon: 'ti ti-package',
text: i18n.ts.importAndExport,
to: '/settings/import-export',
active: currentPage?.route.name === 'import-export',
}, {
- icon: 'fas fa-volume-mute',
+ icon: 'ti ti-planet-off',
text: i18n.ts.instanceMute,
to: '/settings/instance-mute',
active: currentPage?.route.name === 'instance-mute',
}, {
- icon: 'fas fa-ban',
+ icon: 'ti ti-ban',
text: i18n.ts.muteAndBlock,
to: '/settings/mute-block',
active: currentPage?.route.name === 'mute-block',
}, {
- icon: 'fas fa-comment-slash',
+ icon: 'ti ti-message-off',
text: i18n.ts.wordMute,
to: '/settings/word-mute',
active: currentPage?.route.name === 'word-mute',
}, {
- icon: 'fas fa-key',
+ icon: 'ti ti-api',
text: 'API',
to: '/settings/api',
active: currentPage?.route.name === 'api',
}, {
- icon: 'fas fa-bolt',
+ icon: 'ti ti-webhook',
text: 'Webhook',
to: '/settings/webhook',
active: currentPage?.route.name === 'webhook',
}, {
- icon: 'fas fa-ellipsis-h',
+ icon: 'ti ti-dots',
text: i18n.ts.other,
to: '/settings/other',
active: currentPage?.route.name === 'other',
}],
}, {
items: [{
- icon: 'fas fa-floppy-disk',
+ icon: 'ti ti-device-floppy',
text: i18n.ts.preferencesBackups,
to: '/settings/preferences-backups',
active: currentPage?.route.name === 'preferences-backups',
}, {
type: 'button',
- icon: 'fas fa-trash',
+ icon: 'ti ti-trash',
text: i18n.ts.clearCache,
action: () => {
localStorage.removeItem('locale');
@@ -186,7 +186,7 @@ const menuDef = computed(() => [{
},
}, {
type: 'button',
- icon: 'fas fa-sign-in-alt fa-flip-horizontal',
+ icon: 'ti ti-logout',
text: i18n.ts.logout,
action: async () => {
const { canceled } = await os.confirm({
diff --git a/packages/client/src/pages/settings/instance-mute.vue b/packages/client/src/pages/settings/instance-mute.vue
index 5a0d48b82e..54504de188 100644
--- a/packages/client/src/pages/settings/instance-mute.vue
+++ b/packages/client/src/pages/settings/instance-mute.vue
@@ -5,7 +5,7 @@
<template #label>{{ i18n.ts._instanceMute.heading }}</template>
<template #caption>{{ i18n.ts._instanceMute.instanceMuteDescription }}<br>{{ i18n.ts._instanceMute.instanceMuteDescription2 }}</template>
</FormTextarea>
- <MkButton primary :disabled="!changed" class="_formBlock" @click="save()"><i class="fas fa-save"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton primary :disabled="!changed" class="_formBlock" @click="save()"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</MkButton>
</div>
</template>
@@ -48,6 +48,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.instanceMute,
- icon: 'fas fa-volume-mute',
+ icon: 'ti ti-planet-off',
});
</script>
diff --git a/packages/client/src/pages/settings/integration.vue b/packages/client/src/pages/settings/integration.vue
index c8219519f8..f3595e897b 100644
--- a/packages/client/src/pages/settings/integration.vue
+++ b/packages/client/src/pages/settings/integration.vue
@@ -94,6 +94,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.integration,
- icon: 'fas fa-share-alt',
+ icon: 'ti ti-share',
});
</script>
diff --git a/packages/client/src/pages/settings/mute-block.vue b/packages/client/src/pages/settings/mute-block.vue
index 3832933cf9..1cf33d34db 100644
--- a/packages/client/src/pages/settings/mute-block.vue
+++ b/packages/client/src/pages/settings/mute-block.vue
@@ -56,6 +56,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.muteAndBlock,
- icon: 'fas fa-ban',
+ icon: 'ti ti-ban',
});
</script>
diff --git a/packages/client/src/pages/settings/navbar.vue b/packages/client/src/pages/settings/navbar.vue
index 6c501e9f2f..8825134dc9 100644
--- a/packages/client/src/pages/settings/navbar.vue
+++ b/packages/client/src/pages/settings/navbar.vue
@@ -82,6 +82,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.navbar,
- icon: 'fas fa-list-ul',
+ icon: 'ti ti-list',
});
</script>
diff --git a/packages/client/src/pages/settings/notifications.vue b/packages/client/src/pages/settings/notifications.vue
index 77ec567da4..e24be99cb6 100644
--- a/packages/client/src/pages/settings/notifications.vue
+++ b/packages/client/src/pages/settings/notifications.vue
@@ -1,6 +1,6 @@
<template>
<div class="_formRoot">
- <FormLink class="_formBlock" @click="configure"><template #icon><i class="fas fa-cog"></i></template>{{ i18n.ts.notificationSetting }}</FormLink>
+ <FormLink class="_formBlock" @click="configure"><template #icon><i class="ti ti-settings"></i></template>{{ i18n.ts.notificationSetting }}</FormLink>
<FormSection>
<FormLink class="_formBlock" @click="readAllNotifications">{{ i18n.ts.markAsReadAllNotifications }}</FormLink>
<FormLink class="_formBlock" @click="readAllUnreadNotes">{{ i18n.ts.markAsReadAllUnreadNotes }}</FormLink>
@@ -85,6 +85,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.notifications,
- icon: 'fas fa-bell',
+ icon: 'ti ti-bell',
});
</script>
diff --git a/packages/client/src/pages/settings/other.vue b/packages/client/src/pages/settings/other.vue
index 51dab04cfa..f8eb594740 100644
--- a/packages/client/src/pages/settings/other.vue
+++ b/packages/client/src/pages/settings/other.vue
@@ -10,9 +10,9 @@
<FormLink to="/settings/account-info" class="_formBlock">{{ i18n.ts.accountInfo }}</FormLink>
- <FormLink to="/registry" class="_formBlock"><template #icon><i class="fas fa-cogs"></i></template>{{ i18n.ts.registry }}</FormLink>
+ <FormLink to="/registry" class="_formBlock"><template #icon><i class="ti ti-adjustments"></i></template>{{ i18n.ts.registry }}</FormLink>
- <FormLink to="/settings/delete-account" class="_formBlock"><template #icon><i class="fas fa-exclamation-triangle"></i></template>{{ i18n.ts.closeAccount }}</FormLink>
+ <FormLink to="/settings/delete-account" class="_formBlock"><template #icon><i class="ti ti-alert-triangle"></i></template>{{ i18n.ts.closeAccount }}</FormLink>
</div>
</template>
@@ -42,6 +42,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.other,
- icon: 'fas fa-ellipsis-h',
+ icon: 'ti ti-dots',
});
</script>
diff --git a/packages/client/src/pages/settings/plugin.install.vue b/packages/client/src/pages/settings/plugin.install.vue
index e259bbeb3a..550bba242e 100644
--- a/packages/client/src/pages/settings/plugin.install.vue
+++ b/packages/client/src/pages/settings/plugin.install.vue
@@ -7,7 +7,7 @@
</FormTextarea>
<div class="_formBlock">
- <FormButton :disabled="code == null" primary inline @click="install"><i class="fas fa-check"></i> {{ i18n.ts.install }}</FormButton>
+ <FormButton :disabled="code == null" primary inline @click="install"><i class="ti ti-check"></i> {{ i18n.ts.install }}</FormButton>
</div>
</div>
</template>
@@ -119,6 +119,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts._plugin.install,
- icon: 'fas fa-download',
+ icon: 'ti ti-download',
});
</script>
diff --git a/packages/client/src/pages/settings/plugin.vue b/packages/client/src/pages/settings/plugin.vue
index 8ce6fe4445..2e4d54ec5c 100644
--- a/packages/client/src/pages/settings/plugin.vue
+++ b/packages/client/src/pages/settings/plugin.vue
@@ -1,6 +1,6 @@
<template>
<div class="_formRoot">
- <FormLink to="/settings/plugin/install"><template #icon><i class="fas fa-download"></i></template>{{ i18n.ts._plugin.install }}</FormLink>
+ <FormLink to="/settings/plugin/install"><template #icon><i class="ti ti-download"></i></template>{{ i18n.ts._plugin.install }}</FormLink>
<FormSection>
<template #label>{{ i18n.ts.manage }}</template>
@@ -23,8 +23,8 @@
</MkKeyValue>
<div style="display: flex; gap: var(--margin); flex-wrap: wrap;">
- <MkButton v-if="plugin.config" inline @click="config(plugin)"><i class="fas fa-cog"></i> {{ i18n.ts.settings }}</MkButton>
- <MkButton inline danger @click="uninstall(plugin)"><i class="fas fa-trash-alt"></i> {{ i18n.ts.uninstall }}</MkButton>
+ <MkButton v-if="plugin.config" inline @click="config(plugin)"><i class="ti ti-settings"></i> {{ i18n.ts.settings }}</MkButton>
+ <MkButton inline danger @click="uninstall(plugin)"><i class="ti ti-trash"></i> {{ i18n.ts.uninstall }}</MkButton>
</div>
</div>
</FormSection>
@@ -89,7 +89,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.plugins,
- icon: 'fas fa-plug',
+ icon: 'ti ti-plug',
});
</script>
diff --git a/packages/client/src/pages/settings/preferences-backups.vue b/packages/client/src/pages/settings/preferences-backups.vue
index fac67185bc..379f65beff 100644
--- a/packages/client/src/pages/settings/preferences-backups.vue
+++ b/packages/client/src/pages/settings/preferences-backups.vue
@@ -376,25 +376,25 @@ function menu(ev: MouseEvent, profileId: string) {
return os.popupMenu([{
text: ts._preferencesBackups.apply,
- icon: 'fas fa-circle-down',
+ icon: 'ti ti-check',
action: () => applyProfile(profileId),
}, {
type: 'a',
text: ts.download,
- icon: 'fas fa-download',
+ icon: 'ti ti-download',
href: URL.createObjectURL(new Blob([JSON.stringify(profiles[profileId], null, 2)], { type: 'application/json' })),
download: `${profiles[profileId].name}.json`,
}, null, {
text: ts.rename,
- icon: 'fas fa-i-cursor',
+ icon: 'ti ti-cursor-text',
action: () => rename(profileId),
}, {
text: ts._preferencesBackups.save,
- icon: 'fas fa-floppy-disk',
+ icon: 'ti ti-device-floppy',
action: () => save(profileId),
}, null, {
text: ts._preferencesBackups.delete,
- icon: 'fas fa-trash-can',
+ icon: 'ti ti-trash',
action: () => deleteProfile(profileId),
danger: true,
}], ev.currentTarget ?? ev.target);
@@ -416,7 +416,7 @@ onUnmounted(() => {
definePageMetadata(computed(() => ({
title: ts.preferencesBackups,
- icon: 'fas fa-floppy-disk',
+ icon: 'ti ti-device-floppy',
bg: 'var(--bg)',
})));
</script>
diff --git a/packages/client/src/pages/settings/privacy.vue b/packages/client/src/pages/settings/privacy.vue
index 45a0358a92..44ffae5446 100644
--- a/packages/client/src/pages/settings/privacy.vue
+++ b/packages/client/src/pages/settings/privacy.vue
@@ -95,6 +95,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.privacy,
- icon: 'fas fa-lock-open',
+ icon: 'ti ti-lock-open',
});
</script>
diff --git a/packages/client/src/pages/settings/profile.vue b/packages/client/src/pages/settings/profile.vue
index aaf60c8d55..49e15456cf 100644
--- a/packages/client/src/pages/settings/profile.vue
+++ b/packages/client/src/pages/settings/profile.vue
@@ -46,8 +46,8 @@
<template #label>{{ i18n.ts._profile.metadataContent }} #{{ i + 1 }}</template>
</FormInput>
</FormSplit>
- <MkButton :disabled="fields.length >= 16" inline style="margin-right: 8px;" @click="addField"><i class="fas fa-plus"></i> {{ i18n.ts.add }}</MkButton>
- <MkButton inline primary @click="saveFields"><i class="fas fa-check"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton :disabled="fields.length >= 16" inline style="margin-right: 8px;" @click="addField"><i class="ti ti-plus"></i> {{ i18n.ts.add }}</MkButton>
+ <MkButton inline primary @click="saveFields"><i class="ti ti-check"></i> {{ i18n.ts.save }}</MkButton>
</div>
</FormFolder>
<template #caption>{{ i18n.ts._profile.metadataDescription }}</template>
@@ -178,7 +178,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.profile,
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
});
</script>
diff --git a/packages/client/src/pages/settings/reaction.vue b/packages/client/src/pages/settings/reaction.vue
index f8d57cbcd5..36e0718fbc 100644
--- a/packages/client/src/pages/settings/reaction.vue
+++ b/packages/client/src/pages/settings/reaction.vue
@@ -10,7 +10,7 @@
</button>
</template>
<template #footer>
- <button class="_button add" @click="chooseEmoji"><i class="fas fa-plus"></i></button>
+ <button class="_button add" @click="chooseEmoji"><i class="ti ti-plus"></i></button>
</template>
</XDraggable>
</div>
@@ -46,7 +46,7 @@
<FormSection>
<div style="display: flex; gap: var(--margin); flex-wrap: wrap;">
- <FormButton inline @click="preview"><i class="fas fa-eye"></i> {{ i18n.ts.preview }}</FormButton>
+ <FormButton inline @click="preview"><i class="ti ti-eye"></i> {{ i18n.ts.preview }}</FormButton>
<FormButton inline danger @click="setDefault"><i class="fas fa-undo"></i> {{ i18n.ts.default }}</FormButton>
</div>
</FormSection>
@@ -127,9 +127,9 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.reaction,
- icon: 'fas fa-laugh',
+ icon: 'ti ti-mood-happy',
action: {
- icon: 'fas fa-eye',
+ icon: 'ti ti-eye',
handler: preview,
},
});
diff --git a/packages/client/src/pages/settings/security.vue b/packages/client/src/pages/settings/security.vue
index d109a4ba7c..b6fdd2356f 100644
--- a/packages/client/src/pages/settings/security.vue
+++ b/packages/client/src/pages/settings/security.vue
@@ -17,8 +17,8 @@
<div>
<div v-for="item in items" :key="item.id" v-panel class="timnmucd">
<header>
- <i v-if="item.success" class="fas fa-check icon succ"></i>
- <i v-else class="fas fa-times-circle icon fail"></i>
+ <i v-if="item.success" class="ti ti-check icon succ"></i>
+ <i v-else class="ti ti-circle-x icon fail"></i>
<code class="ip _monospace">{{ item.ip }}</code>
<MkTime :time="item.createdAt" class="time"/>
</header>
@@ -103,7 +103,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.security,
- icon: 'fas fa-lock',
+ icon: 'ti ti-lock',
});
</script>
diff --git a/packages/client/src/pages/settings/sounds.vue b/packages/client/src/pages/settings/sounds.vue
index 579b5fe829..1106f0c6bb 100644
--- a/packages/client/src/pages/settings/sounds.vue
+++ b/packages/client/src/pages/settings/sounds.vue
@@ -9,7 +9,7 @@
<FormLink v-for="type in Object.keys(sounds)" :key="type" style="margin-bottom: 8px;" @click="edit(type)">
{{ $t('_sfx.' + type) }}
<template #suffix>{{ sounds[type].type || i18n.ts.none }}</template>
- <template #suffixIcon><i class="fas fa-chevron-down"></i></template>
+ <template #suffixIcon><i class="ti ti-chevron-down"></i></template>
</FormLink>
</FormSection>
@@ -135,6 +135,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.sounds,
- icon: 'fas fa-music',
+ icon: 'ti ti-music',
});
</script>
diff --git a/packages/client/src/pages/settings/statusbar.vue b/packages/client/src/pages/settings/statusbar.vue
index 9dbf182142..86c69fa2c3 100644
--- a/packages/client/src/pages/settings/statusbar.vue
+++ b/packages/client/src/pages/settings/statusbar.vue
@@ -48,7 +48,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.statusbar,
- icon: 'fas fa-list-ul',
+ icon: 'ti ti-list',
bg: 'var(--bg)',
});
</script>
diff --git a/packages/client/src/pages/settings/theme.install.vue b/packages/client/src/pages/settings/theme.install.vue
index 34f8384d87..52a436e18d 100644
--- a/packages/client/src/pages/settings/theme.install.vue
+++ b/packages/client/src/pages/settings/theme.install.vue
@@ -5,8 +5,8 @@
</FormTextarea>
<div class="_formBlock" style="display: flex; gap: var(--margin); flex-wrap: wrap;">
- <FormButton :disabled="installThemeCode == null" inline @click="() => preview(installThemeCode)"><i class="fas fa-eye"></i> {{ i18n.ts.preview }}</FormButton>
- <FormButton :disabled="installThemeCode == null" primary inline @click="() => install(installThemeCode)"><i class="fas fa-check"></i> {{ i18n.ts.install }}</FormButton>
+ <FormButton :disabled="installThemeCode == null" inline @click="() => preview(installThemeCode)"><i class="ti ti-eye"></i> {{ i18n.ts.preview }}</FormButton>
+ <FormButton :disabled="installThemeCode == null" primary inline @click="() => install(installThemeCode)"><i class="ti ti-check"></i> {{ i18n.ts.install }}</FormButton>
</div>
</div>
</template>
@@ -75,6 +75,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts._theme.install,
- icon: 'fas fa-download',
+ icon: 'ti ti-download',
});
</script>
diff --git a/packages/client/src/pages/settings/theme.manage.vue b/packages/client/src/pages/settings/theme.manage.vue
index 25f92e6ed1..5b33b50319 100644
--- a/packages/client/src/pages/settings/theme.manage.vue
+++ b/packages/client/src/pages/settings/theme.manage.vue
@@ -20,7 +20,7 @@
<template #label>{{ i18n.ts._theme.code }}</template>
<template #caption><button class="_textButton" @click="copyThemeCode()">{{ i18n.ts.copy }}</button></template>
</FormTextarea>
- <FormButton v-if="!builtinThemes.some(t => t.id == selectedTheme.id)" class="_formBlock" danger @click="uninstall()"><i class="fas fa-trash-alt"></i> {{ i18n.ts.uninstall }}</FormButton>
+ <FormButton v-if="!builtinThemes.some(t => t.id == selectedTheme.id)" class="_formBlock" danger @click="uninstall()"><i class="ti ti-trash"></i> {{ i18n.ts.uninstall }}</FormButton>
</template>
</div>
</template>
diff --git a/packages/client/src/pages/settings/theme.vue b/packages/client/src/pages/settings/theme.vue
index 42a91bcb59..f37c213b06 100644
--- a/packages/client/src/pages/settings/theme.vue
+++ b/packages/client/src/pages/settings/theme.vue
@@ -29,7 +29,7 @@
<div class="selects _formBlock">
<FormSelect v-model="lightThemeId" large class="select">
<template #label>{{ i18n.ts.themeForLightMode }}</template>
- <template #prefix><i class="fas fa-sun"></i></template>
+ <template #prefix><i class="ti ti-sun"></i></template>
<option v-if="instanceLightTheme" :key="'instance:' + instanceLightTheme.id" :value="instanceLightTheme.id">{{ instanceLightTheme.name }}</option>
<optgroup v-if="installedLightThemes.length > 0" :label="i18n.ts._theme.installedThemes">
<option v-for="x in installedLightThemes" :key="'installed:' + x.id" :value="x.id">{{ x.name }}</option>
@@ -40,7 +40,7 @@
</FormSelect>
<FormSelect v-model="darkThemeId" large class="select">
<template #label>{{ i18n.ts.themeForDarkMode }}</template>
- <template #prefix><i class="fas fa-moon"></i></template>
+ <template #prefix><i class="ti ti-moon"></i></template>
<option v-if="instanceDarkTheme" :key="'instance:' + instanceDarkTheme.id" :value="instanceDarkTheme.id">{{ instanceDarkTheme.name }}</option>
<optgroup v-if="installedDarkThemes.length > 0" :label="i18n.ts._theme.installedThemes">
<option v-for="x in installedDarkThemes" :key="'installed:' + x.id" :value="x.id">{{ x.name }}</option>
@@ -53,10 +53,10 @@
<FormSection>
<div class="_formLinksGrid">
- <FormLink to="/settings/theme/manage"><template #icon><i class="fas fa-folder-open"></i></template>{{ i18n.ts._theme.manage }}<template #suffix>{{ themesCount }}</template></FormLink>
- <FormLink to="https://assets.misskey.io/theme/list" external><template #icon><i class="fas fa-globe"></i></template>{{ i18n.ts._theme.explore }}</FormLink>
- <FormLink to="/settings/theme/install"><template #icon><i class="fas fa-download"></i></template>{{ i18n.ts._theme.install }}</FormLink>
- <FormLink to="/theme-editor"><template #icon><i class="fas fa-paint-roller"></i></template>{{ i18n.ts._theme.make }}</FormLink>
+ <FormLink to="/settings/theme/manage"><template #icon><i class="ti ti-tool"></i></template>{{ i18n.ts._theme.manage }}<template #suffix>{{ themesCount }}</template></FormLink>
+ <FormLink to="https://assets.misskey.io/theme/list" external><template #icon><i class="ti ti-world"></i></template>{{ i18n.ts._theme.explore }}</FormLink>
+ <FormLink to="/settings/theme/install"><template #icon><i class="ti ti-download"></i></template>{{ i18n.ts._theme.install }}</FormLink>
+ <FormLink to="/theme-editor"><template #icon><i class="ti ti-paint"></i></template>{{ i18n.ts._theme.make }}</FormLink>
</div>
</FormSection>
@@ -160,7 +160,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.theme,
- icon: 'fas fa-palette',
+ icon: 'ti ti-palette',
});
</script>
diff --git a/packages/client/src/pages/settings/webhook.edit.vue b/packages/client/src/pages/settings/webhook.edit.vue
index 5d41f3d087..c8ec1ea586 100644
--- a/packages/client/src/pages/settings/webhook.edit.vue
+++ b/packages/client/src/pages/settings/webhook.edit.vue
@@ -9,7 +9,7 @@
</FormInput>
<FormInput v-model="secret" class="_formBlock">
- <template #prefix><i class="fas fa-lock"></i></template>
+ <template #prefix><i class="ti ti-lock"></i></template>
<template #label>Secret</template>
</FormInput>
@@ -28,7 +28,7 @@
<FormSwitch v-model="active" class="_formBlock">Active</FormSwitch>
<div class="_formBlock" style="display: flex; gap: var(--margin); flex-wrap: wrap;">
- <FormButton primary inline @click="save"><i class="fas fa-check"></i> {{ i18n.ts.save }}</FormButton>
+ <FormButton primary inline @click="save"><i class="ti ti-check"></i> {{ i18n.ts.save }}</FormButton>
</div>
</div>
</template>
@@ -90,6 +90,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: 'Edit webhook',
- icon: 'fas fa-bolt',
+ icon: 'ti ti-webhook',
});
</script>
diff --git a/packages/client/src/pages/settings/webhook.new.vue b/packages/client/src/pages/settings/webhook.new.vue
index fcf1329ff6..00a547da69 100644
--- a/packages/client/src/pages/settings/webhook.new.vue
+++ b/packages/client/src/pages/settings/webhook.new.vue
@@ -9,7 +9,7 @@
</FormInput>
<FormInput v-model="secret" class="_formBlock">
- <template #prefix><i class="fas fa-lock"></i></template>
+ <template #prefix><i class="ti ti-lock"></i></template>
<template #label>Secret</template>
</FormInput>
@@ -26,7 +26,7 @@
</FormSection>
<div class="_formBlock" style="display: flex; gap: var(--margin); flex-wrap: wrap;">
- <FormButton primary inline @click="create"><i class="fas fa-check"></i> {{ i18n.ts.create }}</FormButton>
+ <FormButton primary inline @click="create"><i class="ti ti-check"></i> {{ i18n.ts.create }}</FormButton>
</div>
</div>
</template>
@@ -77,6 +77,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: 'Create new webhook',
- icon: 'fas fa-bolt',
+ icon: 'ti ti-webhook',
});
</script>
diff --git a/packages/client/src/pages/settings/webhook.vue b/packages/client/src/pages/settings/webhook.vue
index 1a7e73940c..0e35be0f58 100644
--- a/packages/client/src/pages/settings/webhook.vue
+++ b/packages/client/src/pages/settings/webhook.vue
@@ -11,10 +11,10 @@
<template #default="{items}">
<FormLink v-for="webhook in items" :key="webhook.id" :to="`/settings/webhook/edit/${webhook.id}`" class="_formBlock">
<template #icon>
- <i v-if="webhook.active === false" class="fas fa-circle-pause"></i>
+ <i v-if="webhook.active === false" class="ti ti-player-pause"></i>
<i v-else-if="webhook.latestStatus === null" class="far fa-circle"></i>
- <i v-else-if="[200, 201, 204].includes(webhook.latestStatus)" class="fas fa-check" :style="{ color: 'var(--success)' }"></i>
- <i v-else class="fas fa-triangle-exclamation" :style="{ color: 'var(--error)' }"></i>
+ <i v-else-if="[200, 201, 204].includes(webhook.latestStatus)" class="ti ti-check" :style="{ color: 'var(--success)' }"></i>
+ <i v-else class="ti ti-alert-triangle" :style="{ color: 'var(--error)' }"></i>
</template>
{{ webhook.name || webhook.url }}
<template #suffix>
@@ -48,6 +48,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: 'Webhook',
- icon: 'fas fa-bolt',
+ icon: 'ti ti-webhook',
});
</script>
diff --git a/packages/client/src/pages/settings/word-mute.vue b/packages/client/src/pages/settings/word-mute.vue
index e297379568..6961d8151d 100644
--- a/packages/client/src/pages/settings/word-mute.vue
+++ b/packages/client/src/pages/settings/word-mute.vue
@@ -24,7 +24,7 @@
</MkKeyValue>
</div>
</div>
- <MkButton primary inline :disabled="!changed" @click="save()"><i class="fas fa-save"></i> {{ i18n.ts.save }}</MkButton>
+ <MkButton primary inline :disabled="!changed" @click="save()"><i class="ti ti-device-floppy"></i> {{ i18n.ts.save }}</MkButton>
</div>
</template>
@@ -123,6 +123,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.wordMute,
- icon: 'fas fa-comment-slash',
+ icon: 'ti ti-message-off',
});
</script>
diff --git a/packages/client/src/pages/share.vue b/packages/client/src/pages/share.vue
index 69d22ed632..a7e797eeab 100644
--- a/packages/client/src/pages/share.vue
+++ b/packages/client/src/pages/share.vue
@@ -158,7 +158,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.share,
- icon: 'fas fa-share-alt',
+ icon: 'ti ti-share',
});
</script>
diff --git a/packages/client/src/pages/signup-complete.vue b/packages/client/src/pages/signup-complete.vue
index a97990c129..5459532310 100644
--- a/packages/client/src/pages/signup-complete.vue
+++ b/packages/client/src/pages/signup-complete.vue
@@ -32,7 +32,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.signup,
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
});
</script>
diff --git a/packages/client/src/pages/tag.vue b/packages/client/src/pages/tag.vue
index 5498c2999d..72775ed5c9 100644
--- a/packages/client/src/pages/tag.vue
+++ b/packages/client/src/pages/tag.vue
@@ -30,6 +30,6 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => ({
title: props.tag,
- icon: 'fas fa-hashtag',
+ icon: 'ti ti-hash',
})));
</script>
diff --git a/packages/client/src/pages/theme-editor.vue b/packages/client/src/pages/theme-editor.vue
index 7dfeee16ed..d8ff170ca2 100644
--- a/packages/client/src/pages/theme-editor.vue
+++ b/packages/client/src/pages/theme-editor.vue
@@ -42,7 +42,7 @@
</FormFolder>
<FormFolder :default-open="false" class="_formBlock">
- <template #icon><i class="fas fa-code"></i></template>
+ <template #icon><i class="ti ti-code"></i></template>
<template #label>{{ i18n.ts.editCode }}</template>
<div class="_formRoot">
@@ -210,12 +210,12 @@ watch($$(theme), apply, { deep: true });
const headerActions = $computed(() => [{
asFullButton: true,
- icon: 'fas fa-eye',
+ icon: 'ti ti-eye',
text: i18n.ts.preview,
handler: showPreview,
}, {
asFullButton: true,
- icon: 'fas fa-check',
+ icon: 'ti ti-check',
text: i18n.ts.saveAs,
handler: saveAs,
}]);
@@ -224,7 +224,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.themeEditor,
- icon: 'fas fa-palette',
+ icon: 'ti ti-palette',
});
</script>
diff --git a/packages/client/src/pages/timeline.tutorial.vue b/packages/client/src/pages/timeline.tutorial.vue
index 9683cc22a5..ae7b098b90 100644
--- a/packages/client/src/pages/timeline.tutorial.vue
+++ b/packages/client/src/pages/timeline.tutorial.vue
@@ -1,14 +1,14 @@
<template>
<div class="_card">
<div :class="$style.title" class="_title">
- <div :class="$style.titleText"><i class="fas fa-info-circle"></i> {{ i18n.ts._tutorial.title }}</div>
+ <div :class="$style.titleText"><i class="ti ti-info-circle"></i> {{ i18n.ts._tutorial.title }}</div>
<div :class="$style.step">
<button class="_button" :class="$style.stepArrow" :disabled="tutorial === 0" @click="tutorial--">
- <i class="fas fa-chevron-left"></i>
+ <i class="ti ti-chevron-left"></i>
</button>
<span :class="$style.stepNumber">{{ tutorial + 1 }} / {{ tutorialsNumber }}</span>
<button class="_button" :class="$style.stepArrow" :disabled="tutorial === tutorialsNumber - 1" @click="tutorial++">
- <i class="fas fa-chevron-right"></i>
+ <i class="ti ti-chevron-right"></i>
</button>
</div>
</div>
@@ -71,7 +71,7 @@
<MkButton :class="$style.footerItem" :primary="false" @click="tutorial = -1">{{ i18n.ts.noThankYou }}</MkButton>
</template>
<template v-else>
- <MkButton :class="$style.footerItem" primary @click="tutorial++"><i class="fas fa-check"></i> {{ i18n.ts.next }}</MkButton>
+ <MkButton :class="$style.footerItem" primary @click="tutorial++"><i class="ti ti-check"></i> {{ i18n.ts.next }}</MkButton>
</template>
</div>
</div>
diff --git a/packages/client/src/pages/timeline.vue b/packages/client/src/pages/timeline.vue
index 9d42997025..1c9e389367 100644
--- a/packages/client/src/pages/timeline.vue
+++ b/packages/client/src/pages/timeline.vue
@@ -114,35 +114,35 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => [{
key: 'home',
title: i18n.ts._timelines.home,
- icon: 'fas fa-home',
+ icon: 'ti ti-home',
iconOnly: true,
}, ...(isLocalTimelineAvailable ? [{
key: 'local',
title: i18n.ts._timelines.local,
- icon: 'fas fa-comments',
+ icon: 'ti ti-messages',
iconOnly: true,
}, {
key: 'social',
title: i18n.ts._timelines.social,
- icon: 'fas fa-share-alt',
+ icon: 'ti ti-share',
iconOnly: true,
}] : []), ...(isGlobalTimelineAvailable ? [{
key: 'global',
title: i18n.ts._timelines.global,
- icon: 'fas fa-globe',
+ icon: 'ti ti-world',
iconOnly: true,
}] : []), {
- icon: 'fas fa-list-ul',
+ icon: 'ti ti-list',
title: i18n.ts.lists,
iconOnly: true,
onClick: chooseList,
}, {
- icon: 'fas fa-satellite',
+ icon: 'ti ti-antenna',
title: i18n.ts.antennas,
iconOnly: true,
onClick: chooseAntenna,
}, {
- icon: 'fas fa-satellite-dish',
+ icon: 'ti ti-device-tv',
title: i18n.ts.channel,
iconOnly: true,
onClick: chooseChannel,
@@ -150,7 +150,7 @@ const headerTabs = $computed(() => [{
definePageMetadata(computed(() => ({
title: i18n.ts.timeline,
- icon: src === 'local' ? 'fas fa-comments' : src === 'social' ? 'fas fa-share-alt' : src === 'global' ? 'fas fa-globe' : 'fas fa-home',
+ icon: src === 'local' ? 'ti ti-messages' : src === 'social' ? 'ti ti-share' : src === 'global' ? 'ti ti-world' : 'ti ti-home',
})));
</script>
diff --git a/packages/client/src/pages/user-info.vue b/packages/client/src/pages/user-info.vue
index d376f11c58..adb8350516 100644
--- a/packages/client/src/pages/user-info.vue
+++ b/packages/client/src/pages/user-info.vue
@@ -58,7 +58,7 @@
<div class="_formBlock">
<MkKeyValue v-if="user.host" oneline style="margin: 1em 0;">
<template #key>{{ i18n.ts.instanceInfo }}</template>
- <template #value><MkA :to="`/instance-info/${user.host}`" class="_link">{{ user.host }} <i class="fas fa-angle-right"></i></MkA></template>
+ <template #value><MkA :to="`/instance-info/${user.host}`" class="_link">{{ user.host }} <i class="ti ti-chevron-right"></i></MkA></template>
</MkKeyValue>
<MkKeyValue v-else oneline style="margin: 1em 0;">
<template #key>{{ i18n.ts.instanceInfo }}</template>
@@ -74,7 +74,7 @@
</MkKeyValue>
</div>
- <FormButton v-if="user.host != null" class="_formBlock" @click="updateRemoteUser"><i class="fas fa-sync"></i> {{ i18n.ts.updateRemoteUser }}</FormButton>
+ <FormButton v-if="user.host != null" class="_formBlock" @click="updateRemoteUser"><i class="ti ti-refresh"></i> {{ i18n.ts.updateRemoteUser }}</FormButton>
<FormFolder class="_formBlock">
<template #label>Raw</template>
@@ -90,7 +90,7 @@
<FormSwitch v-model="suspended" class="_formBlock" @update:modelValue="toggleSuspend">{{ i18n.ts.suspend }}</FormSwitch>
{{ i18n.ts.reflectMayTakeTime }}
<div class="_formBlock">
- <FormButton v-if="user.host == null && iAmModerator" inline style="margin-right: 8px;" @click="resetPassword"><i class="fas fa-key"></i> {{ i18n.ts.resetPassword }}</FormButton>
+ <FormButton v-if="user.host == null && iAmModerator" inline style="margin-right: 8px;" @click="resetPassword"><i class="ti ti-key"></i> {{ i18n.ts.resetPassword }}</FormButton>
<FormButton v-if="$i.isAdmin" inline danger @click="deleteAccount">{{ i18n.ts.deleteAccount }}</FormButton>
</div>
<FormTextarea v-model="moderationNote" manual-save class="_formBlock">
@@ -364,24 +364,24 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => [{
key: 'overview',
title: i18n.ts.overview,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
}, iAmModerator ? {
key: 'moderation',
title: i18n.ts.moderation,
- icon: 'fas fa-shield-halved',
+ icon: 'ti ti-user-exclamation',
} : null, {
key: 'chart',
title: i18n.ts.charts,
- icon: 'fas fa-chart-simple',
+ icon: 'ti ti-chart-line',
}, {
key: 'raw',
title: 'Raw',
- icon: 'fas fa-code',
+ icon: 'ti ti-code',
}].filter(x => x != null));
definePageMetadata(computed(() => ({
title: user ? acct(user) : i18n.ts.userInfo,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
})));
</script>
diff --git a/packages/client/src/pages/user-list-timeline.vue b/packages/client/src/pages/user-list-timeline.vue
index 4a534e47ba..aa5c078ab4 100644
--- a/packages/client/src/pages/user-list-timeline.vue
+++ b/packages/client/src/pages/user-list-timeline.vue
@@ -69,7 +69,7 @@ const headerActions = $computed(() => list ? [{
text: i18n.ts.jumpToSpecifiedDate,
handler: timetravel,
}, {
- icon: 'fas fa-cog',
+ icon: 'ti ti-settings',
text: i18n.ts.settings,
handler: settings,
}] : []);
@@ -78,7 +78,7 @@ const headerTabs = $computed(() => []);
definePageMetadata(computed(() => list ? {
title: list.name,
- icon: 'fas fa-list-ul',
+ icon: 'ti ti-list',
} : null));
</script>
diff --git a/packages/client/src/pages/user/followers.vue b/packages/client/src/pages/user/followers.vue
index b61b48329a..17c2843381 100644
--- a/packages/client/src/pages/user/followers.vue
+++ b/packages/client/src/pages/user/followers.vue
@@ -49,7 +49,7 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => []);
definePageMetadata(computed(() => user ? {
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
title: user.name ? `${user.name} (@${user.username})` : `@${user.username}`,
subtitle: i18n.ts.followers,
userName: user,
diff --git a/packages/client/src/pages/user/following.vue b/packages/client/src/pages/user/following.vue
index a23977b425..03892ec03d 100644
--- a/packages/client/src/pages/user/following.vue
+++ b/packages/client/src/pages/user/following.vue
@@ -49,7 +49,7 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => []);
definePageMetadata(computed(() => user ? {
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
title: user.name ? `${user.name} (@${user.username})` : `@${user.username}`,
subtitle: i18n.ts.following,
userName: user,
diff --git a/packages/client/src/pages/user/home.vue b/packages/client/src/pages/user/home.vue
index 352db4616e..d3859a2612 100644
--- a/packages/client/src/pages/user/home.vue
+++ b/packages/client/src/pages/user/home.vue
@@ -3,8 +3,8 @@
<div ref="rootEl" v-size="{ max: [500] }" class="ftskorzw" :class="{ wide: !narrow }">
<div class="main">
<!-- TODO -->
- <!-- <div class="punished" v-if="user.isSuspended"><i class="fas fa-exclamation-triangle" style="margin-right: 8px;"></i> {{ i18n.ts.userSuspended }}</div> -->
- <!-- <div class="punished" v-if="user.isSilenced"><i class="fas fa-exclamation-triangle" style="margin-right: 8px;"></i> {{ i18n.ts.userSilenced }}</div> -->
+ <!-- <div class="punished" v-if="user.isSuspended"><i class="ti ti-alert-triangle" style="margin-right: 8px;"></i> {{ i18n.ts.userSuspended }}</div> -->
+ <!-- <div class="punished" v-if="user.isSilenced"><i class="ti ti-alert-triangle" style="margin-right: 8px;"></i> {{ i18n.ts.userSilenced }}</div> -->
<div class="profile">
<MkRemoteCaution v-if="user.host != null" :href="user.url" class="warn"/>
@@ -19,13 +19,13 @@
<span class="username"><MkAcct :user="user" :detail="true"/></span>
<span v-if="user.isAdmin" :title="i18n.ts.isAdmin" style="color: var(--badge);"><i class="fas fa-bookmark"></i></span>
<span v-if="!user.isAdmin && user.isModerator" :title="i18n.ts.isModerator" style="color: var(--badge);"><i class="far fa-bookmark"></i></span>
- <span v-if="user.isLocked" :title="i18n.ts.isLocked"><i class="fas fa-lock"></i></span>
+ <span v-if="user.isLocked" :title="i18n.ts.isLocked"><i class="ti ti-lock"></i></span>
<span v-if="user.isBot" :title="i18n.ts.isBot"><i class="fas fa-robot"></i></span>
</div>
</div>
<span v-if="$i && $i.id != user.id && user.isFollowed" class="followed">{{ i18n.ts.followsYou }}</span>
<div v-if="$i" class="actions">
- <button class="menu _button" @click="menu"><i class="fas fa-ellipsis-h"></i></button>
+ <button class="menu _button" @click="menu"><i class="ti ti-dots"></i></button>
<MkFollowButton v-if="$i.id != user.id" :user="user" :inline="true" :transparent="false" :full="true" class="koudoku"/>
</div>
</div>
@@ -36,7 +36,7 @@
<span class="username"><MkAcct :user="user" :detail="true"/></span>
<span v-if="user.isAdmin" :title="i18n.ts.isAdmin" style="color: var(--badge);"><i class="fas fa-bookmark"></i></span>
<span v-if="!user.isAdmin && user.isModerator" :title="i18n.ts.isModerator" style="color: var(--badge);"><i class="far fa-bookmark"></i></span>
- <span v-if="user.isLocked" :title="i18n.ts.isLocked"><i class="fas fa-lock"></i></span>
+ <span v-if="user.isLocked" :title="i18n.ts.isLocked"><i class="ti ti-lock"></i></span>
<span v-if="user.isBot" :title="i18n.ts.isBot"><i class="fas fa-robot"></i></span>
</div>
</div>
@@ -46,15 +46,15 @@
</div>
<div class="fields system">
<dl v-if="user.location" class="field">
- <dt class="name"><i class="fas fa-map-marker fa-fw"></i> {{ i18n.ts.location }}</dt>
+ <dt class="name"><i class="fas fa-map-marker ti-fw"></i> {{ i18n.ts.location }}</dt>
<dd class="value">{{ user.location }}</dd>
</dl>
<dl v-if="user.birthday" class="field">
- <dt class="name"><i class="fas fa-birthday-cake fa-fw"></i> {{ i18n.ts.birthday }}</dt>
+ <dt class="name"><i class="fas fa-birthday-cake ti-fw"></i> {{ i18n.ts.birthday }}</dt>
<dd class="value">{{ user.birthday.replace('-', '/').replace('-', '/') }} ({{ $t('yearsOld', { age }) }})</dd>
</dl>
<dl class="field">
- <dt class="name"><i class="fas fa-calendar-alt fa-fw"></i> {{ i18n.ts.registeredDate }}</dt>
+ <dt class="name"><i class="fas fa-calendar-alt ti-fw"></i> {{ i18n.ts.registeredDate }}</dt>
<dd class="value">{{ new Date(user.createdAt).toLocaleString() }} (<MkTime :time="user.createdAt"/>)</dd>
</dl>
</div>
diff --git a/packages/client/src/pages/user/index.activity.vue b/packages/client/src/pages/user/index.activity.vue
index 630a2cea7d..523072d2e6 100644
--- a/packages/client/src/pages/user/index.activity.vue
+++ b/packages/client/src/pages/user/index.activity.vue
@@ -1,9 +1,9 @@
<template>
<MkContainer>
- <template #header><i class="fas fa-chart-simple" style="margin-right: 0.5em;"></i>{{ $ts.activity }}</template>
+ <template #header><i class="ti ti-chart-line" style="margin-right: 0.5em;"></i>{{ $ts.activity }}</template>
<template #func>
<button class="_button" @click="showMenu">
- <i class="fas fa-ellipsis-h"></i>
+ <i class="ti ti-dots"></i>
</button>
</template>
diff --git a/packages/client/src/pages/user/index.vue b/packages/client/src/pages/user/index.vue
index 7e635f8b2e..48f2955283 100644
--- a/packages/client/src/pages/user/index.vue
+++ b/packages/client/src/pages/user/index.vue
@@ -69,15 +69,15 @@ const headerActions = $computed(() => []);
const headerTabs = $computed(() => user ? [{
key: 'home',
title: i18n.ts.overview,
- icon: 'fas fa-home',
+ icon: 'ti ti-home',
}, ...($i && ($i.id === user.id)) || user.publicReactions ? [{
key: 'reactions',
title: i18n.ts.reaction,
- icon: 'fas fa-laugh',
+ icon: 'ti ti-mood-happy',
}] : [], {
key: 'clips',
title: i18n.ts.clips,
- icon: 'fas fa-paperclip',
+ icon: 'ti ti-paperclip',
}, {
key: 'pages',
title: i18n.ts.pages,
@@ -85,11 +85,11 @@ const headerTabs = $computed(() => user ? [{
}, {
key: 'gallery',
title: i18n.ts.gallery,
- icon: 'fas fa-icons',
+ icon: 'ti ti-icons',
}] : null);
definePageMetadata(computed(() => user ? {
- icon: 'fas fa-user',
+ icon: 'ti ti-user',
title: user.name ? `${user.name} (@${user.username})` : `@${user.username}`,
subtitle: `@${getAcct(user)}`,
userName: user,
diff --git a/packages/client/src/pages/welcome.entrance.a.vue b/packages/client/src/pages/welcome.entrance.a.vue
index 827162a0c0..bfa54d39f2 100644
--- a/packages/client/src/pages/welcome.entrance.a.vue
+++ b/packages/client/src/pages/welcome.entrance.a.vue
@@ -15,7 +15,7 @@
</div>
<div class="main">
<img :src="$instance.iconUrl || $instance.faviconUrl || '/favicon.ico'" alt="" class="icon"/>
- <button class="_button _acrylic menu" @click="showMenu"><i class="fas fa-ellipsis-h"></i></button>
+ <button class="_button _acrylic menu" @click="showMenu"><i class="ti ti-dots"></i></button>
<div class="fg">
<h1>
<!-- 背景色によってはロゴが見えなくなるのでとりあえず無効に -->
@@ -107,19 +107,19 @@ function signup() {
function showMenu(ev) {
os.popupMenu([{
text: i18n.ts.instanceInfo,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
action: () => {
os.pageWindow('/about');
},
}, {
text: i18n.ts.aboutMisskey,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
action: () => {
os.pageWindow('/about-misskey');
},
}, null, {
text: i18n.ts.help,
- icon: 'fas fa-question-circle',
+ icon: 'ti ti-question-circle',
action: () => {
window.open('https://misskey-hub.net/help.md', '_blank');
},
diff --git a/packages/client/src/pages/welcome.entrance.b.vue b/packages/client/src/pages/welcome.entrance.b.vue
index 4bf117590a..53a6dd3469 100644
--- a/packages/client/src/pages/welcome.entrance.b.vue
+++ b/packages/client/src/pages/welcome.entrance.b.vue
@@ -104,19 +104,19 @@ export default defineComponent({
showMenu(ev) {
os.popupMenu([{
text: this.$t('aboutX', { x: instanceName }),
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
action: () => {
os.pageWindow('/about');
}
}, {
text: this.$ts.aboutMisskey,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
action: () => {
os.pageWindow('/about-misskey');
}
}, null, {
text: this.$ts.help,
- icon: 'fas fa-question-circle',
+ icon: 'ti ti-question-circle',
action: () => {
window.open(`https://misskey-hub.net/help.md`, '_blank');
}
diff --git a/packages/client/src/pages/welcome.entrance.c.vue b/packages/client/src/pages/welcome.entrance.c.vue
index a590834a4c..bae3f2ed9d 100644
--- a/packages/client/src/pages/welcome.entrance.c.vue
+++ b/packages/client/src/pages/welcome.entrance.c.vue
@@ -41,7 +41,7 @@
<template #n><b>{{ onlineUsersCount }}</b></template>
</I18n>
</div>
- <button class="_button _acrylic menu" @click="showMenu"><i class="fas fa-ellipsis-h"></i></button>
+ <button class="_button _acrylic menu" @click="showMenu"><i class="ti ti-dots"></i></button>
</div>
</div>
<nav class="nav">
@@ -124,19 +124,19 @@ export default defineComponent({
showMenu(ev) {
os.popupMenu([{
text: this.$t('aboutX', { x: instanceName }),
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
action: () => {
os.pageWindow('/about');
}
}, {
text: this.$ts.aboutMisskey,
- icon: 'fas fa-info-circle',
+ icon: 'ti ti-info-circle',
action: () => {
os.pageWindow('/about-misskey');
}
}, null, {
text: this.$ts.help,
- icon: 'fas fa-question-circle',
+ icon: 'ti ti-question-circle',
action: () => {
window.open(`https://misskey-hub.net/help.md`, '_blank');
}
diff --git a/packages/client/src/pages/welcome.setup.vue b/packages/client/src/pages/welcome.setup.vue
index d25651e2a3..2729d30d4b 100644
--- a/packages/client/src/pages/welcome.setup.vue
+++ b/packages/client/src/pages/welcome.setup.vue
@@ -10,7 +10,7 @@
</MkInput>
<MkInput v-model="password" type="password" data-cy-admin-password class="_formBlock">
<template #label>{{ $ts.password }}</template>
- <template #prefix><i class="fas fa-lock"></i></template>
+ <template #prefix><i class="ti ti-lock"></i></template>
</MkInput>
<div class="bottom _formBlock">
<MkButton gradate type="submit" :disabled="submitting" data-cy-admin-ok>
diff --git a/packages/client/src/pages/welcome.timeline.vue b/packages/client/src/pages/welcome.timeline.vue
index e19ebac3ed..f45a15448d 100644
--- a/packages/client/src/pages/welcome.timeline.vue
+++ b/packages/client/src/pages/welcome.timeline.vue
@@ -4,7 +4,7 @@
<div v-for="note in notes" class="note">
<div class="content _panel">
<div class="body">
- <MkA v-if="note.replyId" class="reply" :to="`/notes/${note.replyId}`"><i class="fas fa-reply"></i></MkA>
+ <MkA v-if="note.replyId" class="reply" :to="`/notes/${note.replyId}`"><i class="ti ti-arrow-back-up"></i></MkA>
<Mfm v-if="note.text" :text="note.text" :author="note.user" :i="$i" :custom-emojis="note.emojis"/>
<MkA v-if="note.renoteId" class="rp" :to="`/notes/${note.renoteId}`">RN: ...</MkA>
</div>