1
0
mirror of https://github.com/uetchy/namae.git synced 2025-08-20 01:48:12 +09:00

style: prettier

This commit is contained in:
2020-08-31 08:41:53 +09:00
committed by uetchy
parent 9278b7a2ee
commit f5f7b51fcb
73 changed files with 1014 additions and 5220 deletions

View File

@@ -1,39 +1,39 @@
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
interface App {
trackId: string
trackName: string
kind: string
version: string
price: string
trackViewUrl: string
trackId: string;
trackName: string;
kind: string;
version: string;
price: string;
trackViewUrl: string;
}
interface AppStoreResponse {
results: App[]
results: App[];
}
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query, country } = req.query
const { query, country } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
const term = encodeURIComponent(query)
const countryCode = country || 'us'
const limit = 10
const term = encodeURIComponent(query);
const countryCode = country || 'us';
const limit = 10;
try {
const response = await fetch(
`https://itunes.apple.com/search?media=software&entity=software,iPadSoftware,macSoftware&country=${countryCode}&limit=${limit}&term=${term}`,
'GET'
)
const body: AppStoreResponse = await response.json()
);
const body: AppStoreResponse = await response.json();
const apps = body.results.map((app) => ({
id: app.trackId,
name: app.trackName,
@@ -41,9 +41,9 @@ export default async function handler(
version: app.version,
price: app.price,
viewURL: app.trackViewUrl,
}))
send(res, { result: apps || [] })
}));
send(res, { result: apps || [] });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,29 +1,29 @@
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
if (/[^a-zA-Z0-9_-]/.test(query)) {
return sendError(res, new Error('Invalid characters'))
return sendError(res, new Error('Invalid characters'));
}
try {
const response = await fetch(
`https://packages.debian.org/buster/${encodeURIComponent(query)}`,
'GET'
)
const body = await response.text()
const availability = body.includes('No such package')
send(res, { availability })
);
const body = await response.text();
const availability = body.includes('No such package');
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,34 +1,34 @@
import dns from 'dns'
import { send, sendError } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import dns from 'dns';
import { send, sendError } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
function resolvePromise(hostname: string): Promise<string[]> {
return new Promise((resolve, reject) => {
dns.resolve4(hostname, function (err, addresses) {
if (err) return reject(err)
resolve(addresses)
})
})
if (err) return reject(err);
resolve(addresses);
});
});
}
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
try {
const response = await resolvePromise(query)
const availability = response && response.length > 0 ? false : true
send(res, { availability })
const response = await resolvePromise(query);
const availability = response && response.length > 0 ? false : true;
send(res, { availability });
} catch (err) {
if (err.code === 'ENODATA' || err.code === 'ENOTFOUND') {
return send(res, { availability: true })
return send(res, { availability: true });
}
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,22 +1,22 @@
import whois from 'whois-json'
import { send, sendError } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import whois from 'whois-json';
import { send, sendError } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
try {
const response = await whois(query, { follow: 3, verbose: true })
const availability = response[0].data.domainName ? false : true
send(res, { availability })
const response = await whois(query, { follow: 3, verbose: true });
const availability = response[0].data.domainName ? false : true;
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,30 +1,30 @@
import isURL from 'validator/lib/isURL'
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import isURL from 'validator/lib/isURL';
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('no query given'))
return sendError(res, new Error('no query given'));
}
if (!isURL(query)) {
return sendError(res, new Error('Invalid URL: ' + query))
return sendError(res, new Error('Invalid URL: ' + query));
}
try {
const response = await fetch(`https://${query}`)
const availability = response.status === 404
send(res, { availability })
const response = await fetch(`https://${query}`);
const availability = response.status === 404;
send(res, { availability });
} catch (err) {
console.log(err.code)
console.log(err.code);
if (err.code === 'ENOTFOUND') {
return send(res, { availability: true })
return send(res, { availability: true });
}
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,28 +1,28 @@
import { send, sendError } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import nodeFetch from 'node-fetch'
import { send, sendError } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
import nodeFetch from 'node-fetch';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
if (/[^a-zA-Z0-9_-]/.test(query)) {
return sendError(res, new Error('Invalid characters'))
return sendError(res, new Error('Invalid characters'));
}
try {
const response = await nodeFetch(`https://gitlab.com/${query}`, {
redirect: 'manual',
})
const availability = response.status === 302
send(res, { availability })
});
const availability = response.status === 302;
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,18 +1,18 @@
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
if (/[^a-zA-Z0-9_-]/.test(query)) {
return sendError(res, new Error('Invalid characters'))
return sendError(res, new Error('Invalid characters'));
}
try {
@@ -21,10 +21,10 @@ export default async function handler(
query
)}`,
'GET'
)
const availability = response.status !== 200
send(res, { availability })
);
const availability = response.status !== 200;
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,24 +1,24 @@
import npmName from 'npm-name'
import { send, sendError } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import npmName from 'npm-name';
import { send, sendError } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
try {
const availability = await npmName(`@${query}`)
send(res, { availability })
const availability = await npmName(`@${query}`);
send(res, { availability });
} catch (err) {
if (err.code === 'ENOTFOUND') {
return send(res, { availability: true })
return send(res, { availability: true });
}
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,21 +1,21 @@
import npmName from 'npm-name'
import { send, sendError } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import npmName from 'npm-name';
import { send, sendError } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
try {
const availability = await npmName(query)
send(res, { availability })
const availability = await npmName(query);
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,32 +1,32 @@
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
const APPLICATION_ID = process.env.NTA_APPLICATION_ID
const APPLICATION_ID = process.env.NTA_APPLICATION_ID;
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
const encodedQuery = encodeURIComponent(
query.replace(/[A-Za-z0-9]/g, (str) =>
String.fromCharCode(str.charCodeAt(0) + 0xfee0)
)
)
);
try {
const response = await fetch(
`https://api.houjin-bangou.nta.go.jp/4/name?id=${APPLICATION_ID}&name=${encodedQuery}&mode=1&target=1&type=02`,
'GET'
)
const body: string[] = (await response.text()).split('\n').slice(0, -1)
);
const body: string[] = (await response.text()).split('\n').slice(0, -1);
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
const header = body.shift()!.split(',')
const header = body.shift()!.split(',');
const result = body.map((csv) => {
const entry = csv.split(',').map((item) =>
item
@@ -36,7 +36,7 @@ export default async function handler(
)
// eslint-disable-next-line no-irregular-whitespace
.replace(/ /g, ' ')
)
);
return {
index: entry[0],
@@ -73,8 +73,8 @@ export default async function handler(
excluded: entry[29],
processSection: entry[2],
modifiedSection: entry[3],
}
})
};
});
send(res, {
meta: {
@@ -91,8 +91,8 @@ export default async function handler(
englishName: entry.englishName,
}))
.slice(10) || [],
})
});
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,27 +1,27 @@
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
if (/[^a-zA-Z0-9_-]/.test(query)) {
return sendError(res, new Error('Invalid characters'))
return sendError(res, new Error('Invalid characters'));
}
try {
const response = await fetch(
`https://${encodeURIComponent(query)}.slack.com`
)
const availability = response.status !== 200
send(res, { availability })
);
const availability = response.status !== 200;
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,31 +1,31 @@
import { send, sendError, fetch } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node'
import { send, sendError, fetch } from '../../../util/http';
import { NowRequest, NowResponse } from '@vercel/node';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
if (/[^a-zA-Z0-9_-]/.test(query)) {
return sendError(res, new Error('Invalid characters'))
return sendError(res, new Error('Invalid characters'));
}
try {
const response = await fetch(
`https://spectrum.chat/${encodeURIComponent(query)}`,
'GET'
)
const body = await response.text()
);
const body = await response.text();
const availability = body.includes(
'You may be trying to view something that is deleted'
)
send(res, { availability })
);
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

View File

@@ -1,28 +1,28 @@
import { NowRequest, NowResponse } from '@vercel/node'
import { fetch, send, sendError } from '../../../util/http'
import { NowRequest, NowResponse } from '@vercel/node';
import { fetch, send, sendError } from '../../../util/http';
export default async function handler(
req: NowRequest,
res: NowResponse
): Promise<void> {
const { query } = req.query
const { query } = req.query;
if (!query || typeof query !== 'string') {
return sendError(res, new Error('No query given'))
return sendError(res, new Error('No query given'));
}
if (/[^a-zA-Z0-9_]/.test(query)) {
return sendError(res, new Error('Invalid characters'))
return sendError(res, new Error('Invalid characters'));
}
try {
const response = await fetch(
`https://api.twitter.com/i/users/username_available.json?username=${query}`,
'GET'
).then((res) => res.json())
const availability = response.valid
send(res, { availability })
).then((res) => res.json());
const availability = response.valid;
send(res, { availability });
} catch (err) {
sendError(res, err)
sendError(res, err);
}
}

File diff suppressed because it is too large Load Diff