gitech

Форк
0
/
.eslintrc.yaml 
845 строк · 28.5 Кб
1
root: true
2
reportUnusedDisableDirectives: true
3

4
ignorePatterns:
5
  - /web_src/js/vendor
6
  - /web_src/fomantic
7

8
parserOptions:
9
  sourceType: module
10
  ecmaVersion: latest
11

12
plugins:
13
  - "@eslint-community/eslint-plugin-eslint-comments"
14
  - "@stylistic/eslint-plugin-js"
15
  - eslint-plugin-array-func
16
  - eslint-plugin-github
17
  - eslint-plugin-i
18
  - eslint-plugin-jquery
19
  - eslint-plugin-no-jquery
20
  - eslint-plugin-no-use-extend-native
21
  - eslint-plugin-regexp
22
  - eslint-plugin-sonarjs
23
  - eslint-plugin-unicorn
24
  - eslint-plugin-vitest
25
  - eslint-plugin-vitest-globals
26
  - eslint-plugin-wc
27

28
env:
29
  es2024: true
30
  node: true
31

32
overrides:
33
  - files: ["web_src/**/*"]
34
    globals:
35
      __webpack_public_path__: true
36
      process: false # https://github.com/webpack/webpack/issues/15833
37
  - files: ["web_src/**/*", "docs/**/*"]
38
    env:
39
      browser: true
40
      node: false
41
  - files: ["web_src/**/*worker.*"]
42
    env:
43
      worker: true
44
    rules:
45
      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]
46
  - files: ["*.config.*"]
47
    rules:
48
      i/no-unused-modules: [0]
49
  - files: ["**/*.test.*", "web_src/js/test/setup.js"]
50
    env:
51
      vitest-globals/env: true
52
    rules:
53
      vitest/consistent-test-filename: [0]
54
      vitest/consistent-test-it: [0]
55
      vitest/expect-expect: [0]
56
      vitest/max-expects: [0]
57
      vitest/max-nested-describe: [0]
58
      vitest/no-alias-methods: [0]
59
      vitest/no-commented-out-tests: [0]
60
      vitest/no-conditional-expect: [0]
61
      vitest/no-conditional-in-test: [0]
62
      vitest/no-conditional-tests: [0]
63
      vitest/no-disabled-tests: [0]
64
      vitest/no-done-callback: [0]
65
      vitest/no-duplicate-hooks: [0]
66
      vitest/no-focused-tests: [0]
67
      vitest/no-hooks: [0]
68
      vitest/no-identical-title: [2]
69
      vitest/no-interpolation-in-snapshots: [0]
70
      vitest/no-large-snapshots: [0]
71
      vitest/no-mocks-import: [0]
72
      vitest/no-restricted-matchers: [0]
73
      vitest/no-restricted-vi-methods: [0]
74
      vitest/no-standalone-expect: [0]
75
      vitest/no-test-prefixes: [0]
76
      vitest/no-test-return-statement: [0]
77
      vitest/prefer-called-with: [0]
78
      vitest/prefer-comparison-matcher: [0]
79
      vitest/prefer-each: [0]
80
      vitest/prefer-equality-matcher: [0]
81
      vitest/prefer-expect-resolves: [0]
82
      vitest/prefer-hooks-in-order: [0]
83
      vitest/prefer-hooks-on-top: [2]
84
      vitest/prefer-lowercase-title: [0]
85
      vitest/prefer-mock-promise-shorthand: [0]
86
      vitest/prefer-snapshot-hint: [0]
87
      vitest/prefer-spy-on: [0]
88
      vitest/prefer-strict-equal: [0]
89
      vitest/prefer-to-be: [0]
90
      vitest/prefer-to-be-falsy: [0]
91
      vitest/prefer-to-be-object: [0]
92
      vitest/prefer-to-be-truthy: [0]
93
      vitest/prefer-to-contain: [0]
94
      vitest/prefer-to-have-length: [0]
95
      vitest/prefer-todo: [0]
96
      vitest/require-hook: [0]
97
      vitest/require-to-throw-message: [0]
98
      vitest/require-top-level-describe: [0]
99
      vitest/valid-describe-callback: [2]
100
      vitest/valid-expect: [2]
101
      vitest/valid-title: [2]
102
  - files: ["web_src/js/modules/fetch.js", "web_src/js/standalone/**/*"]
103
    rules:
104
      no-restricted-syntax: [2, WithStatement, ForInStatement, LabeledStatement, SequenceExpression]
105

106
rules:
107
  "@eslint-community/eslint-comments/disable-enable-pair": [2]
108
  "@eslint-community/eslint-comments/no-aggregating-enable": [2]
109
  "@eslint-community/eslint-comments/no-duplicate-disable": [2]
110
  "@eslint-community/eslint-comments/no-restricted-disable": [0]
111
  "@eslint-community/eslint-comments/no-unlimited-disable": [2]
112
  "@eslint-community/eslint-comments/no-unused-disable": [2]
113
  "@eslint-community/eslint-comments/no-unused-enable": [2]
114
  "@eslint-community/eslint-comments/no-use": [0]
115
  "@eslint-community/eslint-comments/require-description": [0]
