@1stg/oxlint-config 0.0.0-stage → 1.0.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/CHANGELOG.md ADDED
@@ -0,0 +1,28 @@
1
+ # Changelog
2
+
3
+ ## 1.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#423](https://github.com/1stG/configs/pull/423) [`89733fb`](https://github.com/1stG/configs/commit/89733fbfa47f64ef1fb794d037f3a65a9836ee65) Thanks [@JounQin](https://github.com/JounQin)! - First public release of the Oxfmt and Oxlint configs.
8
+
9
+ ### Minor Changes
10
+
11
+ - [#420](https://github.com/1stG/configs/pull/420) [`dde6235`](https://github.com/1stG/configs/commit/dde6235d72b2e72b8413adeab9069b585af1c849) Thanks [@JounQin](https://github.com/JounQin)! - Enable the remaining Oxlint-supported rules from the previous ESLint config,
12
+ including `no-magic-numbers` with the historical ignore list, `no-fallthrough`,
13
+ `no-redeclare`, `prefer-object-spread` and the other style/suspicious rules
14
+ that the automatic migration audit found missing.
15
+
16
+ - [#421](https://github.com/1stG/configs/pull/421) [`e3b113d`](https://github.com/1stG/configs/commit/e3b113d17a63c9d8b85a7d955c6128a4c4cf08cd) Thanks [@JounQin](https://github.com/JounQin)! - Enable the type-aware `typescript/no-deprecated` rule, covering the
17
+ `sonarjs/deprecation` behavior that needs TypeScript type information.
18
+
19
+ - [#425](https://github.com/1stG/configs/pull/425) [`c5dd9a7`](https://github.com/1stG/configs/commit/c5dd9a7fd420eebf7961c4a097bd69c9ba69fdda) Thanks [@JounQin](https://github.com/JounQin)! - Enable Oxlint's `perf` category as a warning and load the `react-perf` plugin
20
+ when React is enabled. The repository currently reports no perf findings, but
21
+ consumers get the suggestions without a hard failure.
22
+
23
+ - [#419](https://github.com/1stG/configs/pull/419) [`4915585`](https://github.com/1stG/configs/commit/491558590071181e30226c3d8d6d5dddae4a6900) Thanks [@JounQin](https://github.com/JounQin)! - Add a `typeAware` option that enables Oxlint's type-aware rules. It defaults
24
+ to whether `oxlint-tsgolint` is installed and can be disabled explicitly.
25
+
26
+ ## 1.0.0
27
+
28
+ - Initial release.
package/README.md CHANGED
@@ -1,3 +1,112 @@
1
- # Temporary Holding Version
1
+ # @1stg/oxlint-config
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Personal but Shareable [Oxlint](https://oxc.rs/docs/guide/usage/linter) Configuration for all 1stG.me projects.
4
+
5
+ ## Usage
6
+
7
+ ```js
8
+ // oxlint.config.ts
9
+ import { defineConfig } from '@1stg/oxlint-config'
10
+
11
+ export default defineConfig({
12
+ react: true,
13
+ vitest: true,
14
+ })
15
+ ```
16
+
17
+ ```sh
18
+ oxlint .
19
+ ```
20
+
21
+ The default export is the zero-config version, for tools that can import a
22
+ config object directly.
23
+
24
+ The default export can be re-exported directly:
25
+
26
+ ```js
27
+ export { default } from '@1stg/oxlint-config'
28
+ ```
29
+
30
+ Use `defineConfig` only when you need options.
31
+
32
+ ## Options
33
+
34
+ | Option | Default | Description |
35
+ | ---------------- | ---------------------------------------- | ---------------------------------------- |
36
+ | `categories` | `{ correctness: 'error', perf: 'warn' }` | Oxlint categories. |
37
+ | `jsdoc` | `true` | Enable the JSDoc plugin. |
38
+ | `jsPlugins` | `[]` | ESLint plugins to load (alpha). |
39
+ | `rules` | `{}` | Extra rule overrides. |
40
+ | `ignorePatterns` | `[]` | Native Oxlint ignore patterns. |
41
+ | `node` | `true` | Node.js globals and rules. |
42
+ | `promise` | `true` | Enable the Promise plugin. |
43
+ | `react` | installed `react` | React, JSX accessibility and perf rules. |
44
+ | `vue` | installed `vue` | Vue rules. |
45
+ | `vitest` | installed `vitest` | Vitest globals and rules. |
46
+ | `jest` | installed `jest` | Jest globals and rules. |
47
+ | `typeAware` | installed `oxlint-tsgolint` | Enable rules requiring type info. |
48
+
49
+ `ignorePatterns` is the native Oxlint field and can be passed directly; there
50
+ is no separate `ignores` alias.
51
+
52
+ Import sorting is **not** a lint rule here: Oxfmt's built-in `sortImports` does
53
+ it at format time, so `oxlint` and `oxfmt` stay independent.
54
+
55
+ ## Third-party ESLint plugins
56
+
57
+ Oxlint can load ESLint plugins through `jsPlugins` (alpha, not semver-stable):
58
+
59
+ ```js
60
+ import { defineConfig } from '@1stg/oxlint-config'
61
+
62
+ export default defineConfig({
63
+ jsPlugins: ['eslint-plugin-sonarjs'],
64
+ rules: {
65
+ 'sonarjs/no-identical-functions': 'warn',
66
+ 'sonarjs/cognitive-complexity': 'warn',
67
+ },
68
+ })
69
+ ```
70
+
71
+ Plugins resolve relative to the Oxlint config file, so install them in the
72
+ project that enables them. Processors and plugins relying on the full ESLint
73
+ `SourceCode` API may not work; Oxlint's built-in plugins (TypeScript, unicorn,
74
+ import, jsdoc, react, vue, node, promise, Vitest, Jest) cover the rest.
75
+
76
+ ## Notes
77
+
78
+ - Oxlint parses JavaScript, TypeScript, JSX and Vue. Markdown, JSON, YAML and
79
+ TOML are formatted by `@1stg/oxfmt-config` instead of linted.
80
+ - Type-aware rules require the `oxlint-tsgolint` package. `oxlint --type-aware`
81
+ enables Oxlint's own type-aware defaults, but the extra rules added by this
82
+ preset (for example `typescript/no-misused-promises`) are guarded by
83
+ `typeAware` and need `typeAware: true` (or an installed `oxlint-tsgolint`, which
84
+ is the default).
85
+
86
+ ## Sponsors and Backers
87
+
88
+ [![Sponsors and Backers](https://raw.githubusercontent.com/1stG/static/master/sponsors.svg)](https://github.com/sponsors/JounQin)
89
+
90
+ ### Sponsors
91
+
92
+ | 1stG | RxTS | UnTS |
93
+ | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
94
+ | [![1stG Open Collective sponsors](https://opencollective.com/1stG/organizations.svg)](https://opencollective.com/1stG) | [![RxTS Open Collective sponsors](https://opencollective.com/rxts/organizations.svg)](https://opencollective.com/rxts) | [![UnTS Open Collective sponsors](https://opencollective.com/unts/organizations.svg)](https://opencollective.com/unts) |
95
+
96
+ ### Backers
97
+
98
+ | 1stG | RxTS | UnTS |
99
+ | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
100
+ | [![1stG Open Collective backers](https://opencollective.com/1stG/individuals.svg)](https://opencollective.com/1stG) | [![RxTS Open Collective backers](https://opencollective.com/rxts/individuals.svg)](https://opencollective.com/rxts) | [![UnTS Open Collective backers](https://opencollective.com/unts/individuals.svg)](https://opencollective.com/unts) |
101
+
102
+ ## Changelog
103
+
104
+ Detailed changes for each release are documented in [CHANGELOG.md](./CHANGELOG.md).
105
+
106
+ ## License
107
+
108
+ [MIT][] © [JounQin][]@[1stG.me][]
109
+
110
+ [1stG.me]: https://www.1stG.me
111
+ [JounQin]: https://github.com/JounQin
112
+ [MIT]: http://opensource.org/licenses/MIT
package/lib/index.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ import type { OxlintConfig } from 'oxlint';
2
+ export interface OxlintConfigOptions extends OxlintConfig {
3
+ jsdoc?: boolean;
4
+ node?: boolean;
5
+ promise?: boolean;
6
+ react?: boolean;
7
+ vue?: boolean;
8
+ vitest?: boolean;
9
+ jest?: boolean;
10
+ typeAware?: boolean;
11
+ }
12
+ export declare const defineConfig: ({ categories, jest, typeAware, jsdoc, node, promise, react, vitest, vue, plugins: extraPlugins, env: extraEnv, rules: extraRules, overrides: extraOverrides, ignorePatterns: extraIgnorePatterns, ...options }?: OxlintConfigOptions) => OxlintConfig;
13
+ declare const _default: OxlintConfig;
14
+ export default _default;
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAE1C,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IAEvD,KAAK,CAAC,EAAE,OAAO,CAAA;IAEf,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB,KAAK,CAAC,EAAE,OAAO,CAAA;IAEf,GAAG,CAAC,EAAE,OAAO,CAAA;IAEb,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAMD,eAAO,MAAM,YAAY,oNAgBtB,mBAAmB,KAAQ,YA8H7B,CAAA"}
package/lib/index.js ADDED
@@ -0,0 +1,92 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { isPkgAvailable } from '@pkgr/utils';
13
+ export const defineConfig = (_a = {}) => {
14
+ var { categories = { correctness: 'error', perf: 'warn' }, jest = isPkgAvailable('jest'), typeAware = isPkgAvailable('oxlint-tsgolint/package.json'), jsdoc = true, node = true, promise = true, react = isPkgAvailable('react'), vitest = isPkgAvailable('vitest'), vue = isPkgAvailable('vue'), plugins: extraPlugins = [], env: extraEnv, rules: extraRules, overrides: extraOverrides, ignorePatterns: extraIgnorePatterns } = _a, options = __rest(_a, ["categories", "jest", "typeAware", "jsdoc", "node", "promise", "react", "vitest", "vue", "plugins", "env", "rules", "overrides", "ignorePatterns"]);
15
+ const plugins = ['oxc', 'unicorn', 'typescript', 'import'];
16
+ if (promise) {
17
+ plugins.push('promise');
18
+ }
19
+ if (jsdoc) {
20
+ plugins.push('jsdoc');
21
+ }
22
+ if (node) {
23
+ plugins.push('node');
24
+ }
25
+ if (react) {
26
+ plugins.push('react', 'jsx-a11y', 'react-perf');
27
+ }
28
+ if (vue) {
29
+ plugins.push('vue');
30
+ }
31
+ if (vitest) {
32
+ plugins.push('vitest');
33
+ }
34
+ if (jest) {
35
+ plugins.push('jest');
36
+ }
37
+ plugins.push(...extraPlugins);
38
+ return Object.assign(Object.assign({}, options), { options: Object.assign(Object.assign({}, options.options), (typeAware && { typeAware: true })), plugins,
39
+ categories, env: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ builtin: true }, (node && { node: true })), (react && { browser: true })), (vue && { vue: true })), (vitest && { vitest: true })), (jest && { jest: true })), extraEnv), rules: Object.assign(Object.assign(Object.assign({}, (typeAware && {
40
+ 'typescript/await-thenable': 'error',
41
+ 'typescript/no-deprecated': 'error',
42
+ 'typescript/no-floating-promises': 'error',
43
+ 'typescript/no-misused-promises': 'error',
44
+ 'typescript/no-unnecessary-condition': 'error',
45
+ 'typescript/no-unnecessary-qualifier': 'error',
46
+ 'typescript/no-unnecessary-type-arguments': 'error',
47
+ 'typescript/prefer-optional-chain': 'error',
48
+ 'typescript/prefer-readonly': 'error',
49
+ 'typescript/prefer-reduce-type-parameter': 'error',
50
+ 'typescript/require-array-sort-compare': ['error', { ignoreStringArrays: true }],
51
+ 'typescript/restrict-plus-operands': 'error',
52
+ })), { 'arrow-body-style': 'error', curly: ['error', 'all'], eqeqeq: ['error', 'always'], 'no-case-declarations': 'error', 'no-else-return': ['error', { allowElseIf: false }], 'no-empty': ['error', { allowEmptyCatch: true }], 'no-empty-function': 'error', 'no-fallthrough': 'error', 'no-magic-numbers': [
53
+ 'error',
54
+ {
55
+ enforceConst: true,
56
+ ignore: [
57
+ -1, 0, 1, 2, 3, 5, 7, 10, 12, 15, 20, 24, 30, 31, 50, 60, 100, 365, 366, 500, 768, 1000,
58
+ 1024, 3600, 4200, 8080,
59
+ ],
60
+ ignoreArrayIndexes: true,
61
+ ignoreEnums: true,
62
+ ignoreNumericLiteralTypes: true,
63
+ ignoreReadonlyClassProperties: true,
64
+ ignoreTypeIndexes: true,
65
+ },
66
+ ], 'no-negated-condition': 'error', 'no-prototype-builtins': 'error', 'no-redeclare': 'error', 'no-regex-spaces': 'error', 'no-var': 'error', 'object-shorthand': 'error', 'prefer-const': ['error', { destructuring: 'all' }], 'prefer-object-spread': 'error', 'prefer-regex-literals': 'error', 'preserve-caught-error': 'error', 'import/newline-after-import': 'error', 'import/no-duplicates': 'error', 'typescript/consistent-type-definitions': ['error', 'interface'], 'typescript/no-unused-vars': ['error', { argsIgnorePattern: '^_', varsIgnorePattern: '^_' }], 'unicorn/prefer-node-protocol': 'error', 'unicorn/prefer-number-properties': 'error', 'unicorn/prefer-string-starts-ends-with': 'error' }), extraRules), overrides: [
67
+ {
68
+ files: ['**/*.d.{ts,mts,cts}', '**/*.d.*.{ts,mts,cts}'],
69
+ rules: {
70
+ 'typescript/no-explicit-any': 'off',
71
+ 'typescript/no-unused-vars': 'off',
72
+ 'import/no-duplicates': 'off',
73
+ },
74
+ },
75
+ ...(extraOverrides !== null && extraOverrides !== void 0 ? extraOverrides : []),
76
+ ], ignorePatterns: [
77
+ '**/.dsh',
78
+ '**/.history',
79
+ '**/.type-coverage',
80
+ '**/.vercel',
81
+ '**/.yarn',
82
+ '**/coverage',
83
+ '**/dist',
84
+ '**/lib',
85
+ '**/CHANGELOG.md',
86
+ '**/*.log',
87
+ '**/*.patch',
88
+ ...(extraIgnorePatterns !== null && extraIgnorePatterns !== void 0 ? extraIgnorePatterns : []),
89
+ ] });
90
+ };
91
+ export default defineConfig();
92
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,41 @@
1
1
  {
2
2
  "name": "@1stg/oxlint-config",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "description": "Personal but Shareable Oxlint Configuration for all 1stG.me projects",
6
+ "repository": "git+https://github.com/1stG/configs.git",
7
+ "homepage": "https://github.com/1stG/configs/tree/master/packages/oxlint-config",
8
+ "author": "JounQin <admin@1stg.me> (https://www.1stG.me)",
9
+ "funding": "https://opencollective.com/configs",
10
+ "license": "MIT",
11
+ "engines": {
12
+ "node": "^22.18.0 || >=24.11.0"
13
+ },
14
+ "main": "./lib/index.js",
15
+ "types": "./lib/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./lib/index.d.ts",
19
+ "default": "./lib/index.js"
20
+ },
21
+ "./package.json": "./package.json"
22
+ },
23
+ "files": [
24
+ "lib"
25
+ ],
26
+ "peerDependencies": {
27
+ "oxlint": ">=1.80.0",
28
+ "oxlint-tsgolint": "^7.0.2005"
29
+ },
30
+ "peerDependenciesMeta": {
31
+ "oxlint-tsgolint": {
32
+ "optional": true
33
+ }
34
+ },
35
+ "dependencies": {
36
+ "@pkgr/utils": "^4.1.0"
37
+ },
38
+ "publishConfig": {
39
+ "access": "public"
40
+ }
6
41
  }