summaryrefslogtreecommitdiff
path: root/packages/frontend/src/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/frontend/src/scripts')
-rw-r--r--packages/frontend/src/scripts/lookup.ts82
1 files changed, 43 insertions, 39 deletions
diff --git a/packages/frontend/src/scripts/lookup.ts b/packages/frontend/src/scripts/lookup.ts
index 8ee2a4b99c..02f589c7ca 100644
--- a/packages/frontend/src/scripts/lookup.ts
+++ b/packages/frontend/src/scripts/lookup.ts
@@ -29,45 +29,7 @@ export async function lookup(router?: Router) {
}
if (query.startsWith('https://')) {
- const promise = misskeyApi('ap/show', {
- uri: query,
- });
-
- os.promiseDialog(promise, null, (err) => {
- let title = i18n.ts.somethingHappened;
- let text = err.message + '\n' + err.id;
-
- switch (err.id) {
- case '974b799e-1a29-4889-b706-18d4dd93e266':
- title = i18n.ts._remoteLookupErrors._federationNotAllowed.title;
- text = i18n.ts._remoteLookupErrors._federationNotAllowed.description;
- break;
- case '1a5eab56-e47b-48c2-8d5e-217b897d70db':
- title = i18n.ts._remoteLookupErrors._uriInvalid.title;
- text = i18n.ts._remoteLookupErrors._uriInvalid.description;
- break;
- case '81b539cf-4f57-4b29-bc98-032c33c0792e':
- title = i18n.ts._remoteLookupErrors._requestFailed.title;
- text = i18n.ts._remoteLookupErrors._requestFailed.description;
- break;
- case '70193c39-54f3-4813-82f0-70a680f7495b':
- title = i18n.ts._remoteLookupErrors._responseInvalid.title;
- text = i18n.ts._remoteLookupErrors._responseInvalid.description;
- break;
- case 'dc94d745-1262-4e63-a17d-fecaa57efc82':
- title = i18n.ts._remoteLookupErrors._noSuchObject.title;
- text = i18n.ts._remoteLookupErrors._noSuchObject.description;
- break;
- }
-
- os.alert({
- type: 'error',
- title,
- text,
- });
- }, i18n.ts.fetchingAsApObject);
-
- const res = await promise;
+ const res = await apLookup(query);
if (res.type === 'User') {
_router.push(`/@${res.object.username}@${res.object.host}`);
@@ -78,3 +40,45 @@ export async function lookup(router?: Router) {
return;
}
}
+
+export async function apLookup(query: string) {
+ const promise = misskeyApi('ap/show', {
+ uri: query,
+ });
+
+ os.promiseDialog(promise, null, (err) => {
+ let title = i18n.ts.somethingHappened;
+ let text = err.message + '\n' + err.id;
+
+ switch (err.id) {
+ case '974b799e-1a29-4889-b706-18d4dd93e266':
+ title = i18n.ts._remoteLookupErrors._federationNotAllowed.title;
+ text = i18n.ts._remoteLookupErrors._federationNotAllowed.description;
+ break;
+ case '1a5eab56-e47b-48c2-8d5e-217b897d70db':
+ title = i18n.ts._remoteLookupErrors._uriInvalid.title;
+ text = i18n.ts._remoteLookupErrors._uriInvalid.description;
+ break;
+ case '81b539cf-4f57-4b29-bc98-032c33c0792e':
+ title = i18n.ts._remoteLookupErrors._requestFailed.title;
+ text = i18n.ts._remoteLookupErrors._requestFailed.description;
+ break;
+ case '70193c39-54f3-4813-82f0-70a680f7495b':
+ title = i18n.ts._remoteLookupErrors._responseInvalid.title;
+ text = i18n.ts._remoteLookupErrors._responseInvalid.description;
+ break;
+ case 'dc94d745-1262-4e63-a17d-fecaa57efc82':
+ title = i18n.ts._remoteLookupErrors._noSuchObject.title;
+ text = i18n.ts._remoteLookupErrors._noSuchObject.description;
+ break;
+ }
+
+ os.alert({
+ type: 'error',
+ title,
+ text,
+ });
+ }, i18n.ts.fetchingAsApObject);
+
+ return await promise;
+}