update deps (#15311)
* wip * bump misskey-dev/eslint-plugin * lint fixes (backend) * lint fixes (frontend) * lint fixes (frontend-embed) * rollback nsfwjs to 4.2.0 ref: infinitered/nsfwjs#904 * rollback openapi-typescript to v6 v7でOpenAPIのバリデーションが入るようになった関係でスコープ外での変更が避けられないため一時的に戻した * lint fixes (misskey-js) * temporarily disable errored lint rule (frontend-shared) * fix lint * temporarily ignore errored file for lint (frontend-shared) * rollback simplewebauthn/server to 12.0.0 v13 contains breaking changes that require some decision making * lint fixes (frontend-shared) * build misskey-js with types * fix(backend): migrate simplewebauthn/server to v12 * fix(misskey-js/autogen): ignore indent rules to generate consistent output * attempt to fix test changes due to capricorn86/happy-dom#1617 (XMLSerializer now produces valid XML) * attempt to fix test changes due to capricorn86/happy-dom#1617 (XMLSerializer now produces valid XML) * fix test * fix test * fix test * Apply suggestions from code review Co-authored-by: anatawa12 <anatawa12@icloud.com> * bump summaly to v5.2.0 * update tabler-icons to v3.30.0-based --------- Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> Co-authored-by: anatawa12 <anatawa12@icloud.com>
This commit is contained in:
parent
1e88aa9d81
commit
ffd8cf07e6
70 changed files with 3396 additions and 3028 deletions
|
|
@ -50,6 +50,8 @@ type CaptchaContainer = {
|
|||
};
|
||||
|
||||
declare global {
|
||||
// Window を拡張してるため、空ではない
|
||||
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
||||
interface Window extends CaptchaContainer { }
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -142,6 +142,7 @@ const okButtonDisabledReason = computed<null | 'charactersExceeded' | 'character
|
|||
// overload function を使いたいので lint エラーを無視する
|
||||
function done(canceled: true): void;
|
||||
function done(canceled: false, result: Result): void; // eslint-disable-line no-redeclare
|
||||
|
||||
function done(canceled: boolean, result?: Result): void { // eslint-disable-line no-redeclare
|
||||
emit('done', { canceled, result } as { canceled: true } | { canceled: false, result: Result });
|
||||
modal.value?.close();
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ import MkModalWindow from '@/components/MkModalWindow.vue';
|
|||
import { notificationTypes } from '@@/js/const.js';
|
||||
import { i18n } from '@/i18n.js';
|
||||
|
||||
type TypesMap = Record<typeof notificationTypes[number], Ref<boolean>>
|
||||
type TypesMap = Record<typeof notificationTypes[number], Ref<boolean>>;
|
||||
|
||||
const emit = defineEmits<{
|
||||
(ev: 'done', v: { excludeTypes: string[] }): void,
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@
|
|||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
export type SortOrderDirection = '+' | '-'
|
||||
export type SortOrderDirection = '+' | '-';
|
||||
|
||||
export type SortOrder<T extends string> = {
|
||||
key: T;
|
||||
direction: SortOrderDirection;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -114,7 +114,7 @@ type EventType = {
|
|||
userCreated: boolean;
|
||||
inactiveModeratorsWarning: boolean;
|
||||
inactiveModeratorsInvitationOnlyChanged: boolean;
|
||||
}
|
||||
};
|
||||
|
||||
const emit = defineEmits<{
|
||||
(ev: 'submitted', result: MkSystemWebhookResult): void;
|
||||
|
|
|
|||
|
|
@ -57,15 +57,15 @@ provide('tl_withSensitive', computed(() => props.withSensitive));
|
|||
provide('inChannel', computed(() => props.src === 'channel'));
|
||||
|
||||
type TimelineQueryType = {
|
||||
antennaId?: string,
|
||||
withRenotes?: boolean,
|
||||
withReplies?: boolean,
|
||||
withFiles?: boolean,
|
||||
visibility?: string,
|
||||
listId?: string,
|
||||
channelId?: string,
|
||||
roleId?: string
|
||||
}
|
||||
antennaId?: string,
|
||||
withRenotes?: boolean,
|
||||
withReplies?: boolean,
|
||||
withFiles?: boolean,
|
||||
visibility?: string,
|
||||
listId?: string,
|
||||
channelId?: string,
|
||||
roleId?: string
|
||||
};
|
||||
|
||||
const prComponent = shallowRef<InstanceType<typeof MkPullToRefresh>>();
|
||||
const tlComponent = shallowRef<InstanceType<typeof MkNotes>>();
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ import MkTextarea from '@/components/MkTextarea.vue';
|
|||
import MkSwitch from '@/components/MkSwitch.vue';
|
||||
import MkRadios from '@/components/MkRadios.vue';
|
||||
|
||||
type AdminAnnouncementType = Misskey.entities.AdminAnnouncementsCreateRequest & { id: string; }
|
||||
type AdminAnnouncementType = Misskey.entities.AdminAnnouncementsCreateRequest & { id: string; };
|
||||
|
||||
const props = defineProps<{
|
||||
user: Misskey.entities.User,
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ type RowHolder = {
|
|||
row: GridRow,
|
||||
cells: GridCell[],
|
||||
origin: DataSource,
|
||||
}
|
||||
};
|
||||
|
||||
const emit = defineEmits<{
|
||||
(ev: 'event', event: GridEvent, context: GridContext): void;
|
||||
|
|
|
|||
|
|
@ -18,25 +18,25 @@ export type ValidatorParams = {
|
|||
export type ValidatorResult = {
|
||||
valid: boolean;
|
||||
message?: string;
|
||||
}
|
||||
};
|
||||
|
||||
export type GridCellValidator = {
|
||||
name?: string;
|
||||
ignoreViolation?: boolean;
|
||||
validate: (params: ValidatorParams) => ValidatorResult;
|
||||
}
|
||||
};
|
||||
|
||||
export type ValidateViolation = {
|
||||
valid: boolean;
|
||||
params: ValidatorParams;
|
||||
violations: ValidateViolationItem[];
|
||||
}
|
||||
};
|
||||
|
||||
export type ValidateViolationItem = {
|
||||
valid: boolean;
|
||||
validator: GridCellValidator;
|
||||
result: ValidatorResult;
|
||||
}
|
||||
};
|
||||
|
||||
export function cellValidation(allCells: GridCell[], cell: GridCell, newValue: CellValue): ValidateViolation {
|
||||
const { column, row } = cell;
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ export type CellValue = string | boolean | number | undefined | null | Array<unk
|
|||
export type CellAddress = {
|
||||
row: number;
|
||||
col: number;
|
||||
}
|
||||
};
|
||||
|
||||
export const CELL_ADDRESS_NONE: CellAddress = {
|
||||
row: -1,
|
||||
|
|
@ -32,13 +32,13 @@ export type GridCell = {
|
|||
contentSize: Size;
|
||||
setting: GridCellSetting;
|
||||
violation: ValidateViolation;
|
||||
}
|
||||
};
|
||||
|
||||
export type GridCellContextMenuFactory = (col: GridColumn, row: GridRow, value: CellValue, context: GridContext) => MenuItem[];
|
||||
|
||||
export type GridCellSetting = {
|
||||
contextMenuFactory?: GridCellContextMenuFactory;
|
||||
}
|
||||
};
|
||||
|
||||
export function createCell(
|
||||
column: GridColumn,
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ export type GridColumn = {
|
|||
setting: GridColumnSetting;
|
||||
width: string;
|
||||
contentSize: Size;
|
||||
}
|
||||
};
|
||||
|
||||
export function createColumn(setting: GridColumnSetting, index: number): GridColumn {
|
||||
return {
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ export type GridSetting = {
|
|||
|
||||
export type DataSource = Record<string, CellValue>;
|
||||
|
||||
export type GridState =
|
||||
export type GridState = (
|
||||
'normal' |
|
||||
'cellSelecting' |
|
||||
'cellEditing' |
|
||||
|
|
@ -29,19 +29,19 @@ export type GridState =
|
|||
'colSelecting' |
|
||||
'rowSelecting' |
|
||||
'hidden'
|
||||
;
|
||||
);
|
||||
|
||||
export type Size = {
|
||||
width: number;
|
||||
height: number;
|
||||
}
|
||||
};
|
||||
|
||||
export type SizeStyle = number | 'auto' | undefined;
|
||||
|
||||
export type AdditionalStyle = {
|
||||
className?: string;
|
||||
style?: Record<string, string | number>;
|
||||
}
|
||||
};
|
||||
|
||||
export class GridEventEmitter extends EventEmitter<{
|
||||
'forceRefreshContentSize': void;
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ export type GridRowStyleRuleConditionParams = {
|
|||
export type GridRowStyleRule = {
|
||||
condition: (params: GridRowStyleRuleConditionParams) => boolean;
|
||||
applyStyle: AdditionalStyle;
|
||||
}
|
||||
};
|
||||
|
||||
export type GridRowContextMenuFactory = (row: GridRow, context: GridContext) => MenuItem[];
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ export type GridRowSetting = {
|
|||
events?: {
|
||||
delete?: (rows: GridRow[]) => void;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
export type GridRow = {
|
||||
index: number;
|
||||
|
|
@ -48,7 +48,7 @@ export type GridRow = {
|
|||
using: boolean;
|
||||
setting: GridRowSetting;
|
||||
additionalStyles: AdditionalStyle[];
|
||||
}
|
||||
};
|
||||
|
||||
export function createRow(index: number, using: boolean, setting: GridRowSetting): GridRow {
|
||||
return {
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
export type Keys =
|
||||
export type Keys = (
|
||||
'v' |
|
||||
'lastVersion' |
|
||||
'instance' |
|
||||
|
|
@ -40,6 +40,7 @@ export type Keys =
|
|||
'emojis' | // DEPRECATED, stored in indexeddb (13.9.0~);
|
||||
`channelLastReadedAt:${string}` |
|
||||
`idbfallback::${string}`
|
||||
);
|
||||
|
||||
// セッション毎に廃棄されるLocalStorage代替(セーフモードなどで使用できそう)
|
||||
//const safeSessionStorage = new Map<Keys, string>();
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ export type RouterEvent = {
|
|||
key: string;
|
||||
}) => void;
|
||||
same: () => void;
|
||||
}
|
||||
};
|
||||
|
||||
export type Resolved = {
|
||||
route: RouteDef;
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ type GridItem = {
|
|||
publicUrl?: string | null;
|
||||
originalUrl?: string | null;
|
||||
type: string | null;
|
||||
}
|
||||
};
|
||||
|
||||
function setupGrid(): GridSetting {
|
||||
const $style = useCssModule();
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@ type GridItem = {
|
|||
localOnly: boolean;
|
||||
roleIdsThatCanBeUsedThisEmojiAsReaction: { id: string, name: string }[];
|
||||
type: string | null;
|
||||
}
|
||||
};
|
||||
|
||||
function setupGrid(): GridSetting {
|
||||
const $style = useCssModule();
|
||||
|
|
|
|||
|
|
@ -168,7 +168,7 @@ type GridItem = {
|
|||
url: string;
|
||||
name: string;
|
||||
host: string;
|
||||
}
|
||||
};
|
||||
|
||||
function setupGrid(): GridSetting {
|
||||
const $style = useCssModule();
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ const noteSearchableScope = instance.noteSearchableScope ?? 'local';
|
|||
|
||||
const hostSelect = ref<'all' | 'local' | 'specified'>('all');
|
||||
|
||||
const setHostSelectWithInput = (after:string|undefined|null, before:string|undefined|null) => {
|
||||
const setHostSelectWithInput = (after: string | undefined | null, before: string | undefined | null) => {
|
||||
if (before === after) return;
|
||||
if (after === '') hostSelect.value = 'all';
|
||||
else hostSelect.value = 'specified';
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ export function createAiScriptEnv(opts: { storageKey: string, token?: string })
|
|||
// バグがあればundefinedもあり得るため念のため
|
||||
if (typeof token.value !== 'string') throw new Error('invalid token');
|
||||
}
|
||||
const actualToken: string|null = token?.value ?? opts.token ?? null;
|
||||
const actualToken: string | null = token?.value ?? opts.token ?? null;
|
||||
if (param == null) {
|
||||
throw new errors.AiScriptRuntimeError('expected param');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ export type DroppedDirectory = {
|
|||
isFile: false;
|
||||
path: string;
|
||||
children: DroppedItem[];
|
||||
}
|
||||
};
|
||||
|
||||
export async function extractDroppedItems(ev: DragEvent): Promise<DroppedItem[]> {
|
||||
const dropItems = ev.dataTransfer?.items;
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
const defaultLocaleStringFormats: {[index: string]: string} = {
|
||||
const defaultLocaleStringFormats: { [index: string]: string } = {
|
||||
'weekday': 'narrow',
|
||||
'era': 'narrow',
|
||||
'year': 'numeric',
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
* {@link KeyboardEvent.code} の値を表す文字列。不足分は適宜追加する
|
||||
* @see https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_code_values
|
||||
*/
|
||||
export type KeyCode =
|
||||
export type KeyCode = (
|
||||
| 'Backspace'
|
||||
| 'Tab'
|
||||
| 'Enter'
|
||||
|
|
@ -94,32 +94,32 @@ export type KeyCode =
|
|||
| 'Quote'
|
||||
| 'Meta'
|
||||
| 'AltGraph'
|
||||
;
|
||||
);
|
||||
|
||||
/**
|
||||
* 修飾キーを表す文字列。不足分は適宜追加する。
|
||||
*/
|
||||
export type KeyModifier =
|
||||
export type KeyModifier = (
|
||||
| 'Shift'
|
||||
| 'Control'
|
||||
| 'Alt'
|
||||
| 'Meta'
|
||||
;
|
||||
);
|
||||
|
||||
/**
|
||||
* 押下されたキー以外の状態を表す文字列。不足分は適宜追加する。
|
||||
*/
|
||||
export type KeyState =
|
||||
export type KeyState = (
|
||||
| 'composing'
|
||||
| 'repeat'
|
||||
;
|
||||
);
|
||||
|
||||
export type KeyEventHandler = {
|
||||
modifiers?: KeyModifier[];
|
||||
states?: KeyState[];
|
||||
code: KeyCode | 'any';
|
||||
handler: (event: KeyboardEvent) => void;
|
||||
}
|
||||
};
|
||||
|
||||
export function handleKeyEvent(event: KeyboardEvent, handlers: KeyEventHandler[]) {
|
||||
function checkModifier(ev: KeyboardEvent, modifiers? : KeyModifier[]) {
|
||||
|
|
|
|||
|
|
@ -37,9 +37,9 @@ export class StreamMock extends EventEmitter<StreamEvents> implements IStream {
|
|||
// do nothing
|
||||
}
|
||||
|
||||
public send(typeOrPayload: string): void
|
||||
public send(typeOrPayload: string, payload: any): void
|
||||
public send(typeOrPayload: Record<string, any> | any[]): void
|
||||
public send(typeOrPayload: string): void;
|
||||
public send(typeOrPayload: string, payload: any): void;
|
||||
public send(typeOrPayload: Record<string, any> | any[]): void;
|
||||
public send(typeOrPayload: string | Record<string, any> | any[], payload?: any): void {
|
||||
// do nothing
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ export type SoundStore = {
|
|||
fileUrl: string;
|
||||
|
||||
volume: number;
|
||||
}
|
||||
};
|
||||
|
||||
export const postFormActions: PostFormAction[] = [];
|
||||
export const userActions: UserAction[] = [];
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
import * as Misskey from 'misskey-js';
|
||||
import type { ComputedRef, Ref } from 'vue';
|
||||
|
||||
interface MenuRadioOptionsDef extends Record<string, any> { }
|
||||
type MenuRadioOptionsDef = Record<string, any>;
|
||||
|
||||
export type MenuAction = (ev: MouseEvent) => void;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue