@santi020k/eslint-config-libraries 3.1.2 → 3.1.4

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
@@ -2,10 +2,45 @@
2
2
 
3
3
  Library-specific rules for Tailwind, Storybook, AI SDKs, ORMs, and related ecosystems.
4
4
 
5
- This package is part of the [`@santi020k/eslint-config-basic`](https://github.com/santi020k/eslint-config-basic) monorepo.
5
+ [![npm version](https://img.shields.io/npm/v/@santi020k/eslint-config-libraries.svg)](https://www.npmjs.com/package/@santi020k/eslint-config-libraries)
6
+ [![npm downloads](https://img.shields.io/npm/dm/@santi020k/eslint-config-libraries.svg)](https://www.npmjs.com/package/@santi020k/eslint-config-libraries)
7
+ [![license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/santi020k/eslint-config-basic/blob/main/LICENSE)
6
8
 
7
- - Docs: [Libraries](https://eslint.santi020k.com/tooling/libraries)
8
- - Repository: [santi020k/eslint-config-basic](https://github.com/santi020k/eslint-config-basic)
9
- - Author: [santi020k](https://santi020k.com)
9
+ ## Installation
10
10
 
11
- The canonical documentation lives on the Starlight site, so this README intentionally stays short to avoid duplication.
11
+ ```sh
12
+ npm install -D eslint @santi020k/eslint-config-basic @santi020k/eslint-config-libraries
13
+ ```
14
+
15
+ ## Usage
16
+
17
+ Enable only the features your project uses:
18
+
19
+ ```js
20
+ import { defineConfig } from '@santi020k/eslint-config-basic'
21
+
22
+ export default await defineConfig({
23
+ libraries: ['tailwind', 'zod']
24
+ })
25
+ ```
26
+
27
+ Supported features can also be auto-detected from the project. Installing this
28
+ package makes its libraries available to the Basic composer; it does not enable
29
+ every feature in the package.
30
+
31
+ ## Compatibility
32
+
33
+ - Node.js: `>=22.19.0`
34
+ - ESLint: `^10.0.0`
35
+ - ESM and ESLint flat config
36
+
37
+ ## Documentation
38
+
39
+ - [Libraries](https://eslint.santi020k.com/tooling/libraries)
40
+ - [Configuration guide](https://eslint.santi020k.com/guide/configuration/)
41
+ - [Package family and repository](https://github.com/santi020k/eslint-config-basic)
42
+ - [Changelog](https://github.com/santi020k/eslint-config-basic/blob/main/packages/libraries/CHANGELOG.md)
43
+
44
+ ## License
45
+
46
+ MIT © [santi020k](https://santi020k.com). See the [license](https://github.com/santi020k/eslint-config-basic/blob/main/LICENSE).
package/dist/zod.js CHANGED
@@ -10,7 +10,17 @@ const zod = defineLazyConfig("zod", async () => {
10
10
  zod: pluginZod
11
11
  },
12
12
  rules: {
13
- ...pluginZod.configs.recommended.rules
13
+ ...pluginZod.configs.recommended.rules,
14
+ // Zod 5 split these established defaults into strict and stylistic presets.
15
+ "zod/array-style": "error",
16
+ "zod/prefer-enum-over-literal-union": "error",
17
+ "zod/prefer-loose-object": "error",
18
+ "zod/prefer-meta": "error",
19
+ "zod/prefer-meta-last": "error",
20
+ "zod/prefer-nullish": "error",
21
+ "zod/prefer-strict-object": "error",
22
+ "zod/prefer-string-schema-with-trim": "error",
23
+ "zod/prefer-trim-before-string-length-checks": "error"
14
24
  }
15
25
  }
16
26
  ];
package/dist/zod.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/zod.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\nimport type { TSESLint } from '@typescript-eslint/utils'\n\nimport { defineLazyConfig, loadDefault, type PluginWithConfigs } from './lazy.js'\n\n/**\n * Zod ESLint configuration\n * Provides validation rules for Zod schemas\n */\nexport const zod: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('zod', async () => {\n const pluginZod = await loadDefault<PluginWithConfigs<'recommended'>>('eslint-plugin-zod')\n\n return [\n {\n files: GLOB_JS_TS,\n name: 'eslint-config-integrations/zod',\n plugins: {\n zod: pluginZod\n },\n rules: {\n ...pluginZod.configs.recommended.rules\n }\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAG3B,SAAS,kBAAkB,mBAA2C;AAM/D,MAAM,MAAsD,iBAAiB,OAAO,YAAY;AACrG,QAAM,YAAY,MAAM,YAA8C,mBAAmB;AAEzF,SAAO;AAAA,IACL;AAAA,MACE,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,QACP,KAAK;AAAA,MACP;AAAA,MACA,OAAO;AAAA,QACL,GAAG,UAAU,QAAQ,YAAY;AAAA,MACnC;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":["../src/zod.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\nimport type { TSESLint } from '@typescript-eslint/utils'\n\nimport { defineLazyConfig, loadDefault, type PluginWithConfigs } from './lazy.js'\n\n/**\n * Zod ESLint configuration\n * Provides validation rules for Zod schemas\n */\nexport const zod: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('zod', async () => {\n const pluginZod = await loadDefault<PluginWithConfigs<'recommended'>>('eslint-plugin-zod')\n\n return [\n {\n files: GLOB_JS_TS,\n name: 'eslint-config-integrations/zod',\n plugins: {\n zod: pluginZod\n },\n rules: {\n ...pluginZod.configs.recommended.rules,\n // Zod 5 split these established defaults into strict and stylistic presets.\n 'zod/array-style': 'error',\n 'zod/prefer-enum-over-literal-union': 'error',\n 'zod/prefer-loose-object': 'error',\n 'zod/prefer-meta': 'error',\n 'zod/prefer-meta-last': 'error',\n 'zod/prefer-nullish': 'error',\n 'zod/prefer-strict-object': 'error',\n 'zod/prefer-string-schema-with-trim': 'error',\n 'zod/prefer-trim-before-string-length-checks': 'error'\n }\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAG3B,SAAS,kBAAkB,mBAA2C;AAM/D,MAAM,MAAsD,iBAAiB,OAAO,YAAY;AACrG,QAAM,YAAY,MAAM,YAA8C,mBAAmB;AAEzF,SAAO;AAAA,IACL;AAAA,MACE,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,QACP,KAAK;AAAA,MACP;AAAA,MACA,OAAO;AAAA,QACL,GAAG,UAAU,QAAQ,YAAY;AAAA;AAAA,QAEjC,mBAAmB;AAAA,QACnB,sCAAsC;AAAA,QACtC,2BAA2B;AAAA,QAC3B,mBAAmB;AAAA,QACnB,wBAAwB;AAAA,QACxB,sBAAsB;AAAA,QACtB,4BAA4B;AAAA,QAC5B,sCAAsC;AAAA,QACtC,+CAA+C;AAAA,MACjD;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@santi020k/eslint-config-libraries",
3
- "version": "3.1.2",
3
+ "version": "3.1.4",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": true
@@ -26,21 +26,21 @@
26
26
  ],
27
27
  "dependencies": {
28
28
  "@stencil/eslint-plugin": "^1.4.0",
29
- "@tanstack/eslint-plugin-query": "^5.103.2",
29
+ "@tanstack/eslint-plugin-query": "^5.104.1",
30
30
  "@tanstack/eslint-plugin-router": "^1.162.0",
31
- "@typescript-eslint/utils": "^8.70.1",
32
- "eslint-plugin-better-tailwindcss": "^4.7.0",
31
+ "@typescript-eslint/utils": "^8.71.1",
32
+ "eslint-plugin-better-tailwindcss": "^4.9.0",
33
33
  "eslint-plugin-i18next": "^6.1.5",
34
- "eslint-plugin-storybook": "^10.6.0",
35
- "eslint-plugin-turbo": "^2.11.2",
34
+ "eslint-plugin-storybook": "^10.6.1",
35
+ "eslint-plugin-turbo": "^2.11.7",
36
36
  "eslint-plugin-vercel-ai-security": "^2.1.3",
37
- "eslint-plugin-zod": "^4.14.2",
38
- "@santi020k/eslint-config-core": "^3.1.2"
37
+ "eslint-plugin-zod": "^5.0.0",
38
+ "@santi020k/eslint-config-core": "^3.2.0"
39
39
  },
40
40
  "devDependencies": {
41
- "@types/node": "^26.6.2",
42
- "eslint": "^10.11.0",
43
- "publint": "^0.3.24",
41
+ "@types/node": "^26.6.4",
42
+ "eslint": "^10.12.0",
43
+ "publint": "^0.3.25",
44
44
  "tailwindcss": "^4.3.3",
45
45
  "tsup": "^8.5.1",
46
46
  "typescript": "npm:@typescript/typescript6@^6.0.2",
@@ -76,6 +76,9 @@
76
76
  "directory": "packages/libraries"
77
77
  },
78
78
  "homepage": "https://eslint.santi020k.com/tooling/libraries",
79
+ "bugs": {
80
+ "url": "https://github.com/santi020k/eslint-config-basic/issues"
81
+ },
79
82
  "license": "MIT",
80
83
  "scripts": {
81
84
  "build": "tsup",