From c9ac7a5002478b773b4ce40908c28ffaead403a9 Mon Sep 17 00:00:00 2001 From: Misaki0331 Date: Fri, 2 Jan 2026 11:47:55 +0900 Subject: [PATCH] 4.17.0-misaki.1 --- CHANGELOG_MISAKI.md | 17 +++++++++++++++++ locales/en-US.yml | 4 ++-- locales/index.d.ts | 8 ++++---- locales/ja-JP.yml | 4 ++-- package.json | 2 +- .../src/server/api/endpoints/roles/users.ts | 2 +- .../frontend/src/components/MkUrlPreview.vue | 14 ++++++++++++++ packages/frontend/src/utility/get-user-menu.ts | 6 +++--- 8 files changed, 44 insertions(+), 13 deletions(-) diff --git a/CHANGELOG_MISAKI.md b/CHANGELOG_MISAKI.md index 0e9d7c29a7..04b684a8fe 100644 --- a/CHANGELOG_MISAKI.md +++ b/CHANGELOG_MISAKI.md @@ -27,3 +27,20 @@ ### Backend / Client - ユーザーのリアクションをポリシーで制限できるようになりました。 + +## 4.17.0-misaki + +### Backend / Client +- CherryPick 4.17.0に追従しました。 + +### Backend +- 非公開(非表示)の投稿を表示されないようになりました。 + +## 4.17.0-misaki.1 + +### Frontend +- 軽微なバグを修正しました。 +- YouTubeの短縮リンクにでもプレビュー表示できるように修正しました。 + +### Backend +- レベルロールのメンバーが取得できない問題を修正しました。 diff --git a/locales/en-US.yml b/locales/en-US.yml index c2f688ace3..4d33f6b76c 100644 --- a/locales/en-US.yml +++ b/locales/en-US.yml @@ -3836,8 +3836,6 @@ _deliveryTargetControl: deliveryTargetsExclude: "Not public to some servers" hasDeliveryTargets: "Delivery targets are selected" -noSendActivity: "Don't send activity" - ipAddress: "IP Address" searchIpAddress: "Search IP Address" @@ -3865,3 +3863,5 @@ _experience: _hideReason: privateNote: "This note is private." + +noSendActivity: "Don't send activity" diff --git a/locales/index.d.ts b/locales/index.d.ts index 79fabe94d2..661eb5fab5 100644 --- a/locales/index.d.ts +++ b/locales/index.d.ts @@ -14960,10 +14960,6 @@ export interface Locale extends ILocale { * 配送先が選択されています */ "hasDeliveryTargets": string; - /** - * アクティビティを送信しない - */ - "noSendActivity": string; }; /** * IPアドレス @@ -15055,6 +15051,10 @@ export interface Locale extends ILocale { */ "privateNote": string; }; + /** + * アクティビティを送信しない + */ + "noSendActivity": string; } declare const locales: { [lang: string]: Locale; diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index 4a01e58bb3..b62970ffd5 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -3997,8 +3997,6 @@ _deliveryTargetControl: deliveryTargetsExclude: "一部のサーバーに非公開" hasDeliveryTargets: "配送先が選択されています" - noSendActivity: "アクティビティを送信しない" - ipAddress: "IPアドレス" searchIpAddress: "IPアドレスを検索" @@ -4026,3 +4024,5 @@ _experience: _hideReason: privateNote: "この投稿は非公開です" + +noSendActivity: "アクティビティを送信しない" diff --git a/package.json b/package.json index 5613782caa..56bc58ed2b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cherrypick", - "version": "4.17.0-misaki", + "version": "4.17.0-misaki.1", "basedMisskeyVersion": "2025.10.2", "codename": "nasubi", "repository": { diff --git a/packages/backend/src/server/api/endpoints/roles/users.ts b/packages/backend/src/server/api/endpoints/roles/users.ts index e4cc059688..d5166d32fd 100644 --- a/packages/backend/src/server/api/endpoints/roles/users.ts +++ b/packages/backend/src/server/api/endpoints/roles/users.ts @@ -81,7 +81,7 @@ export default class extends Endpoint { // eslint- throw new ApiError(meta.errors.noSuchRole); } - const query = this.queryService.makePaginationQuery(this.roleAssignmentsRepository.createQueryBuilder('assign'), ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate) + let query = this.queryService.makePaginationQuery(this.roleAssignmentsRepository.createQueryBuilder('assign'), ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate) .andWhere('assign.roleId = :roleId', { roleId: role.id }) .andWhere(new Brackets(qb => { qb diff --git a/packages/frontend/src/components/MkUrlPreview.vue b/packages/frontend/src/components/MkUrlPreview.vue index 5f82f46d29..485a223e3f 100644 --- a/packages/frontend/src/components/MkUrlPreview.vue +++ b/packages/frontend/src/components/MkUrlPreview.vue @@ -188,6 +188,20 @@ if (requestUrl.hostname === 'music.youtube.com' && requestUrl.pathname.match('^/ requestUrl.hostname = 'www.youtube.com'; } +if (requestUrl.hostname === 'youtu.be') { + const videoId = requestUrl.pathname.slice(1); + const params = new URLSearchParams(requestUrl.search); + requestUrl.hostname = 'www.youtube.com'; + requestUrl.pathname = '/watch'; + requestUrl.search = ''; + requestUrl.searchParams.set('v', videoId); + params.forEach((value, key) => { + if (key !== 'v') { + requestUrl.searchParams.set(key, value); + } + }); +} + requestUrl.hash = ''; window.fetch(`/url?url=${encodeURIComponent(requestUrl.href)}&lang=${versatileLang}`) diff --git a/packages/frontend/src/utility/get-user-menu.ts b/packages/frontend/src/utility/get-user-menu.ts index dc02a5f4a8..33b10a894f 100644 --- a/packages/frontend/src/utility/get-user-menu.ts +++ b/packages/frontend/src/utility/get-user-menu.ts @@ -505,11 +505,11 @@ export function getUserMenu(user: Misskey.entities.UserDetailed, router: Router const { canceled, result: setMode } = await os.select({ title: i18n.ts.experience + ': ' + r.name, items: [{ - value: 'add', text: i18n.ts._experience._calcs.additional, + value: 'add', label: i18n.ts._experience._calcs.additional, }, { - value: 'multiplier', text: i18n.ts._experience._calcs.multiplier, + value: 'multiplier', label: i18n.ts._experience._calcs.multiplier, }, { - value: 'set', text: i18n.ts._experience._calcs.set, + value: 'set', label: i18n.ts._experience._calcs.set, }], default: 'add', });