116
  "@stylistic/js/array-bracket-newline": [0]
117
  "@stylistic/js/array-bracket-spacing": [2, never]
118
  "@stylistic/js/array-element-newline": [0]
119
  "@stylistic/js/arrow-parens": [2, always]
120
  "@stylistic/js/arrow-spacing": [2, {before: true, after: true}]
121
  "@stylistic/js/block-spacing": [0]
122
  "@stylistic/js/brace-style": [2, 1tbs, {allowSingleLine: true}]
123
  "@stylistic/js/comma-dangle": [2, always-multiline]
124
  "@stylistic/js/comma-spacing": [2, {before: false, after: true}]
125
  "@stylistic/js/comma-style": [2, last]
126
  "@stylistic/js/computed-property-spacing": [2, never]
127
  "@stylistic/js/dot-location": [2, property]
128
  "@stylistic/js/eol-last": [2]
129
  "@stylistic/js/function-call-spacing": [2, never]
130
  "@stylistic/js/function-call-argument-newline": [0]
131
  "@stylistic/js/function-paren-newline": [0]
132
  "@stylistic/js/generator-star-spacing": [0]
133
  "@stylistic/js/implicit-arrow-linebreak": [0]
134
  "@stylistic/js/indent": [2, 2, {ignoreComments: true, SwitchCase: 1}]
135
  "@stylistic/js/key-spacing": [2]
136
  "@stylistic/js/keyword-spacing": [2]
137
  "@stylistic/js/linebreak-style": [2, unix]
138
  "@stylistic/js/lines-around-comment": [0]
139
  "@stylistic/js/lines-between-class-members": [0]
140
  "@stylistic/js/max-len": [0]
141
  "@stylistic/js/max-statements-per-line": [0]
142
  "@stylistic/js/multiline-ternary": [0]
143
  "@stylistic/js/new-parens": [2]
144
  "@stylistic/js/newline-per-chained-call": [0]
145
  "@stylistic/js/no-confusing-arrow": [0]
146
  "@stylistic/js/no-extra-parens": [0]
147
  "@stylistic/js/no-extra-semi": [2]
148
  "@stylistic/js/no-floating-decimal": [0]
149
  "@stylistic/js/no-mixed-operators": [0]
150
  "@stylistic/js/no-mixed-spaces-and-tabs": [2]
151
  "@stylistic/js/no-multi-spaces": [2, {ignoreEOLComments: true, exceptions: {Property: true}}]
152
  "@stylistic/js/no-multiple-empty-lines": [2, {max: 1, maxEOF: 0, maxBOF: 0}]
153
  "@stylistic/js/no-tabs": [2]
154
  "@stylistic/js/no-trailing-spaces": [2]
155
  "@stylistic/js/no-whitespace-before-property": [2]
156
  "@stylistic/js/nonblock-statement-body-position": [2]
157
  "@stylistic/js/object-curly-newline": [0]
158
  "@stylistic/js/object-curly-spacing": [2, never]
159
  "@stylistic/js/object-property-newline": [0]
160
  "@stylistic/js/one-var-declaration-per-line": [0]
161
  "@stylistic/js/operator-linebreak": [2, after]
162
  "@stylistic/js/padded-blocks": [2, never]
163
  "@stylistic/js/padding-line-between-statements": [0]
164
  "@stylistic/js/quote-props": [0]
165
  "@stylistic/js/quotes": [2, single, {avoidEscape: true, allowTemplateLiterals: true}]
166
  "@stylistic/js/rest-spread-spacing": [2, never]
167
  "@stylistic/js/semi": [2, always, {omitLastInOneLineBlock: true}]
168
  "@stylistic/js/semi-spacing": [2, {before: false, after: true}]
169
  "@stylistic/js/semi-style": [2, last]
170
  "@stylistic/js/space-before-blocks": [2, always]
171
  "@stylistic/js/space-before-function-paren": [2, {anonymous: ignore, named: never, asyncArrow: always}]
172
  "@stylistic/js/space-in-parens": [2, never]
173
  "@stylistic/js/space-infix-ops": [2]
174
  "@stylistic/js/space-unary-ops": [2]
175
  "@stylistic/js/spaced-comment": [2, always]
176
  "@stylistic/js/switch-colon-spacing": [2]
177
  "@stylistic/js/template-curly-spacing": [2, never]
178
  "@stylistic/js/template-tag-spacing": [2, never]
179
  "@stylistic/js/wrap-iife": [2, inside]
180
  "@stylistic/js/wrap-regex": [0]
181
  "@stylistic/js/yield-star-spacing": [2, after]
182
  accessor-pairs: [2]
183
  array-callback-return: [2, {checkForEach: true}]
184
  array-func/avoid-reverse: [2]
185
  array-func/from-map: [2]
186
  array-func/no-unnecessary-this-arg: [2]
187
  array-func/prefer-array-from: [2]
188
  array-func/prefer-flat-map: [0] # handled by unicorn/prefer-array-flat-map
189
  array-func/prefer-flat: [0] # handled by unicorn/prefer-array-flat
190
  arrow-body-style: [0]
191
  block-scoped-var: [2]
