misskey/packages/backend
あわわわとーにゅ 695bbf02ca
Merge commit from fork
(cherry picked from commit d10fdfe9738b17a9d81037c031b40a2cc4cb8038)

* SP-2025-03.1 always wrap icon&thumbnail URLs

if they're not HTTP URLs, the frontend won't be able to display them
anyway (`<img src="mailto:…">` or '<div stile="background-image:
url(nntp:…)">` aren't going to work!), so let's always run them through the
media proxy, which will fail harder (fetching a `javascript:` URL
won't do anything in the backend, might do something in the frontend)
and will always protect the client's address in cases like `gemini:`
where the browser could try to fetch

* SP-2025-03.2 use object binding for more styles

interpolating a random (remote-controlled!) string into a `style`
attribute is a bad idea; using VueJS object binding, we should get
proper quoting and therefore safe parse failures instead of CSS
injections / XSS

* SP-2025-03.3 slightly more robust "self" URL handling

parse URLs instead of treating them as strings; this is still not
perfect, but the `URL` class only handles full URLs, not relative
ones, so there's so way to ask it "give me a URL object that
represents this resource relative to this base URL"

notice that passing very weird URLs to `MkUrl` and `MkUrlPreview` will
break the frontend (in dev mode) because there's an untrapped `new
URL(…)` that may explode; production builds seem to safely ignore the
error, though

---------

Co-authored-by: Julia <julia@insertdomain.name>
Co-authored-by: dakkar <dakkar@thenautilus.net>
2025-05-01 21:29:39 +09:00
..
.vscode Update settings.json 2022-04-15 21:33:00 +09:00
assets feat(note): 予約投稿 (MisskeyIO#890) 2025-01-16 22:35:27 +09:00
migration feat(SSO): メールアドレスのnormalizeを設定可能にする (MisskeyIO#971) 2025-04-22 00:14:13 +09:00
nsfw-model feat: auto nsfw detection (#8840) 2022-07-07 21:06:37 +09:00
scripts fix(backend): pnpm devが動作しない問題を修正 (MisskeyIO#641) 2024-05-24 21:39:40 +09:00
src Merge commit from fork 2025-05-01 21:29:39 +09:00
test spec(test): DragonflyDBのフラグ見直し (MisskeyIO#977) 2025-04-16 09:55:33 +09:00
test-server update deps (MisskeyIO#833) 2024-12-19 05:35:13 +09:00
.eslintignore use eslint 2021-11-12 10:35:41 +09:00
.eslintrc.cjs test(server): add validation test of api:notes/create (#10090) 2023-02-26 11:28:05 +09:00
.madgerc Create .madgerc 2022-09-20 01:04:08 +09:00
.swcrc update deps (MisskeyIO#833) 2024-12-19 05:35:13 +09:00
jest.config.cjs enhance(backend): テストの高速化 (#12939) 2024-01-08 17:43:52 +09:00
jest.config.e2e.cjs update deps (MisskeyIO#833) 2024-12-19 05:35:13 +09:00
jest.config.unit.cjs enhance(backend): テストの高速化 (#12939) 2024-01-08 17:43:52 +09:00
jsconfig.json use eslint 2021-11-12 10:35:41 +09:00
ormconfig.js fix: postgre -> postgres (#9814) 2023-02-07 19:50:38 +09:00
package.json update deps (MisskeyIO#978) 2025-04-22 05:56:50 +09:00
README.md chore: ✌️ 2022-12-24 14:39:17 +09:00
tsconfig.json code cleanup (MisskeyIO#825) 2024-11-27 05:48:25 +09:00

Misskey Backend