This commit is contained in:
ThatOneCalculator 2023-01-03 09:12:26 -08:00
parent 06387a79c5
commit a6324564e2
12 changed files with 157 additions and 141 deletions

View file

@ -42,8 +42,8 @@
"@bull-board/api": "^4.6.4", "@bull-board/api": "^4.6.4",
"@bull-board/ui": "^4.6.4", "@bull-board/ui": "^4.6.4",
"@tensorflow/tfjs": "^3.21.0", "@tensorflow/tfjs": "^3.21.0",
"calckey-js": "^0.0.17", "calckey-js": "^0.0.20",
"eslint": "^8.30.0", "eslint": "^8.31.0",
"execa": "5.1.1", "execa": "5.1.1",
"gulp": "4.0.2", "gulp": "4.0.2",
"gulp-cssnano": "2.1.3", "gulp-cssnano": "2.1.3",

View file

@ -43,7 +43,7 @@
"blurhash": "1.1.5", "blurhash": "1.1.5",
"bull": "4.10.2", "bull": "4.10.2",
"cacheable-lookup": "7.0.0", "cacheable-lookup": "7.0.0",
"calckey-js": "^0.0.17", "calckey-js": "^0.0.20",
"cbor": "8.1.0", "cbor": "8.1.0",
"chalk": "5.2.0", "chalk": "5.2.0",
"chalk-template": "0.4.0", "chalk-template": "0.4.0",
@ -64,7 +64,7 @@
"is-svg": "4.3.2", "is-svg": "4.3.2",
"js-yaml": "4.1.0", "js-yaml": "4.1.0",
"jsdom": "20.0.3", "jsdom": "20.0.3",
"json5": "2.2.2", "json5": "2.2.3",
"json5-loader": "4.0.1", "json5-loader": "4.0.1",
"jsonld": "6.0.0", "jsonld": "6.0.0",
"jsrsasign": "10.6.1", "jsrsasign": "10.6.1",
@ -94,7 +94,7 @@
"promise-limit": "2.7.0", "promise-limit": "2.7.0",
"pug": "3.0.2", "pug": "3.0.2",
"punycode": "2.1.1", "punycode": "2.1.1",
"pureimage": "0.3.14", "pureimage": "0.3.15",
"qrcode": "1.5.1", "qrcode": "1.5.1",
"random-seed": "0.3.0", "random-seed": "0.3.0",
"ratelimiter": "3.4.1", "ratelimiter": "3.4.1",
@ -105,22 +105,22 @@
"rndstr": "1.0.0", "rndstr": "1.0.0",
"rss-parser": "3.12.0", "rss-parser": "3.12.0",
"s-age": "1.1.2", "s-age": "1.1.2",
"sanitize-html": "2.8.0", "sanitize-html": "2.8.1",
"semver": "7.3.8", "semver": "7.3.8",
"sharp": "0.31.2", "sharp": "0.31.3",
"speakeasy": "2.0.0", "speakeasy": "2.0.0",
"strict-event-emitter-types": "2.0.0", "strict-event-emitter-types": "2.0.0",
"stringz": "2.1.0", "stringz": "2.1.0",
"summaly": "2.7.0", "summaly": "2.7.0",
"syslog-pro": "1.0.0", "syslog-pro": "1.0.0",
"systeminformation": "5.16.6", "systeminformation": "5.16.9",
"tesseract.js": "^3.0.3", "tesseract.js": "^3.0.3",
"tinycolor2": "1.4.2", "tinycolor2": "1.5.2",
"tmp": "0.2.1", "tmp": "0.2.1",
"ts-loader": "9.4.2", "ts-loader": "9.4.2",
"ts-node": "10.9.1", "ts-node": "10.9.1",
"tsc-alias": "1.8.2", "tsc-alias": "1.8.2",
"tsconfig-paths": "4.1.1", "tsconfig-paths": "4.1.2",
"twemoji-parser": "14.0.0", "twemoji-parser": "14.0.0",
"typeorm": "0.3.11", "typeorm": "0.3.11",
"ulid": "2.3.0", "ulid": "2.3.0",
@ -179,7 +179,7 @@
"@typescript-eslint/eslint-plugin": "5.46.1", "@typescript-eslint/eslint-plugin": "5.46.1",
"@typescript-eslint/parser": "5.46.1", "@typescript-eslint/parser": "5.46.1",
"cross-env": "7.0.3", "cross-env": "7.0.3",
"eslint": "8.30.0", "eslint": "8.31.0",
"eslint-plugin-import": "2.26.0", "eslint-plugin-import": "2.26.0",
"execa": "6.1.0", "execa": "6.1.0",
"typescript": "4.9.4" "typescript": "4.9.4"

View file

@ -1,7 +1,7 @@
import { Brackets } from 'typeorm'; import { Brackets } from 'typeorm';
import { fetchMeta } from '@/misc/fetch-meta.js'; import { fetchMeta } from '@/misc/fetch-meta.js';
import { Instances } from '@/models/index.js'; import { Instances } from '@/models/index.js';
import { Instance } from '@/models/entities/instance.js'; import type { Instance } from '@/models/entities/instance.js';
import { DAY } from '@/const.js'; import { DAY } from '@/const.js';
import { shouldBlockInstance } from './should-block-instance.js'; import { shouldBlockInstance } from './should-block-instance.js';
@ -34,10 +34,10 @@ export async function skippedInstances(hosts: Instance['host'][]): Promise<Insta
hosts: hosts.filter(host => !skipped.includes(host)), hosts: hosts.filter(host => !skipped.includes(host)),
}) })
.andWhere(new Brackets(qb => { qb .andWhere(new Brackets(qb => { qb
.where('instance.isSuspended') .where('instance.isSuspended');
})) }))
.select('host') .select('host')
.getRawMany() .getRawMany(),
); );
} }