192
  camelcase: [0]
193
  capitalized-comments: [0]
194
  class-methods-use-this: [0]
195
  complexity: [0]
196
  consistent-return: [0]
197
  consistent-this: [0]
198
  constructor-super: [2]
199
  curly: [0]
200
  default-case-last: [2]
201
  default-case: [0]
202
  default-param-last: [0]
203
  dot-notation: [0]
204
  eqeqeq: [2]
205
  for-direction: [2]
206
  func-name-matching: [2]
207
  func-names: [0]
208
  func-style: [0]
209
  getter-return: [2]
210
  github/a11y-aria-label-is-well-formatted: [0]
211
  github/a11y-no-title-attribute: [0]
212
  github/a11y-no-visually-hidden-interactive-element: [0]
213
  github/a11y-role-supports-aria-props: [0]
214
  github/a11y-svg-has-accessible-name: [0]
215
  github/array-foreach: [0]
216
  github/async-currenttarget: [2]
217
  github/async-preventdefault: [2]
218
  github/authenticity-token: [0]
219
  github/get-attribute: [0]
220
  github/js-class-name: [0]
221
  github/no-blur: [0]
222
  github/no-d-none: [0]
223
  github/no-dataset: [2]
224
  github/no-dynamic-script-tag: [2]
225
  github/no-implicit-buggy-globals: [2]
226
  github/no-inner-html: [0]
227
  github/no-innerText: [2]
228
  github/no-then: [2]
229
  github/no-useless-passive: [2]
230
  github/prefer-observers: [2]
231
  github/require-passive-events: [2]
232
  github/unescaped-html-literal: [0]
233
  grouped-accessor-pairs: [2]
234
  guard-for-in: [0]
235
  id-blacklist: [0]
236
  id-length: [0]
237
  id-match: [0]
238
  i/consistent-type-specifier-style: [0]
239
  i/default: [0]
240
  i/dynamic-import-chunkname: [0]
241
  i/export: [2]
242
  i/exports-last: [0]
243
  i/extensions: [2, always, {ignorePackages: true}]
244
  i/first: [2]
245
  i/group-exports: [0]
246
  i/max-dependencies: [0]
247
  i/named: [2]
248
  i/namespace: [0]
249
  i/newline-after-import: [0]
250
  i/no-absolute-path: [0]
251
  i/no-amd: [2]
252
  i/no-anonymous-default-export: [0]
253
  i/no-commonjs: [2]
254
  i/no-cycle: [2, {ignoreExternal: true, maxDepth: 1}]
255
  i/no-default-export: [0]
256
  i/no-deprecated: [0]
257
  i/no-dynamic-require: [0]
258
  i/no-empty-named-blocks: [2]
259
  i/no-extraneous-dependencies: [2]
260
  i/no-import-module-exports: [0]
261
  i/no-internal-modules: [0]
262
  i/no-mutable-exports: [0]
263
  i/no-named-as-default-member: [0]
264
  i/no-named-as-default: [2]
265
  i/no-named-default: [0]
266
  i/no-named-export: [0]
267
  i/no-namespace: [0]
268
  i/no-nodejs-modules: [0]
269
  i/no-relative-packages: [0]
270
  i/no-relative-parent-imports: [0]
271
  i/no-restricted-paths: [0]
272
  i/no-self-import: [2]
273
  i/no-unassigned-import: [0]
274
  i/no-unresolved: [2, {commonjs: true, ignore: ["\\?.+$", ^vitest/]}]
275
  i/no-unused-modules: [2, {unusedExports: true}]
276
  i/no-useless-path-segments: [2, {commonjs: true}]
277
  i/no-webpack-loader-syntax: [2]
278
  i/order: [0]
279
  i/prefer-default-export: [0]
280
  i/unambiguous: [0]
281
  init-declarations: [0]
282
  jquery/no-ajax-events: [2]
283
  jquery/no-ajax: [2]
284
  jquery/no-animate: [2]
285
  jquery/no-attr: [2]
286
  jquery/no-bind: [2]
287
  jquery/no-class: [0]
288
  jquery/no-clone: [2]
289
  jquery/no-closest: [0]
290
  jquery/no-css: [2]
291
  jquery/no-data: [0]
292
  jquery/no-deferred: [2]
293
  jquery/no-delegate: [2]
294
  jquery/no-each: [0]
295
  jquery/no-extend: [2]
296
  jquery/no-fade: [2]
297
  jquery/no-filter: [0]
298
  jquery/no-find: [0]
299
  jquery/no-global-eval: [2]
300
  jquery/no-grep: [2]
301
  jquery/no-has: [2]
302
  jquery/no-hide: [2]
303
  jquery/no-html: [0]
304
  jquery/no-in-array: [2]
305
  jquery/no-is-array: [2]
306
  jquery/no-is-function: [2]
307
  jquery/no-is: [2]
308
  jquery/no-load: [2]
309
  jquery/no-map: [2]
310
  jquery/no-merge: [2]
311
  jquery/no-param: [2]
312
  jquery/no-parent: [0]
313
  jquery/no-parents: [0]
314
  jquery/no-parse-html: [2]
