@hublo/sentinel 1.1.6 → 1.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,474 @@
1
+ {
2
+ "$schema": "./node_modules/oxlint/configuration_schema.json",
3
+ "plugins": [
4
+ "typescript",
5
+ "react",
6
+ "jsx-a11y",
7
+ "jest",
8
+ "import",
9
+ "unicorn",
10
+ "oxc"
11
+ ],
12
+ "categories": {
13
+ "correctness": "off",
14
+ "suspicious": "off",
15
+ "pedantic": "off",
16
+ "perf": "off",
17
+ "style": "off",
18
+ "restriction": "off",
19
+ "nursery": "off"
20
+ },
21
+ "rules": {
22
+ "no-var": "error",
23
+ "prefer-const": [
24
+ "error",
25
+ {
26
+ "destructuring": "any",
27
+ "ignoreReadBeforeAssign": false
28
+ }
29
+ ],
30
+ "prefer-rest-params": "error",
31
+ "prefer-spread": "error",
32
+ "typescript/ban-ts-comment": "error",
33
+ "typescript/no-array-constructor": "error",
34
+ "typescript/no-duplicate-enum-values": "error",
35
+ "typescript/no-empty-object-type": "error",
36
+ "typescript/no-extra-non-null-assertion": "error",
37
+ "typescript/no-misused-new": "error",
38
+ "typescript/no-namespace": "error",
39
+ "typescript/no-non-null-asserted-optional-chain": "error",
40
+ "typescript/no-this-alias": "error",
41
+ "typescript/no-unnecessary-type-constraint": "error",
42
+ "typescript/no-unsafe-declaration-merging": "error",
43
+ "typescript/no-unsafe-function-type": "error",
44
+ "typescript/no-unused-expressions": [
45
+ "error",
46
+ {
47
+ "allowShortCircuit": false,
48
+ "allowTaggedTemplates": false,
49
+ "allowTernary": false
50
+ }
51
+ ],
52
+ "typescript/no-wrapper-object-types": "error",
53
+ "typescript/prefer-as-const": "error",
54
+ "typescript/prefer-namespace-keyword": "error",
55
+ "typescript/triple-slash-reference": "error",
56
+ "curly": [
57
+ "error",
58
+ "all"
59
+ ],
60
+ "for-direction": "error",
61
+ "jest/expect-expect": "off",
62
+ "jest/no-alias-methods": "off",
63
+ "jest/no-commented-out-tests": "off",
64
+ "jest/no-conditional-expect": "off",
65
+ "jest/no-deprecated-functions": "off",
66
+ "jest/no-disabled-tests": "off",
67
+ "jest/no-done-callback": "off",
68
+ "jest/no-export": "off",
69
+ "jest/no-focused-tests": "off",
70
+ "jest/no-identical-title": "off",
71
+ "jest/no-interpolation-in-snapshots": "off",
72
+ "jest/no-jasmine-globals": "off",
73
+ "jest/no-mocks-import": "off",
74
+ "jest/no-standalone-expect": "off",
75
+ "jest/no-test-prefixes": "off",
76
+ "jest/prefer-to-be": "off",
77
+ "jest/prefer-to-contain": "off",
78
+ "jest/prefer-to-have-length": "off",
79
+ "jest/valid-describe-callback": "off",
80
+ "jest/valid-expect": "off",
81
+ "jest/valid-expect-in-promise": "off",
82
+ "jest/valid-title": "off",
83
+ "jsx-a11y/alt-text": "error",
84
+ "jsx-a11y/anchor-has-content": "error",
85
+ "jsx-a11y/anchor-is-valid": "error",
86
+ "jsx-a11y/aria-activedescendant-has-tabindex": "error",
87
+ "jsx-a11y/aria-props": "error",
88
+ "jsx-a11y/aria-proptypes": "error",
89
+ "jsx-a11y/aria-role": "error",
90
+ "jsx-a11y/aria-unsupported-elements": "error",
91
+ "jsx-a11y/autocomplete-valid": "error",
92
+ "jsx-a11y/click-events-have-key-events": "error",
93
+ "jsx-a11y/heading-has-content": "error",
94
+ "jsx-a11y/html-has-lang": "error",
95
+ "jsx-a11y/iframe-has-title": "error",
96
+ "jsx-a11y/img-redundant-alt": "off",
97
+ "jsx-a11y/interactive-supports-focus": [
98
+ "error",
99
+ {
100
+ "tabbable": [
101
+ "button",
102
+ "checkbox",
103
+ "link",
104
+ "progressbar",
105
+ "searchbox",
106
+ "slider",
107
+ "spinbutton",
108
+ "switch",
109
+ "textbox"
110
+ ]
111
+ }
112
+ ],
113
+ "jsx-a11y/label-has-associated-control": "error",
114
+ "jsx-a11y/media-has-caption": "error",
115
+ "jsx-a11y/mouse-events-have-key-events": "error",
116
+ "jsx-a11y/no-access-key": "error",
117
+ "jsx-a11y/no-autofocus": "error",
118
+ "jsx-a11y/no-distracting-elements": "error",
119
+ "jsx-a11y/no-interactive-element-to-noninteractive-role": "error",
120
+ "jsx-a11y/no-noninteractive-element-interactions": [
121
+ "error",
122
+ {
123
+ "body": [
124
+ "onError",
125
+ "onLoad"
126
+ ],
127
+ "iframe": [
128
+ "onError",
129
+ "onLoad"
130
+ ],
131
+ "img": [
132
+ "onError",
133
+ "onLoad"
134
+ ]
135
+ }
136
+ ],
137
+ "jsx-a11y/no-noninteractive-element-to-interactive-role": "error",
138
+ "jsx-a11y/no-noninteractive-tabindex": "error",
139
+ "jsx-a11y/no-redundant-roles": "error",
140
+ "jsx-a11y/no-static-element-interactions": "error",
141
+ "jsx-a11y/role-has-required-aria-props": "error",
142
+ "jsx-a11y/role-supports-aria-props": "error",
143
+ "jsx-a11y/scope": "error",
144
+ "jsx-a11y/tabindex-no-positive": "error",
145
+ "no-async-promise-executor": "error",
146
+ "no-barrel-files/no-barrel-files": "warn",
147
+ "no-case-declarations": "error",
148
+ "no-compare-neg-zero": "error",
149
+ "no-cond-assign": [
150
+ "error",
151
+ "except-parens"
152
+ ],
153
+ "no-console": "off",
154
+ "no-constant-binary-expression": "error",
155
+ "no-constant-condition": [
156
+ "error",
157
+ {
158
+ "checkLoops": "allExceptWhileTrue"
159
+ }
160
+ ],
161
+ "no-control-regex": "error",
162
+ "no-debugger": "error",
163
+ "no-delete-var": "error",
164
+ "no-dupe-else-if": "error",
165
+ "no-duplicate-case": "error",
166
+ "no-empty": [
167
+ "error",
168
+ {
169
+ "allowEmptyCatch": false
170
+ }
171
+ ],
172
+ "no-empty-character-class": "error",
173
+ "no-empty-pattern": [
174
+ "error",
175
+ {
176
+ "allowObjectPatternsAsParameters": false
177
+ }
178
+ ],
179
+ "no-empty-static-block": "error",
180
+ "no-ex-assign": "error",
181
+ "no-extra-boolean-cast": [
182
+ "error",
183
+ {}
184
+ ],
185
+ "no-fallthrough": [
186
+ "error",
187
+ {
188
+ "allowEmptyCase": false,
189
+ "reportUnusedFallthroughComment": false
190
+ }
191
+ ],
192
+ "no-global-assign": [
193
+ "error",
194
+ {
195
+ "exceptions": []
196
+ }
197
+ ],
198
+ "no-invalid-regexp": [
199
+ "error",
200
+ {}
201
+ ],
202
+ "no-irregular-whitespace": [
203
+ "error",
204
+ {
205
+ "skipComments": false,
206
+ "skipJSXText": false,
207
+ "skipRegExps": false,
208
+ "skipStrings": true,
209
+ "skipTemplates": false
210
+ }
211
+ ],
212
+ "no-loss-of-precision": "error",
213
+ "no-misleading-character-class": "error",
214
+ "no-nonoctal-decimal-escape": "error",
215
+ "no-prototype-builtins": "error",
216
+ "no-regex-spaces": "error",
217
+ "no-restricted-imports": [
218
+ "error",
219
+ {
220
+ "patterns": [
221
+ {
222
+ "group": [
223
+ "next/*"
224
+ ],
225
+ "message": "Importing from next/* is not allowed in the admin project."
226
+ },
227
+ {
228
+ "group": [
229
+ "storybook/*"
230
+ ],
231
+ "message": "Importing from storybook/* is not allowed in the admin project."
232
+ },
233
+ {
234
+ "group": [
235
+ "@nestjs/*"
236
+ ],
237
+ "message": "Importing from @nestjs/* is not allowed in the admin project."
238
+ },
239
+ {
240
+ "group": [
241
+ "next-i18next"
242
+ ],
243
+ "message": "Importing from next-i18next is not allowed in the admin project."
244
+ },
245
+ {
246
+ "group": [
247
+ "@hublo/style/colors",
248
+ "@hublo/style/colors/*"
249
+ ],
250
+ "message": "Importing runtime colors directly is not allowed. Use the MUI theme, theme-derived CSS variables, or an explicit product-specific mapping."
251
+ }
252
+ ]
253
+ }
254
+ ],
255
+ "no-self-assign": [
256
+ "error",
257
+ {
258
+ "props": true
259
+ }
260
+ ],
261
+ "no-shadow-restricted-names": [
262
+ "error",
263
+ {
264
+ "reportGlobalThis": false
265
+ }
266
+ ],
267
+ "no-sparse-arrays": "error",
268
+ "no-unexpected-multiline": "error",
269
+ "no-unsafe-finally": "error",
270
+ "no-unsafe-optional-chaining": "off",
271
+ "no-unused-labels": "error",
272
+ "no-unused-private-class-members": "error",
273
+ "no-useless-backreference": "error",
274
+ "no-useless-catch": "error",
275
+ "no-useless-escape": [
276
+ "error",
277
+ {
278
+ "allowRegexCharacters": []
279
+ }
280
+ ],
281
+ "nx/enforce-module-boundaries": [
282
+ "error",
283
+ {
284
+ "enforceBuildableLibDependency": true,
285
+ "allow": [],
286
+ "depConstraints": [
287
+ {
288
+ "sourceTag": "*",
289
+ "onlyDependOnLibsWithTags": [
290
+ "*"
291
+ ]
292
+ }
293
+ ]
294
+ }
295
+ ],
296
+ "react-hooks/exhaustive-deps": "warn",
297
+ "react-hooks/rules-of-hooks": "error",
298
+ "react-refresh/only-export-components": [
299
+ "warn",
300
+ {
301
+ "allowConstantExport": true
302
+ }
303
+ ],
304
+ "react/jsx-curly-brace-presence": "off",
305
+ "require-yield": "error",
306
+ "styled-components-a11y/alt-text": "error",
307
+ "styled-components-a11y/anchor-has-content": "error",
308
+ "styled-components-a11y/anchor-is-valid": "error",
309
+ "styled-components-a11y/aria-activedescendant-has-tabindex": "error",
310
+ "styled-components-a11y/aria-props": "error",
311
+ "styled-components-a11y/aria-proptypes": "error",
312
+ "styled-components-a11y/aria-role": "error",
313
+ "styled-components-a11y/aria-unsupported-elements": "error",
314
+ "styled-components-a11y/autocomplete-valid": "error",
315
+ "styled-components-a11y/click-events-have-key-events": "error",
316
+ "styled-components-a11y/control-has-associated-label": [
317
+ "off",
318
+ {
319
+ "ignoreElements": [
320
+ "audio",
321
+ "canvas",
322
+ "embed",
323
+ "input",
324
+ "textarea",
325
+ "tr",
326
+ "video"
327
+ ],
328
+ "ignoreRoles": [
329
+ "grid",
330
+ "listbox",
331
+ "menu",
332
+ "menubar",
333
+ "radiogroup",
334
+ "row",
335
+ "tablist",
336
+ "toolbar",
337
+ "tree",
338
+ "treegrid"
339
+ ],
340
+ "includeRoles": [
341
+ "alert",
342
+ "dialog"
343
+ ]
344
+ }
345
+ ],
346
+ "styled-components-a11y/heading-has-content": "error",
347
+ "styled-components-a11y/html-has-lang": "error",
348
+ "styled-components-a11y/iframe-has-title": "error",
349
+ "styled-components-a11y/img-redundant-alt": "error",
350
+ "styled-components-a11y/interactive-supports-focus": [
351
+ "error",
352
+ {
353
+ "tabbable": [
354
+ "button",
355
+ "checkbox",
356
+ "link",
357
+ "progressbar",
358
+ "searchbox",
359
+ "slider",
360
+ "spinbutton",
361
+ "switch",
362
+ "textbox"
363
+ ]
364
+ }
365
+ ],
366
+ "styled-components-a11y/label-has-associated-control": "error",
367
+ "styled-components-a11y/label-has-for": "off",
368
+ "styled-components-a11y/media-has-caption": "error",
369
+ "styled-components-a11y/mouse-events-have-key-events": "error",
370
+ "styled-components-a11y/no-access-key": "error",
371
+ "styled-components-a11y/no-autofocus": "error",
372
+ "styled-components-a11y/no-distracting-elements": "error",
373
+ "styled-components-a11y/no-interactive-element-to-noninteractive-role": "error",
374
+ "styled-components-a11y/no-noninteractive-element-interactions": [
375
+ "error",
376
+ {
377
+ "body": [
378
+ "onError",
379
+ "onLoad"
380
+ ],
381
+ "iframe": [
382
+ "onError",
383
+ "onLoad"
384
+ ],
385
+ "img": [
386
+ "onError",
387
+ "onLoad"
388
+ ]
389
+ }
390
+ ],
391
+ "styled-components-a11y/no-noninteractive-element-to-interactive-role": "error",
392
+ "styled-components-a11y/no-noninteractive-tabindex": "error",
393
+ "styled-components-a11y/no-redundant-roles": "error",
394
+ "styled-components-a11y/no-static-element-interactions": "error",
395
+ "styled-components-a11y/role-has-required-aria-props": "error",
396
+ "styled-components-a11y/role-supports-aria-props": "error",
397
+ "styled-components-a11y/scope": "error",
398
+ "styled-components-a11y/tabindex-no-positive": "error",
399
+ "typescript/await-thenable": "error",
400
+ "typescript/no-array-delete": "error",
401
+ "typescript/no-base-to-string": "error",
402
+ "typescript/no-duplicate-type-constituents": "error",
403
+ "typescript/no-empty-function": "off",
404
+ "typescript/no-explicit-any": "off",
405
+ "typescript/no-floating-promises": [
406
+ "error",
407
+ {
408
+ "ignoreVoid": true
409
+ }
410
+ ],
411
+ "typescript/no-for-in-array": "error",
412
+ "typescript/no-implied-eval": "error",
413
+ "typescript/no-inferrable-types": "error",
414
+ "typescript/no-misused-promises": [
415
+ "error",
416
+ {
417
+ "checksVoidReturn": {
418
+ "attributes": false
419
+ }
420
+ }
421
+ ],
422
+ "typescript/no-non-null-assertion": "warn",
423
+ "typescript/no-redundant-type-constituents": "error",
424
+ "typescript/no-require-imports": "error",
425
+ "typescript/no-unnecessary-type-assertion": "off",
426
+ "typescript/no-unsafe-argument": "off",
427
+ "typescript/no-unsafe-assignment": "off",
428
+ "typescript/no-unsafe-call": "off",
429
+ "typescript/no-unsafe-enum-comparison": "off",
430
+ "typescript/no-unsafe-member-access": "off",
431
+ "typescript/no-unsafe-return": "off",
432
+ "typescript/no-unsafe-unary-minus": "error",
433
+ "typescript/no-unused-vars": "off",
434
+ "typescript/only-throw-error": "off",
435
+ "typescript/prefer-promise-reject-errors": "error",
436
+ "typescript/require-await": "off",
437
+ "typescript/restrict-plus-operands": "error",
438
+ "typescript/restrict-template-expressions": "error",
439
+ "typescript/return-await": [
440
+ "warn",
441
+ "in-try-catch"
442
+ ],
443
+ "typescript/switch-exhaustiveness-check": "warn",
444
+ "typescript/unbound-method": "error",
445
+ "use-isnan": [
446
+ "error",
447
+ {
448
+ "enforceForIndexOf": false,
449
+ "enforceForSwitchCase": true
450
+ }
451
+ ],
452
+ "valid-typeof": [
453
+ "error",
454
+ {
455
+ "requireStringLiterals": false
456
+ }
457
+ ]
458
+ },
459
+ "jsPlugins": [
460
+ "eslint-plugin-no-barrel-files",
461
+ {
462
+ "name": "nx",
463
+ "specifier": "@nx/eslint-plugin"
464
+ },
465
+ {
466
+ "name": "styled-components-a11y",
467
+ "specifier": "eslint-plugin-styled-components-a11y"
468
+ },
469
+ {
470
+ "name": "react-refresh",
471
+ "specifier": "eslint-plugin-react-refresh"
472
+ }
473
+ ]
474
+ }
@@ -0,0 +1,209 @@
1
+ {
2
+ "$schema": "./node_modules/oxlint/configuration_schema.json",
3
+ "plugins": [
4
+ "typescript",
5
+ "oxc"
6
+ ],
7
+ "categories": {
8
+ "correctness": "off",
9
+ "suspicious": "off",
10
+ "pedantic": "off",
11
+ "perf": "off",
12
+ "style": "off",
13
+ "restriction": "off",
14
+ "nursery": "off"
15
+ },
16
+ "rules": {
17
+ "no-var": "error",
18
+ "prefer-const": [
19
+ "error",
20
+ {
21
+ "destructuring": "any",
22
+ "ignoreReadBeforeAssign": false
23
+ }
24
+ ],
25
+ "prefer-rest-params": "warn",
26
+ "prefer-spread": "warn",
27
+ "typescript/ban-ts-comment": "error",
28
+ "typescript/no-array-constructor": "error",
29
+ "typescript/no-duplicate-enum-values": "error",
30
+ "typescript/no-empty-object-type": "error",
31
+ "typescript/no-extra-non-null-assertion": "error",
32
+ "typescript/no-misused-new": "error",
33
+ "typescript/no-namespace": "error",
34
+ "typescript/no-non-null-asserted-optional-chain": "error",
35
+ "typescript/no-this-alias": "error",
36
+ "typescript/no-unnecessary-type-constraint": "error",
37
+ "typescript/no-unsafe-declaration-merging": "error",
38
+ "typescript/no-unsafe-function-type": "error",
39
+ "typescript/no-unused-expressions": [
40
+ "error",
41
+ {
42
+ "allowShortCircuit": false,
43
+ "allowTaggedTemplates": false,
44
+ "allowTernary": false
45
+ }
46
+ ],
47
+ "typescript/no-wrapper-object-types": "error",
48
+ "typescript/prefer-as-const": "error",
49
+ "typescript/prefer-namespace-keyword": "error",
50
+ "typescript/triple-slash-reference": "error",
51
+ "constructor-super": "error",
52
+ "for-direction": "error",
53
+ "getter-return": [
54
+ "error",
55
+ {
56
+ "allowImplicit": false
57
+ }
58
+ ],
59
+ "no-async-promise-executor": "error",
60
+ "no-case-declarations": "error",
61
+ "no-class-assign": "error",
62
+ "no-compare-neg-zero": "error",
63
+ "no-cond-assign": [
64
+ "error",
65
+ "except-parens"
66
+ ],
67
+ "no-const-assign": "error",
68
+ "no-constant-binary-expression": "error",
69
+ "no-constant-condition": [
70
+ "error",
71
+ {
72
+ "checkLoops": "allExceptWhileTrue"
73
+ }
74
+ ],
75
+ "no-control-regex": "error",
76
+ "no-debugger": "error",
77
+ "no-delete-var": "error",
78
+ "no-dupe-class-members": "error",
79
+ "no-dupe-else-if": "error",
80
+ "no-dupe-keys": "error",
81
+ "no-duplicate-case": "error",
82
+ "no-empty": [
83
+ "error",
84
+ {
85
+ "allowEmptyCatch": false
86
+ }
87
+ ],
88
+ "no-empty-character-class": "error",
89
+ "no-empty-pattern": [
90
+ "error",
91
+ {
92
+ "allowObjectPatternsAsParameters": false
93
+ }
94
+ ],
95
+ "no-empty-static-block": "error",
96
+ "no-ex-assign": "error",
97
+ "no-extra-boolean-cast": [
98
+ "error",
99
+ {}
100
+ ],
101
+ "no-fallthrough": [
102
+ "error",
103
+ {
104
+ "allowEmptyCase": false,
105
+ "reportUnusedFallthroughComment": false
106
+ }
107
+ ],
108
+ "no-func-assign": "error",
109
+ "no-global-assign": [
110
+ "error",
111
+ {
112
+ "exceptions": []
113
+ }
114
+ ],
115
+ "no-import-assign": "error",
116
+ "no-invalid-regexp": [
117
+ "error",
118
+ {}
119
+ ],
120
+ "no-irregular-whitespace": [
121
+ "error",
122
+ {
123
+ "skipComments": false,
124
+ "skipJSXText": false,
125
+ "skipRegExps": false,
126
+ "skipStrings": true,
127
+ "skipTemplates": false
128
+ }
129
+ ],
130
+ "no-loss-of-precision": "error",
131
+ "no-misleading-character-class": "error",
132
+ "no-new-native-nonconstructor": "error",
133
+ "no-nonoctal-decimal-escape": "error",
134
+ "no-obj-calls": "error",
135
+ "no-prototype-builtins": "error",
136
+ "no-redeclare": [
137
+ "error",
138
+ {
139
+ "builtinGlobals": true
140
+ }
141
+ ],
142
+ "no-regex-spaces": "error",
143
+ "no-self-assign": [
144
+ "error",
145
+ {
146
+ "props": true
147
+ }
148
+ ],
149
+ "no-setter-return": "error",
150
+ "no-shadow-restricted-names": [
151
+ "error",
152
+ {
153
+ "reportGlobalThis": false
154
+ }
155
+ ],
156
+ "no-sparse-arrays": "error",
157
+ "no-this-before-super": "error",
158
+ "no-undef": "off",
159
+ "no-unreachable": "error",
160
+ "no-unsafe-finally": "error",
161
+ "no-unsafe-negation": [
162
+ "error",
163
+ {
164
+ "enforceForOrderingRelations": false
165
+ }
166
+ ],
167
+ "no-unsafe-optional-chaining": [
168
+ "error",
169
+ {
170
+ "disallowArithmeticOperators": false
171
+ }
172
+ ],
173
+ "no-unused-labels": "error",
174
+ "no-unused-private-class-members": "error",
175
+ "no-useless-backreference": "error",
176
+ "no-useless-catch": "error",
177
+ "no-useless-escape": [
178
+ "error",
179
+ {
180
+ "allowRegexCharacters": []
181
+ }
182
+ ],
183
+ "no-with": "error",
184
+ "require-yield": "error",
185
+ "typescript/no-explicit-any": "warn",
186
+ "typescript/no-require-imports": "error",
187
+ "typescript/no-unused-vars": [
188
+ "warn",
189
+ {
190
+ "varsIgnorePattern": "^_",
191
+ "argsIgnorePattern": "^_",
192
+ "destructuredArrayIgnorePattern": "^_"
193
+ }
194
+ ],
195
+ "use-isnan": [
196
+ "error",
197
+ {
198
+ "enforceForIndexOf": false,
199
+ "enforceForSwitchCase": true
200
+ }
201
+ ],
202
+ "valid-typeof": [
203
+ "error",
204
+ {
205
+ "requireStringLiterals": false
206
+ }
207
+ ]
208
+ }
209
+ }