lint fixes

This commit is contained in:
kakkokari-gtyih 2024-09-10 17:22:26 +09:00
parent 7536e6ae72
commit 18330cec67
5 changed files with 14 additions and 6 deletions

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: AGPL-3.0-only * SPDX-License-Identifier: AGPL-3.0-only
*/ */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
type FIXME = any; type FIXME = any;
declare const _LANGS_: string[][]; declare const _LANGS_: string[][];
@ -19,5 +20,6 @@ declare const _LANGS_FULL_: string[][];
// TagCanvas // TagCanvas
interface Window { interface Window {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
TagCanvas: any; TagCanvas: any;
} }

View File

@ -5,6 +5,7 @@
import type { Locale } from '../../../locales/index.js'; import type { Locale } from '../../../locales/index.js';
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
const address = new URL(document.querySelector<HTMLMetaElement>('meta[property="instance_url"]')?.content || location.href); const address = new URL(document.querySelector<HTMLMetaElement>('meta[property="instance_url"]')?.content || location.href);
const siteName = document.querySelector<HTMLMetaElement>('meta[property="og:site_name"]')?.content; const siteName = document.querySelector<HTMLMetaElement>('meta[property="og:site_name"]')?.content;
@ -18,7 +19,7 @@ export const langs = _LANGS_;
const preParseLocale = localStorage.getItem('locale'); const preParseLocale = localStorage.getItem('locale');
export let locale: Locale = preParseLocale ? JSON.parse(preParseLocale) : null; export let locale: Locale = preParseLocale ? JSON.parse(preParseLocale) : null;
export const version = _VERSION_; export const version = _VERSION_;
export const instanceName = siteName === 'Misskey' || siteName == null ? host : siteName; export const instanceName = (siteName === 'Misskey' || siteName == null) ? host : siteName;
export const ui = localStorage.getItem('ui'); export const ui = localStorage.getItem('ui');
export const debug = localStorage.getItem('debug') === 'true'; export const debug = localStorage.getItem('debug') === 'true';

View File

@ -19,7 +19,7 @@ export function char2fluentEmojiFilePath(char: string): string {
// Fluent Emojiは国旗非対応 https://github.com/microsoft/fluentui-emoji/issues/25 // Fluent Emojiは国旗非対応 https://github.com/microsoft/fluentui-emoji/issues/25
if (codes[0]?.startsWith('1f1')) return char2twemojiFilePath(char); if (codes[0]?.startsWith('1f1')) return char2twemojiFilePath(char);
if (!codes.includes('200d')) codes = codes.filter(x => x !== 'fe0f'); if (!codes.includes('200d')) codes = codes.filter(x => x !== 'fe0f');
codes = codes.filter(x => x && x.length); codes = codes.filter(x => x != null && x.length > 0);
const fileName = codes.map(x => x!.padStart(4, '0')).join('-'); const fileName = (codes as string[]).map(x => x.padStart(4, '0')).join('-');
return `${fluentEmojiPngBase}/${fileName}.png`; return `${fluentEmojiPngBase}/${fileName}.png`;
} }

View File

@ -5,6 +5,7 @@
import { lang } from '@@/js/config.js'; import { lang } from '@@/js/config.js';
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
export const versatileLang = (lang ?? 'ja-JP').replace('ja-KS', 'ja-JP'); export const versatileLang = (lang ?? 'ja-JP').replace('ja-KS', 'ja-JP');
let _dateTimeFormat: Intl.DateTimeFormat; let _dateTimeFormat: Intl.DateTimeFormat;

View File

@ -3,16 +3,18 @@
* SPDX-License-Identifier: AGPL-3.0-only * SPDX-License-Identifier: AGPL-3.0-only
*/ */
function defaultUseWorkerNumber(prev: number, totalWorkers: number) { function defaultUseWorkerNumber(prev: number) {
return prev + 1; return prev + 1;
} }
type WorkerNumberGetter = (prev: number, totalWorkers: number) => number;
export class WorkerMultiDispatch<POST = unknown, RETURN = unknown> { export class WorkerMultiDispatch<POST = unknown, RETURN = unknown> {
private symbol = Symbol('WorkerMultiDispatch'); private symbol = Symbol('WorkerMultiDispatch');
private workers: Worker[] = []; private workers: Worker[] = [];
private terminated = false; private terminated = false;
private prevWorkerNumber = 0; private prevWorkerNumber = 0;
private getUseWorkerNumber = defaultUseWorkerNumber; private getUseWorkerNumber: WorkerNumberGetter;
private finalizationRegistry: FinalizationRegistry<symbol>; private finalizationRegistry: FinalizationRegistry<symbol>;
constructor(workerConstructor: () => Worker, concurrency: number, getUseWorkerNumber = defaultUseWorkerNumber) { constructor(workerConstructor: () => Worker, concurrency: number, getUseWorkerNumber = defaultUseWorkerNumber) {
@ -29,7 +31,7 @@ export class WorkerMultiDispatch<POST = unknown, RETURN = unknown> {
if (_DEV_) console.log('WorkerMultiDispatch: Created', this); if (_DEV_) console.log('WorkerMultiDispatch: Created', this);
} }
public postMessage(message: POST, options?: Transferable[] | StructuredSerializeOptions, useWorkerNumber: typeof defaultUseWorkerNumber = this.getUseWorkerNumber) { public postMessage(message: POST, options?: Transferable[] | StructuredSerializeOptions, useWorkerNumber: WorkerNumberGetter = this.getUseWorkerNumber) {
let workerNumber = useWorkerNumber(this.prevWorkerNumber, this.workers.length); let workerNumber = useWorkerNumber(this.prevWorkerNumber, this.workers.length);
workerNumber = Math.abs(Math.round(workerNumber)) % this.workers.length; workerNumber = Math.abs(Math.round(workerNumber)) % this.workers.length;
if (_DEV_) console.log('WorkerMultiDispatch: Posting message to worker', workerNumber, useWorkerNumber); if (_DEV_) console.log('WorkerMultiDispatch: Posting message to worker', workerNumber, useWorkerNumber);
@ -46,12 +48,14 @@ export class WorkerMultiDispatch<POST = unknown, RETURN = unknown> {
return workerNumber; return workerNumber;
} }
// eslint-disable-next-line @typescript-eslint/no-explicit-any
public addListener(callback: (this: Worker, ev: MessageEvent<RETURN>) => any, options?: boolean | AddEventListenerOptions) { public addListener(callback: (this: Worker, ev: MessageEvent<RETURN>) => any, options?: boolean | AddEventListenerOptions) {
this.workers.forEach(worker => { this.workers.forEach(worker => {
worker.addEventListener('message', callback, options); worker.addEventListener('message', callback, options);
}); });
} }
// eslint-disable-next-line @typescript-eslint/no-explicit-any
public removeListener(callback: (this: Worker, ev: MessageEvent<RETURN>) => any, options?: boolean | AddEventListenerOptions) { public removeListener(callback: (this: Worker, ev: MessageEvent<RETURN>) => any, options?: boolean | AddEventListenerOptions) {
this.workers.forEach(worker => { this.workers.forEach(worker => {
worker.removeEventListener('message', callback, options); worker.removeEventListener('message', callback, options);