Merge branch 'develop' into enh-14786
This commit is contained in:
commit
5d834fb7fe
|
@ -13,15 +13,19 @@
|
||||||
- Enhance: MiAuth, OAuthの認可画面の改善
|
- Enhance: MiAuth, OAuthの認可画面の改善
|
||||||
- どのアカウントで認証しようとしているのかがわかるように
|
- どのアカウントで認証しようとしているのかがわかるように
|
||||||
- 認証するアカウントを切り替えられるように
|
- 認証するアカウントを切り替えられるように
|
||||||
|
- Enhance: Self-XSS防止用の警告を追加
|
||||||
- Enhance: 時刻表示を常に絶対時刻(年/月/日 時:分:秒)にできるように
|
- Enhance: 時刻表示を常に絶対時刻(年/月/日 時:分:秒)にできるように
|
||||||
- Fix: 通知の範囲指定の設定項目が必要ない通知設定でも範囲指定の設定がでている問題を修正
|
- Fix: 通知の範囲指定の設定項目が必要ない通知設定でも範囲指定の設定がでている問題を修正
|
||||||
- Fix: Turnstileが失敗・期限切れした際にも成功扱いとなってしまう問題を修正
|
- Fix: Turnstileが失敗・期限切れした際にも成功扱いとなってしまう問題を修正
|
||||||
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/768)
|
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/768)
|
||||||
- Fix: デッキのタイムラインカラムで「センシティブなファイルを含むノートを表示」設定が使用できなかった問題を修正
|
- Fix: デッキのタイムラインカラムで「センシティブなファイルを含むノートを表示」設定が使用できなかった問題を修正
|
||||||
|
- Fix: リンク切れを修正
|
||||||
|
|
||||||
### Server
|
### Server
|
||||||
- Fix: Nested proxy requestsを検出した際にブロックするように
|
- Fix: Nested proxy requestsを検出した際にブロックするように
|
||||||
[ghsa-gq5q-c77c-v236](https://github.com/misskey-dev/misskey/security/advisories/ghsa-gq5q-c77c-v236)
|
[ghsa-gq5q-c77c-v236](https://github.com/misskey-dev/misskey/security/advisories/ghsa-gq5q-c77c-v236)
|
||||||
|
- Fix: 招待コードの発行可能な残り数算出に使用すべきロールポリシーの値が違う問題を修正
|
||||||
|
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/706)
|
||||||
|
|
||||||
## 2024.10.1
|
## 2024.10.1
|
||||||
|
|
||||||
|
|
|
@ -10557,6 +10557,28 @@ export interface Locale extends ILocale {
|
||||||
*/
|
*/
|
||||||
"codeGeneratedDescription": string;
|
"codeGeneratedDescription": string;
|
||||||
};
|
};
|
||||||
|
"_selfXssPrevention": {
|
||||||
|
/**
|
||||||
|
* 警告
|
||||||
|
*/
|
||||||
|
"warning": string;
|
||||||
|
/**
|
||||||
|
* 「この画面に何か貼り付けろ」はすべて詐欺です。
|
||||||
|
*/
|
||||||
|
"title": string;
|
||||||
|
/**
|
||||||
|
* ここに何かを貼り付けると、悪意のあるユーザーにアカウントを乗っ取られたり、個人情報を盗まれたりする可能性があります。
|
||||||
|
*/
|
||||||
|
"description1": string;
|
||||||
|
/**
|
||||||
|
* 貼り付けようとしているものが何なのかを正確に理解していない場合は、%c今すぐ作業を中止してこのウィンドウを閉じてください。
|
||||||
|
*/
|
||||||
|
"description2": string;
|
||||||
|
/**
|
||||||
|
* 詳しくはこちらをご確認ください。 {link}
|
||||||
|
*/
|
||||||
|
"description3": ParameterizedString<"link">;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
declare const locales: {
|
declare const locales: {
|
||||||
[lang: string]: Locale;
|
[lang: string]: Locale;
|
||||||
|
|
|
@ -2812,3 +2812,10 @@ _embedCodeGen:
|
||||||
generateCode: "埋め込みコードを作成"
|
generateCode: "埋め込みコードを作成"
|
||||||
codeGenerated: "コードが生成されました"
|
codeGenerated: "コードが生成されました"
|
||||||
codeGeneratedDescription: "生成されたコードをウェブサイトに貼り付けてご利用ください。"
|
codeGeneratedDescription: "生成されたコードをウェブサイトに貼り付けてご利用ください。"
|
||||||
|
|
||||||
|
_selfXssPrevention:
|
||||||
|
warning: "警告"
|
||||||
|
title: "「この画面に何か貼り付けろ」はすべて詐欺です。"
|
||||||
|
description1: "ここに何かを貼り付けると、悪意のあるユーザーにアカウントを乗っ取られたり、個人情報を盗まれたりする可能性があります。"
|
||||||
|
description2: "貼り付けようとしているものが何なのかを正確に理解していない場合は、%c今すぐ作業を中止してこのウィンドウを閉じてください。"
|
||||||
|
description3: "詳しくはこちらをご確認ください。 {link}"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "misskey",
|
"name": "misskey",
|
||||||
"version": "2024.10.2-alpha.0",
|
"version": "2024.10.2-alpha.1",
|
||||||
"codename": "nasubi",
|
"codename": "nasubi",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|
|
@ -49,7 +49,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||||
const policies = await this.roleService.getUserPolicies(me.id);
|
const policies = await this.roleService.getUserPolicies(me.id);
|
||||||
|
|
||||||
const count = policies.inviteLimit ? await this.registrationTicketsRepository.countBy({
|
const count = policies.inviteLimit ? await this.registrationTicketsRepository.countBy({
|
||||||
id: MoreThan(this.idService.gen(Date.now() - (policies.inviteExpirationTime * 60 * 1000))),
|
id: MoreThan(this.idService.gen(Date.now() - (policies.inviteLimitCycle * 60 * 1000))),
|
||||||
createdById: me.id,
|
createdById: me.id,
|
||||||
}) : null;
|
}) : null;
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,7 @@ import { url } from '@@/js/config.js';
|
||||||
import { parseEmbedParams } from '@@/js/embed-page.js';
|
import { parseEmbedParams } from '@@/js/embed-page.js';
|
||||||
import { postMessageToParentWindow, setIframeId } from '@/post-message.js';
|
import { postMessageToParentWindow, setIframeId } from '@/post-message.js';
|
||||||
import { serverContext } from '@/server-context.js';
|
import { serverContext } from '@/server-context.js';
|
||||||
|
import { i18n } from '@/i18n.js';
|
||||||
|
|
||||||
import type { Theme } from '@/theme.js';
|
import type { Theme } from '@/theme.js';
|
||||||
|
|
||||||
|
@ -127,6 +128,27 @@ window.onunhandledrejection = null;
|
||||||
|
|
||||||
removeSplash();
|
removeSplash();
|
||||||
|
|
||||||
|
//#region Self-XSS 対策メッセージ
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.warning}`,
|
||||||
|
'color: #f00; background-color: #ff0; font-size: 36px; padding: 4px;',
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.title}`,
|
||||||
|
'color: #f00; font-weight: 900; font-family: "Hiragino Sans W9", "Hiragino Kaku Gothic ProN", sans-serif; font-size: 24px;',
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.description1}`,
|
||||||
|
'font-size: 16px; font-weight: 700;',
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.description2}`,
|
||||||
|
'font-size: 16px;',
|
||||||
|
'font-size: 20px; font-weight: 700; color: #f00;',
|
||||||
|
);
|
||||||
|
console.log(i18n.tsx._selfXssPrevention.description3({ link: 'https://misskey-hub.net/docs/for-users/resources/self-xss/' }));
|
||||||
|
//#endregion
|
||||||
|
|
||||||
function removeSplash() {
|
function removeSplash() {
|
||||||
const splash = document.getElementById('splash');
|
const splash = document.getElementById('splash');
|
||||||
if (splash) {
|
if (splash) {
|
||||||
|
|
|
@ -11,7 +11,7 @@ import directives from '@/directives/index.js';
|
||||||
import components from '@/components/index.js';
|
import components from '@/components/index.js';
|
||||||
import { applyTheme } from '@/scripts/theme.js';
|
import { applyTheme } from '@/scripts/theme.js';
|
||||||
import { isDeviceDarkmode } from '@/scripts/is-device-darkmode.js';
|
import { isDeviceDarkmode } from '@/scripts/is-device-darkmode.js';
|
||||||
import { updateI18n } from '@/i18n.js';
|
import { updateI18n, i18n } from '@/i18n.js';
|
||||||
import { $i, refreshAccount, login } from '@/account.js';
|
import { $i, refreshAccount, login } from '@/account.js';
|
||||||
import { defaultStore, ColdDeviceStorage } from '@/store.js';
|
import { defaultStore, ColdDeviceStorage } from '@/store.js';
|
||||||
import { fetchInstance, instance } from '@/instance.js';
|
import { fetchInstance, instance } from '@/instance.js';
|
||||||
|
@ -269,6 +269,27 @@ export async function common(createVue: () => App<Element>) {
|
||||||
|
|
||||||
removeSplash();
|
removeSplash();
|
||||||
|
|
||||||
|
//#region Self-XSS 対策メッセージ
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.warning}`,
|
||||||
|
'color: #f00; background-color: #ff0; font-size: 36px; padding: 4px;',
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.title}`,
|
||||||
|
'color: #f00; font-weight: 900; font-family: "Hiragino Sans W9", "Hiragino Kaku Gothic ProN", sans-serif; font-size: 24px;',
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.description1}`,
|
||||||
|
'font-size: 16px; font-weight: 700;',
|
||||||
|
);
|
||||||
|
console.log(
|
||||||
|
`%c${i18n.ts._selfXssPrevention.description2}`,
|
||||||
|
'font-size: 16px;',
|
||||||
|
'font-size: 20px; font-weight: 700; color: #f00;',
|
||||||
|
);
|
||||||
|
console.log(i18n.tsx._selfXssPrevention.description3({ link: 'https://misskey-hub.net/docs/for-users/resources/self-xss/' }));
|
||||||
|
//#endregion
|
||||||
|
|
||||||
return {
|
return {
|
||||||
isClientUpdated,
|
isClientUpdated,
|
||||||
app,
|
app,
|
||||||
|
|
|
@ -15,7 +15,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
<div class="_gaps_s">
|
<div class="_gaps_s">
|
||||||
<MkInfo v-if="thereIsUnresolvedAbuseReport" warn>{{ i18n.ts.thereIsUnresolvedAbuseReportWarning }} <MkA to="/admin/abuses" class="_link">{{ i18n.ts.check }}</MkA></MkInfo>
|
<MkInfo v-if="thereIsUnresolvedAbuseReport" warn>{{ i18n.ts.thereIsUnresolvedAbuseReportWarning }} <MkA to="/admin/abuses" class="_link">{{ i18n.ts.check }}</MkA></MkInfo>
|
||||||
<MkInfo v-if="noMaintainerInformation" warn>{{ i18n.ts.noMaintainerInformationWarning }} <MkA to="/admin/settings" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
<MkInfo v-if="noMaintainerInformation" warn>{{ i18n.ts.noMaintainerInformationWarning }} <MkA to="/admin/settings" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
||||||
<MkInfo v-if="noInquiryUrl" warn>{{ i18n.ts.noInquiryUrlWarning }} <MkA to="/admin/moderation" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
<MkInfo v-if="noInquiryUrl" warn>{{ i18n.ts.noInquiryUrlWarning }} <MkA to="/admin/settings" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
||||||
<MkInfo v-if="noBotProtection" warn>{{ i18n.ts.noBotProtectionWarning }} <MkA to="/admin/security" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
<MkInfo v-if="noBotProtection" warn>{{ i18n.ts.noBotProtectionWarning }} <MkA to="/admin/security" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
||||||
<MkInfo v-if="noEmailServer" warn>{{ i18n.ts.noEmailServerWarning }} <MkA to="/admin/email-settings" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
<MkInfo v-if="noEmailServer" warn>{{ i18n.ts.noEmailServerWarning }} <MkA to="/admin/email-settings" class="_link">{{ i18n.ts.configure }}</MkA></MkInfo>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -17,7 +17,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
@deny="onDeny"
|
@deny="onDeny"
|
||||||
>
|
>
|
||||||
<template #consentAdditionalInfo>
|
<template #consentAdditionalInfo>
|
||||||
<div v-if="callback != null" :class="$style.redirectRoot">
|
<div v-if="callback != null" class="_gaps_s" :class="$style.redirectRoot">
|
||||||
<div>{{ i18n.ts._auth.byClickingYouWillBeRedirectedToThisUrl }}</div>
|
<div>{{ i18n.ts._auth.byClickingYouWillBeRedirectedToThisUrl }}</div>
|
||||||
<div class="_monospace" :class="$style.redirectUrl">{{ callback }}</div>
|
<div class="_monospace" :class="$style.redirectUrl">{{ callback }}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"name": "misskey-js",
|
"name": "misskey-js",
|
||||||
"version": "2024.10.2-alpha.0",
|
"version": "2024.10.2-alpha.1",
|
||||||
"description": "Misskey SDK for JavaScript",
|
"description": "Misskey SDK for JavaScript",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"main": "./built/index.js",
|
"main": "./built/index.js",
|
||||||
|
|
Loading…
Reference in New Issue