315
  jquery/no-prop: [2]
316
  jquery/no-proxy: [2]
317
  jquery/no-ready: [2]
318
  jquery/no-serialize: [2]
319
  jquery/no-show: [2]
320
  jquery/no-size: [2]
321
  jquery/no-sizzle: [2]
322
  jquery/no-slide: [0]
323
  jquery/no-submit: [0]
324
  jquery/no-text: [0]
325
  jquery/no-toggle: [2]
326
  jquery/no-trigger: [0]
327
  jquery/no-trim: [2]
328
  jquery/no-val: [0]
329
  jquery/no-when: [2]
330
  jquery/no-wrap: [2]
331
  line-comment-position: [0]
332
  logical-assignment-operators: [0]
333
  max-classes-per-file: [0]
334
  max-depth: [0]
335
  max-lines-per-function: [0]
336
  max-lines: [0]
337
  max-nested-callbacks: [0]
338
  max-params: [0]
339
  max-statements: [0]
340
  multiline-comment-style: [2, separate-lines]
341
  new-cap: [0]
342
  no-alert: [0]
343
  no-array-constructor: [2]
344
  no-async-promise-executor: [0]
345
  no-await-in-loop: [0]
346
  no-bitwise: [0]
347
  no-buffer-constructor: [0]
348
  no-caller: [2]
349
  no-case-declarations: [2]
350
  no-class-assign: [2]
351
  no-compare-neg-zero: [2]
352
  no-cond-assign: [2, except-parens]
353
  no-console: [1, {allow: [debug, info, warn, error]}]
354
  no-const-assign: [2]
355
  no-constant-binary-expression: [2]
356
  no-constant-condition: [0]
357
  no-constructor-return: [2]
358
  no-continue: [0]
359
  no-control-regex: [0]
360
  no-debugger: [1]
361
  no-delete-var: [2]
362
  no-div-regex: [0]
363
  no-dupe-args: [2]
364
  no-dupe-class-members: [2]
365
  no-dupe-else-if: [2]
366
  no-dupe-keys: [2]
367
  no-duplicate-case: [2]
368
  no-duplicate-imports: [2]
369
  no-else-return: [2]
370
  no-empty-character-class: [2]
371
  no-empty-function: [0]
372
  no-empty-pattern: [2]
373
  no-empty-static-block: [2]
374
  no-empty: [2, {allowEmptyCatch: true}]
375
  no-eq-null: [2]
376
  no-eval: [2]
377
  no-ex-assign: [2]
378
  no-extend-native: [2]
379
  no-extra-bind: [2]
380
  no-extra-boolean-cast: [2]
381
  no-extra-label: [0]
382
  no-fallthrough: [2]
383
  no-func-assign: [2]
384
  no-global-assign: [2]
385
  no-implicit-coercion: [2]
386
  no-implicit-globals: [0]
387
  no-implied-eval: [2]
388
  no-import-assign: [2]
389
  no-inline-comments: [0]
390
  no-inner-declarations: [2]
391
  no-invalid-regexp: [2]
392
  no-invalid-this: [0]
393
  no-irregular-whitespace: [2]
394
  no-iterator: [2]
395
  no-jquery/no-ajax-events: [2]
396
  no-jquery/no-ajax: [2]
397
  no-jquery/no-and-self: [2]
398
  no-jquery/no-animate-toggle: [2]
399
  no-jquery/no-animate: [2]
400
  no-jquery/no-append-html: [2]
401
  no-jquery/no-attr: [2]
402
  no-jquery/no-bind: [2]
403
  no-jquery/no-box-model: [2]
404
  no-jquery/no-browser: [2]
405
  no-jquery/no-camel-case: [2]
406
  no-jquery/no-class-state: [0]
407
  no-jquery/no-class: [0]
408
  no-jquery/no-clone: [2]
409
  no-jquery/no-closest: [0]
410
  no-jquery/no-constructor-attributes: [2]
411
  no-jquery/no-contains: [2]
412
  no-jquery/no-context-prop: [2]
413
  no-jquery/no-css: [2]
414
  no-jquery/no-data: [0]
415
  no-jquery/no-deferred: [2]
416
  no-jquery/no-delegate: [2]
417
  no-jquery/no-each-collection: [0]
418
  no-jquery/no-each-util: [0]
419
  no-jquery/no-each: [0]
420
  no-jquery/no-error-shorthand: [2]
421
  no-jquery/no-error: [2]
422
  no-jquery/no-escape-selector: [2]
423
  no-jquery/no-event-shorthand: [2]
424
  no-jquery/no-extend: [2]
425
  no-jquery/no-fade: [2]
426
  no-jquery/no-filter: [0]
427
  no-jquery/no-find-collection: [0]
428
  no-jquery/no-find-util: [2]
429
  no-jquery/no-find: [0]
430
  no-jquery/no-fx-interval: [2]
431
  no-jquery/no-global-eval: [2]
432
  no-jquery/no-global-selector: [0]
433
  no-jquery/no-grep: [2]
434
  no-jquery/no-has: [2]
435
  no-jquery/no-hold-ready: [2]
436
  no-jquery/no-html: [0]
