@nitra/cursor 1.8.145 → 1.8.147
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.
- package/bin/n-cursor.js +1 -0
- package/bin/rename-yaml-extensions.mjs +0 -1
- package/mdc/js-lint.mdc +6 -4
- package/mdc/k8s.mdc +2 -2
- package/mdc/vue.mdc +3 -3
- package/package.json +3 -3
- package/scripts/auto-rules.mjs +46 -29
- package/scripts/check-ga.mjs +27 -15
- package/scripts/check-js-bun-db.mjs +3 -3
- package/scripts/check-js-lint.mjs +110 -27
- package/scripts/check-js-mssql.mjs +155 -96
- package/scripts/check-k8s.mjs +161 -32
- package/scripts/check-nginx-default-tpl.mjs +1 -1
- package/scripts/check-vue.mjs +82 -45
- package/scripts/cli-entry.mjs +2 -5
- package/scripts/upgrade-nitra-cursor-and-install.mjs +1 -1
- package/scripts/utils/bun-sql-scan.mjs +1 -1
- package/scripts/utils/mssql-pool-scan.mjs +65 -52
- package/scripts/utils/oxlint-canonical-skeleton.json +27 -0
- package/scripts/utils/oxlint-canonical.json +387 -0
- package/scripts/utils/oxlint-rules.tsv +359 -0
- package/scripts/utils/rebuild-oxlint-canonical.mjs +29 -0
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
e18e/prefer-includes error
|
|
2
|
+
array-callback-return deny
|
|
3
|
+
no-new-wrappers deny
|
|
4
|
+
import/no-named-as-default deny
|
|
5
|
+
oxc/uninvoked-array-callback deny
|
|
6
|
+
typescript/no-non-null-assertion deny
|
|
7
|
+
unicorn/prefer-date-now deny
|
|
8
|
+
no-obj-calls deny
|
|
9
|
+
default-case-last deny
|
|
10
|
+
import/no-webpack-loader-syntax deny
|
|
11
|
+
promise/no-promise-in-callback deny
|
|
12
|
+
typescript/no-unnecessary-type-constraint deny
|
|
13
|
+
unicorn/prefer-dom-node-remove deny
|
|
14
|
+
for-direction deny
|
|
15
|
+
no-prototype-builtins deny
|
|
16
|
+
typescript/no-useless-empty-export deny
|
|
17
|
+
unicorn/prefer-includes deny
|
|
18
|
+
guard-for-in deny
|
|
19
|
+
no-restricted-globals deny
|
|
20
|
+
promise/prefer-await-to-then off
|
|
21
|
+
typescript/prefer-as-const deny
|
|
22
|
+
unicorn/prefer-math-trunc deny
|
|
23
|
+
no-self-assign deny
|
|
24
|
+
max-params off
|
|
25
|
+
react/button-has-type deny
|
|
26
|
+
typescript/prefer-function-type deny
|
|
27
|
+
unicorn/prefer-native-coercion-functions deny
|
|
28
|
+
no-extra-label deny
|
|
29
|
+
no-shadow-restricted-names deny
|
|
30
|
+
react/iframe-missing-sandbox deny
|
|
31
|
+
typescript/prefer-ts-expect-error deny
|
|
32
|
+
unicorn/prefer-number-properties off
|
|
33
|
+
no-labels deny
|
|
34
|
+
no-ternary off
|
|
35
|
+
react/jsx-key deny
|
|
36
|
+
unicorn/consistent-empty-array-spread deny
|
|
37
|
+
unicorn/prefer-query-selector deny
|
|
38
|
+
no-object-constructor deny
|
|
39
|
+
react/jsx-no-script-url deny
|
|
40
|
+
unicorn/empty-brace-spaces deny
|
|
41
|
+
unicorn/prefer-set-has deny
|
|
42
|
+
no-array-constructor deny
|
|
43
|
+
react/jsx-no-useless-fragment deny
|
|
44
|
+
unicorn/explicit-length-check off
|
|
45
|
+
unicorn/prefer-string-replace-all deny
|
|
46
|
+
no-bitwise deny
|
|
47
|
+
no-unsafe-optional-chaining deny
|
|
48
|
+
react/no-children-prop deny
|
|
49
|
+
unicorn/no-abusive-eslint-disable deny
|
|
50
|
+
unicorn/prefer-string-trim-start-end deny
|
|
51
|
+
no-class-assign deny
|
|
52
|
+
no-unused-private-class-members deny
|
|
53
|
+
react/no-direct-mutation-state deny
|
|
54
|
+
unicorn/no-array-reduce deny
|
|
55
|
+
unicorn/require-array-join-separator deny
|
|
56
|
+
no-console off
|
|
57
|
+
no-useless-concat deny
|
|
58
|
+
react/no-render-return-value deny
|
|
59
|
+
unicorn/no-console-spaces deny
|
|
60
|
+
unicorn/text-encoding-identifier-case deny
|
|
61
|
+
no-constant-condition deny
|
|
62
|
+
no-useless-rename deny
|
|
63
|
+
react/no-unescaped-entities deny
|
|
64
|
+
unicorn/no-hex-escape deny
|
|
65
|
+
no-control-regex deny
|
|
66
|
+
no-with deny
|
|
67
|
+
react/react-in-jsx-scope deny
|
|
68
|
+
unicorn/no-length-as-slice-end deny
|
|
69
|
+
no-div-regex deny
|
|
70
|
+
prefer-numeric-literals deny
|
|
71
|
+
react/self-closing-comp deny
|
|
72
|
+
unicorn/no-negation-in-equality-check deny
|
|
73
|
+
no-dupe-keys deny
|
|
74
|
+
prefer-rest-params deny
|
|
75
|
+
unicorn/no-new-buffer deny
|
|
76
|
+
no-empty-character-class deny
|
|
77
|
+
require-await deny
|
|
78
|
+
node/no-exports-assign deny
|
|
79
|
+
unicorn/no-process-exit deny
|
|
80
|
+
no-empty-static-block deny
|
|
81
|
+
sort-keys off
|
|
82
|
+
oxc/bad-array-method-on-arguments deny
|
|
83
|
+
unicorn/no-thenable deny
|
|
84
|
+
typescript/ban-ts-comment deny
|
|
85
|
+
no-eval deny
|
|
86
|
+
unicode-bom deny
|
|
87
|
+
jsdoc/check-access deny
|
|
88
|
+
oxc/bad-comparison-sequence deny
|
|
89
|
+
unicorn/no-unnecessary-await deny
|
|
90
|
+
typescript/consistent-generic-constructors deny
|
|
91
|
+
no-extra-boolean-cast deny
|
|
92
|
+
vars-on-top deny
|
|
93
|
+
jsdoc/empty-tags deny
|
|
94
|
+
oxc/bad-replace-all-arg deny
|
|
95
|
+
unicorn/no-useless-fallback-in-spread deny
|
|
96
|
+
no-global-assign deny
|
|
97
|
+
jsdoc/require-param deny
|
|
98
|
+
oxc/erasing-op deny
|
|
99
|
+
unicorn/no-useless-spread deny
|
|
100
|
+
typescript/no-confusing-non-null-assertion deny
|
|
101
|
+
no-invalid-regexp deny
|
|
102
|
+
import/no-namespace off
|
|
103
|
+
jsdoc/require-param-type deny
|
|
104
|
+
oxc/no-accumulating-spread deny
|
|
105
|
+
typescript/no-empty-interface deny
|
|
106
|
+
unicorn/no-zero-fractions deny
|
|
107
|
+
import/namespace deny
|
|
108
|
+
jsdoc/require-property-name deny
|
|
109
|
+
no-label-var deny
|
|
110
|
+
typescript/no-extra-non-null-assertion deny
|
|
111
|
+
oxc/no-barrel-file deny
|
|
112
|
+
unicorn/prefer-spread deny
|
|
113
|
+
no-negated-condition deny
|
|
114
|
+
import/no-cycle deny
|
|
115
|
+
jsdoc/require-returns-description deny
|
|
116
|
+
typescript/no-misused-new deny
|
|
117
|
+
oxc/no-optional-chaining off
|
|
118
|
+
unicorn/prefer-array-flat-map deny
|
|
119
|
+
no-new-native-nonconstructor deny
|
|
120
|
+
import/no-dynamic-require deny
|
|
121
|
+
oxc/only-used-in-recursion deny
|
|
122
|
+
typescript/no-non-null-asserted-optional-chain deny
|
|
123
|
+
unicorn/prefer-code-point deny
|
|
124
|
+
default-case off
|
|
125
|
+
no-nonoctal-decimal-escape deny
|
|
126
|
+
import/no-self-import deny
|
|
127
|
+
promise/catch-or-return deny
|
|
128
|
+
typescript/no-this-alias deny
|
|
129
|
+
unicorn/prefer-dom-node-dataset deny
|
|
130
|
+
eqeqeq deny
|
|
131
|
+
no-proto deny
|
|
132
|
+
promise/no-new-statics deny
|
|
133
|
+
typescript/no-unsafe-function-type deny
|
|
134
|
+
unicorn/prefer-event-target deny
|
|
135
|
+
no-regex-spaces deny
|
|
136
|
+
promise/prefer-await-to-callbacks off
|
|
137
|
+
typescript/no-wrapper-object-types deny
|
|
138
|
+
unicorn/prefer-math-min-max deny
|
|
139
|
+
max-lines off
|
|
140
|
+
no-script-url deny
|
|
141
|
+
promise/valid-params deny
|
|
142
|
+
typescript/prefer-for-of deny
|
|
143
|
+
unicorn/prefer-modern-math-apis deny
|
|
144
|
+
no-useless-call deny
|
|
145
|
+
no-setter-return deny
|
|
146
|
+
typescript/prefer-namespace-keyword deny
|
|
147
|
+
unicorn/prefer-node-protocol deny
|
|
148
|
+
no-nested-ternary off
|
|
149
|
+
no-template-curly-in-string deny
|
|
150
|
+
react/jsx-curly-brace-presence deny
|
|
151
|
+
unicorn/catch-error-name deny
|
|
152
|
+
unicorn/prefer-prototype-methods deny
|
|
153
|
+
no-throw-literal deny
|
|
154
|
+
react/jsx-no-duplicate-props deny
|
|
155
|
+
unicorn/consistent-function-scoping deny
|
|
156
|
+
unicorn/prefer-regexp-test deny
|
|
157
|
+
no-alert deny
|
|
158
|
+
no-unexpected-multiline deny
|
|
159
|
+
react/jsx-no-undef deny
|
|
160
|
+
unicorn/escape-case deny
|
|
161
|
+
unicorn/prefer-string-raw deny
|
|
162
|
+
no-await-in-loop off
|
|
163
|
+
no-unsafe-negation deny
|
|
164
|
+
react/no-array-index-key deny
|
|
165
|
+
unicorn/new-for-builtins deny
|
|
166
|
+
unicorn/prefer-string-starts-ends-with deny
|
|
167
|
+
no-case-declarations deny
|
|
168
|
+
no-unused-labels deny
|
|
169
|
+
react/no-danger deny
|
|
170
|
+
unicorn/no-array-for-each deny
|
|
171
|
+
unicorn/prefer-type-error deny
|
|
172
|
+
no-cond-assign deny
|
|
173
|
+
no-useless-catch deny
|
|
174
|
+
react/no-is-mounted deny
|
|
175
|
+
unicorn/no-await-in-promise-methods deny
|
|
176
|
+
unicorn/switch-case-braces deny
|
|
177
|
+
no-constant-binary-expression deny
|
|
178
|
+
no-useless-escape deny
|
|
179
|
+
react/no-string-refs deny
|
|
180
|
+
unicorn/no-empty-file deny
|
|
181
|
+
no-void deny
|
|
182
|
+
unicorn/no-invalid-remove-event-listener deny
|
|
183
|
+
react/prefer-es6-class deny
|
|
184
|
+
no-delete-var deny
|
|
185
|
+
prefer-exponentiation-operator deny
|
|
186
|
+
react/rules-of-hooks deny
|
|
187
|
+
unicorn/no-magic-array-flat-depth deny
|
|
188
|
+
no-dupe-else-if deny
|
|
189
|
+
prefer-object-spread deny
|
|
190
|
+
react/void-dom-elements-no-children deny
|
|
191
|
+
unicorn/no-new-array deny
|
|
192
|
+
no-else-return deny
|
|
193
|
+
radix off
|
|
194
|
+
unicorn/no-object-as-default-parameter deny
|
|
195
|
+
no-empty-pattern deny
|
|
196
|
+
sort-imports off
|
|
197
|
+
oxc/approx-constant deny
|
|
198
|
+
typescript/array-type deny
|
|
199
|
+
unicorn/no-static-only-class deny
|
|
200
|
+
no-eq-null deny
|
|
201
|
+
symbol-description deny
|
|
202
|
+
oxc/bad-char-at-comparison deny
|
|
203
|
+
typescript/ban-types deny
|
|
204
|
+
unicorn/no-typeof-undefined deny
|
|
205
|
+
no-extend-native deny
|
|
206
|
+
valid-typeof deny
|
|
207
|
+
jsdoc/check-tag-names deny
|
|
208
|
+
oxc/bad-object-literal-comparison deny
|
|
209
|
+
typescript/consistent-type-definitions deny
|
|
210
|
+
unicorn/no-unreadable-iife deny
|
|
211
|
+
no-func-assign deny
|
|
212
|
+
import/default deny
|
|
213
|
+
jsdoc/no-defaults deny
|
|
214
|
+
oxc/double-comparisons deny
|
|
215
|
+
typescript/no-inferrable-types deny
|
|
216
|
+
unicorn/no-useless-promise-resolve-reject deny
|
|
217
|
+
no-inner-declarations deny
|
|
218
|
+
import/no-named-default deny
|
|
219
|
+
oxc/missing-throw deny
|
|
220
|
+
jsdoc/require-param-name deny
|
|
221
|
+
typescript/no-dynamic-delete deny
|
|
222
|
+
unicorn/no-useless-undefined deny
|
|
223
|
+
no-iterator deny
|
|
224
|
+
jsdoc/require-property-description deny
|
|
225
|
+
oxc/no-async-endpoint-handlers deny
|
|
226
|
+
typescript/no-explicit-any deny
|
|
227
|
+
unicorn/numeric-separators-style off
|
|
228
|
+
no-magic-numbers off
|
|
229
|
+
import/no-commonjs off
|
|
230
|
+
jsdoc/require-returns deny
|
|
231
|
+
typescript/no-import-type-side-effects deny
|
|
232
|
+
unicorn/prefer-array-flat deny
|
|
233
|
+
no-new-func deny
|
|
234
|
+
import/no-duplicates deny
|
|
235
|
+
jsdoc/require-yields deny
|
|
236
|
+
oxc/number-arg-out-of-range deny
|
|
237
|
+
typescript/no-non-null-asserted-nullish-coalescing deny
|
|
238
|
+
unicorn/prefer-blob-reading-methods deny
|
|
239
|
+
no-new deny
|
|
240
|
+
import/no-named-as-default-member off
|
|
241
|
+
promise/avoid-new deny
|
|
242
|
+
typescript/no-require-imports deny
|
|
243
|
+
unicorn/prefer-dom-node-append deny
|
|
244
|
+
default-param-last deny
|
|
245
|
+
no-plusplus off
|
|
246
|
+
import/unambiguous off
|
|
247
|
+
promise/no-callback-in-promise deny
|
|
248
|
+
typescript/no-unsafe-declaration-merging deny
|
|
249
|
+
unicorn/prefer-dom-node-text-content deny
|
|
250
|
+
func-names off
|
|
251
|
+
no-redeclare deny
|
|
252
|
+
promise/param-names deny
|
|
253
|
+
typescript/no-var-requires deny
|
|
254
|
+
unicorn/prefer-logical-operator-over-ternary deny
|
|
255
|
+
max-classes-per-file deny
|
|
256
|
+
no-return-assign deny
|
|
257
|
+
promise/spec-only deny
|
|
258
|
+
typescript/prefer-enum-initializers deny
|
|
259
|
+
unicorn/prefer-modern-dom-apis deny
|
|
260
|
+
new-cap off
|
|
261
|
+
no-self-compare deny
|
|
262
|
+
react/checked-requires-onchange-or-readonly deny
|
|
263
|
+
typescript/prefer-literal-enum-member deny
|
|
264
|
+
unicorn/prefer-negative-index deny
|
|
265
|
+
no-multi-assign deny
|
|
266
|
+
no-sparse-arrays deny
|
|
267
|
+
typescript/triple-slash-reference deny
|
|
268
|
+
react/jsx-boolean-value deny
|
|
269
|
+
unicorn/prefer-optional-catch-binding deny
|
|
270
|
+
no-lone-blocks deny
|
|
271
|
+
no-this-before-super deny
|
|
272
|
+
react/jsx-no-comment-textnodes deny
|
|
273
|
+
unicorn/consistent-existence-index-check deny
|
|
274
|
+
unicorn/prefer-reflect-apply deny
|
|
275
|
+
no-duplicate-imports deny
|
|
276
|
+
no-undefined off
|
|
277
|
+
react/jsx-no-target-blank deny
|
|
278
|
+
unicorn/prefer-set-size deny
|
|
279
|
+
unicorn/error-message deny
|
|
280
|
+
no-async-promise-executor deny
|
|
281
|
+
no-unsafe-finally deny
|
|
282
|
+
react/jsx-props-no-spread-multi deny
|
|
283
|
+
unicorn/filename-case off
|
|
284
|
+
unicorn/prefer-string-slice deny
|
|
285
|
+
no-caller deny
|
|
286
|
+
no-unused-expressions deny
|
|
287
|
+
react/no-danger-with-children deny
|
|
288
|
+
unicorn/no-anonymous-default-export off
|
|
289
|
+
unicorn/prefer-structured-clone deny
|
|
290
|
+
no-compare-neg-zero deny
|
|
291
|
+
no-unused-vars deny
|
|
292
|
+
react/no-find-dom-node deny
|
|
293
|
+
unicorn/no-await-expression-member deny
|
|
294
|
+
unicorn/require-number-to-fixed-digits-argument deny
|
|
295
|
+
no-const-assign deny
|
|
296
|
+
no-useless-constructor deny
|
|
297
|
+
react/no-set-state deny
|
|
298
|
+
unicorn/no-document-cookie deny
|
|
299
|
+
unicorn/throw-new-error deny
|
|
300
|
+
no-constructor-return deny
|
|
301
|
+
no-var deny
|
|
302
|
+
react/no-unknown-property deny
|
|
303
|
+
unicorn/no-instanceof-array deny
|
|
304
|
+
no-debugger deny
|
|
305
|
+
prefer-promise-reject-errors deny
|
|
306
|
+
unicorn/no-lonely-if deny
|
|
307
|
+
no-dupe-class-members deny
|
|
308
|
+
prefer-object-has-own deny
|
|
309
|
+
react/style-prop-object deny
|
|
310
|
+
unicorn/no-nested-ternary off
|
|
311
|
+
no-duplicate-case deny
|
|
312
|
+
prefer-spread deny
|
|
313
|
+
unicorn/no-null off
|
|
314
|
+
no-empty-function deny
|
|
315
|
+
require-yield deny
|
|
316
|
+
node/no-new-require deny
|
|
317
|
+
typescript/adjacent-overload-signatures deny
|
|
318
|
+
unicorn/no-single-promise-in-promise-methods deny
|
|
319
|
+
no-empty deny
|
|
320
|
+
sort-vars deny
|
|
321
|
+
oxc/bad-bitwise-operator deny
|
|
322
|
+
typescript/ban-tslint-comment deny
|
|
323
|
+
unicorn/no-this-assignment deny
|
|
324
|
+
no-ex-assign deny
|
|
325
|
+
use-isnan deny
|
|
326
|
+
jsdoc/check-property-names deny
|
|
327
|
+
oxc/bad-min-max-func deny
|
|
328
|
+
typescript/consistent-indexed-object-style deny
|
|
329
|
+
unicorn/no-unreadable-array-destructuring deny
|
|
330
|
+
no-fallthrough deny
|
|
331
|
+
yoda deny
|
|
332
|
+
jsdoc/implements-on-classes deny
|
|
333
|
+
oxc/const-comparisons deny
|
|
334
|
+
unicorn/no-useless-length-check deny
|
|
335
|
+
typescript/explicit-function-return-type deny
|
|
336
|
+
no-import-assign deny
|
|
337
|
+
import/first deny
|
|
338
|
+
jsdoc/require-param-description deny
|
|
339
|
+
typescript/no-duplicate-enum-values deny
|
|
340
|
+
oxc/misrefactored-assign-op deny
|
|
341
|
+
unicorn/no-useless-switch-case deny
|
|
342
|
+
no-irregular-whitespace deny
|
|
343
|
+
import/max-dependencies off
|
|
344
|
+
jsdoc/require-property deny
|
|
345
|
+
oxc/no-async-await off
|
|
346
|
+
typescript/no-empty-object-type deny
|
|
347
|
+
unicorn/number-literal-case deny
|
|
348
|
+
no-loss-of-precision deny
|
|
349
|
+
import/no-amd deny
|
|
350
|
+
jsdoc/require-property-type deny
|
|
351
|
+
oxc/no-const-enum deny
|
|
352
|
+
typescript/no-extraneous-class deny
|
|
353
|
+
unicorn/prefer-add-event-listener deny
|
|
354
|
+
no-multi-str deny
|
|
355
|
+
import/no-default-export off
|
|
356
|
+
jsdoc/require-returns-type deny
|
|
357
|
+
oxc/no-rest-spread-properties off
|
|
358
|
+
typescript/no-namespace deny
|
|
359
|
+
unicorn/prefer-array-some deny
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Збирає `oxlint-canonical.json` з `oxlint-canonical-skeleton.json` (без поля rules) та списку
|
|
3
|
+
* правил у `oxlint-rules.tsv` (колонки: ім’я правила, TAB, severity: deny | off | error).
|
|
4
|
+
*
|
|
5
|
+
* Після змін у TSV або скелеті запускай з каталогу пакета: `bun ./scripts/utils/rebuild-oxlint-canonical.mjs`,
|
|
6
|
+
* потім скопіюй оновлений канон у корінь споживача як `.oxlintrc.json` за потреби.
|
|
7
|
+
*/
|
|
8
|
+
import { readFileSync, writeFileSync } from 'node:fs'
|
|
9
|
+
import { dirname, join } from 'node:path'
|
|
10
|
+
import { fileURLToPath } from 'node:url'
|
|
11
|
+
|
|
12
|
+
const dir = dirname(fileURLToPath(import.meta.url))
|
|
13
|
+
const rules = {}
|
|
14
|
+
for (const line of readFileSync(join(dir, 'oxlint-rules.tsv'), 'utf8').split('\n')) {
|
|
15
|
+
const t = line.trim()
|
|
16
|
+
if (!t) {
|
|
17
|
+
continue
|
|
18
|
+
}
|
|
19
|
+
const i = t.indexOf('\t')
|
|
20
|
+
if (i === -1) {
|
|
21
|
+
throw new Error(`oxlint-rules.tsv: очікується TAB між ключем і значенням: ${t}`)
|
|
22
|
+
}
|
|
23
|
+
rules[t.slice(0, i)] = t.slice(i + 1)
|
|
24
|
+
}
|
|
25
|
+
const skeleton = JSON.parse(readFileSync(join(dir, 'oxlint-canonical-skeleton.json'), 'utf8'))
|
|
26
|
+
skeleton.rules = rules
|
|
27
|
+
const out = join(dir, 'oxlint-canonical.json')
|
|
28
|
+
writeFileSync(out, `${JSON.stringify(skeleton, null, 2)}\n`)
|
|
29
|
+
console.log(`wrote ${out} (${Object.keys(rules).length} rules)`)
|