@hiddenability/opinionated-defaults 0.1.4 → 0.1.5

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 CHANGED
@@ -18,6 +18,7 @@ A collection of opinionated tooling configurations.
18
18
  - eslintConfigElysia (Elysia.js)
19
19
  - eslintConfigFunctional (Enforces functional style)
20
20
  - eslintConfigNext (Next.js)
21
+ - eslintConfigOxlint (Disables ESlint rules available in Oxlint)
21
22
  - eslintConfigPrettier (Runs Prettier as ESLint rules)
22
23
  - eslintConfigReact (General rules for React)
23
24
  - eslintConfigRelative (Enforces the use of absolute import paths using path aliases)
@@ -35,6 +36,7 @@ A collection of opinionated tooling configurations.
35
36
  - [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn)
36
37
  - [eslint-plugin-functional](https://github.com/eslint-functional/eslint-plugin-functional)
37
38
  - [eslint-plugin-next](https://github.com/vercel/next.js/tree/canary/packages/eslint-plugin-next)
39
+ - [eslint-plugin-oxlint](https://github.com/oxc-project/eslint-plugin-oxlint)
38
40
  - [eslint-plugin-perfectionist](https://github.com/azat-io/eslint-plugin-perfectionist)
39
41
  - [eslint-stylistic](https://github.com/eslint-stylistic/eslint-stylistic)
40
42
 
@@ -146,10 +148,11 @@ export default prettierConfig(prettierConfigBase, prettierConfigTailwind, {
146
148
  });
147
149
  ```
148
150
 
151
+
149
152
  ## TODO:
150
153
 
151
154
  - Improve repository structure (How to manage configuration options within eslint dir?).
152
155
  - Maybe convert into monorepo with one package per tool instead of multiple exports from one package.
153
156
  - Prevent importing overlapping configurations (i.e., Next.js ESLint config contains base config).
154
157
  - Support node module resolution.
155
- - Maybe make declarative configurations instead of just providing wrapped config.
158
+ - Maybe make declarative configurations instead of just providing wrapped config modules.
@@ -1 +1 @@
1
- import A from"eslint-plugin-astro";import m from"@eslint/js";import l from"eslint-plugin-prefer-arrow-functions";import g from"eslint-plugin-unicorn";var c=[{ignores:["**/dist/","**/node_modules/","**/.direnv/","**/.git/"]},{files:["**/*.ts","**/*.js","**/*.mjs","**/*.mts","**/*.tsx","**/*.jsx"]},m.configs.recommended,g.configs.recommended,{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":l},rules:{"prefer-arrow-functions/prefer-arrow-functions":["error",{returnStyle:"implicit"}]}},{rules:{"no-console":"warn",quotes:["warn","backtick",{avoidEscape:!0}]}}],t=c;import y from"eslint-plugin-no-relative-import-paths";var C=[{plugins:{"no-relative-import-paths":y},rules:{"no-relative-import-paths/no-relative-import-paths":["error",{prefix:"@"}]}}],r=C;import u from"@typescript-eslint/parser";import d from"typescript-eslint";var x=[...d.configs.recommendedTypeChecked,{languageOptions:{parser:u,parserOptions:{projectService:!0}}},{rules:{"@typescript-eslint/no-unused-vars":["error",{args:"all",argsIgnorePattern:"^_",caughtErrors:"all",caughtErrorsIgnorePattern:"^_",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0,varsIgnorePattern:"^_"}],"@typescript-eslint/prefer-nullish-coalescing":"error"}}],o=x;var b=[...t,...o,...r,...A.configs.recommended],R=b;var v=(p)=>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"]}}],i=w;var O=[...t,...o,...i,...r],k=O;import f from"@next/eslint-plugin-next";import s from"eslint-plugin-react";import N from"eslint-plugin-react-hooks";var S=[s.configs.flat.recommended,s.configs.flat["jsx-runtime"],N.configs["recommended-latest"]],n=S;var T=[...t,...n,...r,...o,{plugins:{"@next/next":f},rules:{...f.configs.recommended.rules,...f.configs["core-web-vitals"].rules}}],_=T;import j from"eslint-plugin-oxlint";var B=[...j.configs["flat/recommended"]],E=B;import I from"eslint-plugin-perfectionist";var P=[I.configs["recommended-natural"],{rules:{"perfectionist/sort-object-types":["warn",{partitionByNewLine:!0}],"perfectionist/sort-objects":["warn",{partitionByNewLine:!0}]}}],h=P;import L from"eslint-plugin-prettier/recommended";var H=[L,{rules:{"prettier/prettier":"warn",quotes:["warn","backtick",{avoidEscape:!0}]}}],J=H;import q from"eslint-plugin-solid/configs/typescript";var z=[q],D=z;import a from"@stylistic/eslint-plugin";var F=[a.configs.all,{plugins:{"@stylistic":a}}],G=F;import K from"eslint-plugin-turbo";var M=[K.configs["flat/recommended"]],Q=M;export{o as eslintConfigTypescript,Q as eslintConfigTurbo,G as eslintConfigStylistic,D as eslintConfigSolid,r as eslintConfigRelative,n as eslintConfigReact,J as eslintConfigPrettier,h as eslintConfigPerfectionist,E as eslintConfigOxlint,_ as eslintConfigNext,i as eslintConfigFunctional,k as eslintConfigElysia,t as eslintConfigBase,R as eslintConfigAstro,v as eslintConfig};
1
+ import A from"eslint-plugin-astro";import m from"@eslint/js";import l from"eslint-plugin-prefer-arrow-functions";import g from"eslint-plugin-unicorn";var c=[{ignores:["**/dist/","**/node_modules/","**/.direnv/","**/.git/"]},{files:["**/*.ts","**/*.js","**/*.mjs","**/*.mts","**/*.tsx","**/*.jsx"]},m.configs.recommended,g.configs.recommended,{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":l},rules:{"prefer-arrow-functions/prefer-arrow-functions":["error",{returnStyle:"implicit"}]}},{rules:{"no-console":"warn",quotes:["warn","backtick",{avoidEscape:!0}]}}],t=c;import y from"eslint-plugin-no-relative-import-paths";var u=[{plugins:{"no-relative-import-paths":y},rules:{"no-relative-import-paths/no-relative-import-paths":["error",{prefix:"@"}]}}],r=u;import C from"@typescript-eslint/parser";import d from"typescript-eslint";var x=[...d.configs.recommendedTypeChecked,{languageOptions:{parser:C,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"}}],o=x;var b=[...t,...o,...r,...A.configs.recommended],R=b;var v=(p)=>p;import e from"eslint-plugin-functional";var k=[e.configs.externalTypeScriptRecommended,e.configs.recommended,e.configs.stylistic,{rules:{"functional/no-expression-statements":["off"],"functional/no-return-void":["off"]}}],i=k;var w=[...t,...o,...i,...r],O=w;import f from"@next/eslint-plugin-next";import s from"eslint-plugin-react";import N from"eslint-plugin-react-hooks";var S=[s.configs.flat.recommended,s.configs.flat["jsx-runtime"],N.configs["recommended-latest"]],n=S;var T=[...t,...n,...r,...o,{plugins:{"@next/next":f},rules:{...f.configs.recommended.rules,...f.configs["core-web-vitals"].rules}}],_=T;import h from"eslint-plugin-oxlint";var j=[...h.configs["flat/recommended"]],B=j;import E from"eslint-plugin-perfectionist";var I=[E.configs["recommended-natural"],{rules:{"perfectionist/sort-object-types":["warn",{partitionByNewLine:!0}],"perfectionist/sort-objects":["warn",{partitionByNewLine:!0}]}}],P=I;import L from"eslint-plugin-prettier/recommended";var H=[L,{rules:{"prettier/prettier":"warn",quotes:["warn","backtick",{avoidEscape:!0}]}}],J=H;import V from"eslint-plugin-solid/configs/typescript";var q=[V],z=q;import a from"@stylistic/eslint-plugin";var D=[a.configs.all,{plugins:{"@stylistic":a}}],F=D;import G from"eslint-plugin-turbo";var K=[G.configs["flat/recommended"]],M=K;export{o as eslintConfigTypescript,M as eslintConfigTurbo,F as eslintConfigStylistic,z as eslintConfigSolid,r as eslintConfigRelative,n as eslintConfigReact,J as eslintConfigPrettier,P as eslintConfigPerfectionist,B as eslintConfigOxlint,_ as eslintConfigNext,i as eslintConfigFunctional,O as eslintConfigElysia,t as eslintConfigBase,R as eslintConfigAstro,v as eslintConfig};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hiddenability/opinionated-defaults",
3
3
  "description": "Opinionated default configurations for webdev tools.",
4
- "version": "0.1.4",
4
+ "version": "0.1.5",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -18,12 +18,16 @@
18
18
  },
19
19
  "exports": {
20
20
  "./eslint": {
21
- "default": "./dist/eslint/index.mjs",
22
- "types": "./dist/eslint/index.d.ts"
21
+ "import": {
22
+ "default": "./dist/eslint/index.mjs",
23
+ "types": "./dist/eslint/index.d.ts"
24
+ }
23
25
  },
24
26
  "./prettier": {
25
- "default": "./dist/prettier/index.mjs",
26
- "types": "./dist/prettier/index.d.ts"
27
+ "import": {
28
+ "default": "./dist/prettier/index.mjs",
29
+ "types": "./dist/prettier/index.d.ts"
30
+ }
27
31
  }
28
32
  },
29
33
  "files": [
@@ -35,6 +39,7 @@
35
39
  "@next/eslint-plugin-next": "^15.4.2-canary.15",
36
40
  "@stylistic/eslint-plugin": "^5.2.2",
37
41
  "@trivago/prettier-plugin-sort-imports": "^5.2.2",
42
+ "eslint": "^9.32.0",
38
43
  "eslint-config-prettier": "^10.1.8",
39
44
  "eslint-plugin-astro": "^1.3.1",
40
45
  "eslint-plugin-functional": "^9.0.2",
@@ -49,7 +54,6 @@
49
54
  "eslint-plugin-solid": "^0.14.5",
50
55
  "eslint-plugin-turbo": "^2.5.5",
51
56
  "eslint-plugin-unicorn": "^60.0.0",
52
- "eslint_d": "^14.3.0",
53
57
  "jiti": "^2.5.1",
54
58
  "lodash": "^4.17.21",
55
59
  "oxlint": "^1.8.0",
@@ -63,6 +67,7 @@
63
67
  "@types/bun": "^1.2.19",
64
68
  "@types/lodash": "^4.17.20",
65
69
  "consola": "^3.4.2",
70
+ "eslint_d": "^14.3.0",
66
71
  "oxc-transform": "^0.78.0"
67
72
  }
68
73
  }