@hiddenability/opinionated-defaults 0.1.52 → 0.1.54
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 +8 -3
- package/dist/eslint/index.mjs +1 -1
- package/dist/oxfmt/index.mjs +1 -1
- package/dist/oxfmtrc.json +1 -0
- package/dist/oxlint/index.d.ts +4 -0
- package/dist/oxlint/index.mjs +1 -1
- package/dist/oxlintrc.json +1 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -85,6 +85,8 @@ bunx @hiddenability/opinionated-defaults -ox # Oxlint + Oxfmt
|
|
|
85
85
|
#### Exports:
|
|
86
86
|
|
|
87
87
|
- oxlintConfig (Config object for `oxlint.config.ts`)
|
|
88
|
+
- oxlintConfigReact (Base config with React and React performance rules)
|
|
89
|
+
- oxlintConfigNext (React config with Next.js rules)
|
|
88
90
|
|
|
89
91
|
#### Enabled plugins:
|
|
90
92
|
|
|
@@ -92,13 +94,13 @@ bunx @hiddenability/opinionated-defaults -ox # Oxlint + Oxfmt
|
|
|
92
94
|
- unicorn
|
|
93
95
|
- oxc
|
|
94
96
|
- import
|
|
95
|
-
- react
|
|
96
|
-
- react-perf
|
|
97
|
-
- nextjs
|
|
98
97
|
- promise
|
|
99
98
|
- node
|
|
100
99
|
- jsx-a11y
|
|
101
100
|
|
|
101
|
+
The CLI-generated Oxlint config adds framework plugins from direct dependencies:
|
|
102
|
+
React projects get `react` and `react-perf`; Next.js projects also get `nextjs`.
|
|
103
|
+
|
|
102
104
|
### Oxfmt (Prettier replacement):
|
|
103
105
|
|
|
104
106
|
#### Exports:
|
|
@@ -154,6 +156,9 @@ import { oxlintConfig } from '@hiddenability/opinionated-defaults/oxlint';
|
|
|
154
156
|
export default defineConfig(oxlintConfig);
|
|
155
157
|
```
|
|
156
158
|
|
|
159
|
+
Use `oxlintConfigReact` for React projects or `oxlintConfigNext` for Next.js
|
|
160
|
+
projects when configuring Oxlint manually.
|
|
161
|
+
|
|
157
162
|
### Oxfmt:
|
|
158
163
|
|
|
159
164
|
```ts
|
package/dist/eslint/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import a from"eslint-plugin-astro";var s=[...a.configs.recommended],p=s;import l from"@eslint/js";import m from"@typescript-eslint/parser";import c from"eslint-plugin-prefer-arrow-functions";import u from"eslint-plugin-unicorn";import f from"globals";import g from"typescript-eslint";var y=[{ignores:["**/dist/","**/node_modules/","**/.git/"]},{files:["**/*.ts","**/*.js","**/*.mjs","**/*.mts","**/*.tsx","**/*.jsx"]},...g.configs.recommendedTypeChecked,l.configs.recommended,u.configs.recommended,{languageOptions:{globals:{...f.nodeBuiltin,...f.browser},parser:m,parserOptions:{projectService:!0}},rules:{"@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:!1}],"@typescript-eslint/no-unused-vars":["error",{args:"all",argsIgnorePattern:"^_",caughtErrors:"all",caughtErrorsIgnorePattern:"^_",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0,varsIgnorePattern:"^_"}],"@typescript-eslint/prefer-nullish-coalescing":"error","no-unused-vars":["error",{args:"all",argsIgnorePattern:"^_",caughtErrors:"all",caughtErrorsIgnorePattern:"^_",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0,varsIgnorePattern:"^_"}]}},{rules:{"unicorn/filename-case":["error",{cases:{kebabCase:!0}}],"unicorn/no-array-for-each":["off"],"unicorn/no-array-reduce":["off"],"unicorn/prevent-abbreviations":["off"]}},{plugins:{"prefer-arrow-functions":c},rules:{"prefer-arrow-functions/prefer-arrow-functions":["error",{returnStyle:"implicit"}]}}],d=y;import n from"eslint-plugin-better-tailwindcss";import{defineConfig as C}from"eslint/config";var x=C([{plugins:{"better-tailwindcss":n},rules:{...n.configs["recommended-error"].rules,"better-tailwindcss/enforce-consistent-line-wrapping":"off"}}]),A=x;var j=(t)=>t;var P=(t)=>{let o=Array.isArray(t)?{allowDefaultProject:t}:t;return o.allowDefaultProject.length===0?[]:[{languageOptions:{parserOptions:{projectService:{allowDefaultProject:o.allowDefaultProject,...o.defaultProject&&{defaultProject:o.defaultProject}}}}}]},D=P;import e from"eslint-plugin-functional";var w=[e.configs.externalTypeScriptRecommended,e.configs.recommended,e.configs.stylistic,{rules:{"functional/no-expression-statements":["off"],"functional/no-return-void":["off"]}}],R=w;import r from"@next/eslint-plugin-next";var B=[{ignores:["**/next-env.d.ts"]},{plugins:{"@next/next":r},rules:{...r.configs.recommended.rules,...r.configs["core-web-vitals"].rules}}],N=B;import O from"eslint-plugin-oxlint";var k=[...O.configs["flat/recommended"]],v=k;import L from"eslint-plugin-perfectionist";var S=[L.configs["recommended-natural"],{rules:{"perfectionist/sort-object-types":["warn",{partitionByNewLine:!0}],"perfectionist/sort-objects":["warn",{partitionByNewLine:!0}]}}],H=S;import J from"@stylistic/eslint-plugin";import
|
|
1
|
+
import a from"eslint-plugin-astro";var s=[...a.configs.recommended],p=s;import l from"@eslint/js";import m from"@typescript-eslint/parser";import c from"eslint-plugin-prefer-arrow-functions";import u from"eslint-plugin-unicorn";import f from"globals";import g from"typescript-eslint";var y=[{ignores:["**/dist/","**/node_modules/","**/.git/","**/*.gen.ts"]},{files:["**/*.ts","**/*.js","**/*.mjs","**/*.mts","**/*.tsx","**/*.jsx"]},...g.configs.recommendedTypeChecked,l.configs.recommended,u.configs.recommended,{languageOptions:{globals:{...f.nodeBuiltin,...f.browser},parser:m,parserOptions:{projectService:!0}},rules:{"@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:!1}],"@typescript-eslint/no-unused-vars":["error",{args:"all",argsIgnorePattern:"^_",caughtErrors:"all",caughtErrorsIgnorePattern:"^_",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0,varsIgnorePattern:"^_"}],"@typescript-eslint/prefer-nullish-coalescing":"error","no-unused-vars":["error",{args:"all",argsIgnorePattern:"^_",caughtErrors:"all",caughtErrorsIgnorePattern:"^_",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0,varsIgnorePattern:"^_"}]}},{rules:{"unicorn/filename-case":["error",{cases:{kebabCase:!0}}],"unicorn/no-array-for-each":["off"],"unicorn/no-array-reduce":["off"],"unicorn/prevent-abbreviations":["off"]}},{plugins:{"prefer-arrow-functions":c},rules:{"prefer-arrow-functions/prefer-arrow-functions":["error",{returnStyle:"implicit"}]}}],d=y;import n from"eslint-plugin-better-tailwindcss";import{defineConfig as C}from"eslint/config";var x=C([{plugins:{"better-tailwindcss":n},rules:{...n.configs["recommended-error"].rules,"better-tailwindcss/enforce-consistent-line-wrapping":"off"}}]),A=x;var j=(t)=>t;var P=(t)=>{let o=Array.isArray(t)?{allowDefaultProject:t}:t;return o.allowDefaultProject.length===0?[]:[{languageOptions:{parserOptions:{projectService:{allowDefaultProject:o.allowDefaultProject,...o.defaultProject&&{defaultProject:o.defaultProject}}}}}]},D=P;import e from"eslint-plugin-functional";var w=[e.configs.externalTypeScriptRecommended,e.configs.recommended,e.configs.stylistic,{rules:{"functional/no-expression-statements":["off"],"functional/no-return-void":["off"]}}],R=w;import r from"@next/eslint-plugin-next";var B=[{ignores:["**/next-env.d.ts"]},{plugins:{"@next/next":r},rules:{...r.configs.recommended.rules,...r.configs["core-web-vitals"].rules}}],N=B;import O from"eslint-plugin-oxlint";var k=[...O.configs["flat/recommended"]],v=k;import L from"eslint-plugin-perfectionist";var S=[L.configs["recommended-natural"],{rules:{"perfectionist/sort-object-types":["warn",{partitionByNewLine:!0}],"perfectionist/sort-objects":["warn",{partitionByNewLine:!0}]}}],H=S;import J from"@stylistic/eslint-plugin";import b from"eslint-plugin-prettier/recommended";var q=[b,{plugins:{"@stylistic":J},rules:{"@stylistic/quotes":["warn","backtick",{avoidEscape:!0}],"prettier/prettier":"warn"}}],z=q;import i from"eslint-plugin-react";import E from"eslint-plugin-react-hooks";import{defineConfig as F}from"eslint/config";var G=F([i.configs.flat.recommended,i.configs.flat["jsx-runtime"],E.configs.flat["recommended-latest"],{settings:{react:{version:"detect"}}}]),K=G;import M from"eslint-plugin-no-relative-import-paths";var Q=[{plugins:{"no-relative-import-paths":M},rules:{"no-relative-import-paths/no-relative-import-paths":["error",{prefix:"@"}]}}],T=Q;import V from"eslint-plugin-solid/configs/typescript";var W=[V],X=W;import Y from"eslint-plugin-turbo";var Z=[Y.configs["flat/recommended"]],_=Z;export{_ as eslintConfigTurbo,X as eslintConfigSolid,T as eslintConfigRelative,K as eslintConfigReact,z as eslintConfigPrettier,H as eslintConfigPerfectionist,v as eslintConfigOxlint,N as eslintConfigNext,R as eslintConfigFunctional,D as eslintConfigDefaultProject,A as eslintConfigBetterTailwindcss,d as eslintConfigBase,p as eslintConfigAstro,j as eslintConfig};
|
package/dist/oxfmt/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var t={arrowParens:"always",bracketSameLine:!1,bracketSpacing:!0,jsxSingleQuote:!0,semi:!0,singleQuote:!0,tabWidth:2,trailingComma:"all",useTabs:!1,sortImports:{newlinesBetween:!0},sortTailwindcss:{functions:["cva","clsx","cn"]}};export{t as oxfmtConfig};
|
|
1
|
+
var t={arrowParens:"always",bracketSameLine:!1,bracketSpacing:!0,jsxSingleQuote:!0,semi:!0,singleQuote:!0,tabWidth:2,trailingComma:"all",useTabs:!1,ignorePatterns:["**/*.gen.ts"],sortImports:{newlinesBetween:!0},sortTailwindcss:{functions:["cva","clsx","cn"]}};export{t as oxfmtConfig};
|
package/dist/oxfmtrc.json
CHANGED
package/dist/oxlint/index.d.ts
CHANGED
package/dist/oxlint/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={$schema:"./node_modules/oxlint/configuration_schema.json",categories:{correctness:"error",suspicious:"warn"},plugins:["typescript","unicorn","oxc","import","
|
|
1
|
+
var e={$schema:"./node_modules/oxlint/configuration_schema.json",categories:{correctness:"error",suspicious:"warn"},plugins:["typescript","unicorn","oxc","import","promise","node","jsx-a11y"],env:{es6:!0,browser:!0,node:!0},ignorePatterns:["**/dist/","**/node_modules/","**/.git/","**/*.gen.ts"],options:{typeAware:!0,typeCheck:!0},rules:{"typescript/no-misused-promises":["error",{checksVoidReturn:!1}],"no-unused-vars":["error",{args:"all",argsIgnorePattern:"^_",caughtErrors:"all",caughtErrorsIgnorePattern:"^_",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0,varsIgnorePattern:"^_"}],"react/react-in-jsx-scope":"off","typescript/prefer-nullish-coalescing":"error","unicorn/filename-case":["error",{cases:{kebabCase:!0}}],"unicorn/no-array-for-each":"off","unicorn/no-array-reduce":"off"}};var r=(...o)=>({...e,plugins:[...new Set([...e.plugins,...o])]}),i=r("react","react-perf"),a=r("react","react-perf","nextjs");export{i as oxlintConfigReact,a as oxlintConfigNext,e as oxlintConfig};
|
package/dist/oxlintrc.json
CHANGED
|
@@ -9,9 +9,6 @@
|
|
|
9
9
|
"unicorn",
|
|
10
10
|
"oxc",
|
|
11
11
|
"import",
|
|
12
|
-
"react",
|
|
13
|
-
"react-perf",
|
|
14
|
-
"nextjs",
|
|
15
12
|
"promise",
|
|
16
13
|
"node",
|
|
17
14
|
"jsx-a11y"
|
|
@@ -21,7 +18,7 @@
|
|
|
21
18
|
"browser": true,
|
|
22
19
|
"node": true
|
|
23
20
|
},
|
|
24
|
-
"ignorePatterns": ["**/dist/", "**/node_modules/", "**/.git/"],
|
|
21
|
+
"ignorePatterns": ["**/dist/", "**/node_modules/", "**/.git/", "**/*.gen.ts"],
|
|
25
22
|
"options": {
|
|
26
23
|
"typeAware": true,
|
|
27
24
|
"typeCheck": true
|