Merge remote-branch 'misskey/develop'
This commit is contained in:
commit
0c96848830
|
@ -35,6 +35,8 @@
|
||||||
- Enhance: ノートプレビューに「内容を隠す」が反映されるように
|
- Enhance: ノートプレビューに「内容を隠す」が反映されるように
|
||||||
- Enhance: データセーバーの適用範囲を個別で設定できるように
|
- Enhance: データセーバーの適用範囲を個別で設定できるように
|
||||||
- 従来のデータセーバーの設定はリセットされます
|
- 従来のデータセーバーの設定はリセットされます
|
||||||
|
- Feat: センシティブと判断されたウェブサイトのサムネイルをぼかすように
|
||||||
|
- ウェブサイトをセンシティブと判断する仕組みが動いていないため、summalyProxyを使用しないと機能しません。
|
||||||
- fix: 「設定のバックアップ」で一部の項目がバックアップに含まれていなかった問題を修正
|
- fix: 「設定のバックアップ」で一部の項目がバックアップに含まれていなかった問題を修正
|
||||||
- Fix: ウィジェットのジョブキューにて音声の発音方法変更に追従できていなかったのを修正 #12367
|
- Fix: ウィジェットのジョブキューにて音声の発音方法変更に追従できていなかったのを修正 #12367
|
||||||
- Enhance: 絵文字の詳細ページに記載される情報を追加
|
- Enhance: 絵文字の詳細ページに記載される情報を追加
|
||||||
|
|
|
@ -39,6 +39,7 @@ import { packedEmojiDetailedSchema, packedEmojiSimpleSchema } from '@/models/jso
|
||||||
import { packedFlashSchema } from '@/models/json-schema/flash.js';
|
import { packedFlashSchema } from '@/models/json-schema/flash.js';
|
||||||
import { packedAnnouncementSchema } from '@/models/json-schema/announcement.js';
|
import { packedAnnouncementSchema } from '@/models/json-schema/announcement.js';
|
||||||
import { packedSigninSchema } from '@/models/json-schema/signin.js';
|
import { packedSigninSchema } from '@/models/json-schema/signin.js';
|
||||||
|
import { packedRoleLiteSchema, packedRoleSchema } from '@/models/json-schema/role.js';
|
||||||
|
|
||||||
export const refs = {
|
export const refs = {
|
||||||
UserLite: packedUserLiteSchema,
|
UserLite: packedUserLiteSchema,
|
||||||
|
@ -77,6 +78,8 @@ export const refs = {
|
||||||
EmojiDetailed: packedEmojiDetailedSchema,
|
EmojiDetailed: packedEmojiDetailedSchema,
|
||||||
Flash: packedFlashSchema,
|
Flash: packedFlashSchema,
|
||||||
Signin: packedSigninSchema,
|
Signin: packedSigninSchema,
|
||||||
|
RoleLite: packedRoleLiteSchema,
|
||||||
|
Role: packedRoleSchema,
|
||||||
};
|
};
|
||||||
|
|
||||||
export type Packed<x extends keyof typeof refs> = SchemaType<typeof refs[x]>;
|
export type Packed<x extends keyof typeof refs> = SchemaType<typeof refs[x]>;
|
||||||
|
|
157
packages/backend/src/models/json-schema/role.ts
Normal file
157
packages/backend/src/models/json-schema/role.ts
Normal file
|
@ -0,0 +1,157 @@
|
||||||
|
const rolePolicyValue = {
|
||||||
|
type: 'object',
|
||||||
|
properties: {
|
||||||
|
value: {
|
||||||
|
oneOf: [
|
||||||
|
{
|
||||||
|
type: 'integer',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
priority: {
|
||||||
|
type: 'integer',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
useDefault: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
} as const;
|
||||||
|
|
||||||
|
export const packedRoleLiteSchema = {
|
||||||
|
type: 'object',
|
||||||
|
properties: {
|
||||||
|
id: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
format: 'id',
|
||||||
|
example: 'xxxxxxxxxx',
|
||||||
|
},
|
||||||
|
name: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: 'New Role',
|
||||||
|
},
|
||||||
|
color: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: true,
|
||||||
|
example: '#000000',
|
||||||
|
},
|
||||||
|
iconUrl: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: true,
|
||||||
|
},
|
||||||
|
description: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
isModerator: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: false,
|
||||||
|
},
|
||||||
|
isAdministrator: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: false,
|
||||||
|
},
|
||||||
|
displayOrder: {
|
||||||
|
type: 'integer',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: 0,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
} as const;
|
||||||
|
|
||||||
|
export const packedRoleSchema = {
|
||||||
|
type: 'object',
|
||||||
|
allOf: [
|
||||||
|
{
|
||||||
|
type: 'object',
|
||||||
|
ref: 'RoleLite',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'object',
|
||||||
|
properties: {
|
||||||
|
createdAt: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
format: 'date-time',
|
||||||
|
},
|
||||||
|
updatedAt: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
format: 'date-time',
|
||||||
|
},
|
||||||
|
target: {
|
||||||
|
type: 'string',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
enum: ['manual', 'conditional'],
|
||||||
|
},
|
||||||
|
condFormula: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
isPublic: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: false,
|
||||||
|
},
|
||||||
|
isExplorable: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: false,
|
||||||
|
},
|
||||||
|
asBadge: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: false,
|
||||||
|
},
|
||||||
|
canEditMembersByModerator: {
|
||||||
|
type: 'boolean',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
example: false,
|
||||||
|
},
|
||||||
|
policies: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
properties: {
|
||||||
|
pinLimit: rolePolicyValue,
|
||||||
|
canInvite: rolePolicyValue,
|
||||||
|
clipLimit: rolePolicyValue,
|
||||||
|
canHideAds: rolePolicyValue,
|
||||||
|
inviteLimit: rolePolicyValue,
|
||||||
|
antennaLimit: rolePolicyValue,
|
||||||
|
gtlAvailable: rolePolicyValue,
|
||||||
|
ltlAvailable: rolePolicyValue,
|
||||||
|
webhookLimit: rolePolicyValue,
|
||||||
|
canPublicNote: rolePolicyValue,
|
||||||
|
userListLimit: rolePolicyValue,
|
||||||
|
wordMuteLimit: rolePolicyValue,
|
||||||
|
alwaysMarkNsfw: rolePolicyValue,
|
||||||
|
canSearchNotes: rolePolicyValue,
|
||||||
|
driveCapacityMb: rolePolicyValue,
|
||||||
|
rateLimitFactor: rolePolicyValue,
|
||||||
|
inviteLimitCycle: rolePolicyValue,
|
||||||
|
noteEachClipsLimit: rolePolicyValue,
|
||||||
|
inviteExpirationTime: rolePolicyValue,
|
||||||
|
canManageCustomEmojis: rolePolicyValue,
|
||||||
|
userEachUserListsLimit: rolePolicyValue,
|
||||||
|
canManageAvatarDecorations: rolePolicyValue,
|
||||||
|
canUseTranslator: rolePolicyValue,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
usersCount: {
|
||||||
|
type: 'integer',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
} as const;
|
|
@ -345,41 +345,7 @@ export const packedUserDetailedNotMeOnlySchema = {
|
||||||
items: {
|
items: {
|
||||||
type: 'object',
|
type: 'object',
|
||||||
nullable: false, optional: false,
|
nullable: false, optional: false,
|
||||||
properties: {
|
ref: 'RoleLite',
|
||||||
id: {
|
|
||||||
type: 'string',
|
|
||||||
nullable: false, optional: false,
|
|
||||||
format: 'id',
|
|
||||||
},
|
|
||||||
name: {
|
|
||||||
type: 'string',
|
|
||||||
nullable: false, optional: false,
|
|
||||||
},
|
|
||||||
color: {
|
|
||||||
type: 'string',
|
|
||||||
nullable: true, optional: false,
|
|
||||||
},
|
|
||||||
iconUrl: {
|
|
||||||
type: 'string',
|
|
||||||
nullable: true, optional: false,
|
|
||||||
},
|
|
||||||
description: {
|
|
||||||
type: 'string',
|
|
||||||
nullable: false, optional: false,
|
|
||||||
},
|
|
||||||
isModerator: {
|
|
||||||
type: 'boolean',
|
|
||||||
nullable: false, optional: false,
|
|
||||||
},
|
|
||||||
isAdministrator: {
|
|
||||||
type: 'boolean',
|
|
||||||
nullable: false, optional: false,
|
|
||||||
},
|
|
||||||
displayOrder: {
|
|
||||||
type: 'number',
|
|
||||||
nullable: false, optional: false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
memo: {
|
memo: {
|
||||||
|
|
|
@ -13,6 +13,12 @@ export const meta = {
|
||||||
|
|
||||||
requireCredential: true,
|
requireCredential: true,
|
||||||
requireAdmin: true,
|
requireAdmin: true,
|
||||||
|
|
||||||
|
res: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
ref: 'Role',
|
||||||
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const paramDef = {
|
export const paramDef = {
|
||||||
|
|
|
@ -14,6 +14,16 @@ export const meta = {
|
||||||
|
|
||||||
requireCredential: true,
|
requireCredential: true,
|
||||||
requireModerator: true,
|
requireModerator: true,
|
||||||
|
|
||||||
|
res: {
|
||||||
|
type: 'array',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
items: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
ref: 'Role',
|
||||||
|
},
|
||||||
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const paramDef = {
|
export const paramDef = {
|
||||||
|
|
|
@ -23,6 +23,12 @@ export const meta = {
|
||||||
id: '07dc7d34-c0d8-49b7-96c6-db3ce64ee0b3',
|
id: '07dc7d34-c0d8-49b7-96c6-db3ce64ee0b3',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
res: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
ref: 'Role',
|
||||||
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const paramDef = {
|
export const paramDef = {
|
||||||
|
|
|
@ -13,6 +13,16 @@ export const meta = {
|
||||||
tags: ['role'],
|
tags: ['role'],
|
||||||
|
|
||||||
requireCredential: true,
|
requireCredential: true,
|
||||||
|
|
||||||
|
res: {
|
||||||
|
type: 'array',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
items: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
ref: 'Role',
|
||||||
|
},
|
||||||
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const paramDef = {
|
export const paramDef = {
|
||||||
|
|
|
@ -22,6 +22,12 @@ export const meta = {
|
||||||
id: 'de5502bf-009a-4639-86c1-fec349e46dcb',
|
id: 'de5502bf-009a-4639-86c1-fec349e46dcb',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
res: {
|
||||||
|
type: 'object',
|
||||||
|
optional: false, nullable: false,
|
||||||
|
ref: 'Role',
|
||||||
|
},
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const paramDef = {
|
export const paramDef = {
|
||||||
|
|
|
@ -254,12 +254,21 @@ type AdminRolesAssignRequest = operations['admin/roles/assign']['requestBody']['
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type AdminRolesCreateRequest = operations['admin/roles/create']['requestBody']['content']['application/json'];
|
type AdminRolesCreateRequest = operations['admin/roles/create']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type AdminRolesCreateResponse = operations['admin/roles/create']['responses']['200']['content']['application/json'];
|
||||||
|
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type AdminRolesDeleteRequest = operations['admin/roles/delete']['requestBody']['content']['application/json'];
|
type AdminRolesDeleteRequest = operations['admin/roles/delete']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type AdminRolesListResponse = operations['admin/roles/list']['responses']['200']['content']['application/json'];
|
||||||
|
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type AdminRolesShowRequest = operations['admin/roles/show']['requestBody']['content']['application/json'];
|
type AdminRolesShowRequest = operations['admin/roles/show']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type AdminRolesShowResponse = operations['admin/roles/show']['responses']['200']['content']['application/json'];
|
||||||
|
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type AdminRolesUnassignRequest = operations['admin/roles/unassign']['requestBody']['content']['application/json'];
|
type AdminRolesUnassignRequest = operations['admin/roles/unassign']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
@ -1160,8 +1169,11 @@ declare namespace entities {
|
||||||
AdminDeleteAccountResponse,
|
AdminDeleteAccountResponse,
|
||||||
AdminUpdateUserNoteRequest,
|
AdminUpdateUserNoteRequest,
|
||||||
AdminRolesCreateRequest,
|
AdminRolesCreateRequest,
|
||||||
|
AdminRolesCreateResponse,
|
||||||
AdminRolesDeleteRequest,
|
AdminRolesDeleteRequest,
|
||||||
|
AdminRolesListResponse,
|
||||||
AdminRolesShowRequest,
|
AdminRolesShowRequest,
|
||||||
|
AdminRolesShowResponse,
|
||||||
AdminRolesUpdateRequest,
|
AdminRolesUpdateRequest,
|
||||||
AdminRolesAssignRequest,
|
AdminRolesAssignRequest,
|
||||||
AdminRolesUnassignRequest,
|
AdminRolesUnassignRequest,
|
||||||
|
@ -1488,7 +1500,9 @@ declare namespace entities {
|
||||||
PingResponse,
|
PingResponse,
|
||||||
PinnedUsersResponse,
|
PinnedUsersResponse,
|
||||||
PromoReadRequest,
|
PromoReadRequest,
|
||||||
|
RolesListResponse,
|
||||||
RolesShowRequest,
|
RolesShowRequest,
|
||||||
|
RolesShowResponse,
|
||||||
RolesUsersRequest,
|
RolesUsersRequest,
|
||||||
RolesNotesRequest,
|
RolesNotesRequest,
|
||||||
RolesNotesResponse,
|
RolesNotesResponse,
|
||||||
|
@ -1615,7 +1629,9 @@ declare namespace entities {
|
||||||
EmojiSimple,
|
EmojiSimple,
|
||||||
EmojiDetailed,
|
EmojiDetailed,
|
||||||
Flash,
|
Flash,
|
||||||
Signin
|
Signin,
|
||||||
|
RoleLite,
|
||||||
|
Role
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
export { entities }
|
export { entities }
|
||||||
|
@ -2450,6 +2466,15 @@ type ResetPasswordRequest = operations['reset-password']['requestBody']['content
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type RetentionResponse = operations['retention']['responses']['200']['content']['application/json'];
|
type RetentionResponse = operations['retention']['responses']['200']['content']['application/json'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type Role = components['schemas']['Role'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type RoleLite = components['schemas']['RoleLite'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type RolesListResponse = operations['roles/list']['responses']['200']['content']['application/json'];
|
||||||
|
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type RolesNotesRequest = operations['roles/notes']['requestBody']['content']['application/json'];
|
type RolesNotesRequest = operations['roles/notes']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
@ -2459,6 +2484,9 @@ type RolesNotesResponse = operations['roles/notes']['responses']['200']['content
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type RolesShowRequest = operations['roles/show']['requestBody']['content']['application/json'];
|
type RolesShowRequest = operations['roles/show']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
// @public (undocumented)
|
||||||
|
type RolesShowResponse = operations['roles/show']['responses']['200']['content']['application/json'];
|
||||||
|
|
||||||
// @public (undocumented)
|
// @public (undocumented)
|
||||||
type RolesUsersRequest = operations['roles/users']['requestBody']['content']['application/json'];
|
type RolesUsersRequest = operations['roles/users']['requestBody']['content']['application/json'];
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* version: 4.6.0-beta.1
|
* version: 4.6.0-beta.2
|
||||||
* generatedAt: 2023-12-05T08:31:06.220Z
|
* generatedAt: 2023-12-06T08:45:38.856Z
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
|
@ -96,8 +96,11 @@ import type {
|
||||||
AdminDeleteAccountResponse,
|
AdminDeleteAccountResponse,
|
||||||
AdminUpdateUserNoteRequest,
|
AdminUpdateUserNoteRequest,
|
||||||
AdminRolesCreateRequest,
|
AdminRolesCreateRequest,
|
||||||
|
AdminRolesCreateResponse,
|
||||||
AdminRolesDeleteRequest,
|
AdminRolesDeleteRequest,
|
||||||
|
AdminRolesListResponse,
|
||||||
AdminRolesShowRequest,
|
AdminRolesShowRequest,
|
||||||
|
AdminRolesShowResponse,
|
||||||
AdminRolesUpdateRequest,
|
AdminRolesUpdateRequest,
|
||||||
AdminRolesAssignRequest,
|
AdminRolesAssignRequest,
|
||||||
AdminRolesUnassignRequest,
|
AdminRolesUnassignRequest,
|
||||||
|
@ -424,7 +427,9 @@ import type {
|
||||||
PingResponse,
|
PingResponse,
|
||||||
PinnedUsersResponse,
|
PinnedUsersResponse,
|
||||||
PromoReadRequest,
|
PromoReadRequest,
|
||||||
|
RolesListResponse,
|
||||||
RolesShowRequest,
|
RolesShowRequest,
|
||||||
|
RolesShowResponse,
|
||||||
RolesUsersRequest,
|
RolesUsersRequest,
|
||||||
RolesNotesRequest,
|
RolesNotesRequest,
|
||||||
RolesNotesResponse,
|
RolesNotesResponse,
|
||||||
|
@ -592,10 +597,10 @@ export type Endpoints = {
|
||||||
'admin/update-meta': { req: AdminUpdateMetaRequest; res: EmptyResponse };
|
'admin/update-meta': { req: AdminUpdateMetaRequest; res: EmptyResponse };
|
||||||
'admin/delete-account': { req: AdminDeleteAccountRequest; res: AdminDeleteAccountResponse };
|
'admin/delete-account': { req: AdminDeleteAccountRequest; res: AdminDeleteAccountResponse };
|
||||||
'admin/update-user-note': { req: AdminUpdateUserNoteRequest; res: EmptyResponse };
|
'admin/update-user-note': { req: AdminUpdateUserNoteRequest; res: EmptyResponse };
|
||||||
'admin/roles/create': { req: AdminRolesCreateRequest; res: EmptyResponse };
|
'admin/roles/create': { req: AdminRolesCreateRequest; res: AdminRolesCreateResponse };
|
||||||
'admin/roles/delete': { req: AdminRolesDeleteRequest; res: EmptyResponse };
|
'admin/roles/delete': { req: AdminRolesDeleteRequest; res: EmptyResponse };
|
||||||
'admin/roles/list': { req: EmptyRequest; res: EmptyResponse };
|
'admin/roles/list': { req: EmptyRequest; res: AdminRolesListResponse };
|
||||||
'admin/roles/show': { req: AdminRolesShowRequest; res: EmptyResponse };
|
'admin/roles/show': { req: AdminRolesShowRequest; res: AdminRolesShowResponse };
|
||||||
'admin/roles/update': { req: AdminRolesUpdateRequest; res: EmptyResponse };
|
'admin/roles/update': { req: AdminRolesUpdateRequest; res: EmptyResponse };
|
||||||
'admin/roles/assign': { req: AdminRolesAssignRequest; res: EmptyResponse };
|
'admin/roles/assign': { req: AdminRolesAssignRequest; res: EmptyResponse };
|
||||||
'admin/roles/unassign': { req: AdminRolesUnassignRequest; res: EmptyResponse };
|
'admin/roles/unassign': { req: AdminRolesUnassignRequest; res: EmptyResponse };
|
||||||
|
@ -808,8 +813,8 @@ export type Endpoints = {
|
||||||
'ping': { req: EmptyRequest; res: PingResponse };
|
'ping': { req: EmptyRequest; res: PingResponse };
|
||||||
'pinned-users': { req: EmptyRequest; res: PinnedUsersResponse };
|
'pinned-users': { req: EmptyRequest; res: PinnedUsersResponse };
|
||||||
'promo/read': { req: PromoReadRequest; res: EmptyResponse };
|
'promo/read': { req: PromoReadRequest; res: EmptyResponse };
|
||||||
'roles/list': { req: EmptyRequest; res: EmptyResponse };
|
'roles/list': { req: EmptyRequest; res: RolesListResponse };
|
||||||
'roles/show': { req: RolesShowRequest; res: EmptyResponse };
|
'roles/show': { req: RolesShowRequest; res: RolesShowResponse };
|
||||||
'roles/users': { req: RolesUsersRequest; res: EmptyResponse };
|
'roles/users': { req: RolesUsersRequest; res: EmptyResponse };
|
||||||
'roles/notes': { req: RolesNotesRequest; res: RolesNotesResponse };
|
'roles/notes': { req: RolesNotesRequest; res: RolesNotesResponse };
|
||||||
'request-reset-password': { req: RequestResetPasswordRequest; res: EmptyResponse };
|
'request-reset-password': { req: RequestResetPasswordRequest; res: EmptyResponse };
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* version: 4.6.0-beta.1
|
* version: 4.6.0-beta.2
|
||||||
* generatedAt: 2023-12-05T08:31:06.218Z
|
* generatedAt: 2023-12-06T08:45:38.854Z
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { operations } from './types.js';
|
import { operations } from './types.js';
|
||||||
|
@ -98,8 +98,11 @@ export type AdminDeleteAccountRequest = operations['admin/delete-account']['requ
|
||||||
export type AdminDeleteAccountResponse = operations['admin/delete-account']['responses']['200']['content']['application/json'];
|
export type AdminDeleteAccountResponse = operations['admin/delete-account']['responses']['200']['content']['application/json'];
|
||||||
export type AdminUpdateUserNoteRequest = operations['admin/update-user-note']['requestBody']['content']['application/json'];
|
export type AdminUpdateUserNoteRequest = operations['admin/update-user-note']['requestBody']['content']['application/json'];
|
||||||
export type AdminRolesCreateRequest = operations['admin/roles/create']['requestBody']['content']['application/json'];
|
export type AdminRolesCreateRequest = operations['admin/roles/create']['requestBody']['content']['application/json'];
|
||||||
|
export type AdminRolesCreateResponse = operations['admin/roles/create']['responses']['200']['content']['application/json'];
|
||||||
export type AdminRolesDeleteRequest = operations['admin/roles/delete']['requestBody']['content']['application/json'];
|
export type AdminRolesDeleteRequest = operations['admin/roles/delete']['requestBody']['content']['application/json'];
|
||||||
|
export type AdminRolesListResponse = operations['admin/roles/list']['responses']['200']['content']['application/json'];
|
||||||
export type AdminRolesShowRequest = operations['admin/roles/show']['requestBody']['content']['application/json'];
|
export type AdminRolesShowRequest = operations['admin/roles/show']['requestBody']['content']['application/json'];
|
||||||
|
export type AdminRolesShowResponse = operations['admin/roles/show']['responses']['200']['content']['application/json'];
|
||||||
export type AdminRolesUpdateRequest = operations['admin/roles/update']['requestBody']['content']['application/json'];
|
export type AdminRolesUpdateRequest = operations['admin/roles/update']['requestBody']['content']['application/json'];
|
||||||
export type AdminRolesAssignRequest = operations['admin/roles/assign']['requestBody']['content']['application/json'];
|
export type AdminRolesAssignRequest = operations['admin/roles/assign']['requestBody']['content']['application/json'];
|
||||||
export type AdminRolesUnassignRequest = operations['admin/roles/unassign']['requestBody']['content']['application/json'];
|
export type AdminRolesUnassignRequest = operations['admin/roles/unassign']['requestBody']['content']['application/json'];
|
||||||
|
@ -426,7 +429,9 @@ export type FlashMyLikesResponse = operations['flash/my-likes']['responses']['20
|
||||||
export type PingResponse = operations['ping']['responses']['200']['content']['application/json'];
|
export type PingResponse = operations['ping']['responses']['200']['content']['application/json'];
|
||||||
export type PinnedUsersResponse = operations['pinned-users']['responses']['200']['content']['application/json'];
|
export type PinnedUsersResponse = operations['pinned-users']['responses']['200']['content']['application/json'];
|
||||||
export type PromoReadRequest = operations['promo/read']['requestBody']['content']['application/json'];
|
export type PromoReadRequest = operations['promo/read']['requestBody']['content']['application/json'];
|
||||||
|
export type RolesListResponse = operations['roles/list']['responses']['200']['content']['application/json'];
|
||||||
export type RolesShowRequest = operations['roles/show']['requestBody']['content']['application/json'];
|
export type RolesShowRequest = operations['roles/show']['requestBody']['content']['application/json'];
|
||||||
|
export type RolesShowResponse = operations['roles/show']['responses']['200']['content']['application/json'];
|
||||||
export type RolesUsersRequest = operations['roles/users']['requestBody']['content']['application/json'];
|
export type RolesUsersRequest = operations['roles/users']['requestBody']['content']['application/json'];
|
||||||
export type RolesNotesRequest = operations['roles/notes']['requestBody']['content']['application/json'];
|
export type RolesNotesRequest = operations['roles/notes']['requestBody']['content']['application/json'];
|
||||||
export type RolesNotesResponse = operations['roles/notes']['responses']['200']['content']['application/json'];
|
export type RolesNotesResponse = operations['roles/notes']['responses']['200']['content']['application/json'];
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* version: 4.6.0-beta.1
|
* version: 4.6.0-beta.2
|
||||||
* generatedAt: 2023-12-05T08:31:06.217Z
|
* generatedAt: 2023-12-06T08:45:38.853Z
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { components } from './types.js';
|
import { components } from './types.js';
|
||||||
|
@ -40,3 +40,5 @@ export type EmojiSimple = components['schemas']['EmojiSimple'];
|
||||||
export type EmojiDetailed = components['schemas']['EmojiDetailed'];
|
export type EmojiDetailed = components['schemas']['EmojiDetailed'];
|
||||||
export type Flash = components['schemas']['Flash'];
|
export type Flash = components['schemas']['Flash'];
|
||||||
export type Signin = components['schemas']['Signin'];
|
export type Signin = components['schemas']['Signin'];
|
||||||
|
export type RoleLite = components['schemas']['RoleLite'];
|
||||||
|
export type Role = components['schemas']['Role'];
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
/* eslint @typescript-eslint/no-explicit-any: 0 */
|
/* eslint @typescript-eslint/no-explicit-any: 0 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* version: 4.6.0-beta.1
|
* version: 4.6.0-beta.2
|
||||||
* generatedAt: 2023-12-05T08:31:06.141Z
|
* generatedAt: 2023-12-06T08:45:38.779Z
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3471,17 +3471,7 @@ export type components = {
|
||||||
usePasswordLessLogin: boolean;
|
usePasswordLessLogin: boolean;
|
||||||
/** @default false */
|
/** @default false */
|
||||||
securityKeys: boolean;
|
securityKeys: boolean;
|
||||||
roles: ({
|
roles: components['schemas']['RoleLite'][];
|
||||||
/** Format: id */
|
|
||||||
id: string;
|
|
||||||
name: string;
|
|
||||||
color: string | null;
|
|
||||||
iconUrl: string | null;
|
|
||||||
description: string;
|
|
||||||
isModerator: boolean;
|
|
||||||
isAdministrator: boolean;
|
|
||||||
displayOrder: number;
|
|
||||||
})[];
|
|
||||||
memo: string | null;
|
memo: string | null;
|
||||||
moderationNote?: string;
|
moderationNote?: string;
|
||||||
isFollowing?: boolean;
|
isFollowing?: boolean;
|
||||||
|
@ -4173,6 +4163,160 @@ export type components = {
|
||||||
headers: Record<string, never>;
|
headers: Record<string, never>;
|
||||||
success: boolean;
|
success: boolean;
|
||||||
};
|
};
|
||||||
|
RoleLite: {
|
||||||
|
/**
|
||||||
|
* Format: id
|
||||||
|
* @example xxxxxxxxxx
|
||||||
|
*/
|
||||||
|
id: string;
|
||||||
|
/** @example New Role */
|
||||||
|
name: string;
|
||||||
|
/** @example #000000 */
|
||||||
|
color: string | null;
|
||||||
|
iconUrl: string | null;
|
||||||
|
description: string;
|
||||||
|
/** @example false */
|
||||||
|
isModerator: boolean;
|
||||||
|
/** @example false */
|
||||||
|
isAdministrator: boolean;
|
||||||
|
/** @example 0 */
|
||||||
|
displayOrder: number;
|
||||||
|
};
|
||||||
|
Role: components['schemas']['RoleLite'] & ({
|
||||||
|
/** Format: date-time */
|
||||||
|
createdAt: string;
|
||||||
|
/** Format: date-time */
|
||||||
|
updatedAt: string;
|
||||||
|
/** @enum {string} */
|
||||||
|
target: 'manual' | 'conditional';
|
||||||
|
condFormula: Record<string, never>;
|
||||||
|
/** @example false */
|
||||||
|
isPublic: boolean;
|
||||||
|
/** @example false */
|
||||||
|
isExplorable: boolean;
|
||||||
|
/** @example false */
|
||||||
|
asBadge: boolean;
|
||||||
|
/** @example false */
|
||||||
|
canEditMembersByModerator: boolean;
|
||||||
|
policies: {
|
||||||
|
pinLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canInvite: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
clipLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canHideAds: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
inviteLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
antennaLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
gtlAvailable: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
ltlAvailable: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
webhookLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canPublicNote: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
userListLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
wordMuteLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
alwaysMarkNsfw: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canSearchNotes: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
driveCapacityMb: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
rateLimitFactor: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
inviteLimitCycle: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
noteEachClipsLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
inviteExpirationTime: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canManageCustomEmojis: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
userEachUserListsLimit: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canManageAvatarDecorations: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
canUseTranslator: {
|
||||||
|
value: number | boolean;
|
||||||
|
priority: number;
|
||||||
|
useDefault: boolean;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
usersCount: number;
|
||||||
|
});
|
||||||
};
|
};
|
||||||
responses: never;
|
responses: never;
|
||||||
parameters: never;
|
parameters: never;
|
||||||
|
@ -8615,9 +8759,11 @@ export type operations = {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
responses: {
|
responses: {
|
||||||
/** @description OK (without any results) */
|
/** @description OK (with results) */
|
||||||
204: {
|
200: {
|
||||||
content: never;
|
content: {
|
||||||
|
'application/json': components['schemas']['Role'];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
/** @description Client error */
|
/** @description Client error */
|
||||||
400: {
|
400: {
|
||||||
|
@ -8711,9 +8857,11 @@ export type operations = {
|
||||||
*/
|
*/
|
||||||
'admin/roles/list': {
|
'admin/roles/list': {
|
||||||
responses: {
|
responses: {
|
||||||
/** @description OK (without any results) */
|
/** @description OK (with results) */
|
||||||
204: {
|
200: {
|
||||||
content: never;
|
content: {
|
||||||
|
'application/json': components['schemas']['Role'][];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
/** @description Client error */
|
/** @description Client error */
|
||||||
400: {
|
400: {
|
||||||
|
@ -8763,9 +8911,11 @@ export type operations = {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
responses: {
|
responses: {
|
||||||
/** @description OK (without any results) */
|
/** @description OK (with results) */
|
||||||
204: {
|
200: {
|
||||||
content: never;
|
content: {
|
||||||
|
'application/json': components['schemas']['Role'];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
/** @description Client error */
|
/** @description Client error */
|
||||||
400: {
|
400: {
|
||||||
|
@ -21193,9 +21343,11 @@ export type operations = {
|
||||||
*/
|
*/
|
||||||
'roles/list': {
|
'roles/list': {
|
||||||
responses: {
|
responses: {
|
||||||
/** @description OK (without any results) */
|
/** @description OK (with results) */
|
||||||
204: {
|
200: {
|
||||||
content: never;
|
content: {
|
||||||
|
'application/json': components['schemas']['Role'][];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
/** @description Client error */
|
/** @description Client error */
|
||||||
400: {
|
400: {
|
||||||
|
@ -21245,9 +21397,11 @@ export type operations = {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
responses: {
|
responses: {
|
||||||
/** @description OK (without any results) */
|
/** @description OK (with results) */
|
||||||
204: {
|
200: {
|
||||||
content: never;
|
content: {
|
||||||
|
'application/json': components['schemas']['Role'];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
/** @description Client error */
|
/** @description Client error */
|
||||||
400: {
|
400: {
|
||||||
|
|
|
@ -203,7 +203,7 @@ function focusDown() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function switchItem(item: MenuSwitch & { ref: any }) {
|
function switchItem(item: MenuSwitch & { ref: any }) {
|
||||||
if (typeof item.disabled === 'boolean' ? item.disabled : item.disabled.value) return;
|
if (item.disabled !== undefined && (typeof item.disabled === 'boolean' ? item.disabled : item.disabled.value)) return;
|
||||||
item.ref = !item.ref;
|
item.ref = !item.ref;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
</template>
|
</template>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<component :is="self ? 'MkA' : 'a'" :class="[$style.link, { [$style.compact]: compact }]" :[attr]="self ? url.substring(local.length) : url" rel="nofollow noopener" :target="target" :title="url">
|
<component :is="self ? 'MkA' : 'a'" :class="[$style.link, { [$style.compact]: compact }]" :[attr]="self ? url.substring(local.length) : url" rel="nofollow noopener" :target="target" :title="url">
|
||||||
<div v-if="thumbnail" :class="$style.thumbnail" :style="defaultStore.state.dataSaver.urlPreview ? '' : `background-image: url('${thumbnail}')`">
|
<div v-if="thumbnail && !sensitive" :class="$style.thumbnail" :style="defaultStore.state.dataSaver.urlPreview ? '' : `background-image: url('${thumbnail}')`">
|
||||||
</div>
|
</div>
|
||||||
<article :class="$style.body">
|
<article :class="$style.body">
|
||||||
<header :class="$style.header">
|
<header :class="$style.header">
|
||||||
|
@ -118,6 +118,7 @@ let description = $ref<string | null>(null);
|
||||||
let thumbnail = $ref<string | null>(null);
|
let thumbnail = $ref<string | null>(null);
|
||||||
let icon = $ref<string | null>(null);
|
let icon = $ref<string | null>(null);
|
||||||
let sitename = $ref<string | null>(null);
|
let sitename = $ref<string | null>(null);
|
||||||
|
let sensitive = $ref<boolean>(false);
|
||||||
let player = $ref({
|
let player = $ref({
|
||||||
url: null,
|
url: null,
|
||||||
width: null,
|
width: null,
|
||||||
|
@ -170,6 +171,7 @@ window.fetch(`/url?url=${encodeURIComponent(requestUrl.href)}&lang=${versatileLa
|
||||||
icon = info.icon;
|
icon = info.icon;
|
||||||
sitename = info.sitename;
|
sitename = info.sitename;
|
||||||
player = info.player;
|
player = info.player;
|
||||||
|
sensitive = info.sensitive ?? false;
|
||||||
});
|
});
|
||||||
|
|
||||||
function adjustTweetHeight(message: any) {
|
function adjustTweetHeight(message: any) {
|
||||||
|
|
|
@ -242,17 +242,14 @@ const headerActions = $computed(() => {
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.friendlyEnableNotifications,
|
text: i18n.ts.friendlyEnableNotifications,
|
||||||
ref: $$(friendlyEnableNotifications),
|
ref: $$(friendlyEnableNotifications),
|
||||||
disabled: false,
|
|
||||||
}, {
|
}, {
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.friendlyEnableWidgets,
|
text: i18n.ts.friendlyEnableWidgets,
|
||||||
ref: $$(friendlyEnableWidgets),
|
ref: $$(friendlyEnableWidgets),
|
||||||
disabled: false,
|
|
||||||
}, {
|
}, {
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.showRenotes,
|
text: i18n.ts.showRenotes,
|
||||||
ref: $$(withRenotes),
|
ref: $$(withRenotes),
|
||||||
disabled: false,
|
|
||||||
}, src === 'local' || src === 'social' ? {
|
}, src === 'local' || src === 'social' ? {
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.showRepliesToOthersInTimeline,
|
text: i18n.ts.showRepliesToOthersInTimeline,
|
||||||
|
@ -267,7 +264,6 @@ const headerActions = $computed(() => {
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.showCatOnly,
|
text: i18n.ts.showCatOnly,
|
||||||
ref: $$(onlyCats),
|
ref: $$(onlyCats),
|
||||||
disabled: false,
|
|
||||||
}], ev.currentTarget ?? ev.target);
|
}], ev.currentTarget ?? ev.target);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -124,7 +124,6 @@ const menu = [{
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.showRenotes,
|
text: i18n.ts.showRenotes,
|
||||||
ref: $$(withRenotes),
|
ref: $$(withRenotes),
|
||||||
disabled: false,
|
|
||||||
}, props.column.tl === 'local' || props.column.tl === 'social' ? {
|
}, props.column.tl === 'local' || props.column.tl === 'social' ? {
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.showRepliesToOthersInTimeline,
|
text: i18n.ts.showRepliesToOthersInTimeline,
|
||||||
|
@ -139,7 +138,6 @@ const menu = [{
|
||||||
type: 'switch',
|
type: 'switch',
|
||||||
text: i18n.ts.showCatOnly,
|
text: i18n.ts.showCatOnly,
|
||||||
ref: $$(onlyCats),
|
ref: $$(onlyCats),
|
||||||
disabled: false,
|
|
||||||
}];
|
}];
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue