From b1ac2a6949382eb87f74653ae9a71bbc7b7a1f8f Mon Sep 17 00:00:00 2001 From: AkiraFukushima Date: Sat, 3 Jun 2023 16:46:40 +0900 Subject: [PATCH 1/4] Add vue-tsc --- package.json | 3 +- yarn.lock | 86 +++++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 84 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a998d8266a..45dbdf5f16 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "pack": "yarn run pack:main && yarn run pack:renderer", "pack:main": "webpack --node-env=production --mode production --progress --config .electron-vue/webpack.main.config.js", "pack:renderer": "webpack --node-env=production --mode production --progress --config .electron-vue/webpack.renderer.config.js", - "typecheck": "tsc -p . --noEmit", + "typecheck": "tsc -p . --noEmit && vue-tsc --noEmit", "spec": "NODE_ENV=test jest -u --maxWorkers=3", "postinstall": "electron-builder install-app-deps", "thirdparty": "license-checker --production --json > thirdparty.json && node scripts/thirdparty.js" @@ -196,6 +196,7 @@ "vue-html-loader": "^1.2.4", "vue-loader": "^17.2.2", "vue-style-loader": "^4.1.3", + "vue-tsc": "^1.6.5", "webpack": "^5.82.1", "webpack-cli": "^5.1.1", "webpack-dev-server": "^4.15.0", diff --git a/yarn.lock b/yarn.lock index 76c3457d6e..0c9a29cac9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2061,6 +2061,50 @@ "@typescript-eslint/types" "5.59.8" eslint-visitor-keys "^3.3.0" +"@volar/language-core@1.4.1": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-1.4.1.tgz#66b5758252e35c4e5e71197ca7fa0344d306442c" + integrity sha512-EIY+Swv+TjsWpxOxujjMf1ZXqOjg9MT2VMXZ+1dKva0wD8W0L6EtptFFcCJdBbcKmGMFkr57Qzz9VNMWhs3jXQ== + dependencies: + "@volar/source-map" "1.4.1" + +"@volar/source-map@1.4.1": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-1.4.1.tgz#e3b561775c742508e5e1f28609a4787c98056715" + integrity sha512-bZ46ad72dsbzuOWPUtJjBXkzSQzzSejuR3CT81+GvTEI2E994D8JPXzM3tl98zyCNnjgs4OkRyliImL1dvJ5BA== + dependencies: + muggle-string "^0.2.2" + +"@volar/typescript@1.4.1-patch.2": + version "1.4.1-patch.2" + resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-1.4.1-patch.2.tgz#89f4bd199ca81a832d86d1449b01f49f2b72137c" + integrity sha512-lPFYaGt8OdMEzNGJJChF40uYqMO4Z/7Q9fHPQC/NRVtht43KotSXLrkPandVVMf9aPbiJ059eAT+fwHGX16k4w== + dependencies: + "@volar/language-core" "1.4.1" + +"@volar/vue-language-core@1.6.5": + version "1.6.5" + resolved "https://registry.yarnpkg.com/@volar/vue-language-core/-/vue-language-core-1.6.5.tgz#db42520f1a29737c7e40fbb3e6aead8def85ba75" + integrity sha512-IF2b6hW4QAxfsLd5mePmLgtkXzNi+YnH6ltCd80gb7+cbdpFMjM1I+w+nSg2kfBTyfu+W8useCZvW89kPTBpzg== + dependencies: + "@volar/language-core" "1.4.1" + "@volar/source-map" "1.4.1" + "@vue/compiler-dom" "^3.3.0" + "@vue/compiler-sfc" "^3.3.0" + "@vue/reactivity" "^3.3.0" + "@vue/shared" "^3.3.0" + minimatch "^9.0.0" + muggle-string "^0.2.2" + vue-template-compiler "^2.7.14" + +"@volar/vue-typescript@1.6.5": + version "1.6.5" + resolved "https://registry.yarnpkg.com/@volar/vue-typescript/-/vue-typescript-1.6.5.tgz#6ca9bfefa5dc64ff97fcdbc74249e5e7da44e533" + integrity sha512-er9rVClS4PHztMUmtPMDTl+7c7JyrxweKSAEe/o/Noeq2bQx6v3/jZHVHBe8ZNUti5ubJL/+Tg8L3bzmlalV8A== + dependencies: + "@volar/typescript" "1.4.1-patch.2" + "@volar/vue-language-core" "1.6.5" + "@vue/compiler-core@3.3.4": version "3.3.4" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.3.4.tgz#7fbf591c1c19e1acd28ffd284526e98b4f581128" @@ -2071,7 +2115,7 @@ estree-walker "^2.0.2" source-map-js "^1.0.2" -"@vue/compiler-dom@3.3.4": +"@vue/compiler-dom@3.3.4", "@vue/compiler-dom@^3.3.0": version "3.3.4" resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz#f56e09b5f4d7dc350f981784de9713d823341151" integrity sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w== @@ -2079,7 +2123,7 @@ "@vue/compiler-core" "3.3.4" "@vue/shared" "3.3.4" -"@vue/compiler-sfc@3.3.4", "@vue/compiler-sfc@^3.3.4": +"@vue/compiler-sfc@3.3.4", "@vue/compiler-sfc@^3.3.0", "@vue/compiler-sfc@^3.3.4": version "3.3.4" resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz#b19d942c71938893535b46226d602720593001df" integrity sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ== @@ -2136,7 +2180,7 @@ estree-walker "^2.0.2" magic-string "^0.30.0" -"@vue/reactivity@3.3.4": +"@vue/reactivity@3.3.4", "@vue/reactivity@^3.3.0": version "3.3.4" resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.3.4.tgz#a27a29c6cd17faba5a0e99fbb86ee951653e2253" integrity sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ== @@ -2168,7 +2212,7 @@ "@vue/compiler-ssr" "3.3.4" "@vue/shared" "3.3.4" -"@vue/shared@3.3.4": +"@vue/shared@3.3.4", "@vue/shared@^3.3.0": version "3.3.4" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.3.4.tgz#06e83c5027f464eef861c329be81454bc8b70780" integrity sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ== @@ -4179,6 +4223,11 @@ dayjs@^1.11.3, dayjs@^1.11.7: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ== +de-indent@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== + debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" @@ -8088,6 +8137,13 @@ minimatch@^5.0.1: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.0: + version "9.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.1.tgz#8a555f541cf976c622daf078bb28f29fb927c253" + integrity sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w== + dependencies: + brace-expansion "^2.0.1" + minimatch@~3.0.2: version "3.0.8" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1" @@ -8244,6 +8300,11 @@ ms@2.1.3, ms@^2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +muggle-string@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/muggle-string/-/muggle-string-0.2.2.tgz#786aa53fea1652c61c6a59e1f839292b262bc72a" + integrity sha512-YVE1mIJ4VpUMqZObFndk9CJu6DBJR/GB13p3tXuNbwD4XExaI5EOuRl6BHeIDxIqXZVxSfAC+y6U1Z/IxCfKUg== + multicast-dns@^7.2.5: version "7.2.5" resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced" @@ -11356,6 +11417,23 @@ vue-style-loader@^4.1.3: hash-sum "^1.0.2" loader-utils "^1.0.2" +vue-template-compiler@^2.7.14: + version "2.7.14" + resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz#4545b7dfb88090744c1577ae5ac3f964e61634b1" + integrity sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ== + dependencies: + de-indent "^1.0.2" + he "^1.2.0" + +vue-tsc@^1.6.5: + version "1.6.5" + resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-1.6.5.tgz#cd18804b12087c300b6c9ee2a1da41a63f11103e" + integrity sha512-Wtw3J7CC+JM2OR56huRd5iKlvFWpvDiU+fO1+rqyu4V2nMTotShz4zbOZpW5g9fUOcjnyZYfBo5q5q+D/q27JA== + dependencies: + "@volar/vue-language-core" "1.6.5" + "@volar/vue-typescript" "1.6.5" + semver "^7.3.8" + vue-virtual-scroller@2.0.0-beta.8: version "2.0.0-beta.8" resolved "https://registry.yarnpkg.com/vue-virtual-scroller/-/vue-virtual-scroller-2.0.0-beta.8.tgz#eeceda57e4faa5ba1763994c873923e2a956898b" From 9fe5427dc211b7e1acdfed0e8946aa53953d1138 Mon Sep 17 00:00:00 2001 From: AkiraFukushima Date: Sat, 3 Jun 2023 17:33:26 +0900 Subject: [PATCH 2/4] Use i18next-vue instead of vue3-i18next --- package.json | 2 +- src/renderer/App.vue | 6 ++-- src/renderer/components/Login/Authorize.vue | 6 ++-- src/renderer/components/Login/LoginForm.vue | 18 +++++------ .../components/Preferences/Account.vue | 8 ++--- .../components/Preferences/General.vue | 10 +++--- .../components/Preferences/Language.vue | 8 ++--- .../components/Preferences/Network.vue | 6 ++-- .../components/Preferences/Notification.vue | 6 ++-- src/renderer/components/Settings/Filters.vue | 10 +++--- .../components/Settings/Filters/Edit.vue | 6 ++-- .../components/Settings/Filters/New.vue | 6 ++-- .../components/Settings/Filters/form.vue | 18 +++++------ src/renderer/components/TimelineSpace.vue | 8 ++--- .../components/TimelineSpace/Compose.vue | 28 ++++++++-------- .../TimelineSpace/Contents/Bookmarks.vue | 8 ++--- .../TimelineSpace/Contents/DirectMessages.vue | 6 ++-- .../TimelineSpace/Contents/Favourites.vue | 8 ++--- .../TimelineSpace/Contents/FollowRequests.vue | 8 ++--- .../TimelineSpace/Contents/Hashtag/Tag.vue | 8 ++--- .../TimelineSpace/Contents/Home.vue | 6 ++-- .../TimelineSpace/Contents/Lists/Edit.vue | 8 ++--- .../TimelineSpace/Contents/Lists/Index.vue | 14 ++++---- .../TimelineSpace/Contents/Lists/Show.vue | 8 ++--- .../TimelineSpace/Contents/Local.vue | 6 ++-- .../TimelineSpace/Contents/Notifications.vue | 6 ++-- .../TimelineSpace/Contents/Public.vue | 6 ++-- .../TimelineSpace/Contents/Search.vue | 16 +++++----- .../components/TimelineSpace/HeaderMenu.vue | 30 ++++++++--------- .../TimelineSpace/Modals/AddListMember.vue | 6 ++-- .../TimelineSpace/Modals/ListMembership.vue | 8 ++--- .../components/molecules/Toot/Poll.vue | 8 ++--- src/renderer/components/organisms/Toot.vue | 32 ++++++++----------- src/renderer/main.ts | 6 ++-- yarn.lock | 10 +++--- 35 files changed, 174 insertions(+), 180 deletions(-) diff --git a/package.json b/package.json index 45dbdf5f16..d2bc08fa36 100644 --- a/package.json +++ b/package.json @@ -91,6 +91,7 @@ "element-plus": "^2.3.4", "emoji-mart-vue-fast": "^12.0.4", "i18next": "^22.4.15", + "i18next-vue": "^2.1.1", "megalodon": "6.0.3", "minimist": "^1.2.8", "mitt": "^3.0.0", @@ -107,7 +108,6 @@ "vue-resize": "^2.0.0-alpha.1", "vue-router": "^4.2.2", "vue-virtual-scroller": "2.0.0-beta.8", - "vue3-i18next": "^0.2.2", "vuex": "^4.1.0", "vuex-router-sync": "^6.0.0-rc.1" }, diff --git a/src/renderer/App.vue b/src/renderer/App.vue index e5b11c1149..03c1723941 100644 --- a/src/renderer/App.vue +++ b/src/renderer/App.vue @@ -6,7 +6,7 @@ diff --git a/src/renderer/components/TimelineSpace/SideMenu.vue b/src/renderer/components/TimelineSpace/SideMenu.vue index 9ed3e59a1a..4cabdcbada 100644 --- a/src/renderer/components/TimelineSpace/SideMenu.vue +++ b/src/renderer/components/TimelineSpace/SideMenu.vue @@ -256,6 +256,7 @@ import generator, { Entity, MegalodonInterface } from 'megalodon' import { LocalAccount } from '~/src/types/localAccount' import { LocalServer } from '~/src/types/localServer' import { LocalTag } from '~/src/types/localTag' +import { useTranslation } from 'i18next-vue' export default defineComponent({ name: 'side-menu', @@ -264,6 +265,7 @@ export default defineComponent({ const store = useStore() const route = useRoute() const router = useRouter() + const { t } = useTranslation() const win = (window as any) as MyWindow @@ -402,7 +404,8 @@ export default defineComponent({ handleProfile, doCollapse, releaseCollapse, - changeGlobalHeader + changeGlobalHeader, + $t: t } } }) diff --git a/src/renderer/components/molecules/Toot/Poll.vue b/src/renderer/components/molecules/Toot/Poll.vue index 7a434ba427..1dfe274630 100644 --- a/src/renderer/components/molecules/Toot/Poll.vue +++ b/src/renderer/components/molecules/Toot/Poll.vue @@ -94,7 +94,8 @@ export default defineComponent({ percentage, vote, progress, - refresh + refresh, + $t: t } } }) diff --git a/src/renderer/components/molecules/User.vue b/src/renderer/components/molecules/User.vue index 91f65b0e92..9df5ce0a82 100644 --- a/src/renderer/components/molecules/User.vue +++ b/src/renderer/components/molecules/User.vue @@ -54,6 +54,7 @@ import { Entity } from 'megalodon' import FailoverImg from '~/src/renderer/components/atoms/FailoverImg.vue' import emojify from '~/src/renderer/utils/emojify' import { useRouter } from 'vue-router' +import { useTranslation } from 'i18next-vue' export default defineComponent({ name: 'user', @@ -80,6 +81,7 @@ export default defineComponent({ }, setup(_props, ctx) { const router = useRouter() + const { t } = useTranslation() const username = (account: Entity.Account) => { if (account.display_name !== '') { return emojify(account.display_name, account.emojis) @@ -113,7 +115,8 @@ export default defineComponent({ unfollowAccount, followAccount, acceptRequest, - rejectRequest + rejectRequest, + $t: t } } }) diff --git a/src/renderer/components/organisms/Notification/Follow.vue b/src/renderer/components/organisms/Notification/Follow.vue index 676b67b9cc..4d0d15881d 100644 --- a/src/renderer/components/organisms/Notification/Follow.vue +++ b/src/renderer/components/organisms/Notification/Follow.vue @@ -34,6 +34,7 @@ import { useStore } from '@/store' import FailoverImg from '@/components/atoms/FailoverImg.vue' import { usernameWithStyle } from '@/utils/username' import { useRouter } from 'vue-router' +import { useTranslation } from 'i18next-vue' export default defineComponent({ name: 'follow', @@ -55,6 +56,7 @@ export default defineComponent({ const { focused } = toRefs(props) const store = useStore() const router = useRouter() + const { t } = useTranslation() const notificationRef = ref(null) const displayNameStyle = computed(() => store.state.App.displayNameStyle) @@ -79,7 +81,8 @@ export default defineComponent({ return { notificationRef, username, - openUser + openUser, + $t: t } } }) diff --git a/src/renderer/components/organisms/Notification/FollowRequest.vue b/src/renderer/components/organisms/Notification/FollowRequest.vue index 45d2197e31..65f144beed 100644 --- a/src/renderer/components/organisms/Notification/FollowRequest.vue +++ b/src/renderer/components/organisms/Notification/FollowRequest.vue @@ -34,6 +34,7 @@ import { useStore } from '@/store' import FailoverImg from '@/components/atoms/FailoverImg.vue' import { usernameWithStyle } from '@/utils/username' import { useRouter } from 'vue-router' +import { useTranslation } from 'i18next-vue' export default defineComponent({ name: 'follow-request', @@ -55,6 +56,7 @@ export default defineComponent({ const { focused } = toRefs(props) const store = useStore() const router = useRouter() + const { t } = useTranslation() const notificationRef = ref(null) const displayNameStyle = computed(() => store.state.App.displayNameStyle) @@ -79,7 +81,8 @@ export default defineComponent({ return { notificationRef, username, - openUser + openUser, + $t: t } } }) diff --git a/src/renderer/components/organisms/Notification/Status.vue b/src/renderer/components/organisms/Notification/Status.vue index 28f83ee182..528d9ab8b5 100644 --- a/src/renderer/components/organisms/Notification/Status.vue +++ b/src/renderer/components/organisms/Notification/Status.vue @@ -47,6 +47,7 @@ import { usernameWithStyle } from '@/utils/username' import { LocalAccount } from '~/src/types/localAccount' import { LocalServer } from '~/src/types/localServer' import { useRouter } from 'vue-router' +import { useTranslation } from 'i18next-vue' export default defineComponent({ name: 'mention', @@ -76,6 +77,7 @@ export default defineComponent({ setup(_props, ctx) { const store = useStore() const router = useRouter() + const { t } = useTranslation() const displayNameStyle = computed(() => store.state.App.displayNameStyle) const updateToot = (message: Entity.Status) => { @@ -93,7 +95,8 @@ export default defineComponent({ updateToot, deleteToot, username, - openUser + openUser, + $t: t } } }) diff --git a/src/renderer/components/organisms/Notification/StatusReaction.vue b/src/renderer/components/organisms/Notification/StatusReaction.vue index 7264f24522..47a20cfcf8 100644 --- a/src/renderer/components/organisms/Notification/StatusReaction.vue +++ b/src/renderer/components/organisms/Notification/StatusReaction.vue @@ -107,6 +107,7 @@ import Filtered from '@/utils/filter' import { parseDatetime } from '@/utils/datetime' import { usernameWithStyle } from '@/utils/username' import { MyWindow } from '~/src/types/global' +import { useTranslation } from 'i18next-vue' export default defineComponent({ name: 'status-reaction', @@ -137,6 +138,7 @@ export default defineComponent({ const store = useStore() const router = useRouter() const route = useRoute() + const { t } = useTranslation() const win = (window as any) as MyWindow const { focused, message, filters, reactionType } = toRefs(props) @@ -262,7 +264,8 @@ export default defineComponent({ spoilerText, reactionMessage, reactionClass, - reactionIcon + reactionIcon, + $t: t } } }) diff --git a/src/renderer/components/organisms/StatusLoading.vue b/src/renderer/components/organisms/StatusLoading.vue index fe3411ae3c..d1ef685d1e 100644 --- a/src/renderer/components/organisms/StatusLoading.vue +++ b/src/renderer/components/organisms/StatusLoading.vue @@ -7,6 +7,7 @@ diff --git a/src/renderer/components/organisms/Toot.vue b/src/renderer/components/organisms/Toot.vue index 41494a2e61..f5b8ec803a 100644 --- a/src/renderer/components/organisms/Toot.vue +++ b/src/renderer/components/organisms/Toot.vue @@ -456,7 +456,7 @@ export default defineComponent({ ElMessageBox.confirm(t('cards.toot.open_account.text', { account: parsedAccount.acct }), t('cards.toot.open_account.title'), { confirmButtonText: t('cards.toot.open_account.ok'), cancelButtonText: t('cards.toot.open_account.cancel'), - type: 'Warning' + type: 'warning' }).then(() => { openLink(e) }) @@ -742,7 +742,8 @@ export default defineComponent({ toggleCW, emojiPickerOpened, emojiPickerShow, - emojiPickerHide + emojiPickerHide, + $t: t } } }) From a56890e68c89551b949787945bd1af3ed7c17d70 Mon Sep 17 00:00:00 2001 From: AkiraFukushima Date: Sat, 3 Jun 2023 21:09:37 +0900 Subject: [PATCH 4/4] Fix types --- src/renderer/components/Login/LoginForm.vue | 6 ++++- src/renderer/components/Settings/Filters.vue | 19 +++++++++++--- .../components/Settings/Filters/Edit.vue | 25 +++++++++++++++---- .../components/Settings/Filters/New.vue | 25 ++++++++++++++++--- .../components/TimelineSpace/Compose.vue | 9 ++++--- .../components/TimelineSpace/Contents.vue | 2 +- .../TimelineSpace/Contents/Bookmarks.vue | 8 +++--- .../TimelineSpace/Contents/Favourites.vue | 8 +++--- .../TimelineSpace/Contents/FollowRequests.vue | 18 ++++++++++--- .../TimelineSpace/Contents/Hashtag/List.vue | 2 +- .../TimelineSpace/Contents/Search.vue | 9 ++++--- .../TimelineSpace/Contents/Search/Tag.vue | 6 ++--- .../TimelineSpace/Contents/Search/Toots.vue | 18 ++++++++++--- .../components/TimelineSpace/ReceiveDrop.vue | 2 +- .../organisms/Notification/StatusReaction.vue | 4 +-- src/renderer/components/organisms/Toot.vue | 4 +-- 16 files changed, 120 insertions(+), 45 deletions(-) diff --git a/src/renderer/components/Login/LoginForm.vue b/src/renderer/components/Login/LoginForm.vue index 38c79716e5..aef7ff535e 100644 --- a/src/renderer/components/Login/LoginForm.vue +++ b/src/renderer/components/Login/LoginForm.vue @@ -116,7 +116,11 @@ export default defineComponent({ searching.value = true try { const cleanDomain = form.domainName.trim() - sns.value = await detector(`https://${cleanDomain}`) + const res = await detector(`https://${cleanDomain}`) + if (res === 'friendica') { + throw new Error('Friendica is not supported') + } + sns.value = res domain.value = cleanDomain ElMessage({ message: t('message.domain_confirmed', { diff --git a/src/renderer/components/Settings/Filters.vue b/src/renderer/components/Settings/Filters.vue index 0c5af43233..ee8054fe1d 100644 --- a/src/renderer/components/Settings/Filters.vue +++ b/src/renderer/components/Settings/Filters.vue @@ -44,12 +44,15 @@