437
  no-jquery/no-in-array: [2]
438
  no-jquery/no-is-array: [2]
439
  no-jquery/no-is-empty-object: [2]
440
  no-jquery/no-is-function: [2]
441
  no-jquery/no-is-numeric: [2]
442
  no-jquery/no-is-plain-object: [2]
443
  no-jquery/no-is-window: [2]
444
  no-jquery/no-is: [2]
445
  no-jquery/no-jquery-constructor: [0]
446
  no-jquery/no-live: [2]
447
  no-jquery/no-load-shorthand: [2]
448
  no-jquery/no-load: [2]
449
  no-jquery/no-map-collection: [0]
450
  no-jquery/no-map-util: [2]
451
  no-jquery/no-map: [2]
452
  no-jquery/no-merge: [2]
453
  no-jquery/no-node-name: [2]
454
  no-jquery/no-noop: [2]
455
  no-jquery/no-now: [2]
456
  no-jquery/no-on-ready: [2]
457
  no-jquery/no-other-methods: [0]
458
  no-jquery/no-other-utils: [2]
459
  no-jquery/no-param: [2]
460
  no-jquery/no-parent: [0]
461
  no-jquery/no-parents: [0]
462
  no-jquery/no-parse-html-literal: [0]
463
  no-jquery/no-parse-html: [2]
464
  no-jquery/no-parse-json: [2]
465
  no-jquery/no-parse-xml: [2]
466
  no-jquery/no-prop: [2]
467
  no-jquery/no-proxy: [2]
468
  no-jquery/no-ready-shorthand: [2]
469
  no-jquery/no-ready: [2]
470
  no-jquery/no-selector-prop: [2]
471
  no-jquery/no-serialize: [2]
472
  no-jquery/no-size: [2]
473
  no-jquery/no-sizzle: [2]
474
  no-jquery/no-slide: [2]
475
  no-jquery/no-sub: [2]
476
  no-jquery/no-support: [2]
477
  no-jquery/no-text: [0]
478
  no-jquery/no-trigger: [0]
479
  no-jquery/no-trim: [2]
480
  no-jquery/no-type: [2]
481
  no-jquery/no-unique: [2]
482
  no-jquery/no-unload-shorthand: [2]
483
  no-jquery/no-val: [0]
484
  no-jquery/no-visibility: [2]
485
  no-jquery/no-when: [2]
486
  no-jquery/no-wrap: [2]
487
  no-jquery/variable-pattern: [2]
488
  no-label-var: [2]
489
  no-labels: [0] # handled by no-restricted-syntax
490
  no-lone-blocks: [2]
491
  no-lonely-if: [0]
492
  no-loop-func: [0]
493
  no-loss-of-precision: [2]
494
  no-magic-numbers: [0]
495
  no-misleading-character-class: [2]
496
  no-multi-assign: [0]
497
  no-multi-str: [2]
498
  no-negated-condition: [0]
499
  no-nested-ternary: [0]
500
  no-new-func: [2]
501
  no-new-native-nonconstructor: [2]
502
  no-new-object: [2]
503
  no-new-symbol: [2]
504
  no-new-wrappers: [2]
505
  no-new: [0]
506
  no-nonoctal-decimal-escape: [2]
507
  no-obj-calls: [2]
508
  no-octal-escape: [2]
509
  no-octal: [2]
510
  no-param-reassign: [0]
511
  no-plusplus: [0]
512
  no-promise-executor-return: [0]
513
  no-proto: [2]
514
  no-prototype-builtins: [2]
515
  no-redeclare: [2]
516
  no-regex-spaces: [2]
517
  no-restricted-exports: [0]
518
  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]
519
  no-restricted-imports: [0]
520
  no-restricted-syntax: [2, WithStatement, ForInStatement, LabeledStatement, SequenceExpression, {selector: "CallExpression[callee.name='fetch']", message: "use modules/fetch.js instead"}]
521
  no-return-assign: [0]
522
  no-script-url: [2]
523
  no-self-assign: [2, {props: true}]
524
  no-self-compare: [2]
525
  no-sequences: [2]
526
  no-setter-return: [2]
527
  no-shadow-restricted-names: [2]
528
  no-shadow: [0]
529
  no-sparse-arrays: [2]
530
  no-template-curly-in-string: [2]
531
  no-ternary: [0]
532
  no-this-before-super: [2]
533
  no-throw-literal: [2]
534
  no-undef-init: [2]
535
  no-undef: [2, {typeof: true}]
536
  no-undefined: [0]
537
  no-underscore-dangle: [0]
538
  no-unexpected-multiline: [2]
539
  no-unmodified-loop-condition: [2]
540
  no-unneeded-ternary: [2]
541
  no-unreachable-loop: [2]
542
  no-unreachable: [2]
543
  no-unsafe-finally: [2]
544
  no-unsafe-negation: [2]
545
  no-unused-expressions: [2]
546
  no-unused-labels: [2]
547
  no-unused-private-class-members: [2]
548
  no-unused-vars: [2, {args: all, argsIgnorePattern: ^_, varsIgnorePattern: ^_, caughtErrorsIgnorePattern: ^_, destructuredArrayIgnorePattern: ^_, ignoreRestSiblings: false}]
