diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | .prettierrc | 4 | ||||
| -rw-r--r-- | .vscode/launch.json | 24 | ||||
| -rw-r--r-- | .vscode/settings.json | 3 | ||||
| -rw-r--r-- | package.json | 20 | ||||
| -rw-r--r-- | src/api/e621/index.ts | 50 | ||||
| -rw-r--r-- | src/api/mastodon/index.ts | 58 | ||||
| -rw-r--r-- | src/api/misskey/index.ts | 26 | ||||
| -rw-r--r-- | src/config.ts | 34 | ||||
| -rw-r--r-- | src/index.ts | 36 | ||||
| -rw-r--r-- | tsconfig.json | 8 | ||||
| -rw-r--r-- | yarn.lock | 427 |
12 files changed, 691 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3c3629e --- /dev/null +++ b/.gitignore | |||
| @@ -0,0 +1 @@ | |||
| node_modules | |||
diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..e8980d1 --- /dev/null +++ b/.prettierrc | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | { | ||
| 2 | "printWidth": 120, | ||
| 3 | "tabWidth": 4 | ||
| 4 | } | ||
diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..fe4c94f --- /dev/null +++ b/.vscode/launch.json | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | { | ||
| 2 | "version": "0.2.0", | ||
| 3 | "configurations": [ | ||
| 4 | { | ||
| 5 | "name": "ts-node", | ||
| 6 | "type": "node", | ||
| 7 | "request": "launch", | ||
| 8 | "args": [ | ||
| 9 | "src/index.ts" | ||
| 10 | ], | ||
| 11 | "runtimeArgs": [ | ||
| 12 | "-r", | ||
| 13 | "ts-node/register" | ||
| 14 | ], | ||
| 15 | "env": { | ||
| 16 | "MASTODON_TOKEN": "-mPmNM7D-BOmWt2_VVUODTCSKk9sLG7BY8zOK-FFRMc", | ||
| 17 | "MISSKEY_TOKEN": "HGwt6ZGuZ7v6ztV3C0RMCwDYFuhhN6sg" | ||
| 18 | }, | ||
| 19 | "cwd": "${workspaceRoot}", | ||
| 20 | "protocol": "inspector", | ||
| 21 | "internalConsoleOptions": "openOnSessionStart" | ||
| 22 | } | ||
| 23 | ] | ||
| 24 | } | ||
diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..25fa621 --- /dev/null +++ b/.vscode/settings.json | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | { | ||
| 2 | "typescript.tsdk": "node_modules/typescript/lib" | ||
| 3 | } | ||
diff --git a/package.json b/package.json new file mode 100644 index 0000000..01dabf4 --- /dev/null +++ b/package.json | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | { | ||
| 2 | "name": "feralbot", | ||
| 3 | "version": "1.0.0", | ||
| 4 | "main": "index.js", | ||
| 5 | "author": "Volpeon", | ||
| 6 | "license": "MIT", | ||
| 7 | "private": true, | ||
| 8 | "dependencies": { | ||
| 9 | "@types/sharp": "^0.29.2", | ||
| 10 | "file-type": "^16.5.3", | ||
| 11 | "form-data": "^4.0.0", | ||
| 12 | "got": "^11.8.2", | ||
| 13 | "nanoid": "^3.1.30", | ||
| 14 | "ts-node": "^10.3.0", | ||
| 15 | "typescript": "^4.4.4" | ||
| 16 | }, | ||
| 17 | "devDependencies": { | ||
| 18 | "prettier": "^2.4.1" | ||
| 19 | } | ||
| 20 | } | ||
diff --git a/src/api/e621/index.ts b/src/api/e621/index.ts new file mode 100644 index 0000000..6aa6a35 --- /dev/null +++ b/src/api/e621/index.ts | |||
| @@ -0,0 +1,50 @@ | |||
| 1 | import got from "got"; | ||
| 2 | import config from "../../config"; | ||
| 3 | |||
| 4 | export interface Post { | ||
| 5 | id: number; | ||
| 6 | file: { | ||
| 7 | url: string; | ||
| 8 | }; | ||
| 9 | sources: readonly string[]; | ||
| 10 | |||
| 11 | tags: { | ||
| 12 | general: readonly string[]; | ||
| 13 | species: readonly string[]; | ||
| 14 | character: readonly string[]; | ||
| 15 | copyright: readonly string[]; | ||
| 16 | artist: readonly string[]; | ||
| 17 | invalid: readonly string[]; | ||
| 18 | lore: readonly string[]; | ||
| 19 | meta: readonly string[]; | ||
| 20 | }; | ||
| 21 | } | ||
| 22 | |||
| 23 | export const client = got.extend({ | ||
| 24 | headers: { | ||
| 25 | "User-Agent": config.e621.userAgent, | ||
| 26 | }, | ||
| 27 | }); | ||
| 28 | |||
| 29 | export async function randomPost() { | ||
| 30 | const page = Math.floor(Math.random() * (config.e621.maxPage - 1)) + 1; | ||
| 31 | |||
| 32 | const response = await client | ||
| 33 | .get("https://e926.net/posts.json", { | ||
| 34 | searchParams: { | ||
| 35 | limit: 75, | ||
| 36 | page, | ||
| 37 | tags: config.e621.tags.join(" "), | ||
| 38 | }, | ||
| 39 | }) | ||
| 40 | .json<{ posts: readonly Post[] }>(); | ||
| 41 | |||
| 42 | if (!response.posts.length) { | ||
| 43 | throw new Error("No posts received"); | ||
| 44 | } | ||
| 45 | |||
| 46 | const postIndex = Math.floor(Math.random() * response.posts.length); | ||
| 47 | const post = response.posts[postIndex]; | ||
| 48 | |||
| 49 | return post; | ||
| 50 | } | ||
diff --git a/src/api/mastodon/index.ts b/src/api/mastodon/index.ts new file mode 100644 index 0000000..2d8636e --- /dev/null +++ b/src/api/mastodon/index.ts | |||
| @@ -0,0 +1,58 @@ | |||
| 1 | import got from "got"; | ||
| 2 | import FormData from "form-data"; | ||
| 3 | import fileType from "file-type"; | ||
| 4 | import { nanoid } from "nanoid"; | ||
| 5 | import config from "../../config"; | ||
| 6 | |||
| 7 | export interface Attachment { | ||
| 8 | id: string; | ||
| 9 | } | ||
| 10 | |||
| 11 | export interface Status { | ||
| 12 | url: string; | ||
| 13 | } | ||
| 14 | |||
| 15 | export const client = got.extend({ | ||
| 16 | prefixUrl: config.mastodon.instance, | ||
| 17 | headers: { | ||
| 18 | Authorization: `Bearer ${config.mastodon.token}`, | ||
| 19 | }, | ||
| 20 | }); | ||
| 21 | |||
| 22 | export async function upload(buf: Buffer, filename: string) { | ||
| 23 | const type = await fileType.fromBuffer(buf); | ||
| 24 | |||
| 25 | const body = new FormData(); | ||
| 26 | body.append("i", config.mastodon.token); | ||
| 27 | body.append("file", buf, { filename: `${filename}.${type.ext}`, contentType: type.mime }); | ||
| 28 | |||
| 29 | return client.post("api/v1/media", { body }).json<Attachment>(); | ||
| 30 | } | ||
| 31 | |||
| 32 | export async function createStatus( | ||
| 33 | postUrl: string, | ||
| 34 | sourceUrl: string | undefined, | ||
| 35 | spoiler: string[], | ||
| 36 | attachmentId: string | ||
| 37 | ) { | ||
| 38 | let lines = [postUrl]; | ||
| 39 | if (sourceUrl) { | ||
| 40 | lines.push(`Source: ${sourceUrl}`); | ||
| 41 | } | ||
| 42 | |||
| 43 | const spoilerText = spoiler.length ? `CW: ${spoiler.join(", ")}` : undefined; | ||
| 44 | |||
| 45 | return client | ||
| 46 | .post("api/v1/statuses", { | ||
| 47 | headers: { | ||
| 48 | "Idempotency-Key": nanoid(), | ||
| 49 | }, | ||
| 50 | json: { | ||
| 51 | status: lines.join("\n"), | ||
| 52 | media_ids: [attachmentId], | ||
| 53 | sensitive: true, | ||
| 54 | spoiler_text: spoilerText, | ||
| 55 | }, | ||
| 56 | }) | ||
| 57 | .json<Status>(); | ||
| 58 | } | ||
diff --git a/src/api/misskey/index.ts b/src/api/misskey/index.ts new file mode 100644 index 0000000..64bfe67 --- /dev/null +++ b/src/api/misskey/index.ts | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | /* | ||
| 2 | import got from "got"; | ||
| 3 | import FormData from "form-data"; | ||
| 4 | import stream from "stream"; | ||
| 5 | import config from "../../config"; | ||
| 6 | |||
| 7 | export interface DriveFile { | ||
| 8 | id: string; | ||
| 9 | } | ||
| 10 | |||
| 11 | export const client = got.extend({ | ||
| 12 | prefixUrl: config.misskey.instance, | ||
| 13 | }); | ||
| 14 | |||
| 15 | export function upload(buf: Buffer, filename: string) { | ||
| 16 | const body = new FormData(); | ||
| 17 | body.append("i", config.misskey.token); | ||
| 18 | body.append("file", buf, { filename }); | ||
| 19 | |||
| 20 | return client.post("drive/files/create", { body }).json<DriveFile>(); | ||
| 21 | }; | ||
| 22 | |||
| 23 | export function createNote() { | ||
| 24 | |||
| 25 | } | ||
| 26 | */ | ||
diff --git a/src/config.ts b/src/config.ts new file mode 100644 index 0000000..f051888 --- /dev/null +++ b/src/config.ts | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | export default { | ||
| 2 | e621: { | ||
| 3 | userAgent: "@feralbot@botsin.space (by RedFoxxo)", | ||
| 4 | tags: [ | ||
| 5 | "feral", | ||
| 6 | "-anthro", | ||
| 7 | "-human", | ||
| 8 | "-meme", | ||
| 9 | "-humor", | ||
| 10 | "-photography_(artwork)", | ||
| 11 | "-portrait", | ||
| 12 | "-comic", | ||
| 13 | "-saliva", | ||
| 14 | "-friendship_is_magic", | ||
| 15 | "-my_little_pony", | ||
| 16 | "-type:swf", | ||
| 17 | "-type:webm", | ||
| 18 | "-type:gif", | ||
| 19 | "status:active", | ||
| 20 | "score:>=20", | ||
| 21 | "inpool:false", | ||
| 22 | ], | ||
| 23 | maxPage: 131, | ||
| 24 | }, | ||
| 25 | /*misskey: { | ||
| 26 | instance: "https://mk.vulpes.one/", | ||
| 27 | token: process.env.MISSKEY_TOKEN, | ||
| 28 | },*/ | ||
| 29 | mastodon: { | ||
| 30 | instance: "https://botsin.space/", | ||
| 31 | token: process.env.MASTODON_TOKEN, | ||
| 32 | }, | ||
| 33 | cw: ["gun"], | ||
| 34 | }; | ||
diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..7185e23 --- /dev/null +++ b/src/index.ts | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | import * as e621 from "./api/e621"; | ||
| 2 | import * as mastodon from "./api/mastodon"; | ||
| 3 | import config from "./config"; | ||
| 4 | |||
| 5 | (async () => { | ||
| 6 | console.log("Fetching post..."); | ||
| 7 | |||
| 8 | const post = await e621.randomPost(); | ||
| 9 | const source = post.sources.length ? post.sources[0] : undefined; | ||
| 10 | const cws = config.cw.filter((w) => post.tags.general.includes(w)); | ||
| 11 | |||
| 12 | console.log(`Got ${post.id}`); | ||
| 13 | console.log(`Downloading image...`); | ||
| 14 | |||
| 15 | const file = await e621.client.get(post.file.url).buffer(); | ||
| 16 | |||
| 17 | /*console.log(`Compressing...`); | ||
| 18 | |||
| 19 | const compressedFile = await sharp(file) | ||
| 20 | .resize(1000, 1000, { | ||
| 21 | fit: "inside", | ||
| 22 | withoutEnlargement: true, | ||
| 23 | }) | ||
| 24 | .jpeg({ quality: 85, mozjpeg: true }) | ||
| 25 | .toBuffer();*/ | ||
| 26 | |||
| 27 | console.log(`Uploading...`); | ||
| 28 | |||
| 29 | const attachment = await mastodon.upload(file, post.id.toString(10)); | ||
| 30 | |||
| 31 | console.log(`Posting status...`); | ||
| 32 | |||
| 33 | const status = await mastodon.createStatus(`https://e926.net/posts/${post.id}`, source, cws, attachment.id); | ||
| 34 | |||
| 35 | console.log(`Done! ${status.url}`); | ||
| 36 | })(); | ||
diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..75337a5 --- /dev/null +++ b/tsconfig.json | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | { | ||
| 2 | "compilerOptions": { | ||
| 3 | "rootDirs": ["src"], | ||
| 4 | "target": "ES2020", | ||
| 5 | "moduleResolution": "node", | ||
| 6 | "esModuleInterop": true | ||
| 7 | } | ||
| 8 | } | ||
diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..233de5d --- /dev/null +++ b/yarn.lock | |||
| @@ -0,0 +1,427 @@ | |||
| 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. | ||
| 2 | # yarn lockfile v1 | ||
| 3 | |||
| 4 | |||
| 5 | "@cspotcode/source-map-consumer@0.8.0": | ||
| 6 | version "0.8.0" | ||
| 7 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b" | ||
| 8 | integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg== | ||
| 9 | |||
| 10 | "@cspotcode/source-map-support@0.7.0": | ||
| 11 | version "0.7.0" | ||
| 12 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5" | ||
| 13 | integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA== | ||
| 14 | dependencies: | ||
| 15 | "@cspotcode/source-map-consumer" "0.8.0" | ||
| 16 | |||
| 17 | "@sindresorhus/is@^4.0.0": | ||
| 18 | version "4.2.0" | ||
| 19 | resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.2.0.tgz#667bfc6186ae7c9e0b45a08960c551437176e1ca" | ||
| 20 | integrity sha512-VkE3KLBmJwcCaVARtQpfuKcKv8gcBmUubrfHGF84dXuuW6jgsRYxPtzcIhPyK9WAPpRt2/xY6zkD9MnRaJzSyw== | ||
| 21 | |||
| 22 | "@szmarczak/http-timer@^4.0.5": | ||
| 23 | version "4.0.6" | ||
| 24 | resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807" | ||
| 25 | integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w== | ||
| 26 | dependencies: | ||
| 27 | defer-to-connect "^2.0.0" | ||
| 28 | |||
| 29 | "@tokenizer/token@^0.3.0": | ||
| 30 | version "0.3.0" | ||
| 31 | resolved "https://registry.yarnpkg.com/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276" | ||
| 32 | integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A== | ||
| 33 | |||
| 34 | "@tsconfig/node10@^1.0.7": | ||
| 35 | version "1.0.8" | ||
| 36 | resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9" | ||
| 37 | integrity sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg== | ||
| 38 | |||
| 39 | "@tsconfig/node12@^1.0.7": | ||
| 40 | version "1.0.9" | ||
| 41 | resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c" | ||
| 42 | integrity sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw== | ||
| 43 | |||
| 44 | "@tsconfig/node14@^1.0.0": | ||
| 45 | version "1.0.1" | ||
| 46 | resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2" | ||
| 47 | integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg== | ||
| 48 | |||
| 49 | "@tsconfig/node16@^1.0.2": | ||
| 50 | version "1.0.2" | ||
| 51 | resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e" | ||
| 52 | integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA== | ||
| 53 | |||
| 54 | "@types/cacheable-request@^6.0.1": | ||
| 55 | version "6.0.2" | ||
| 56 | resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9" | ||
| 57 | integrity sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA== | ||
| 58 | dependencies: | ||
| 59 | "@types/http-cache-semantics" "*" | ||
| 60 | "@types/keyv" "*" | ||
| 61 | "@types/node" "*" | ||
| 62 | "@types/responselike" "*" | ||
| 63 | |||
| 64 | "@types/http-cache-semantics@*": | ||
| 65 | version "4.0.1" | ||
| 66 | resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" | ||
| 67 | integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== | ||
| 68 | |||
| 69 | "@types/keyv@*": | ||
| 70 | version "3.1.3" | ||
| 71 | resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.3.tgz#1c9aae32872ec1f20dcdaee89a9f3ba88f465e41" | ||
| 72 | integrity sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg== | ||
| 73 | dependencies: | ||
| 74 | "@types/node" "*" | ||
| 75 | |||
| 76 | "@types/node@*": | ||
| 77 | version "16.11.1" | ||
| 78 | resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.1.tgz#2e50a649a50fc403433a14f829eface1a3443e97" | ||
| 79 | integrity sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA== | ||
| 80 | |||
| 81 | "@types/responselike@*", "@types/responselike@^1.0.0": | ||
| 82 | version "1.0.0" | ||
| 83 | resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29" | ||
| 84 | integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA== | ||
| 85 | dependencies: | ||
| 86 | "@types/node" "*" | ||
| 87 | |||
| 88 | "@types/sharp@^0.29.2": | ||
| 89 | version "0.29.2" | ||
| 90 | resolved "https://registry.yarnpkg.com/@types/sharp/-/sharp-0.29.2.tgz#b4e932e982e258d1013236c8b4bcc14f9883c9a3" | ||
| 91 | integrity sha512-tIbMvtPa8kMyFMKNhpsPT1HO3CgXLuiCAA8bxHAGAZLyALpYvYc4hUu3pu0+3oExQA5LwvHrWp+OilgXCYVQgg== | ||
| 92 | dependencies: | ||
| 93 | "@types/node" "*" | ||
| 94 | |||
| 95 | acorn-walk@^8.1.1: | ||
| 96 | version "8.2.0" | ||
| 97 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" | ||
| 98 | integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== | ||
| 99 | |||
| 100 | acorn@^8.4.1: | ||
| 101 | version "8.5.0" | ||
| 102 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" | ||
| 103 | integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== | ||
| 104 | |||
| 105 | arg@^4.1.0: | ||
| 106 | version "4.1.3" | ||
| 107 | resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" | ||
| 108 | integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== | ||
| 109 | |||
| 110 | asynckit@^0.4.0: | ||
| 111 | version "0.4.0" | ||
| 112 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" | ||
| 113 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= | ||
| 114 | |||
| 115 | cacheable-lookup@^5.0.3: | ||
| 116 | version "5.0.4" | ||
| 117 | resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" | ||
| 118 | integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA== | ||
| 119 | |||
| 120 | cacheable-request@^7.0.1: | ||
| 121 | version "7.0.2" | ||
| 122 | resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz#ea0d0b889364a25854757301ca12b2da77f91d27" | ||
| 123 | integrity sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew== | ||
| 124 | dependencies: | ||
| 125 | clone-response "^1.0.2" | ||
| 126 | get-stream "^5.1.0" | ||
| 127 | http-cache-semantics "^4.0.0" | ||
| 128 | keyv "^4.0.0" | ||
| 129 | lowercase-keys "^2.0.0" | ||
| 130 | normalize-url "^6.0.1" | ||
| 131 | responselike "^2.0.0" | ||
| 132 | |||
| 133 | clone-response@^1.0.2: | ||
| 134 | version "1.0.2" | ||
| 135 | resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" | ||
| 136 | integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= | ||
| 137 | dependencies: | ||
| 138 | mimic-response "^1.0.0" | ||
| 139 | |||
| 140 | combined-stream@^1.0.8: | ||
| 141 | version "1.0.8" | ||
| 142 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" | ||
| 143 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== | ||
| 144 | dependencies: | ||
| 145 | delayed-stream "~1.0.0" | ||
| 146 | |||
| 147 | create-require@^1.1.0: | ||
| 148 | version "1.1.1" | ||
| 149 | resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" | ||
| 150 | integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== | ||
| 151 | |||
| 152 | decompress-response@^6.0.0: | ||
| 153 | version "6.0.0" | ||
| 154 | resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" | ||
| 155 | integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== | ||
| 156 | dependencies: | ||
| 157 | mimic-response "^3.1.0" | ||
| 158 | |||
| 159 | defer-to-connect@^2.0.0: | ||
| 160 | version "2.0.1" | ||
| 161 | resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" | ||
| 162 | integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== | ||
| 163 | |||
| 164 | delayed-stream@~1.0.0: | ||
| 165 | version "1.0.0" | ||
| 166 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" | ||
| 167 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= | ||
| 168 | |||
| 169 | diff@^4.0.1: | ||
| 170 | version "4.0.2" | ||
| 171 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" | ||
| 172 | integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== | ||
| 173 | |||
| 174 | end-of-stream@^1.1.0: | ||
| 175 | version "1.4.4" | ||
| 176 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" | ||
| 177 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== | ||
| 178 | dependencies: | ||
| 179 | once "^1.4.0" | ||
| 180 | |||
| 181 | file-type@^16.5.3: | ||
| 182 | version "16.5.3" | ||
| 183 | resolved "https://registry.yarnpkg.com/file-type/-/file-type-16.5.3.tgz#474b7e88c74724046abb505e9b8ed4db30c4fc06" | ||
| 184 | integrity sha512-uVsl7iFhHSOY4bEONLlTK47iAHtNsFHWP5YE4xJfZ4rnX7S1Q3wce09XgqSC7E/xh8Ncv/be1lNoyprlUH/x6A== | ||
| 185 | dependencies: | ||
| 186 | readable-web-to-node-stream "^3.0.0" | ||
| 187 | strtok3 "^6.2.4" | ||
| 188 | token-types "^4.1.1" | ||
| 189 | |||
| 190 | form-data@^4.0.0: | ||
| 191 | version "4.0.0" | ||
| 192 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" | ||
| 193 | integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== | ||
| 194 | dependencies: | ||
| 195 | asynckit "^0.4.0" | ||
| 196 | combined-stream "^1.0.8" | ||
| 197 | mime-types "^2.1.12" | ||
| 198 | |||
| 199 | get-stream@^5.1.0: | ||
| 200 | version "5.2.0" | ||
| 201 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" | ||
| 202 | integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== | ||
| 203 | dependencies: | ||
| 204 | pump "^3.0.0" | ||
| 205 | |||
| 206 | got@^11.8.2: | ||
| 207 | version "11.8.2" | ||
| 208 | resolved "https://registry.yarnpkg.com/got/-/got-11.8.2.tgz#7abb3959ea28c31f3576f1576c1effce23f33599" | ||
| 209 | integrity sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ== | ||
| 210 | dependencies: | ||
| 211 | "@sindresorhus/is" "^4.0.0" | ||
| 212 | "@szmarczak/http-timer" "^4.0.5" | ||
| 213 | "@types/cacheable-request" "^6.0.1" | ||
| 214 | "@types/responselike" "^1.0.0" | ||
| 215 | cacheable-lookup "^5.0.3" | ||
| 216 | cacheable-request "^7.0.1" | ||
| 217 | decompress-response "^6.0.0" | ||
| 218 | http2-wrapper "^1.0.0-beta.5.2" | ||
| 219 | lowercase-keys "^2.0.0" | ||
| 220 | p-cancelable "^2.0.0" | ||
| 221 | responselike "^2.0.0" | ||
| 222 | |||
| 223 | http-cache-semantics@^4.0.0: | ||
| 224 | version "4.1.0" | ||
| 225 | resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" | ||
| 226 | integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== | ||
| 227 | |||
| 228 | http2-wrapper@^1.0.0-beta.5.2: | ||
| 229 | version "1.0.3" | ||
| 230 | resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d" | ||
| 231 | integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg== | ||
| 232 | dependencies: | ||
| 233 | quick-lru "^5.1.1" | ||
| 234 | resolve-alpn "^1.0.0" | ||
| 235 | |||
| 236 | ieee754@^1.2.1: | ||
| 237 | version "1.2.1" | ||
| 238 | resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" | ||
| 239 | integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== | ||
| 240 | |||
| 241 | inherits@^2.0.3: | ||
| 242 | version "2.0.4" | ||
| 243 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" | ||
| 244 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== | ||
| 245 | |||
| 246 | json-buffer@3.0.1: | ||
| 247 | version "3.0.1" | ||
| 248 | resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" | ||
| 249 | integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== | ||
| 250 | |||
| 251 | keyv@^4.0.0: | ||
| 252 | version "4.0.3" | ||
| 253 | resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.0.3.tgz#4f3aa98de254803cafcd2896734108daa35e4254" | ||
| 254 | integrity sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA== | ||
| 255 | dependencies: | ||
| 256 | json-buffer "3.0.1" | ||
| 257 | |||
| 258 | lowercase-keys@^2.0.0: | ||
| 259 | version "2.0.0" | ||
| 260 | resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" | ||
| 261 | integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== | ||
| 262 | |||
| 263 | make-error@^1.1.1: | ||
| 264 | version "1.3.6" | ||
| 265 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" | ||
| 266 | integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== | ||
| 267 | |||
| 268 | mime-db@1.50.0: | ||
| 269 | version "1.50.0" | ||
| 270 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.50.0.tgz#abd4ac94e98d3c0e185016c67ab45d5fde40c11f" | ||
| 271 | integrity sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A== | ||
| 272 | |||
| 273 | mime-types@^2.1.12: | ||
| 274 | version "2.1.33" | ||
| 275 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.33.tgz#1fa12a904472fafd068e48d9e8401f74d3f70edb" | ||
| 276 | integrity sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g== | ||
| 277 | dependencies: | ||
| 278 | mime-db "1.50.0" | ||
| 279 | |||
| 280 | mimic-response@^1.0.0: | ||
| 281 | version "1.0.1" | ||
| 282 | resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" | ||
| 283 | integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== | ||
| 284 | |||
| 285 | mimic-response@^3.1.0: | ||
| 286 | version "3.1.0" | ||
| 287 | resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" | ||
| 288 | integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== | ||
| 289 | |||
| 290 | nanoid@^3.1.30: | ||
| 291 | version "3.1.30" | ||
| 292 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362" | ||
| 293 | integrity sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ== | ||
| 294 | |||
| 295 | normalize-url@^6.0.1: | ||
| 296 | version "6.1.0" | ||
| 297 | resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" | ||
| 298 | integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== | ||
| 299 | |||
| 300 | once@^1.3.1, once@^1.4.0: | ||
| 301 | version "1.4.0" | ||
| 302 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" | ||
| 303 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= | ||
| 304 | dependencies: | ||
| 305 | wrappy "1" | ||
| 306 | |||
| 307 | p-cancelable@^2.0.0: | ||
| 308 | version "2.1.1" | ||
| 309 | resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf" | ||
| 310 | integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg== | ||
| 311 | |||
| 312 | peek-readable@^4.0.1: | ||
| 313 | version "4.0.1" | ||
| 314 | resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-4.0.1.tgz#9a045f291db254111c3412c1ce4fec27ddd4d202" | ||
| 315 | integrity sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ== | ||
| 316 | |||
| 317 | prettier@^2.4.1: | ||
| 318 | version "2.4.1" | ||
| 319 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" | ||
| 320 | integrity sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA== | ||
| 321 | |||
| 322 | pump@^3.0.0: | ||
| 323 | version "3.0.0" | ||
| 324 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" | ||
| 325 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== | ||
| 326 | dependencies: | ||
| 327 | end-of-stream "^1.1.0" | ||
| 328 | once "^1.3.1" | ||
| 329 | |||
| 330 | quick-lru@^5.1.1: | ||
| 331 | version "5.1.1" | ||
| 332 | resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" | ||
| 333 | integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== | ||
| 334 | |||
| 335 | readable-stream@^3.6.0: | ||
| 336 | version "3.6.0" | ||
| 337 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" | ||
| 338 | integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== | ||
| 339 | dependencies: | ||
| 340 | inherits "^2.0.3" | ||
| 341 | string_decoder "^1.1.1" | ||
| 342 | util-deprecate "^1.0.1" | ||
| 343 | |||
| 344 | readable-web-to-node-stream@^3.0.0: | ||
| 345 | version "3.0.2" | ||
| 346 | resolved "https://registry.yarnpkg.com/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb" | ||
| 347 | integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw== | ||
| 348 | dependencies: | ||
| 349 | readable-stream "^3.6.0" | ||
| 350 | |||
| 351 | resolve-alpn@^1.0.0: | ||
| 352 | version "1.2.1" | ||
| 353 | resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" | ||
| 354 | integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== | ||
| 355 | |||
| 356 | responselike@^2.0.0: | ||
| 357 | version "2.0.0" | ||
| 358 | resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.0.tgz#26391bcc3174f750f9a79eacc40a12a5c42d7723" | ||
| 359 | integrity sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw== | ||
| 360 | dependencies: | ||
| 361 | lowercase-keys "^2.0.0" | ||
| 362 | |||
| 363 | safe-buffer@~5.2.0: | ||
| 364 | version "5.2.1" | ||
| 365 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" | ||
| 366 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== | ||
| 367 | |||
| 368 | string_decoder@^1.1.1: | ||
| 369 | version "1.3.0" | ||
| 370 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" | ||
| 371 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== | ||
| 372 | dependencies: | ||
| 373 | safe-buffer "~5.2.0" | ||
| 374 | |||
| 375 | strtok3@^6.2.4: | ||
| 376 | version "6.2.4" | ||
| 377 | resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.2.4.tgz#302aea64c0fa25d12a0385069ba66253fdc38a81" | ||
| 378 | integrity sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw== | ||
| 379 | dependencies: | ||
| 380 | "@tokenizer/token" "^0.3.0" | ||
| 381 | peek-readable "^4.0.1" | ||
| 382 | |||
| 383 | token-types@^4.1.1: | ||
| 384 | version "4.1.1" | ||
| 385 | resolved "https://registry.yarnpkg.com/token-types/-/token-types-4.1.1.tgz#ef9e8c8e2e0ded9f1b3f8dbaa46a3228b113ba1a" | ||
| 386 | integrity sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w== | ||
| 387 | dependencies: | ||
| 388 | "@tokenizer/token" "^0.3.0" | ||
| 389 | ieee754 "^1.2.1" | ||
| 390 | |||
| 391 | ts-node@^10.3.0: | ||
| 392 | version "10.3.0" | ||
| 393 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.3.0.tgz#a797f2ed3ff50c9a5d814ce400437cb0c1c048b4" | ||
| 394 | integrity sha512-RYIy3i8IgpFH45AX4fQHExrT8BxDeKTdC83QFJkNzkvt8uFB6QJ8XMyhynYiKMLxt9a7yuXaDBZNOYS3XjDcYw== | ||
| 395 | dependencies: | ||
| 396 | "@cspotcode/source-map-support" "0.7.0" | ||
| 397 | "@tsconfig/node10" "^1.0.7" | ||
| 398 | "@tsconfig/node12" "^1.0.7" | ||
| 399 | "@tsconfig/node14" "^1.0.0" | ||
| 400 | "@tsconfig/node16" "^1.0.2" | ||
| 401 | acorn "^8.4.1" | ||
| 402 | acorn-walk "^8.1.1" | ||
| 403 | arg "^4.1.0" | ||
| 404 | create-require "^1.1.0" | ||
| 405 | diff "^4.0.1" | ||
| 406 | make-error "^1.1.1" | ||
| 407 | yn "3.1.1" | ||
| 408 | |||
| 409 | typescript@^4.4.4: | ||
| 410 | version "4.4.4" | ||
| 411 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c" | ||
| 412 | integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== | ||
| 413 | |||
| 414 | util-deprecate@^1.0.1: | ||
| 415 | version "1.0.2" | ||
| 416 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" | ||
| 417 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= | ||
| 418 | |||
| 419 | wrappy@1: | ||
| 420 | version "1.0.2" | ||
| 421 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" | ||
| 422 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= | ||
| 423 | |||
| 424 | yn@3.1.1: | ||
| 425 | version "3.1.1" | ||
| 426 | resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" | ||
| 427 | integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== | ||
