@4mbl/lint 1.0.0-beta.2 → 1.0.0-beta.3

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 CHANGED
@@ -1,5 +1,16 @@
1
1
  # @4mbl/lint
2
2
 
3
+ ## 1.0.0-beta.3
4
+
5
+ ### Minor Changes
6
+
7
+ - dd91a0d: Allow direct preset usage with default exports
8
+ - dd91a0d: Add `--preset` argument to use any preset directly from the CLI
9
+
10
+ ### Patch Changes
11
+
12
+ - 51c5a6a: Resolve uiPath from cwd in next preset
13
+
3
14
  ## 1.0.0-beta.2
4
15
 
5
16
  ### Minor Changes
@@ -9,13 +20,13 @@
9
20
 
10
21
  ### Patch Changes
11
22
 
12
- - 2b77e08: fix(lint): transpile configs to support usage from node_modules
23
+ - 2b77e08: Transpile configs to support usage from node_modules
13
24
 
14
25
  ## 1.0.0-beta.1
15
26
 
16
27
  ### Patch Changes
17
28
 
18
- - 2c338b1: fix(lint): re-export `OxlintConfig` to make config portable
29
+ - 2c338b1: Re-export `OxlintConfig` to make config portable
19
30
 
20
31
  ## 1.0.0-beta.0
21
32
 
package/README.md CHANGED
@@ -2,18 +2,25 @@
2
2
 
3
3
  > Linting configuration for various environments.
4
4
 