549
  no-use-before-define: [2, {functions: false, classes: true, variables: true, allowNamedExports: true}]
550
  no-use-extend-native/no-use-extend-native: [2]
551
  no-useless-backreference: [2]
552
  no-useless-call: [2]
553
  no-useless-catch: [2]
554
  no-useless-computed-key: [2]
555
  no-useless-concat: [2]
556
  no-useless-constructor: [2]
557
  no-useless-escape: [2]
558
  no-useless-rename: [2]
559
  no-useless-return: [2]
560
  no-var: [2]
561
  no-void: [2]
562
  no-warning-comments: [0]
563
  no-with: [0] # handled by no-restricted-syntax
564
  object-shorthand: [2, always]
565
  one-var-declaration-per-line: [0]
566
  one-var: [0]
567
  operator-assignment: [2, always]
568
  operator-linebreak: [2, after]
569
  prefer-arrow-callback: [2, {allowNamedFunctions: true, allowUnboundThis: true}]
570
  prefer-const: [2, {destructuring: all, ignoreReadBeforeAssign: true}]
571
  prefer-destructuring: [0]
572
  prefer-exponentiation-operator: [2]
573
  prefer-named-capture-group: [0]
574
  prefer-numeric-literals: [2]
575
  prefer-object-has-own: [2]
576
  prefer-object-spread: [2]
577
  prefer-promise-reject-errors: [2, {allowEmptyReject: false}]
578
  prefer-regex-literals: [2]
579
  prefer-rest-params: [2]
580
  prefer-spread: [2]
581
  prefer-template: [2]
582
  radix: [2, as-needed]
583
  regexp/confusing-quantifier: [2]
584
  regexp/control-character-escape: [2]
585
  regexp/hexadecimal-escape: [0]
586
  regexp/letter-case: [0]
587
  regexp/match-any: [2]
588
  regexp/negation: [2]
589
  regexp/no-contradiction-with-assertion: [0]
590
  regexp/no-control-character: [0]
591
  regexp/no-dupe-characters-character-class: [2]
592
  regexp/no-dupe-disjunctions: [2]
593
  regexp/no-empty-alternative: [2]
594
  regexp/no-empty-capturing-group: [2]
595
  regexp/no-empty-character-class: [0]
596
  regexp/no-empty-group: [2]
597
  regexp/no-empty-lookarounds-assertion: [2]
598
  regexp/no-empty-string-literal: [2]
599
  regexp/no-escape-backspace: [2]
600
  regexp/no-extra-lookaround-assertions: [0]
601
  regexp/no-invalid-regexp: [2]
602
  regexp/no-invisible-character: [2]
603
  regexp/no-lazy-ends: [2]
604
  regexp/no-legacy-features: [2]
605
  regexp/no-misleading-capturing-group: [0]
606
  regexp/no-misleading-unicode-character: [0]
607
  regexp/no-missing-g-flag: [2]
608
  regexp/no-non-standard-flag: [2]
609
  regexp/no-obscure-range: [2]
610
  regexp/no-octal: [2]
611
  regexp/no-optional-assertion: [2]
612
  regexp/no-potentially-useless-backreference: [2]
613
  regexp/no-standalone-backslash: [2]
614
  regexp/no-super-linear-backtracking: [0]
615
  regexp/no-super-linear-move: [0]
616
  regexp/no-trivially-nested-assertion: [2]
617
  regexp/no-trivially-nested-quantifier: [2]
618
  regexp/no-unused-capturing-group: [0]
619
  regexp/no-useless-assertions: [2]
620
  regexp/no-useless-backreference: [2]
621
  regexp/no-useless-character-class: [2]
622
  regexp/no-useless-dollar-replacements: [2]
623
  regexp/no-useless-escape: [2]
624
  regexp/no-useless-flag: [2]
625
  regexp/no-useless-lazy: [2]
626
  regexp/no-useless-non-capturing-group: [2]
627
  regexp/no-useless-quantifier: [2]
628
  regexp/no-useless-range: [2]
629
  regexp/no-useless-set-operand: [2]
630
  regexp/no-useless-string-literal: [2]
631
  regexp/no-useless-two-nums-quantifier: [2]
632
  regexp/no-zero-quantifier: [2]
633
  regexp/optimal-lookaround-quantifier: [2]
634
  regexp/optimal-quantifier-concatenation: [0]
635
  regexp/prefer-character-class: [0]
636
  regexp/prefer-d: [0]
637
  regexp/prefer-escape-replacement-dollar-char: [0]
638
  regexp/prefer-lookaround: [0]
639
  regexp/prefer-named-backreference: [0]
640
  regexp/prefer-named-capture-group: [0]
641
  regexp/prefer-named-replacement: [0]
642
  regexp/prefer-plus-quantifier: [2]
643
  regexp/prefer-predefined-assertion: [2]
644
  regexp/prefer-quantifier: [0]
645
  regexp/prefer-question-quantifier: [2]
646
  regexp/prefer-range: [2]
647
  regexp/prefer-regexp-exec: [2]
648
  regexp/prefer-regexp-test: [2]
