@slango.configs/oxlint 0.0.0 → 0.1.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.
- package/README.md +30 -24
- package/dist/common.d.ts +32 -0
- package/dist/common.d.ts.map +1 -0
- package/dist/common.js +99 -0
- package/dist/common.js.map +1 -0
- package/dist/presets/javascript-node.d.ts +7 -0
- package/dist/presets/javascript-node.d.ts.map +1 -0
- package/dist/presets/javascript-node.js +7 -0
- package/dist/presets/javascript-node.js.map +1 -0
- package/dist/presets/typescript-browser.d.ts +7 -0
- package/dist/presets/typescript-browser.d.ts.map +1 -0
- package/dist/presets/typescript-browser.js +8 -0
- package/dist/presets/typescript-browser.js.map +1 -0
- package/dist/presets/typescript-isomorphic.d.ts +7 -0
- package/dist/presets/typescript-isomorphic.d.ts.map +1 -0
- package/{src → dist}/presets/typescript-isomorphic.js +5 -9
- package/dist/presets/typescript-isomorphic.js.map +1 -0
- package/dist/presets/typescript-next.d.ts +7 -0
- package/dist/presets/typescript-next.d.ts.map +1 -0
- package/dist/presets/typescript-next.js +40 -0
- package/dist/presets/typescript-next.js.map +1 -0
- package/dist/presets/typescript-node.d.ts +7 -0
- package/dist/presets/typescript-node.d.ts.map +1 -0
- package/dist/presets/typescript-node.js +7 -0
- package/dist/presets/typescript-node.js.map +1 -0
- package/dist/presets/typescript-react.d.ts +9 -0
- package/dist/presets/typescript-react.d.ts.map +1 -0
- package/dist/presets/typescript-react.js +17 -0
- package/dist/presets/typescript-react.js.map +1 -0
- package/dist/presets/typescript.d.ts +7 -0
- package/dist/presets/typescript.d.ts.map +1 -0
- package/dist/presets/typescript.js +7 -0
- package/dist/presets/typescript.js.map +1 -0
- package/package.json +13 -9
- package/src/common.js +0 -135
- package/src/presets/javascript-node.d.ts +0 -8
- package/src/presets/javascript-node.js +0 -11
- package/src/presets/options.d.ts +0 -6
- package/src/presets/typescript-browser.d.ts +0 -8
- package/src/presets/typescript-browser.js +0 -12
- package/src/presets/typescript-isomorphic.d.ts +0 -8
- package/src/presets/typescript-next.d.ts +0 -8
- package/src/presets/typescript-next.js +0 -14
- package/src/presets/typescript-node.d.ts +0 -8
- package/src/presets/typescript-node.js +0 -11
- package/src/presets/typescript-react.d.ts +0 -8
- package/src/presets/typescript-react.js +0 -12
- package/src/presets/typescript.d.ts +0 -8
- package/src/presets/typescript.js +0 -11
- package/src/rules/javascript-node.js +0 -143
- package/src/rules/typescript-browser.js +0 -214
- package/src/rules/typescript-isomorphic.js +0 -214
- package/src/rules/typescript-next.js +0 -361
- package/src/rules/typescript-node.js +0 -214
- package/src/rules/typescript-react.js +0 -320
- package/src/rules/typescript.js +0 -214
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Slango oxlint Configs (@slango.configs/oxlint)
|
|
2
2
|
|
|
3
|
-
oxlint presets
|
|
4
|
-
TypeScript 7 where typescript-eslint can no longer run. Type-aware rules are provided by
|
|
3
|
+
oxlint presets replacing [`@slango.configs/eslint`](../eslint/README.md) for projects on
|
|
4
|
+
TypeScript 7, where typescript-eslint can no longer run. Type-aware rules are provided by
|
|
5
5
|
[tsgolint](https://github.com/oxc-project/tsgolint) (built on TypeScript 7), everything
|
|
6
6
|
oxlint has no native port for (`perfectionist`, `regexp`) is loaded through oxlint's JS plugin
|
|
7
7
|
bridge from this package, so consumers need no extra plugin dependencies.
|
|
@@ -18,34 +18,37 @@ bridge from this package, so consumers need no extra plugin dependencies.
|
|
|
18
18
|
|
|
19
19
|
## Included rules
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
| `eslint-plugin-
|
|
32
|
-
| `
|
|
33
|
-
| `
|
|
34
|
-
| `
|
|
35
|
-
| `
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
21
|
+
Presets enable oxlint's own recommended set, the **`correctness`** category ("code that is
|
|
22
|
+
definitely wrong or useless"), for oxlint's default plugins (`eslint`, `typescript`, `unicorn`,
|
|
23
|
+
`oxc`) plus `import`, `node` and `promise`. React presets add the `react` and `jsx-a11y` plugins,
|
|
24
|
+
the Next preset adds `nextjs`. With `--type-aware`, the category also covers tsgolint's typed
|
|
25
|
+
rules (`no-floating-promises`, `await-thenable`, `unbound-method`, ...).
|
|
26
|
+
|
|
27
|
+
On top of the category:
|
|
28
|
+
|
|
29
|
+
| Source | Available in preset | How |
|
|
30
|
+
| --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------- |
|
|
31
|
+
| `eslint-plugin-regexp` recommended | `all` | JS plugin, rule list read from the plugin |
|
|
32
|
+
| `eslint-plugin-perfectionist` (tiered) | `all` | JS plugin, see options |
|
|
33
|
+
| `no-unused-vars` (`ignoreRestSiblings`), `import/first`, `import/no-anonymous-default-export` | `all` | explicit |
|
|
34
|
+
| `react/rules-of-hooks` | `typescript-react`, `-next` | explicit (oxlint files it under `pedantic`) |
|
|
35
|
+
| `react/only-export-components` | `typescript-react` (`eslint-plugin-react-refresh` vite options), `typescript-next` (next options) | explicit |
|
|
36
|
+
|
|
37
|
+
Other categories (`suspicious`, `pedantic`, `perf`, `style`, `restriction`, `nursery`) are off.
|
|
38
|
+
Enable them in your own config if wanted, e.g. `categories: { suspicious: 'warn' }`. Note that
|
|
39
|
+
oxlint files typescript-eslint's `no-unsafe-*`, `no-misused-promises` and `require-await` under
|
|
40
|
+
`pedantic`, so unlike `@slango.configs/eslint` they are not on by default.
|
|
41
|
+
|
|
42
|
+
Intentionally not carried over from `@slango.configs/eslint`:
|
|
39
43
|
|
|
40
44
|
- `eslint-plugin-prettier`: run prettier directly (lint-staged already does).
|
|
41
45
|
- `eslint-plugin-eslint-comments`: use `oxlint --report-unused-disable-directives`.
|
|
42
|
-
- `import-x/no-unresolved`: oxlint refuses to implement it, `tsc` covers it.
|
|
43
|
-
- `no-undef`, `no-octal`, `no-dupe-args`: superseded by TypeScript / strict mode.
|
|
44
|
-
|
|
45
|
-
Rules dropped per preset are listed in the `dropped` field of `src/rules/<preset>.js`.
|
|
46
46
|
|
|
47
47
|
## Usage
|
|
48
48
|
|
|
49
|
+
The package is written in TypeScript and ships `dist` with declarations, so `oxlint.config.ts`
|
|
50
|
+
files are fully typed against oxlint's `OxlintConfig`.
|
|
51
|
+
|
|
49
52
|
Add `@slango.configs/oxlint`, `oxlint` and `oxlint-tsgolint` as dev dependencies, then create
|
|
50
53
|
an `oxlint.config.ts` in the package (only `.ts` / `.mts` config files are auto-discovered):
|
|
51
54
|
|
|
@@ -96,6 +99,9 @@ export default defineConfig({
|
|
|
96
99
|
`tsconfig.json` per package, files outside its `include` should be ignored.
|
|
97
100
|
- JS plugin fixes are single-pass: `oxlint --fix` may need a second run to fully sort
|
|
98
101
|
imports and named imports.
|
|
102
|
+
- Rule selection follows oxlint's `correctness` category, not typescript-eslint's
|
|
103
|
+
`recommendedTypeChecked`: expect a few new `unicorn/*` and `oxc/*` findings, and no
|
|
104
|
+
`no-unsafe-*` findings unless you enable `pedantic` rules yourself.
|
|
99
105
|
- Expect new findings the ESLint presets missed before `@slango.configs/eslint` 1.3:
|
|
100
106
|
`import/first` (silently off for TypeScript files) and the `react/*` hooks and React Compiler
|
|
101
107
|
rules (the plugins were registered without rules).
|
package/dist/common.d.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { OxlintConfig, OxlintEnv, OxlintGlobals } from 'oxlint';
|
|
2
|
+
export type Plugins = NonNullable<OxlintConfig['plugins']>;
|
|
3
|
+
export type Rules = NonNullable<OxlintConfig['rules']>;
|
|
4
|
+
export type PerfectionistLevel = 'off' | 'relaxed' | 'moderate' | 'strict';
|
|
5
|
+
export interface PresetOptions {
|
|
6
|
+
perfectionist?: PerfectionistLevel;
|
|
7
|
+
}
|
|
8
|
+
export declare const globs: {
|
|
9
|
+
javascript: string[];
|
|
10
|
+
typescript: string[];
|
|
11
|
+
};
|
|
12
|
+
export declare const ignorePatterns: string[];
|
|
13
|
+
export declare const jsPlugins: () => string[];
|
|
14
|
+
export declare const categories: OxlintConfig['categories'];
|
|
15
|
+
export declare const regexpRules: Rules;
|
|
16
|
+
export declare const perfectionistLevels: Record<PerfectionistLevel, Rules>;
|
|
17
|
+
export declare const normalizeOptions: (options?: PresetOptions) => Required<PresetOptions>;
|
|
18
|
+
export declare const baseRules: Rules;
|
|
19
|
+
export declare const basePlugins: Plugins;
|
|
20
|
+
export interface BuildConfigInput {
|
|
21
|
+
options: PresetOptions;
|
|
22
|
+
plugins?: Plugins;
|
|
23
|
+
env?: OxlintEnv;
|
|
24
|
+
globals?: OxlintGlobals;
|
|
25
|
+
typescriptEnv?: OxlintEnv;
|
|
26
|
+
typescriptGlobals?: OxlintGlobals;
|
|
27
|
+
rules?: Rules;
|
|
28
|
+
typescriptRules?: Rules;
|
|
29
|
+
ignores?: string[];
|
|
30
|
+
}
|
|
31
|
+
export declare const buildConfig: ({ options, plugins, env, globals, typescriptEnv, typescriptGlobals, rules, typescriptRules, ignores, }: BuildConfigInput) => OxlintConfig;
|
|
32
|
+
//# sourceMappingURL=common.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAkB,MAAM,QAAQ,CAAC;AAKrF,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;AAC3D,MAAM,MAAM,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAEvD,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE3E,MAAM,WAAW,aAAa;IAE5B,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAED,eAAO,MAAM,KAAK;IAChB,UAAU;IACV,UAAU;CACX,CAAC;AAEF,eAAO,MAAM,cAAc,UAAmC,CAAC;AAM/D,eAAO,MAAM,SAAS,QAAO,MAAM,EAGlC,CAAC;AAKF,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,YAAY,CAA4B,CAAC;AAG/E,eAAO,MAAM,WAAW,EAAE,KAIhB,CAAC;AAmDX,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAKjE,CAAC;AAIF,eAAO,MAAM,gBAAgB,aAAa,aAAa,KAAQ,QAAQ,CAAC,aAAa,CAmBpF,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,KAIvB,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,OAAuE,CAAC;AAElG,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAOD,eAAO,MAAM,WAAW,2GAUrB,gBAAgB,KAAG,YAsBrB,CAAC"}
|
package/dist/common.js
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { configs as regexpConfigs } from 'eslint-plugin-regexp';
|
|
2
|
+
import { fileURLToPath } from 'node:url';
|
|
3
|
+
export const globs = {
|
|
4
|
+
javascript: ['**/*.{js,cjs,mjs,jsx}'],
|
|
5
|
+
typescript: ['**/*.{ts,tsx}'],
|
|
6
|
+
};
|
|
7
|
+
export const ignorePatterns = ['**/dist/**', '**/coverage/**'];
|
|
8
|
+
const resolvePlugin = (name) => fileURLToPath(import.meta.resolve(name));
|
|
9
|
+
export const jsPlugins = () => [
|
|
10
|
+
resolvePlugin('eslint-plugin-perfectionist'),
|
|
11
|
+
resolvePlugin('eslint-plugin-regexp'),
|
|
12
|
+
];
|
|
13
|
+
export const categories = { correctness: 'error' };
|
|
14
|
+
export const regexpRules = Object.fromEntries(Object.entries(regexpConfigs['flat/recommended'].rules ?? {}).filter(([name]) => name.startsWith('regexp/')));
|
|
15
|
+
const naturalSort = { type: 'natural', order: 'asc' };
|
|
16
|
+
const sortModulesRule = ['error', { ...naturalSort, partitionByNewLine: true }];
|
|
17
|
+
const sortRule = ['error', naturalSort];
|
|
18
|
+
const tier1 = [
|
|
19
|
+
'sort-imports',
|
|
20
|
+
'sort-named-imports',
|
|
21
|
+
'sort-named-exports',
|
|
22
|
+
'sort-exports',
|
|
23
|
+
'sort-import-attributes',
|
|
24
|
+
'sort-export-attributes',
|
|
25
|
+
'sort-modules',
|
|
26
|
+
];
|
|
27
|
+
const tier2 = [
|
|
28
|
+
'sort-union-types',
|
|
29
|
+
'sort-intersection-types',
|
|
30
|
+
'sort-heritage-clauses',
|
|
31
|
+
'sort-object-types',
|
|
32
|
+
'sort-interfaces',
|
|
33
|
+
'sort-enums',
|
|
34
|
+
];
|
|
35
|
+
const tier3 = [
|
|
36
|
+
'sort-objects',
|
|
37
|
+
'sort-classes',
|
|
38
|
+
'sort-jsx-props',
|
|
39
|
+
'sort-decorators',
|
|
40
|
+
'sort-switch-case',
|
|
41
|
+
'sort-variable-declarations',
|
|
42
|
+
'sort-array-includes',
|
|
43
|
+
'sort-sets',
|
|
44
|
+
'sort-maps',
|
|
45
|
+
];
|
|
46
|
+
const tierRules = (names, enabled) => Object.fromEntries(names.map((name) => [
|
|
47
|
+
`perfectionist/${name}`,
|
|
48
|
+
enabled ? (name === 'sort-modules' ? sortModulesRule : sortRule) : 'off',
|
|
49
|
+
]));
|
|
50
|
+
export const perfectionistLevels = {
|
|
51
|
+
off: { ...tierRules(tier1, false), ...tierRules(tier2, false), ...tierRules(tier3, false) },
|
|
52
|
+
relaxed: { ...tierRules(tier1, true), ...tierRules(tier2, false), ...tierRules(tier3, false) },
|
|
53
|
+
moderate: { ...tierRules(tier1, true), ...tierRules(tier2, true), ...tierRules(tier3, false) },
|
|
54
|
+
strict: { ...tierRules(tier1, true), ...tierRules(tier2, true), ...tierRules(tier3, true) },
|
|
55
|
+
};
|
|
56
|
+
const defaultOptions = { perfectionist: 'relaxed' };
|
|
57
|
+
export const normalizeOptions = (options = {}) => {
|
|
58
|
+
if (options === null || typeof options !== 'object' || Array.isArray(options)) {
|
|
59
|
+
throw new Error('options must be an object');
|
|
60
|
+
}
|
|
61
|
+
const { perfectionist = defaultOptions.perfectionist, ...rest } = options;
|
|
62
|
+
if (!Object.hasOwn(perfectionistLevels, perfectionist)) {
|
|
63
|
+
throw new Error(`Invalid perfectionist level "${String(perfectionist)}". Expected one of: ${Object.keys(perfectionistLevels).join(', ')}`);
|
|
64
|
+
}
|
|
65
|
+
const unknown = Object.keys(rest);
|
|
66
|
+
if (unknown.length > 0) {
|
|
67
|
+
throw new Error(`Unknown option(s): ${unknown.join(', ')}`);
|
|
68
|
+
}
|
|
69
|
+
return { perfectionist };
|
|
70
|
+
};
|
|
71
|
+
export const baseRules = {
|
|
72
|
+
'no-unused-vars': ['error', { ignoreRestSiblings: true }],
|
|
73
|
+
'import/first': 'error',
|
|
74
|
+
'import/no-anonymous-default-export': 'error',
|
|
75
|
+
};
|
|
76
|
+
export const basePlugins = ['typescript', 'unicorn', 'oxc', 'import', 'node', 'promise'];
|
|
77
|
+
export const buildConfig = ({ options, plugins = [], env = {}, globals = {}, typescriptEnv, typescriptGlobals, rules = {}, typescriptRules = {}, ignores = [], }) => {
|
|
78
|
+
const { perfectionist } = normalizeOptions(options);
|
|
79
|
+
const overrides = [];
|
|
80
|
+
if (typescriptEnv || typescriptGlobals || Object.keys(typescriptRules).length > 0) {
|
|
81
|
+
overrides.push({
|
|
82
|
+
files: globs.typescript,
|
|
83
|
+
...(typescriptEnv ? { env: typescriptEnv } : {}),
|
|
84
|
+
...(typescriptGlobals ? { globals: typescriptGlobals } : {}),
|
|
85
|
+
rules: typescriptRules,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
plugins: [...basePlugins, ...plugins],
|
|
90
|
+
jsPlugins: jsPlugins(),
|
|
91
|
+
categories,
|
|
92
|
+
env: { builtin: true, ...env },
|
|
93
|
+
globals,
|
|
94
|
+
ignorePatterns: [...ignorePatterns, ...ignores],
|
|
95
|
+
rules: { ...regexpRules, ...perfectionistLevels[perfectionist], ...baseRules, ...rules },
|
|
96
|
+
overrides,
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type PresetOptions } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const createJavascriptNodeConfig: (options?: PresetOptions) => OxlintConfig;
|
|
5
|
+
declare const _default: OxlintConfig;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=javascript-node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"javascript-node.d.ts","sourceRoot":"","sources":["../../src/presets/javascript-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,0BAA0B,aAAa,aAAa,KAAQ,YAIrE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"javascript-node.js","sourceRoot":"","sources":["../../src/presets/javascript-node.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAI/D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CACtF,WAAW,CAAC;IACV,OAAO;IACP,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CAClC,CAAC,CAAC;AAEL,eAAe,0BAA0B,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type PresetOptions } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const createTypescriptBrowserConfig: (options?: PresetOptions) => OxlintConfig;
|
|
5
|
+
declare const _default: OxlintConfig;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=typescript-browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-browser.d.ts","sourceRoot":"","sources":["../../src/presets/typescript-browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,6BAA6B,aAAa,aAAa,KAAQ,YAKxE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { buildConfig } from '../common.js';
|
|
2
|
+
export const createTypescriptBrowserConfig = (options = {}) => buildConfig({
|
|
3
|
+
options,
|
|
4
|
+
env: { node: true, es2025: true },
|
|
5
|
+
typescriptEnv: { node: false, browser: true, es2022: true },
|
|
6
|
+
});
|
|
7
|
+
export default createTypescriptBrowserConfig();
|
|
8
|
+
//# sourceMappingURL=typescript-browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-browser.js","sourceRoot":"","sources":["../../src/presets/typescript-browser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAI/D,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CACzF,WAAW,CAAC;IACV,OAAO;IACP,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CAC5D,CAAC,CAAC;AAEL,eAAe,6BAA6B,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type PresetOptions } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const createTypescriptIsomorphicConfig: (options?: PresetOptions) => OxlintConfig;
|
|
5
|
+
declare const _default: OxlintConfig;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=typescript-isomorphic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-isomorphic.d.ts","sourceRoot":"","sources":["../../src/presets/typescript-isomorphic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,gCAAgC,aAAa,aAAa,KAAQ,YAK3E,CAAC"}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import { buildConfig
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export const createTypescriptIsomorphicConfig = (options = {}) =>
|
|
5
|
-
buildConfig({
|
|
6
|
-
generated,
|
|
7
|
-
options: normalizeOptions(options),
|
|
1
|
+
import { buildConfig } from '../common.js';
|
|
2
|
+
export const createTypescriptIsomorphicConfig = (options = {}) => buildConfig({
|
|
3
|
+
options,
|
|
8
4
|
env: { node: true, es2025: true },
|
|
9
5
|
typescriptEnv: { node: true, browser: true, es2022: true },
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
});
|
|
12
7
|
export default createTypescriptIsomorphicConfig();
|
|
8
|
+
//# sourceMappingURL=typescript-isomorphic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-isomorphic.js","sourceRoot":"","sources":["../../src/presets/typescript-isomorphic.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAI/D,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CAC5F,WAAW,CAAC;IACV,OAAO;IACP,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CAC3D,CAAC,CAAC;AAEL,eAAe,gCAAgC,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type PresetOptions } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const createTypescriptNextConfig: (options?: PresetOptions) => OxlintConfig;
|
|
5
|
+
declare const _default: OxlintConfig;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=typescript-next.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-next.d.ts","sourceRoot":"","sources":["../../src/presets/typescript-next.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAG/D,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,0BAA0B,aAAa,aAAa,KAAQ,YAqCrE,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { buildConfig } from '../common.js';
|
|
2
|
+
import { reactPlugins, reactRules } from './typescript-react.js';
|
|
3
|
+
export const createTypescriptNextConfig = (options = {}) => buildConfig({
|
|
4
|
+
options,
|
|
5
|
+
plugins: [...reactPlugins, 'nextjs'],
|
|
6
|
+
env: { node: true, es2025: true },
|
|
7
|
+
typescriptEnv: { node: false, browser: true, es2022: true },
|
|
8
|
+
typescriptGlobals: { process: 'readonly', NodeJS: 'readonly' },
|
|
9
|
+
rules: {
|
|
10
|
+
...reactRules,
|
|
11
|
+
'react/only-export-components': [
|
|
12
|
+
'error',
|
|
13
|
+
{
|
|
14
|
+
allowExportNames: [
|
|
15
|
+
'experimental_ppr',
|
|
16
|
+
'dynamic',
|
|
17
|
+
'dynamicParams',
|
|
18
|
+
'revalidate',
|
|
19
|
+
'fetchCache',
|
|
20
|
+
'runtime',
|
|
21
|
+
'preferredRegion',
|
|
22
|
+
'maxDuration',
|
|
23
|
+
'metadata',
|
|
24
|
+
'generateMetadata',
|
|
25
|
+
'viewport',
|
|
26
|
+
'generateViewport',
|
|
27
|
+
'generateImageMetadata',
|
|
28
|
+
'generateSitemaps',
|
|
29
|
+
'generateStaticParams',
|
|
30
|
+
'instant',
|
|
31
|
+
'contentType',
|
|
32
|
+
'size',
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
ignores: ['**/.next/**'],
|
|
38
|
+
});
|
|
39
|
+
export default createTypescriptNextConfig();
|
|
40
|
+
//# sourceMappingURL=typescript-next.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-next.js","sourceRoot":"","sources":["../../src/presets/typescript-next.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIjE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CACtF,WAAW,CAAC;IACV,OAAO;IACP,OAAO,EAAE,CAAC,GAAG,YAAY,EAAE,QAAQ,CAAC;IACpC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC3D,iBAAiB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE;IAC9D,KAAK,EAAE;QACL,GAAG,UAAU;QAEb,8BAA8B,EAAE;YAC9B,OAAO;YACP;gBACE,gBAAgB,EAAE;oBAChB,kBAAkB;oBAClB,SAAS;oBACT,eAAe;oBACf,YAAY;oBACZ,YAAY;oBACZ,SAAS;oBACT,iBAAiB;oBACjB,aAAa;oBACb,UAAU;oBACV,kBAAkB;oBAClB,UAAU;oBACV,kBAAkB;oBAClB,uBAAuB;oBACvB,kBAAkB;oBAClB,sBAAsB;oBACtB,SAAS;oBACT,aAAa;oBACb,MAAM;iBACP;aACF;SACF;KACF;IACD,OAAO,EAAE,CAAC,aAAa,CAAC;CACzB,CAAC,CAAC;AAEL,eAAe,0BAA0B,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type PresetOptions } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const createTypescriptNodeConfig: (options?: PresetOptions) => OxlintConfig;
|
|
5
|
+
declare const _default: OxlintConfig;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=typescript-node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-node.d.ts","sourceRoot":"","sources":["../../src/presets/typescript-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,0BAA0B,aAAa,aAAa,KAAQ,YAIrE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-node.js","sourceRoot":"","sources":["../../src/presets/typescript-node.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAI/D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CACtF,WAAW,CAAC;IACV,OAAO;IACP,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CAClC,CAAC,CAAC;AAEL,eAAe,0BAA0B,EAAE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type Plugins, type PresetOptions, type Rules } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const reactPlugins: Plugins;
|
|
5
|
+
export declare const reactRules: Rules;
|
|
6
|
+
export declare const createTypescriptReactConfig: (options?: PresetOptions) => OxlintConfig;
|
|
7
|
+
declare const _default: OxlintConfig;
|
|
8
|
+
export default _default;
|
|
9
|
+
//# sourceMappingURL=typescript-react.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-react.d.ts","sourceRoot":"","sources":["../../src/presets/typescript-react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAEzF,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,YAAY,EAAE,OAA+B,CAAC;AAI3D,eAAO,MAAM,UAAU,EAAE,KAExB,CAAC;AAEF,eAAO,MAAM,2BAA2B,aAAa,aAAa,KAAQ,YAWtE,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { buildConfig } from '../common.js';
|
|
2
|
+
export const reactPlugins = ['react', 'jsx-a11y'];
|
|
3
|
+
export const reactRules = {
|
|
4
|
+
'react/rules-of-hooks': 'error',
|
|
5
|
+
};
|
|
6
|
+
export const createTypescriptReactConfig = (options = {}) => buildConfig({
|
|
7
|
+
options,
|
|
8
|
+
plugins: reactPlugins,
|
|
9
|
+
env: { node: true, es2025: true },
|
|
10
|
+
typescriptEnv: { node: false, browser: true, es2022: true },
|
|
11
|
+
rules: {
|
|
12
|
+
...reactRules,
|
|
13
|
+
'react/only-export-components': ['error', { allowConstantExport: true }],
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
export default createTypescriptReactConfig();
|
|
17
|
+
//# sourceMappingURL=typescript-react.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-react.js","sourceRoot":"","sources":["../../src/presets/typescript-react.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgD,MAAM,cAAc,CAAC;AAIzF,MAAM,CAAC,MAAM,YAAY,GAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAI3D,MAAM,CAAC,MAAM,UAAU,GAAU;IAC/B,sBAAsB,EAAE,OAAO;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CACvF,WAAW,CAAC;IACV,OAAO;IACP,OAAO,EAAE,YAAY;IACrB,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC3D,KAAK,EAAE;QACL,GAAG,UAAU;QAEb,8BAA8B,EAAE,CAAC,OAAO,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC;KACzE;CACF,CAAC,CAAC;AAEL,eAAe,2BAA2B,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OxlintConfig } from 'oxlint';
|
|
2
|
+
import { type PresetOptions } from '../common.js';
|
|
3
|
+
export type { PresetOptions } from '../common.js';
|
|
4
|
+
export declare const createTypescriptConfig: (options?: PresetOptions) => OxlintConfig;
|
|
5
|
+
declare const _default: OxlintConfig;
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=typescript.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../src/presets/typescript.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/D,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,eAAO,MAAM,sBAAsB,aAAa,aAAa,KAAQ,YAIjE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../src/presets/typescript.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAC;AAI/D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAO,GAAkB,EAAE,EAAgB,EAAE,CAClF,WAAW,CAAC;IACV,OAAO;IACP,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CAClC,CAAC,CAAC;AAEL,eAAe,sBAAsB,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@slango.configs/oxlint",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Slango oxlint configs",
|
|
6
6
|
"repository": {
|
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
},
|
|
11
11
|
"type": "module",
|
|
12
12
|
"files": [
|
|
13
|
-
"
|
|
13
|
+
"dist"
|
|
14
14
|
],
|
|
15
15
|
"exports": {
|
|
16
|
-
"./*": "./
|
|
16
|
+
"./*": "./dist/presets/*"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"eslint-plugin-perfectionist": "5.11.0",
|
|
@@ -24,14 +24,18 @@
|
|
|
24
24
|
"oxlint-tsgolint": "^7.0.2001"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@slango.configs/
|
|
28
|
-
"
|
|
27
|
+
"@slango.configs/typescript": "2.0.16",
|
|
28
|
+
"@types/node": "26.4.1",
|
|
29
29
|
"oxlint": "1.81.0",
|
|
30
|
-
"oxlint-tsgolint": "7.0.2001"
|
|
30
|
+
"oxlint-tsgolint": "7.0.2001",
|
|
31
|
+
"typescript": "7.0.2"
|
|
31
32
|
},
|
|
32
33
|
"scripts": {
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
34
|
+
"build": "tsc -p tsconfig.build.json",
|
|
35
|
+
"build:force": "tsc -p tsconfig.build.json --incremental false",
|
|
36
|
+
"build:watch": "tsc -p tsconfig.build.json --watch",
|
|
37
|
+
"build:check": "tsc --noEmit",
|
|
38
|
+
"lint": "oxlint --type-aware --max-warnings 0 .",
|
|
39
|
+
"lint:fix": "oxlint --type-aware --fix --max-warnings 0 ."
|
|
36
40
|
}
|
|
37
41
|
}
|