View file

@ -1,15 +1,29 @@
import config from '@/config/index.js';
import { IncomingMessage } from 'http';
import { fetchMeta } from '@/misc/fetch-meta.js';
import httpSignature from '@peertube/http-signature';
import { URL } from 'url'; import { URL } from 'url';
import httpSignature from '@peertube/http-signature';
import config from '@/config/index.js';
import { fetchMeta } from '@/misc/fetch-meta.js';
import { toPuny } from '@/misc/convert-host.js'; import { toPuny } from '@/misc/convert-host.js';
import DbResolver from '@/remote/activitypub/db-resolver.js'; import DbResolver from '@/remote/activitypub/db-resolver.js';
import { getApId } from '@/remote/activitypub/type.js'; import { getApId } from '@/remote/activitypub/type.js';
import { shouldBlockInstance } from '@/misc/should-block-instance.js'; import { shouldBlockInstance } from '@/misc/should-block-instance.js';
import type { IncomingMessage } from 'http';
export async function hasSignature(req: IncomingMessage): Promise<string> {
const meta = await fetchMeta();
const required = (meta.secureMode || meta.privateMode)
export default async function checkFetch(req: IncomingMessage): Promise<number> { try {
httpSignature.parseRequest(req, { 'headers': [] });
} catch (e) {
if (e instanceof Error && e.name === 'MissingHeaderError') {
return required ? 'missing' : 'optional';
}
return 'invalid';
}
return required ? 'supplied' : 'unneeded';
}
export async function checkFetch(req: IncomingMessage): Promise<number> {
const meta = await fetchMeta(); const meta = await fetchMeta();
if (meta.secureMode || meta.privateMode) { if (meta.secureMode || meta.privateMode) {
let signature; let signature;

View file

@ -2,26 +2,26 @@ import Router from '@koa/router';
import json from 'koa-json-body'; import json from 'koa-json-body';
import httpSignature from '@peertube/http-signature'; import httpSignature from '@peertube/http-signature';
import { In, IsNull, Not } from 'typeorm';
import { renderActivity } from '@/remote/activitypub/renderer/index.js'; import { renderActivity } from '@/remote/activitypub/renderer/index.js';
import renderNote from '@/remote/activitypub/renderer/note.js'; import renderNote from '@/remote/activitypub/renderer/note.js';
import renderKey from '@/remote/activitypub/renderer/key.js'; import renderKey from '@/remote/activitypub/renderer/key.js';
import { renderPerson } from '@/remote/activitypub/renderer/person.js'; import { renderPerson } from '@/remote/activitypub/renderer/person.js';
import renderEmoji from '@/remote/activitypub/renderer/emoji.js'; import renderEmoji from '@/remote/activitypub/renderer/emoji.js';
import Outbox, { packActivity } from './activitypub/outbox.js';
import Followers from './activitypub/followers.js';
import Following from './activitypub/following.js';
import Featured from './activitypub/featured.js';
import { inbox as processInbox } from '@/queue/index.js'; import { inbox as processInbox } from '@/queue/index.js';
import { isSelfHost, toPuny } from '@/misc/convert-host.js'; import { isSelfHost, toPuny } from '@/misc/convert-host.js';
import { Notes, Users, Emojis, NoteReactions } from '@/models/index.js'; import { Notes, Users, Emojis, NoteReactions } from '@/models/index.js';
import { ILocalUser, User } from '@/models/entities/user.js'; import type { ILocalUser, User } from '@/models/entities/user.js';
import { In, IsNull, Not } from 'typeorm';
import { renderLike } from '@/remote/activitypub/renderer/like.js'; import { renderLike } from '@/remote/activitypub/renderer/like.js';
import { getUserKeypair } from '@/misc/keypair-store.js'; import { getUserKeypair } from '@/misc/keypair-store.js';
import checkFetch from '@/remote/activitypub/check-fetch.js'; import { checkFetch, hasSignature } from '@/remote/activitypub/check-fetch.js';
import { getInstanceActor } from '@/services/instance-actor.js'; import { getInstanceActor } from '@/services/instance-actor.js';
import { fetchMeta } from '@/misc/fetch-meta.js'; import { fetchMeta } from '@/misc/fetch-meta.js';
import renderFollow from '@/remote/activitypub/renderer/follow.js'; import renderFollow from '@/remote/activitypub/renderer/follow.js';
import Featured from './activitypub/featured.js';
import Following from './activitypub/following.js';
import Followers from './activitypub/followers.js';
import Outbox, { packActivity } from './activitypub/outbox.js';
// Init router // Init router
const router = new Router(); const router = new Router();

View file

@ -1,17 +1,17 @@
import Router from '@koa/router'; import { IsNull } from 'typeorm';
import config from '@/config/index.js'; import config from '@/config/index.js';
import { renderActivity } from '@/remote/activitypub/renderer/index.js'; import { renderActivity } from '@/remote/activitypub/renderer/index.js';
import renderOrderedCollection from '@/remote/activitypub/renderer/ordered-collection.js'; import renderOrderedCollection from '@/remote/activitypub/renderer/ordered-collection.js';
import { setResponseType } from '../activitypub.js';
import renderNote from '@/remote/activitypub/renderer/note.js'; import renderNote from '@/remote/activitypub/renderer/note.js';
import { Users, Notes, UserNotePinings } from '@/models/index.js'; import { Users, Notes, UserNotePinings } from '@/models/index.js';
import { IsNull } from 'typeorm'; import { checkFetch } from '@/remote/activitypub/check-fetch.js';
import checkFetch from '@/remote/activitypub/check-fetch.js';
import { fetchMeta } from '@/misc/fetch-meta.js'; import { fetchMeta } from '@/misc/fetch-meta.js';
import { setResponseType } from '../activitypub.js';
import type Router from '@koa/router';
export default async (ctx: Router.RouterContext) => { export default async (ctx: Router.RouterContext) => {
const verify = await checkFetch(ctx.req); const verify = await checkFetch(ctx.req);
if (verify != 200) { if (verify !== 200) {
ctx.status = verify; ctx.status = verify;
return; return;
} }

View file

@ -1,5 +1,4 @@
import Router from '@koa/router'; import { IsNull, LessThan } from 'typeorm';
import { FindOptionsWhere, IsNull, LessThan } from 'typeorm';
import config from '@/config/index.js'; import config from '@/config/index.js';
import * as url from '@/prelude/url.js'; import * as url from '@/prelude/url.js';
import { renderActivity } from '@/remote/activitypub/renderer/index.js'; import { renderActivity } from '@/remote/activitypub/renderer/index.js';
@ -7,14 +6,16 @@ import renderOrderedCollection from '@/remote/activitypub/renderer/ordered-colle
import renderOrderedCollectionPage from '@/remote/activitypub/renderer/ordered-collection-page.js'; import renderOrderedCollectionPage from '@/remote/activitypub/renderer/ordered-collection-page.js';
import renderFollowUser from '@/remote/activitypub/renderer/follow-user.js'; import renderFollowUser from '@/remote/activitypub/renderer/follow-user.js';
import { Users, Followings, UserProfiles } from '@/models/index.js'; import { Users, Followings, UserProfiles } from '@/models/index.js';
import { Following } from '@/models/entities/following.js'; import type { Following } from '@/models/entities/following.js';
import { setResponseType } from '../activitypub.js'; import { checkFetch } from '@/remote/activitypub/check-fetch.js';
import checkFetch from '@/remote/activitypub/check-fetch.js';
import { fetchMeta } from '@/misc/fetch-meta.js'; import { fetchMeta } from '@/misc/fetch-meta.js';
import { setResponseType } from '../activitypub.js';
import type { FindOptionsWhere } from 'typeorm';
import type Router from '@koa/router';
export default async (ctx: Router.RouterContext) => { export default async (ctx: Router.RouterContext) => {
const verify = await checkFetch(ctx.req); const verify = await checkFetch(ctx.req);
if (verify != 200) { if (verify !== 200) {
ctx.status = verify; ctx.status = verify;
return; return;
} }

View file

@ -1,5 +1,4 @@
import Router from '@koa/router'; import { LessThan, IsNull } from 'typeorm';
import { LessThan, IsNull, FindOptionsWhere } from 'typeorm';
import config from '@/config/index.js'; import config from '@/config/index.js';
import * as url from '@/prelude/url.js'; import * as url from '@/prelude/url.js';
import { renderActivity } from '@/remote/activitypub/renderer/index.js'; import { renderActivity } from '@/remote/activitypub/renderer/index.js';
@ -7,14 +6,16 @@ import renderOrderedCollection from '@/remote/activitypub/renderer/ordered-colle
import renderOrderedCollectionPage from '@/remote/activitypub/renderer/ordered-collection-page.js'; import renderOrderedCollectionPage from '@/remote/activitypub/renderer/ordered-collection-page.js';
import renderFollowUser from '@/remote/activitypub/renderer/follow-user.js'; import renderFollowUser from '@/remote/activitypub/renderer/follow-user.js';
import { Users, Followings, UserProfiles } from '@/models/index.js'; import { Users, Followings, UserProfiles } from '@/models/index.js';
import { Following } from '@/models/entities/following.js'; import type { Following } from '@/models/entities/following.js';
import { setResponseType } from '../activitypub.js'; import { checkFetch } from '@/remote/activitypub/check-fetch.js';
import checkFetch from '@/remote/activitypub/check-fetch.js';
import { fetchMeta } from '@/misc/fetch-meta.js'; import { fetchMeta } from '@/misc/fetch-meta.js';
import { setResponseType } from '../activitypub.js';
import type { FindOptionsWhere } from 'typeorm';
import type Router from '@koa/router';
export default async (ctx: Router.RouterContext) => { export default async (ctx: Router.RouterContext) => {
const verify = await checkFetch(ctx.req); const verify = await checkFetch(ctx.req);
if (verify != 200) { if (verify !== 200) {
ctx.status = verify; ctx.status = verify;
return; return;
} }

View file

@ -1,4 +1,3 @@
import Router from '@koa/router';
import { Brackets, IsNull } from 'typeorm'; import { Brackets, IsNull } from 'typeorm';
import config from '@/config/index.js'; import config from '@/config/index.js';
import { renderActivity } from '@/remote/activitypub/renderer/index.js'; import { renderActivity } from '@/remote/activitypub/renderer/index.js';
@ -10,15 +9,16 @@ import renderAnnounce from '@/remote/activitypub/renderer/announce.js';
import { countIf } from '@/prelude/array.js'; import { countIf } from '@/prelude/array.js';
import * as url from '@/prelude/url.js'; import * as url from '@/prelude/url.js';
import { Users, Notes } from '@/models/index.js'; import { Users, Notes } from '@/models/index.js';
import { Note } from '@/models/entities/note.js'; import type { Note } from '@/models/entities/note.js';
import { checkFetch } from '@/remote/activitypub/check-fetch.js';
import { fetchMeta } from '@/misc/fetch-meta.js';
import { makePaginationQuery } from '../api/common/make-pagination-query.js'; import { makePaginationQuery } from '../api/common/make-pagination-query.js';
import { setResponseType } from '../activitypub.js'; import { setResponseType } from '../activitypub.js';
import checkFetch from '@/remote/activitypub/check-fetch.js'; import type Router from '@koa/router';
import { fetchMeta } from '@/misc/fetch-meta.js';
export default async (ctx: Router.RouterContext) => { export default async (ctx: Router.RouterContext) => {
const verify = await checkFetch(ctx.req); const verify = await checkFetch(ctx.req);
if (verify != 200) { if (verify !== 200) {
ctx.status = verify; ctx.status = verify;
return; return;
} }

View file

@ -19,19 +19,19 @@
"blurhash": "1.1.5", "blurhash": "1.1.5",
"broadcast-channel": "4.18.1", "broadcast-channel": "4.18.1",
"browser-image-resizer": "https://github.com/misskey-dev/browser-image-resizer.git#commit=0380d12c8e736788ea7f4e6e985175521ea7b23c", "browser-image-resizer": "https://github.com/misskey-dev/browser-image-resizer.git#commit=0380d12c8e736788ea7f4e6e985175521ea7b23c",
"calckey-js": "^0.0.17", "calckey-js": "^0.0.20",
"chart.js": "4.1.1", "chart.js": "4.1.1",
"chartjs-adapter-date-fns": "2.0.1", "chartjs-adapter-date-fns": "2.0.1",
"chartjs-plugin-gradient": "0.5.1", "chartjs-plugin-gradient": "0.5.1",
"chartjs-plugin-zoom": "1.2.1", "chartjs-plugin-zoom": "1.2.1",
"compare-versions": "5.0.1", "compare-versions": "5.0.3",
"cropperjs": "2.0.0-beta.1", "cropperjs": "2.0.0-beta.2",
"date-fns": "2.29.3", "date-fns": "2.29.3",
"escape-regexp": "0.0.1", "escape-regexp": "0.0.1",
"eventemitter3": "4.0.7", "eventemitter3": "4.0.7",
"idb-keyval": "6.2.0", "idb-keyval": "6.2.0",
"insert-text-at-cursor": "0.3.0", "insert-text-at-cursor": "0.3.0",
"json5": "2.2.2", "json5": "2.2.3",
"katex": "0.16.4", "katex": "0.16.4",
"matter-js": "0.18.0", "matter-js": "0.18.0",
"mfm-js": "0.23.0", "mfm-js": "0.23.0",
@ -41,7 +41,7 @@
"querystring": "0.2.1", "querystring": "0.2.1",
"rndstr": "1.0.0", "rndstr": "1.0.0",
"s-age": "1.1.2", "s-age": "1.1.2",
"sass": "1.57.0", "sass": "1.57.1",
"seedrandom": "3.0.5", "seedrandom": "3.0.5",
"strict-event-emitter-types": "2.0.0", "strict-event-emitter-types": "2.0.0",
"stringz": "2.1.0", "stringz": "2.1.0",
@ -50,9 +50,9 @@
"textarea-caret": "3.1.0", "textarea-caret": "3.1.0",
"three": "0.146.0", "three": "0.146.0",
"throttle-debounce": "5.0.0", "throttle-debounce": "5.0.0",
"tinycolor2": "1.4.2", "tinycolor2": "1.5.2",
"tsc-alias": "1.8.2", "tsc-alias": "1.8.2",
"tsconfig-paths": "4.1.1", "tsconfig-paths": "4.1.2",
"twemoji-parser": "14.0.0", "twemoji-parser": "14.0.0",
"typescript": "4.9.4", "typescript": "4.9.4",
"uuid": "9.0.0", "uuid": "9.0.0",
@ -80,7 +80,7 @@
"@typescript-eslint/parser": "5.46.1", "@typescript-eslint/parser": "5.46.1",
"cross-env": "7.0.3", "cross-env": "7.0.3",
"cypress": "10.11.0", "cypress": "10.11.0",
"eslint": "8.30.0", "eslint": "8.31.0",
"eslint-plugin-import": "2.26.0", "eslint-plugin-import": "2.26.0",
"eslint-plugin-vue": "9.8.0", "eslint-plugin-vue": "9.8.0",
"rollup": "3.7.5", "rollup": "3.7.5",

View file

@ -7,11 +7,11 @@
"lint": "eslint --quiet src/**/*.{ts}" "lint": "eslint --quiet src/**/*.{ts}"
}, },
"dependencies": { "dependencies": {
"calckey-js": "^0.0.17", "calckey-js": "^0.0.20",
"esbuild": "^0.15.14", "esbuild": "^0.15.18",
"idb-keyval": "^6.2.0" "idb-keyval": "^6.2.0"
}, },
"devDependencies": { "devDependencies": {
"eslint": "^8.30.0" "eslint": "^8.31.0"
} }
} }

164
yarn.lock
View file

@ -281,7 +281,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@cropper/elements@npm:^2.0.0-beta.1": "@cropper/elements@npm:^2.0.0-beta.2":
version: 2.0.0-beta.2 version: 2.0.0-beta.2
resolution: "@cropper/elements@npm:2.0.0-beta.2" resolution: "@cropper/elements@npm:2.0.0-beta.2"
dependencies: dependencies:
@ -298,7 +298,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@cropper/utils@npm:^2.0.0-beta.1, @cropper/utils@npm:^2.0.0-beta.2": "@cropper/utils@npm:^2.0.0-beta.2":
version: 2.0.0-beta.2 version: 2.0.0-beta.2
resolution: "@cropper/utils@npm:2.0.0-beta.2" resolution: "@cropper/utils@npm:2.0.0-beta.2"
checksum: e1eca2e2a6c803e8419181966aa01c2d120ed655a1459921f41133e7e396921cd7d74961ee8d70cb92e911c226769b3c2e71d19a825b28e7a883b9b93a92b644 checksum: e1eca2e2a6c803e8419181966aa01c2d120ed655a1459921f41133e7e396921cd7d74961ee8d70cb92e911c226769b3c2e71d19a825b28e7a883b9b93a92b644
@ -553,9 +553,9 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@eslint/eslintrc@npm:^1.4.0": "@eslint/eslintrc@npm:^1.4.1":
version: 1.4.0 version: 1.4.1
resolution: "@eslint/eslintrc@npm:1.4.0" resolution: "@eslint/eslintrc@npm:1.4.1"
dependencies: dependencies:
ajv: ^6.12.4 ajv: ^6.12.4
debug: ^4.3.2 debug: ^4.3.2
@ -566,7 +566,7 @@ __metadata:
js-yaml: ^4.1.0 js-yaml: ^4.1.0
minimatch: ^3.1.2 minimatch: ^3.1.2
strip-json-comments: ^3.1.1 strip-json-comments: ^3.1.1
checksum: 73e39c833deafde8d8706e6fa9b52b6d99927c094ead8e405ea4174e8197ec24aac9ba88ae38cc8ad32eaccf07b9c7fc5dc70761d1fba6da41a928691447305f checksum: cd3e5a8683db604739938b1c1c8b77927dc04fce3e28e0c88e7f2cd4900b89466baf83dfbad76b2b9e4d2746abdd00dd3f9da544d3e311633d8693f327d04cd7
languageName: node languageName: node
linkType: hard linkType: hard
@ -3246,7 +3246,7 @@ __metadata:
blurhash: 1.1.5 blurhash: 1.1.5
bull: 4.10.2 bull: 4.10.2
cacheable-lookup: 7.0.0 cacheable-lookup: 7.0.0
calckey-js: ^0.0.17 calckey-js: ^0.0.20
cbor: 8.1.0 cbor: 8.1.0
chalk: 5.2.0 chalk: 5.2.0
chalk-template: 0.4.0 chalk-template: 0.4.0
@ -3258,7 +3258,7 @@ __metadata:
date-fns: 2.29.3 date-fns: 2.29.3
deep-email-validator: 0.1.21 deep-email-validator: 0.1.21
escape-regexp: 0.0.1 escape-regexp: 0.0.1
eslint: 8.30.0 eslint: 8.31.0
eslint-plugin-import: 2.26.0 eslint-plugin-import: 2.26.0
execa: 6.1.0 execa: 6.1.0
feed: 4.2.2 feed: 4.2.2
@ -3271,7 +3271,7 @@ __metadata:
is-svg: 4.3.2 is-svg: 4.3.2
js-yaml: 4.1.0 js-yaml: 4.1.0
jsdom: 20.0.3 jsdom: 20.0.3
json5: 2.2.2 json5: 2.2.3
json5-loader: 4.0.1 json5-loader: 4.0.1
jsonld: 6.0.0 jsonld: 6.0.0
jsrsasign: 10.6.1 jsrsasign: 10.6.1
@ -3301,7 +3301,7 @@ __metadata:
promise-limit: 2.7.0 promise-limit: 2.7.0
pug: 3.0.2 pug: 3.0.2
punycode: 2.1.1 punycode: 2.1.1
pureimage: 0.3.14 pureimage: 0.3.15
qrcode: 1.5.1 qrcode: 1.5.1
random-seed: 0.3.0 random-seed: 0.3.0
ratelimiter: 3.4.1 ratelimiter: 3.4.1
@ -3312,22 +3312,22 @@ __metadata:
rndstr: 1.0.0 rndstr: 1.0.0
rss-parser: 3.12.0 rss-parser: 3.12.0
s-age: 1.1.2 s-age: 1.1.2
sanitize-html: 2.8.0 sanitize-html: 2.8.1
semver: 7.3.8 semver: 7.3.8
sharp: 0.31.2 sharp: 0.31.3
speakeasy: 2.0.0 speakeasy: 2.0.0
strict-event-emitter-types: 2.0.0 strict-event-emitter-types: 2.0.0
stringz: 2.1.0 stringz: 2.1.0
summaly: 2.7.0 summaly: 2.7.0
syslog-pro: 1.0.0 syslog-pro: 1.0.0
systeminformation: 5.16.6 systeminformation: 5.16.9
tesseract.js: ^3.0.3 tesseract.js: ^3.0.3
tinycolor2: 1.4.2 tinycolor2: 1.5.2
tmp: 0.2.1 tmp: 0.2.1
ts-loader: 9.4.2 ts-loader: 9.4.2
ts-node: 10.9.1 ts-node: 10.9.1
tsc-alias: 1.8.2 tsc-alias: 1.8.2
tsconfig-paths: 4.1.1 tsconfig-paths: 4.1.2
twemoji-parser: 14.0.0 twemoji-parser: 14.0.0
typeorm: 0.3.11 typeorm: 0.3.11
typescript: 4.9.4 typescript: 4.9.4
@ -3813,15 +3813,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"calckey-js@npm:^0.0.17": "calckey-js@npm:^0.0.20":
version: 0.0.17 version: 0.0.20
resolution: "calckey-js@npm:0.0.17" resolution: "calckey-js@npm:0.0.20"
dependencies: dependencies:
autobind-decorator: ^2.4.0 autobind-decorator: ^2.4.0
eventemitter3: ^4.0.7 eventemitter3: ^4.0.7
reconnecting-websocket: ^4.4.0 reconnecting-websocket: ^4.4.0
semver: ^7.3.8 semver: ^7.3.8
checksum: 8047c6d69ed79ac6febd8bf5376ed45117061f8ed0fbfa6119c3b4e949206a08254c830d6ca71a00bfa7edcc0ec8abd3e55e2bf24a5a1d2e59e69a6c774755c9 checksum: fa11582c67ff6964a906e389df23ee5c743a36641a0f9f2b4a34971e3a11c09659cc86436e4678e9a14fada2bd5780e1deb7154ca135551668ca36ef6c782a7e
languageName: node languageName: node
linkType: hard linkType: hard
@ -3835,10 +3835,10 @@ __metadata:
"@types/gulp": 4.0.10 "@types/gulp": 4.0.10
"@types/gulp-rename": 2.0.1 "@types/gulp-rename": 2.0.1
"@typescript-eslint/parser": 5.46.1 "@typescript-eslint/parser": 5.46.1
calckey-js: ^0.0.17 calckey-js: ^0.0.20
cross-env: 7.0.3 cross-env: 7.0.3
cypress: 10.11.0 cypress: 10.11.0
eslint: ^8.30.0 eslint: ^8.31.0
execa: 5.1.1 execa: 5.1.1
gulp: 4.0.2 gulp: 4.0.2
gulp-cssnano: 2.1.3 gulp-cssnano: 2.1.3
@ -4242,24 +4242,24 @@ __metadata:
blurhash: 1.1.5 blurhash: 1.1.5
broadcast-channel: 4.18.1 broadcast-channel: 4.18.1
browser-image-resizer: "https://github.com/misskey-dev/browser-image-resizer.git#commit=0380d12c8e736788ea7f4e6e985175521ea7b23c" browser-image-resizer: "https://github.com/misskey-dev/browser-image-resizer.git#commit=0380d12c8e736788ea7f4e6e985175521ea7b23c"
calckey-js: ^0.0.17 calckey-js: ^0.0.20
chart.js: 4.1.1 chart.js: 4.1.1
chartjs-adapter-date-fns: 2.0.1 chartjs-adapter-date-fns: 2.0.1
chartjs-plugin-gradient: 0.5.1 chartjs-plugin-gradient: 0.5.1
chartjs-plugin-zoom: 1.2.1 chartjs-plugin-zoom: 1.2.1
compare-versions: 5.0.1 compare-versions: 5.0.3
cropperjs: 2.0.0-beta.1 cropperjs: 2.0.0-beta.2
cross-env: 7.0.3 cross-env: 7.0.3
cypress: 10.11.0 cypress: 10.11.0
date-fns: 2.29.3 date-fns: 2.29.3
escape-regexp: 0.0.1 escape-regexp: 0.0.1
eslint: 8.30.0 eslint: 8.31.0
eslint-plugin-import: 2.26.0 eslint-plugin-import: 2.26.0
eslint-plugin-vue: 9.8.0 eslint-plugin-vue: 9.8.0
eventemitter3: 4.0.7 eventemitter3: 4.0.7
idb-keyval: 6.2.0 idb-keyval: 6.2.0
insert-text-at-cursor: 0.3.0 insert-text-at-cursor: 0.3.0
json5: 2.2.2 json5: 2.2.3
katex: 0.16.4 katex: 0.16.4
matter-js: 0.18.0 matter-js: 0.18.0
mfm-js: 0.23.0 mfm-js: 0.23.0
@ -4270,7 +4270,7 @@ __metadata:
rndstr: 1.0.0 rndstr: 1.0.0
rollup: 3.7.5 rollup: 3.7.5
s-age: 1.1.2 s-age: 1.1.2
sass: 1.57.0 sass: 1.57.1
seedrandom: 3.0.5 seedrandom: 3.0.5
start-server-and-test: 1.15.2 start-server-and-test: 1.15.2
strict-event-emitter-types: 2.0.0 strict-event-emitter-types: 2.0.0
@ -4280,9 +4280,9 @@ __metadata:
textarea-caret: 3.1.0 textarea-caret: 3.1.0
three: 0.146.0 three: 0.146.0
throttle-debounce: 5.0.0 throttle-debounce: 5.0.0
tinycolor2: 1.4.2 tinycolor2: 1.5.2
tsc-alias: 1.8.2 tsc-alias: 1.8.2
tsconfig-paths: 4.1.1 tsconfig-paths: 4.1.2
twemoji-parser: 14.0.0 twemoji-parser: 14.0.0
typescript: 4.9.4 typescript: 4.9.4
uuid: 9.0.0 uuid: 9.0.0
@ -4627,10 +4627,10 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"compare-versions@npm:5.0.1": "compare-versions@npm:5.0.3":
version: 5.0.1 version: 5.0.3
resolution: "compare-versions@npm:5.0.1" resolution: "compare-versions@npm:5.0.3"
checksum: 302a4e46224b47b9280cf894c6c87d8df912671fa391dcdbf0e63438d9b0a69fe20dd747fb439e8d54c43af016ff4eaaf0a4c9d8e7ca358bcd12dadf4ad2935e checksum: f66a4bb6ef8ff32031cc92c04dea4bbead039e72a7f6c7df7ef05f5a42ddca9202f8875b7449add54181e73b89f039662a8760c8db0ab036c4e8f653a7cd29c1
languageName: node languageName: node
linkType: hard linkType: hard
@ -4832,13 +4832,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"cropperjs@npm:2.0.0-beta.1": "cropperjs@npm:2.0.0-beta.2":
version: 2.0.0-beta.1 version: 2.0.0-beta.2
resolution: "cropperjs@npm:2.0.0-beta.1" resolution: "cropperjs@npm:2.0.0-beta.2"
dependencies: dependencies:
"@cropper/elements": ^2.0.0-beta.1 "@cropper/elements": ^2.0.0-beta.2
"@cropper/utils": ^2.0.0-beta.1 "@cropper/utils": ^2.0.0-beta.2
checksum: 055fd228cfcb20a489c032740a8eb69247ab29ff69a7fafcfbdbf502174afb598a755f20950bc4dee6ef2698fec29c6103d223f0da9ef9d751c811f6636a9b00 checksum: f1e3972b1a7dcd5f1ecd4cc4ae3a215dbe6fefb3b4adfe0645a9779388ce6e2f4244f2fff44fab88aafabffbf0e415fa375e0cdfeaa9ea0e4b0307203b561548
languageName: node languageName: node
linkType: hard linkType: hard
@ -6025,7 +6025,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"esbuild@npm:^0.15.14": "esbuild@npm:^0.15.18":
version: 0.15.18 version: 0.15.18
resolution: "esbuild@npm:0.15.18" resolution: "esbuild@npm:0.15.18"
dependencies: dependencies:
@ -6347,11 +6347,11 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"eslint@npm:8.30.0, eslint@npm:^8.30.0": "eslint@npm:8.31.0, eslint@npm:^8.31.0":
version: 8.30.0 version: 8.31.0
resolution: "eslint@npm:8.30.0" resolution: "eslint@npm:8.31.0"
dependencies: dependencies:
"@eslint/eslintrc": ^1.4.0 "@eslint/eslintrc": ^1.4.1
"@humanwhocodes/config-array": ^0.11.8 "@humanwhocodes/config-array": ^0.11.8
"@humanwhocodes/module-importer": ^1.0.1 "@humanwhocodes/module-importer": ^1.0.1
"@nodelib/fs.walk": ^1.2.8 "@nodelib/fs.walk": ^1.2.8
@ -6392,7 +6392,7 @@ __metadata:
text-table: ^0.2.0 text-table: ^0.2.0
bin: bin:
eslint: bin/eslint.js eslint: bin/eslint.js
checksum: b7525bb465b342665c3b8bab7e114d514ef1bc4e79f211c919863f9c71767e7412ec82383a22614a92d159783f91101018817000f7c61ce69a5e7015280cafaf checksum: 5e5688bb864edc6b12d165849994812eefa67fb3fc44bb26f53659b63edcd8bcc68389d27cc6cc9e5b79ee22f24b6f311fa3ed047bddcafdec7d84c1b5561e4f
languageName: node languageName: node
linkType: hard linkType: hard
@ -9264,12 +9264,12 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"json5@npm:2.2.2": "json5@npm:2.2.3, json5@npm:^2.2.2":
version: 2.2.2 version: 2.2.3
resolution: "json5@npm:2.2.2" resolution: "json5@npm:2.2.3"
bin: bin:
json5: lib/cli.js json5: lib/cli.js
checksum: 9a878d66b72157b073cf0017f3e5d93ec209fa5943abcb38d37a54b208917c166bd473c26a24695e67a016ce65759aeb89946592991f8f9174fb96c8e2492683 checksum: 2a7436a93393830bce797d4626275152e37e877b265e94ca69c99e3d20c2b9dab021279146a39cdb700e71b2dd32a4cebd1514cd57cee102b1af906ce5040349
languageName: node languageName: node
linkType: hard linkType: hard
@ -9284,7 +9284,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"json5@npm:^2.1.2, json5@npm:^2.1.3, json5@npm:^2.2.1": "json5@npm:^2.1.2, json5@npm:^2.1.3":
version: 2.2.1 version: 2.2.1
resolution: "json5@npm:2.2.1" resolution: "json5@npm:2.2.1"
bin: bin:
@ -12651,14 +12651,14 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"pureimage@npm:0.3.14": "pureimage@npm:0.3.15":
version: 0.3.14 version: 0.3.15
resolution: "pureimage@npm:0.3.14" resolution: "pureimage@npm:0.3.15"
dependencies: dependencies:
jpeg-js: ^0.4.1 jpeg-js: ^0.4.1
opentype.js: ^0.4.3 opentype.js: ^0.4.3
pngjs: ^3.3.1 pngjs: ^3.3.1
checksum: e2fe6cbe2504d0815d778a7fb536c1588546e2eeb97639b4516cb70cefe2e6ed4075bbb6bbb1f8cad74500dd02af2c3119e198dfaae9a0bd02c7138053b45fdf checksum: a650918d18145ff8c5d79fdbadb97501d5177ba323bcf685ff34cffe087e4acd51d841743dafca65cc6767cd191510ed0a3d9a9bf195fd8cc653cbccad231ca4
languageName: node languageName: node
linkType: hard linkType: hard
@ -13503,9 +13503,9 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"sanitize-html@npm:2.8.0": "sanitize-html@npm:2.8.1":
version: 2.8.0 version: 2.8.1
resolution: "sanitize-html@npm:2.8.0" resolution: "sanitize-html@npm:2.8.1"
dependencies: dependencies:
deepmerge: ^4.2.2 deepmerge: ^4.2.2
escape-string-regexp: ^4.0.0 escape-string-regexp: ^4.0.0
@ -13513,20 +13513,20 @@ __metadata:
is-plain-object: ^5.0.0 is-plain-object: ^5.0.0
parse-srcset: ^1.0.2 parse-srcset: ^1.0.2
postcss: ^8.3.11 postcss: ^8.3.11
checksum: 3617dc6a99e87c5875e3dfd80df77ca273ab0729f825ddbffcf40a7dd353208ccfe7b0bb01ac48d03e18c2dd88f7bb934f689b6e4393d7564ee8a4ec039bc840 checksum: 0d35503b261800b736a02648e8b9b2a5206cbc621248cf8dd86d5b9bdd470d0146d74704222d287bd7359a599e8a186cc5b015401237b0244352f18f37465daa
languageName: node languageName: node
linkType: hard linkType: hard
"sass@npm:1.57.0": "sass@npm:1.57.1":
version: 1.57.0 version: 1.57.1
resolution: "sass@npm:1.57.0" resolution: "sass@npm:1.57.1"
dependencies: dependencies:
chokidar: ">=3.0.0 <4.0.0" chokidar: ">=3.0.0 <4.0.0"
immutable: ^4.0.0 immutable: ^4.0.0
source-map-js: ">=0.6.2 <2.0.0" source-map-js: ">=0.6.2 <2.0.0"
bin: bin:
sass: sass.js sass: sass.js
checksum: fb6358b9541dc7a5bc23dbbae85223e99fbadc1f4ae911e7c32c6e22fd7b617e20a0e8cd1213f23c97c621b067bfb0b9ca45e65d6ce4ca5fea5949f41bd428ed checksum: 734a08781bcbe0e8defb2d54864e7012014ed3e68ba5fcb766189b002929019fc37b2f83a18d4be0b5f69ad77317c92396ce6112447ab47a194ed600ae1afb27
languageName: node languageName: node
linkType: hard linkType: hard
@ -13694,9 +13694,9 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"sharp@npm:0.31.2": "sharp@npm:0.31.3":
version: 0.31.2 version: 0.31.3
resolution: "sharp@npm:0.31.2" resolution: "sharp@npm:0.31.3"
dependencies: dependencies:
color: ^4.2.3 color: ^4.2.3
detect-libc: ^2.0.1 detect-libc: ^2.0.1
@ -13707,7 +13707,7 @@ __metadata:
simple-get: ^4.0.1 simple-get: ^4.0.1
tar-fs: ^2.1.1 tar-fs: ^2.1.1
tunnel-agent: ^0.6.0 tunnel-agent: ^0.6.0
checksum: 076717b7a073ea47bb522ff2931b74b6608daeb6f7ae334e4848d47fdf4d23bcb18cd49044fd5fb27ef27a1a4aa87d141894d67d1c4bb15a6e2e63cf4dbe329e checksum: 29fd1dfbc616c6389f53f366cec342b4353d9f2a37e98952ca273db38dca57dfa0f336322d6d763f0fae876042ead22fd86ffe26d70c32ade2458d421db60d04
languageName: node languageName: node
linkType: hard linkType: hard
@ -14447,9 +14447,9 @@ __metadata:
version: 0.0.0-use.local version: 0.0.0-use.local
resolution: "sw@workspace:packages/sw" resolution: "sw@workspace:packages/sw"
dependencies: dependencies:
calckey-js: ^0.0.17 calckey-js: ^0.0.20
esbuild: ^0.15.14 esbuild: ^0.15.18
eslint: ^8.30.0 eslint: ^8.31.0
idb-keyval: ^6.2.0 idb-keyval: ^6.2.0
languageName: unknown languageName: unknown
linkType: soft linkType: soft
@ -14480,12 +14480,12 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"systeminformation@npm:5.16.6": "systeminformation@npm:5.16.9":
version: 5.16.6 version: 5.16.9
resolution: "systeminformation@npm:5.16.6" resolution: "systeminformation@npm:5.16.9"
bin: bin:
systeminformation: lib/cli.js systeminformation: lib/cli.js
checksum: da61c7170d1c46bd4ba48920df66ce1bbaaf73d4e026e14a2d8a8d493fa04c824c53c419443e45d4540e68472613352efd15988c652fc83bed375510ca10ee70 checksum: e590134391ba727b4988ae828483344ae90ee03551ffb578defd3d6d489a8faa519aee563df18fea5f98c2b9e74ca55d29f1ad096d3a70933672338b9a78f03c
conditions: (os=darwin | os=linux | os=win32 | os=freebsd | os=openbsd | os=netbsd | os=sunos | os=android) conditions: (os=darwin | os=linux | os=win32 | os=freebsd | os=openbsd | os=netbsd | os=sunos | os=android)
languageName: node languageName: node
linkType: hard linkType: hard
@ -14710,10 +14710,10 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"tinycolor2@npm:1.4.2": "tinycolor2@npm:1.5.2":
version: 1.4.2 version: 1.5.2
resolution: "tinycolor2@npm:1.4.2" resolution: "tinycolor2@npm:1.5.2"
checksum: 57ed262e08815a4ab0ed933edafdbc6555a17081781766149813b44a080ecbe58b3ee281e81c0e75b42e4d41679f138cfa98eabf043f829e0683c04adb12c031 checksum: 9df1ea9a986b03f1aebb1c1ac17fc561e358493f61b56d73ef2d7207fe7bd74eb71cf745b70487b2b5bb1ce33c9e8af7101088bb0b5fc532eaa1f9d1eda4ef31
languageName: node languageName: node
linkType: hard linkType: hard
@ -14937,14 +14937,14 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"tsconfig-paths@npm:4.1.1": "tsconfig-paths@npm:4.1.2":
version: 4.1.1 version: 4.1.2
resolution: "tsconfig-paths@npm:4.1.1" resolution: "tsconfig-paths@npm:4.1.2"
dependencies: dependencies:
json5: ^2.2.1 json5: ^2.2.2
minimist: ^1.2.6 minimist: ^1.2.6
strip-bom: ^3.0.0 strip-bom: ^3.0.0
checksum: 3a1c6c8f614370ee648313d71bbde2a3bcdfb7e99ad068b7791d7b04fac78f120021c96ab4ec285ba78469f13fc08317a987fdf0d90ea03f8d47305e25bd29c6 checksum: 3d9151ecea139594e25618717de15769ab9f38f8e6d510ac16e592b23e7f7105ea13cec5694c3de7e132c98277b775e18edd1651964164ee6d75737c408494cc
languageName: node languageName: node
linkType: hard linkType: hard