649
  regexp/prefer-result-array-groups: [0]
650
  regexp/prefer-set-operation: [2]
651
  regexp/prefer-star-quantifier: [2]
652
  regexp/prefer-unicode-codepoint-escapes: [2]
653
  regexp/prefer-w: [0]
654
  regexp/require-unicode-regexp: [0]
655
  regexp/simplify-set-operations: [2]
656
  regexp/sort-alternatives: [0]
657
  regexp/sort-character-class-elements: [0]
658
  regexp/sort-flags: [0]
659
  regexp/strict: [2]
660
  regexp/unicode-escape: [0]
661
  regexp/use-ignore-case: [0]
662
  require-atomic-updates: [0]
663
  require-await: [0]
664
  require-unicode-regexp: [0]
665
  require-yield: [2]
666
  sonarjs/cognitive-complexity: [0]
667
  sonarjs/elseif-without-else: [0]
668
  sonarjs/max-switch-cases: [0]
669
  sonarjs/no-all-duplicated-branches: [2]
670
  sonarjs/no-collapsible-if: [0]
671
  sonarjs/no-collection-size-mischeck: [2]
672
  sonarjs/no-duplicate-string: [0]
673
  sonarjs/no-duplicated-branches: [0]
674
  sonarjs/no-element-overwrite: [2]
675
  sonarjs/no-empty-collection: [2]
676
  sonarjs/no-extra-arguments: [2]
677
  sonarjs/no-gratuitous-expressions: [2]
678
  sonarjs/no-identical-conditions: [2]
679
  sonarjs/no-identical-expressions: [2]
680
  sonarjs/no-identical-functions: [2, 5]
681
  sonarjs/no-ignored-return: [2]
682
  sonarjs/no-inverted-boolean-check: [2]
683
  sonarjs/no-nested-switch: [0]
684
  sonarjs/no-nested-template-literals: [0]
685
  sonarjs/no-one-iteration-loop: [2]
686
  sonarjs/no-redundant-boolean: [2]
687
  sonarjs/no-redundant-jump: [2]
688
  sonarjs/no-same-line-conditional: [2]
689
  sonarjs/no-small-switch: [0]
690
  sonarjs/no-unused-collection: [2]
691
  sonarjs/no-use-of-empty-return-value: [2]
692
  sonarjs/no-useless-catch: [2]
693
  sonarjs/non-existent-operator: [2]
694
  sonarjs/prefer-immediate-return: [0]
695
  sonarjs/prefer-object-literal: [0]
696
  sonarjs/prefer-single-boolean-return: [0]
697
  sonarjs/prefer-while: [2]
698
  sort-imports: [0]
699
  sort-keys: [0]
700
  sort-vars: [0]
701
  strict: [0]
702
  symbol-description: [2]
703
  unicode-bom: [2, never]
704
  unicorn/better-regex: [0]
705
  unicorn/catch-error-name: [0]
706
  unicorn/consistent-destructuring: [2]
707
  unicorn/consistent-function-scoping: [2]
708
  unicorn/custom-error-definition: [0]
709
  unicorn/empty-brace-spaces: [2]
710
  unicorn/error-message: [0]
711
  unicorn/escape-case: [0]
712
  unicorn/expiring-todo-comments: [0]
713
  unicorn/explicit-length-check: [0]
714
  unicorn/filename-case: [0]
715
  unicorn/import-index: [0]
716
  unicorn/import-style: [0]
717
  unicorn/new-for-builtins: [2]
718
  unicorn/no-abusive-eslint-disable: [0]
719
  unicorn/no-anonymous-default-export: [0]
720
  unicorn/no-array-callback-reference: [0]
721
  unicorn/no-array-for-each: [2]
722
  unicorn/no-array-method-this-argument: [2]
723
  unicorn/no-array-push-push: [2]
724
  unicorn/no-array-reduce: [2]
725
  unicorn/no-await-expression-member: [0]
726
  unicorn/no-await-in-promise-methods: [2]
727
  unicorn/no-console-spaces: [0]
728
  unicorn/no-document-cookie: [2]
729
  unicorn/no-empty-file: [2]
730
  unicorn/no-for-loop: [0]
731
  unicorn/no-hex-escape: [0]
732
  unicorn/no-instanceof-array: [0]
733
  unicorn/no-invalid-remove-event-listener: [2]
734
  unicorn/no-keyword-prefix: [0]
735
  unicorn/no-lonely-if: [2]
736
  unicorn/no-negated-condition: [0]
737
  unicorn/no-nested-ternary: [0]
738
  unicorn/no-new-array: [0]
739
  unicorn/no-new-buffer: [0]
740
  unicorn/no-null: [0]
741
  unicorn/no-object-as-default-parameter: [0]
742
  unicorn/no-process-exit: [0]
743
  unicorn/no-single-promise-in-promise-methods: [2]
744
  unicorn/no-static-only-class: [2]
745
  unicorn/no-thenable: [2]
746
  unicorn/no-this-assignment: [2]
747
  unicorn/no-typeof-undefined: [2]
748
  unicorn/no-unnecessary-await: [2]
749
  unicorn/no-unnecessary-polyfills: [2]
