diff --git a/.eslintrc.js b/.eslintrc.js index 6050fcd2..800cb26a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -17,6 +17,12 @@ module.exports = { '@typescript-eslint' ], overrides: [ + { + files: ['*.js', 'utils/*.js'], + rules: { + '@typescript-eslint/no-var-requires': 'off', + } + }, { files: ['*.svelte'], processor: 'svelte3/svelte3', @@ -31,12 +37,20 @@ module.exports = { '@typescript-eslint/prefer-nullish-coalescing': 'off', // Causes false positives with reactive and auto subscriptions '@typescript-eslint/strict-boolean-expressions': 'off', + '@typescript-eslint/no-unsafe-argument': 'off', 'no-sequences': 'off', 'no-unused-expressions': 'off', } } ], rules: { + // TODO: probably want to enable some of these + '@typescript-eslint/explicit-function-return-type': 'off', + '@typescript-eslint/no-confusing-void-expression': 'off', + '@typescript-eslint/no-floating-promises': 'off', + '@typescript-eslint/no-non-null-assertion': 'off', + '@typescript-eslint/no-unused-expressions': 'off', + 'linebreak-style': [ 'error', 'unix' @@ -91,7 +105,14 @@ module.exports = { ], }, settings: { - 'svelte3/typescript': () => require('typescript') + 'svelte3/typescript': () => require('typescript'), + 'svelte3/ignore-warnings': (warning) => { + if (warning.code === 'a11y-click-events-have-key-events') { + return true; + } + + return false; + }, }, globals: { Ytc: 'readonly', diff --git a/src/components/ChatSummary.svelte b/src/components/ChatSummary.svelte index 5453cc7b..09c680a9 100644 --- a/src/components/ChatSummary.svelte +++ b/src/components/ChatSummary.svelte @@ -15,7 +15,7 @@ const classes = 'rounded inline-flex flex-col overflow-visible ' + 'bg-secondary-900 p-2 w-full text-white z-10 shadow'; - const onShorten = () => { + const onShorten = () => { shorten = !shorten; if (autoHideTimeout) { clearTimeout(autoHideTimeout); diff --git a/src/components/Hyperchat.svelte b/src/components/Hyperchat.svelte index ab89cdb5..bc13bd15 100644 --- a/src/components/Hyperchat.svelte +++ b/src/components/Hyperchat.svelte @@ -60,7 +60,7 @@ const CHAT_HISTORY_SIZE = 150; const TRUNCATE_SIZE = 20; - let messageActions: (Chat.MessageAction | Welcome)[] = []; + let messageActions: Array = []; const messageKeys = new Set(); let poll: Ytc.ParsedPoll | null; let pinned: Ytc.ParsedPinned | null; @@ -408,7 +408,7 @@ $: updateTheme($theme, $ytDark); // Scroll to bottom when any of these settings change - $: ((..._a: any[]) => scrollToBottom())( + $: ((..._a: any[]) => { scrollToBottom(); })( $showProfileIcons, $showUsernames, $showTimestamps, $showUserBadges ); @@ -474,10 +474,10 @@ class:flex = {!isWelcome(action)} class:mention = {$enableHighlightedMentions && isMessage(action) && isMention(action.message)} class:mention-light = {!$smelteDark} - on:mouseover={() => setHover(action)} - on:focus={() => setHover(action)} - on:mouseout={() => setHover(null)} - on:blur={() => setHover(null)} + on:mouseover={() => { setHover(action); }} + on:focus={() => { setHover(action); }} + on:mouseout={() => { setHover(null); }} + on:blur={() => { setHover(null); }} > {#if isWelcome(action)} diff --git a/src/components/HyperchatButton.svelte b/src/components/HyperchatButton.svelte index e4eb7334..7ea67b74 100644 --- a/src/components/HyperchatButton.svelte +++ b/src/components/HyperchatButton.svelte @@ -74,14 +74,6 @@ cursor: pointer; transition: box-shadow 0.2s; } - .toggleButton .floating-icon { - position: absolute; - bottom: 5px; - right: 3px; - width: 15px; - height: 15px; - } - .toggleButton.disabled { color: var(--yt-live-chat-secondary-text-color); } diff --git a/src/components/Message.svelte b/src/components/Message.svelte index 1a4e3551..61452897 100644 --- a/src/components/Message.svelte +++ b/src/components/Message.svelte @@ -80,7 +80,7 @@ icon: d.icon, text: d.text, value: d.value.toString(), - onClick: () => useBanHammer(message, d.value, $port) + onClick: () => { useBanHammer(message, d.value, $port); } })); const openReplyTargetSuperchat = () => { @@ -157,7 +157,7 @@ { + const onShorten = () => { shorten = !shorten; if (autoHideTimeout) { clearTimeout(autoHideTimeout); diff --git a/src/components/RedirectBanner.svelte b/src/components/RedirectBanner.svelte index 6a2faaa6..70f6c2ac 100644 --- a/src/components/RedirectBanner.svelte +++ b/src/components/RedirectBanner.svelte @@ -16,7 +16,7 @@ const classes = 'rounded inline-flex flex-col overflow-visible ' + 'bg-secondary-900 p-2 w-full text-white z-10 shadow'; - const onShorten = () => { + const onShorten = () => { shorten = !shorten; if (autoHideTimeout) { clearTimeout(autoHideTimeout); diff --git a/src/components/ReportBanDialog.svelte b/src/components/ReportBanDialog.svelte index 1dab391a..4aea12be 100644 --- a/src/components/ReportBanDialog.svelte +++ b/src/components/ReportBanDialog.svelte @@ -1,8 +1,6 @@