mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-04 08:38:34 +00:00
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.10` -> `1.0.12`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.10/1.0.12) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | @​types/dompurify | [`3.0.5` -> `3.2.0`](https://renovatebot.com/diffs/npm/@types%2fdompurify/3.0.5/3.2.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.10` -> `20.17.11`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.10/20.17.11) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`16.0.1` -> `16.3.0`](https://renovatebot.com/diffs/npm/happy-dom/16.0.1/16.3.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.3.0` -> `15.4.0`](https://renovatebot.com/diffs/npm/react-i18next/15.3.0/15.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.24.4` -> `1.25.1`](https://renovatebot.com/diffs/npm/shiki/1.24.4/1.25.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.18.2` -> `8.19.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.18.2/8.19.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>DaveMBush/eslint-plugin-rxjs (@​smarttools/eslint-plugin-rxjs)</summary> ### [`v1.0.12`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.12): 1.0.12 (2025-01-01) [Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.11...v1.0.12) Update dependencies remove decamalize and replace with regex remove unused file ### [`v1.0.11`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.11): 1.0.11 (2024-12-30) [Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.10...v1.0.11) rollback to what was in 1.0.9 while trying to keep the intended fix for 1.0.10 </details> <details> <summary>capricorn86/happy-dom (happy-dom)</summary> ### [`v16.3.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.3.0) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.9...v16.3.0) ##### 🎨 Features - Adds support for child combinator to ":has()" pseudo selector (e.g. "span:has(> video)") - By **[@​capricorn86](https://redirect.github.com/capricorn86)** in task [#​1642](https://redirect.github.com/capricorn86/happy-dom/issues/1642) ### [`v16.2.9`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.8...3082b7e010c4362e762d2d387d0316dd96b017cd) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.8...v16.2.9) ### [`v16.2.8`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.2.8) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.7...v16.2.8) ##### 👷♂️ Patch fixes - Fixes issue where the wrong event target was used when dispatching events on HTMLFormElement or HTMLSelectElement - By **[@​betterqualityassuranceuser](https://redirect.github.com/betterqualityassuranceuser)** in task [#​1628](https://redirect.github.com/capricorn86/happy-dom/issues/1628) ### [`v16.2.7`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.6...78eb24034576e4ecc39a3633967799ea75bead50) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.6...v16.2.7) ### [`v16.2.6`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.5...2c8a59619a35b55c398db27927027d9a1458a6a1) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.5...v16.2.6) ### [`v16.2.5`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.4...675e306d2440cabdb7e2d75ef5a78ea47e506494) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.4...v16.2.5) ### [`v16.2.4`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.2.4) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.3...v16.2.4) ##### 👷♂️ Patch fixes - Fixes bug where the incorrect location is set after a redirect in `BrowserFrame.goto()` and `DetachedBrowserFrame.goto()` - By **[@​capricorn86](https://redirect.github.com/capricorn86)** in task [#​1627](https://redirect.github.com/capricorn86/happy-dom/issues/1627) ### [`v16.2.3`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.2...f41ad67816008a068c5cefcbac31b2fda7d2f4e2) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.2...v16.2.3) ### [`v16.2.2`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.2.2) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.1...v16.2.2) ##### 👷♂️ Patch fixes - Improves error when a Symbol object is being sent to `querySelector()` or `querySelectorAll()` as selector - By **[@​chocolateboy](https://redirect.github.com/chocolateboy)** in task [#​1640](https://redirect.github.com/capricorn86/happy-dom/issues/1640) ### [`v16.2.1`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.0...f7b6ac6bd6e3cfc843c9787ce935f348f0c40363) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.0...v16.2.1) ### [`v16.2.0`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.1.0...5629a74693e19b6a7661a4242b139bf8524c6247) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.1.0...v16.2.0) ### [`v16.1.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.1.0) [Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.0.1...v16.1.0) ##### 🎨 Features - Add support for using whitespace-separated list to `getElementsByClassName()` - By **[@​kylehalleman](https://redirect.github.com/kylehalleman)** in task [#​1551](https://redirect.github.com/capricorn86/happy-dom/issues/1551) </details> <details> <summary>i18next/react-i18next (react-i18next)</summary> ### [`v15.4.0`](https://redirect.github.com/i18next/react-i18next/blob/HEAD/CHANGELOG.md#1540) [Compare Source](https://redirect.github.com/i18next/react-i18next/compare/v15.3.0...v15.4.0) feat: add meta with codes on warnings to allow conditional logging [1826](https://redirect.github.com/i18next/react-i18next/pull/1826) </details> <details> <summary>shikijs/shiki (shiki)</summary> ### [`v1.25.1`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.25.1) ##### 🐞 Bug Fixes - Bundle externals - by [@​antfu](https://redirect.github.com/antfu) [<samp>(4e173)</samp>](https://redirect.github.com/shikijs/shiki/commit/4e173fe1) ##### [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.25.0...v1.25.1) ### [`v1.25.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.25.0) [Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.24.4...v1.25.0) ##### 🚀 Features - Introduce `@shikijs/themes` and `@shikijs/langs` packages - by [@​antfu](https://redirect.github.com/antfu) in [https://github.com/shikijs/shiki/issues/879](https://redirect.github.com/shikijs/shiki/issues/879) [<samp>(32ce2)</samp>](https://redirect.github.com/shikijs/shiki/commit/32ce29fe) - Update grammars and `oniguruma-to-es` - by [@​antfu](https://redirect.github.com/antfu) [<samp>(3cdcb)</samp>](https://redirect.github.com/shikijs/shiki/commit/3cdcbac4) - **engine-js**: Update deps, support new languages - by [@​slevithan](https://redirect.github.com/slevithan) in [https://github.com/shikijs/shiki/issues/875](https://redirect.github.com/shikijs/shiki/issues/875) [<samp>(c3524)</samp>](https://redirect.github.com/shikijs/shiki/commit/c3524b2a) ##### [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.24.4...v1.25.0) </details> <details> <summary>typescript-eslint/typescript-eslint (typescript-eslint)</summary> ### [`v8.19.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/typescript-eslint/CHANGELOG.md#8190-2024-12-30) [Compare Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.18.2...v8.19.0) This was a version bump only for typescript-eslint to align it with other projects, there were no code changes. You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS44NS4wIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
294 lines
9.1 KiB
JavaScript
294 lines
9.1 KiB
JavaScript
import { readFileSync } from 'node:fs';
|
|
import { createRequire } from 'node:module';
|
|
|
|
import eslint from '@eslint/js';
|
|
import tsParser from '@typescript-eslint/parser';
|
|
import eslintConfigPrettier from 'eslint-config-prettier';
|
|
import importX from 'eslint-plugin-import-x';
|
|
import react from 'eslint-plugin-react';
|
|
import reactHooks from 'eslint-plugin-react-hooks';
|
|
import simpleImportSort from 'eslint-plugin-simple-import-sort';
|
|
import sonarjs from 'eslint-plugin-sonarjs';
|
|
import unicorn from 'eslint-plugin-unicorn';
|
|
import tseslint from 'typescript-eslint';
|
|
|
|
const __require = createRequire(import.meta.url);
|
|
|
|
const rxjs = __require('@smarttools/eslint-plugin-rxjs');
|
|
|
|
const ignoreList = readFileSync('.prettierignore', 'utf-8')
|
|
.split('\n')
|
|
.filter(line => line.trim() && !line.startsWith('#'));
|
|
|
|
export default tseslint.config(
|
|
{
|
|
ignores: ignoreList,
|
|
},
|
|
{
|
|
settings: {
|
|
react: {
|
|
version: 'detect',
|
|
},
|
|
},
|
|
languageOptions: {
|
|
parser: tsParser,
|
|
ecmaVersion: 'latest',
|
|
parserOptions: {
|
|
project: './tsconfig.eslint.json',
|
|
tsconfigRootDir: import.meta.dirname,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
plugins: {
|
|
'@typescript-eslint': tseslint.plugin,
|
|
react,
|
|
'react-hooks': reactHooks,
|
|
sonarjs,
|
|
'import-x': importX,
|
|
'simple-import-sort': simpleImportSort,
|
|
rxjs,
|
|
unicorn,
|
|
},
|
|
rules: {
|
|
...eslint.configs.recommended.rules,
|
|
...react.configs.recommended.rules,
|
|
...react.configs['jsx-runtime'].rules,
|
|
...reactHooks.configs.recommended.rules,
|
|
// covered by TypeScript
|
|
'no-dupe-args': 'off',
|
|
// the following rules are disabled because they are covered by oxlint
|
|
'array-callback-return': 'off',
|
|
'constructor-super': 'off',
|
|
eqeqeq: 'off',
|
|
'getter-return': 'off',
|
|
'for-direction': 'off',
|
|
'require-yield': 'off',
|
|
'use-isnan': 'off',
|
|
'valid-typeof': 'off',
|
|
'no-self-compare': 'off',
|
|
'no-empty': 'off',
|
|
'no-constant-binary-expression': 'off',
|
|
'no-constructor-return': 'off',
|
|
'no-func-assign': 'off',
|
|
'no-global-assign': 'off',
|
|
'no-ex-assign': 'off',
|
|
'no-fallthrough': 'off',
|
|
'no-irregular-whitespace': 'off',
|
|
'no-control-regex': 'off',
|
|
'no-with': 'off',
|
|
'no-debugger': 'off',
|
|
'no-const-assign': 'off',
|
|
'no-import-assign': 'off',
|
|
'no-setter-return': 'off',
|
|
'no-obj-calls': 'off',
|
|
'no-unsafe-negation': 'off',
|
|
'no-dupe-class-members': 'off',
|
|
'no-dupe-keys': 'off',
|
|
'no-this-before-super': 'off',
|
|
'no-empty-character-class': 'off',
|
|
'no-useless-catch': 'off',
|
|
'no-async-promise-executor': 'off',
|
|
'no-unreachable': 'off',
|
|
'no-duplicate-case': 'off',
|
|
'no-empty-pattern': 'off',
|
|
'no-unused-labels': 'off',
|
|
'no-sparse-arrays': 'off',
|
|
'no-delete-var': 'off',
|
|
'no-compare-neg-zero': 'off',
|
|
'no-redeclare': 'off',
|
|
'no-case-declarations': 'off',
|
|
'no-class-assign': 'off',
|
|
'no-var': 'off',
|
|
'no-self-assign': 'off',
|
|
'no-inner-declarations': 'off',
|
|
'no-dupe-else-if': 'off',
|
|
'no-invalid-regexp': 'off',
|
|
'no-unsafe-finally': 'off',
|
|
'no-prototype-builtins': 'off',
|
|
'no-shadow-restricted-names': 'off',
|
|
'no-nonoctal-decimal-escape': 'off',
|
|
'no-constant-condition': 'off',
|
|
'no-useless-escape': 'off',
|
|
'no-unsafe-optional-chaining': 'off',
|
|
'no-extra-boolean-cast': 'off',
|
|
'no-regex-spaces': 'off',
|
|
'no-unused-vars': 'off',
|
|
'no-undef': 'off',
|
|
'no-cond-assign': 'off',
|
|
'react/jsx-no-useless-fragment': 'off',
|
|
'react/no-unknown-property': 'off',
|
|
'react/no-string-refs': 'off',
|
|
'react/no-direct-mutation-state': 'off',
|
|
'react/require-render-return': 'off',
|
|
'react/jsx-no-undef': 'off',
|
|
'react/jsx-no-duplicate-props': 'off',
|
|
'react/jsx-key': 'off',
|
|
'react/no-danger-with-children': 'off',
|
|
'react/no-unescaped-entities': 'off',
|
|
'react/no-is-mounted': 'off',
|
|
'react/no-find-dom-node': 'off',
|
|
'react/no-children-prop': 'off',
|
|
'react/no-render-return-value': 'off',
|
|
'react/jsx-no-target-blank': 'off',
|
|
'react/jsx-no-comment-textnodes': 'off',
|
|
'react/prop-types': 'off',
|
|
'sonarjs/no-useless-catch': 'off',
|
|
'@typescript-eslint/consistent-type-imports': 'off',
|
|
'@typescript-eslint/no-unused-vars': 'off',
|
|
'@typescript-eslint/no-non-null-assertion': 'off',
|
|
'@typescript-eslint/no-loss-of-precision': 'off',
|
|
'@typescript-eslint/ban-ts-comment': 'off',
|
|
'@typescript-eslint/triple-slash-reference': 'off',
|
|
'@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
|
|
'@typescript-eslint/no-duplicate-enum-values': 'off',
|
|
'@typescript-eslint/no-extra-non-null-assertion': 'off',
|
|
'@typescript-eslint/no-misused-new': 'off',
|
|
'@typescript-eslint/prefer-for-of': 'error',
|
|
'@typescript-eslint/no-unsafe-declaration-merging': 'off',
|
|
'@typescript-eslint/no-this-alias': 'off',
|
|
'@typescript-eslint/prefer-as-const': 'off',
|
|
'@typescript-eslint/no-var-requires': 'off',
|
|
'@typescript-eslint/no-namespace': 'off',
|
|
'@typescript-eslint/no-unnecessary-type-constraint': 'off',
|
|
'@typescript-eslint/no-array-constructor': 'off',
|
|
'@typescript-eslint/no-explicit-any': 'off',
|
|
'@typescript-eslint/no-empty-function': 'off',
|
|
|
|
// rules that are not supported by oxlint
|
|
'@typescript-eslint/no-unsafe-function-type': 'error',
|
|
'@typescript-eslint/no-wrapper-object-types': 'error',
|
|
'@typescript-eslint/unified-signatures': 'error',
|
|
'@typescript-eslint/no-restricted-imports': [
|
|
'error',
|
|
{
|
|
patterns: [
|
|
{
|
|
group: ['**/dist'],
|
|
message: "Don't import from dist",
|
|
allowTypeImports: false,
|
|
},
|
|
{
|
|
group: ['**/src'],
|
|
message: "Don't import from src",
|
|
allowTypeImports: false,
|
|
},
|
|
{
|
|
group: ['@blocksuite/store'],
|
|
message: "Import from '@blocksuite/global/utils'",
|
|
importNames: ['assertExists', 'assertEquals'],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
'sonarjs/no-all-duplicated-branches': 'error',
|
|
'sonarjs/no-element-overwrite': 'error',
|
|
'sonarjs/no-empty-collection': 'error',
|
|
'sonarjs/no-extra-arguments': 'error',
|
|
'sonarjs/no-identical-conditions': 'error',
|
|
'sonarjs/no-identical-expressions': 'error',
|
|
'sonarjs/no-ignored-return': 'error',
|
|
'sonarjs/no-one-iteration-loop': 'error',
|
|
'sonarjs/no-use-of-empty-return-value': 'error',
|
|
'sonarjs/non-existent-operator': 'error',
|
|
'sonarjs/no-collapsible-if': 'error',
|
|
'sonarjs/no-same-line-conditional': 'error',
|
|
'sonarjs/no-duplicated-branches': 'error',
|
|
'sonarjs/no-collection-size-mischeck': 'error',
|
|
'sonarjs/no-identical-functions': 'error',
|
|
'sonarjs/no-gratuitous-expressions': 'error',
|
|
|
|
'simple-import-sort/imports': 'error',
|
|
'simple-import-sort/exports': 'error',
|
|
},
|
|
},
|
|
{
|
|
files: [
|
|
'packages/**/*.{ts,tsx}',
|
|
'tools/**/*.{ts,tsx}',
|
|
'blocksuite/**/*.{ts,tsx}',
|
|
],
|
|
rules: {
|
|
'@typescript-eslint/no-floating-promises': [
|
|
'error',
|
|
{
|
|
ignoreVoid: false,
|
|
ignoreIIFE: false,
|
|
},
|
|
],
|
|
'@typescript-eslint/await-thenable': 'error',
|
|
'@typescript-eslint/require-array-sort-compare': 'error',
|
|
'@typescript-eslint/no-misused-promises': ['error'],
|
|
'@typescript-eslint/prefer-readonly': 'error',
|
|
'import-x/no-extraneous-dependencies': ['error'],
|
|
'react-hooks/exhaustive-deps': [
|
|
'warn',
|
|
{
|
|
additionalHooks:
|
|
'(useAsyncCallback|useCatchEventCallback|useDraggable|useDropTarget|useRefEffect)',
|
|
},
|
|
],
|
|
'rxjs/finnish': [
|
|
'error',
|
|
{
|
|
functions: false,
|
|
methods: false,
|
|
strict: true,
|
|
|
|
types: {
|
|
'^LiveData$': true,
|
|
'^Doc$': false,
|
|
'^Awareness$': false,
|
|
'^UndoManager$': false,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
},
|
|
{
|
|
files: [
|
|
'**/__tests__/**/*',
|
|
'**/*.stories.tsx',
|
|
'**/*.spec.ts',
|
|
'**/tests/**/*',
|
|
'scripts/**/*',
|
|
'**/benchmark/**/*',
|
|
'**/__debug__/**/*',
|
|
'**/e2e/**/*',
|
|
],
|
|
rules: {
|
|
'@typescript-eslint/no-floating-promises': 0,
|
|
'@typescript-eslint/no-misused-promises': 0,
|
|
'@typescript-eslint/no-restricted-imports': 0,
|
|
},
|
|
},
|
|
{
|
|
files: ['**/*.{ts,js,mjs}'],
|
|
rules: {
|
|
'react-hooks/rules-of-hooks': 'off',
|
|
},
|
|
},
|
|
{
|
|
files: ['packages/frontend/apps/electron/scripts/**/*'],
|
|
rules: {
|
|
'import-x/no-extraneous-dependencies': 'off',
|
|
},
|
|
},
|
|
{
|
|
files: ['blocksuite/**/*.{ts,tsx}'],
|
|
rules: {
|
|
'rxjs/finnish': 'off',
|
|
},
|
|
},
|
|
{
|
|
files: [
|
|
'blocksuite/tests-legacy/**/*.{ts,tsx}',
|
|
'blocksuite/**/__tests__/**/*.{ts,tsx}',
|
|
],
|
|
rules: {
|
|
'import-x/no-extraneous-dependencies': 'off',
|
|
},
|
|
},
|
|
eslintConfigPrettier
|
|
);
|