5
+ - [Installation](#installation)
5
6
  - [Usage](#usage)
6
- - [Running `lint` CLI wrapper](#running-lint-cli-wrapper)
7
- - [Running `oxlint` directly](#running-oxlint-directly)
8
- - [Available templates](#available-templates)
7
+ - [Using `lint` CLI](#using-lint-cli)
8
+ - [Setting up the `lint` CLI](#setting-up-the-lint-cli)
9
+ - [Choosing presets](#choosing-presets)
10
+ - [Beyond presets](#beyond-presets)
11
+ - [CLI default arguments](#cli-default-arguments)
12
+ - [Using `oxlint` directly](#using-oxlint-directly)
13
+ - [Oxlint CLI](#oxlint-cli)
14
+ - [Configuring oxlint](#configuring-oxlint)
15
+ - [Available presets](#available-presets)
9
16
  - [Versioning](#versioning)
10
17
 
11
18
  ---
12
19
 
13
20
  > [!NOTE]
14
- > This package currently uses [oxlint](https://www.npmjs.com/package/oxlint) as the underlying linting tool. That may change in a future major release.
21
+ > This package currently uses [oxlint](https://www.npmjs.com/package/oxlint) as the underlying linting tool. This may change in a future major release.
15
22
 
16
- ## Usage
23
+ ## Installation
17
24
 
18
25
  Install the [`@4mbl/lint`](https://www.npmjs.com/package/@4mbl/lint) package.
19
26
 
@@ -21,32 +28,64 @@ Install the [`@4mbl/lint`](https://www.npmjs.com/package/@4mbl/lint) package.
21
28
  npm install -D @4mbl/lint
22
29
  ```
23
30
 
24
- Create a `oxlint.config.ts` file for your package. If you are using a monorepo, create a `oxlint.config.ts` for each package in the monorepo.
31
+ ## Usage
25
32
 
26
- ```js
27
- import defineConfig from '@4mbl/lint/next'; // <-- change `next` to the desired template
33
+ This package supports two ways of running the linting tool.
28
34
 
29
- export default defineConfig();
30
- ```
35
+ ### Using `lint` CLI
31
36
 
32
- ### Running `lint` CLI wrapper
37
+ Using the provided `lint` CLI is the recommended approach, as it abstracts away the underlying linting tool and allows it to be changed in the future with minimal impact on consumers.
33
38
 
34
- This is the recommended way as it abstracts away the underlying linting package and allows us to change it in the future. While we try to keep the CLI wrapper interface stable between possible tooling changes, it is inevitable to have breaking changes if the underlying tooling changes.
39
+ While we aim to keep the CLI stable across tooling changes, some breaking changes may be unavoidable if the underlying tool changes.
35
40
 
36
- Set a script that uses the linting CLI wrapper in your `package.json`. While it may be tempting to just call `lint` directly in CI or locally, it is recommended to use a script as it allows additional arguments to be passed to the CLI wrapper.
41
+ #### Setting up the `lint` CLI
42
+
43
+ To use the provided CLI, simply call `lint` in your scripts.
37
44
 
38
45
  ```shell
39
46
  npm pkg set scripts.lint="lint"
40
47
  ```
41
48
 
42
- The CLI wrapper uses the `src` directory by default and the following arguments:
49
+ #### Choosing presets
50
+
51
+ The CLI uses the environment-agnostic `base` preset by default. To use a different preset, pass the `--preset` argument with the preset name.
52
+
53
+ ```shell
54
+ npm pkg set scripts.lint="lint --preset node"
55
+ ```
56
+
57
+ _See the [available presets](#available-presets) section for a list of available presets._
58
+
59
+ #### Beyond presets
60
+
61
+ In some cases, the provided presets may not be sufficient for your use case. You can create an `oxlint.config.ts` file and pass it to the oxlint CLI directly.
62
+
63
+ ```shell
64
+ npm pkg set scripts.lint="lint -- --config oxlint.config.ts"
65
+ ```
66
+
67
+ You can use the provided presets as a base for your custom configuration, as shown in the [Configuring oxlint](#configuring-oxlint) section.
68
+
69
+ #### CLI default arguments
70
+
71
+ By default, the CLI targets the `src` directory and uses the following oxlint arguments:
43
72
 
44
73
  - `--max-warnings=0`
45
74
  - `--report-unused-disable-directives`
46
75
 
47
- These arguments can be overridden by passing them explicitly to the CLI wrapper.
76
+ You can override these arguments or pass additional arguments to the underlying oxlint tool.
77
+
78
+ ```shell
79
+ npm pkg set scripts.lint="lint -- --max-warnings=10 --fix"
80
+ ```
81
+
82
+ ### Using `oxlint` directly
83
+
84
+ For full control over the linting setup, you can use oxlint directly.
85
+
86
+ #### Oxlint CLI
48
87
 
49
- ### Running `oxlint` directly
88
+ Set the `lint` script in your `package.json` to use the `oxlint` binary.
50
89
 
51
90
  ```shell
52
91
  npm pkg set scripts.lint="oxlint src"
@@ -54,25 +93,40 @@ npm pkg set scripts.lint="oxlint src"
54
93
 
55
94
  You may need to explicitly allow the underlying linting packages to be used by your scripts.
56
95
 
57
- For example, when using pnpm, you need to set `publicHoistPattern` in your `pnpm-workspace.yaml`.
96
+ For example, when using pnpm, set `publicHoistPattern` in your `pnpm-workspace.yaml`.
97
+
98
+ #### Configuring oxlint
99
+
100
+ Create an `oxlint.config.ts` file in your package with the desired preset.
101
+
102
+ ```js
103
+ import nodeConfig from '@4mbl/lint/node';
104
+
105
+ export default nodeConfig();
106
+ ```
107
+
108
+ Some presets may accept additional options. For example, the `next` preset accepts a `uiPath` option.
109
+
110
+ _See the [available presets](#available-presets) section for a list of available presets._
58
111
 
59
112
  ```yaml
60
113
  publicHoistPattern:
61
114
  - oxlint
62
115
  ```
63
116
 
64
- ## Available templates
117
+ ## Available presets
65
118
 
66
- These are the currently available config templates.
119
+ The following presets are currently available:
67
120
 
68
- - **Next** - Extending the Next.js linting config.
69
- - **Node** - Linting configuration for Node.js.
70
- - **React** - Extending the Vite-React linting config.
121
+ - **Base** – Environment-agnostic linting rules.
122
+ - **Next** Additional linting rules for Next.js.
123
+ - **Node** Additional linting rules for Node.js.
124
+ - **React** – Additional linting rules for React.
71
125
 
72
126
  ## Versioning
73
127
 
74
- The package follows the following versioning scheme: `X.Y.Z`.
128
+ The package follows the versioning scheme `X.Y.Z`:
75
129
 
76
- - `X` - Reserved for linting provider changes as those might cause wider backwards compatibility issues.
77
- - `Y` - New linting rules. New rules are first added as warnings, and if error is preferred, the rule is promoted to produce errors in the next minor release.
78
- - `Z` - Minor fixes that make the previous release unusable.
130
+ - `X` Reserved for linting provider changes, as these may introduce broader compatibility issues.
131
+ - `Y` New linting rules. Rules are initially introduced as warnings and may be promoted to errors in a subsequent minor release.
132
+ - `Z` Fixes for issues that made the previous release unusable.
package/bin/cli.js CHANGED
@@ -1,21 +1,40 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { spawnSync } from 'node:child_process';
4
+ import path from 'node:path';
5
+ import { fileURLToPath } from 'node:url';
4
6
 
5
- const args = process.argv.slice(2);
7
+ const __filename = fileURLToPath(import.meta.url);
8
+ const __dirname = path.dirname(__filename);
6
9
 
7
- const hasPath = args.some((a) => !a.startsWith('-'));
8
- const hasMaxWarn = args.some((a) => a.startsWith('--max-warnings'));
9
- const hasReportUnused = args.some((a) =>
10
+ const rawArgs = process.argv.slice(2);
11
+
12
+ const separatorIndex = rawArgs.indexOf('--');
13
+
14
+ const wrapperArgs =
15
+ separatorIndex === -1 ? rawArgs : rawArgs.slice(0, separatorIndex);
16
+ const toolArgs = separatorIndex === -1 ? [] : rawArgs.slice(separatorIndex + 1);
17
+
18
+ const presetArgIndex = wrapperArgs.findIndex((a) => a === '--preset');
19
+ const presetName =
20
+ presetArgIndex !== -1 ? wrapperArgs[presetArgIndex + 1] : 'base';
21
+
22
+ const configPath = path.resolve(__dirname, `../dist/${presetName}.js`);
23
+
24
+ const hasPath = toolArgs.some((a) => !a.startsWith('-'));
25
+ const hasMaxWarn = toolArgs.some((a) => a.startsWith('--max-warnings'));
26
+ const hasReportUnused = toolArgs.some((a) =>
10
27
  a.startsWith('--report-unused-disable-directives'),
11
28
  );
12
29
 
13
30
  const finalArgs = [
14
- ...(hasPath ? [] : ['src']),
15
- ...(hasMaxWarn ? [] : ['--max-warnings=0']),
16
- ...(hasReportUnused ? [] : ['--report-unused-disable-directives']),
17
- ...args,
18
- ];
31
+ '--config',
32
+ configPath,
33
+ hasPath ? undefined : 'src',
34
+ hasMaxWarn ? undefined : '--max-warnings=0',
35
+ hasReportUnused ? undefined : '--report-unused-disable-directives',
36
+ ...toolArgs,
37
+ ].filter((a) => a !== undefined);
19
38
 
20
39
  const result = spawnSync('oxlint', finalArgs, {
21
40
  stdio: 'inherit',
package/dist/base.d.ts CHANGED
@@ -120,4 +120,124 @@ declare function baseConfig(_options?: Partial<BaseOptions>): {
120
120
  }[];
121
121
  };
122
122
  export { type OxlintConfig, defineConfig, baseConfig };
123
+ declare const _default: {
124
+ plugins: ("unicorn" | "typescript")[];
125
+ jsPlugins: never[];
126
+ categories: {
127
+ correctness: "off";
128
+ };
129
+ env: {
130
+ builtin: true;
131
+ };
132
+ options: {
133
+ typeAware: true;
134
+ };
135
+ rules: {
136
+ 'constructor-super': "error";
137
+ 'for-direction': "error";
138
+ 'getter-return': "error";
139
+ 'no-async-promise-executor': "error";
140
+ 'no-case-declarations': "error";
141
+ 'no-class-assign': "error";
142
+ 'no-compare-neg-zero': "error";
143
+ 'no-cond-assign': "error";
144
+ 'no-const-assign': "error";
145
+ 'no-constant-binary-expression': "error";
146
+ 'no-constant-condition': "error";
147
+ 'no-control-regex': "error";
148
+ 'no-debugger': "error";
149
+ 'no-delete-var': "error";
150
+ 'no-dupe-class-members': "error";
151
+ 'no-dupe-else-if': "error";
152
+ 'no-dupe-keys': "error";
153
+ 'no-duplicate-case': "error";
154
+ 'no-empty': "error";
155
+ 'no-empty-character-class': "error";
156
+ 'no-empty-pattern': "error";
157
+ 'no-empty-static-block': "error";
158
+ 'no-ex-assign': "error";
159
+ 'no-extra-boolean-cast': "error";
160
+ 'no-fallthrough': "error";
161
+ 'no-func-assign': "error";
162
+ 'no-global-assign': "error";
163
+ 'no-import-assign': "error";
164
+ 'no-invalid-regexp': "error";
165
+ 'no-irregular-whitespace': "error";
166
+ 'no-loss-of-precision': "error";
167
+ 'no-misleading-character-class': "error";
168
+ 'no-new-native-nonconstructor': "error";
169
+ 'no-nonoctal-decimal-escape': "error";
170
+ 'no-obj-calls': "error";
171
+ 'no-prototype-builtins': "error";
172
+ 'no-redeclare': "error";
173
+ 'no-regex-spaces': "error";
174
+ 'no-self-assign': "error";
175
+ 'no-setter-return': "error";
176
+ 'no-shadow-restricted-names': "error";
177
+ 'no-sparse-arrays': "error";
178
+ 'no-this-before-super': "error";
179
+ 'no-undef': "error";
180
+ 'no-unexpected-multiline': "error";
181
+ 'no-unreachable': "error";
182
+ 'no-unsafe-finally': "error";
183
+ 'no-unsafe-negation': "error";
184
+ 'no-unsafe-optional-chaining': "error";
185
+ 'no-unused-labels': "error";
186
+ 'no-unused-private-class-members': "error";
187
+ 'no-unused-vars': "warn";
188
+ 'no-useless-backreference': "error";
189
+ 'no-useless-catch': "error";
190
+ 'no-useless-escape': "error";
191
+ 'no-with': "error";
192
+ 'require-yield': "error";
193
+ 'use-isnan': "error";
194
+ 'valid-typeof': "error";
195
+ '@typescript-eslint/ban-ts-comment': "error";
196
+ 'no-array-constructor': "error";
197
+ '@typescript-eslint/no-duplicate-enum-values': "error";
198
+ '@typescript-eslint/no-empty-object-type': "error";
199
+ '@typescript-eslint/no-explicit-any': "error";
200
+ '@typescript-eslint/no-extra-non-null-assertion': "error";
201
+ '@typescript-eslint/no-misused-new': "error";
202
+ '@typescript-eslint/no-namespace': "error";
203
+ '@typescript-eslint/no-non-null-asserted-optional-chain': "error";
204
+ '@typescript-eslint/no-require-imports': "error";
205
+ '@typescript-eslint/no-this-alias': "error";
206
+ '@typescript-eslint/no-unnecessary-type-constraint': "error";
207
+ '@typescript-eslint/no-unsafe-declaration-merging': "error";
208
+ '@typescript-eslint/no-unsafe-function-type': "error";
209
+ 'no-unused-expressions': "warn";
210
+ '@typescript-eslint/no-wrapper-object-types': "error";
211
+ '@typescript-eslint/prefer-as-const': "error";
212
+ '@typescript-eslint/prefer-namespace-keyword': "error";
213
+ '@typescript-eslint/triple-slash-reference': "error";
214
+ };
215
+ overrides: {
216
+ files: string[];
217
+ rules: {
218
+ 'constructor-super': "off";
219
+ 'getter-return': "off";
220
+ 'no-class-assign': "off";
221
+ 'no-const-assign': "off";
222
+ 'no-dupe-class-members': "off";
223
+ 'no-dupe-keys': "off";
224
+ 'no-func-assign': "off";
225
+ 'no-import-assign': "off";
226
+ 'no-new-native-nonconstructor': "off";
227
+ 'no-obj-calls': "off";
228
+ 'no-redeclare': "off";
229
+ 'no-setter-return': "off";
230
+ 'no-this-before-super': "off";
231
+ 'no-undef': "off";
232
+ 'no-unreachable': "off";
233
+ 'no-unsafe-negation': "off";
234
+ 'no-var': "error";
235
+ 'no-with': "off";
236
+ 'prefer-const': "error";
237
+ 'prefer-rest-params': "error";
238
+ 'prefer-spread': "error";
239
+ };
240
+ }[];
241
+ };
242
+ export default _default;
123
243
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEzD,KAAK,WAAW,GAAG,EAAE,CAAC;AAItB,iBAAS,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4HlD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEzD,KAAK,WAAW,GAAG,EAAE,CAAC;AAItB,iBAAS,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4HlD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEvD,wBAA4B"}
package/dist/base.js CHANGED
@@ -125,4 +125,5 @@ function baseConfig(_options) {
125
125
  });
126
126
  }
127
127
  export { defineConfig, baseConfig };
128
+ export default baseConfig();
128
129
  //# sourceMappingURL=base.js.map
package/dist/base.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"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"}
package/dist/next.d.ts CHANGED
@@ -13,4 +13,6 @@ type NextOptions = ReactOptions & {
13
13
  };
14
14
  declare function nextConfig(options?: Partial<NextOptions>): OxlintConfig;
15
15
  export { type OxlintConfig, defineConfig, nextConfig };
16
+ declare const _default: OxlintConfig;
17
+ export default _default;
16
18
  //# sourceMappingURL=next.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"next.d.ts","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,YAAY,CAAC;AAG5D,KAAK,WAAW,GAAG,YAAY,GAAG;IAChC;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAIF,iBAAS,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,gBA4DjD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"next.d.ts","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,YAAY,CAAC;AAG5D,KAAK,WAAW,GAAG,YAAY,GAAG;IAChC;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAIF,iBAAS,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,gBA4DjD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;;AAEvD,wBAA4B"}
package/dist/next.js CHANGED
@@ -1,3 +1,5 @@
1
+ import path from 'node:path';
2
+ import process from 'node:process';
1
3
  import { defineConfig } from 'oxlint';
2
4
  import { reactConfig } from './react.js';
3
5
  import reactRefresh from 'eslint-plugin-react-refresh';
@@ -48,7 +50,7 @@ function nextConfig(options) {
48
50
  ? { files: [], rules: {} }
49
51
  : {
50
52
  files: [
51
- `${opts.uiPath}/**/*.{js,jsx,mjs,ts,tsx,mts,cts}`.replaceAll('//', '/'),
53
+ `${path.resolve(process.cwd(), opts.uiPath)}/**/*.{js,jsx,mjs,ts,tsx,mts,cts}`.replaceAll('//', '/'),
52
54
  ],
53
55
  rules: {
54
56
  'react-refresh-js/only-export-components': 'off',
@@ -58,4 +60,5 @@ function nextConfig(options) {
58
60
  });
59
61
  }
60
62
  export { defineConfig, nextConfig };
63
+ export default nextConfig();
61
64
  //# sourceMappingURL=next.js.map
package/dist/next.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"next.js","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAqB,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,YAAY,MAAM,6BAA6B,CAAC;AAcvD,MAAM,eAAe,GAAgB,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;AAEtE,SAAS,UAAU,CAAC,OAA8B;IAChD,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAEhD,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,KAAK,EAAE;YACL,gCAAgC,EAAE,MAAM;YACxC,mCAAmC,EAAE,MAAM;YAC3C,+BAA+B,EAAE,MAAM;YACvC,sCAAsC,EAAE,MAAM;YAC9C,0DAA0D,EAAE,MAAM;YAClE,wBAAwB,EAAE,MAAM;YAChC,4BAA4B,EAAE,MAAM;YACpC,mCAAmC,EAAE,OAAO;YAC5C,gCAAgC,EAAE,MAAM;YACxC,sCAAsC,EAAE,MAAM;YAC9C,4BAA4B,EAAE,OAAO;YACrC,sCAAsC,EAAE,MAAM;YAC9C,qBAAqB,EAAE,MAAM;YAC7B,mCAAmC,EAAE,MAAM;YAC3C,6BAA6B,EAAE,OAAO;YACtC,sCAAsC,EAAE,OAAO;YAC/C,uCAAuC,EAAE,OAAO;YAChD,8BAA8B,EAAE,OAAO;YACvC,uCAAuC,EAAE,OAAO;YAChD,wCAAwC,EAAE,OAAO;SAClD;QACD,cAAc,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC;QACnE,SAAS,EAAE;YACT,gEAAgE;YAChE,4FAA4F;YAC5F;gBACE,KAAK,EAAE,CAAC,kCAAkC,CAAC;gBAC3C,KAAK,EAAE;oBACL,yCAAyC,EAAE;wBACzC,OAAO;wBACP;4BACE,gBAAgB,EAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,KAAa,CACxD,sCAAsC,CACvC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;yBACzB;qBACF;iBACF;aACF;YACD,IAAI,CAAC,MAAM,KAAK,IAAI;gBAClB,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC1B,CAAC,CAAC;oBACE,KAAK,EAAE;wBACL,GAAG,IAAI,CAAC,MAAM,mCAAmC,CAAC,UAAU,CAC1D,IAAI,EACJ,GAAG,CACJ;qBACF;oBACD,KAAK,EAAE;wBACL,yCAAyC,EAAE,KAAK;qBACjD;iBACF;SACN;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAqB,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"next.js","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,YAAY,EAAqB,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAqB,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,YAAY,MAAM,6BAA6B,CAAC;AAcvD,MAAM,eAAe,GAAgB,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;AAEtE,SAAS,UAAU,CAAC,OAA8B;IAChD,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAEhD,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,KAAK,EAAE;YACL,gCAAgC,EAAE,MAAM;YACxC,mCAAmC,EAAE,MAAM;YAC3C,+BAA+B,EAAE,MAAM;YACvC,sCAAsC,EAAE,MAAM;YAC9C,0DAA0D,EAAE,MAAM;YAClE,wBAAwB,EAAE,MAAM;YAChC,4BAA4B,EAAE,MAAM;YACpC,mCAAmC,EAAE,OAAO;YAC5C,gCAAgC,EAAE,MAAM;YACxC,sCAAsC,EAAE,MAAM;YAC9C,4BAA4B,EAAE,OAAO;YACrC,sCAAsC,EAAE,MAAM;YAC9C,qBAAqB,EAAE,MAAM;YAC7B,mCAAmC,EAAE,MAAM;YAC3C,6BAA6B,EAAE,OAAO;YACtC,sCAAsC,EAAE,OAAO;YAC/C,uCAAuC,EAAE,OAAO;YAChD,8BAA8B,EAAE,OAAO;YACvC,uCAAuC,EAAE,OAAO;YAChD,wCAAwC,EAAE,OAAO;SAClD;QACD,cAAc,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC;QACnE,SAAS,EAAE;YACT,gEAAgE;YAChE,4FAA4F;YAC5F;gBACE,KAAK,EAAE,CAAC,kCAAkC,CAAC;gBAC3C,KAAK,EAAE;oBACL,yCAAyC,EAAE;wBACzC,OAAO;wBACP;4BACE,gBAAgB,EAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,KAAa,CACxD,sCAAsC,CACvC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;yBACzB;qBACF;iBACF;aACF;YACD,IAAI,CAAC,MAAM,KAAK,IAAI;gBAClB,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC1B,CAAC,CAAC;oBACE,KAAK,EAAE;wBACL,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,mCAAmC,CAAC,UAAU,CACvF,IAAI,EACJ,GAAG,CACJ;qBACF;oBACD,KAAK,EAAE;wBACL,yCAAyC,EAAE,KAAK;qBACjD;iBACF;SACN;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAqB,YAAY,EAAE,UAAU,EAAE,CAAC;AAEvD,eAAe,UAAU,EAAE,CAAC"}
package/dist/node.d.ts CHANGED
@@ -125,4 +125,129 @@ declare function nodeConfig(_options?: Partial<NodeOptions>): {
125
125
  };
126
126
  };
127
127
  export { type OxlintConfig, defineConfig, nodeConfig };
128
+ declare const _default: {
129
+ extends: {
130
+ plugins: ("unicorn" | "typescript")[];
131
+ jsPlugins: never[];
132
+ categories: {
133
+ correctness: "off";
134
+ };
135
+ env: {
136
+ builtin: true;
137
+ };
138
+ options: {
139
+ typeAware: true;
140
+ };
141
+ rules: {
142
+ 'constructor-super': "error";
143
+ 'for-direction': "error";
144
+ 'getter-return': "error";
145
+ 'no-async-promise-executor': "error";
146
+ 'no-case-declarations': "error";
147
+ 'no-class-assign': "error";
148
+ 'no-compare-neg-zero': "error";
149
+ 'no-cond-assign': "error";
150
+ 'no-const-assign': "error";
151
+ 'no-constant-binary-expression': "error";
152
+ 'no-constant-condition': "error";
153
+ 'no-control-regex': "error";
154
+ 'no-debugger': "error";
155
+ 'no-delete-var': "error";
156
+ 'no-dupe-class-members': "error";
157
+ 'no-dupe-else-if': "error";
158
+ 'no-dupe-keys': "error";
159
+ 'no-duplicate-case': "error";
160
+ 'no-empty': "error";
161
+ 'no-empty-character-class': "error";
162
+ 'no-empty-pattern': "error";
163
+ 'no-empty-static-block': "error";
164
+ 'no-ex-assign': "error";
165
+ 'no-extra-boolean-cast': "error";
166
+ 'no-fallthrough': "error";
167
+ 'no-func-assign': "error";
168
+ 'no-global-assign': "error";
169
+ 'no-import-assign': "error";
170
+ 'no-invalid-regexp': "error";
171
+ 'no-irregular-whitespace': "error";
172
+ 'no-loss-of-precision': "error";
173
+ 'no-misleading-character-class': "error";
174
+ 'no-new-native-nonconstructor': "error";
175
+ 'no-nonoctal-decimal-escape': "error";
176
+ 'no-obj-calls': "error";
177
+ 'no-prototype-builtins': "error";
178
+ 'no-redeclare': "error";
179
+ 'no-regex-spaces': "error";
180
+ 'no-self-assign': "error";
181
+ 'no-setter-return': "error";
182
+ 'no-shadow-restricted-names': "error";
183
+ 'no-sparse-arrays': "error";
184
+ 'no-this-before-super': "error";
185
+ 'no-undef': "error";
186
+ 'no-unexpected-multiline': "error";
187
+ 'no-unreachable': "error";
188
+ 'no-unsafe-finally': "error";
189
+ 'no-unsafe-negation': "error";
190
+ 'no-unsafe-optional-chaining': "error";
191
+ 'no-unused-labels': "error";
192
+ 'no-unused-private-class-members': "error";
193
+ 'no-unused-vars': "warn";
194
+ 'no-useless-backreference': "error";
195
+ 'no-useless-catch': "error";
196
+ 'no-useless-escape': "error";
197
+ 'no-with': "error";
198
+ 'require-yield': "error";
199
+ 'use-isnan': "error";
200
+ 'valid-typeof': "error";
201
+ '@typescript-eslint/ban-ts-comment': "error";
202
+ 'no-array-constructor': "error";
203
+ '@typescript-eslint/no-duplicate-enum-values': "error";
204
+ '@typescript-eslint/no-empty-object-type': "error";
205
+ '@typescript-eslint/no-explicit-any': "error";
206
+ '@typescript-eslint/no-extra-non-null-assertion': "error";
207
+ '@typescript-eslint/no-misused-new': "error";
208
+ '@typescript-eslint/no-namespace': "error";
209
+ '@typescript-eslint/no-non-null-asserted-optional-chain': "error";
210
+ '@typescript-eslint/no-require-imports': "error";
211
+ '@typescript-eslint/no-this-alias': "error";
212
+ '@typescript-eslint/no-unnecessary-type-constraint': "error";
213
+ '@typescript-eslint/no-unsafe-declaration-merging': "error";
214
+ '@typescript-eslint/no-unsafe-function-type': "error";
215
+ 'no-unused-expressions': "warn";
216
+ '@typescript-eslint/no-wrapper-object-types': "error";
217
+ '@typescript-eslint/prefer-as-const': "error";
218
+ '@typescript-eslint/prefer-namespace-keyword': "error";
219
+ '@typescript-eslint/triple-slash-reference': "error";
220
+ };
221
+ overrides: {
222
+ files: string[];
223
+ rules: {
224
+ 'constructor-super': "off";
225
+ 'getter-return': "off";
226
+ 'no-class-assign': "off";
227
+ 'no-const-assign': "off";
228
+ 'no-dupe-class-members': "off";
229
+ 'no-dupe-keys': "off";
230
+ 'no-func-assign': "off";
231
+ 'no-import-assign': "off";
232
+ 'no-new-native-nonconstructor': "off";
233
+ 'no-obj-calls': "off";
234
+ 'no-redeclare': "off";
235
+ 'no-setter-return': "off";
236
+ 'no-this-before-super': "off";
237
+ 'no-undef': "off";
238
+ 'no-unreachable': "off";
239
+ 'no-unsafe-negation': "off";
240
+ 'no-var': "error";
241
+ 'no-with': "off";
242
+ 'prefer-const': "error";
243
+ 'prefer-rest-params': "error";
244
+ 'prefer-spread': "error";
245
+ };
246
+ }[];
247
+ }[];
248
+ env: {
249
+ node: true;
250
+ };
251
+ };
252
+ export default _default;
128
253
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGzD,KAAK,WAAW,GAAG,EAAE,CAAC;AAItB,iBAAS,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASlD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGzD,KAAK,WAAW,GAAG,EAAE,CAAC;AAItB,iBAAS,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASlD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEvD,wBAA4B"}
package/dist/node.js CHANGED
@@ -11,4 +11,5 @@ function nodeConfig(_options) {
11
11
  });
12
12
  }
13
13
  export { defineConfig, nodeConfig };
14
+ export default nodeConfig();
14
15
  //# sourceMappingURL=node.js.map
package/dist/node.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC,2CAA2C;AAE3C,SAAS,UAAU,CAAC,QAA+B;IACjD,mDAAmD;IAEnD,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,CAAC,UAAU,EAAE,CAAC;QACvB,GAAG,EAAE;YACH,IAAI,EAAE,IAAI;SACX;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAqB,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC,2CAA2C;AAE3C,SAAS,UAAU,CAAC,QAA+B;IACjD,mDAAmD;IAEnD,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,CAAC,UAAU,EAAE,CAAC;QACvB,GAAG,EAAE;YACH,IAAI,EAAE,IAAI;SACX;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAqB,YAAY,EAAE,UAAU,EAAE,CAAC;AAEvD,eAAe,UAAU,EAAE,CAAC"}
package/dist/react.d.ts CHANGED
@@ -181,4 +181,185 @@ declare function reactConfig(_options?: Partial<ReactOptions>): {
181
181
  }[];
182
182
  };
183
183
  export { type OxlintConfig, defineConfig, reactConfig };
184
+ declare const _default: {
185
+ extends: {
186
+ plugins: ("unicorn" | "typescript")[];
187
+ jsPlugins: never[];
188
+ categories: {
189
+ correctness: "off";
190
+ };
191
+ env: {
192
+ builtin: true;
193
+ };
194
+ options: {
195
+ typeAware: true;
196
+ };
197
+ rules: {
198
+ 'constructor-super': "error";
199
+ 'for-direction': "error";
200
+ 'getter-return': "error";
201
+ 'no-async-promise-executor': "error";
202
+ 'no-case-declarations': "error";
203
+ 'no-class-assign': "error";
204
+ 'no-compare-neg-zero': "error";
205
+ 'no-cond-assign': "error";
206
+ 'no-const-assign': "error";
207
+ 'no-constant-binary-expression': "error";
208
+ 'no-constant-condition': "error";
209
+ 'no-control-regex': "error";
210
+ 'no-debugger': "error";
211
+ 'no-delete-var': "error";
212
+ 'no-dupe-class-members': "error";
213
+ 'no-dupe-else-if': "error";
214
+ 'no-dupe-keys': "error";
215
+ 'no-duplicate-case': "error";
216
+ 'no-empty': "error";
217
+ 'no-empty-character-class': "error";
218
+ 'no-empty-pattern': "error";
219
+ 'no-empty-static-block': "error";
220
+ 'no-ex-assign': "error";
221
+ 'no-extra-boolean-cast': "error";
222
+ 'no-fallthrough': "error";
223
+ 'no-func-assign': "error";
224
+ 'no-global-assign': "error";
225
+ 'no-import-assign': "error";
226
+ 'no-invalid-regexp': "error";
227
+ 'no-irregular-whitespace': "error";
228
+ 'no-loss-of-precision': "error";
229
+ 'no-misleading-character-class': "error";
230
+ 'no-new-native-nonconstructor': "error";
231
+ 'no-nonoctal-decimal-escape': "error";
232
+ 'no-obj-calls': "error";
233
+ 'no-prototype-builtins': "error";
234
+ 'no-redeclare': "error";
235
+ 'no-regex-spaces': "error";
236
+ 'no-self-assign': "error";
237
+ 'no-setter-return': "error";
238
+ 'no-shadow-restricted-names': "error";
239
+ 'no-sparse-arrays': "error";
240
+ 'no-this-before-super': "error";
241
+ 'no-undef': "error";
242
+ 'no-unexpected-multiline': "error";
243
+ 'no-unreachable': "error";
244
+ 'no-unsafe-finally': "error";
245
+ 'no-unsafe-negation': "error";
246
+ 'no-unsafe-optional-chaining': "error";
247
+ 'no-unused-labels': "error";
248
+ 'no-unused-private-class-members': "error";
249
+ 'no-unused-vars': "warn";
250
+ 'no-useless-backreference': "error";
251
+ 'no-useless-catch': "error";
252
+ 'no-useless-escape': "error";
253
+ 'no-with': "error";
254
+ 'require-yield': "error";
255
+ 'use-isnan': "error";
256
+ 'valid-typeof': "error";
257
+ '@typescript-eslint/ban-ts-comment': "error";
258
+ 'no-array-constructor': "error";
259
+ '@typescript-eslint/no-duplicate-enum-values': "error";
260
+ '@typescript-eslint/no-empty-object-type': "error";
261
+ '@typescript-eslint/no-explicit-any': "error";
262
+ '@typescript-eslint/no-extra-non-null-assertion': "error";
263
+ '@typescript-eslint/no-misused-new': "error";
264
+ '@typescript-eslint/no-namespace': "error";
265
+ '@typescript-eslint/no-non-null-asserted-optional-chain': "error";
266
+ '@typescript-eslint/no-require-imports': "error";
267
+ '@typescript-eslint/no-this-alias': "error";
268
+ '@typescript-eslint/no-unnecessary-type-constraint': "error";
269
+ '@typescript-eslint/no-unsafe-declaration-merging': "error";
270
+ '@typescript-eslint/no-unsafe-function-type': "error";
271
+ 'no-unused-expressions': "warn";
272
+ '@typescript-eslint/no-wrapper-object-types': "error";
273
+ '@typescript-eslint/prefer-as-const': "error";
274
+ '@typescript-eslint/prefer-namespace-keyword': "error";
275
+ '@typescript-eslint/triple-slash-reference': "error";
276
+ };
277
+ overrides: {
278
+ files: string[];
279
+ rules: {
280
+ 'constructor-super': "off";
281
+ 'getter-return': "off";
282
+ 'no-class-assign': "off";
283
+ 'no-const-assign': "off";
284
+ 'no-dupe-class-members': "off";
285
+ 'no-dupe-keys': "off";
286
+ 'no-func-assign': "off";
287
+ 'no-import-assign': "off";
288
+ 'no-new-native-nonconstructor': "off";
289
+ 'no-obj-calls': "off";
290
+ 'no-redeclare': "off";
291
+ 'no-setter-return': "off";
292
+ 'no-this-before-super': "off";
293
+ 'no-undef': "off";
294
+ 'no-unreachable': "off";
295
+ 'no-unsafe-negation': "off";
296
+ 'no-var': "error";
297
+ 'no-with': "off";
298
+ 'prefer-const': "error";
299
+ 'prefer-rest-params': "error";
300
+ 'prefer-spread': "error";
301
+ };
302
+ }[];
303
+ }[];
304
+ plugins: "react"[];
305
+ jsPlugins: {
306
+ name: string;
307
+ specifier: string;
308
+ }[];
309
+ rules: {
310
+ 'react-hooks-js/rules-of-hooks': "error";
311
+ 'react-hooks-js/exhaustive-deps': "warn";
312
+ 'react-hooks-js/set-state-in-effect': "warn";
313
+ 'react-refresh-js/only-export-components': "error";
314
+ 'react-compiler-js/react-compiler': "error";
315
+ };
316
+ overrides: {
317
+ files: string[];
318
+ rules: {
319
+ 'react/display-name': "error";
320
+ 'react/jsx-key': "error";
321
+ 'react/jsx-no-comment-textnodes': "error";
322
+ 'react/jsx-no-duplicate-props': "error";
323
+ 'react/jsx-no-target-blank': "off";
324
+ 'react/jsx-no-undef': "error";
325
+ 'react/no-children-prop': "error";
326
+ 'react/no-danger-with-children': "error";
327
+ 'react/no-direct-mutation-state': "error";
328
+ 'react/no-find-dom-node': "error";
329
+ 'react/no-is-mounted': "error";
330
+ 'react/no-render-return-value': "error";
331
+ 'react/no-string-refs': "error";
332
+ 'react/no-unescaped-entities': "error";
333
+ 'react/no-unknown-property': "off";
334
+ 'react/no-unsafe': "off";
335
+ 'react/react-in-jsx-scope': "off";
336
+ 'react/require-render-return': "error";
337
+ 'import/no-anonymous-default-export': "warn";
338
+ 'jsx-a11y/alt-text': (string | {
339
+ elements: string[];
340
+ img: string[];
341
+ })[];
342
+ 'jsx-a11y/aria-props': "warn";
343
+ 'jsx-a11y/aria-proptypes': "warn";
344
+ 'jsx-a11y/aria-unsupported-elements': "warn";
345
+ 'jsx-a11y/role-has-required-aria-props': "warn";
346
+ 'jsx-a11y/role-supports-aria-props': "warn";
347
+ };
348
+ globals: {
349
+ AudioWorkletGlobalScope: "readonly";
350
+ AudioWorkletProcessor: "readonly";
351
+ currentFrame: "readonly";
352
+ currentTime: "readonly";
353
+ registerProcessor: "readonly";
354
+ sampleRate: "readonly";
355
+ WorkletGlobalScope: "readonly";
356
+ };
357
+ plugins: ("import" | "jsx-a11y")[];
358
+ env: {
359
+ browser: true;
360
+ node: true;
361
+ };
362
+ }[];
363
+ };
364
+ export default _default;
184
365
  //# sourceMappingURL=react.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGzD,MAAM,MAAM,YAAY,GAAG,EAAE,CAAC;AAI9B,iBAAS,WAAW,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkEpD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGzD,MAAM,MAAM,YAAY,GAAG,EAAE,CAAC;AAI9B,iBAAS,WAAW,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkEpD;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAExD,wBAA6B"}
package/dist/react.js CHANGED
@@ -68,4 +68,5 @@ function reactConfig(_options) {
68
68
  });
69
69
  }
70
70
  export { defineConfig, reactConfig };
71
+ export default reactConfig();
71
72
  //# sourceMappingURL=react.js.map
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC,4CAA4C;AAE5C,SAAS,WAAW,CAAC,QAAgC;IACnD,mDAAmD;IAEnD,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,2BAA2B,EAAE;YAClE,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,6BAA6B,EAAE;YACtE,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,8BAA8B,EAAE;SACzE;QACD,KAAK,EAAE;YACL,+BAA+B,EAAE,OAAO;YACxC,gCAAgC,EAAE,MAAM;YACxC,oCAAoC,EAAE,MAAM;YAC5C,yCAAyC,EAAE,OAAO;YAClD,kCAAkC,EAAE,OAAO;SAC5C;QACD,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,CAAC,kCAAkC,CAAC;gBAC3C,KAAK,EAAE;oBACL,oBAAoB,EAAE,OAAO;oBAC7B,eAAe,EAAE,OAAO;oBACxB,gCAAgC,EAAE,OAAO;oBACzC,8BAA8B,EAAE,OAAO;oBACvC,2BAA2B,EAAE,KAAK;oBAClC,oBAAoB,EAAE,OAAO;oBAC7B,wBAAwB,EAAE,OAAO;oBACjC,+BAA+B,EAAE,OAAO;oBACxC,mEAAmE;oBACnE,gCAAgC,EAAE,OAAO;oBACzC,wBAAwB,EAAE,OAAO;oBACjC,qBAAqB,EAAE,OAAO;oBAC9B,8BAA8B,EAAE,OAAO;oBACvC,sBAAsB,EAAE,OAAO;oBAC/B,6BAA6B,EAAE,OAAO;oBACtC,2BAA2B,EAAE,KAAK;oBAClC,iBAAiB,EAAE,KAAK;oBACxB,0BAA0B,EAAE,KAAK;oBACjC,6BAA6B,EAAE,OAAO;oBACtC,oCAAoC,EAAE,MAAM;oBAC5C,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpE,qBAAqB,EAAE,MAAM;oBAC7B,yBAAyB,EAAE,MAAM;oBACjC,oCAAoC,EAAE,MAAM;oBAC5C,uCAAuC,EAAE,MAAM;oBAC/C,mCAAmC,EAAE,MAAM;iBAC5C;gBACD,OAAO,EAAE;oBACP,uBAAuB,EAAE,UAAU;oBACnC,qBAAqB,EAAE,UAAU;oBACjC,YAAY,EAAE,UAAU;oBACxB,WAAW,EAAE,UAAU;oBACvB,iBAAiB,EAAE,UAAU;oBAC7B,UAAU,EAAE,UAAU;oBACtB,kBAAkB,EAAE,UAAU;iBAC/B;gBACD,OAAO,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;gBAC/B,GAAG,EAAE;oBACH,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,IAAI;iBACX;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAqB,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC,4CAA4C;AAE5C,SAAS,WAAW,CAAC,QAAgC;IACnD,mDAAmD;IAEnD,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,2BAA2B,EAAE;YAClE,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,6BAA6B,EAAE;YACtE,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,8BAA8B,EAAE;SACzE;QACD,KAAK,EAAE;YACL,+BAA+B,EAAE,OAAO;YACxC,gCAAgC,EAAE,MAAM;YACxC,oCAAoC,EAAE,MAAM;YAC5C,yCAAyC,EAAE,OAAO;YAClD,kCAAkC,EAAE,OAAO;SAC5C;QACD,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,CAAC,kCAAkC,CAAC;gBAC3C,KAAK,EAAE;oBACL,oBAAoB,EAAE,OAAO;oBAC7B,eAAe,EAAE,OAAO;oBACxB,gCAAgC,EAAE,OAAO;oBACzC,8BAA8B,EAAE,OAAO;oBACvC,2BAA2B,EAAE,KAAK;oBAClC,oBAAoB,EAAE,OAAO;oBAC7B,wBAAwB,EAAE,OAAO;oBACjC,+BAA+B,EAAE,OAAO;oBACxC,mEAAmE;oBACnE,gCAAgC,EAAE,OAAO;oBACzC,wBAAwB,EAAE,OAAO;oBACjC,qBAAqB,EAAE,OAAO;oBAC9B,8BAA8B,EAAE,OAAO;oBACvC,sBAAsB,EAAE,OAAO;oBAC/B,6BAA6B,EAAE,OAAO;oBACtC,2BAA2B,EAAE,KAAK;oBAClC,iBAAiB,EAAE,KAAK;oBACxB,0BAA0B,EAAE,KAAK;oBACjC,6BAA6B,EAAE,OAAO;oBACtC,oCAAoC,EAAE,MAAM;oBAC5C,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpE,qBAAqB,EAAE,MAAM;oBAC7B,yBAAyB,EAAE,MAAM;oBACjC,oCAAoC,EAAE,MAAM;oBAC5C,uCAAuC,EAAE,MAAM;oBAC/C,mCAAmC,EAAE,MAAM;iBAC5C;gBACD,OAAO,EAAE;oBACP,uBAAuB,EAAE,UAAU;oBACnC,qBAAqB,EAAE,UAAU;oBACjC,YAAY,EAAE,UAAU;oBACxB,WAAW,EAAE,UAAU;oBACvB,iBAAiB,EAAE,UAAU;oBAC7B,UAAU,EAAE,UAAU;oBACtB,kBAAkB,EAAE,UAAU;iBAC/B;gBACD,OAAO,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;gBAC/B,GAAG,EAAE;oBACH,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,IAAI;iBACX;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAqB,YAAY,EAAE,WAAW,EAAE,CAAC;AAExD,eAAe,WAAW,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@4mbl/lint",
3
- "version": "1.0.0-beta.2",
3
+ "version": "1.0.0-beta.3",
4
4
  "description": "Linting configuration for various environments.",
5
5
  "type": "module",
6
6
  "author": "4mbl",
@@ -40,6 +40,7 @@
40
40
  "oxlint-tsgolint": "^0.17.0"
41
41
  },
42
42
  "devDependencies": {
43
+ "@types/node": "^24.12.0",
43
44
  "@4mbl/tsconfig": "4.4.0"
44
45
  },
45
46
  "scripts": {