You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

.eslintrc.yaml 17KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552
  1. root: true
  2. reportUnusedDisableDirectives: true
  3. ignorePatterns:
  4. - /web_src/js/vendor
  5. parserOptions:
  6. sourceType: module
  7. ecmaVersion: latest
  8. plugins:
  9. - eslint-plugin-unicorn
  10. - eslint-plugin-import
  11. - eslint-plugin-jquery
  12. - eslint-plugin-sonarjs
  13. - eslint-plugin-custom-elements
  14. env:
  15. es2022: true
  16. node: true
  17. globals:
  18. __webpack_public_path__: true
  19. overrides:
  20. - files: ["web_src/**/*.js", "docs/**/*.js"]
  21. env:
  22. browser: true
  23. node: false
  24. - files: ["web_src/**/*worker.js"]
  25. env:
  26. worker: true
  27. rules:
  28. no-restricted-globals: [2, addEventListener, blur, close, closed, confirm, defaultStatus, defaultstatus, error, event, external, find, focus, frameElement, frames, history, innerHeight, innerWidth, isFinite, isNaN, length, locationbar, menubar, moveBy, moveTo, name, onblur, onerror, onfocus, onload, onresize, onunload, open, opener, opera, outerHeight, outerWidth, pageXOffset, pageYOffset, parent, print, removeEventListener, resizeBy, resizeTo, screen, screenLeft, screenTop, screenX, screenY, scroll, scrollbars, scrollBy, scrollTo, scrollX, scrollY, status, statusbar, stop, toolbar, top]
  29. - files: ["build/generate-images.js"]
  30. rules:
  31. import/no-unresolved: [0]
  32. import/no-extraneous-dependencies: [0]
  33. - files: ["*.config.js"]
  34. rules:
  35. import/no-unused-modules: [0]
  36. rules:
  37. accessor-pairs: [2]
  38. array-bracket-newline: [0]
  39. array-bracket-spacing: [2, never]
  40. array-callback-return: [2, {checkForEach: true}]
  41. array-element-newline: [0]
  42. arrow-body-style: [0]
  43. arrow-parens: [2, always]
  44. arrow-spacing: [2, {before: true, after: true}]
  45. block-scoped-var: [2]
  46. brace-style: [2, 1tbs, {allowSingleLine: true}]
  47. camelcase: [0]
  48. capitalized-comments: [0]
  49. class-methods-use-this: [0]
  50. comma-dangle: [2, only-multiline]
  51. comma-spacing: [2, {before: false, after: true}]
  52. comma-style: [2, last]
  53. complexity: [0]
  54. computed-property-spacing: [2, never]
  55. consistent-return: [0]
  56. consistent-this: [0]
  57. constructor-super: [2]
  58. curly: [0]
  59. custom-elements/expose-class-on-global: [0]
  60. custom-elements/extends-correct-class: [2]
  61. custom-elements/file-name-matches-element: [0]
  62. custom-elements/no-constructor: [2]
  63. custom-elements/no-customized-built-in-elements: [2]
  64. custom-elements/no-dom-traversal-in-attributechangedcallback: [2]
  65. custom-elements/no-dom-traversal-in-connectedcallback: [2]
  66. custom-elements/no-exports-with-element: [2]
  67. custom-elements/no-method-prefixed-with-on: [2]
  68. custom-elements/no-unchecked-define: [0]
  69. custom-elements/one-element-per-file: [0]
  70. custom-elements/tag-name-matches-class: [2]
  71. custom-elements/valid-tag-name: [2]
  72. default-case-last: [2]
  73. default-case: [0]
  74. default-param-last: [0]
  75. dot-location: [2, property]
  76. dot-notation: [0]
  77. eol-last: [2]
  78. eqeqeq: [2]
  79. for-direction: [2]
  80. func-call-spacing: [2, never]
  81. func-name-matching: [2]
  82. func-names: [0]
  83. func-style: [0]
  84. function-call-argument-newline: [0]
  85. function-paren-newline: [0]
  86. generator-star-spacing: [0]
  87. getter-return: [2]
  88. grouped-accessor-pairs: [2]
  89. guard-for-in: [0]
  90. id-blacklist: [0]
  91. id-length: [0]
  92. id-match: [0]
  93. implicit-arrow-linebreak: [0]
  94. import/consistent-type-specifier-style: [0]
  95. import/default: [0]
  96. import/dynamic-import-chunkname: [0]
  97. import/export: [2]
  98. import/exports-last: [0]
  99. import/extensions: [2, always, {ignorePackages: true}]
  100. import/first: [2]
  101. import/group-exports: [0]
  102. import/max-dependencies: [0]
  103. import/named: [2]
  104. import/namespace: [0]
  105. import/newline-after-import: [0]
  106. import/no-absolute-path: [0]
  107. import/no-amd: [0]
  108. import/no-anonymous-default-export: [0]
  109. import/no-commonjs: [0]
  110. import/no-cycle: [2, {ignoreExternal: true, maxDepth: 1}]
  111. import/no-default-export: [0]
  112. import/no-deprecated: [0]
  113. import/no-dynamic-require: [0]
  114. import/no-empty-named-blocks: [2]
  115. import/no-extraneous-dependencies: [2]
  116. import/no-import-module-exports: [0]
  117. import/no-internal-modules: [0]
  118. import/no-mutable-exports: [0]
  119. import/no-named-as-default-member: [0]
  120. import/no-named-as-default: [2]
  121. import/no-named-default: [0]
  122. import/no-named-export: [0]
  123. import/no-namespace: [0]
  124. import/no-nodejs-modules: [0]
  125. import/no-relative-packages: [0]
  126. import/no-relative-parent-imports: [0]
  127. import/no-restricted-paths: [0]
  128. import/no-self-import: [2]
  129. import/no-unassigned-import: [0]
  130. import/no-unresolved: [2, {commonjs: true, ignore: ["\\?.+$"]}]
  131. import/no-unused-modules: [2, {unusedExports: true}]
  132. import/no-useless-path-segments: [2, {commonjs: true}]
  133. import/no-webpack-loader-syntax: [2]
  134. import/order: [0]
  135. import/prefer-default-export: [0]
  136. import/unambiguous: [0]
  137. indent: [2, 2, {SwitchCase: 1}]
  138. init-declarations: [0]
  139. jquery/no-ajax-events: [2]
  140. jquery/no-ajax: [0]
  141. jquery/no-animate: [2]
  142. jquery/no-attr: [0]
  143. jquery/no-bind: [2]
  144. jquery/no-class: [0]
  145. jquery/no-clone: [2]
  146. jquery/no-closest: [0]
  147. jquery/no-css: [0]
  148. jquery/no-data: [0]
  149. jquery/no-deferred: [2]
  150. jquery/no-delegate: [2]
  151. jquery/no-each: [0]
  152. jquery/no-extend: [2]
  153. jquery/no-fade: [0]
  154. jquery/no-filter: [0]
  155. jquery/no-find: [0]
  156. jquery/no-global-eval: [2]
  157. jquery/no-grep: [2]
  158. jquery/no-has: [2]
  159. jquery/no-hide: [2]
  160. jquery/no-html: [0]
  161. jquery/no-in-array: [2]
  162. jquery/no-is-array: [2]
  163. jquery/no-is-function: [2]
  164. jquery/no-is: [0]
  165. jquery/no-load: [2]
  166. jquery/no-map: [0]
  167. jquery/no-merge: [2]
  168. jquery/no-param: [2]
  169. jquery/no-parent: [0]
  170. jquery/no-parents: [0]
  171. jquery/no-parse-html: [2]
  172. jquery/no-prop: [0]
  173. jquery/no-proxy: [2]
  174. jquery/no-ready: [2]
  175. jquery/no-serialize: [2]
  176. jquery/no-show: [2]
  177. jquery/no-size: [2]
  178. jquery/no-sizzle: [0]
  179. jquery/no-slide: [0]
  180. jquery/no-submit: [0]
  181. jquery/no-text: [0]
  182. jquery/no-toggle: [2]
  183. jquery/no-trigger: [0]
  184. jquery/no-trim: [2]
  185. jquery/no-val: [0]
  186. jquery/no-when: [2]
  187. jquery/no-wrap: [2]
  188. key-spacing: [2]
  189. keyword-spacing: [2]
  190. line-comment-position: [0]
  191. linebreak-style: [2, unix]
  192. lines-around-comment: [0]
  193. lines-between-class-members: [0]
  194. logical-assignment-operators: [0]
  195. max-classes-per-file: [0]
  196. max-depth: [0]
  197. max-len: [0]
  198. max-lines-per-function: [0]
  199. max-lines: [0]
  200. max-nested-callbacks: [0]
  201. max-params: [0]
  202. max-statements-per-line: [0]
  203. max-statements: [0]
  204. multiline-comment-style: [2, separate-lines]
  205. multiline-ternary: [0]
  206. new-cap: [0]
  207. new-parens: [2]
  208. newline-per-chained-call: [0]
  209. no-alert: [0]
  210. no-array-constructor: [2]
  211. no-async-promise-executor: [0]
  212. no-await-in-loop: [0]
  213. no-bitwise: [0]
  214. no-buffer-constructor: [0]
  215. no-caller: [2]
  216. no-case-declarations: [2]
  217. no-class-assign: [2]
  218. no-compare-neg-zero: [2]
  219. no-cond-assign: [2, except-parens]
  220. no-confusing-arrow: [0]
  221. no-console: [1, {allow: [debug, info, warn, error]}]
  222. no-const-assign: [2]
  223. no-constant-binary-expression: [2]
  224. no-constant-condition: [0]
  225. no-constructor-return: [2]
  226. no-continue: [0]
  227. no-control-regex: [0]
  228. no-debugger: [1]
  229. no-delete-var: [2]
  230. no-div-regex: [0]
  231. no-dupe-args: [2]
  232. no-dupe-class-members: [2]
  233. no-dupe-else-if: [2]
  234. no-dupe-keys: [2]
  235. no-duplicate-case: [2]
  236. no-duplicate-imports: [2]
  237. no-else-return: [2]
  238. no-empty-character-class: [2]
  239. no-empty-function: [0]
  240. no-empty-pattern: [2]
  241. no-empty-static-block: [2]
  242. no-empty: [2, {allowEmptyCatch: true}]
  243. no-eq-null: [2]
  244. no-eval: [2]
  245. no-ex-assign: [2]
  246. no-extend-native: [2]
  247. no-extra-bind: [2]
  248. no-extra-boolean-cast: [2]
  249. no-extra-label: [0]
  250. no-extra-parens: [0]
  251. no-extra-semi: [2]
  252. no-fallthrough: [2]
  253. no-floating-decimal: [0]
  254. no-func-assign: [2]
  255. no-global-assign: [2]
  256. no-implicit-coercion: [2]
  257. no-implicit-globals: [0]
  258. no-implied-eval: [2]
  259. no-import-assign: [2]
  260. no-inline-comments: [0]
  261. no-inner-declarations: [2]
  262. no-invalid-regexp: [2]
  263. no-invalid-this: [0]
  264. no-irregular-whitespace: [2]
  265. no-iterator: [2]
  266. no-label-var: [2]
  267. no-labels: [0] # handled by no-restricted-syntax
  268. no-lone-blocks: [2]
  269. no-lonely-if: [0]
  270. no-loop-func: [0]
  271. no-loss-of-precision: [2]
  272. no-magic-numbers: [0]
  273. no-misleading-character-class: [2]
  274. no-mixed-operators: [0]
  275. no-mixed-spaces-and-tabs: [2]
  276. no-multi-assign: [0]
  277. no-multi-spaces: [2, {ignoreEOLComments: true, exceptions: {Property: true}}]
  278. no-multi-str: [2]
  279. no-negated-condition: [0]
  280. no-nested-ternary: [0]
  281. no-new-func: [2]
  282. no-new-native-nonconstructor: [2]
  283. no-new-object: [2]
  284. no-new-symbol: [2]
  285. no-new-wrappers: [2]
  286. no-new: [0]
  287. no-nonoctal-decimal-escape: [2]
  288. no-obj-calls: [2]
  289. no-octal-escape: [2]
  290. no-octal: [2]
  291. no-param-reassign: [0]
  292. no-plusplus: [0]
  293. no-promise-executor-return: [0]
  294. no-proto: [2]
  295. no-prototype-builtins: [2]
  296. no-redeclare: [2]
  297. no-regex-spaces: [2]
  298. no-restricted-exports: [0]
  299. no-restricted-globals: [2, addEventListener, blur, close, closed, confirm, defaultStatus, defaultstatus, error, event, external, find, focus, frameElement, frames, history, innerHeight, innerWidth, isFinite, isNaN, length, location, locationbar, menubar, moveBy, moveTo, name, onblur, onerror, onfocus, onload, onresize, onunload, open, opener, opera, outerHeight, outerWidth, pageXOffset, pageYOffset, parent, print, removeEventListener, resizeBy, resizeTo, screen, screenLeft, screenTop, screenX, screenY, scroll, scrollbars, scrollBy, scrollTo, scrollX, scrollY, self, status, statusbar, stop, toolbar, top, __dirname, __filename]
  300. no-restricted-imports: [0]
  301. no-restricted-syntax: [2, WithStatement, ForInStatement, LabeledStatement]
  302. no-return-assign: [0]
  303. no-return-await: [0]
  304. no-script-url: [2]
  305. no-self-assign: [2, {props: true}]
  306. no-self-compare: [2]
  307. no-sequences: [2]
  308. no-setter-return: [2]
  309. no-shadow-restricted-names: [2]
  310. no-shadow: [0]
  311. no-sparse-arrays: [2]
  312. no-tabs: [2]
  313. no-template-curly-in-string: [2]
  314. no-ternary: [0]
  315. no-this-before-super: [2]
  316. no-throw-literal: [2]
  317. no-trailing-spaces: [2]
  318. no-undef-init: [2]
  319. no-undef: [2, {typeof: true}]
  320. no-undefined: [0]
  321. no-underscore-dangle: [0]
  322. no-unexpected-multiline: [2]
  323. no-unmodified-loop-condition: [2]
  324. no-unneeded-ternary: [0]
  325. no-unreachable-loop: [2]
  326. no-unreachable: [2]
  327. no-unsafe-finally: [2]
  328. no-unsafe-negation: [2]
  329. no-unused-expressions: [2]
  330. no-unused-labels: [2]
  331. no-unused-private-class-members: [2]
  332. no-unused-vars: [2, {args: all, argsIgnorePattern: ^_, varsIgnorePattern: ^_, caughtErrorsIgnorePattern: ^_, destructuredArrayIgnorePattern: ^_, ignoreRestSiblings: false}]
  333. no-use-before-define: [2, {functions: false, classes: true, variables: true, allowNamedExports: true}]
  334. no-useless-backreference: [2]
  335. no-useless-call: [2]
  336. no-useless-catch: [2]
  337. no-useless-computed-key: [2]
  338. no-useless-concat: [2]
  339. no-useless-constructor: [2]
  340. no-useless-escape: [2]
  341. no-useless-rename: [2]
  342. no-useless-return: [2]
  343. no-var: [2]
  344. no-void: [2]
  345. no-warning-comments: [0]
  346. no-whitespace-before-property: [2]
  347. no-with: [0] # handled by no-restricted-syntax
  348. nonblock-statement-body-position: [2]
  349. object-curly-newline: [0]
  350. object-curly-spacing: [2, never]
  351. object-shorthand: [2, always]
  352. one-var-declaration-per-line: [0]
  353. one-var: [0]
  354. operator-assignment: [2, always]
  355. operator-linebreak: [2, after]
  356. padded-blocks: [2, never]
  357. padding-line-between-statements: [0]
  358. prefer-arrow-callback: [2, {allowNamedFunctions: true, allowUnboundThis: true}]
  359. prefer-const: [2, {destructuring: all, ignoreReadBeforeAssign: true}]
  360. prefer-destructuring: [0]
  361. prefer-exponentiation-operator: [2]
  362. prefer-named-capture-group: [0]
  363. prefer-numeric-literals: [2]
  364. prefer-object-has-own: [0]
  365. prefer-object-spread: [2]
  366. prefer-promise-reject-errors: [2, {allowEmptyReject: false}]
  367. prefer-regex-literals: [2]
  368. prefer-rest-params: [2]
  369. prefer-spread: [2]
  370. prefer-template: [2]
  371. quote-props: [0]
  372. quotes: [2, single, {avoidEscape: true, allowTemplateLiterals: true}]
  373. radix: [2, as-needed]
  374. require-atomic-updates: [0]
  375. require-await: [0]
  376. require-unicode-regexp: [0]
  377. require-yield: [2]
  378. rest-spread-spacing: [2, never]
  379. semi-spacing: [2, {before: false, after: true}]
  380. semi-style: [2, last]
  381. semi: [2, always, {omitLastInOneLineBlock: true}]
  382. sonarjs/cognitive-complexity: [0]
  383. sonarjs/elseif-without-else: [0]
  384. sonarjs/max-switch-cases: [0]
  385. sonarjs/no-all-duplicated-branches: [2]
  386. sonarjs/no-collapsible-if: [0]
  387. sonarjs/no-collection-size-mischeck: [2]
  388. sonarjs/no-duplicate-string: [0]
  389. sonarjs/no-duplicated-branches: [0]
  390. sonarjs/no-element-overwrite: [2]
  391. sonarjs/no-empty-collection: [2]
  392. sonarjs/no-extra-arguments: [2]
  393. sonarjs/no-gratuitous-expressions: [2]
  394. sonarjs/no-identical-conditions: [2]
  395. sonarjs/no-identical-expressions: [2]
  396. sonarjs/no-identical-functions: [2, 5]
  397. sonarjs/no-ignored-return: [2]
  398. sonarjs/no-inverted-boolean-check: [2]
  399. sonarjs/no-nested-switch: [0]
  400. sonarjs/no-nested-template-literals: [0]
  401. sonarjs/no-one-iteration-loop: [2]
  402. sonarjs/no-redundant-boolean: [2]
  403. sonarjs/no-redundant-jump: [0]
  404. sonarjs/no-same-line-conditional: [2]
  405. sonarjs/no-small-switch: [0]
  406. sonarjs/no-unused-collection: [2]
  407. sonarjs/no-use-of-empty-return-value: [2]
  408. sonarjs/no-useless-catch: [2]
  409. sonarjs/non-existent-operator: [2]
  410. sonarjs/prefer-immediate-return: [0]
  411. sonarjs/prefer-object-literal: [0]
  412. sonarjs/prefer-single-boolean-return: [0]
  413. sonarjs/prefer-while: [2]
  414. sort-imports: [0]
  415. sort-keys: [0]
  416. sort-vars: [0]
  417. space-before-blocks: [2, always]
  418. space-in-parens: [2, never]
  419. space-infix-ops: [2]
  420. space-unary-ops: [2]
  421. spaced-comment: [2, always]
  422. strict: [0]
  423. switch-colon-spacing: [2]
  424. symbol-description: [2]
  425. template-curly-spacing: [2, never]
  426. template-tag-spacing: [2, never]
  427. unicode-bom: [2, never]
  428. unicorn/better-regex: [0]
  429. unicorn/catch-error-name: [0]
  430. unicorn/consistent-destructuring: [2]
  431. unicorn/consistent-function-scoping: [2]
  432. unicorn/custom-error-definition: [0]
  433. unicorn/empty-brace-spaces: [2]
  434. unicorn/error-message: [0]
  435. unicorn/escape-case: [0]
  436. unicorn/expiring-todo-comments: [0]
  437. unicorn/explicit-length-check: [0]
  438. unicorn/filename-case: [0]
  439. unicorn/import-index: [0]
  440. unicorn/import-style: [0]
  441. unicorn/new-for-builtins: [2]
  442. unicorn/no-abusive-eslint-disable: [0]
  443. unicorn/no-array-for-each: [2]
  444. unicorn/no-array-instanceof: [0]
  445. unicorn/no-array-method-this-argument: [2]
  446. unicorn/no-array-push-push: [2]
  447. unicorn/no-await-expression-member: [0]
  448. unicorn/no-console-spaces: [0]
  449. unicorn/no-document-cookie: [2]
  450. unicorn/no-empty-file: [2]
  451. unicorn/no-fn-reference-in-iterator: [0]
  452. unicorn/no-for-loop: [0]
  453. unicorn/no-hex-escape: [0]
  454. unicorn/no-invalid-remove-event-listener: [2]
  455. unicorn/no-keyword-prefix: [0]
  456. unicorn/no-lonely-if: [2]
  457. unicorn/no-negated-condition: [0]
  458. unicorn/no-nested-ternary: [0]
  459. unicorn/no-new-array: [0]
  460. unicorn/no-new-buffer: [0]
  461. unicorn/no-null: [0]
  462. unicorn/no-object-as-default-parameter: [0]
  463. unicorn/no-process-exit: [0]
  464. unicorn/no-reduce: [2]
  465. unicorn/no-static-only-class: [2]
  466. unicorn/no-thenable: [2]
  467. unicorn/no-this-assignment: [2]
  468. unicorn/no-typeof-undefined: [2]
  469. unicorn/no-unnecessary-await: [2]
  470. unicorn/no-unreadable-array-destructuring: [0]
  471. unicorn/no-unreadable-iife: [2]
  472. unicorn/no-unsafe-regex: [0]
  473. unicorn/no-unused-properties: [2]
  474. unicorn/no-useless-fallback-in-spread: [2]
  475. unicorn/no-useless-length-check: [2]
  476. unicorn/no-useless-promise-resolve-reject: [2]
  477. unicorn/no-useless-spread: [2]
  478. unicorn/no-useless-switch-case: [2]
  479. unicorn/no-useless-undefined: [0]
  480. unicorn/no-zero-fractions: [2]
  481. unicorn/number-literal-case: [0]
  482. unicorn/numeric-separators-style: [0]
  483. unicorn/prefer-add-event-listener: [2]
  484. unicorn/prefer-array-find: [2]
  485. unicorn/prefer-array-flat-map: [2]
  486. unicorn/prefer-array-flat: [2]
  487. unicorn/prefer-array-index-of: [2]
  488. unicorn/prefer-array-some: [2]
  489. unicorn/prefer-at: [0]
  490. unicorn/prefer-code-point: [0]
  491. unicorn/prefer-dataset: [2]
  492. unicorn/prefer-date-now: [2]
  493. unicorn/prefer-default-parameters: [0]
  494. unicorn/prefer-event-key: [2]
  495. unicorn/prefer-event-target: [2]
  496. unicorn/prefer-export-from: [2]
  497. unicorn/prefer-includes: [2]
  498. unicorn/prefer-json-parse-buffer: [0]
  499. unicorn/prefer-logical-operator-over-ternary: [2]
  500. unicorn/prefer-math-trunc: [2]
  501. unicorn/prefer-modern-dom-apis: [0]
  502. unicorn/prefer-modern-math-apis: [2]
  503. unicorn/prefer-module: [2]
  504. unicorn/prefer-native-coercion-functions: [2]
  505. unicorn/prefer-negative-index: [2]
  506. unicorn/prefer-node-append: [0]
  507. unicorn/prefer-node-protocol: [2]
  508. unicorn/prefer-node-remove: [0]
  509. unicorn/prefer-number-properties: [0]
  510. unicorn/prefer-object-from-entries: [2]
  511. unicorn/prefer-object-has-own: [0]
  512. unicorn/prefer-optional-catch-binding: [2]
  513. unicorn/prefer-prototype-methods: [0]
  514. unicorn/prefer-query-selector: [0]
  515. unicorn/prefer-reflect-apply: [0]
  516. unicorn/prefer-regexp-test: [2]
  517. unicorn/prefer-replace-all: [0]
  518. unicorn/prefer-set-has: [0]
  519. unicorn/prefer-set-size: [2]
  520. unicorn/prefer-spread: [0]
  521. unicorn/prefer-starts-ends-with: [2]
  522. unicorn/prefer-string-slice: [0]
  523. unicorn/prefer-switch: [0]
  524. unicorn/prefer-ternary: [0]
  525. unicorn/prefer-text-content: [2]
  526. unicorn/prefer-top-level-await: [0]
  527. unicorn/prefer-trim-start-end: [2]
  528. unicorn/prefer-type-error: [0]
  529. unicorn/prevent-abbreviations: [0]
  530. unicorn/relative-url-style: [2]
  531. unicorn/require-array-join-separator: [2]
  532. unicorn/require-number-to-fixed-digits-argument: [2]
  533. unicorn/require-post-message-target-origin: [0]
  534. unicorn/string-content: [0]
  535. unicorn/switch-case-braces: [0]
  536. unicorn/template-indent: [2]
  537. unicorn/text-encoding-identifier-case: [0]
  538. unicorn/throw-new-error: [2]
  539. use-isnan: [2]
  540. valid-typeof: [2, {requireStringLiterals: true}]
  541. vars-on-top: [0]
  542. wrap-iife: [2, inside]
  543. wrap-regex: [0]
  544. yield-star-spacing: [2, after]
  545. yoda: [2, never]