Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2024.9.0으로 업그레이드 #19

Merged
merged 381 commits into from
Oct 20, 2024
Merged
Changes from 1 commit
Commits
Show all changes
381 commits
Select commit Hold shift + click to select a range
6b2072f
fix(backend/antenna): キーワードが与えられなかった場合のエラーをApiErrorとして投げる (#14491)
KisaragiEffective Sep 15, 2024
366b79e
Update CHANGELOG.md
syuilo Sep 15, 2024
07f26bc
refactor(backend): use Reflet for autobind deco (#14482)
zzau13 Sep 15, 2024
0e4b6d1
enhance(frontend): adminのファイルリストでセンシティブファイルに枠線を追加 (#14510)
kakkokari-gtyih Sep 15, 2024
887c709
chore(deps): bump body-parser from 1.20.2 to 1.20.3 in /packages/back…
dependabot[bot] Sep 15, 2024
7d7a12d
fix(deps): broken lockfile (#14556)
kakkokari-gtyih Sep 15, 2024
bca0224
remove duplication
seojangho Sep 16, 2024
72e96e8
revert some of c49a34811f
seojangho Sep 16, 2024
8dfc22c
eliminate mixed usage of updateMode and editMode
seojangho Sep 16, 2024
36af302
(revert me later: temporarily)
seojangho Sep 16, 2024
60dfc8f
fix updatedAtHistory is undefined
seojangho Sep 16, 2024
91a3eb8
remove openDetail();
seojangho Sep 16, 2024
9b4bc55
Debug note edit (#5)
HotoRas Sep 16, 2024
191baa3
[ci skip] refactor: fast-forward 대비 버전명 변경
HotoRas Sep 17, 2024
878ae5b
feat (frontend:skin): 고양이별용 스킨 추가
HotoRas Sep 17, 2024
5a4e37e
feat (frontend): 오류 화면 개선 (커스텀 css)
HotoRas Sep 17, 2024
ca67932
[ci skip] ::가 아니잖아;
HotoRas Sep 17, 2024
6bd6af4
fix(frontend): 絵文字関連のスタイルが崩れているのを修正 (#14559)
kakkokari-gtyih Sep 17, 2024
0134e6e
refactor
syuilo Sep 17, 2024
cacdf9d
refactor
syuilo Sep 17, 2024
a5e61b8
Revert "refactor"
syuilo Sep 17, 2024
daf9ae5
ScratchpadにUIインスペクターを追加 (#14565)
FineArchs Sep 17, 2024
ce95323
fix(antenna): src=list && userListId=null の場合クエリータイムアウトが発生する問題を修正 (Mi…
kakkokari-gtyih Sep 17, 2024
3bf63dd
fix(frontend): 設定変更時のリロード確認ダイアログが複数個表示されることがある問題を修正 (#14543)
kakkokari-gtyih Sep 17, 2024
2e1fe23
feat (frontend): 폰트 변경
HotoRas Sep 18, 2024
ceb4640
fix(frontend): viteの一時ファイルがgitの変更に含まれないように (#14571)
kakkokari-gtyih Sep 18, 2024
4ac8aad
feat: UserWebhook/SystemWebhookのテスト送信機能を追加 (#14489)
samunohito Sep 19, 2024
f5563c8
Update CHANGELOG.md (書き方を揃える)
kakkokari-gtyih Sep 19, 2024
2d0e9e0
Bump version to 2024.9.0-alpha.0
github-actions[bot] Sep 19, 2024
8d23122
fix(frontend): run pnpm build-assets (#14585)
kakkokari-gtyih Sep 19, 2024
f585f70
Update CHANGELOG.md (埋め込み機能のドキュメントへのリンク)
kakkokari-gtyih Sep 20, 2024
0b062f1
Misskey® Reactions Buffering Technology™ (#14579)
syuilo Sep 20, 2024
f0834ca
enhance: ユーザーコンテンツのインポート操作の実行可否をロールで制御できるように (#14583)
kakkokari-gtyih Sep 20, 2024
7e9d54f
fix(frontend): ファイルの詳細ページのファイルの説明で改行が正しく表示されない問題を修正 (#14588)
kakkokari-gtyih Sep 20, 2024
a18a6ac
chore(deps): bump actions/setup-node from 4.0.3 to 4.0.4 (#14590)
dependabot[bot] Sep 20, 2024
2ee19ee
chore(deps-dev): bump vite in /scripts/changelog-checker (#14569)
dependabot[bot] Sep 20, 2024
d3f1b0f
Bump version to 2024.9.0-alpha.1
github-actions[bot] Sep 20, 2024
98f2f2f
Remote Avatar 데코레이션용 캐시
yunochi Nov 30, 2023
a147152
fixup: phase 1
HotoRas Sep 21, 2024
c7ad0a7
Avatar decoration 연합에 offsetX, offsetY 추가
yunochi Dec 25, 2023
f837880
리모트 유저의 여러 아바타 장식 연합 지원
yunochi Dec 25, 2023
7bf1a0e
fixup: phase 2
HotoRas Sep 21, 2024
ccf1ee1
Support Remote Avatar Decoration view
caipira113 Nov 8, 2023
51648f0
fixup: phase 3
HotoRas Sep 21, 2024
b32061b
Update changelog
HotoRas Sep 21, 2024
d5f7753
Neko feat/remote avatar deco (#6)
HotoRas Sep 21, 2024
2ddfbe9
fix: update migration epoch
HotoRas Sep 21, 2024
2e1a1e6
로케일 번역: 1102번까지 수정하였음
laonmofu May 7, 2024
9f93fc3
로케일 작업
laonmofu May 15, 2024
7b5b35a
로케일 번역 KR/냥체
laonmofu May 15, 2024
c48b3d9
feat (frontend-locale): 이름 정상화
HotoRas Sep 21, 2024
9334178
chore (gh:pr-template)
HotoRas Sep 21, 2024
d4d15f3
fix: EmailServiceでインラインスタイルを適用するように (#14600)
1673beta Sep 21, 2024
9cd784c
ci: api.jsonの差分がない時は折りたたみを生成しないようにする (#14598)
KisaragiEffective Sep 21, 2024
85f46f8
fix(backend): `Retry-After`ヘッダーが実際には送信されなかった問題を修正 (#14597)
kakkokari-gtyih Sep 21, 2024
e9085e4
:art:
syuilo Sep 21, 2024
3d92ef1
fix rbt
syuilo Sep 21, 2024
00ccc22
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Sep 21, 2024
67a5119
Bump version to 2024.9.0-alpha.2
github-actions[bot] Sep 21, 2024
9ac4d3d
Check SPDX information properly (#14604)
woxtu Sep 21, 2024
56c49e3
Merge commit '9ac4d3da0a4bba9149fe510f59ee081dc8a2fcb2' into nekoplan…
HotoRas Sep 22, 2024
a8bdf10
Release 2024.9.0-alpha.2+neko.rc
HotoRas Sep 22, 2024
7640866
update deps (#14594)
syuilo Sep 22, 2024
3ad5c75
:art:
syuilo Sep 22, 2024
023fa30
refactor/perf(backend): provide metadata statically (#14601)
syuilo Sep 22, 2024
891bbcf
Bump version to 2024.9.0-alpha.3
github-actions[bot] Sep 22, 2024
3df1bb2
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
8ad9f72
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
0e92cbf
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
01ec708
ffix(frontend): lint fixes for tweak control panel (#14607)
kakkokari-gtyih Sep 22, 2024
cf128e6
fix: 유즈가 그렇게까지 자주 졸려하면 안 되는데
HotoRas Sep 22, 2024
c0c1a4d
fix (backend): 여러 개 연합하는 코드가 날라가서 다시 맞춰왔습니다
HotoRas Sep 22, 2024
d435d04
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
6ba97a7
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
bd5f25c
fix rbt bug?
syuilo Sep 22, 2024
1d5a302
Bump version to 2024.9.0-alpha.4
github-actions[bot] Sep 22, 2024
e37c9af
저기서도 졸리다고 하려고?
HotoRas Sep 22, 2024
4bfab72
fix (frontend: redis disconnection): 아니 좀 잘래...
HotoRas Sep 22, 2024
837d830
유즈 빼꼼
HotoRas Sep 22, 2024
11ca95d
찐빠 하나 (얜 빌드할 필요 없음)
HotoRas Sep 22, 2024
e87cbd2
fix(frontend): lint fixe for tweak control panel (#14610)
kakkokari-gtyih Sep 22, 2024
0bbeb40
fix typo (#14609)
kakkokari-gtyih Sep 22, 2024
2762e29
:art:
syuilo Sep 22, 2024
973d836
:art:
syuilo Sep 22, 2024
0041ad3
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
736d828
refactor
syuilo Sep 22, 2024
e6e4182
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
f93a575
:art:
syuilo Sep 22, 2024
76b9bc4
Bump version to 2024.9.0-alpha.5
github-actions[bot] Sep 22, 2024
2c61535
fix(misskey-js): wrong hashtag channel param type (#14611)
zyoshoka Sep 23, 2024
1ba09e1
enhance(frontend): improve forms usability
syuilo Sep 23, 2024
cd52dc7
:art:
syuilo Sep 23, 2024
2aebdb8
enhance(frontend): tweak control panel
syuilo Sep 23, 2024
3f0aaaa
perf(embed): improve embed performance (#14613)
syuilo Sep 23, 2024
733fd56
Bump version to 2024.9.0-alpha.6
github-actions[bot] Sep 23, 2024
7f7445a
refactor(misskey-games): Misskey Games系パッケージのlint修正+Lint CI整備 (#14612)
kakkokari-gtyih Sep 23, 2024
e673c14
fix(backend): happy-domを使用後にcloseするように (#14615)
kakkokari-gtyih Sep 23, 2024
0c6d1ec
refactor(frontend): popupMenuの項目作成時に三項演算子をなるべく使わないように (#14554)
kakkokari-gtyih Sep 23, 2024
cd247b9
fix(frontend): MkRangeのタッチ操作時にtooltipが複数重なって表示されないように (#14548)
kakkokari-gtyih Sep 23, 2024
6378dfb
Bump version to 2024.9.0-alpha.7
github-actions[bot] Sep 23, 2024
a37df2c
fix(frontend): weird AP delivered chart in control panel (#14481)
zyoshoka Sep 24, 2024
6898489
Fix: Continue importing from file if single emoji import fails (#14461)
winrg Sep 24, 2024
23a07c2
ci: fix syntax error (#14602)
KisaragiEffective Sep 24, 2024
98de7ca
fix(frontend): 連合一覧等のページネーションが壊れていたのを修正 (#14439)
samunohito Sep 24, 2024
3674e9b
feat: adminのファイル一覧画面で、ファイルが添付されているノートを一覧できるように (#14403)
kakkokari-gtyih Sep 24, 2024
aef1506
Playの編集画面の保存ボタン等をstickyにする など (#14429)
FineArchs Sep 24, 2024
1b2b95e
Bump version to 2024.9.0-alpha.8
github-actions[bot] Sep 24, 2024
4be307f
refactor
syuilo Sep 24, 2024
9612195
enhance(frontend): tweak control panel
syuilo Sep 24, 2024
6ee55e1
Update CONTRIBUTING.md
syuilo Sep 24, 2024
423bfc8
:art:
syuilo Sep 24, 2024
ca967e8
:art:
syuilo Sep 24, 2024
1d8bfe4
:art:
syuilo Sep 24, 2024
6a1a2be
fix(backend): RBTの修正 (#14621)
kakkokari-gtyih Sep 24, 2024
7045547
Bump version to 2024.9.0-alpha.9
github-actions[bot] Sep 24, 2024
c9819ba
fix(frontend-embed): #14613 で抜け落ちた処理を戻す (#14623)
kakkokari-gtyih Sep 24, 2024
1679a40
:art:
syuilo Sep 24, 2024
9d3a331
:art:
syuilo Sep 24, 2024
c88957c
:art:
syuilo Sep 25, 2024
53682f5
:art:
syuilo Sep 25, 2024
dd124a8
Fix: `<link rel="alternate">`を追って照会するのはOKレスポンスが返却された場合のみに (#14627)
kakkokari-gtyih Sep 25, 2024
4b3ecd4
New Crowdin updates (#14434)
syuilo Sep 25, 2024
8890a7a
Bump version to 2024.9.0-alpha.10
github-actions[bot] Sep 25, 2024
244bcaf
fix(docs): RBTの表記ゆれを訂正 (#14628)
kakkokari-gtyih Sep 25, 2024
5c94b4c
:art:
syuilo Sep 25, 2024
5c62cbc
tweak style
syuilo Sep 25, 2024
8c3be57
fix(frontend-embed): URLエンコードされた文字列が正常に読み込めない問題を修正 (#14630)
kakkokari-gtyih Sep 25, 2024
0f8b15f
fix(frontend-embed): fix instanceticker, remove directives (#14631)
kakkokari-gtyih Sep 25, 2024
f2385a8
fix(misskey-js): correct `noteUpdated` event type (#14632)
zyoshoka Sep 25, 2024
aee9848
fix(backend): embedの動作に必要な値を復活させる (#14633)
kakkokari-gtyih Sep 25, 2024
fde94f6
Update about-misskey.vue
syuilo Sep 25, 2024
d8dd168
Add Sign in with passkey Button (#14577)
yunochi Sep 25, 2024
4c76ea1
Update CHANGELOG.md
syuilo Sep 25, 2024
7134d24
perf(backend): Defer instance metadata update (#14558)
KOBA789 Sep 26, 2024
31988db
:art:
syuilo Sep 26, 2024
89841e4
enhance(frontend): 絵文字ピッカーをドロワー表示するか自由に設定可能に
syuilo Sep 26, 2024
d8a2eeb
feat: エクスポート完了時に通知を発行するように (#14484)
kakkokari-gtyih Sep 26, 2024
3591768
update deps (#14594)
syuilo Sep 22, 2024
d721f21
:art:
syuilo Sep 22, 2024
de0f064
refactor/perf(backend): provide metadata statically (#14601)
syuilo Sep 22, 2024
9c33765
Bump version to 2024.9.0-alpha.3
github-actions[bot] Sep 22, 2024
a122ca6
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
2518d5b
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
695e632
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
f5c166e
ffix(frontend): lint fixes for tweak control panel (#14607)
kakkokari-gtyih Sep 22, 2024
26c8ac4
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
a766338
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
a3ff428
fix rbt bug?
syuilo Sep 22, 2024
5e8b8a5
Bump version to 2024.9.0-alpha.4
github-actions[bot] Sep 22, 2024
4823881
fix(frontend): lint fixe for tweak control panel (#14610)
kakkokari-gtyih Sep 22, 2024
9db5da5
fix typo (#14609)
kakkokari-gtyih Sep 22, 2024
d6fce09
:art:
syuilo Sep 22, 2024
2033f34
:art:
syuilo Sep 22, 2024
acb7f54
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
205a310
refactor
syuilo Sep 22, 2024
87ba396
enhance(frontend): tweak control panel
syuilo Sep 22, 2024
1a880c7
:art:
syuilo Sep 22, 2024
0789a52
Bump version to 2024.9.0-alpha.5
github-actions[bot] Sep 22, 2024
9dce06a
fix(misskey-js): wrong hashtag channel param type (#14611)
zyoshoka Sep 23, 2024
d7583e4
enhance(frontend): improve forms usability
syuilo Sep 23, 2024
d36e77f
:art:
syuilo Sep 23, 2024
da8b767
enhance(frontend): tweak control panel
syuilo Sep 23, 2024
aad4f2a
perf(embed): improve embed performance (#14613)
syuilo Sep 23, 2024
0021b68
Bump version to 2024.9.0-alpha.6
github-actions[bot] Sep 23, 2024
bb915ab
refactor(misskey-games): Misskey Games系パッケージのlint修正+Lint CI整備 (#14612)
kakkokari-gtyih Sep 23, 2024
6f351d2
fix(backend): happy-domを使用後にcloseするように (#14615)
kakkokari-gtyih Sep 23, 2024
4ebae20
refactor(frontend): popupMenuの項目作成時に三項演算子をなるべく使わないように (#14554)
kakkokari-gtyih Sep 23, 2024
ab30dbb
fix(frontend): MkRangeのタッチ操作時にtooltipが複数重なって表示されないように (#14548)
kakkokari-gtyih Sep 23, 2024
d55224b
Bump version to 2024.9.0-alpha.7
github-actions[bot] Sep 23, 2024
a246e06
fix(frontend): weird AP delivered chart in control panel (#14481)
zyoshoka Sep 24, 2024
8c553ec
Fix: Continue importing from file if single emoji import fails (#14461)
winrg Sep 24, 2024
a9a670b
ci: fix syntax error (#14602)
KisaragiEffective Sep 24, 2024
e816bf0
fix(frontend): 連合一覧等のページネーションが壊れていたのを修正 (#14439)
samunohito Sep 24, 2024
8171282
feat: adminのファイル一覧画面で、ファイルが添付されているノートを一覧できるように (#14403)
kakkokari-gtyih Sep 24, 2024
25002bf
Playの編集画面の保存ボタン等をstickyにする など (#14429)
FineArchs Sep 24, 2024
2f3dca9
Bump version to 2024.9.0-alpha.8
github-actions[bot] Sep 24, 2024
47102e7
refactor
syuilo Sep 24, 2024
3d65a12
enhance(frontend): tweak control panel
syuilo Sep 24, 2024
3b723c6
Update CONTRIBUTING.md
syuilo Sep 24, 2024
b9a2556
:art:
syuilo Sep 24, 2024
a3ff871
:art:
syuilo Sep 24, 2024
284be71
:art:
syuilo Sep 24, 2024
2a79caf
fix(backend): RBTの修正 (#14621)
kakkokari-gtyih Sep 24, 2024
7d86ac5
Bump version to 2024.9.0-alpha.9
github-actions[bot] Sep 24, 2024
2568fc4
fix(frontend-embed): #14613 で抜け落ちた処理を戻す (#14623)
kakkokari-gtyih Sep 24, 2024
3a482fe
:art:
syuilo Sep 24, 2024
1aa19d0
:art:
syuilo Sep 24, 2024
4131f97
:art:
syuilo Sep 25, 2024
0cc76df
:art:
syuilo Sep 25, 2024
ec9cf70
Fix: `<link rel="alternate">`を追って照会するのはOKレスポンスが返却された場合のみに (#14627)
kakkokari-gtyih Sep 25, 2024
e848aa1
New Crowdin updates (#14434)
syuilo Sep 25, 2024
4a06a5c
Bump version to 2024.9.0-alpha.10
github-actions[bot] Sep 25, 2024
6b4aa1d
fix(docs): RBTの表記ゆれを訂正 (#14628)
kakkokari-gtyih Sep 25, 2024
b697aff
:art:
syuilo Sep 25, 2024
30faf68
tweak style
syuilo Sep 25, 2024
6c90af2
fix(frontend-embed): URLエンコードされた文字列が正常に読み込めない問題を修正 (#14630)
kakkokari-gtyih Sep 25, 2024
059b31b
fix(frontend-embed): fix instanceticker, remove directives (#14631)
kakkokari-gtyih Sep 25, 2024
3a803d5
fix(misskey-js): correct `noteUpdated` event type (#14632)
zyoshoka Sep 25, 2024
4711da7
fix(backend): embedの動作に必要な値を復活させる (#14633)
kakkokari-gtyih Sep 25, 2024
cbe3f9e
Update about-misskey.vue
syuilo Sep 25, 2024
47f94bd
Add Sign in with passkey Button (#14577)
yunochi Sep 25, 2024
ce7571a
Update CHANGELOG.md
syuilo Sep 25, 2024
094582d
perf(backend): Defer instance metadata update (#14558)
KOBA789 Sep 26, 2024
b4715e7
:art:
syuilo Sep 26, 2024
0b522bd
enhance(frontend): 絵文字ピッカーをドロワー表示するか自由に設定可能に
syuilo Sep 26, 2024
8a34e0c
feat: エクスポート完了時に通知を発行するように (#14484)
kakkokari-gtyih Sep 26, 2024
c337019
lint: 빌드는 되니까 된 거 아닐까???
HotoRas Sep 27, 2024
b83a2f3
test(backend): Add test for Passkey API (#14635)
yunochi Sep 27, 2024
27a256b
show shown (#14639)
FineArchs Sep 27, 2024
e4d4cc5
:art:
syuilo Sep 28, 2024
28e9d4e
feat: フォローされた際のメッセージを設定できるようにする (#14430)
syuilo Sep 28, 2024
6fdb2b1
update deps
syuilo Sep 28, 2024
25670b5
Mk:C:containerのborderStyleとborderRadiusを設定できるように (#14638)
FineArchs Sep 28, 2024
ca022b9
Bump version to 2024.9.0-alpha.11
github-actions[bot] Sep 28, 2024
9e91980
enhance(backend): add user.score for moderation purpose
syuilo Sep 28, 2024
f49d792
:art:
syuilo Sep 28, 2024
3f3c59e
:art:
syuilo Sep 28, 2024
e5856c6
:art:
syuilo Sep 28, 2024
6964b91
Update ja-JP.yml
syuilo Sep 28, 2024
afbba1f
Update WebhookTestService.ts
syuilo Sep 28, 2024
c3b0e1a
Merge branch 'develop' of https://github.com/misskey-dev/misskey into…
syuilo Sep 28, 2024
f0d0cd2
wip (#14643)
syuilo Sep 28, 2024
57effa9
Bump version to 2024.9.0-alpha.12
github-actions[bot] Sep 28, 2024
15f2e14
tweak MkCondensedLine
syuilo Sep 29, 2024
088707c
enhance(frontend): cwでも絵文字メニューを開けるように (#14647)
kakkokari-gtyih Sep 29, 2024
0871156
New Crowdin updates (#14629)
syuilo Sep 29, 2024
1184436
fix(backend): update and re-enable Bull Dashboard (#14648)
zyoshoka Sep 29, 2024
2ea4970
Bump version to 2024.9.0-alpha.13
github-actions[bot] Sep 29, 2024
d6e1f02
Bump version to 2024.9.0-beta.14
github-actions[bot] Sep 29, 2024
781e64a
Release: 2024.9.0
github-actions[bot] Sep 29, 2024
4f34a4e
[skip ci] Update CHANGELOG.md (prepend template)
github-actions[bot] Sep 29, 2024
f7c2a83
Merge commit '4f34a4e4d81cb47f585ec1f614019837fc9b6cc4' into nekoplan…
HotoRas Sep 30, 2024
85f424c
Update Changelog-neko
HotoRas Sep 30, 2024
c405247
Fix lockfile
HotoRas Sep 30, 2024
dd8bd68
backend: Fix migration DDL
seojangho Sep 30, 2024
ddd2632
backend: Fix migration DDL (#9)
HotoRas Sep 30, 2024
620b115
style: Japanese font for mobile systems
HotoRas Oct 7, 2024
b2e0ba9
폰트 섞기
HotoRas Oct 8, 2024
c7bd124
폰트를 몇 번을 엎는 거야
HotoRas Oct 8, 2024
ce476ec
Revert 폰트를 몇 번을 엎는 건데
HotoRas Oct 8, 2024
c7f33f7
한글 자모가 빠졌잖아 멍청아
HotoRas Oct 8, 2024
731b048
Fix (frontend): 노트 세부 메뉴가 표시되지 않음
HotoRas Oct 9, 2024
088615f
Fix: lint and misskey-js
HotoRas Oct 9, 2024
4d704e3
Update pnpm-lock.yaml
HotoRas Oct 9, 2024
c6b37bc
Fix (backend): nsfwjs import/export issue
HotoRas Oct 9, 2024
df46ee5
Update Changelog-neko.md
HotoRas Oct 9, 2024
1bd4665
asdf
HotoRas Oct 9, 2024
fcb13f6
Fix (backend): Downgrade nsfwjs
HotoRas Oct 9, 2024
3b388eb
Hotfix (frontend): 노트 컨텍스트 메뉴 고치는 중
HotoRas Oct 12, 2024
d470443
refactor (frontend): 추가적인 파라미터는 배제하기
HotoRas Oct 13, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
enhance: ユーザーコンテンツのインポート操作の実行可否をロールで制御できるように (misskey-dev#14583)
* enhance: インポート操作の実行可否をロールで制御できるように

* Update Changelog
kakkokari-gtyih authored Sep 20, 2024

Unverified

This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
commit f0834ca14c75df429f7d8524f24bc4749639032a
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -2,6 +2,7 @@

### General
- Feat: UserWebhookとSystemWebhookのテスト送信機能を追加 (#14445)
- Enhance: ユーザーによるコンテンツインポートの可否をロールポリシーで制御できるように

### Client
- Feat: ノート単体・ユーザーのノート・クリップのノートの埋め込み機能
20 changes: 20 additions & 0 deletions locales/index.d.ts
Original file line number Diff line number Diff line change
@@ -6766,6 +6766,26 @@ export interface Locale extends ILocale {
* アイコンデコレーションの最大取付個数
*/
"avatarDecorationLimit": string;
/**
* アンテナのインポートを許可
*/
"canImportAntennas": string;
/**
* ブロックのインポートを許可
*/
"canImportBlocking": string;
/**
* フォローのインポートを許可
*/
"canImportFollowing": string;
/**
* ミュートのインポートを許可
*/
"canImportMuting": string;
/**
* リストのインポートを許可
*/
"canImportUserLists": string;
};
"_condition": {
/**
5 changes: 5 additions & 0 deletions locales/ja-JP.yml
Original file line number Diff line number Diff line change
@@ -1748,6 +1748,11 @@ _role:
canSearchNotes: "ノート検索の利用"
canUseTranslator: "翻訳機能の利用"
avatarDecorationLimit: "アイコンデコレーションの最大取付個数"
canImportAntennas: "アンテナのインポートを許可"
canImportBlocking: "ブロックのインポートを許可"
canImportFollowing: "フォローのインポートを許可"
canImportMuting: "ミュートのインポートを許可"
canImportUserLists: "リストのインポートを許可"
_condition:
roleAssignedTo: "マニュアルロールにアサイン済み"
isLocal: "ローカルユーザー"
15 changes: 15 additions & 0 deletions packages/backend/src/core/RoleService.ts
Original file line number Diff line number Diff line change
@@ -58,6 +58,11 @@ export type RolePolicies = {
userEachUserListsLimit: number;
rateLimitFactor: number;
avatarDecorationLimit: number;
canImportAntennas: boolean;
canImportBlocking: boolean;
canImportFollowing: boolean;
canImportMuting: boolean;
canImportUserLists: boolean;
};

export const DEFAULT_POLICIES: RolePolicies = {
@@ -87,6 +92,11 @@ export const DEFAULT_POLICIES: RolePolicies = {
userEachUserListsLimit: 50,
rateLimitFactor: 1,
avatarDecorationLimit: 1,
canImportAntennas: true,
canImportBlocking: true,
canImportFollowing: true,
canImportMuting: true,
canImportUserLists: true,
};

@Injectable()
@@ -387,6 +397,11 @@ export class RoleService implements OnApplicationShutdown, OnModuleInit {
userEachUserListsLimit: calc('userEachUserListsLimit', vs => Math.max(...vs)),
rateLimitFactor: calc('rateLimitFactor', vs => Math.max(...vs)),
avatarDecorationLimit: calc('avatarDecorationLimit', vs => Math.max(...vs)),
canImportAntennas: calc('canImportAntennas', vs => vs.some(v => v === true)),
canImportBlocking: calc('canImportBlocking', vs => vs.some(v => v === true)),
canImportFollowing: calc('canImportFollowing', vs => vs.some(v => v === true)),
canImportMuting: calc('canImportMuting', vs => vs.some(v => v === true)),
canImportUserLists: calc('canImportUserLists', vs => vs.some(v => v === true)),
};
}

20 changes: 20 additions & 0 deletions packages/backend/src/models/json-schema/role.ts
Original file line number Diff line number Diff line change
@@ -272,6 +272,26 @@ export const packedRolePoliciesSchema = {
type: 'integer',
optional: false, nullable: false,
},
canImportAntennas: {
type: 'boolean',
optional: false, nullable: false,
},
canImportBlocking: {
type: 'boolean',
optional: false, nullable: false,
},
canImportFollowing: {
type: 'boolean',
optional: false, nullable: false,
},
canImportMuting: {
type: 'boolean',
optional: false, nullable: false,
},
canImportUserLists: {
type: 'boolean',
optional: false, nullable: false,
},
},
} as const;

Original file line number Diff line number Diff line change
@@ -16,6 +16,7 @@ import { ApiError } from '../../error.js';
export const meta = {
secure: true,
requireCredential: true,
requireRolePolicy: 'canImportAntennas',
prohibitMoved: true,

limit: {
Original file line number Diff line number Diff line change
@@ -15,6 +15,7 @@ import { ApiError } from '../../error.js';
export const meta = {
secure: true,
requireCredential: true,
requireRolePolicy: 'canImportBlocking',
prohibitMoved: true,

limit: {
Original file line number Diff line number Diff line change
@@ -15,6 +15,7 @@ import { ApiError } from '../../error.js';
export const meta = {
secure: true,
requireCredential: true,
requireRolePolicy: 'canImportFollowing',
prohibitMoved: true,
limit: {
duration: ms('1hour'),
Original file line number Diff line number Diff line change
@@ -15,6 +15,7 @@ import { ApiError } from '../../error.js';
export const meta = {
secure: true,
requireCredential: true,
requireRolePolicy: 'canImportMuting',
prohibitMoved: true,

limit: {
Original file line number Diff line number Diff line change
@@ -15,6 +15,7 @@ import { ApiError } from '../../error.js';
export const meta = {
secure: true,
requireCredential: true,
requireRolePolicy: 'canImportUserLists',
prohibitMoved: true,
limit: {
duration: ms('1hour'),
5 changes: 5 additions & 0 deletions packages/frontend-shared/js/const.ts
Original file line number Diff line number Diff line change
@@ -98,6 +98,11 @@ export const ROLE_POLICIES = [
'userEachUserListsLimit',
'rateLimitFactor',
'avatarDecorationLimit',
'canImportAntennas',
'canImportBlocking',
'canImportFollowing',
'canImportMuting',
'canImportUserLists',
] as const;

// なんか動かない
100 changes: 100 additions & 0 deletions packages/frontend/src/pages/admin/roles.editor.vue
Original file line number Diff line number Diff line change
@@ -590,6 +590,106 @@ SPDX-License-Identifier: AGPL-3.0-only
</MkRange>
</div>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportAntennas, 'canImportAntennas'])">
<template #label>{{ i18n.ts._role._options.canImportAntennas }}</template>
<template #suffix>
<span v-if="role.policies.canImportAntennas.useDefault" :class="$style.useDefaultLabel">{{ i18n.ts._role.useBaseValue }}</span>
<span v-else>{{ role.policies.canImportAntennas.value ? i18n.ts.yes : i18n.ts.no }}</span>
<span :class="$style.priorityIndicator"><i :class="getPriorityIcon(role.policies.canImportAntennas)"></i></span>
</template>
<div class="_gaps">
<MkSwitch v-model="role.policies.canImportAntennas.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts._role.useBaseValue }}</template>
</MkSwitch>
<MkSwitch v-model="role.policies.canImportAntennas.value" :disabled="role.policies.canImportAntennas.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
<MkRange v-model="role.policies.canImportAntennas.priority" :min="0" :max="2" :step="1" easing :textConverter="(v) => v === 0 ? i18n.ts._role._priority.low : v === 1 ? i18n.ts._role._priority.middle : v === 2 ? i18n.ts._role._priority.high : ''">
<template #label>{{ i18n.ts._role.priority }}</template>
</MkRange>
</div>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportBlocking, 'canImportBlocking'])">
<template #label>{{ i18n.ts._role._options.canImportBlocking }}</template>
<template #suffix>
<span v-if="role.policies.canImportBlocking.useDefault" :class="$style.useDefaultLabel">{{ i18n.ts._role.useBaseValue }}</span>
<span v-else>{{ role.policies.canImportBlocking.value ? i18n.ts.yes : i18n.ts.no }}</span>
<span :class="$style.priorityIndicator"><i :class="getPriorityIcon(role.policies.canImportBlocking)"></i></span>
</template>
<div class="_gaps">
<MkSwitch v-model="role.policies.canImportBlocking.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts._role.useBaseValue }}</template>
</MkSwitch>
<MkSwitch v-model="role.policies.canImportBlocking.value" :disabled="role.policies.canImportBlocking.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
<MkRange v-model="role.policies.canImportBlocking.priority" :min="0" :max="2" :step="1" easing :textConverter="(v) => v === 0 ? i18n.ts._role._priority.low : v === 1 ? i18n.ts._role._priority.middle : v === 2 ? i18n.ts._role._priority.high : ''">
<template #label>{{ i18n.ts._role.priority }}</template>
</MkRange>
</div>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportFollowing, 'canImportFollowing'])">
<template #label>{{ i18n.ts._role._options.canImportFollowing }}</template>
<template #suffix>
<span v-if="role.policies.canImportFollowing.useDefault" :class="$style.useDefaultLabel">{{ i18n.ts._role.useBaseValue }}</span>
<span v-else>{{ role.policies.canImportFollowing.value ? i18n.ts.yes : i18n.ts.no }}</span>
<span :class="$style.priorityIndicator"><i :class="getPriorityIcon(role.policies.canImportFollowing)"></i></span>
</template>
<div class="_gaps">
<MkSwitch v-model="role.policies.canImportFollowing.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts._role.useBaseValue }}</template>
</MkSwitch>
<MkSwitch v-model="role.policies.canImportFollowing.value" :disabled="role.policies.canImportFollowing.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
<MkRange v-model="role.policies.canImportFollowing.priority" :min="0" :max="2" :step="1" easing :textConverter="(v) => v === 0 ? i18n.ts._role._priority.low : v === 1 ? i18n.ts._role._priority.middle : v === 2 ? i18n.ts._role._priority.high : ''">
<template #label>{{ i18n.ts._role.priority }}</template>
</MkRange>
</div>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportMuting, 'canImportMuting'])">
<template #label>{{ i18n.ts._role._options.canImportMuting }}</template>
<template #suffix>
<span v-if="role.policies.canImportMuting.useDefault" :class="$style.useDefaultLabel">{{ i18n.ts._role.useBaseValue }}</span>
<span v-else>{{ role.policies.canImportMuting.value ? i18n.ts.yes : i18n.ts.no }}</span>
<span :class="$style.priorityIndicator"><i :class="getPriorityIcon(role.policies.canImportMuting)"></i></span>
</template>
<div class="_gaps">
<MkSwitch v-model="role.policies.canImportMuting.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts._role.useBaseValue }}</template>
</MkSwitch>
<MkSwitch v-model="role.policies.canImportMuting.value" :disabled="role.policies.canImportMuting.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
<MkRange v-model="role.policies.canImportMuting.priority" :min="0" :max="2" :step="1" easing :textConverter="(v) => v === 0 ? i18n.ts._role._priority.low : v === 1 ? i18n.ts._role._priority.middle : v === 2 ? i18n.ts._role._priority.high : ''">
<template #label>{{ i18n.ts._role.priority }}</template>
</MkRange>
</div>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportUserLists, 'canImportUserLists'])">
<template #label>{{ i18n.ts._role._options.canImportUserLists }}</template>
<template #suffix>
<span v-if="role.policies.canImportUserLists.useDefault" :class="$style.useDefaultLabel">{{ i18n.ts._role.useBaseValue }}</span>
<span v-else>{{ role.policies.canImportUserLists.value ? i18n.ts.yes : i18n.ts.no }}</span>
<span :class="$style.priorityIndicator"><i :class="getPriorityIcon(role.policies.canImportUserLists)"></i></span>
</template>
<div class="_gaps">
<MkSwitch v-model="role.policies.canImportUserLists.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts._role.useBaseValue }}</template>
</MkSwitch>
<MkSwitch v-model="role.policies.canImportUserLists.value" :disabled="role.policies.canImportUserLists.useDefault" :readonly="readonly">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
<MkRange v-model="role.policies.canImportUserLists.priority" :min="0" :max="2" :step="1" easing :textConverter="(v) => v === 0 ? i18n.ts._role._priority.low : v === 1 ? i18n.ts._role._priority.middle : v === 2 ? i18n.ts._role._priority.high : ''">
<template #label>{{ i18n.ts._role.priority }}</template>
</MkRange>
</div>
</MkFolder>
</div>
</FormSlot>
</div>
40 changes: 40 additions & 0 deletions packages/frontend/src/pages/admin/roles.vue
Original file line number Diff line number Diff line change
@@ -214,6 +214,46 @@ SPDX-License-Identifier: AGPL-3.0-only
</MkInput>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportAntennas, 'canImportAntennas'])">
<template #label>{{ i18n.ts._role._options.canImportAntennas }}</template>
<template #suffix>{{ policies.canImportAntennas ? i18n.ts.yes : i18n.ts.no }}</template>
<MkSwitch v-model="policies.canImportAntennas">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportBlocking, 'canImportBlocking'])">
<template #label>{{ i18n.ts._role._options.canImportBlocking }}</template>
<template #suffix>{{ policies.canImportBlocking ? i18n.ts.yes : i18n.ts.no }}</template>
<MkSwitch v-model="policies.canImportBlocking">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportFollowing, 'canImportFollowing'])">
<template #label>{{ i18n.ts._role._options.canImportFollowing }}</template>
<template #suffix>{{ policies.canImportFollowing ? i18n.ts.yes : i18n.ts.no }}</template>
<MkSwitch v-model="policies.canImportFollowing">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportMuting, 'canImportMuting'])">
<template #label>{{ i18n.ts._role._options.canImportMuting }}</template>
<template #suffix>{{ policies.canImportMuting ? i18n.ts.yes : i18n.ts.no }}</template>
<MkSwitch v-model="policies.canImportMuting">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
</MkFolder>

<MkFolder v-if="matchQuery([i18n.ts._role._options.canImportUserLists, 'canImportUserList'])">
<template #label>{{ i18n.ts._role._options.canImportUserLists }}</template>
<template #suffix>{{ policies.canImportUserLists ? i18n.ts.yes : i18n.ts.no }}</template>
<MkSwitch v-model="policies.canImportUserLists">
<template #label>{{ i18n.ts.enable }}</template>
</MkSwitch>
</MkFolder>

<MkButton primary rounded @click="updateBaseRole">{{ i18n.ts.save }}</MkButton>
</div>
</MkFolder>
10 changes: 5 additions & 5 deletions packages/frontend/src/pages/settings/import-export.vue
Original file line number Diff line number Diff line change
@@ -45,7 +45,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<MkButton primary :class="$style.button" inline @click="exportFollowing()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</div>
</MkFolder>
<MkFolder v-if="$i && !$i.movedTo">
<MkFolder v-if="$i && !$i.movedTo && $i.policies.canImportFollowing">
<template #label>{{ i18n.ts.import }}</template>
<template #icon><i class="ti ti-upload"></i></template>
<MkSwitch v-model="withReplies">
@@ -63,7 +63,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<template #icon><i class="ti ti-download"></i></template>
<MkButton primary :class="$style.button" inline @click="exportUserLists()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</MkFolder>
<MkFolder v-if="$i && !$i.movedTo">
<MkFolder v-if="$i && !$i.movedTo && $i.policies.canImportUserLists">
<template #label>{{ i18n.ts.import }}</template>
<template #icon><i class="ti ti-upload"></i></template>
<MkButton primary :class="$style.button" inline @click="importUserLists($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
@@ -78,7 +78,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<template #icon><i class="ti ti-download"></i></template>
<MkButton primary :class="$style.button" inline @click="exportMuting()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</MkFolder>
<MkFolder v-if="$i && !$i.movedTo">
<MkFolder v-if="$i && !$i.movedTo && $i.policies.canImportMuting">
<template #label>{{ i18n.ts.import }}</template>
<template #icon><i class="ti ti-upload"></i></template>
<MkButton primary :class="$style.button" inline @click="importMuting($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
@@ -93,7 +93,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<template #icon><i class="ti ti-download"></i></template>
<MkButton primary :class="$style.button" inline @click="exportBlocking()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</MkFolder>
<MkFolder v-if="$i && !$i.movedTo">
<MkFolder v-if="$i && !$i.movedTo && $i.policies.canImportBlocking">
<template #label>{{ i18n.ts.import }}</template>
<template #icon><i class="ti ti-upload"></i></template>
<MkButton primary :class="$style.button" inline @click="importBlocking($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
@@ -108,7 +108,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<template #icon><i class="ti ti-download"></i></template>
<MkButton primary :class="$style.button" inline @click="exportAntennas()"><i class="ti ti-download"></i> {{ i18n.ts.export }}</MkButton>
</MkFolder>
<MkFolder v-if="$i && !$i.movedTo">
<MkFolder v-if="$i && !$i.movedTo && $i.policies.canImportAntennas">
<template #label>{{ i18n.ts.import }}</template>
<template #icon><i class="ti ti-upload"></i></template>
<MkButton primary :class="$style.button" inline @click="importAntennas($event)"><i class="ti ti-upload"></i> {{ i18n.ts.import }}</MkButton>
5 changes: 5 additions & 0 deletions packages/misskey-js/src/autogen/types.ts
Original file line number Diff line number Diff line change
@@ -4822,6 +4822,11 @@ export type components = {
userEachUserListsLimit: number;
rateLimitFactor: number;
avatarDecorationLimit: number;
canImportAntennas: boolean;
canImportBlocking: boolean;
canImportFollowing: boolean;
canImportMuting: boolean;
canImportUserLists: boolean;
};
ReversiGameLite: {
/** Format: id */