750
  unicorn/no-unreadable-array-destructuring: [0]
751
  unicorn/no-unreadable-iife: [2]
752
  unicorn/no-unused-properties: [2]
753
  unicorn/no-useless-fallback-in-spread: [2]
754
  unicorn/no-useless-length-check: [2]
755
  unicorn/no-useless-promise-resolve-reject: [2]
756
  unicorn/no-useless-spread: [2]
757
  unicorn/no-useless-switch-case: [2]
758
  unicorn/no-useless-undefined: [0]
759
  unicorn/no-zero-fractions: [2]
760
  unicorn/number-literal-case: [0]
761
  unicorn/numeric-separators-style: [0]
762
  unicorn/prefer-add-event-listener: [2]
763
  unicorn/prefer-array-find: [2]
764
  unicorn/prefer-array-flat-map: [2]
765
  unicorn/prefer-array-flat: [2]
766
  unicorn/prefer-array-index-of: [2]
767
  unicorn/prefer-array-some: [2]
768
  unicorn/prefer-at: [0]
769
  unicorn/prefer-blob-reading-methods: [2]
770
  unicorn/prefer-code-point: [0]
771
  unicorn/prefer-date-now: [2]
772
  unicorn/prefer-default-parameters: [0]
773
  unicorn/prefer-dom-node-append: [2]
774
  unicorn/prefer-dom-node-dataset: [0]
775
  unicorn/prefer-dom-node-remove: [2]
776
  unicorn/prefer-dom-node-text-content: [2]
777
  unicorn/prefer-event-target: [2]
778
  unicorn/prefer-export-from: [0]
779
  unicorn/prefer-includes: [2]
780
  unicorn/prefer-json-parse-buffer: [0]
781
  unicorn/prefer-keyboard-event-key: [2]
782
  unicorn/prefer-logical-operator-over-ternary: [2]
783
  unicorn/prefer-math-trunc: [2]
784
  unicorn/prefer-modern-dom-apis: [0]
785
  unicorn/prefer-modern-math-apis: [2]
786
  unicorn/prefer-module: [2]
787
  unicorn/prefer-native-coercion-functions: [2]
788
  unicorn/prefer-negative-index: [2]
789
  unicorn/prefer-node-protocol: [2]
790
  unicorn/prefer-number-properties: [0]
791
  unicorn/prefer-object-from-entries: [2]
792
  unicorn/prefer-object-has-own: [0]
793
  unicorn/prefer-optional-catch-binding: [2]
794
  unicorn/prefer-prototype-methods: [0]
795
  unicorn/prefer-query-selector: [0]
796
  unicorn/prefer-reflect-apply: [0]
797
  unicorn/prefer-regexp-test: [2]
798
  unicorn/prefer-set-has: [0]
799
  unicorn/prefer-set-size: [2]
800
  unicorn/prefer-spread: [0]
801
  unicorn/prefer-string-replace-all: [0]
802
  unicorn/prefer-string-slice: [0]
803
  unicorn/prefer-string-starts-ends-with: [2]
804
  unicorn/prefer-string-trim-start-end: [2]
805
  unicorn/prefer-switch: [0]
806
  unicorn/prefer-ternary: [0]
807
  unicorn/prefer-text-content: [2]
808
  unicorn/prefer-top-level-await: [0]
809
  unicorn/prefer-type-error: [0]
810
  unicorn/prevent-abbreviations: [0]
811
  unicorn/relative-url-style: [2]
812
  unicorn/require-array-join-separator: [2]
813
  unicorn/require-number-to-fixed-digits-argument: [2]
814
  unicorn/require-post-message-target-origin: [0]
815
  unicorn/string-content: [0]
816
  unicorn/switch-case-braces: [0]
817
  unicorn/template-indent: [2]
818
  unicorn/text-encoding-identifier-case: [0]
819
  unicorn/throw-new-error: [2]
820
  use-isnan: [2]
821
  valid-typeof: [2, {requireStringLiterals: true}]
822
  vars-on-top: [0]
823
  wc/attach-shadow-constructor: [2]
824
  wc/define-tag-after-class-definition: [0]
825
  wc/expose-class-on-global: [0]
826
  wc/file-name-matches-element: [2]
827
  wc/guard-define-call: [0]
828
  wc/guard-super-call: [2]
829
  wc/max-elements-per-file: [0]
830
  wc/no-child-traversal-in-attributechangedcallback: [2]
831
  wc/no-child-traversal-in-connectedcallback: [2]
832
  wc/no-closed-shadow-root: [2]
833
  wc/no-constructor-attributes: [2]
834
  wc/no-constructor-params: [2]
835
  wc/no-constructor: [2]
836
  wc/no-customized-built-in-elements: [2]
837
  wc/no-exports-with-element: [0]
838
  wc/no-invalid-element-name: [2]
839
  wc/no-invalid-extends: [2]
840
  wc/no-method-prefixed-with-on: [2]
841
  wc/no-self-class: [2]
842
  wc/no-typos: [2]
843
  wc/require-listener-teardown: [2]
844
  wc/tag-name-matches-class: [2]
845
  yoda: [2, never]
846

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.